Kaynağa Gözat

[cm6] Improve Tab behaviour in read-only mode (#12715)

* Improve Tab behaviour in read-only mode
* Remove Tab shortcuts from Markdown configuration

GitOrigin-RevId: 9eb804fcf820b37b371b1c351cfbdf7bff1ced89
Alf Eaton 3 yıl önce
ebeveyn
işleme
4bb582bdd8

+ 3 - 0
services/web/frontend/js/features/source-editor/commands/indent.ts

@@ -3,6 +3,9 @@ import { getIndentUnit, indentString, indentUnit } from '@codemirror/language'
 import { EditorView } from '@codemirror/view'
 
 export const indentMore = (view: EditorView) => {
+  if (view.state.readOnly) {
+    return false
+  }
   view.dispatch(
     view.state.changeByRange(range => {
       const doc = view.state.doc

+ 0 - 2
services/web/frontend/js/features/source-editor/extensions/shortcuts.ts

@@ -43,12 +43,10 @@ export const shortcuts = () => {
   const keyBindings: KeyBinding[] = [
     {
       key: 'Tab',
-      preventDefault: true,
       run: indentMore,
     },
     {
       key: 'Shift-Tab',
-      preventDefault: true,
       run: indentLess,
     },
     {

+ 0 - 11
services/web/frontend/js/features/source-editor/languages/markdown/shortcuts.ts

@@ -1,7 +1,6 @@
 import { Prec } from '@codemirror/state'
 import { keymap } from '@codemirror/view'
 import { wrapRanges } from '../../commands/ranges'
-import { indentLess, indentMore } from '@codemirror/commands'
 
 export const shortcuts = () => {
   return Prec.high(
@@ -18,16 +17,6 @@ export const shortcuts = () => {
         preventDefault: true,
         run: wrapRanges('_', '_'),
       },
-      {
-        key: 'Tab',
-        preventDefault: true,
-        run: indentMore,
-      },
-      {
-        key: 'Shift-Tab',
-        preventDefault: true,
-        run: indentLess,
-      },
     ])
   )
 }