diff options
| author | 2020-11-16 00:36:09 +0100 | |
|---|---|---|
| committer | 2020-11-15 17:36:09 -0600 | |
| commit | f24c6ee9272bbafa60e9a1f8ae4de070026e81ed (patch) | |
| tree | 11f5bb54b978a50ca94f470eafd95f01ff0388ff /source/features/esc-to-cancel.tsx | |
| parent | 6ef2936308676d064d3c72f068aee6c77927bc21 (diff) | |
| download | refined-github-f24c6ee9272bbafa60e9a1f8ae4de070026e81ed.tar.gz refined-github-f24c6ee9272bbafa60e9a1f8ae4de070026e81ed.tar.zst refined-github-f24c6ee9272bbafa60e9a1f8ae4de070026e81ed.zip | |
Add `esc-to-cancel` feature (#3701)
Co-authored-by: Federico Brigante <me@fregante.com>
Diffstat (limited to 'source/features/esc-to-cancel.tsx')
| -rw-r--r-- | source/features/esc-to-cancel.tsx | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/source/features/esc-to-cancel.tsx b/source/features/esc-to-cancel.tsx new file mode 100644 index 00000000..41ea2ba1 --- /dev/null +++ b/source/features/esc-to-cancel.tsx @@ -0,0 +1,25 @@ +import select from 'select-dom'; +import delegate from 'delegate-it'; + +import features from '.'; + +function handleEscPress(event: delegate.Event<KeyboardEvent>): void { + if (event.key === 'Escape') { + select('.js-cancel-issue-edit')!.click(); + + event.stopImmediatePropagation(); + event.preventDefault(); + } +} + +function init(): void { + delegate(document, '#issue_title', 'keydown', handleEscPress); +} + +void features.add(__filebasename, { + shortcuts: { + esc: 'Cancel editing a conversation title' + }, + awaitDomReady: false, + init +}); |
