feat(sidebar): add dialogue selection and copying

- Support multi-row selection with clean clipboard text
- Preserve selections across playback updates and clear them on source changes
This commit is contained in:
2026-09-06 22:36:04 -07:00
parent c14c690875
commit 97b8ecb8a3
24 changed files with 621 additions and 3 deletions
+3 -1
View File
@@ -27,7 +27,9 @@ function isYomitanPopupInteractionActive(state: RendererState): boolean {
export function syncOverlayMouseIgnoreState(ctx: RendererContext): void {
const shouldKeepWindowInteractive =
isYomitanPopupInteractionActive(ctx.state) || isBlockingOverlayModalOpen(ctx.state);
ctx.dom.subtitleSidebarList?.dataset?.selecting === 'true' ||
isYomitanPopupInteractionActive(ctx.state) ||
isBlockingOverlayModalOpen(ctx.state);
const shouldStayInteractive =
ctx.state.isOverSubtitle ||
ctx.state.isOverSubtitleSidebar ||