• Ryan Lortie's avatar
    GtkApplication: avoid using stale timestamps · a00a5ed2
    Ryan Lortie authored
    Avoid using a stale timestamp (from the last user interaction with the
    application) when a message arrives from D-Bus requesting that a new
    window be created.
    
    In this case the most-correct thing that we can do is to use no
    timestamp at all.
    
    We modify gdk_x11_display_set_startup_notification_id() to allow a NULL
    value to mean "reset everything" and then call this function
    unconditionally on receipt of D-Bus activation requests.  The result
    will be that a missing desktop-startup-id in the platform-data struct
    will reset the timestamp.
    
    Under their default configuration metacity and mutter will both map
    windows presented with no timestamp in the foreground.  This could
    result in false-positive, but there is very little we can do about that
    without the original timestamp from the user event.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=752000
    a00a5ed2