diff --git a/ks_includes/widgets/prompts.py b/ks_includes/widgets/prompts.py index 31751ec1..11f4ac2d 100644 --- a/ks_includes/widgets/prompts.py +++ b/ks_includes/widgets/prompts.py @@ -2,7 +2,7 @@ import logging import gi gi.require_version("Gtk", "3.0") -from gi.repository import Gtk +from gi.repository import Gtk, Gdk class Prompt: @@ -15,10 +15,14 @@ class Prompt: self.id = 1 self.prompt = None + def _key_press_event(self, widget, event): + keyval_name = Gdk.keyval_name(event.keyval) + if keyval_name == "Escape" or keyval_name == "BackSpace": + self.close() + def decode(self, data): logging.info(f'{data}') if data.startswith('prompt_begin'): - # action:prompt_begin self.header = data.replace('prompt_begin', '') if self.header: self.window_title = self.header @@ -26,14 +30,9 @@ class Prompt: self.buttons = [] return elif data.startswith('prompt_text'): - # action:prompt_text self.text = data.replace('prompt_text ', '') return elif data.startswith('prompt_button ') or data.startswith('prompt_footer_button'): - # action:prompt_button