aboutsummaryrefslogtreecommitdiff
path: root/src/client/util/DocumentManager.ts
diff options
context:
space:
mode:
authorbob <bcz@cs.brown.edu>2019-08-08 12:23:47 -0400
committerbob <bcz@cs.brown.edu>2019-08-08 12:23:47 -0400
commit316c241d72fb83aad5f2bf9b143c317fdc906654 (patch)
treed31311f6bc525709a214429be84284b9d41ee4a6 /src/client/util/DocumentManager.ts
parente946f85b46e1b1a75ba46ccf9a1ee023e749b837 (diff)
fixed issues with jumptoDocument
Diffstat (limited to 'src/client/util/DocumentManager.ts')
-rw-r--r--src/client/util/DocumentManager.ts12
1 files changed, 7 insertions, 5 deletions
diff --git a/src/client/util/DocumentManager.ts b/src/client/util/DocumentManager.ts
index 0d46df406..7f526b247 100644
--- a/src/client/util/DocumentManager.ts
+++ b/src/client/util/DocumentManager.ts
@@ -1,5 +1,5 @@
import { action, computed, observable } from 'mobx';
-import { Doc } from '../../new_fields/Doc';
+import { Doc, DocListCastAsync } from '../../new_fields/Doc';
import { Id } from '../../new_fields/FieldSymbols';
import { Cast, NumCast } from '../../new_fields/Types';
import { CollectionDockingView } from '../views/collections/CollectionDockingView';
@@ -140,13 +140,15 @@ export class DocumentManager {
if (!forceDockFunc && (docView = DocumentManager.Instance.getDocumentView(doc))) {
Doc.BrushDoc(docView.props.Document);
if (linkPage !== undefined) docView.props.Document.curPage = linkPage;
- UndoManager.RunInBatch(() => {
- docView!.props.focus(docView!.props.Document, willZoom);
- }, "focus");
+ UndoManager.RunInBatch(() => docView!.props.focus(docView!.props.Document, willZoom), "focus");
} else {
if (!contextDoc) {
- if (docContext) {
+ let docs = docContext ? await DocListCastAsync(docContext.data) : undefined;
+ let found = false;
+ docs && docs.map(d => found = found || Doc.AreProtosEqual(d, docDelegate));
+ if (docContext && found) {
let targetContextView: DocumentView | null;
+
if (!forceDockFunc && docContext && (targetContextView = DocumentManager.Instance.getDocumentView(docContext))) {
docContext.panTransformType = "Ease";
targetContextView.props.focus(docDelegate, willZoom);