[gtk+: 3/4] Set user_time from startup_id if window realized
- From: Alexander Larsson <alexl src gnome org>
- To: svn-commits-list gnome org
- Subject: [gtk+: 3/4] Set user_time from startup_id if window realized
- Date: Tue, 7 Apr 2009 13:30:31 -0400 (EDT)
commit 5e0bd0c9bed0398f12a311ecd57a4bb36a1bbbf6
Author: Alexander Larsson <alexl redhat com>
Date: Tue Apr 7 15:39:00 2009 +0200
Set user_time from startup_id if window realized
For non-realized windows we set the user_time from the startup id on
realization. However, if the window is already realized when the
startup_id is not set we currently don't, but we should. (#573922)
---
gtk/gtkwindow.c | 17 ++++++++++-------
1 files changed, 10 insertions(+), 7 deletions(-)
diff --git a/gtk/gtkwindow.c b/gtk/gtkwindow.c
index 4bbd53e..1238c22 100644
--- a/gtk/gtkwindow.c
+++ b/gtk/gtkwindow.c
@@ -1500,18 +1500,21 @@ gtk_window_set_startup_id (GtkWindow *window,
g_free (priv->startup_id);
priv->startup_id = g_strdup (startup_id);
-
+
if (GTK_WIDGET_REALIZED (window))
{
+ guint32 timestamp = extract_time_from_startup_id (priv->startup_id);
+
+#ifdef GDK_WINDOWING_X11
+ if (timestamp != GDK_CURRENT_TIME)
+ gdk_x11_window_set_user_time (GTK_WIDGET (window)->window, timestamp);
+#endif
+
/* Here we differentiate real and "fake" startup notification IDs,
* constructed on purpose just to pass interaction timestamp
- */
+ */
if (startup_id_is_fake (priv->startup_id))
- {
- guint32 timestamp = extract_time_from_startup_id (priv->startup_id);
-
- gtk_window_present_with_time (window, timestamp);
- }
+ gtk_window_present_with_time (window, timestamp);
else
{
gdk_window_set_startup_id (GTK_WIDGET (window)->window,
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]