aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/SidebarAnnos.tsx
diff options
context:
space:
mode:
authorbobzel <zzzman@gmail.com>2022-11-02 10:42:25 -0400
committerbobzel <zzzman@gmail.com>2022-11-02 10:42:25 -0400
commit1a8024dce302acc1637cd1f7d74b0238c5979c15 (patch)
tree7666af3b597a61de32be38b90927cae36f1fc314 /src/client/views/SidebarAnnos.tsx
parentdcc1c3cb204f5ffe506860daf772f2e978371738 (diff)
select docs when title header is edited. fixed doc decoration top border. sort sidebar annos by y coord
Diffstat (limited to 'src/client/views/SidebarAnnos.tsx')
-rw-r--r--src/client/views/SidebarAnnos.tsx9
1 files changed, 8 insertions, 1 deletions
diff --git a/src/client/views/SidebarAnnos.tsx b/src/client/views/SidebarAnnos.tsx
index df1eb72ce..869caabd1 100644
--- a/src/client/views/SidebarAnnos.tsx
+++ b/src/client/views/SidebarAnnos.tsx
@@ -3,7 +3,7 @@ import { observer } from 'mobx-react';
import { Doc, DocListCast, StrListCast } from '../../fields/Doc';
import { Id } from '../../fields/FieldSymbols';
import { List } from '../../fields/List';
-import { NumCast, StrCast } from '../../fields/Types';
+import { DocCast, NumCast, StrCast } from '../../fields/Types';
import { emptyFunction, OmitKeys, returnAll, returnOne, returnTrue, returnZero } from '../../Utils';
import { Docs, DocUtils } from '../documents/Documents';
import { CollectionViewType, DocumentType } from '../documents/DocumentTypes';
@@ -66,6 +66,7 @@ export class SidebarAnnos extends React.Component<FieldViewProps & ExtraProps> {
_height: 50,
_fitWidth: true,
_autoHeight: true,
+ _isLinkButton: true,
_fontSize: StrCast(Doc.UserDoc().fontSize),
_fontFamily: StrCast(Doc.UserDoc().fontFamily),
});
@@ -133,6 +134,11 @@ export class SidebarAnnos extends React.Component<FieldViewProps & ExtraProps> {
docFilters = () => [...StrListCast(this.props.layoutDoc._docFilters), ...StrListCast(this.props.layoutDoc[this.filtersKey])];
showTitle = () => 'title';
setHeightCallback = (height: number) => this.props.setHeight?.(height + this.filtersHeight());
+ sortByLinkAnchorY = (a: Doc, b: Doc) => {
+ const ay = DocListCast(a.links).length && DocCast(DocListCast(a.links)[0].anchor1).y;
+ const by = DocListCast(b.links).length && DocCast(DocListCast(b.links)[0].anchor1).y;
+ return NumCast(ay) - NumCast(by);
+ };
render() {
const renderTag = (tag: string) => {
const active = StrListCast(this.props.rootDoc[this.filtersKey]).includes(`${tag}:${tag}:check`);
@@ -184,6 +190,7 @@ export class SidebarAnnos extends React.Component<FieldViewProps & ExtraProps> {
PanelWidth={this.panelWidth}
docFilters={this.docFilters}
scaleField={this.sidebarKey + '-scale'}
+ sortFunc={this.sortByLinkAnchorY}
setHeight={this.setHeightCallback}
isAnnotationOverlay={false}
select={emptyFunction}