From ded69655dabf97c76f97271e7da8e77e3f33ec25 Mon Sep 17 00:00:00 2001 From: bobzel Date: Mon, 15 Mar 2021 03:36:35 -0400 Subject: getting webBox's to work like PdfBox's - text selection & marquee. --- src/client/views/nodes/VideoBox.tsx | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/client/views/nodes/VideoBox.tsx') diff --git a/src/client/views/nodes/VideoBox.tsx b/src/client/views/nodes/VideoBox.tsx index 3e1edb927..f733de86a 100644 --- a/src/client/views/nodes/VideoBox.tsx +++ b/src/client/views/nodes/VideoBox.tsx @@ -345,7 +345,7 @@ export class VideoBox extends ViewBoxAnnotatableComponent this.layoutDoc._currentTimecode, () => !this._playing && this.Seek((this.layoutDoc._currentTimecode || 0))); this._disposers.youtubeReactionDisposer = reaction( - () => !this.props.Document.isAnnotating && CurrentUserUtils.SelectedTool === InkTool.None && this.props.isSelected(true) && !SnappingManager.GetIsDragging() && !DocumentDecorations.Instance.Interacting, + () => CurrentUserUtils.SelectedTool === InkTool.None && this.props.isSelected(true) && !SnappingManager.GetIsDragging() && !DocumentDecorations.Instance.Interacting, (interactive) => iframe.style.pointerEvents = interactive ? "all" : "none", { fireImmediately: true }); }; if (typeof (YT) === undefined) setTimeout(() => this.loadYouTube(iframe), 100); -- cgit v1.2.3-70-g09d2 From c27d8d20b44ba2fb8b0ddb2ef077ce155df7fa84 Mon Sep 17 00:00:00 2001 From: bobzel Date: Tue, 16 Mar 2021 00:19:55 -0400 Subject: fixed warnings --- src/Utils.ts | 6 +++--- src/client/views/nodes/PDFBox.tsx | 2 +- src/client/views/nodes/VideoBox.tsx | 7 ++++--- src/client/views/nodes/WebBox.tsx | 2 +- 4 files changed, 9 insertions(+), 8 deletions(-) (limited to 'src/client/views/nodes/VideoBox.tsx') diff --git a/src/Utils.ts b/src/Utils.ts index dab3548b3..ef9c51b8b 100644 --- a/src/Utils.ts +++ b/src/Utils.ts @@ -601,7 +601,7 @@ export function lightOrDark(color: any) { export function getWordAtPoint(elem: any, x: number, y: number): string | undefined { if (elem.nodeType === elem.TEXT_NODE) { - var range = elem.ownerDocument.createRange(); + const range = elem.ownerDocument.createRange(); range.selectNodeContents(elem); var currentPos = 0; const endPos = range.endOffset; @@ -611,7 +611,7 @@ export function getWordAtPoint(elem: any, x: number, y: number): string | undefi const rangeRect = range.getBoundingClientRect(); if (rangeRect.left <= x && rangeRect.right >= x && rangeRect.top <= y && rangeRect.bottom >= y) { - range.expand("word"); + range.expand?.("word"); // doesn't exist in firefox const ret = range.toString(); range.detach(); return (ret); @@ -619,7 +619,7 @@ export function getWordAtPoint(elem: any, x: number, y: number): string | undefi currentPos += 1; } } else { - for (let childNode of elem.childNodes) { + for (const childNode of elem.childNodes) { const range = childNode.ownerDocument.createRange(); range.selectNodeContents(childNode); const rangeRect = range.getBoundingClientRect(); diff --git a/src/client/views/nodes/PDFBox.tsx b/src/client/views/nodes/PDFBox.tsx index e4aa639ff..0dbe0c917 100644 --- a/src/client/views/nodes/PDFBox.tsx +++ b/src/client/views/nodes/PDFBox.tsx @@ -231,7 +231,7 @@ export class PDFBox extends ViewBoxAnnotatableComponent diff --git a/src/client/views/nodes/VideoBox.tsx b/src/client/views/nodes/VideoBox.tsx index f733de86a..575fbcf2e 100644 --- a/src/client/views/nodes/VideoBox.tsx +++ b/src/client/views/nodes/VideoBox.tsx @@ -1,6 +1,6 @@ import React = require("react"); import { FontAwesomeIcon } from "@fortawesome/react-fontawesome"; -import { action, computed, IReactionDisposer, observable, reaction, runInAction, untracked } from "mobx"; +import { action, computed, IReactionDisposer, observable, reaction, runInAction, untracked, ObservableMap } from "mobx"; import { observer } from "mobx-react"; import * as rp from 'request-promise'; import { Dictionary } from "typescript-collections"; @@ -51,7 +51,7 @@ export class VideoBox extends ViewBoxAnnotatableComponent = new Dictionary(); + @observable _savedAnnotations = new ObservableMap(); @observable _screenCapture = false; @observable _clicking = false; @observable _forceCreateYouTubeIFrame = false; @@ -206,7 +206,7 @@ export class VideoBox extends ViewBoxAnnotatableComponent this.props.isSelected(), selected => !selected && setTimeout(() => { - this._savedAnnotations.values().forEach(v => v.forEach(a => a.remove())); + Array.from(this._savedAnnotations.values()).forEach(v => v.forEach(a => a.remove())); this._savedAnnotations.clear(); })); this._disposers.triggerVideo = reaction( @@ -575,6 +575,7 @@ export class VideoBox extends ViewBoxAnnotatableComponent this.fieldKey + "-sidebar"; sidebarFiltersHeight = () => 50; -- cgit v1.2.3-70-g09d2