Sophie

Sophie

distrib > Fedora > 16 > i386 > by-pkgid > a3ec1501ec8ccb3c9efa91d8d8fdc59c > files > 1

xfce4-notifyd-0.2.2-6.fc16.src.rpm

From 8b34ed09d43bbf8daf4e1c71466212d614109ac0 Mon Sep 17 00:00:00 2001
From: Nick Schermer <nick@xfce.org>
Date: Fri, 26 Aug 2011 19:15:31 +0000
Subject: Avoid flickering of the window.

Realize (and thus position) the window before actually showing it.

From c032013769ee860309d3d8821bbea4ed284e45b0 Mon Sep 17 00:00:00 2001
From: Nick Schermer <nick@xfce.org>
Date: Thu, 08 Sep 2011 15:11:27 +0000
Subject: Fix mistake in commit 8b34ed09.

The idle kept running, causing 100% cpu usage.
---
diff --git a/xfce4-notifyd/xfce-notify-daemon.c b/xfce4-notifyd/xfce-notify-daemon.c
index 227d7c0..44eb24b 100644
--- a/xfce4-notifyd/xfce-notify-daemon.c
+++ b/xfce4-notifyd/xfce-notify-daemon.c
@@ -866,6 +866,13 @@ notify_get_capabilities(XfceNotifyDaemon *xndaemon,
 }
 
 static gboolean
+notify_show_window(gpointer window)
+{
+  gtk_widget_show(GTK_WIDGET(window));
+  return FALSE;
+}
+
+static gboolean
 notify_notify(XfceNotifyDaemon *xndaemon,
               const gchar *app_name,
               guint replaces_id,
@@ -929,7 +936,8 @@ notify_notify(XfceNotifyDaemon *xndaemon,
                          G_CALLBACK(xfce_notify_daemon_window_size_allocate),
                          xndaemon);
 
-        gtk_widget_show(GTK_WIDGET(window));
+        gtk_widget_realize(GTK_WIDGET(window));
+        g_idle_add(notify_show_window, window);
     }
 
     if(!app_icon || !*app_icon) {
--
cgit v0.9.0.3