Change tab label color when there are
This commit is contained in:
parent
a6b1307eb4
commit
d213eada76
@ -271,10 +271,15 @@ class Chat(activity.Activity):
|
|||||||
self.activity_shutdown()
|
self.activity_shutdown()
|
||||||
|
|
||||||
def activity_on_lost_focus(self):
|
def activity_on_lost_focus(self):
|
||||||
print "act %d: in activity_on_lost_focus" % self.activity_get_id()
|
activity.Activity.activity_on_lost_focus()
|
||||||
|
|
||||||
def activity_on_got_focus(self):
|
def activity_on_got_focus(self):
|
||||||
print "act %d: in activity_on_got_focus" % self.activity_get_id()
|
activity.Activity.activity_on_got_focus()
|
||||||
|
self.activity_set_has_changes(False)
|
||||||
|
|
||||||
|
def _message_inserted(self):
|
||||||
|
if not self.get_has_focus():
|
||||||
|
self.activity_set_has_changes(True)
|
||||||
|
|
||||||
def _insert_buddy(self, buf, nick):
|
def _insert_buddy(self, buf, nick):
|
||||||
buddy = self._controller.get_group().get_buddy(nick)
|
buddy = self._controller.get_group().get_buddy(nick)
|
||||||
@ -287,6 +292,8 @@ class Chat(activity.Activity):
|
|||||||
aniter = buf.get_end_iter()
|
aniter = buf.get_end_iter()
|
||||||
buf.insert(aniter, nick + ": ")
|
buf.insert(aniter, nick + ": ")
|
||||||
|
|
||||||
|
self._message_inserted()
|
||||||
|
|
||||||
def _insert_rich_message(self, nick, msg):
|
def _insert_rich_message(self, nick, msg):
|
||||||
msg = Emoticons.get_instance().replace(msg)
|
msg = Emoticons.get_instance().replace(msg)
|
||||||
|
|
||||||
@ -300,6 +307,8 @@ class Chat(activity.Activity):
|
|||||||
aniter = buf.get_end_iter()
|
aniter = buf.get_end_iter()
|
||||||
buf.insert(aniter, "\n")
|
buf.insert(aniter, "\n")
|
||||||
|
|
||||||
|
self._message_inserted()
|
||||||
|
|
||||||
def _insert_sketch(self, nick, svgdata):
|
def _insert_sketch(self, nick, svgdata):
|
||||||
"""Insert a sketch object into the chat buffer."""
|
"""Insert a sketch object into the chat buffer."""
|
||||||
pbl = gtk.gdk.PixbufLoader("svg")
|
pbl = gtk.gdk.PixbufLoader("svg")
|
||||||
|
@ -12,7 +12,10 @@ class Activity(dbus.service.Object):
|
|||||||
""" Base Sugar activity object from which all other Activities should inherit """
|
""" Base Sugar activity object from which all other Activities should inherit """
|
||||||
|
|
||||||
def __init__(self):
|
def __init__(self):
|
||||||
pass
|
self._has_focus = False
|
||||||
|
|
||||||
|
def get_has_focus(self):
|
||||||
|
return self._has_focus
|
||||||
|
|
||||||
def name_owner_changed(self, service_name, old_service_name, new_service_name):
|
def name_owner_changed(self, service_name, old_service_name, new_service_name):
|
||||||
#print "in name_owner_changed: svc=%s oldsvc=%s newsvc=%s"%(service_name, old_service_name, new_service_name)
|
#print "in name_owner_changed: svc=%s oldsvc=%s newsvc=%s"%(service_name, old_service_name, new_service_name)
|
||||||
@ -102,6 +105,13 @@ class Activity(dbus.service.Object):
|
|||||||
in_signature="", \
|
in_signature="", \
|
||||||
out_signature="")
|
out_signature="")
|
||||||
|
|
||||||
|
def activity_set_has_changes(self, has_changes):
|
||||||
|
self.__activity_object.set_has_changes(has_changes)
|
||||||
|
|
||||||
|
@dbus.service.method("com.redhat.Sugar.Activity", \
|
||||||
|
in_signature="", \
|
||||||
|
out_signature="")
|
||||||
|
|
||||||
def activity_set_tab_icon_name(self, icon_name):
|
def activity_set_tab_icon_name(self, icon_name):
|
||||||
icon_theme = gtk.icon_theme_get_default()
|
icon_theme = gtk.icon_theme_get_default()
|
||||||
icon_info = icon_theme.lookup_icon(icon_name, gtk.ICON_SIZE_MENU, 0)
|
icon_info = icon_theme.lookup_icon(icon_name, gtk.ICON_SIZE_MENU, 0)
|
||||||
@ -161,6 +171,12 @@ class Activity(dbus.service.Object):
|
|||||||
def activity_shutdown(self):
|
def activity_shutdown(self):
|
||||||
self.__activity_object.shutdown(reply_handler = self.__shutdown_reply_cb, error_handler = self.__shutdown_error_cb)
|
self.__activity_object.shutdown(reply_handler = self.__shutdown_reply_cb, error_handler = self.__shutdown_error_cb)
|
||||||
|
|
||||||
|
def activity_on_lost_focus(self):
|
||||||
|
self._has_focus = False;
|
||||||
|
|
||||||
|
def activity_on_got_focus(self):
|
||||||
|
self._has_focus = True
|
||||||
|
|
||||||
# pure virtual methods
|
# pure virtual methods
|
||||||
|
|
||||||
def activity_on_connected_to_shell(self):
|
def activity_on_connected_to_shell(self):
|
||||||
@ -171,9 +187,3 @@ class Activity(dbus.service.Object):
|
|||||||
|
|
||||||
def activity_on_close_from_user(self):
|
def activity_on_close_from_user(self):
|
||||||
print "act %d: you need to override activity_on_close_from_user" % self.activity_get_id()
|
print "act %d: you need to override activity_on_close_from_user" % self.activity_get_id()
|
||||||
|
|
||||||
def activity_on_lost_focus(self):
|
|
||||||
print "act %d: you need to override activity_on_lost_focus" % self.activity_get_id()
|
|
||||||
|
|
||||||
def activity_on_got_focus(self):
|
|
||||||
print "act %d: you need to override activity_on_got_focus" % self.activity_get_id()
|
|
||||||
|
@ -130,6 +130,18 @@ class ActivityHost(dbus.service.Object):
|
|||||||
else:
|
else:
|
||||||
self.tab_activity_image.hide()
|
self.tab_activity_image.hide()
|
||||||
|
|
||||||
|
@dbus.service.method("com.redhat.Sugar.Shell.ActivityHost", \
|
||||||
|
in_signature="b", \
|
||||||
|
out_signature="")
|
||||||
|
def set_has_changes(self, has_changes):
|
||||||
|
if has_changes:
|
||||||
|
attrs = pango.AttrList()
|
||||||
|
attrs.insert(pango.AttrForeground(65535, 0, 0, 0, -1))
|
||||||
|
attrs.insert(pango.AttrWeight(pango.WEIGHT_BOLD, 0, -1))
|
||||||
|
self.tab_label.set_attributes(attrs)
|
||||||
|
else:
|
||||||
|
self.tab_label.set_attributes(pango.AttrList())
|
||||||
|
|
||||||
@dbus.service.method("com.redhat.Sugar.Shell.ActivityHost", \
|
@dbus.service.method("com.redhat.Sugar.Shell.ActivityHost", \
|
||||||
in_signature="s", \
|
in_signature="s", \
|
||||||
out_signature="")
|
out_signature="")
|
||||||
|
Loading…
Reference in New Issue
Block a user