[clutter-gtk] gtk-clutter-embed: don't use queue redraw on gtk+'s draw()
- From: Lionel Landwerlin <llandwerlin src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [clutter-gtk] gtk-clutter-embed: don't use queue redraw on gtk+'s draw()
- Date: Mon, 18 Aug 2014 22:54:05 +0000 (UTC)
commit 4ef73b72ac15505914a24f15ded842737b954dfc
Author: Lionel Landwerlin <llandwerlin gmail com>
Date: Sun Aug 17 21:31:28 2014 +0100
gtk-clutter-embed: don't use queue redraw on gtk+'s draw()
Calling clutter_actor_queue_redraw() triggers an asynchronous redraw
cycle, which triggers the callback from gtk-clutter-embed on the
'queue-redraw' signal, thus triggering another GTK+ paint cycle.
This ends up in a infinite draw loop.
This patch uses the clutter_stage_ensure_redraw() methods, which
prevents the 'queue-redraw' signal emission (this is exactly what we
want).
https://bugzilla.gnome.org/show_bug.cgi?id=734906
clutter-gtk/gtk-clutter-embed.c | 2 +-
1 files changed, 1 insertions(+), 1 deletions(-)
---
diff --git a/clutter-gtk/gtk-clutter-embed.c b/clutter-gtk/gtk-clutter-embed.c
index 0ff2f5e..56b7840 100644
--- a/clutter-gtk/gtk-clutter-embed.c
+++ b/clutter-gtk/gtk-clutter-embed.c
@@ -272,7 +272,7 @@ gtk_clutter_embed_draw (GtkWidget *widget, cairo_t *cr)
GtkClutterEmbedPrivate *priv = GTK_CLUTTER_EMBED (widget)->priv;
if (clutter_check_windowing_backend (CLUTTER_WINDOWING_GDK))
- clutter_actor_queue_redraw (priv->stage);
+ clutter_stage_ensure_redraw (CLUTTER_STAGE (priv->stage));
#endif
return GTK_WIDGET_CLASS (gtk_clutter_embed_parent_class)->draw (widget, cr);
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]