mirror of
https://github.com/lutris/lutris
synced 2024-10-04 23:09:27 +00:00
gui: Search on keypress
This commit is contained in:
parent
88937c2714
commit
a0c5559fb3
|
@ -53,6 +53,7 @@ class LutrisWindow(Gtk.ApplicationWindow):
|
|||
status_box = GtkTemplate.Child()
|
||||
search_revealer = GtkTemplate.Child()
|
||||
search_entry = GtkTemplate.Child()
|
||||
search_toggle = GtkTemplate.Child()
|
||||
zoom_adjustment = GtkTemplate.Child()
|
||||
no_results_overlay = GtkTemplate.Child()
|
||||
|
||||
|
@ -307,6 +308,20 @@ class LutrisWindow(Gtk.ApplicationWindow):
|
|||
return view_type
|
||||
return settings.GAME_VIEW
|
||||
|
||||
def do_key_press_event(self, event):
|
||||
# Probably not ideal for non-english, but we want to limit
|
||||
# which keys actually start searching
|
||||
if (not Gdk.KEY_0 <= event.keyval <= Gdk.KEY_z or
|
||||
event.state & Gdk.ModifierType.CONTROL_MASK or
|
||||
event.state & Gdk.ModifierType.SHIFT_MASK or
|
||||
event.state & Gdk.ModifierType.META_MASK or
|
||||
self.search_entry.has_focus()):
|
||||
return Gtk.ApplicationWindow.do_key_press_event(self, event)
|
||||
|
||||
self.search_toggle.set_active(True)
|
||||
self.search_entry.grab_focus()
|
||||
return self.search_entry.do_key_press_event(self.search_entry, event)
|
||||
|
||||
def load_icon_type_from_settings(self, view_type):
|
||||
"""Return the icon style depending on the type of view."""
|
||||
if view_type == 'list':
|
||||
|
|
|
@ -54,7 +54,7 @@
|
|||
<object class="GtkBox">
|
||||
<property name="visible">1</property>
|
||||
<child>
|
||||
<object class="GtkToggleButton">
|
||||
<object class="GtkToggleButton" id="search_toggle">
|
||||
<property name="visible">1</property>
|
||||
<property name="can-focus">1</property>
|
||||
<property name="receives-default">1</property>
|
||||
|
|
Loading…
Reference in a new issue