Merge lp:~kiwinote/software-center/bug439613bug530194 into lp:software-center

Proposed by Kiwinote
Status: Merged
Merge reported by: Michael Vogt
Merged at revision: not available
Proposed branch: lp:~kiwinote/software-center/bug439613bug530194
Merge into: lp:software-center
Diff against target: 61 lines (+26/-16)
1 file modified
softwarecenter/app.py (+26/-16)
To merge this branch: bzr merge lp:~kiwinote/software-center/bug439613bug530194
Reviewer Review Type Date Requested Status
Michael Vogt Approve
Review via email: mp+22138@code.launchpad.net

Commit message

* softwarecenter/view/app.py:
  - Set correct sensitivity of 'edit > undo,redo,cut,copy,delete,select_all' (LP: #439613, LP: #530194)

To post a comment you must log in.
Revision history for this message
Michael Vogt (mvo) wrote :

Thanks, that looks good (and sorry for the late review :/) ! I did a small change in the merge, please let me know if is correct or if the test on the bounds[0] != bounds[1] is needed for some corner case (I couldn't find one).

Revision history for this message
Michael Vogt (mvo) :
review: Approve
Revision history for this message
Kiwinote (kiwinote) wrote :

I had a look and it should indeed be fine to leave out the "bounds[0] != bounds[1]" as you have done in trunk. Thanks.

Preview Diff

[H/L] Next/Prev Comment, [J/K] Next/Prev File, [N/P] Next/Prev Hunk
1=== modified file 'softwarecenter/app.py'
2--- softwarecenter/app.py 2010-03-24 20:51:15 +0000
3+++ softwarecenter/app.py 2010-03-25 15:03:29 +0000
4@@ -233,7 +233,6 @@
5
6 def on_app_selected(self, widget, app):
7 self.update_app_status_menu()
8- self.menuitem_copy.set_sensitive(True)
9
10 def on_window_main_delete_event(self, widget, event):
11 self.save_state()
12@@ -299,23 +298,34 @@
13 """
14 Check whether the search field is focused and if so, focus some items
15 """
16- if self.active_pane:
17- state = self.active_pane.searchentry.is_focus()
18- if self.active_pane.searchentry.flags() & gtk.VISIBLE:
19- self.menuitem_search.set_sensitive(not state)
20- else:
21- self.menuitem_search.set_sensitive(False)
22- else:
23- state = False
24- edit_menu_items = [self.menuitem_undo,
25- self.menuitem_redo,
26+ edit_menu_items = [self.menuitem_undo,
27+ self.menuitem_redo,
28 self.menuitem_cut,
29- self.menuitem_copy,
30- self.menuitem_paste,
31- self.menuitem_delete,
32- self.menuitem_select_all]
33+ self.menuitem_copy,
34+ self.menuitem_paste,
35+ self.menuitem_delete,
36+ self.menuitem_select_all,
37+ self.menuitem_search]
38 for item in edit_menu_items:
39- item.set_sensitive(state)
40+ item.set_sensitive(False)
41+ if self.active_pane.searchentry.flags() & gtk.VISIBLE:
42+ # undo, redo, cut, copy, paste, delete, select_all sensitive iff searchentry is focused (and other more specific conditions)
43+ if self.active_pane.searchentry.is_focus():
44+ if len(self.active_pane.searchentry._undo_stack) > 1:
45+ self.menuitem_undo.set_sensitive(True)
46+ if len(self.active_pane.searchentry._redo_stack) > 0:
47+ self.menuitem_redo.set_sensitive(True)
48+ if len(self.active_pane.searchentry.get_selection_bounds()) != 0:
49+ if self.active_pane.searchentry.get_selection_bounds()[0] != self.active_pane.searchentry.get_selection_bounds()[1]:
50+ self.menuitem_cut.set_sensitive(True)
51+ self.menuitem_copy.set_sensitive(True)
52+ self.menuitem_paste.set_sensitive(True)
53+ if len(self.active_pane.searchentry.get_text()) != 0:
54+ self.menuitem_delete.set_sensitive(True)
55+ self.menuitem_select_all.set_sensitive(True)
56+ # search sensitive iff searchentry is not focused
57+ else:
58+ self.menuitem_search.set_sensitive(True)
59
60 def on_menuitem_undo_activate(self, menuitem):
61 self.active_pane.searchentry.undo()

Subscribers

People subscribed via source and target branches