# HG changeset patch # User Padraig O'Briain # Date 1260777628 0 # Node ID d66522ea16be13e782d7463a15902e83a4c9868f # Parent 838ff2534e0b48d14bc43a1d88dffbe437dde0df 8531 Allow a user to cancel a search in Package Manager GUI diff -r 838ff2534e0b -r d66522ea16be src/packagemanager.py --- a/src/packagemanager.py Sat Dec 12 15:42:44 2009 -0800 +++ b/src/packagemanager.py Mon Dec 14 08:00:28 2009 +0000 @@ -2200,7 +2200,7 @@ if pkgs != None: if stem in pkgs: marked = True - # When switching after Manage Repository dialog + # When switching after Manage Publisher dialog # this assignment can cause bogus refilter if pkg[enumerations.MARK_COLUMN] != marked: pkg[enumerations.MARK_COLUMN] = marked @@ -2294,6 +2294,12 @@ self.__save_active_category(path) selection.unselect_all() + def __process_after_cancel(self): + if self.is_all_publishers: + self.__setup_before_all_publishers_mode() + else: + self.__unset_search(True) + def __process_after_search_failure(self): self.__reset_search_start() self.search_time_sec = 0 @@ -2399,10 +2405,9 @@ pub_prefix, text) return except api_errors.CanceledException: - # TBD. Currently search is not cancelable - # so this should not happen, but the logic is in place - # to support cancelable search. + self.__reset_search_start() gobject.idle_add(self.unset_busy_cursor) + gobject.idle_add(self.__process_after_cancel) return except Exception, ex: # We are not interested in this error