summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorColin Walters <walters@verbum.org>2011-03-01 10:25:55 -0500
committerColin Walters <walters@verbum.org>2011-03-01 10:25:55 -0500
commitff7a1082ffb9c2072c9f8676d29b964cd7118995 (patch)
tree78fdca5f621a6e26098c91cb738cd583d0b213b9
parent80b62641a1fc3664ca2d3eedc60bfc7730485816 (diff)
downloadmetacity-ff7a1082ffb9c2072c9f8676d29b964cd7118995.tar.gz
metacity-ff7a1082ffb9c2072c9f8676d29b964cd7118995.tar.xz
metacity-ff7a1082ffb9c2072c9f8676d29b964cd7118995.zip
Upstream git snapshot
Includes Alt-` binding which we really want for gnome-shell Drop upstreamed patches Switch to my auto-autogen snippet which automatically invokes configure, so we can build from a pure git archive Instead of using autoreconf, just rm -f configure and let autogen do the work
-rw-r--r--Allow-applications-to-raise-windows-when-raise_on_cl.patch31
-rw-r--r--Allow-explicit-raises-from-same-client-not-just-sa.patch73
-rw-r--r--Dont-warn-about-a-missing-session-file.patch36
-rw-r--r--Should-set-RestartStyleHint-to-RestartIfRunning-when.patch140
-rw-r--r--libs.patch12
-rw-r--r--metacity.spec38
-rw-r--r--no-lame-dialog.patch133
-rw-r--r--title-click.patch11
8 files changed, 21 insertions, 453 deletions
diff --git a/Allow-applications-to-raise-windows-when-raise_on_cl.patch b/Allow-applications-to-raise-windows-when-raise_on_cl.patch
deleted file mode 100644
index 20d8dfa..0000000
--- a/Allow-applications-to-raise-windows-when-raise_on_cl.patch
+++ /dev/null
@@ -1,31 +0,0 @@
-From 55d4c4cc9455f348b5bc455675004a0e035ea31d Mon Sep 17 00:00:00 2001
-From: Owen W. Taylor <otaylor@fishsoup.net>
-Date: Tue, 17 Nov 2009 17:24:53 -0500
-Subject: [PATCH] Allow applications to raise windows when raise_on_click is off
-
-Whether Metacity honors a raise request from an application should
-not be affected by the raise_on_click setting; remove a check that
-seems to have been added in error.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=445447
----
- src/core/window.c | 3 +--
- 1 files changed, 1 insertions(+), 2 deletions(-)
-
-diff --git a/src/core/window.c b/src/core/window.c
-index b481ccf..db59de1 100644
---- a/src/core/window.c
-+++ b/src/core/window.c
-@@ -4716,8 +4716,7 @@ meta_window_configure_request (MetaWindow *window,
- {
- MetaWindow *active_window;
- active_window = window->display->expected_focus_window;
-- if (meta_prefs_get_disable_workarounds () ||
-- !meta_prefs_get_raise_on_click ())
-+ if (meta_prefs_get_disable_workarounds ())
- {
- meta_topic (META_DEBUG_STACK,
- "%s sent an xconfigure stacking request; this is "
---
-1.6.5.2
-
diff --git a/Allow-explicit-raises-from-same-client-not-just-sa.patch b/Allow-explicit-raises-from-same-client-not-just-sa.patch
deleted file mode 100644
index 2db720a..0000000
--- a/Allow-explicit-raises-from-same-client-not-just-sa.patch
+++ /dev/null
@@ -1,73 +0,0 @@
-From 7e116a394689718567406837740679c1f1f0d74f Mon Sep 17 00:00:00 2001
-From: Owen W. Taylor <otaylor@fishsoup.net>
-Date: Mon, 19 Oct 2009 19:41:54 -0400
-Subject: [PATCH] Allow explicit raises from same client, not just same app
-
-We currently allow XRaiseWindow when the same application (defined
-by the window group) is focused, but the kind of old applications
-that XRaiseWindow are frequently not setting the window group.
-
-Expand the check to allow the same X client (defined by the looking
-at client ID) to raise windows above the focus window.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=567528
----
- src/core/window.c | 22 ++++++++++++++++++++++
- 1 files changed, 22 insertions(+), 0 deletions(-)
-
-diff --git a/src/core/window.c b/src/core/window.c
-index 6de86ee..8d029a2 100644
---- a/src/core/window.c
-+++ b/src/core/window.c
-@@ -47,6 +47,7 @@
- #include "effects.h"
-
- #include <X11/Xatom.h>
-+#include <X11/Xlibint.h> /* For display->resource_mask */
- #include <string.h>
-
- #ifdef HAVE_SHAPE
-@@ -72,6 +73,9 @@ static gboolean process_property_notify (MetaWindow *window,
- static void meta_window_show (MetaWindow *window);
- static void meta_window_hide (MetaWindow *window);
-
-+static gboolean meta_window_same_client (MetaWindow *window,
-+ MetaWindow *other_window);
-+
- static void meta_window_save_rect (MetaWindow *window);
- static void save_user_window_placement (MetaWindow *window);
- static void force_save_user_window_placement (MetaWindow *window);
-@@ -4708,6 +4712,7 @@ meta_window_configure_request (MetaWindow *window,
- }
- else if (active_window &&
- !meta_window_same_application (window, active_window) &&
-+ !meta_window_same_client (window, active_window) &&
- XSERVER_TIME_IS_BEFORE (window->net_wm_user_time,
- active_window->net_wm_user_time))
- {
-@@ -7544,6 +7549,23 @@ meta_window_same_application (MetaWindow *window,
- group==other_group;
- }
-
-+/* Generally meta_window_same_application() is a better idea
-+ * of "sameness", since it handles the case where multiple apps
-+ * want to look like the same app or the same app wants to look
-+ * like multiple apps, but in the case of workarounds for legacy
-+ * applications (which likely aren't setting the group properly
-+ * anyways), it may be desirable to check this as well.
-+ */
-+static gboolean
-+meta_window_same_client (MetaWindow *window,
-+ MetaWindow *other_window)
-+{
-+ int resource_mask = window->display->xdisplay->resource_mask;
-+
-+ return ((window->xwindow & ~resource_mask) ==
-+ (other_window->xwindow & ~resource_mask));
-+}
-+
- void
- meta_window_refresh_resize_popup (MetaWindow *window)
- {
---
-1.6.5.rc2 \ No newline at end of file
diff --git a/Dont-warn-about-a-missing-session-file.patch b/Dont-warn-about-a-missing-session-file.patch
deleted file mode 100644
index 6173646..0000000
--- a/Dont-warn-about-a-missing-session-file.patch
+++ /dev/null
@@ -1,36 +0,0 @@
-From 3b06d1045cc990a8610bdbd5c9b83440b1b6e932 Mon Sep 17 00:00:00 2001
-From: Tomislav Vujec <tvujec@gmail.com>
-Date: Tue, 17 Nov 2009 19:42:38 -0500
-Subject: [PATCH] Don't warn about a missing session file
-
-When started without session related command line parameters (e.g. from
-gnome-session), metacity picks up client_id from the DESKTOP_AUTOSTART_ID
-environment variable. Unfortunately, there is no way to distinguish if this was
-passed from a config file, representing old saved session, or generated by
-gnome-session, therefore load_state is attempted in each case. If the client_id
-is generated, there will be no session file, and metacity will report a
-warning.
-
-Just remove the warning so that users won't always find a warning at the
-start of their .xsession-errors.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=577576
----
- src/core/session.c | 2 --
- 1 files changed, 0 insertions(+), 2 deletions(-)
-
-diff --git a/src/core/session.c b/src/core/session.c
-index 7e3b389..32fda97 100644
---- a/src/core/session.c
-+++ b/src/core/session.c
-@@ -1098,8 +1098,6 @@ load_state (const char *previous_save_file)
- {
- /* oh, just give up */
-
-- meta_warning (_("Failed to read saved session file %s: %s\n"),
-- canonical_session_file, error->message);
- g_error_free (error);
- g_free (session_file);
- g_free (canonical_session_file);
---
-1.6.5.2 \ No newline at end of file
diff --git a/Should-set-RestartStyleHint-to-RestartIfRunning-when.patch b/Should-set-RestartStyleHint-to-RestartIfRunning-when.patch
deleted file mode 100644
index c674d13..0000000
--- a/Should-set-RestartStyleHint-to-RestartIfRunning-when.patch
+++ /dev/null
@@ -1,140 +0,0 @@
-From a3de65d5d1861f755ced7cad291fbbd4f1b8ef51 Mon Sep 17 00:00:00 2001
-From: Owen W. Taylor <otaylor@fishsoup.net>
-Date: Sat, 22 Aug 2009 15:00:57 -0400
-Subject: [PATCH] Should set RestartStyleHint to RestartIfRunning when replaced
-
-This reverts most of commit abbd057eb967e6ab462ffe305f41b2b04d417b25;
-
- - It's fine to call meta_session_shutdown() after the display
- is closed, since it's talking over the ICE connection
- - We should not call warn_about_lame_clients_and_finish_interact()
- unless we are interacting with the window manager in a session
- save.
-
-However, the part of abbd057 that fixed accessing freed memory was
-fixing a real problem; this patches does the same thing in a simpler
-way by fixing an obvious type in meta_display_close() where it was
-NULL'ing out the local variable 'display' rather than the global
-variable 'the_display' and adding keeping the check in meta_finalize()
-that was added in abbd057.
-
-The order of calling meta_session_shutdown() and
-calling meta_display_close() is reverted back to the old order to
-make it clear that it's OK if the display way already closed previously.
-
-http://bugzilla.gnome.org/show_bug.cgi?id=588119
----
- src/core/display-private.h | 2 +-
- src/core/display.c | 16 ++++------------
- src/core/main.c | 5 ++---
- src/core/session.c | 8 --------
- 4 files changed, 7 insertions(+), 24 deletions(-)
-
-diff --git a/src/core/display-private.h b/src/core/display-private.h
-index 19287f3..9c8ebc6 100644
---- a/src/core/display-private.h
-+++ b/src/core/display-private.h
-@@ -329,7 +329,7 @@ MetaScreen* meta_display_screen_for_xwindow (MetaDisplay *display,
- void meta_display_grab (MetaDisplay *display);
- void meta_display_ungrab (MetaDisplay *display);
-
--void meta_display_unmanage_screen (MetaDisplay **display,
-+void meta_display_unmanage_screen (MetaDisplay *display,
- MetaScreen *screen,
- guint32 timestamp);
-
-diff --git a/src/core/display.c b/src/core/display.c
-index 55c374a..8e35a35 100644
---- a/src/core/display.c
-+++ b/src/core/display.c
-@@ -926,7 +926,7 @@ meta_display_close (MetaDisplay *display,
- meta_compositor_destroy (display->compositor);
-
- g_free (display);
-- display = NULL;
-+ the_display = NULL;
-
- meta_quit (META_EXIT_SUCCESS);
- }
-@@ -4762,13 +4762,10 @@ process_selection_clear (MetaDisplay *display,
- meta_verbose ("Got selection clear for screen %d on display %s\n",
- screen->number, display->name);
-
-- meta_display_unmanage_screen (&display,
-+ meta_display_unmanage_screen (display,
- screen,
- event->xselectionclear.time);
-
-- if (!display)
-- the_display = NULL;
--
- /* display and screen may both be invalid memory... */
-
- return;
-@@ -4790,12 +4787,10 @@ process_selection_clear (MetaDisplay *display,
- }
-
- void
--meta_display_unmanage_screen (MetaDisplay **displayp,
-+meta_display_unmanage_screen (MetaDisplay *display,
- MetaScreen *screen,
- guint32 timestamp)
- {
-- MetaDisplay *display = *displayp;
--
- meta_verbose ("Unmanaging screen %d on display %s\n",
- screen->number, display->name);
-
-@@ -4805,10 +4800,7 @@ meta_display_unmanage_screen (MetaDisplay **displayp,
- display->screens = g_slist_remove (display->screens, screen);
-
- if (display->screens == NULL)
-- {
-- meta_display_close (display, timestamp);
-- *displayp = NULL;
-- }
-+ meta_display_close (display, timestamp);
- }
-
- void
-diff --git a/src/core/main.c b/src/core/main.c
-index a36a396..44d317e 100644
---- a/src/core/main.c
-+++ b/src/core/main.c
-@@ -361,12 +361,11 @@ static void
- meta_finalize (void)
- {
- MetaDisplay *display = meta_get_display();
--
-- meta_session_shutdown ();
--
- if (display)
- meta_display_close (display,
- CurrentTime); /* I doubt correct timestamps matter here */
-+
-+ meta_session_shutdown ();
- }
-
- static void
-diff --git a/src/core/session.c b/src/core/session.c
-index 7e3b389..0d69350 100644
---- a/src/core/session.c
-+++ b/src/core/session.c
-@@ -376,14 +376,6 @@ meta_session_shutdown (void)
- SmProp *props[1];
- char hint = SmRestartIfRunning;
-
-- if (!meta_get_display ())
-- {
-- meta_verbose ("Cannot close session because there is no display");
-- return;
-- }
--
-- warn_about_lame_clients_and_finish_interact (FALSE);
--
- if (session_connection == NULL)
- return;
-
---
-1.6.4
-
diff --git a/libs.patch b/libs.patch
deleted file mode 100644
index d39a64f..0000000
--- a/libs.patch
+++ /dev/null
@@ -1,12 +0,0 @@
-diff -up metacity-2.28.1/src/tools/Makefile.am.libs metacity-2.28.1/src/tools/Makefile.am
---- metacity-2.28.1/src/tools/Makefile.am.libs 2010-02-26 23:00:43.446410930 -0500
-+++ metacity-2.28.1/src/tools/Makefile.am 2010-02-26 23:00:55.805414773 -0500
-@@ -26,7 +26,7 @@ noinst_PROGRAMS=metacity-mag metacity-gr
-
- metacity_message_LDADD= @METACITY_MESSAGE_LIBS@
- metacity_window_demo_LDADD= @METACITY_WINDOW_DEMO_LIBS@
--metacity_mag_LDADD= @METACITY_WINDOW_DEMO_LIBS@
-+metacity_mag_LDADD= @METACITY_WINDOW_DEMO_LIBS@ -lm
- metacity_grayscale_LDADD = @METACITY_WINDOW_DEMO_LIBS@
-
- EXTRA_DIST=$(icon_DATA)
diff --git a/metacity.spec b/metacity.spec
index 3c66f88..3a56ded 100644
--- a/metacity.spec
+++ b/metacity.spec
@@ -2,16 +2,17 @@
Summary: Unobtrusive window manager
Name: metacity
-Version: 2.30.3
-Release: 5%{?dist}
+Version: 2.32.0
+Release: 1.git20110228%{?dist}
URL: http://download.gnome.org/sources/metacity/
-Source0: http://download.gnome.org/sources/metacity/2.30/metacity-%{version}.tar.bz2
+# Current metacity "tarball" was generated with
+# git archive --format=tar --prefix=metacity-2.32.0-git20110228/ HEAD | bzip2
+Source0: metacity-2.32-git20110228.tar.bz2
+#Source0: http://download.gnome.org/sources/metacity/2.30/metacity-%{version}.tar.bz2
# http://bugzilla.gnome.org/show_bug.cgi?id=558723
Patch4: stop-spamming-xsession-errors.patch
# http://bugzilla.gnome.org/show_bug.cgi?id=135056
Patch5: dnd-keynav.patch
-# http://bugzilla.gnome.org/show_bug.cgi?id=588119
-Patch6: Should-set-RestartStyleHint-to-RestartIfRunning-when.patch
# http://bugzilla.gnome.org/show_bug.cgi?id=336750
Patch10: screenshot-forkbomb.patch
@@ -19,10 +20,6 @@ Patch10: screenshot-forkbomb.patch
Patch11: workspaces.patch
Patch12: fresh-tooltips.patch
-# https://bugzilla.gnome.org/show_bug.cgi?id=567528
-Patch14: Allow-explicit-raises-from-same-client-not-just-sa.patch
-# https://bugzilla.gnome.org/show_bug.cgi?id=445447
-Patch15: Allow-applications-to-raise-windows-when-raise_on_cl.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=598995
Patch16: Dont-focus-ancestor-window-on-a-different-workspac.patch
# https://bugzilla.gnome.org/show_bug.cgi?id=599097
@@ -102,16 +99,13 @@ programs using the metacity-private library, since it is a private
API. This package exists purely for technical reasons.
%prep
-%setup -q
+%setup -q -n metacity-2.32.0-git20110228
%patch4 -p1 -b .stop-spamming-xsession-errors
%patch5 -p1 -b .dnd-keynav
-%patch6 -p1 -b .restart-if-running
%patch10 -p1 -b .screenshot-forkbomb
%patch11 -p1 -b .workspaces
%patch12 -p1 -b .fresh-tooltips
-%patch14 -p1 -b .raises-from-same-client
-%patch15 -p1 -b .raise-on-click-stacking
%patch16 -p1 -b .focus-different-workspace
%patch18 -p1 -b .focus-on-motion
%patch19 -p1 -b .no-focus-windows
@@ -127,15 +121,16 @@ API. This package exists purely for technical reasons.
cp -p %{SOURCE1} %{SOURCE2} src/
# force regeneration
-rm src/metacity.schemas
-
-autoreconf -i -f
+rm -f src/metacity.schemas
%build
CPPFLAGS="$CPPFLAGS -I$RPM_BUILD_ROOT%{_includedir}"
export CPPFLAGS
-%configure --disable-static
+# Always rerun configure for now
+rm -f configure
+(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; fi;
+ %configure --disable-static)
SHOULD_HAVE_DEFINED="HAVE_SM HAVE_XINERAMA HAVE_XFREE_XINERAMA HAVE_SHAPE HAVE_RANDR HAVE_STARTUP_NOTIFICATION"
@@ -217,6 +212,15 @@ find $RPM_BUILD_ROOT -name '*.la' -exec rm -f {} ';'
%{_mandir}/man1/metacity-window-demo.1.gz
%changelog
+* Mon Feb 28 2011 Colin Walters <walters@verbum.org> - 2.32.0-1.git20110228
+- Upstream git snapshot
+ Includes Alt-` binding which we really want for gnome-shell
+- Drop upstreamed patches
+- Switch to my auto-autogen snippet which automatically invokes configure,
+ so we can build from a pure git archive
+- Instead of using autoreconf, just rm -f configure and let autogen do
+ the work
+
* Tue Feb 08 2011 Fedora Release Engineering <rel-eng@lists.fedoraproject.org> - 2.30.3-5
- Rebuilt for https://fedoraproject.org/wiki/Fedora_15_Mass_Rebuild
diff --git a/no-lame-dialog.patch b/no-lame-dialog.patch
deleted file mode 100644
index fbba206..0000000
--- a/no-lame-dialog.patch
+++ /dev/null
@@ -1,133 +0,0 @@
---- metacity-2.27.0/src/core/session.c 2009-02-20 10:26:32.000000000 -0500
-+++ hacked/src/core/session.c 2009-06-07 23:46:25.927041281 -0400
-@@ -82,7 +82,7 @@
- static char* load_state (const char *previous_save_file);
- static void regenerate_save_file (void);
- static const char* full_save_file (void);
--static void warn_about_lame_clients_and_finish_interact (gboolean shutdown);
-+static void finish_interact (gboolean shutdown);
-
- /* This is called when data is available on an ICE connection. */
- static gboolean
-@@ -382,7 +382,7 @@
- return;
- }
-
-- warn_about_lame_clients_and_finish_interact (FALSE);
-+ finish_interact (FALSE);
-
- if (session_connection == NULL)
- return;
-@@ -584,7 +584,7 @@
-
- current_state = STATE_DONE_WITH_INTERACT;
-
-- warn_about_lame_clients_and_finish_interact (shutdown);
-+ finish_interact (shutdown);
- }
-
- static void
-@@ -1724,13 +1724,6 @@
- return full_save_path;
- }
-
--static int
--windows_cmp_by_title (MetaWindow *a,
-- MetaWindow *b)
--{
-- return g_utf8_collate (a->title, b->title);
--}
--
- static void
- finish_interact (gboolean shutdown)
- {
-@@ -1742,89 +1735,4 @@
- }
- }
-
--static void
--sigchld_handler (MetaNexus *nexus, guint arg1, gpointer arg2, gpointer user_data)
--{
-- gboolean shutdown = GPOINTER_TO_INT (user_data);
--
-- if (arg1 == 0) /* pressed "OK" */
-- {
-- finish_interact (shutdown);
-- }
--}
--
--static void
--warn_about_lame_clients_and_finish_interact (gboolean shutdown)
--{
-- GSList *lame = NULL;
-- GSList *windows;
-- GSList *lame_details = NULL;
-- GSList *tmp;
-- GSList *columns = NULL;
--
-- windows = meta_display_list_windows (meta_get_display ());
-- tmp = windows;
-- while (tmp != NULL)
-- {
-- MetaWindow *window;
--
-- window = tmp->data;
--
-- /* only complain about normal windows, the others
-- * are kind of dumb to worry about
-- */
-- if (window->sm_client_id == NULL &&
-- window->type == META_WINDOW_NORMAL)
-- lame = g_slist_prepend (lame, window);
--
-- tmp = tmp->next;
-- }
--
-- g_slist_free (windows);
--
-- if (lame == NULL)
-- {
-- /* No lame apps. */
-- finish_interact (shutdown);
-- return;
-- }
--
-- columns = g_slist_prepend (columns, "Window");
-- columns = g_slist_prepend (columns, "Class");
--
-- lame = g_slist_sort (lame, (GCompareFunc) windows_cmp_by_title);
--
-- tmp = lame;
-- while (tmp != NULL)
-- {
-- MetaWindow *w = tmp->data;
--
-- lame_details = g_slist_prepend (lame_details,
-- w->res_class ? w->res_class : "");
-- lame_details = g_slist_prepend (lame_details,
-- w->title);
--
-- tmp = tmp->next;
-- }
-- g_slist_free (lame);
--
-- meta_show_dialog("--list",
-- _("These windows do not support &quot;save current setup&quot; "
-- "and will have to be restarted manually next time "
-- "you log in."),
-- "240",
-- meta_screen_get_screen_number (meta_get_display()->active_screen),
-- NULL, NULL,
-- None,
-- columns,
-- lame_details);
--
-- g_slist_free (lame_details);
--
-- g_signal_connect (sigchld_nexus, "sigchld",
-- G_CALLBACK (sigchld_handler),
-- GINT_TO_POINTER (shutdown));
--
--}
--
- #endif /* HAVE_SM */
diff --git a/title-click.patch b/title-click.patch
deleted file mode 100644
index 9c42aa4..0000000
--- a/title-click.patch
+++ /dev/null
@@ -1,11 +0,0 @@
---- metacity-2.30.0/src/core/core.c.orig 2010-03-31 21:37:39.000000000 +0100
-+++ metacity-2.30.0/src/core/core.c 2010-04-01 15:59:26.000000000 +0100
-@@ -520,7 +520,7 @@ meta_core_get_menu_accelerator (MetaMenu
- switch (menu_op)
- {
- case META_MENU_OP_NONE:
-- name = "none";
-+ /* No keybinding for this one */
- break;
- case META_MENU_OP_DELETE:
- name = "close";