aboutsummaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
Diffstat (limited to 'src')
-rw-r--r--src/client/views/GlobalKeyHandler.ts18
-rw-r--r--src/client/views/MainView.tsx19
2 files changed, 16 insertions, 21 deletions
diff --git a/src/client/views/GlobalKeyHandler.ts b/src/client/views/GlobalKeyHandler.ts
index ac1c33c71..e467d7c61 100644
--- a/src/client/views/GlobalKeyHandler.ts
+++ b/src/client/views/GlobalKeyHandler.ts
@@ -13,17 +13,13 @@ type KeyControlInfo = {
};
export default class KeyManager {
- public static Handler: KeyManager;
- private mainView: MainView;
+ public static Handler: KeyManager = new KeyManager();
private router = new Map<string, KeyHandler>();
- constructor(mainView: MainView) {
- this.mainView = mainView;
-
+ constructor() {
let isMac = navigator.platform.toLowerCase().indexOf("mac") >= 0;
// SHIFT CONTROL ALT META
-
this.router.set("0000", this.unmodified);
this.router.set(isMac ? "0001" : "0100", this.ctrl);
this.router.set(isMac ? "0100" : "0010", this.alt);
@@ -60,7 +56,7 @@ export default class KeyManager {
private unmodified = action((keyname: string) => {
switch (keyname) {
case "escape":
- if (this.mainView.isPointerDown) {
+ if (MainView.Instance.isPointerDown) {
DragManager.AbortDrag();
} else {
if (CollectionDockingView.Instance.HasFullScreen()) {
@@ -84,7 +80,7 @@ export default class KeyManager {
switch (keyname) {
case "n":
- let toggle = this.mainView.addMenuToggle.current!;
+ let toggle = MainView.Instance.addMenuToggle.current!;
toggle.checked = !toggle.checked;
break;
}
@@ -101,13 +97,13 @@ export default class KeyManager {
switch (keyname) {
case "arrowright":
- this.mainView.mainFreeform && CollectionDockingView.Instance.AddRightSplit(this.mainView.mainFreeform, undefined);
+ MainView.Instance.mainFreeform && CollectionDockingView.Instance.AddRightSplit(MainView.Instance.mainFreeform, undefined);
break;
case "arrowleft":
- this.mainView.mainFreeform && CollectionDockingView.Instance.CloseRightSplit(this.mainView.mainFreeform);
+ MainView.Instance.mainFreeform && CollectionDockingView.Instance.CloseRightSplit(MainView.Instance.mainFreeform);
break;
case "f":
- this.mainView.isSearchVisible = !this.mainView.isSearchVisible;
+ MainView.Instance.isSearchVisible = !MainView.Instance.isSearchVisible;
break;
case "o":
let target = SelectionManager.SelectedDocuments()[0];
diff --git a/src/client/views/MainView.tsx b/src/client/views/MainView.tsx
index fe3ff2392..fb88c284f 100644
--- a/src/client/views/MainView.tsx
+++ b/src/client/views/MainView.tsx
@@ -64,24 +64,23 @@ export class MainView extends React.Component {
}
componentWillMount() {
- KeyManager.Handler = new KeyManager(this);
- document.removeEventListener("keydown", KeyManager.Handler.handle);
- document.addEventListener("keydown", KeyManager.Handler.handle);
+ window.removeEventListener("keydown", KeyManager.Handler.handle);
+ window.addEventListener("keydown", KeyManager.Handler.handle);
- document.removeEventListener("pointerdown", this.pointerDown);
- document.addEventListener("pointerdown", this.pointerDown);
+ window.removeEventListener("pointerdown", this.pointerDown);
+ window.addEventListener("pointerdown", this.pointerDown);
- document.removeEventListener("pointerup", this.pointerUp);
- document.addEventListener("pointerup", this.pointerUp);
+ window.removeEventListener("pointerup", this.pointerUp);
+ window.addEventListener("pointerup", this.pointerUp);
}
pointerDown = (e: PointerEvent) => this.isPointerDown = true;
pointerUp = (e: PointerEvent) => this.isPointerDown = false;
componentWillUnMount() {
- document.removeEventListener("keydown", KeyManager.Handler.handle);
- document.removeEventListener("pointerdown", this.pointerDown);
- document.removeEventListener("pointerup", this.pointerUp);
+ window.removeEventListener("keydown", KeyManager.Handler.handle);
+ window.removeEventListener("pointerdown", this.pointerDown);
+ window.removeEventListener("pointerup", this.pointerUp);
}
constructor(props: Readonly<{}>) {