diff --git a/src/controller/buffers/mastodon/users.py b/src/controller/buffers/mastodon/users.py index 8ba4f4f5..97e48a6f 100644 --- a/src/controller/buffers/mastodon/users.py +++ b/src/controller/buffers/mastodon/users.py @@ -9,8 +9,9 @@ from controller.buffers.mastodon.base import BaseBuffer from controller.mastodon import messages from sessions.mastodon import templates, utils from wxUI import buffers, commonMessageDialogs +from pubsub import pub -log = logging.getLogger("controller.buffers.mastodon.conversations") +log = logging.getLogger("controller.buffers.mastodon.users") class UserBuffer(BaseBuffer): @@ -86,6 +87,12 @@ class UserBuffer(BaseBuffer): return number_of_items = self.session.order_buffer(self.name, results) log.debug("Number of items retrieved: %d" % (number_of_items,)) + if self.name.endswith("-searchUser") and number_of_items == 0: + # No search result found, alert user and destroy buffer + log.debug("Destroying buffer %s, account %s and type %s" % (self.name, self.account, self.type)) + output.speak(_(u"Your search didn't match any results.")) + pub.sendMessage("destroy_buffer", buffer_name=self.name, + session_name=self.account) if hasattr(self, "finished_timeline") and self.finished_timeline == False: if "-followers" in self.name or "-following" in self.name: self.username = self.session.api.account(id=self.kwargs.get("id")).username @@ -199,4 +206,4 @@ class UserBuffer(BaseBuffer): return False else: output.speak(_(u"This buffer is not a timeline; it can't be deleted."), True) - return False \ No newline at end of file + return False diff --git a/src/controller/mainController.py b/src/controller/mainController.py index 843c9b4d..cebbb4d2 100644 --- a/src/controller/mainController.py +++ b/src/controller/mainController.py @@ -110,6 +110,7 @@ class Controller(object): pub.subscribe(self.toggle_share_settings, "toggleShare") pub.subscribe(self.invisible_shorcuts_changed, "invisible-shorcuts-changed") pub.subscribe(self.create_account_buffer, "core.create_account") + pub.subscribe(self.destroy_buffer, "destroy_buffer") # Twitter specific events. pub.subscribe(self.buffer_title_changed, "buffer-title-changed") @@ -1265,4 +1266,4 @@ class Controller(object): # if number_of_items > 0: # sound_to_play = "dm_received.ogg" # if "direct_messages" not in buffer.session.settings["other_buffers"]["muted_buffers"]: -# self.notify(buffer.session, sound_to_play) \ No newline at end of file +# self.notify(buffer.session, sound_to_play)