diff options
| author | bobzel <zzzman@gmail.com> | 2020-08-08 20:56:30 -0400 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2020-08-08 20:56:30 -0400 |
| commit | 9f4a7ec5f79d9dec3a0ffb0b633197216cbefec8 (patch) | |
| tree | 4b30cf8edfee0b2f315353329fde65b0b4585ae0 /src/client/views/collections/CollectionSubView.tsx | |
| parent | 47e3170534393ab9e4140c18b32110f83753d817 (diff) | |
| parent | 1733759b776f0596c3a8561d2c735a4b7c7d54d3 (diff) | |
Merge pull request #517 from browngraphicslab/hypothesis_annotation
Hypothesis annotation
Diffstat (limited to 'src/client/views/collections/CollectionSubView.tsx')
| -rw-r--r-- | src/client/views/collections/CollectionSubView.tsx | 32 |
1 files changed, 24 insertions, 8 deletions
diff --git a/src/client/views/collections/CollectionSubView.tsx b/src/client/views/collections/CollectionSubView.tsx index 0e40cd21c..72aece284 100644 --- a/src/client/views/collections/CollectionSubView.tsx +++ b/src/client/views/collections/CollectionSubView.tsx @@ -402,14 +402,28 @@ export function CollectionSubView<T, X>(schemaCtor: (doc: Doc) => T, moreProps?: // } } if (uriList) { - this.addDocument(Docs.Create.WebDocument(uriList, { - ...options, - title: uriList, - _width: 400, - _height: 315, - _nativeWidth: 850, - _nativeHeight: 962 - })); + const existingWebDoc = await Hypothesis.findWebDoc(uriList); + if (existingWebDoc) { + const alias = Doc.MakeAlias(existingWebDoc); + alias.x = options.x; + alias.y = options.y; + alias._nativeWidth = 850; + alias._nativeHeight = 962; + alias._width = 400; + this.addDocument(alias); + } else { + const newDoc = Docs.Create.WebDocument(uriList, { + ...options, + title: uriList.split("#annotations:")[0], + _width: 400, + _height: 315, + _nativeWidth: 850, + _nativeHeight: 962, + UseCors: true + }); + newDoc.data = new WebField(uriList.split("#annotations:")[0]); // clean hypothes.is URLs that reference a specific annotation (eg. https://en.wikipedia.org/wiki/Cartoon#annotations:t7qAeNbCEeqfG5972KR2Ig) + this.addDocument(newDoc); + } return; } @@ -492,3 +506,5 @@ import { CollectionView, CollectionViewType } from "./CollectionView"; import { SelectionManager } from "../../util/SelectionManager"; import { OverlayView } from "../OverlayView"; import { setTimeout } from "timers"; +import { Hypothesis } from "../../util/HypothesisUtils"; + |
