Просмотр исходного кода

Merge branch 'support/hotkeys' into imprv/gw2848

# Conflicts:
#	src/client/js/components/Hotkeys/Hotkeys.jsx
白石誠 5 лет назад
Родитель
Сommit
ad41dfa02c

+ 2 - 0
src/client/js/components/Hotkeys/Hotkeys.jsx

@@ -3,6 +3,7 @@ import HotkeysDetector from '../HotkeysDetector/HotkeysDetector';
 import StaffCredit from '../StaffCredit/StaffCredit';
 import MirrorMode from '../MirrorMode/MirrorMode';
 import PageCreate from '../PageHotkeys/PageCreate';
+import PageEdit from '../PageHotkeys/PageEdit';
 
 export default class Hotkeys extends React.Component {
 
@@ -15,6 +16,7 @@ export default class Hotkeys extends React.Component {
       StaffCredit,
       MirrorMode,
       PageCreate,
+      PageEdit,
     ];
     this.keymap = this.keymapSet();
     this.deleteRender = this.deleteRender.bind(this);

+ 37 - 0
src/client/js/components/PageHotkeys/PageEdit.jsx

@@ -0,0 +1,37 @@
+import React from 'react';
+
+/**
+ *
+ * @export
+ * @extends {React.Component}
+ */
+
+export default class PageEdit extends React.Component {
+
+  // when this is called it returns the hotkey stroke
+  static getHotkeyStroke() {
+    return ['e'];
+  }
+
+  static getComponent() {
+    return <PageEdit />;
+  }
+
+  componentDidMount() {
+    // ignore when dom that has 'modal in' classes exists
+    if (document.getElementsByClassName('modal in').length > 0) {
+      return;
+    }
+    // show editor
+    $('a[data-toggle="tab"][href="#edit"]').tab('show');
+    return null;
+  }
+
+  render() {
+    return (
+      <React.Fragment>
+      </React.Fragment>
+    );
+  }
+
+}

+ 0 - 15
src/client/js/legacy/crowi.js

@@ -85,16 +85,6 @@ Crowi.modifyScrollTop = function() {
   }, timeout);
 };
 
-Crowi.handleKeyEHandler = (event) => {
-  // ignore when dom that has 'modal in' classes exists
-  if (document.getElementsByClassName('modal in').length > 0) {
-    return;
-  }
-  // show editor
-  $('a[data-toggle="tab"][href="#edit"]').tab('show');
-  event.preventDefault();
-};
-
 Crowi.handleKeyCtrlSlashHandler = (event) => {
   // show modal to create a page
   $('#shortcuts-modal').modal('toggle');
@@ -420,11 +410,6 @@ window.addEventListener('keydown', (event) => {
   }
 
   switch (event.key) {
-    case 'e':
-      if (!event.ctrlKey && !event.metaKey && !event.altKey && !event.shiftKey) {
-        Crowi.handleKeyEHandler(event);
-      }
-      break;
     case '/':
       if (event.ctrlKey || event.metaKey) {
         Crowi.handleKeyCtrlSlashHandler(event);