]> git.saurik.com Git - wxWidgets.git/blobdiff - src/gtk/app.cpp
Use wxGtkString here too
[wxWidgets.git] / src / gtk / app.cpp
index 753e8f07ac1eb5c4585bdf665ff3ce8fa16c02c8..286164ca96f27436a2f4fed2685452f2826aa7c6 100644 (file)
 
 #include "wx/unix/private.h"
 #include "wx/gtk/win_gtk.h"
+#include "wx/gtk/private.h"
 
 #include <gtk/gtk.h>
 
+//-----------------------------------------------------------------------------
+// link GnomeVFS
+//-----------------------------------------------------------------------------
+
+#if wxUSE_LIBGNOMEVFS
+#include "wx/html/forcelnk.h"
+FORCE_LINK(gnome_vfs)
+#endif
+
 //-----------------------------------------------------------------------------
 // global data
 //-----------------------------------------------------------------------------
@@ -90,8 +100,6 @@ static GtkWidget *gs_RootWindow = (GtkWidget*) NULL;
 // idle system
 //-----------------------------------------------------------------------------
 
-extern bool g_isIdle;
-
 void wxapp_install_idle_handler();
 
 #if wxUSE_THREADS
@@ -249,17 +257,18 @@ static gint wxapp_idle_callback( gpointer WXUNUSED(data) )
         wxTheApp->m_idleTag = 0;
     }
 
+    bool moreIdles;
+
     // Send idle event to all who request them as long as
     // no events have popped up in the event queue.
-    while (wxTheApp->ProcessIdle() && (gtk_events_pending() == 0))
+    while ( (moreIdles = wxTheApp->ProcessIdle()) && gtk_events_pending() == 0)
         ;
 
     // Release lock again
     gdk_threads_leave();
 
-    // Return FALSE to indicate that no more idle events are
-    // to be sent (single shot instead of continuous stream).
-    return FALSE;
+    // Return FALSE if no more idle events are to be sent
+    return moreIdles;
 }
 
 #if wxUSE_THREADS