[mutter] MetaBackground: invalidate contents on video memory purged errors



commit 53993ba4d2ccd2f2b6c1de5bd741ca5fa392f34d
Author: Rui Matos <tiagomatos gmail com>
Date:   Sun May 29 19:58:25 2016 +0200

    MetaBackground: invalidate contents on video memory purged errors
    
    We use FBOs so we need to cause them to be recreated.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=739178

 src/compositor/meta-background.c |   13 +++++++++++++
 1 files changed, 13 insertions(+), 0 deletions(-)
---
diff --git a/src/compositor/meta-background.c b/src/compositor/meta-background.c
index 36317ef..0c8aefa 100644
--- a/src/compositor/meta-background.c
+++ b/src/compositor/meta-background.c
@@ -318,6 +318,18 @@ meta_background_finalize (GObject *object)
 }
 
 static void
+meta_background_constructed (GObject *object)
+{
+  MetaBackground        *self = META_BACKGROUND (object);
+  MetaBackgroundPrivate *priv = self->priv;
+
+  G_OBJECT_CLASS (meta_background_parent_class)->constructed (object);
+
+  g_signal_connect_object (meta_screen_get_display (priv->screen), "gl-video-memory-purged",
+                           G_CALLBACK (mark_changed), object, G_CONNECT_SWAPPED);
+}
+
+static void
 meta_background_class_init (MetaBackgroundClass *klass)
 {
   GObjectClass *object_class = G_OBJECT_CLASS (klass);
@@ -327,6 +339,7 @@ meta_background_class_init (MetaBackgroundClass *klass)
 
   object_class->dispose = meta_background_dispose;
   object_class->finalize = meta_background_finalize;
+  object_class->constructed = meta_background_constructed;
   object_class->set_property = meta_background_set_property;
   object_class->get_property = meta_background_get_property;
 


[Date Prev][Date Next]   [Thread Prev][Thread Next]   [Thread Index] [Date Index] [Author Index]