Merge pull request #6844 from SimonBrandner/fix/firefox-revert
Revert Firefox composer deletion hackspull/21833/head
						commit
						3a1a488287
					
				|  | @ -499,9 +499,6 @@ export default class BasicMessageEditor extends React.Component<IProps, IState> | |||
|             handled = true; | ||||
|         } else if (event.key === Key.BACKSPACE || event.key === Key.DELETE) { | ||||
|             this.formatBarRef.current.hide(); | ||||
|             if (!event.ctrlKey && !event.metaKey) { | ||||
|                 handled = this.fakeDeletion(event.key === Key.BACKSPACE); | ||||
|             } | ||||
|         } | ||||
| 
 | ||||
|         if (handled) { | ||||
|  | @ -567,29 +564,6 @@ export default class BasicMessageEditor extends React.Component<IProps, IState> | |||
|         } | ||||
|     }; | ||||
| 
 | ||||
|     /** | ||||
|      * TODO: Remove when Debian moves to newer version of Firefox | ||||
|      * On Firefox 78 no event emitted when the user tries to delete pills. | ||||
|      * Therefore we need to fake what would normally happen | ||||
|      * @param direction in which to delete | ||||
|      * @returns handled | ||||
|      */ | ||||
|     private fakeDeletion(backward: boolean): boolean { | ||||
|         const selection = document.getSelection(); | ||||
|         // Use the default handling for ranges
 | ||||
|         if (selection.type === "Range") return false; | ||||
| 
 | ||||
|         this.modifiedFlag = true; | ||||
|         const { caret, text } = getCaretOffsetAndText(this.editorRef.current, selection); | ||||
| 
 | ||||
|         // Do the deletion itself
 | ||||
|         if (backward) caret.offset--; | ||||
|         const newText = text.slice(0, caret.offset) + text.slice(caret.offset + 1); | ||||
| 
 | ||||
|         this.props.model.update(newText, backward ? "deleteContentBackward" : "deleteContentForward", caret); | ||||
|         return true; | ||||
|     } | ||||
| 
 | ||||
|     private async tabCompleteName(): Promise<void> { | ||||
|         try { | ||||
|             await new Promise<void>(resolve => this.setState({ showVisualBell: false }, resolve)); | ||||
|  |  | |||
		Loading…
	
		Reference in New Issue
	
	 David Baker
						David Baker