keyboard shortcuts escape and backspace to return
This commit is contained in:
parent
880f7628e4
commit
b415eca1c8
@ -67,12 +67,6 @@ class ScreenPanel:
|
||||
def menu_item_clicked(self, widget, panel, item):
|
||||
self._screen.show_panel(panel, item['panel'], item['name'], 1, False)
|
||||
|
||||
def menu_return(self, widget, home=False):
|
||||
if home is False:
|
||||
self._screen._menu_go_back()
|
||||
return
|
||||
self._screen._menu_go_home()
|
||||
|
||||
def set_title(self, title):
|
||||
self.title = title
|
||||
|
||||
|
@ -32,7 +32,7 @@ class BasePanel(ScreenPanel):
|
||||
self.control['back'] = self._gtk.ButtonImage('back', scale=scale)
|
||||
self.control['back'].connect("clicked", self.back)
|
||||
self.control['home'] = self._gtk.ButtonImage('main', scale=scale)
|
||||
self.control['home'].connect("clicked", self.menu_return, True)
|
||||
self.control['home'].connect("clicked", self._screen._menu_go_home)
|
||||
|
||||
if len(self._config.get_printers()) > 1:
|
||||
self.control['printer_select'] = self._gtk.ButtonImage('shuffle', scale=scale)
|
||||
@ -203,7 +203,7 @@ class BasePanel(ScreenPanel):
|
||||
self.set_title(panel.get_title())
|
||||
self.content.add(panel.get_content())
|
||||
|
||||
def back(self, widget):
|
||||
def back(self, widget=None):
|
||||
if self.current_panel is None:
|
||||
return
|
||||
|
||||
|
@ -116,7 +116,7 @@ class ExcludeObjectPanel(ScreenPanel):
|
||||
self.object_list.remove(self.buttons[name])
|
||||
self.update_graph()
|
||||
if len(self.excluded_objects) == len(self.objects):
|
||||
self.menu_return(False)
|
||||
self._screen._menu_go_back()
|
||||
elif action == "notify_gcode_response" and "Excluding object" in data:
|
||||
self._screen.show_popup_message(data, level=1)
|
||||
self.update_graph()
|
||||
|
@ -267,7 +267,7 @@ class ZCalibratePanel(ScreenPanel):
|
||||
logging.info("Aborting calibration")
|
||||
self._screen._ws.klippy.gcode_script(KlippyGcodes.ABORT)
|
||||
self.buttons_not_calibrating()
|
||||
self.menu_return(widget)
|
||||
self._screen._menu_go_back()
|
||||
|
||||
def accept(self, widget):
|
||||
logging.info("Accepting Z position")
|
||||
|
10
screen.py
10
screen.py
@ -100,6 +100,7 @@ class KlipperScreen(Gtk.Window):
|
||||
self.lang_ltr = set_text_direction(self._config.get_main_config().get("language", None))
|
||||
|
||||
Gtk.Window.__init__(self)
|
||||
self.connect("key-press-event", self._key_press_event)
|
||||
self.set_title("KlipperScreen")
|
||||
monitor = Gdk.Display.get_default().get_primary_monitor()
|
||||
self.width = self._config.get_main_config().getint("width", monitor.get_geometry().width)
|
||||
@ -511,7 +512,7 @@ class KlipperScreen(Gtk.Window):
|
||||
self.close_popup_message()
|
||||
self._remove_current_panel()
|
||||
|
||||
def _menu_go_home(self):
|
||||
def _menu_go_home(self, widget=None):
|
||||
logging.info("#### Menu go home")
|
||||
self.remove_keyboard()
|
||||
self.close_popup_message()
|
||||
@ -957,6 +958,13 @@ class KlipperScreen(Gtk.Window):
|
||||
self.base_panel.get_content().remove(self.keyboard['box'])
|
||||
self.keyboard = None
|
||||
|
||||
def _key_press_event(self, widget, event):
|
||||
keyval_name = Gdk.keyval_name(event.keyval)
|
||||
if keyval_name == "Escape":
|
||||
self._menu_go_home()
|
||||
elif keyval_name == "BackSpace" and len(self._cur_panels) > 1:
|
||||
self.base_panel.back()
|
||||
|
||||
|
||||
def main():
|
||||
version = functions.get_software_version()
|
||||
|
Loading…
x
Reference in New Issue
Block a user