aboutsummaryrefslogtreecommitdiff
path: root/src/client/views/MainView.tsx
diff options
context:
space:
mode:
Diffstat (limited to 'src/client/views/MainView.tsx')
-rw-r--r--src/client/views/MainView.tsx65
1 files changed, 32 insertions, 33 deletions
diff --git a/src/client/views/MainView.tsx b/src/client/views/MainView.tsx
index 6c0a67de2..edc16d9a6 100644
--- a/src/client/views/MainView.tsx
+++ b/src/client/views/MainView.tsx
@@ -9,13 +9,13 @@ import * as React from 'react';
import * as ReactDOM from 'react-dom';
import { Doc, DocListCast, Opt } from '../../fields/Doc';
import { ScriptField } from '../../fields/ScriptField';
-import { PromiseValue, StrCast } from '../../fields/Types';
+import { StrCast } from '../../fields/Types';
import { emptyFunction, returnEmptyDoclist, returnEmptyFilter, returnFalse, returnTrue, returnZero, setupMoveUpEvents, simulateMouseClick, Utils } from '../../Utils';
import { GoogleAuthenticationManager } from '../apis/GoogleAuthenticationManager';
import { DocServer } from '../DocServer';
import { Docs, DocUtils } from '../documents/Documents';
+import { CollectionViewType } from '../documents/DocumentTypes';
import { CaptureManager } from '../util/CaptureManager';
-import { CurrentUserUtils } from '../util/CurrentUserUtils';
import { DocumentManager } from '../util/DocumentManager';
import { GroupManager } from '../util/GroupManager';
import { HistoryUtil } from '../util/History';
@@ -31,7 +31,6 @@ import { CollectionDockingView } from './collections/CollectionDockingView';
import { MarqueeOptionsMenu } from './collections/collectionFreeForm/MarqueeOptionsMenu';
import { CollectionLinearView } from './collections/collectionLinear';
import { CollectionMenu } from './collections/CollectionMenu';
-import { CollectionViewType } from './collections/CollectionView';
import './collections/TreeView.scss';
import { ComponentDecorations } from './ComponentDecorations';
import { ContextMenu } from './ContextMenu';
@@ -76,7 +75,7 @@ export class MainView extends React.Component {
@observable private _dashUIWidth: number = 0; // width of entire main dashboard region including left menu buttons and properties panel (but not including the dashboard selector button row)
@observable private _dashUIHeight: number = 0; // height of entire main dashboard region including top menu buttons
@observable private _panelContent: string = 'none';
- @observable private _sidebarContent: any = CurrentUserUtils.MyLeftSidebarPanel;
+ @observable private _sidebarContent: any = Doc.MyLeftSidebarPanel;
@observable private _leftMenuFlyoutWidth: number = 0;
@computed private get dashboardTabHeight() {
@@ -104,27 +103,27 @@ export class MainView extends React.Component {
return Doc.UserDoc();
}
@computed private get colorScheme() {
- return StrCast(CurrentUserUtils.ActiveDashboard?.colorScheme);
+ return StrCast(Doc.ActiveDashboard?.colorScheme);
}
@computed private get mainContainer() {
- return this.userDoc ? CurrentUserUtils.ActiveDashboard : CurrentUserUtils.GuestDashboard;
+ return this.userDoc ? Doc.ActiveDashboard : Doc.GuestDashboard;
}
@computed private get headerBarDoc() {
- return CurrentUserUtils.MyHeaderBar;
+ return Doc.MyHeaderBar;
}
@computed public get mainFreeform(): Opt<Doc> {
return (docs => (docs?.length > 1 ? docs[1] : undefined))(DocListCast(this.mainContainer!.data));
}
headerBarDocWidth = () => this.mainDocViewWidth();
- headerBarDocHeight = () => CurrentUserUtils.headerBarHeight ?? 0;
+ headerBarDocHeight = () => SettingsManager.headerBarHeight ?? 0;
topMenuHeight = () => 35;
topMenuWidth = returnZero; // value is ignored ...
leftMenuWidth = () => Number(LEFT_MENU_WIDTH.replace('px', ''));
leftMenuHeight = () => this._dashUIHeight;
leftMenuFlyoutWidth = () => this._leftMenuFlyoutWidth;
leftMenuFlyoutHeight = () => this._dashUIHeight;
- propertiesWidth = () => Math.max(0, Math.min(this._dashUIWidth - 50, CurrentUserUtils.propertiesWidth || 0));
+ propertiesWidth = () => Math.max(0, Math.min(this._dashUIWidth - 50, SettingsManager.propertiesWidth || 0));
propertiesHeight = () => this._dashUIHeight;
mainDocViewWidth = () => this._dashUIWidth - this.propertiesWidth() - this.leftMenuWidth() - this.leftMenuFlyoutWidth();
mainDocViewHeight = () => this._dashUIHeight - this.headerBarDocHeight();
@@ -204,7 +203,7 @@ export class MainView extends React.Component {
constructor(props: Readonly<{}>) {
super(props);
MainView.Instance = this;
- CurrentUserUtils._urlState = HistoryUtil.parseUrl(window.location) || ({} as any);
+ DashboardView._urlState = HistoryUtil.parseUrl(window.location) || ({} as any);
// causes errors to be generated when modifying an observable outside of an action
configure({ enforceActions: 'observed' });
@@ -212,8 +211,8 @@ export class MainView extends React.Component {
if (window.location.pathname !== '/home') {
const pathname = window.location.pathname.substr(1).split('/');
if (pathname.length > 1 && pathname[0] === 'doc') {
- CurrentUserUtils.MainDocId = pathname[1];
- !this.userDoc && DocServer.GetRefField(pathname[1]).then(action(field => field instanceof Doc && (CurrentUserUtils.GuestTarget = field)));
+ Doc.MainDocId = pathname[1];
+ !this.userDoc && DocServer.GetRefField(pathname[1]).then(action(field => field instanceof Doc && (Doc.GuestTarget = field)));
}
}
@@ -483,18 +482,18 @@ export class MainView extends React.Component {
};
initAuthenticationRouters = async () => {
- const received = CurrentUserUtils.MainDocId;
+ const received = Doc.MainDocId;
if (received && !this.userDoc) {
reaction(
- () => CurrentUserUtils.GuestTarget,
- target => target && CurrentUserUtils.createNewDashboard(),
+ () => Doc.GuestTarget,
+ target => target && DashboardView.createNewDashboard(),
{ fireImmediately: true }
);
}
// else {
// PromiseValue(this.userDoc.activeDashboard).then(dash => {
- // if (dash instanceof Doc) CurrentUserUtils.openDashboard(dash);
- // else CurrentUserUtils.createNewDashboard();
+ // if (dash instanceof Doc) DashboardView.openDashboard(dash);
+ // else Doc.createNewDashboard();
// });
// }
};
@@ -503,14 +502,14 @@ export class MainView extends React.Component {
createNewPresentation = async () => {
const pres = Docs.Create.PresDocument({ title: 'Untitled Trail', _viewType: CollectionViewType.Stacking, _fitWidth: true, _width: 400, _height: 500, targetDropAction: 'alias', _chromeHidden: true, boxShadow: '0 0' });
CollectionDockingView.AddSplit(pres, 'left');
- CurrentUserUtils.ActivePresentation = pres;
- Doc.AddDocToList(CurrentUserUtils.MyTrails, 'data', pres);
+ Doc.ActivePresentation = pres;
+ Doc.AddDocToList(Doc.MyTrails, 'data', pres);
};
@action
createNewFolder = async () => {
const folder = Docs.Create.TreeDocument([], { title: 'Untitled folder', _stayInCollection: true, isFolder: true });
- Doc.AddDocToList(CurrentUserUtils.MyFilesystem, 'data', folder);
+ Doc.AddDocToList(Doc.MyFilesystem, 'data', folder);
};
@observable _exploreMode = false;
@@ -612,9 +611,9 @@ export class MainView extends React.Component {
setupMoveUpEvents(
this,
e,
- action(e => ((CurrentUserUtils.propertiesWidth = Math.max(0, this._dashUIWidth - e.clientX)) ? false : false)),
- action(() => CurrentUserUtils.propertiesWidth < 5 && (CurrentUserUtils.propertiesWidth = 0)),
- action(() => (CurrentUserUtils.propertiesWidth = this.propertiesWidth() < 15 ? Math.min(this._dashUIWidth - 50, 250) : 0)),
+ action(e => ((SettingsManager.propertiesWidth = Math.max(0, this._dashUIWidth - e.clientX)) ? false : false)),
+ action(() => SettingsManager.propertiesWidth < 5 && (SettingsManager.propertiesWidth = 0)),
+ action(() => (SettingsManager.propertiesWidth = this.propertiesWidth() < 15 ? Math.min(this._dashUIWidth - 50, 250) : 0)),
false
);
};
@@ -635,10 +634,10 @@ export class MainView extends React.Component {
addDocTabFunc = (doc: Doc, location: string): boolean => {
const locationFields = doc._viewType === CollectionViewType.Docking ? ['dashboard'] : location.split(':');
const locationParams = locationFields.length > 1 ? locationFields[1] : '';
- if (doc.dockingConfig) return CurrentUserUtils.openDashboard(doc);
+ if (doc.dockingConfig) return DashboardView.openDashboard(doc);
switch (locationFields[0]) {
case 'dashboard':
- return CurrentUserUtils.openDashboard(doc);
+ return DashboardView.openDashboard(doc);
case 'close':
return CollectionDockingView.CloseSplit(doc, locationParams);
case 'fullScreen':
@@ -669,7 +668,7 @@ export class MainView extends React.Component {
addDocTab={this.addDocTabFunc}
pinToPres={emptyFunction}
docViewPath={returnEmptyDoclist}
- styleProvider={this._sidebarContent.proto === CurrentUserUtils.MyDashboards || this._sidebarContent.proto === CurrentUserUtils.MyFilesystem ? DashboardStyleProvider : DefaultStyleProvider}
+ styleProvider={this._sidebarContent.proto === Doc.MyDashboards || this._sidebarContent.proto === Doc.MyFilesystem ? DashboardStyleProvider : DefaultStyleProvider}
rootSelected={returnTrue}
removeDocument={returnFalse}
ScreenToLocalTransform={this.mainContainerXf}
@@ -697,7 +696,7 @@ export class MainView extends React.Component {
return (
<div key="menu" className="mainView-leftMenuPanel">
<DocumentView
- Document={CurrentUserUtils.MyLeftSidebarMenu}
+ Document={Doc.MyLeftSidebarMenu}
DataDoc={undefined}
addDocument={undefined}
addDocTab={this.addDocTabFunc}
@@ -815,9 +814,9 @@ export class MainView extends React.Component {
this._leftMenuFlyoutWidth = 0;
});
- remButtonDoc = (doc: Doc | Doc[]) => (doc instanceof Doc ? [doc] : doc).reduce((flg: boolean, doc) => flg && Doc.RemoveDocFromList(CurrentUserUtils.MyDockedBtns, 'data', doc), true);
+ remButtonDoc = (doc: Doc | Doc[]) => (doc instanceof Doc ? [doc] : doc).reduce((flg: boolean, doc) => flg && Doc.RemoveDocFromList(Doc.MyDockedBtns, 'data', doc), true);
moveButtonDoc = (doc: Doc | Doc[], targetCollection: Doc | undefined, addDocument: (document: Doc | Doc[]) => boolean) => this.remButtonDoc(doc) && addDocument(doc);
- addButtonDoc = (doc: Doc | Doc[]) => (doc instanceof Doc ? [doc] : doc).reduce((flg: boolean, doc) => flg && Doc.AddDocToList(CurrentUserUtils.MyDockedBtns, 'data', doc), true);
+ addButtonDoc = (doc: Doc | Doc[]) => (doc instanceof Doc ? [doc] : doc).reduce((flg: boolean, doc) => flg && Doc.AddDocToList(Doc.MyDockedBtns, 'data', doc), true);
buttonBarXf = () => {
if (!this._docBtnRef.current) return Transform.Identity();
@@ -826,10 +825,10 @@ export class MainView extends React.Component {
};
@computed get docButtons() {
- return !CurrentUserUtils.MyDockedBtns ? null : (
- <div className="mainView-docButtons" ref={this._docBtnRef} style={{ height: !CurrentUserUtils.MyDockedBtns.linearViewIsExpanded ? '42px' : undefined }}>
+ return !Doc.MyDockedBtns ? null : (
+ <div className="mainView-docButtons" ref={this._docBtnRef} style={{ height: !Doc.MyDockedBtns.linearViewIsExpanded ? '42px' : undefined }}>
<CollectionLinearView
- Document={CurrentUserUtils.MyDockedBtns}
+ Document={Doc.MyDockedBtns}
DataDoc={undefined}
fieldKey={'data'}
dropAction={'alias'}
@@ -981,7 +980,7 @@ export class MainView extends React.Component {
case 'home':
return <DashboardView />;
}
- })(CurrentUserUtils.ActivePage)}
+ })(Doc.ActivePage)}
<PreviewCursor />
<TaskCompletionBox />