After an evaluation, GNOME has moved from Bugzilla to GitLab. Learn more about GitLab.
No new issues can be reported in GNOME Bugzilla anymore.
To report an issue in a GNOME project, go to GNOME GitLab.
Do not go to GNOME Gitlab for: Bluefish, Doxygen, GnuCash, GStreamer, java-gnome, LDTP, NetworkManager, Tomboy.
Bug 347375 - Not possible to set startup notification ID on a GtkWindow
Not possible to set startup notification ID on a GtkWindow
Status: RESOLVED FIXED
Product: gtk+
Classification: Platform
Component: Widget: Other
unspecified
Other All
: Normal enhancement
: ---
Assigned To: gtk-bugs
gtk-bugs
Depends on:
Blocks: 351092
 
 
Reported: 2006-07-13 08:39 UTC by Vytas
Modified: 2007-03-13 17:09 UTC
See Also:
GNOME target: ---
GNOME version: Unversioned Enhancement


Attachments
GTK patches to add missing functions (6.89 KB, patch)
2006-07-13 09:00 UTC, Vytas
none Details | Review
GTK patches to add missing functions (6.95 KB, patch)
2006-07-13 19:58 UTC, Vytas
none Details | Review
GTK patches to add missing functions (7.56 KB, patch)
2006-08-08 11:40 UTC, Vytas
none Details | Review
GTK patches to add missing functions (8.77 KB, patch)
2006-08-09 19:40 UTC, Vytas
none Details | Review
GTK patches to add missing functions (11.54 KB, patch)
2006-08-10 22:33 UTC, Vytas
none Details | Review
updated patch for trunk (13.18 KB, patch)
2007-03-13 06:54 UTC, Emmanuele Bassi (:ebassi)
none Details | Review

Description Vytas 2006-07-13 08:39:57 UTC
In some cases, like transferring focus between multiple processes, one may want to set a startup notification id on a GTKWindow, or change one.
Comment 1 Vytas 2006-07-13 09:00:39 UTC
Created attachment 68850 [details] [review]
GTK patches to add missing functions
Comment 2 Vytas 2006-07-13 19:58:16 UTC
Created attachment 68883 [details] [review]
GTK patches to add missing functions

Fixes incorrect X property format in the previous patch
Comment 3 Vytas 2006-08-08 11:40:22 UTC
Created attachment 70477 [details] [review]
GTK patches to add missing functions

Added code to handle "fake" startup-ids in the GTK side, since it is not acceptable in metacity
Comment 4 Vytas 2006-08-09 19:40:43 UTC
Created attachment 70574 [details] [review]
GTK patches to add missing functions

Various fixes for the previous patch, including setting the _NET_WM_USER_TIME from the startup-notification identifier
Comment 5 Vytas 2006-08-10 22:33:40 UTC
Created attachment 70681 [details] [review]
GTK patches to add missing functions

More fixes... :)

User does not have to call gdk_notify_startup_complete manually now, provided startup-notification ID is passed from one application instance to another and set on window.
Comment 6 Elijah Newren 2006-09-21 21:44:31 UTC
I probably should have posted a comment earlier.  Anyway, FWIW, I read over the previous patches and pointed out to Vytas any potential issues I could see; the patch in comment 5 represents a version that has no bugs I could find.
Comment 7 Emmanuele Bassi (:ebassi) 2007-03-13 06:54:43 UTC
Created attachment 84482 [details] [review]
updated patch for trunk

patch updated for trunk, with a complete changelog.  this patch has been vetted by  elijah: should we finally commit it?
Comment 8 Emmanuele Bassi (:ebassi) 2007-03-13 17:09:31 UTC
patch applied to trunk.

2007-03-13  Emmanuele Bassi  <ebassi@gnome.org>

        Apply patch by Vytautas Liuolia for changing the startup
        notification id on a window in the X11 backend. (#347375)

        * gdk/gdk.h:
        * gdk/gdkx.h:
        * gdk/x11/gdkdisplay-x11.c: Add gdk_notify_startup_complete_wit_id()
        and gdk_x11_display_get_startup_notification_id().

        * gdk/gdkwindow.h:
        * gdk/x11/gdkwindow-x11.c: Add gdk_window_set_startup_id().

        * gtk/gtkwindow.h:
        * gtk/gtkwindow.c: Add gtk_window_set_startup_id(), used to
        change the startup notification id.

        (gtk_window_class_init), (gtk_window_init),
        (gtk_window_set_property): Add write-only "startup-id" property
        to GtkWindow.

        (gtk_window_realize): Set the startup notification id
        on a GtkWindow if it's valid.

        (gtk_window_map): If we have another valid startup notification
        id then finish the notification process.