<div dir="ltr">Hello,<br><br>I spent some time trying to nail down the concrete changes we will need to properly support standard desktop applications in Sugar 0.84. Here are some notes. It's *not* a huge amount of work and I think we should really do it.<br>
<br> <br>1 sugar.graphics.icon needs support for pixbufs #8661.<br><br>2 jarabe.model.shell should use a SnMonitor instead of dbus to listen for startup notifications.<br><br>3 sugar.activity.activityfactory should use SnLauncher to notify startup instead of a dbus call to shell. I don't think it's worth to use GdkAppLaunchContext yet. It's just a tiny layer over libsn and it would introduce a strong dependency on gtk 2.14/glib 2.18. Furthermore we will need to interface directly with libsn for the Monitor anyway.<br>
<br>4 jarabe.model.shell.Activity should provide the icon as a pixbuf instead of a path (or maybe additionally).<br><br>5 sugar.graphics.icon shoud be able to xo-color pixbufs. We can specify two conventional colors (+ transparency) and replace them with the xo colors (only when there are not other colors in the pixbuf.<br>
<br>6 jarabe.model.shell.Activity should provide his icon on the base of WM_ICON and SnMonitor::icon_name.<br><br>7 The activity_id X property on the activity window should be completely optional, unless the activity supports collaboration.<br>
<br>8 sugar.activity should set WM_ICON instead of the bundle_id X property.<br><br>9 jarabe.* should not use the bundle_id X property.<br><br>10 jarabe.desktop.activitieslist and jarabe.desktop.favorites view should additionally look into /usr/share/applications/*.desktop. We might want to use gio + GdkAppLaunchContext here and degrade gracefully on systems with gtk < 2.14.<br>
<br>11 replace matchbox with a more traditional desktop window manager, with the ability to fullscreen windows when appropriate.<br><br><br>Sayamindu provided a patch for 1 which I'm going to review asap. I should be able to work on 2 - 9 but I'd really appreciate help with some of these (Sayamindu?). I'd like someone else to take care of 10 - 11 (Scott? Sayamindu?).<br>
<br>Marco<br></div>