20
20
self._view.receive_focus(time)
22
22
def on_quit(self, *args):
23
self._view.get_toplevel().hide()
23
window = self._view.get_toplevel()
24
x, y = window.get_position()
25
self._model.set_window_x(x)
26
self._model.set_window_y(y)
26
30
def on_show_about(self, sender):
27
31
show_about(self._view.get_toplevel())
29
33
def on_toggle_history(self, sender):
30
val = not self._view.is_history_visible()
34
val = self._view.is_history_visible()
31
35
self._model.set_show_history( val )
32
self._view.show_history( val )
34
37
def on_show_preferences(self, sender):
35
38
prefs = DeskbarPreferences(self._model)
36
39
prefs.show_run_hide(self._view.get_toplevel())
38
41
def on_query_entry_changed(self, entry):
39
self._view.treeview_model.clear()
42
self._view.clear_results()
43
self._view.clear_actions()
40
44
self._model.stop_queries()
41
45
# TODO: abort previous searches
42
46
qstring = entry.get_text().strip()
43
47
if (qstring != ""):
48
self._view.show_results()
44
49
self._model.query( qstring )
46
self._view.treeview_model.clear()
51
self._view.clear_all()
48
53
def on_query_entry_key_press_event(self, entry, event):
49
# TODO: discard still running query threads
50
if (event.keyval == gtk.keysyms.Escape):
51
self._view.clear_all()
54
54
# For key UP to browse in history, we have either to be already in history mode, or have an empty text entry to trigger hist. mode
55
55
up_history_condition = self._model.get_history().get_current() != None or (self._model.get_history().get_current() == None and entry.get_text() == "")
56
56
# For key DOWN to browse history, we have to be already in history mode. Down cannot trigger history mode in that orient.
98
98
# This emits a match-selected from the cview
99
99
self._view.cview.emit ("row-activated", path, column)
101
def on_treeview_cursor_changed(self, treeview):
102
self._view.update_entry_icon ()
101
104
def on_match_selected(self, treeview, text, match_obj, event):
102
105
if len(match_obj.get_actions()) == 1:
103
106
action = match_obj.get_actions()[0]
106
109
self._view.display_actions(match_obj.get_actions(), text)
108
111
raise Exception("Match has no action")
113
def on_do_default_action(self, treeview, text, match_obj, event):
114
action = match_obj.get_default_action()
116
action = match_obj.get_actions()[0]
117
self.on_action_selected(treeview, text, action, event)
110
119
def on_action_selected(self, treeview, text, action, event):
111
120
self._model.get_history().add(text, action)
113
121
action.activate(text)
122
if self._model.get_clear_entry():
123
self._view.get_entry().set_text("")
114
124
if self._model.get_hide_after_action():
117
127
def on_clear_history(self, sender):
118
128
self._model.get_history().clear()
137
147
def on_category_added (self, widget, cat, path):
138
148
if cat.get_id() not in self._model.get_collapsed_cat():
139
self._view.cview.expand_row (path, False)
141
def on_window_resized(self, window, event):
142
self._model.set_window_width( window.allocation.width )
143
self._model.set_window_height( window.allocation.height )
145
def on_sidebar_width_changed(self, sidebar, value):
146
self._model.set_sidebar_width( sidebar.get_position() )
148
def on_resultsview_width_changed(self, results_hpaned, value):
149
self._model.set_resultsview_width( results_hpaned.get_position() )
b'\\ No newline at end of file'
149
self._view.cview.expand_row (path, False)
b'\\ No newline at end of file'