Refactor set_unset_urgency_hint()
This commit is contained in:
parent
c97fddf0f8
commit
6327679461
4 changed files with 12 additions and 18 deletions
|
@ -180,6 +180,11 @@ def get_builder(file_name: str, widgets: List[str] = None) -> Builder:
|
||||||
return Builder(file_name, widgets)
|
return Builder(file_name, widgets)
|
||||||
|
|
||||||
|
|
||||||
|
def set_urgency_hint(window: Any, setting: bool):
|
||||||
|
if app.config.get('use_urgency_hint'):
|
||||||
|
window.set_urgency_hint(setting)
|
||||||
|
|
||||||
|
|
||||||
def icon_exists(name: str) -> bool:
|
def icon_exists(name: str) -> bool:
|
||||||
return _icon_theme.has_icon(name)
|
return _icon_theme.has_icon(name)
|
||||||
|
|
||||||
|
|
|
@ -66,14 +66,6 @@ class Color:
|
||||||
ORANGE = Gdk.RGBA(red=245/255, green=121/255, blue=0/255, alpha=1)
|
ORANGE = Gdk.RGBA(red=245/255, green=121/255, blue=0/255, alpha=1)
|
||||||
|
|
||||||
|
|
||||||
def set_unset_urgency_hint(window, unread_messages_no):
|
|
||||||
"""
|
|
||||||
Sets/unset urgency hint in window argument depending if we have unread
|
|
||||||
messages or not
|
|
||||||
"""
|
|
||||||
if app.config.get('use_urgency_hint'):
|
|
||||||
window.props.urgency_hint = unread_messages_no > 0
|
|
||||||
|
|
||||||
def get_pixbuf_from_data(file_data):
|
def get_pixbuf_from_data(file_data):
|
||||||
"""
|
"""
|
||||||
Get image data and returns GdkPixbuf.Pixbuf
|
Get image data and returns GdkPixbuf.Pixbuf
|
||||||
|
|
|
@ -46,6 +46,7 @@ from gajim.gtk.util import resize_window
|
||||||
from gajim.gtk.util import move_window
|
from gajim.gtk.util import move_window
|
||||||
from gajim.gtk.util import get_app_icon_list
|
from gajim.gtk.util import get_app_icon_list
|
||||||
from gajim.gtk.util import get_builder
|
from gajim.gtk.util import get_builder
|
||||||
|
from gajim.gtk.util import set_urgency_hint
|
||||||
|
|
||||||
####################
|
####################
|
||||||
|
|
||||||
|
@ -203,7 +204,7 @@ class MessageWindow:
|
||||||
# window received focus, so if we had urgency REMOVE IT
|
# window received focus, so if we had urgency REMOVE IT
|
||||||
# NOTE: we do not have to read the message (it maybe in a bg tab)
|
# NOTE: we do not have to read the message (it maybe in a bg tab)
|
||||||
# to remove urgency hint so this functions does that
|
# to remove urgency hint so this functions does that
|
||||||
gtkgui_helpers.set_unset_urgency_hint(self.window, False)
|
set_urgency_hint(self.window, False)
|
||||||
|
|
||||||
ctrl = self.get_active_control()
|
ctrl = self.get_active_control()
|
||||||
if ctrl:
|
if ctrl:
|
||||||
|
@ -541,11 +542,7 @@ class MessageWindow:
|
||||||
title = title + ": " + control.account
|
title = title + ": " + control.account
|
||||||
|
|
||||||
self.window.set_title(unread_str + title)
|
self.window.set_title(unread_str + title)
|
||||||
|
set_urgency_hint(self.window, urgent and unread > 0)
|
||||||
if urgent:
|
|
||||||
gtkgui_helpers.set_unset_urgency_hint(self.window, unread)
|
|
||||||
else:
|
|
||||||
gtkgui_helpers.set_unset_urgency_hint(self.window, False)
|
|
||||||
|
|
||||||
def set_active_tab(self, ctrl):
|
def set_active_tab(self, ctrl):
|
||||||
ctrl_page = self.notebook.page_num(ctrl.widget)
|
ctrl_page = self.notebook.page_num(ctrl.widget)
|
||||||
|
|
|
@ -85,6 +85,7 @@ from gajim.gtk.util import resize_window
|
||||||
from gajim.gtk.util import move_window
|
from gajim.gtk.util import move_window
|
||||||
from gajim.gtk.util import get_metacontact_surface
|
from gajim.gtk.util import get_metacontact_surface
|
||||||
from gajim.gtk.util import get_builder
|
from gajim.gtk.util import get_builder
|
||||||
|
from gajim.gtk.util import set_urgency_hint
|
||||||
|
|
||||||
|
|
||||||
log = logging.getLogger('gajim.roster')
|
log = logging.getLogger('gajim.roster')
|
||||||
|
@ -3688,7 +3689,7 @@ class RosterWindow:
|
||||||
# roster received focus, so if we had urgency REMOVE IT
|
# roster received focus, so if we had urgency REMOVE IT
|
||||||
# NOTE: we do not have to read the message to remove urgency
|
# NOTE: we do not have to read the message to remove urgency
|
||||||
# so this functions does that
|
# so this functions does that
|
||||||
gtkgui_helpers.set_unset_urgency_hint(widget, False)
|
set_urgency_hint(widget, False)
|
||||||
|
|
||||||
# if a contact row is selected, update colors (eg. for status msg)
|
# if a contact row is selected, update colors (eg. for status msg)
|
||||||
# because gtk engines may differ in bg when window is selected
|
# because gtk engines may differ in bg when window is selected
|
||||||
|
@ -4626,7 +4627,7 @@ class RosterWindow:
|
||||||
if not app.interface.msg_win_mgr.one_window_opened():
|
if not app.interface.msg_win_mgr.one_window_opened():
|
||||||
# No MessageWindow to defer to
|
# No MessageWindow to defer to
|
||||||
self.window.set_title('Gajim')
|
self.window.set_title('Gajim')
|
||||||
gtkgui_helpers.set_unset_urgency_hint(self.window, nb_unread)
|
set_urgency_hint(self.window, nb_unread > 0)
|
||||||
return
|
return
|
||||||
|
|
||||||
start = ''
|
start = ''
|
||||||
|
@ -4636,8 +4637,7 @@ class RosterWindow:
|
||||||
start = '* '
|
start = '* '
|
||||||
|
|
||||||
self.window.set_title(start + 'Gajim')
|
self.window.set_title(start + 'Gajim')
|
||||||
|
set_urgency_hint(self.window, nb_unread > 0)
|
||||||
gtkgui_helpers.set_unset_urgency_hint(self.window, nb_unread)
|
|
||||||
|
|
||||||
def _nec_chatstate_received(self, event):
|
def _nec_chatstate_received(self, event):
|
||||||
if event.contact.is_gc_contact or event.contact.is_pm_contact:
|
if event.contact.is_gc_contact or event.contact.is_pm_contact:
|
||||||
|
|
Loading…
Add table
Reference in a new issue