Fix native applications handling
This commit is contained in:
parent
e39232a622
commit
29bc0a8a20
@ -5,3 +5,4 @@
|
||||
<Alt>n=next
|
||||
<Alt>p=prev
|
||||
<Alt>c=close
|
||||
<Alt>f=fullscreen
|
||||
|
@ -96,14 +96,17 @@ class HomeActivity(gobject.GObject):
|
||||
|
||||
def get_title(self):
|
||||
"""Retrieve the application's root window's suggested title"""
|
||||
return self._window.get_name()
|
||||
if self._window:
|
||||
return self._window.get_name()
|
||||
else:
|
||||
return ''
|
||||
|
||||
def get_icon_name(self):
|
||||
def get_icon_path(self):
|
||||
"""Retrieve the activity's icon (file) name"""
|
||||
if self._activity_info:
|
||||
return self._activity_info.icon
|
||||
else:
|
||||
return 'image-missing'
|
||||
return None
|
||||
|
||||
def get_icon_color(self):
|
||||
"""Retrieve the appropriate icon colour for this activity
|
||||
|
@ -65,7 +65,6 @@ class ActivityIcon(CanvasIcon):
|
||||
}
|
||||
|
||||
def __init__(self, activity):
|
||||
icon_name = activity.get_icon_name()
|
||||
self._orig_color = activity.get_icon_color()
|
||||
self._icon_colors = self._compute_icon_colors()
|
||||
|
||||
@ -74,8 +73,14 @@ class ActivityIcon(CanvasIcon):
|
||||
self._level = self._level_max
|
||||
color = self._icon_colors[self._level]
|
||||
|
||||
CanvasIcon.__init__(self, file_name=icon_name, xo_color=color,
|
||||
size=style.MEDIUM_ICON_SIZE, cache=True)
|
||||
CanvasIcon.__init__(self, xo_color=color, cache=True,
|
||||
size=style.MEDIUM_ICON_SIZE)
|
||||
|
||||
icon_path = activity.get_icon_path()
|
||||
if icon_path:
|
||||
self.props.file_name = icon_path
|
||||
else:
|
||||
self.props.icon_name = 'image-missing'
|
||||
|
||||
self._activity = activity
|
||||
self._pulse_id = 0
|
||||
@ -85,9 +90,9 @@ class ActivityIcon(CanvasIcon):
|
||||
palette = Palette(_('Starting...'))
|
||||
self.set_palette(palette)
|
||||
|
||||
activity.connect('notify::launching', self._launching_changed_cb)
|
||||
if activity.props.launching:
|
||||
self._start_pulsing()
|
||||
activity.connect('notify::launching', self._launching_changed_cb)
|
||||
else:
|
||||
self._setup_palette()
|
||||
|
||||
|
@ -261,6 +261,7 @@ class Activity(Window, gtk.Container):
|
||||
|
||||
self.connect('realize', self._realize_cb)
|
||||
self.connect('delete-event', self._delete_event_cb)
|
||||
self.connect('window-state-event', self._window_state_event_cb)
|
||||
|
||||
self._active = False
|
||||
self._activity_id = handle.activity_id
|
||||
@ -344,6 +345,9 @@ class Activity(Window, gtk.Container):
|
||||
else:
|
||||
logging.debug("Unknown share scope %r" % share_scope)
|
||||
|
||||
def _window_state_event_cb(self, window, event):
|
||||
logging.info(event.new_window_state)
|
||||
|
||||
def do_set_property(self, pspec, value):
|
||||
if pspec.name == 'active':
|
||||
if self._active != value:
|
||||
|
Loading…
Reference in New Issue
Block a user