Yes, the launch window works with this standard SPLASHSCREEN. Great work. 2012/8/23 Simon Schampijer <si...@schampijer.de>: > From: Simon Schampijer <si...@laptop.org> > > Currently we have issues with introspecting gdk_property_get and we already > have a wrapper around gdk_property_change [1]. We discussed reimplementing > the toolkit wm module in C, and provide the following functions: > > get_activity_id > get_bundle_id > set_activity_id > set_bundle_id > > To prepare for this move we want to remove our own _SUGAR_WINDOW_TYPE > hint and replace it with the standard SPLASHSCREEN one [2][3], which is > done in this patch. > > [1] http://wiki.sugarlabs.org/go/Features/GTK3/Shell#gdk_property_change > [2] > http://www.pygtk.org/docs/pygtk/gdk-constants.html#gdk-window-type-hint-constants > [3] http://standards.freedesktop.org/wm-spec/wm-spec-1.3.html > > Signed-off-by: Simon Schampijer <si...@laptop.org>
Acked-by: Manuel Quiñones <ma...@laptop.org> > --- > src/jarabe/model/shell.py | 8 +++++--- > src/jarabe/view/launcher.py | 4 +--- > 2 files changed, 6 insertions(+), 6 deletions(-) > > diff --git a/src/jarabe/model/shell.py b/src/jarabe/model/shell.py > index 31605f7..1f3ee8d 100644 > --- a/src/jarabe/model/shell.py > +++ b/src/jarabe/model/shell.py > @@ -521,7 +521,8 @@ class ShellModel(gobject.GObject): > them. > > """ > - if window.get_window_type() == wnck.WINDOW_NORMAL: > + if window.get_window_type() == wnck.WINDOW_NORMAL or \ > + window.get_window_type() == wnck.WINDOW_SPLASHSCREEN: > home_activity = None > > activity_id = wm.get_activity_id(window) > @@ -552,7 +553,7 @@ class ShellModel(gobject.GObject): > logging.debug('window registered for %s', activity_id) > home_activity.add_window(window) > > - if wm.get_sugar_window_type(window) != 'launcher' \ > + if window.get_window_type() != wnck.WINDOW_SPLASHSCREEN \ > and home_activity.get_launch_status() == > Activity.LAUNCHING: > self.emit('launch-completed', home_activity) > startup_time = time.time() - home_activity.get_launch_time() > @@ -563,7 +564,8 @@ class ShellModel(gobject.GObject): > self._set_active_activity(home_activity) > > def _window_closed_cb(self, screen, window): > - if window.get_window_type() == wnck.WINDOW_NORMAL: > + if window.get_window_type() == wnck.WINDOW_NORMAL or \ > + window.get_window_type() == wnck.WINDOW_SPLASHSCREEN: > xid = window.get_xid() > activity = self._get_activity_by_xid(xid) > if activity is not None: > diff --git a/src/jarabe/view/launcher.py b/src/jarabe/view/launcher.py > index 5c645c4..e9f81d7 100644 > --- a/src/jarabe/view/launcher.py > +++ b/src/jarabe/view/launcher.py > @@ -32,7 +32,7 @@ class LaunchWindow(gtk.Window): > def __init__(self, activity_id, icon_path, icon_color): > gobject.GObject.__init__(self) > > - self.props.type_hint = gtk.gdk.WINDOW_TYPE_HINT_NORMAL > + self.props.type_hint = gtk.gdk.WINDOW_TYPE_HINT_SPLASHSCREEN > self.props.decorated = False > self.modify_bg(gtk.STATE_NORMAL, style.COLOR_WHITE.get_gdk_color()) > > @@ -94,8 +94,6 @@ class LaunchWindow(gtk.Window): > > def __realize_cb(self, widget): > wm.set_activity_id(widget.window, str(self._activity_id)) > - widget.window.property_change('_SUGAR_WINDOW_TYPE', 'STRING', 8, > - gtk.gdk.PROP_MODE_REPLACE, 'launcher') > > def __size_changed_cb(self, screen): > self._update_size() > -- > 1.7.11.4 > > _______________________________________________ > Sugar-devel mailing list > Sugar-devel@lists.sugarlabs.org > http://lists.sugarlabs.org/listinfo/sugar-devel -- .. manuq .. _______________________________________________ Sugar-devel mailing list Sugar-devel@lists.sugarlabs.org http://lists.sugarlabs.org/listinfo/sugar-devel