However for startup notification to work, for compatibility reasons,
the upstream .desktop file must have StartupNotify=true. It's come to
my attention that a lot of .desktop files are missing this, even
though they use GTK+. I've written a quick script which heuristically
examines installed apps (attached); if someone writes the script which
checks the whole repository, that'd be cool.
If you maintain a desktop app, please check for StartupNotify=true,
and if your app uses GTK+ or Qt, then please submit a patch *upstream*
to add it, and at your option apply that patch in Fedora.
Here's sample output from the script on my workstation, which shows a
vast swath of system-config-* missing it; others of these are false
positives since they're not user-visible apps.
Desktop app maintainers: Please check for StartupNotify=true
On Sun, 14 Mar 2010 15:37:24 -0400, Colin wrote:
> However for startup notification to work, for compatibility reasons,
> the upstream .desktop file must have StartupNotify=true. It's come to
> my attention that a lot of .desktop files are missing this, even
> though they use GTK+.
Hmmm, I'm certain we've had this in the guidelines (or in the Wiki or in
the old QA Checklist) several years ago, including help on how to
determine the StartupWMClass= name if necessary.
Currently can only find:
https://fedoraproject.org/wiki/Packaging:Guidelines#Desktop_files
| Installed .desktop files MUST follow the desktop-entry-spec , paying
| particular attention to validating correct usage of Name, GenericName,
| Categories , StartupNotify entries.
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-14-2010, 08:40 PM
Ville Skytt
Desktop app maintainers: Please check for StartupNotify=true
On Sunday 14 March 2010, Colin Walters wrote:
> If you maintain a desktop app, please check for StartupNotify=true,
> and if your app uses GTK+ or Qt, then please submit a patch *upstream*
> to add it, and at your option apply that patch in Fedora.
If an app uses GTK+ or Qt, does that alone always imply that it satisfies the
desktop entry spec's requirements for StartupNotify=true, i.e. no further
examination of the app's behavior is necessary?
"If true, it is KNOWN that the application will send a "remove" message when
started with the DESKTOP_STARTUP_ID environment variable set."
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-14-2010, 09:35 PM
Victor Vasilyev
Desktop app maintainers: Please check for StartupNotify=true
Michael Schwendt wrote:
> On Sun, 14 Mar 2010 15:37:24 -0400, Colin wrote:
>
> Currently can only find:
> https://fedoraproject.org/wiki/Packaging:Guidelines#Desktop_files
>
> | Installed .desktop files MUST follow the desktop-entry-spec , paying
> | particular attention to validating correct usage of Name, GenericName,
> | Categories , StartupNotify entries.
>
Explanation for the StartupNotify entry usage in the desktop-entry-spec
[1] that is linked in the guidelines. Also, there are important details
in the Startup Notification Protocol Specification [2].
FYI When the StartupNotify=true was specified in the desktop file of the
NetBeans I've seen bugs in launching of the NetBeans' child processes
(e.g FireFox [3]) due to the DESKTOP_STARTUP_ID environment variable. It
was fixed in the NetBeans launcher by a patch [4] according to
recommendations of the Startup Notification Protocol Specification.
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-14-2010, 11:59 PM
Colin Walters
Desktop app maintainers: Please check for StartupNotify=true
On Sun, Mar 14, 2010 at 6:35 PM, Victor Vasilyev
<Victor.Vasilyev@sun.com> wrote:
>
> FYI When the StartupNotify=true was specified in the desktop file of the
> NetBeans I've seen bugs in launching of the NetBeans' child processes
> (e.g FireFox [3]) due to the DESKTOP_STARTUP_ID environment variable. It
> was fixed in the NetBeans launcher by a patch [4] according to
> recommendations of the Startup Notification Protocol Specification.
Swing needs to clear the environment variable. See:
http://git.gnome.org/browse/gtk+/tree/gdk/x11/gdkdisplay-x11.c#n1015
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-15-2010, 01:33 PM
Colin Walters
Desktop app maintainers: Please check for StartupNotify=true
On Sun, Mar 14, 2010 at 5:40 PM, Ville Skytt <ville.skytta@iki.fi> wrote:
>
> If an app uses GTK+ or Qt, does that alone always imply that it satisfies the
> desktop entry spec's requirements for StartupNotify=true, i.e. no further
> examination of the app's behavior is necessary?
The main tricky situation comes when the app implements
single-instance behavior internally, and does some sort of IPC (dbus,
whatever) to talk to an existing instance. In GNOME 3 this doesn't
matter as much because we do single-instance by default, but otherwise
it's definitely possible to get the stale "Starting foo..." until it
times out. Actually handling this correctly is tricky[1], and I just
noticed one of my apps doesn't. Maybe I should really take the plunge
and backport app tracking to GNOME 2 which would obviate this.
But as a general rule: add it. Even for the IPC case, it only occurs
if the user tries to relaunch an existing app, which (albeit without
data, but with some educated background) is unusual. Without IPC,
having it has a 99.9% chance of being correct.
[1] libunique handles this, but see also my fix for my app here:
http://git.gnome.org/browse/hotssh/commit/?id=57c43b39413c5128983286f5c09cbaba6b397103
We have plans to basically make all this work out of the box when
using GTK+ but it blocks on gdbus.
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-15-2010, 01:44 PM
"Chen Lei"
Desktop app maintainers: Please check for StartupNotify=true
Should we also add* StartupWMClass=someting if StartupNotify=true doesn't work?
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-15-2010, 02:07 PM
Colin Walters
Desktop app maintainers: Please check for StartupNotify=true
On Mon, Mar 15, 2010 at 10:44 AM, Chen Lei <supercyper@163.com> wrote:
> Should we also add* StartupWMClass=someting if StartupNotify=true doesn't
> work?
You're going to need to elaborate on "doesn't work".
* You don't see a "Starting..." notification in the tasklist in GNOME 2?
* You do, but it times out instead of disappearing when the app window comes up?
* Something else?
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-15-2010, 02:14 PM
Mary Ellen Foster
Desktop app maintainers: Please check for StartupNotify=true
On 15 March 2010 15:07, Colin Walters <walters@verbum.org> wrote:
> On Mon, Mar 15, 2010 at 10:44 AM, Chen Lei <supercyper@163.com> wrote:
>> Should we also add* StartupWMClass=someting if StartupNotify=true doesn't
>> work?
>
> You're going to need to elaborate on "doesn't work".
>
> * You don't see a "Starting..." notification in the tasklist in GNOME 2?
> * You do, but it times out instead of disappearing when the app window comes up?
> * Something else?
Well, for Firefox at least, it's option 2 and has been for a while (at
least under KDE):
https://bugzilla.redhat.com/show_bug.cgi?id=445543
,
MEF
--
Mary Ellen Foster -- http://www.macs.hw.ac.uk/~mef3/
Interaction Lab -- http://www.macs.hw.ac.uk/InteractionLab
School of Mathematical and Computer Sciences, Heriot-Watt University
Heriot-Watt University is a Scottish charity registered under charity
number SC000278
--
devel mailing list
devel@lists.fedoraproject.org
https://admin.fedoraproject.org/mailman/listinfo/devel
03-15-2010, 03:27 PM
Rajeesh K Nambiar
Desktop app maintainers: Please check for StartupNotify=true
On Mon, Mar 15, 2010 at 1:07 AM, Colin Walters <walters@verbum.org> wrote:
> Hi,
>
> For GNOME 3 to more reliably do application tracking, we will be
> associating through startup-notification. *Some background here:
>
> http://lists.freedesktop.org/archives/xdg/2010-February/011321.html
>
> However for startup notification to work, for compatibility reasons,
> the upstream .desktop file must have StartupNotify=true. *It's come to
> my attention that a lot of .desktop files are missing this, even
> though they use GTK+. *I've written a quick script which heuristically
> examines installed apps (attached); if someone writes the script which
> checks the whole repository, that'd be cool.
>
> If you maintain a desktop app, please check for StartupNotify=true,
> and if your app uses GTK+ or Qt, then please submit a patch *upstream*
> to add it, and at your option apply that patch in Fedora.
>
> Here's sample output from the script on my workstation, which shows a
> vast swath of system-config-* missing it; others of these are false
> positives since they're not user-visible apps.
Upstream just accepted the patch for Meiga :
http://git.igalia.com/cgi-bin/gitweb.cgi?p=meiga.git;a=commitdiff;h=5359f57e2b7d 269d860cc4af55b39e07c3b08b5f