mirror of
https://github.com/kovidgoyal/calibre.git
synced 2025-07-09 03:04:10 -04:00
Get rid of legacy keycodes mapping
This commit is contained in:
parent
82fcdf6272
commit
2523d6605e
@ -4,7 +4,6 @@ from __python__ import hash_literals, bound_methods
|
|||||||
|
|
||||||
from dom import ensure_id
|
from dom import ensure_id
|
||||||
from elementmaker import E
|
from elementmaker import E
|
||||||
from keycodes import get_key
|
|
||||||
from session import local_storage
|
from session import local_storage
|
||||||
from popups import CompletionPopup
|
from popups import CompletionPopup
|
||||||
from utils import uniq
|
from utils import uniq
|
||||||
@ -34,15 +33,14 @@ class EditWithComplete:
|
|||||||
return True
|
return True
|
||||||
|
|
||||||
def onkeydown(self, event):
|
def onkeydown(self, event):
|
||||||
k = get_key(event)
|
if self.completion_popup.is_visible and self.completion_popup.handle_keydown(event):
|
||||||
if self.completion_popup.is_visible and self.completion_popup.handle_keydown(k):
|
|
||||||
event.preventDefault(), event.stopPropagation()
|
event.preventDefault(), event.stopPropagation()
|
||||||
return
|
return
|
||||||
if k is 'enter':
|
if event.key is 'Enter':
|
||||||
if self.onenterkey:
|
if self.onenterkey:
|
||||||
event.preventDefault(), event.stopPropagation()
|
event.preventDefault(), event.stopPropagation()
|
||||||
self.onenterkey()
|
self.onenterkey()
|
||||||
elif k is 'tab':
|
elif event.key is 'Tab':
|
||||||
if self.completion_popup.is_visible:
|
if self.completion_popup.is_visible:
|
||||||
if self.apply_completion(self.completion_popup.current_text):
|
if self.apply_completion(self.completion_popup.current_text):
|
||||||
self.completion_popup.hide()
|
self.completion_popup.hide()
|
||||||
|
@ -1,58 +0,0 @@
|
|||||||
# vim:fileencoding=utf-8
|
|
||||||
# License: GPL v3 Copyright: 2016, Kovid Goyal <kovid at kovidgoyal.net>
|
|
||||||
from __python__ import hash_literals
|
|
||||||
|
|
||||||
KEYCODE_MAP = K = Object.create(None)
|
|
||||||
K[8] = 'backspace'
|
|
||||||
K[9] = 'tab'
|
|
||||||
K[13] = 'enter'
|
|
||||||
K[16] = 'shift'
|
|
||||||
K[17] = 'ctrl'
|
|
||||||
K[18] = 'alt'
|
|
||||||
K[19] = 'pause'
|
|
||||||
K[20] = 'capslock'
|
|
||||||
K[27] = 'escape'
|
|
||||||
K[32] = 'space'
|
|
||||||
K[33] = 'pageup'
|
|
||||||
K[34] = 'pagedown'
|
|
||||||
K[35] = 'end'
|
|
||||||
K[36] = 'home'
|
|
||||||
K[37] = 'left'
|
|
||||||
K[38] = 'up'
|
|
||||||
K[39] = 'right'
|
|
||||||
K[40] = 'down'
|
|
||||||
K[45] = 'insert'
|
|
||||||
K[46] = 'delete'
|
|
||||||
K[91] = 'meta_l'
|
|
||||||
K[92] = 'meta_r'
|
|
||||||
K[93] = 'select'
|
|
||||||
K[106] = 'numpad*'
|
|
||||||
K[107] = 'numpad+'
|
|
||||||
K[109] = 'numpad-'
|
|
||||||
K[111] = 'numpad/'
|
|
||||||
K[144] = 'numlock'
|
|
||||||
K[145] = 'scrolllock'
|
|
||||||
K[186] = ';'
|
|
||||||
K[187] = '+'
|
|
||||||
K[188] = ','
|
|
||||||
K[189] = '-'
|
|
||||||
K[190] = '.'
|
|
||||||
K[191] = '/'
|
|
||||||
K[192] = '`'
|
|
||||||
K[219] = '['
|
|
||||||
K[220] = '\\'
|
|
||||||
K[221] = ']'
|
|
||||||
K[222] = "'"
|
|
||||||
|
|
||||||
for i in range(10):
|
|
||||||
KEYCODE_MAP[48 + i] = i + ''
|
|
||||||
KEYCODE_MAP[96 + i] = 'numpad' + i
|
|
||||||
|
|
||||||
for i, c in enumerate(str.ascii_lowercase):
|
|
||||||
KEYCODE_MAP[65 + i] = c
|
|
||||||
|
|
||||||
for i in range(1, 13):
|
|
||||||
KEYCODE_MAP[111 + i] = 'f' + 1
|
|
||||||
|
|
||||||
def get_key(key_event):
|
|
||||||
return KEYCODE_MAP[key_event.keyCode]
|
|
@ -128,14 +128,15 @@ class CompletionPopup:
|
|||||||
if c:
|
if c:
|
||||||
c.classList.remove(self.CURRENT_ITEM_CLASS)
|
c.classList.remove(self.CURRENT_ITEM_CLASS)
|
||||||
|
|
||||||
def handle_keydown(self, key):
|
def handle_keydown(self, event):
|
||||||
if key is 'escape':
|
key = event.key
|
||||||
|
if key is 'Escape' or key is 'Esc':
|
||||||
self.hide()
|
self.hide()
|
||||||
return True
|
return True
|
||||||
if key is 'up':
|
if key is 'ArrowUp':
|
||||||
self.move_highlight(True)
|
self.move_highlight(True)
|
||||||
return True
|
return True
|
||||||
if key is 'down':
|
if key is 'ArrowDown':
|
||||||
self.move_highlight(False)
|
self.move_highlight(False)
|
||||||
return True
|
return True
|
||||||
return False
|
return False
|
||||||
|
@ -8,7 +8,6 @@ from gettext import gettext as _
|
|||||||
from book_list.theme import get_color
|
from book_list.theme import get_color
|
||||||
from complete import create_search_bar
|
from complete import create_search_bar
|
||||||
from dom import add_extra_css, build_rule, svgicon
|
from dom import add_extra_css, build_rule, svgicon
|
||||||
from keycodes import get_key
|
|
||||||
from read_book.globals import ui_operations
|
from read_book.globals import ui_operations
|
||||||
from read_book.resources import text_from_serialized_html
|
from read_book.resources import text_from_serialized_html
|
||||||
|
|
||||||
@ -44,8 +43,7 @@ class SearchOverlay:
|
|||||||
c.firstChild.addEventListener('keydown', self.onkeydown)
|
c.firstChild.addEventListener('keydown', self.onkeydown)
|
||||||
|
|
||||||
def onkeydown(self, event):
|
def onkeydown(self, event):
|
||||||
k = get_key(event)
|
if event.key is 'Escape' or event.key is 'Esc':
|
||||||
if k is 'escape':
|
|
||||||
self.hide()
|
self.hide()
|
||||||
event.preventDefault(), event.stopPropagation()
|
event.preventDefault(), event.stopPropagation()
|
||||||
|
|
||||||
|
Loading…
x
Reference in New Issue
Block a user