From 528df9602b1c8b6633f3ae2ef6e0fef4ef00abd2 Mon Sep 17 00:00:00 2001 From: DYefremov Date: Fri, 9 Nov 2018 14:14:24 +0300 Subject: [PATCH] checking if value exist for the keyboard key --- app/ui/main_app_window.py | 10 ++++++---- app/ui/satellites_dialog.py | 5 ++++- app/ui/uicommons.py | 5 ++--- 3 files changed, 12 insertions(+), 8 deletions(-) diff --git a/app/ui/main_app_window.py b/app/ui/main_app_window.py index ee501798..e6a892c5 100644 --- a/app/ui/main_app_window.py +++ b/app/ui/main_app_window.py @@ -952,9 +952,10 @@ class MainAppWindow: def on_tree_view_key_press(self, view, event): """ Handling keystrokes on press """ - key = KeyboardKey(event.hardware_keycode) - if not key: + key_code = event.hardware_keycode + if not KeyboardKey.value_exist(key_code): return + key = KeyboardKey(key_code) ctrl = event.state & Gdk.ModifierType.CONTROL_MASK model_name, model = get_model_data(view) @@ -980,9 +981,10 @@ class MainAppWindow: def on_tree_view_key_release(self, view, event): """ Handling keystrokes on release """ - key = KeyboardKey(event.hardware_keycode) - if not key: + key_code = event.hardware_keycode + if not KeyboardKey.value_exist(key_code): return + key = KeyboardKey(key_code) ctrl = event.state & Gdk.ModifierType.CONTROL_MASK alt = event.state & Gdk.ModifierType.MOD1_MASK model_name, model = get_model_data(view) diff --git a/app/ui/satellites_dialog.py b/app/ui/satellites_dialog.py index 95045766..8fe4e360 100644 --- a/app/ui/satellites_dialog.py +++ b/app/ui/satellites_dialog.py @@ -113,7 +113,10 @@ class SatellitesDialog: def on_key_release(self, view, event): """ Handling keystrokes """ - key = KeyboardKey(event.hardware_keycode) + key_code = event.hardware_keycode + if not KeyboardKey.value_exist(key_code): + return + key = KeyboardKey(key_code) ctrl = event.state & Gdk.ModifierType.CONTROL_MASK if key is KeyboardKey.DELETE: diff --git a/app/ui/uicommons.py b/app/ui/uicommons.py index b3149a61..c9632a84 100644 --- a/app/ui/uicommons.py +++ b/app/ui/uicommons.py @@ -60,9 +60,8 @@ class KeyboardKey(Enum): PAGE_DOWN_KP = 89 @classmethod - def _missing_(cls, value): - """ Overridden for skip ValueError if value is not found. """ - pass + def value_exist(cls, value): + return value in (val.value for val in cls.__members__.values()) # Keys for move in lists. KEY_KP_(NAME) for laptop!!!