aboutsummaryrefslogtreecommitdiff
path: root/src/client/util/LinkFollower.ts
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2023-01-12 13:40:32 -0500
committerbobzel <zzzman@gmail.com>2023-01-12 13:40:32 -0500
commitbb185ceffcac42af373faf40e0bc2225150c243d (patch)
treea83719df9dcba3c9bcfcc9ed9e639db2597df270 /src/client/util/LinkFollower.ts
parent2d10c5ec8dc5969c719391d827db7f54f49c1241 (diff)
fixed loading newly created links. fixed following links to contexts that haven't been loaded yet.
Diffstat (limited to 'src/client/util/LinkFollower.ts')
-rw-r--r--src/client/util/LinkFollower.ts8
1 files changed, 4 insertions, 4 deletions
diff --git a/src/client/util/LinkFollower.ts b/src/client/util/LinkFollower.ts
index b9cd0c213..807b54cd5 100644
--- a/src/client/util/LinkFollower.ts
+++ b/src/client/util/LinkFollower.ts
@@ -97,7 +97,7 @@ export class LinkFollower {
: linkDoc.anchor1
) as Doc;
if (target) {
- const doFollow = (canToggle?: boolean) => {
+ const doFollow = async (canToggle?: boolean) => {
const options: DocFocusOptions = {
playAudio: BoolCast(sourceDoc.followLinkAudio),
toggleTarget: canToggle && BoolCast(sourceDoc.followLinkToggle),
@@ -119,9 +119,9 @@ export class LinkFollower {
} else {
const containerAnnoDoc = Cast(target.annotationOn, Doc, null);
const containerDoc = containerAnnoDoc || target;
- var containerDocContext = containerDoc?.context ? [Cast(containerDoc?.context, Doc, null)] : ([] as Doc[]);
- while (containerDocContext.length && !DocumentManager.Instance.getDocumentView(containerDocContext[0]) && containerDocContext[0].context && DocCast(containerDocContext[0].context).viewType !== CollectionViewType.Docking) {
- containerDocContext = [Cast(containerDocContext[0].context, Doc, null), ...containerDocContext];
+ var containerDocContext = containerDoc?.context ? [Cast(await containerDoc?.context, Doc, null)] : ([] as Doc[]);
+ while (containerDocContext.length && containerDocContext[0]?.context && !DocumentManager.Instance.getDocumentView(containerDocContext[0]) && DocCast(containerDocContext[0].context)?.viewType !== CollectionViewType.Docking) {
+ containerDocContext = [Cast(await containerDocContext[0].context, Doc, null), ...containerDocContext];
}
const targetContexts = LightboxView.LightboxDoc ? [containerAnnoDoc || containerDocContext[0]].filter(a => a) : containerDocContext;
DocumentManager.Instance.jumpToDocument(target, options, (doc, finished) => createViewFunc(doc, StrCast(linkDoc.followLinkLocation, OpenWhere.inPlace), finished), targetContexts, allFinished);