diff cagou/core/cagou_widget.py @ 357:4d3a0c4f2430

core: better back key (ESC) management: - back key (which is mapped to esc keycode by SDL2 backend) is now handler with a platform specific method when on root widget (i.e. a default widget is selected, or nothing is selected). Default behaviour is to do nothing, while on Android the app is put to background - CagouWidget now has a default key_input method which go back to default widget.
author Goffi <goffi@goffi.org>
date Sat, 18 Jan 2020 23:12:52 +0100
parents 19422bbd9c8e
children 9ef01266e3fe
line wrap: on
line diff
--- a/cagou/core/cagou_widget.py	Fri Jan 17 20:35:57 2020 +0100
+++ b/cagou/core/cagou_widget.py	Sat Jan 18 23:12:52 2020 +0100
@@ -123,6 +123,12 @@
         new_widget = factory(plugin_info, None, iter(G.host.profiles))
         G.host.switchWidget(self, new_widget)
 
+    def key_input(self, window, key, scancode, codepoint, modifier):
+        if key == 27:
+            # we go back to root screen
+            G.host.switchWidget(self)
+            return True
+
     def onHeaderInput(self):
         log.info("header input text entered")