rpms/metacity/devel metacity-struts.patch, NONE, 1.1 metacity.spec, 1.186, 1.187

Matthias Clasen mclasen at fedoraproject.org
Thu Mar 12 02:56:02 UTC 2009


Author: mclasen

Update of /cvs/pkgs/rpms/metacity/devel
In directory cvs1.fedora.phx.redhat.com:/tmp/cvs-serv379

Modified Files:
	metacity.spec 
Added Files:
	metacity-struts.patch 
Log Message:
fix autohide panel interaction


metacity-struts.patch:

--- NEW FILE metacity-struts.patch ---
--- trunk/src/core/window-props.c	2009/03/11 14:21:33	4190
+++ trunk/src/core/window-props.c	2009/03/12 01:09:41	4191
@@ -73,12 +73,6 @@
   ReloadValueFunc   reload_func;
 } MetaWindowPropHooks;
 
-static void init_prop_value            (MetaDisplay   *display,
-                                        Atom           property,
-                                        MetaPropValue *value);
-static void reload_prop_value          (MetaWindow    *window,
-                                        MetaPropValue *value,
-                                        gboolean       initial);
 static MetaWindowPropHooks* find_hooks (MetaDisplay *display,
                                         Atom         property);
 
@@ -128,23 +122,34 @@
   g_return_if_fail (n_properties > 0);
   
   values = g_new0 (MetaPropValue, n_properties);
-  
-  i = 0;
-  while (i < n_properties)
+
+  for (i=0; i<n_properties; i++)
     {
-      init_prop_value (window->display, properties[i], &values[i]);
-      ++i;
+      MetaWindowPropHooks *hooks = find_hooks (window->display,
+                                               properties[i]);
+    
+      if (!hooks || hooks->type == META_PROP_VALUE_INVALID)
+        {
+          values[i].type = META_PROP_VALUE_INVALID;
+          values[i].atom = None;
+        }
+      else
+        {
+          values[i].type = hooks->type;
+          values[i].atom = properties[i];
+        }
     }
   
   meta_prop_get_values (window->display, xwindow,
                         values, n_properties);
 
-  i = 0;
-  while (i < n_properties)
+  for (i=0; i<n_properties; i++)
     {
-      reload_prop_value (window, &values[i], initial);
-      
-      ++i;
+      MetaWindowPropHooks *hooks = find_hooks (window->display,
+                                               properties[i]);
+
+      if (hooks && hooks->reload_func != NULL)
+        (* hooks->reload_func) (window, &values[i], initial);
     }
 
   meta_prop_free_values (values, n_properties);
@@ -152,37 +157,6 @@
   g_free (values);
 }
 
-/* Fill in the MetaPropValue used to get the value of "property" */
-static void
-init_prop_value (MetaDisplay   *display,
-                 Atom           property,
-                 MetaPropValue *value)
-{
-  MetaWindowPropHooks *hooks = find_hooks (display, property);
-    
-  if (!hooks || hooks->type == META_PROP_VALUE_INVALID)
-    {
-      value->type = META_PROP_VALUE_INVALID;
-      value->atom = None;
-    }
-  else
-    {
-      value->type = hooks->type;
-      value->atom = property;
-    }
-}
-
-static void
-reload_prop_value (MetaWindow    *window,
-                   MetaPropValue *value,
-                   gboolean       initial)
-{
-  MetaWindowPropHooks *hooks = find_hooks (window->display, value->atom);
-
-  if (hooks && hooks->reload_func != NULL)
-    (* hooks->reload_func) (window, value, initial);
-}
-
 static void
 reload_wm_client_machine (MetaWindow    *window,
                           MetaPropValue *value,
@@ -1566,6 +1540,9 @@
   display->prop_hooks_table = NULL;
 }
 
+/**
+ * Finds the hooks for a particular property.
+ */
 static MetaWindowPropHooks*
 find_hooks (MetaDisplay *display,
             Atom         property)



Index: metacity.spec
===================================================================
RCS file: /cvs/pkgs/rpms/metacity/devel/metacity.spec,v
retrieving revision 1.186
retrieving revision 1.187
diff -u -r1.186 -r1.187
--- metacity.spec	26 Feb 2009 00:27:10 -0000	1.186
+++ metacity.spec	12 Mar 2009 02:55:30 -0000	1.187
@@ -1,7 +1,7 @@
 Summary: Unobtrusive window manager
 Name: metacity
 Version: 2.25.144
-Release: 5%{?dist}
+Release: 6%{?dist}
 URL: http://download.gnome.org/sources/metacity/
 Source0: http://download.gnome.org/sources/metacity/2.25/metacity-%{version}.tar.bz2
 Patch0: default-theme.patch
@@ -11,6 +11,8 @@
 Patch5: metacity-canberra.patch
 # fixed upstream
 Patch6: metacity-dont-force-bell.patch
+# fixed upstream
+Patch7: metacity-struts.patch
 
 License: GPLv2+
 Group: User Interface/Desktops
@@ -51,8 +53,8 @@
 Requires(preun): GConf2 >= 2.14
 
 %description
-Metacity is a window manager that integrates nicely with the GNOME desktop. 
-It strives to be quiet, small, stable, get on with its job, and stay out of 
+Metacity is a window manager that integrates nicely with the GNOME desktop.
+It strives to be quiet, small, stable, get on with its job, and stay out of
 your attention.
 
 %package devel
@@ -69,11 +71,12 @@
 API. This package exists purely for technical reasons.
 
 %prep
-%setup -q 
+%setup -q
 %patch0 -p1 -b .default-theme
 %patch4 -p1 -b .stop-spamming-xsession-errors
 %patch5 -p1 -b .canberra
 %patch6 -p1 -b .dont-force-bell
+%patch7 -p1 -b .struts
 
 autoreconf -i -f
 
@@ -179,6 +182,9 @@
 %{_mandir}/man1/metacity-window-demo.1.gz
 
 %changelog
+* Wed Mar 11 2009 Matthias Clasen  <mclasen at redhat.com> - 2.25.144-6
+- Fix interaction with autohide panels
+
 * Wed Feb 25 2009 Fedora Release Engineering <rel-eng at lists.fedoraproject.org> - 2.25.144-5
 - Rebuilt for https://fedoraproject.org/wiki/Fedora_11_Mass_Rebuild
 




More information about the fedora-extras-commits mailing list