|
|
|
@ -241,7 +241,7 @@ class Interface(object):
|
|
|
|
|
main_window.add(box) |
|
|
|
|
main_window.add_accel_group(accelerators) |
|
|
|
|
|
|
|
|
|
self._update_tab_count() |
|
|
|
|
self._message_count_updated() |
|
|
|
|
|
|
|
|
|
return main_window |
|
|
|
|
|
|
|
|
@ -671,11 +671,19 @@ class Interface(object):
|
|
|
|
|
|
|
|
|
|
return True |
|
|
|
|
|
|
|
|
|
def _update_tab_count(self): |
|
|
|
|
"""Update the message count in the message tab.""" |
|
|
|
|
def _message_count_updated(self): |
|
|
|
|
"""Update the elements in the interface that should change in case of |
|
|
|
|
changes in the message count.""" |
|
|
|
|
child = self._main_tabs.get_nth_page(0) |
|
|
|
|
self._main_tabs.set_tab_label_text(child, 'Messages (%d)' % |
|
|
|
|
(self._new_message_count)) |
|
|
|
|
|
|
|
|
|
if self._statusicon: |
|
|
|
|
if self._new_message_count == 0: |
|
|
|
|
self._statusicon.set_from_pixbuf(self._images['main']) |
|
|
|
|
else: |
|
|
|
|
self._statusicon.set_from_pixbuf(self._images['new-messages']) |
|
|
|
|
|
|
|
|
|
return |
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------ |
|
|
|
@ -811,9 +819,7 @@ class Interface(object):
|
|
|
|
|
"""Clear the list of posts from the grid.""" |
|
|
|
|
self._grid.get_model().clear() |
|
|
|
|
self._new_message_count = 0 |
|
|
|
|
self._update_tab_count() |
|
|
|
|
if self._statusicon: |
|
|
|
|
self._statusicon.set_from_pixbuf(self._images['main']) |
|
|
|
|
self._message_count_updated() |
|
|
|
|
return |
|
|
|
|
|
|
|
|
|
def _delete_message(self, widget, user_data=None): |
|
|
|
@ -982,11 +988,7 @@ class Interface(object):
|
|
|
|
|
|
|
|
|
|
message.read = True |
|
|
|
|
self._new_message_count -= 1 |
|
|
|
|
self._update_tab_count() |
|
|
|
|
|
|
|
|
|
if self._new_message_count == 0 and self._statusicon: |
|
|
|
|
self._statusicon.set_from_pixbuf(self._images['main']) |
|
|
|
|
|
|
|
|
|
self._message_count_updated() |
|
|
|
|
return True |
|
|
|
|
|
|
|
|
|
# ------------------------------------------------------------ |
|
|
|
@ -1025,10 +1027,7 @@ class Interface(object):
|
|
|
|
|
self._refresh, None) |
|
|
|
|
|
|
|
|
|
self._new_message_count += len(results) |
|
|
|
|
self._update_tab_count() |
|
|
|
|
if self._new_message_count > 0 and self._statusicon: |
|
|
|
|
self._statusicon.set_from_pixbuf(self._images['new-messages']) |
|
|
|
|
|
|
|
|
|
self._message_count_updated() |
|
|
|
|
return |
|
|
|
|
|
|
|
|
|
def _exception_get_messages(self, widget, exception): |
|
|
|
@ -1185,14 +1184,15 @@ class Interface(object):
|
|
|
|
|
"""Call function; displays the interface. This method should appear on |
|
|
|
|
every interface.""" |
|
|
|
|
|
|
|
|
|
self._main_window = self._create_main_window() |
|
|
|
|
self._main_window.show_all() |
|
|
|
|
|
|
|
|
|
if self._options[self.NAMESPACE]['statusicon']: |
|
|
|
|
self._statusicon = gtk.StatusIcon() |
|
|
|
|
self._statusicon.set_from_pixbuf(self._images['main']) |
|
|
|
|
else: |
|
|
|
|
self._statusicon = None |
|
|
|
|
|
|
|
|
|
self._main_window = self._create_main_window() |
|
|
|
|
self._main_window.show_all() |
|
|
|
|
|
|
|
|
|
self._threads = _ThreadManager() |
|
|
|
|
|
|
|
|
|
# queue the first fetch |
|
|
|
|