@@ -534,8 +534,6 @@ def on_custom_filter_menu_toggled(self, item):
534534 )
535535
536536 def _cleanup_filter_menu_button (self , ui ):
537- if self .popup_deactivate_id :
538- self .popup_menu .disconnect (self .popup_deactivate_id )
539537 if self .custom_merge_id :
540538 ui .remove_ui (self .custom_merge_id )
541539 if self .filter_actiongroup in ui .get_action_groups ():
@@ -546,8 +544,6 @@ def _create_filter_menu_button(self, ui):
546544 self .custom_merge_id = ui .new_merge_id ()
547545 for x in self .filter_ui :
548546 ui .add_ui (self .custom_merge_id , * x )
549- self .popup_deactivate_id = self .popup_menu .connect (
550- "deactivate" , self .on_popup_deactivate_event )
551547 self .custom_popup = ui .get_widget ("/CustomPopup" )
552548 self .filter_menu_button = ui .get_widget (
553549 "/Toolbar/FilterActions/CustomFilterMenu" )
@@ -1221,27 +1217,13 @@ def on_treeview_row_collapsed(self, view, me, path):
12211217 self ._do_to_others (view , self .treeview , "collapse_row" , (path ,))
12221218 self ._update_diffmaps ()
12231219
1224- def on_popup_deactivate_event (self , popup ):
1225- for (treeview , inid , outid ) in zip (
1226- self .treeview , self .focus_in_events , self .focus_out_events ):
1227- treeview .handler_unblock (inid )
1228- treeview .handler_unblock (outid )
1229-
12301220 def on_treeview_focus_in_event (self , tree , event ):
12311221 self .focus_pane = tree
1232- pane = self .treeview .index (tree )
1233- self .on_treeview_selection_changed (tree .get_selection (), pane )
1222+ self .update_action_sensitivity ()
12341223 tree .emit ("cursor-changed" )
12351224
12361225 def on_treeview_focus_out_event (self , tree , event ):
1237- for action in ("DirCompare" , "DirCopyLeft" , "DirCopyRight" ,
1238- "DirDelete" , "Hide" ):
1239- self .actiongroup .get_action (action ).set_sensitive (False )
1240- try :
1241- self .main_actiongroup .get_action ("OpenExternal" ).set_sensitive (
1242- False )
1243- except AttributeError :
1244- pass
1226+ self .update_action_sensitivity ()
12451227
12461228 def run_diff_from_iter (self , it ):
12471229 row_paths = self .model .value_paths (it )
@@ -1484,13 +1466,6 @@ def format_name_override(f):
14841466 return different
14851467
14861468 def popup_in_pane (self , pane , event ):
1487- for (treeview , inid , outid ) in zip (
1488- self .treeview , self .focus_in_events , self .focus_out_events ):
1489- treeview .handler_block (inid )
1490- treeview .handler_block (outid )
1491- self .actiongroup .get_action ("DirCopyLeft" ).set_sensitive (pane > 0 )
1492- self .actiongroup .get_action ("DirCopyRight" ).set_sensitive (
1493- pane + 1 < self .num_panes )
14941469 if event :
14951470 button = event .button
14961471 time = event .time
0 commit comments