[gthumb/gthumb-3-4] stopping slideshow freezes entire program
- From: Paolo Bacchilega <paobac src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gthumb/gthumb-3-4] stopping slideshow freezes entire program
- Date: Sat, 26 Dec 2015 21:23:04 +0000 (UTC)
commit ba2e9faa9beeebe75c396fa3e56b0ca467e2661a
Author: Paolo Bacchilega <paobac src gnome org>
Date: Sat Dec 26 12:51:35 2015 +0100
stopping slideshow freezes entire program
destroy the window in an idle callback to let the main loop
re-enter, as stated in the gtk_clutter_embed documentation.
[bug #759787]
extensions/slideshow/gth-slideshow.c | 14 +++++++++++---
1 files changed, 11 insertions(+), 3 deletions(-)
---
diff --git a/extensions/slideshow/gth-slideshow.c b/extensions/slideshow/gth-slideshow.c
index 06f1931..8a2724e 100644
--- a/extensions/slideshow/gth-slideshow.c
+++ b/extensions/slideshow/gth-slideshow.c
@@ -92,10 +92,11 @@ struct _GthSlideshowPrivate {
static void
-_gth_slideshow_close (GthSlideshow *self)
+_gth_slideshow_close_cb (gpointer user_data)
{
- gboolean close_browser;
- GthBrowser *browser;
+ GthSlideshow *self = user_data;
+ gboolean close_browser;
+ GthBrowser *browser;
browser = self->priv->browser;
close_browser = ! gtk_widget_get_visible (GTK_WIDGET (browser));
@@ -108,6 +109,13 @@ _gth_slideshow_close (GthSlideshow *self)
}
+static void
+_gth_slideshow_close (GthSlideshow *self)
+{
+ call_when_idle (_gth_slideshow_close_cb, self);
+}
+
+
static int
shuffle_func (gconstpointer a,
gconstpointer b)
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]