[mutter/f20] Include a fix for lingering shadows

Matthias Clasen mclasen at fedoraproject.org
Mon Dec 9 21:13:41 UTC 2013


commit dc2acad5b3d1ac5f0d1e04ce36cf6e2c8c80954c
Author: Matthias Clasen <mclasen at redhat.com>
Date:   Mon Dec 9 16:13:29 2013 -0500

    Include a fix for lingering shadows

 0001-MetaWindowGroup-fix-paint-volume.patch |   57 +++++++++++++++++++++++++++
 mutter.spec                                 |    7 +++-
 2 files changed, 63 insertions(+), 1 deletions(-)
---
diff --git a/0001-MetaWindowGroup-fix-paint-volume.patch b/0001-MetaWindowGroup-fix-paint-volume.patch
new file mode 100644
index 0000000..6aaf0f8
--- /dev/null
+++ b/0001-MetaWindowGroup-fix-paint-volume.patch
@@ -0,0 +1,57 @@
+From 01e0eaf1fce5015125a179ea3c27c200941e1b99 Mon Sep 17 00:00:00 2001
+From: "Owen W. Taylor" <otaylor at fishsoup.net>
+Date: Tue, 3 Dec 2013 00:27:03 -0500
+Subject: [PATCH] MetaWindowGroup: fix paint volume
+
+In the past, MetaWindowGroup was allocated the size of the screen and
+painted the size of the screen because it contained the screen background,
+but now we also have the "top window group" which contains only popup
+windows, so the allocation doesn't properly reflect the paint bounds
+of the window group. Compute the paint bounds accurately from the
+children.
+
+https://bugzilla.gnome.org/show_bug.cgi?id=719669
+---
+ src/compositor/meta-window-group.c | 23 +++++++++++++++++++++--
+ 1 file changed, 21 insertions(+), 2 deletions(-)
+
+diff --git a/src/compositor/meta-window-group.c b/src/compositor/meta-window-group.c
+index 64494e5..168e5da 100644
+--- a/src/compositor/meta-window-group.c
++++ b/src/compositor/meta-window-group.c
+@@ -277,11 +277,30 @@ meta_window_group_paint (ClutterActor *actor)
+     }
+ }
+ 
++/* Adapted from clutter_actor_update_default_paint_volume() */
+ static gboolean
+-meta_window_group_get_paint_volume (ClutterActor       *actor,
++meta_window_group_get_paint_volume (ClutterActor       *self,
+                                     ClutterPaintVolume *volume)
+ {
+-  return clutter_paint_volume_set_from_allocation (volume, actor);
++  ClutterActorIter iter;
++  ClutterActor *child;
++
++  clutter_actor_iter_init (&iter, self);
++  while (clutter_actor_iter_next (&iter, &child))
++    {
++      const ClutterPaintVolume *child_volume;
++
++      if (!CLUTTER_ACTOR_IS_MAPPED (child))
++        continue;
++
++      child_volume = clutter_actor_get_transformed_paint_volume (child, self);
++      if (child_volume == NULL)
++        return FALSE;
++
++      clutter_paint_volume_union (volume, child_volume);
++    }
++
++  return TRUE;
+ }
+ 
+ static void
+-- 
+1.8.4.2
+
diff --git a/mutter.spec b/mutter.spec
index b003788..7d95f42 100644
--- a/mutter.spec
+++ b/mutter.spec
@@ -1,6 +1,6 @@
 Name:          mutter
 Version:       3.10.2
-Release:       2%{?dist}
+Release:       3%{?dist}
 Summary:       Window and compositing manager based on Clutter
 
 Group:         User Interface/Desktops
@@ -10,6 +10,7 @@ URL:           http://www.gnome.org
 Source0:       http://download.gnome.org/sources/%{name}/3.10/%{name}-%{version}.tar.xz
 
 Patch1: 0001-xrandr-use-hotplug_mode_update-property.patch
+Patch2: 0001-MetaWindowGroup-fix-paint-volume.patch
 
 BuildRequires: clutter-devel >= 1.13.5
 BuildRequires: pango-devel
@@ -68,6 +69,7 @@ utilities for testing Metacity/Mutter themes.
 %setup -q
 
 %patch1 -p1 -b .hotplug-mode-update
+%patch2 -p1
 
 %build
 (if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; fi;
@@ -131,6 +133,9 @@ glib-compile-schemas %{_datadir}/glib-2.0/schemas &> /dev/null || :
 %exclude %{_datadir}/gtk-doc
 
 %changelog
+* Mon Dec  9 2013 Matthias Clasen <mclasen at redhat.com> - 3.10.2-3
+- Include a fix for lingering shadows
+ 
 * Thu Nov 14 2013 Florian Müllner <fmuellner at redhat.com> - 3.10.2-2
 - Include support for hotplug_mode_update property
 


More information about the scm-commits mailing list