mutter (3.28.2-2) unstable; urgency=medium
authorSimon McVittie <smcv@debian.org>
Sun, 20 May 2018 14:21:35 +0000 (15:21 +0100)
committerSimon McVittie <smcv@debian.org>
Sun, 20 May 2018 14:21:35 +0000 (15:21 +0100)
  * Team upload
  * d/p/frames-Handle-touch-events.patch,
    d/p/frames-Make-1st-button-motion-handlers-take-generic-event.patch:
    Drop cherry-picked patches that caused a regression (Closes: #899181)

[dgit import unpatched mutter 3.28.2-2]

31 files changed:
1  2 
debian/README.Debian
debian/changelog
debian/compat
debian/control
debian/control.in
debian/copyright
debian/gbp.conf
debian/gir1.2-mutter-2.install
debian/libmutter-2-0.install
debian/libmutter-2-dev.install
debian/mutter-common.install
debian/mutter.install
debian/mutter.postinst
debian/mutter.prerm
debian/patches/backends-Add-logical-monitor-monitor-output-crtc-ref-chai.patch
debian/patches/backends-Move-MetaOutput-crtc-field-into-private-struct.patch
debian/patches/bgo768531_workaround-startup-notifications.patch
debian/patches/clutter-Smooth-out-master-clock-to-smooth-visuals.patch
debian/patches/clutter-evdev-Don-t-ignore-CAPS-lock-as-modifier.patch
debian/patches/clutter-evdev-ignore-injected-events-from-IM.patch
debian/patches/core-Return-1-if-meta_window_get_monitor-is-called-on-an-.patch
debian/patches/debian/skip-failing-tests-325.patch
debian/patches/debian/skip-failing-tests.patch
debian/patches/debian/synaptics-support.patch
debian/patches/series
debian/patches/theme-load-icons-as-Gtk-does-with-fallback-and-RTL-suppor.patch
debian/patches/theme-use-gtk_render_icon_suface-to-paint-button-icon.patch
debian/patches/wayland-Use-cursor-position-in-logical-monitor.patch
debian/rules
debian/source/format
debian/watch

index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..169b50e3c42a6567c3d68ab0fda9a534e6fed677
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,17 @@@
++Mutter Compositor
++===================
++
++Mutter includes a compositor based on Clutter. Mutter by default adds
++very simple effects using the compositor, such as a drop-shadow. The
++compositor may be used by plugins to add more effects. GNOME Shell is
++an example of one such plugin.
++
++The compositor can be enabled on the fly by setting the gconf key
++/apps/mutter/general/compositing_manager to true by using
++gconf-editor or gconftool-2.
++
++Before enabling the compositor, you need to make sure your X server
++configuration has the composite extension, as well as DRI loaded and
++enabled.
++
++ -- Gustavo Noronha Silva <kov@debian.org>, Sun, 26 Jul 2009 13:14:57 +0200
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..8477e0af52aede1e7eeacc38b7111ba36ec8e47d
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,2465 @@@
++mutter (3.28.2-2) unstable; urgency=medium
++
++  * Team upload
++  * d/p/frames-Handle-touch-events.patch,
++    d/p/frames-Make-1st-button-motion-handlers-take-generic-event.patch:
++    Drop cherry-picked patches that caused a regression (Closes: #899181)
++
++ -- Simon McVittie <smcv@debian.org>  Sun, 20 May 2018 15:21:35 +0100
++
++mutter (3.28.2-1) unstable; urgency=medium
++
++  * Team upload
++  * New upstream release
++  * d/p/theme-frames-Use-surface-device-scale-instead-of-cairo_sc.patch,
++    d/p/xwayland-Don-t-abort-if-Xwayland-crashes.patch,
++    d/p/xwayland-use-g_autoptr-for-GError-in-xserver_died.patch:
++    Drop patches that were applied upstream
++  * d/p/debian/synaptics-support.patch,
++    d/p/debian/skip-failing-tests.patch,
++    d/p/debian/skip-failing-tests-325.patch:
++    Move patches not expected to be applied upstream to
++    debian/patches/debian
++  * Re-order patch series so most-upstreamable patches are first
++  * d/p/clutter-evdev-Don-t-ignore-CAPS-lock-as-modifier.patch,
++    d/p/clutter-evdev-ignore-injected-events-from-IM.patch,
++    d/p/frames-Handle-touch-events.patch,
++    d/p/frames-Make-1st-button-motion-handlers-take-generic-event.patch,
++    d/p/wayland-Use-cursor-position-in-logical-monitor.patch:
++    Add post-release fixes from upstream 3.28 branch
++
++ -- Simon McVittie <smcv@debian.org>  Thu, 17 May 2018 10:37:25 +0100
++
++mutter (3.28.1-2) unstable; urgency=medium
++
++  * Add xwayland-use-g_autoptr-for-GError-in-xserver_died.patch,
++    xwayland-Don-t-abort-if-Xwayland-crashes.patch:
++    - Cherry picked from upstream, to reduce noise of mutter on crashes
++      which are actually caused by XWayland (LP: #1748450)
++
++ -- Marco Trevisan (Treviño) <marco@ubuntu.com>  Mon, 23 Apr 2018 10:46:57 -0500
++
++mutter (3.28.1-1) unstable; urgency=medium
++
++  [ Jeremy Bicha ]
++  * New upstream release
++    - Fix window button spacing when display is scaled (LP: #1725133)
++  * Bump Standards-Version to 4.1.4
++
++  [ Marco Trevisan (Treviño) ]
++  * Add patches proposed upstream:
++  * theme-frames-Use-surface-device-scale-instead-of-cairo_sc.patch:
++    - theme, frames: Use surface device scale instead of cairo_scale
++      (LP: #1764554)
++  * theme-use-gtk_render_icon_suface-to-paint-button-icon.patch:
++    - theme: use gtk_render_icon_suface to paint button icon
++      (LP: #1764558)
++  * theme-load-icons-as-Gtk-does-with-fallback-and-RTL-suppor.patch:
++    - theme: load icons as Gtk does with fallback and RTL support
++  * clutter-Smooth-out-master-clock-to-smooth-visuals.patch:
++    - clutter: Smooth out master clock to smooth visuals
++  * core-Return-1-if-meta_window_get_monitor-is-called-on-an-.patch:
++    - core: Return -1 if meta_window_get_monitor is called on an
++      unmanaged window (LP: #1724439)
++  * backends-Move-MetaOutput-crtc-field-into-private-struct.patch:
++    - backends: Move MetaOutput::crtc field into private struct
++      (LP: #1703668)
++  * backends-Add-logical-monitor-monitor-output-crtc-ref-chai.patch:
++    - backends: Add logical monitor -> monitor -> output -> crtc ref
++      chain (LP: #1703668)
++
++ -- Jeremy Bicha <jbicha@debian.org>  Mon, 16 Apr 2018 22:35:14 -0400
++
++mutter (3.28.0-2) unstable; urgency=medium
++
++  [ Simon McVittie ]
++  * Update Vcs-* for migration from Alioth svn to salsa.debian.org git
++  * debian/gbp.conf: Add
++  * Refresh patch series with gbp pq
++
++  [ Daniel van Vugt ]
++  * Add synaptics-support.patch
++    - Allow touchpad settings to work with xserver-xorg-input-synaptics.
++      Note that this is unneeded on GNOME on Wayland where libinput is
++      always used. (LP: #1686081)
++
++  [ Jeremy Bicha ]
++  * Bump debhelper compat to 11
++
++ -- Jeremy Bicha <jbicha@debian.org>  Sun, 18 Mar 2018 20:11:29 -0400
++
++mutter (3.28.0-1) unstable; urgency=high
++
++  * New upstream release
++    - Fix crashes when launching apps from apps in GNOME on Wayland
++      (LP: #1754169)
++  * Bump urgency for this targeted fix
++
++ -- Jeremy Bicha <jbicha@debian.org>  Mon, 12 Mar 2018 18:04:54 -0400
++
++mutter (3.27.92-2) unstable; urgency=medium
++
++  [ Simon McVittie ]
++  * Build-depend on libgnome-desktop-3-dev (>= 3.27.90) to carry out
++    libgnome-desktop-3-17 transition
++
++  [ Jeremy Bicha ]
++  * Release to unstable
++
++ -- Jeremy Bicha <jbicha@debian.org>  Sat, 10 Mar 2018 19:34:02 -0500
++
++mutter (3.27.92-1) experimental; urgency=medium
++
++  * New upstream release candidate (LP: #1752123, LP: #1718238)
++  * Bump minimum wayland-protocols to 1.12
++  * Drop bump-api.patch: Applied in new release
++
++ -- Jeremy Bicha <jbicha@debian.org>  Mon, 05 Mar 2018 20:38:24 -0500
++
++mutter (3.27.91-1) experimental; urgency=medium
++
++  * New upstream development release (LP: #1751070)
++  * Bump minimum libgbm-dev to 17.1 and libdrm-dev to 2.4.83
++  * Build-Depend on libcogl-dev (needed for build but shouldn't be…)
++  * Cherry-pick bump-api.patch
++  * Update package names for soname bump
++
++ -- Jeremy Bicha <jbicha@debian.org>  Thu, 22 Feb 2018 08:54:47 -0500
++
++mutter (3.26.2-1) unstable; urgency=medium
++
++  [ Jeremy Bicha ]
++  * New upstream release
++  * Drop all cherry-picked patches, applied in new release
++
++  [ Simon McVittie ]
++  * d/changelog: Retroactively add a reference from 3.26.1-2 to #878353
++  * d/p/*.patch: Add metadata to mark remaining patches as Debian-specific
++
++ -- Jeremy Bicha <jbicha@debian.org>  Sun, 05 Nov 2017 13:03:02 -0500
++
++mutter (3.26.1-6) unstable; urgency=high
++
++  * debian/control.in: Bump libegl1-mesa-dev to (>= 17) (Closes: #878702)
++  * Cherry-pick more fixes from gnome-3-26 branch to fix crashes
++    and fix unredirecting full-screen windows:
++    - 0012-x11-window-Don-t-manage-InputOnly-windows.patch
++    - 0013-compositor-Ignore-offscreen-windows.patch
++      (LP: #1725821)
++    - 0015-monitor-normal-Prefer-modes-with-same-flags.patch
++    - 0016-monitor-unit-tests-Check-non-first-preferred-modes.patch
++      (LP: #1725153)
++    - 0017-compositor-Avoid-a-crash-if-top-window-finalized.patch
++    - 0018-Revert-ClutterActor-Optimize-away-idempotent-scale.patch
++    - 0019-Revert-tests-Fix-actor-anchors-test.patch
++      (Closes: #788140)
++  * Set urgency to high to not further delay the gjs/mutter transition
++
++ -- Jeremy Bicha <jbicha@debian.org>  Sat, 21 Oct 2017 19:47:22 -0400
++
++mutter (3.26.1-5) unstable; urgency=medium
++
++  * Add 0012-Use-a-single-supported-scales.patch:
++    - Allow HiDPI scaling even when non-HiDPI displays are connected
++      (LP: #1724024)
++
++ -- Jeremy Bicha <jbicha@debian.org>  Mon, 16 Oct 2017 20:17:15 -0400
++
++mutter (3.26.1-4) unstable; urgency=medium
++
++  * Release to unstable
++
++ -- Jeremy Bicha <jbicha@debian.org>  Fri, 13 Oct 2017 16:24:12 -0400
++
++mutter (3.26.1-3) experimental; urgency=medium
++
++  * Cherry-pick more fixes from gnome-3-26 branch (LP: #1722811):
++    - 0001-wayland-dma-buf-Don-t-send-modifiers-to-old-clients.patch
++    - 0007-settings-Get-UI-scaling-factor-from-primary-logical-.patch
++    - 0008-backends-add-monitors-updated-internal-signal-to-onl.patch
++    - 0009-monitor-manager-use-g_return_val_if_fail-if-trying-t.patch
++    - 0010-backend-move-the-cursor-render-update-on-screen-chan.patch
++    - 0011-workspace-ensure-that-workarea-data-is-valid-when-fe.patch
++
++ -- Jeremy Bicha <jbicha@debian.org>  Fri, 13 Oct 2017 09:44:26 -0400
++
++mutter (3.26.1-2) experimental; urgency=medium
++
++  * Add git_fix_xorg_maximize_crash.patch:
++    - Cherry-pick fix for crash when closing windows on Budgie or
++      GNOME Shell (LP: #1722510, Closes: #878353)
++
++ -- Jeremy Bicha <jbicha@debian.org>  Tue, 10 Oct 2017 10:22:41 -0400
++
++mutter (3.26.1-1) experimental; urgency=medium
++
++  * New upstream release
++  * Bump Standards-Version to 4.1.1
++
++ -- Jeremy Bicha <jbicha@debian.org>  Wed, 04 Oct 2017 17:42:30 -0400
++
++mutter (3.26.0+20170925~ea214fb-1) experimental; urgency=medium
++
++  * New upstream git snapshot (LP: #1717272)
++
++ -- Jeremy Bicha <jbicha@debian.org>  Mon, 25 Sep 2017 18:26:10 -0400
++
++mutter (3.26.0-2) experimental; urgency=medium
++
++  * debian/patches/src-core-screen.c-Set-_NET_NUMBER_OF_DESKTOPS-in-met.patch:
++    Cherry-pick from upstream. Fix positioning of desktop icons at startup.
++    (LP: #1696621)
++
++ -- Iain Lane <laney@debian.org>  Fri, 22 Sep 2017 19:13:26 +0100
++
++mutter (3.26.0-1) experimental; urgency=medium
++
++  * Team upload
++  * debian/watch: Only watch stable branch again
++  * New upstream release, functionally identical to the previous
++    snapshot
++
++ -- Simon McVittie <smcv@debian.org>  Wed, 13 Sep 2017 09:22:55 +0100
++
++mutter (3.25.92+20170911~5b5737f-1) experimental; urgency=medium
++
++  * Team upload
++  * New upstream git snapshot (really fixes LP: #1714330, we hope)
++  * debian/watch: Scan for all versions, not just the stable-branch
++  * debian/control.in: Add versioned Breaks for gnome-control-center,
++    and bump Suggests to match, to account for functionality that moved
++    between packages (Closes: #874514)
++
++ -- Simon McVittie <smcv@debian.org>  Tue, 12 Sep 2017 10:39:01 +0100
++
++mutter (3.25.91+20170902~ce515c5-1) experimental; urgency=medium
++
++  * New upstream git snapshot (LP: #1714330)
++  * Drop git_fix-wayland-color-inversion.patch: Applied
++  * debian/control.in:
++    - Bump minimum libgudev-dev to >= 232
++    - Drop Build-Depends on libgl1-mesa-dri
++  * debian/rules:
++    - Ignore test failures on Debian. See bug 874077.
++
++ -- Jeremy Bicha <jbicha@debian.org>  Sat, 02 Sep 2017 15:46:15 -0400
++
++mutter (3.25.91-2) experimental; urgency=medium
++
++  * Build-Depend on libgl1-mesa-dri for build tests since
++    Debian's mesa packages currently only recommends it
++
++ -- Jeremy Bicha <jbicha@debian.org>  Thu, 31 Aug 2017 12:47:34 -0400
++
++mutter (3.25.91-1) experimental; urgency=medium
++
++  * New upstream release
++  * Add skip-failing-tests-325.patch:
++    - Skip one more test that started failing with 3.25
++  * Add git_fix-wayland-color-inversion.patch:
++    - Cherry-pick patch to fix wrong colors in clutter apps on Wayland
++      (LP: #1712986)
++  * Bump Standards-Version to 4.1.0
++
++ -- Jeremy Bicha <jbicha@debian.org>  Thu, 31 Aug 2017 07:11:39 -0400
++
++mutter (3.25.90-1) experimental; urgency=medium
++
++  [ Jeremy Bicha ]
++  * New upstream release (LP: #1662805)
++  * libmutter0 has been renamed upstream to libmutter-0-0
++  * Rename gir1.2-mutter-3.0 to gir1.2-mutter-0
++  * Rename libmutter-dev to libmutter-0-dev
++  * debian/control.in:
++    - Drop obsolete Conflicts/Replaces now that the library
++      uses different file names
++    - Loosen dependency on -common package
++    - Don't recommend gnome-session | x-session-manager (LP: #1703685)
++    - Build-depend on xauth and xfvb for build tests
++    - Add Conflicts: libmutter-0-dev to libmutter-1-dev since
++      both ship the same development header file names
++  * debian/rules:
++    - Build with --enable-egl-device (LP: #1666664)
++      This enables experimental support for using NVIDIA proprietary
++      drivers with GNOME on Wayland
++    - Run build tests but don't make them fatal yet
++  * Add skip-failing-tests.patch:
++    - Don't run a few tests that have been reported as failing
++
++  [ Simon McVittie ]
++  * Add patch metadata
++  * Correctly label debian/patches/git_revert_call_threaded_swap.patch
++    as a revert, not as the change that is being reverted
++
++  [ Andreas Henriksson ]
++  * New upstream beta release, 3.25.90.
++  * Bump versions of build-dependencies according to configure.ac changes.
++  * Rename packages according to libmutter bumping soname, 0->1.
++
++  [ Jeremy Bicha ]
++  * Drop git_revert_call_threaded_swap.patch, no longer needed
++
++ -- Andreas Henriksson <andreas@fatal.se>  Tue, 15 Aug 2017 15:45:47 +0200
++
++mutter (3.22.4-2) unstable; urgency=medium
++
++  [ Jeremy Bicha ]
++  * Add missing depends on gnome-settings-daemon (LP: #1561706)
++
++  [ Laurent Bigonville ]
++  * debian/patches/bgo782472_fix_copypaste_x11_wayland.patch: Fix copy/paste
++    between some X11 applications (firefox/chromium) and wayland (Closes:
++    #865788)
++  * debian/control.in: Bump Standards-Version to 4.0.0 (no further changes)
++
++ -- Laurent Bigonville <bigon@debian.org>  Fri, 30 Jun 2017 19:08:41 +0200
++
++mutter (3.22.4-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Drop patches which have been merged upstream.
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 11 Apr 2017 15:56:47 +0200
++
++mutter (3.22.3-2) unstable; urgency=medium
++
++  * debian/patches/clutter-clone-Unset-source-when-source-actor-is-dest.patch
++    - Add patch from 3.22 branch to fix a gnome-shell crash when using the
++      alternatetab extension. (Closes: #857290)
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 10 Mar 2017 18:06:30 +0100
++
++mutter (3.22.3-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Drop patches which have been merged upstream.
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 17 Feb 2017 18:17:07 +0100
++
++mutter (3.22.2-3) unstable; urgency=medium
++
++  [ Jeremy Bicha ]
++  * Add git_flush_all_swap_notifies_on_idle.patch:
++    - Add patch from 3.22 branch that fixes freezes with multiple monitors
++      on Wayland
++
++  [ Andreas Henriksson ]
++  * Add debian/patches/bgo768531_workaround-startup-notifications.patch
++    - temporary workaround used in both Fedora and Arch for getting
++      working application startup notifications under Wayland.
++    - See bgo#768531 for when a real solution is ready to replace this.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Sun, 08 Jan 2017 03:12:13 +0100
++
++mutter (3.22.2-2) unstable; urgency=critical
++
++  [ Raphaël Hertzog ]
++  * Team upload.
++  * Urgency critical as gnome-shell is entirely broken in testing
++    for many users.
++
++  [ Jeremy Bicha ]
++  * Add git_dont_set_unavailable_scroll_methods.patch:
++    - Add patch from 3.22 branch that prevented logging into GNOME on X
++      for some users (LP: #1643370, Closes: #846898)
++
++ -- Raphaël Hertzog <hertzog@debian.org>  Tue, 06 Dec 2016 17:35:40 +0100
++
++mutter (3.22.2-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Drop patches, all merged upstream.
++
++ -- Michael Biebl <biebl@debian.org>  Thu, 10 Nov 2016 19:17:32 +0100
++
++mutter (3.22.1-2) unstable; urgency=medium
++
++  * d/p/wayland-xdg-popup-Always-use-monitor-of-toplevel.patch
++    d/p/wayland-xdg-shell-Scale-configure-relative-popup-coo.patch
++    d/p/wayland-xdg-popup-Force-monitor-of-the-top-level.patch
++    d/p/wayland-xdg-shell-update-popup-window-monitor-early.patch
++    d/p/wayland-xdg-shell-Scale-positioner-coordinates.patch:
++      - Added. Fix positioning of popups on hidpi screens in
++        wayland (bgo#771841)
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Fri, 14 Oct 2016 22:01:14 +0200
++
++mutter (3.22.1-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Drop debian/patches/01_Wcast-align.patch. It's not necessary anymore as we
++    don't enable -Werror.
++  * Add Build-Depends on libxcb-res0-dev as per configure.ac.
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 11 Oct 2016 13:55:44 +0200
++
++mutter (3.22.0-1) unstable; urgency=medium
++
++  [ Jeremy Bicha ]
++  * debian/control.in:
++    - Explicitly build-depend on libegl1-mesa-dev (Closes: #836153)
++
++  [ Michael Biebl ]
++  * New upstream release.
++    - Correctly handle tablet settings lookups with no backing libwacom info.
++      (Closes: #838050)
++  * Use non-multiarch path (/usr/lib/mutter) for libexecdir.
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 20 Sep 2016 01:43:37 +0200
++
++mutter (3.21.92-1) unstable; urgency=medium
++
++  [ Jeremy Bicha ]
++  * debian/rules:
++    - Explicitly disable kms and wayland to fix build on kfreebsd
++  * Add fix-undef-build-failure.patch:
++    - Git patch needed for build without wayland
++
++  [ Michael Biebl ]
++  * New upstream development release.
++  * Refresh debian/patches/01_Wcast-align.patch.
++  * Bump debhelper compat level to 10.
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 13 Sep 2016 17:43:54 +0200
++
++mutter (3.21.91-2) unstable; urgency=medium
++
++  * Bump Build-Depends on libgnome-desktop-3-dev to (>= 3.21.2).
++    This ensures we have a matching version of libgnome-desktop which supports
++    mode flags via the D-Bus API.
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 02 Sep 2016 12:03:57 +0200
++
++mutter (3.21.91-1) unstable; urgency=low
++
++  * New upstream beta release.
++  * Update build-dependencies according to configure.ac changes:
++    - bump wayland-protocols to >= 1.7
++  * Drop debian/patches/Fix-build-of-clutter-tests.patch, merged upstream.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Tue, 30 Aug 2016 19:30:43 +0200
++
++mutter (3.21.90-1) experimental; urgency=medium
++
++  * New upstream beta release.
++  * Update (build-)dependencies according to configure.ac changes:
++    - drop intltool (>= 0.41), now gettext is used instead.
++    - add libwacom-dev (>= 0.13) [linux-any]
++    - bump wayland-protocols to >= 1.5
++    - bump gsettings-desktop-schemas to >= 3.21.4
++    - bump libinput-dev to >= 1.4
++  * Drop debian/patches/clutter-Fix-typo-in-assert.patch
++    - now included in upstream release.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Sat, 20 Aug 2016 17:46:46 +0200
++
++mutter (3.21.4-1) experimental; urgency=medium
++
++  [ Sjoerd Simons ]
++  * New upstream release
++  * debian/patches/fix-gint64-format.patch
++    debian/patches/wayland-add-extended-state-for-tiled.patch:
++    - Dropped fixed upstream
++  * debian/patches/Fix-build-of-clutter-tests.patch
++    - Added, fix build of test (bgo#769636)
++  * debian/patches/clutter-Fix-typo-in-assert.patch
++    - Added, fix build. From upstream git
++  * debian/control.in: Bump libmutter0 to libmutter0i
++  * debian/control.in: Update build-dependencies
++  * debian/*.install: Install private helper libraries.
++
++  [ Andreas Henriksson ]
++  * libmutter-dev: depend on packages required by mutter-clutter-1.0.pc
++    - libcairo2-dev, libglib2.0-dev, libatk1.0-dev, libpango1.0-dev,
++      libjson-glib-dev, libegl1-mesa-dev, libwayland-dev, libdrm-dev,
++      libgbm-dev, libinput-dev, libudev-dev, libx11-dev, libxext-dev,
++      libxdamage-dev, libxcomposite-dev, libxi-dev
++  * libmutter-dev: depend on additional packages required by mutter-cogl-1.0.pc
++    - libgdk-pixbuf2.0-dev, libxfixes-dev, libxrandr-dev
++
++ -- Andreas Henriksson <andreas@fatal.se>  Fri, 12 Aug 2016 15:53:15 +0200
++
++mutter (3.20.3-2) unstable; urgency=medium
++
++  [ Simon McVittie ]
++  * d/p/fix-gint64-format.patch: Add patch from Luca Bruno fixing a format
++    string on ILP32 architectures
++  * d/rules: add a missing backslash so we build with the intended
++    configure options, and in particular not -Werror (Closes: #829140)
++
++  [ Jeremy Bicha ]
++  * Replace old mutter libraries too instead of only conflicting with them
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 01 Jul 2016 10:18:59 +0200
++
++mutter (3.20.3-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Drop all patches which are now applied upstream.
++  * Convert to multiarch.
++  * Convert from cdbs to dh.
++
++ -- Michael Biebl <biebl@debian.org>  Thu, 30 Jun 2016 20:11:34 +0200
++
++mutter (3.20.2-2) unstable; urgency=medium
++
++  * Team upload
++
++  [ Jeremy Bicha ]
++  * Use https for copyright headers
++  * Use https in d/watch and use new "special strings" to help standardize
++    format
++
++  [ Simon McVittie ]
++  * Add all patches from upstream gnome-3-20 branch up to 2016-06-23
++    - fix possible crashes in Wayland and in X11
++    - ensure that Wayland output reconfiguration finishes correctly
++    - implement "force quit" in Wayland using kill(), like in X11
++    - improve UTF-8 correctness
++    - update translations
++    - ensure that all window frames are drawn similarly
++    - avoid redrawing the entire window every frame
++    - make windows that are unmaximized via drag follow the cursor
++  * Backport patch from upstream to introduce XDG_SURFACE_STATE_GNOME_TILED
++    and mark tiled windows with it, allowing GDK versions with a
++    corresponding patch to report GDK_WINDOW_STATE_TILED correctly under
++    Wayland
++
++ -- Simon McVittie <smcv@debian.org>  Sat, 25 Jun 2016 00:19:53 +0100
++
++mutter (3.20.2-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Bump Standards-Version to 3.9.8.
++
++ -- Michael Biebl <biebl@debian.org>  Wed, 11 May 2016 13:48:17 +0200
++
++mutter (3.20.1-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Refresh patches.
++  * Bump mutter's dependency on gsettings-desktop-schemas to (>= 3.19.3).
++  * Upload to unstable.
++
++ -- Michael Biebl <biebl@debian.org>  Sun, 17 Apr 2016 00:06:56 +0200
++
++mutter (3.20.0-1) experimental; urgency=medium
++
++  * New upstream release.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Fri, 25 Mar 2016 10:12:11 +0100
++
++mutter (3.19.92-2) experimental; urgency=medium
++
++  * Rename libmutter0g -> libmutter0h
++    - update dependencies and conflicts as well.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Fri, 18 Mar 2016 19:15:59 +0100
++
++mutter (3.19.92-1) experimental; urgency=medium
++
++  * New upstream release.
++  * Update build-dependencies according to configure.ac changes:
++    - Bump libgtk-3-dev (>= 3.19.8)
++    - Bump gsettings-desktop-schemas-dev (>= 3.19.3)
++    - Bump libclutter-1.0-dev (>= 1.25.6)
++    - Add wayland-protocols (>= 1.1) [linux-any]
++  * 02_Handle-meta_screen_get_monitor_for_point-returning-N.patch:
++    - dropped, merged upstream.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Thu, 17 Mar 2016 11:02:08 +0100
++
++mutter (3.18.3-2) unstable; urgency=medium
++
++  * Drop mutter-dbg now that we have automatic dbgsym packages.
++  * Ensure proper upgrade from mutter-dbg to new dbgsym packages by using
++    dh_strip --dbgsym-migration. Bump Build-Depends on debhelper accordingly.
++  * Fix dh_makeshlibs args for libmutter0g.
++  * Bump Standards-Version to 3.9.7.
++  * Drop obsolete migration code from pre-wheezy.
++  * Fix disappearing mouse cursor under GNOME Shell with a multi-monitor
++    setup. Patch cherry-picked from upstream Git.
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 15 Mar 2016 07:53:24 +0100
++
++mutter (3.18.3-1) unstable; urgency=medium
++
++  * New upstream release.
++    - fix crash when removing monitor/undocking (Closes: #813687)
++
++ -- Andreas Henriksson <andreas@fatal.se>  Thu, 03 Mar 2016 18:48:49 +0100
++
++mutter (3.18.2-1) unstable; urgency=medium
++
++  * New upstream release.
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 13 Nov 2015 00:09:29 +0100
++
++mutter (3.18.1-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Refresh debian/patches/01_Wcast-align.patch.
++  * Wrap dependencies.
++  * Bump the dependency on gsettings-desktop-schemas to (>= 3.15.92).
++  * Drop the explicit versions from libmutter-dev dependencies. The
++    libmutter.pc file doesn't enforce any specific versions and they were
++    out-of-date anyway.
++
++ -- Michael Biebl <biebl@debian.org>  Wed, 21 Oct 2015 16:13:17 +0200
++
++mutter (3.18.0-1) unstable; urgency=medium
++
++  [ Andreas Henriksson ]
++  * Fix typo in previous changelog entry.
++  * New upstream release.
++  * Drop debian/patches/git_launcher-fix-vt-switch.patch,
++    debian/patches/git_launcher-format-string.patch:
++    - now part of upstream release.
++
++ -- Laurent Bigonville <bigon@debian.org>  Sun, 11 Oct 2015 15:21:29 +0200
++
++mutter (3.17.92-1) experimental; urgency=medium
++
++  [ Dmitry Shachnev ]
++  * Remove now useless dependency on gnome-themes-standard.
++  * Instead, bump libgtk-3-dev build-dependency to 3.14 to make sure mutter will
++    depend on a version of libgtk-3-common that contains the Adwaita theme.
++
++  [ Andreas Henriksson ]
++  * New upstream release candidate
++  * Add two patches cherry-picked from upstream git:
++    - debian/patches/git_launcher-format-string.patch
++      "launcher: Don't pass variable as format string"
++    - debian/patches/git_launcher-fix-vt-switch.patch
++      "Revert "launcher: simplify getting session dbus proxy""
++
++ -- Andreas Henriksson <andreas@fatal.se>  Thu, 17 Sep 2015 13:42:48 +0200
++
++mutter (3.17.90-1) experimental; urgency=medium
++
++  * New upstream beta release.
++  * Update build-dependecies according to configure.ac changes:
++    - bump libclutter-1.0-dev to >= 1.23.4
++  * debian/libmutter-dev.install:
++    - stop shipping usr/share/gtk-doc, removed upstream. See commit 7dc0b0e6.
++  * Rename libmutter0f to libmutter0g
++    - including conflicting against libmutter0f
++
++ -- Andreas Henriksson <andreas@fatal.se>  Sat, 29 Aug 2015 11:03:17 +0200
++
++mutter (3.16.3-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Refresh patches.
++
++ -- Michael Biebl <biebl@debian.org>  Thu, 02 Jul 2015 18:57:22 +0200
++
++mutter (3.16.2-3) unstable; urgency=medium
++
++  * Cherry-pick upstream commit which fixes the issue that window resize
++    handles were not shown.
++  * Drop obsolete Breaks/Replaces from pre-wheezy.
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 30 Jun 2015 19:42:14 +0200
++
++mutter (3.16.2-2) unstable; urgency=medium
++
++  * Upload to unstable.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sun, 14 Jun 2015 13:44:02 +0200
++
++mutter (3.16.2-1) experimental; urgency=medium
++
++  [ Sjoerd Simons ]
++  * New upstream release 3.16.1.
++  * debian/rules: Explicitely build wayland and the native backend on linux
++  * debian/control.in: Bump b-d
++  * debian/rules: Stop shipping doc/theme-format.txt, Metacity format support
++    has been dropped
++  * bump library name to libmutter0f
++
++  [ Emilio Pozuelo Monfort ]
++  * New upstream release 3.16.2.
++  * Upload to experimental.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Wed, 27 May 2015 19:55:29 +0200
++
++mutter (3.14.4-2) unstable; urgency=medium
++
++  * Switch Build-Depends from the transitional libsystemd-login-dev to
++    libsystemd-dev. (Closes: #779761)
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 28 Apr 2015 20:10:38 +0200
++
++mutter (3.14.4-1) unstable; urgency=medium
++
++  * New upstream translation and bugfix release.
++    + Includes new function required for the workaround to #768896 which
++      is very annoying for users of the proprietary nvidia driver.
++  * 10_window-actor_unredirect.patch, 11_black_background.patch:
++    dropped, merged upstream.
++  * Bump shlibs due to new function.
++
++ -- Josselin Mouette <joss@debian.org>  Thu, 26 Mar 2015 21:06:28 +0100
++
++mutter (3.14.2-1) unstable; urgency=medium
++
++  * New upstream bugfix release.
++  * 10_window-actor_unredirect.patch: patch from upstream git. Fix crash
++    when closing a window.
++  * 11_black_background.patch: patch from upstream git. Don’t set a
++    black background when switching from the display manager.
++
++ -- Josselin Mouette <joss@debian.org>  Sun, 30 Nov 2014 15:05:14 +0100
++
++mutter (3.14.1-2) unstable; urgency=medium
++
++  * gir1.2-mutter-3.0: tighten dependency on libmutter0e by making
++    it versioned to = ${binary:Version} (Closes: #766359)
++
++ -- Andreas Henriksson <andreas@fatal.se>  Tue, 28 Oct 2014 19:57:02 +0100
++
++mutter (3.14.1-1) unstable; urgency=medium
++
++  * New upstream release.
++  * Refresh patches.
++  * Drop obsolete Conflicts/Replaces: gir1.2-mutter-2.91.
++  * Update Build-Depends as per configure.ac.
++  * Bump Standards-Version to 3.9.6. No further changes.
++
++ -- Michael Biebl <biebl@debian.org>  Thu, 16 Oct 2014 00:40:24 +0200
++
++mutter (3.14.0-1) unstable; urgency=medium
++
++  [ Dmitry Shachnev ]
++  * Make gir1.2-mutter-3.0 break gnome-shell versions older than 3.13.92.
++    Upstream commit a4a688ed83983fb5 removed MetaBackgroundEffects class,
++    which old gnome-shell (up to 3.13.91) was using via JavaScript code.
++
++  [ Andreas Henriksson ]
++  * Make the libinput-dev build-dependency linux-only.
++    Thanks to Julien Cristau for pointing it out.
++  * New upstream release.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Mon, 22 Sep 2014 21:02:55 +0200
++
++mutter (3.13.92-1) unstable; urgency=medium
++
++  * New upstream release candidate.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Fri, 19 Sep 2014 20:43:41 +0200
++
++mutter (3.13.91-1) experimental; urgency=medium
++
++  [ Andreas Henriksson ]
++  * New upstream development release.
++  * Update build-dependencies according to configure.ac changes:
++    - bump intltool to (>= 0.41)
++    - bump libclutter-1.0-dev to (>= 1.19.5)
++    - add libinput-dev
++    - bump libsystemd-login-dev to (>= 212)
++    - add libxcb-randr0-dev, libxkbcommon-x11-dev, libxkbfile-dev and
++      xkb-data
++  * Drop patches backported from upstream:
++    - 0001-constraints-Complete-fix-for-size-hints-constrainmen.patch
++    - 0001-constraints-Size-increments-need-to-be-applied-to-th.patch
++    - 0001-keybindings-Make-sure-not-to-call-meta_change_keygra.patch
++  * Bump gobject-introspection build-dependency to (>= 1.41.3)
++    - this one supports new "nullable" annotation.
++  * libmutter-dev: bump dependency on libclutter-1.0-dev to (>= 1.19.5)
++  * libmutter-dev: stop installing usr/lib/lib*.a, no need for static
++    and they aren't built anymore.
++  * Stop excluding mutter-launch from fixperms
++    - not needed anymore, mutter-launch is now gone (see logind).
++  * Bump libwayland-dev to >= 1.5.90 as required for wayland support.
++
++  [ Rico Tzschichholz ]
++  * Update library name to libmutter0e since the API/ABI is not compatible
++    with 3.12.x releases
++
++  [ Sjoerd Simons ]
++  * New upstream release 3.13.91.
++  * Update libxkbcommon-x11-dev versioned depend
++
++  [ Andreas Henriksson ]
++  * mutter.install: ship usr/lib/mutter/mutter-restart-helper
++
++ -- Andreas Henriksson <andreas@fatal.se>  Fri, 05 Sep 2014 14:15:05 -0700
++
++mutter (3.13.1-1) experimental; urgency=medium
++
++  [ Laurent Bigonville ]
++  * debian/rules: Pass --as-needed to dh_autoreconf
++
++  [ Andreas Henriksson ]
++  * New upstream development release.
++  * Drop debian/patches/prevent-double-lock-deadlock.patch
++    - obsoleted by upstream commit 5c99eae8a9ca04f5e
++      "display: clean up event handling"
++  * Update build-dependencies according to configure.ac changes:
++    - add libsystemd-login-dev (>= 207), libpam0g-dev
++    - drop libxrender-dev
++  * debian/mutter.install: drop usr/share/gnome
++    - see upstream commit 542a0886cf14cec3995ada2
++      "Remove files no one cares about anymore"
++  * Add patches stolen from fedora originally backported from upstream git:
++    - 0001-constraints-Complete-fix-for-size-hints-constrainmen.patch
++    - 0001-constraints-Size-increments-need-to-be-applied-to-th.patch
++    - 0001-keybindings-Make-sure-not-to-call-meta_change_keygra.patch
++  * Bump gsettings-desktop-schemas (build-)dependencies to 3.13.1
++    - need switch-to-workspace-last schema key
++  * Exclude mutter-launch from having permissions "fixed"
++    - mutter-launch needs to be suid
++
++ -- Andreas Henriksson <andreas@fatal.se>  Sat, 02 Aug 2014 17:55:13 +0200
++
++mutter (3.12.2-2) unstable; urgency=medium
++
++  * Upload to unstable.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Mon, 14 Jul 2014 23:20:08 +0200
++
++mutter (3.12.2-1) experimental; urgency=medium
++
++  [ Sjoerd Simons ]
++  * debian/rules: Don't constrain the libmutter0 dependencies via shlibs
++    as we change the library names on ABI breaks now
++
++  [ Andreas Henriksson ]
++  * New upstream release.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Fri, 16 May 2014 17:36:21 +0200
++
++mutter (3.12.1+therealdeal-1) experimental; urgency=medium
++
++  * Tweak version to be bigger then the one in unstable
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Sat, 26 Apr 2014 19:38:07 +0200
++
++mutter (3.12.1-1) unstable; urgency=medium
++
++  * New upstream release
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Sat, 26 Apr 2014 17:47:46 +0200
++
++mutter (3.12.0-2) experimental; urgency=low
++
++  [ Rico Tzschichholz ]
++  * Update library name to libmutter0d since the API/ABI is not compatible
++    with 3.10.x releases
++
++  [ Emilio Pozuelo Monfort ]
++  * Let libmutter0d conflict with libmutter0c.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Thu, 03 Apr 2014 10:30:00 +0200
++
++mutter (3.12.0-1) experimental; urgency=low
++
++  [ Sjoerd Simons ]
++  * debian/patches/prevent-double-lock-deadlock.patch:
++    + Added. Don't call X functions that lock the display in code paths that
++      have already locked the display if X threads have been initialized
++      (bgo#704101)
++
++  [ Andreas Henriksson ]
++  * New upstream release.
++  * Update build-dependencies according to configure.ac changes:
++    - bump upower 0.99.0
++    - bump cogl 1.17.1
++  * Bump Standards-Version to 3.9.5
++
++ -- Andreas Henriksson <andreas@fatal.se>  Sat, 29 Mar 2014 22:09:55 +0100
++
++mutter (3.10.1-2) experimental; urgency=low
++
++  * Force build against G3.10 version of gnome-desktop
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Sun, 03 Nov 2013 11:19:44 +0100
++
++mutter (3.10.1-1) experimental; urgency=low
++
++  * New upstream release
++  * Sync with Ubuntu (3.10.0-0ubuntu1~saucy1)
++    + Update library name to libmutter0c
++    + Bump build-depends
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Fri, 01 Nov 2013 22:34:51 +0100
++
++mutter (3.8.4-2) unstable; urgency=low
++
++  * Upload to unstable.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sun, 13 Oct 2013 17:26:39 +0200
++
++mutter (3.8.4-1) experimental; urgency=low
++
++  [ Jeremy Bicha ]
++  * debian/control.in:
++    - Use standard Breaks/Replaces instead of Conflicts against older mutter
++      libraries
++
++  [ Emilio Pozuelo Monfort ]
++  * debian/control.in:
++    + Standards-Version is 3.9.4, no changes needed.
++  * New upstream release.
++
++  [ Michael Biebl ]
++  * debian/watch: Track stable releases.
++  * Bump debhelper compatibility level to 9.
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 11 Oct 2013 19:37:56 +0200
++
++mutter (3.8.3-1) experimental; urgency=low
++
++  * New upstream release.
++  * debian/control.in:
++    + Bump clutter requirement.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sat, 08 Jun 2013 18:09:14 +0200
++
++mutter (3.8.2-1) experimental; urgency=low
++
++  * New upstream release.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Fri, 24 May 2013 17:26:06 +0200
++
++mutter (3.8.1-1) experimental; urgency=low
++
++  * New upstream release
++  * debian/patches/02-dont-select-for-XI2-events.patch:
++    + Dropped, fixed X server is available in sid now
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Fri, 19 Apr 2013 18:57:59 +0200
++
++mutter (3.8.0-1) experimental; urgency=low
++
++  * New upstream release.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Wed, 27 Mar 2013 00:15:13 +0100
++
++mutter (3.7.92-1) experimental; urgency=low
++
++  [ Sjoerd Simons ]
++  * New upstream release (3.7.90)
++  * Sync from  Ubuntu
++    + d/p/04_ignore_shadow_and_padding.patch:
++      * Dropped, Ubuntu specific
++  * debian/control.in: Bump b-d on glib
++  * debian/control.in: Rename libmutter0a to libmutter0b for more ABI fun
++  * d/p/10_Always-send-_NET_WM_FRAME_DRAWN-for-newly-created-wi.patch:
++    + Added. Fix a race causing _NET_WM_FRAME_DRAWN to not be sent in context
++    menus. (From upstream git, BGO#694771)
++
++  [ Emilio Pozuelo Monfort ]
++  * New upstream release.
++    + debian/control.in:
++      - Add gtk-doc-tools to build-depends.
++    + debian/libmutter-dev.install:
++      - Ship the API reference.
++    + d/p/10_Always-send-_NET_WM_FRAME_DRAWN-for-newly-created-wi.patch:
++      - Removed, included upstream.
++    + debian/patches/02-dont-select-for-XI2-events.patch:
++      - New patch, revert an upstream change to receive XI2 events
++        until #696272 is fixed. Thanks to Sjoerd Simons and
++        Frédéric Péters for the info and the patch.
++    + debian/copyright:
++      - Updated.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Wed, 20 Mar 2013 18:12:12 +0100
++
++mutter (3.7.5-0ubuntu1~raring1) raring; urgency=medium
++
++  [ Jeremy Bicha ]
++  * New upstream release.
++  * debian/control.in:
++    - Bump minimum clutter & gsettings-desktop-schemas
++
++  [ Rico Tzschichholz ]
++  * debian/control.in:
++    - Build-depend on libxi-dev
++  * debian/patches/01_Wcast-align.patch: Refreshed
++  * debian/patches/05_ignore_num_workspaces.patch:
++    - Dropped, applied in new version
++
++ -- Jeremy Bicha <jbicha@ubuntu.com>  Tue, 05 Feb 2013 20:58:05 -0500
++
++mutter (3.6.2-0ubuntu1) raring; urgency=low
++
++  * New upstream release (LP: #1078155)
++
++ -- Jeremy Bicha <jbicha@ubuntu.com>  Mon, 12 Nov 2012 22:09:47 -0500
++
++mutter (3.6.1-1ubuntu2) raring; urgency=low
++
++  * Added 05_ignore_num_workspaces.patch (LP: #1067933)
++
++ -- Brandon Snider <brandonjsnider@gmail.com>  Wed, 17 Oct 2012 20:23:11 -0400
++
++mutter (3.6.1-1ubuntu1) raring; urgency=low
++
++  * Sync with Debian. Remaining change:
++    - 04_ignore_shadow_and_padding.patch: Silently ignore
++      padding and shadow tags
++
++ -- Jeremy Bicha <jbicha@ubuntu.com>  Thu, 08 Nov 2012 08:37:27 -0500
++
++mutter (3.6.1-1) experimental; urgency=low
++
++  * New upstream release
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Wed, 17 Oct 2012 19:58:10 +0200
++
++mutter (3.6.0-1) experimental; urgency=low
++
++  * New upstream release
++  * Sync with Ubuntu:
++    - Drop unnecessary gnome-doc-utils install
++  * d/p/00_meta_window_move_frame-fix-crash-when-frame-is-NULL.patch:
++    Dropped: fixed upstream
++  * debian/control.in: Rename libmutter0 to libmutter0a as the libmutter ABI
++    broke
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Sun, 14 Oct 2012 19:24:21 +0200
++
++mutter (3.4.1-7) unstable; urgency=low
++
++  * d/p/0001-meta-texture-rectangle-Use-Cogl-s-API-to-create-a-re.patch:
++    + Patch from upstream git, don't use GL types as cogl doesn't expose
++      GL headers in newer releases. This will ease the cogl transition.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sun, 26 May 2013 17:54:55 +0200
++
++mutter (3.4.1-6) unstable; urgency=low
++
++  * Team upload
++  * Add debian/patches/02_switch_to_gtk-doc_syntax.patch:
++    - from upstream, fixes FTBFS with new gobject-introspection.
++
++ -- Andreas Henriksson <andreas@fatal.se>  Mon, 13 May 2013 11:03:34 +0200
++
++mutter (3.4.1-5) unstable; urgency=low
++
++  [ Rico Tzschichholz ]
++  * debian/patches: Add upstream patch
++    00_meta_window_move_frame-fix-crash-when-frame-is-NULL.patch
++
++  [ Michael Biebl ]
++  * Install missing keybindings file 50-mutter-windows.xml which is required
++    to configure mutter specific keyboard shortcuts in gnome-control-center.
++    Closes: #680004
++  * Use list-missing to list files missing from the package.
++
++ -- Michael Biebl <biebl@debian.org>  Sat, 07 Jul 2012 20:03:06 +0200
++
++mutter (3.4.1-4) unstable; urgency=low
++
++  * Clean up /etc/sgml/mutter-common.cat and /etc/sgml/mutter-common.cat.old
++    on upgrades. Closes: #675309
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 01 Jun 2012 12:49:07 +0200
++
++mutter (3.4.1-3) unstable; urgency=low
++
++  [ Michael Biebl ]
++  * Upload to unstable.
++
++  [ Rico Tzschichholz ]
++  * libmutter-dev: add dependency on gsettings-desktop-schemas-dev and
++    libx11-dev as pc-file requests
++
++  [ Michael Biebl ]
++  * Bump Suggests: gnome-control-center to (>= 1:3.4.0) as we want a recent
++    enough version which can handle keybindings based on GSettings.
++  * Use strict dependency between mutter/libmutter0 and mutter-common to
++    ensure we have the correct version of mutter-common providing the
++    org.gnome.mutter gsettings schema.
++  * Add Depends on gnome-themes-standard to mutter. Adwaita is the preferred
++    window manager theme and without a theme installed mutter refuses to
++    start. Closes: #658823
++
++ -- Michael Biebl <biebl@debian.org>  Wed, 30 May 2012 12:25:26 +0200
++
++mutter (3.4.1-2) experimental; urgency=low
++
++  * Drop debian/mutter-common.catalog and debian/mutter-common.sgmlcatalogs.
++    This is another leftover from the metacity package, mutter doesn't ship
++    any DTD.
++  * Replace another occurence of libgnome2-common with
++    gsettings-desktop-schemas.
++
++ -- Michael Biebl <biebl@debian.org>  Mon, 14 May 2012 19:11:48 +0200
++
++mutter (3.4.1-1) experimental; urgency=low
++
++  [ Michael Biebl ]
++  * New upstream release.
++
++  [ Rico Tzschichholz ]
++  * debian/control.in:
++    - Bump minimum GTK, cogl, clutter & gsettings-desktop-schemas
++    - Add mutter-dbg package
++  * debian/mutter-common.install:
++    - Install gsettings schemas
++  * debian/rules: Enable compile warnings
++
++  [ Jeremy Bicha ]
++  * debian/control.in:
++    - Drop gconf dependency
++
++  [ Michael Biebl ]
++  * Bump Standards-Version to 3.9.3.
++  * Update Vcs-* URLs.
++  * Drop Suggests: gnome-themes. This is a remnant of the old metacity
++    package this work is based on.
++  * Refresh debian/patches/01_Wcast-align.patch.
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 04 May 2012 21:48:47 +0200
++
++mutter (3.2.2-3) unstable; urgency=low
++
++  * Upload to unstable.
++
++ -- Michael Biebl <biebl@debian.org>  Wed, 02 May 2012 00:10:17 +0200
++
++mutter (3.2.2-2) experimental; urgency=low
++
++  * d/p/02_Fix-cogl-crash-from-updating-non-existent-texture.patch:
++    + Added. In 1.8 cogl would prevent attempts to update textures with
++    an invalid handle from crashing buggy programs. Cogl 1.10 no longer does
++    so. This patch prevents mutter from updating invalid textures
++  * d/p/03_fix_compilation_with_new_cogl.patch
++    + Added. Adapt to changes made in the experimental patch of the cogl API
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Sun, 01 Apr 2012 16:32:27 +0200
++
++mutter (3.2.2-1) unstable; urgency=low
++
++  [ Michael Biebl ]
++  * Change section of gir1.2-mutter-3.0 to introspection.
++
++  [ Josselin Mouette ]
++  * Update repository URL.
++
++  [ Michael Biebl ]
++  * New upstream release.
++  * debian/watch: Track stable releases.
++
++ -- Michael Biebl <biebl@debian.org>  Tue, 24 Jan 2012 07:49:20 +0100
++
++mutter (3.2.1-2) unstable; urgency=low
++
++  [ Laurent Bigonville ]
++  * debian/watch:
++    - Fix URL regex to correctly detect latest tarballs
++    - Switch to .xz tarballs
++
++  [ Michael Biebl ]
++  * Upload to unstable.
++  * Refresh debian/patches/01_Wcast-align.patch.
++  * debian/control.in:
++    - Add explicit Build-Depends on libcairo2-dev.
++    - Bump Build-Depends on libglib2.0-dev.
++
++ -- Michael Biebl <biebl@debian.org>  Sat, 19 Nov 2011 01:21:32 +0100
++
++mutter (3.2.1-1) experimental; urgency=low
++
++  [ Jean Schurger ]
++  * New upstream version
++  * debian/control.in
++    - Updated clutter dependency
++  * debian/libmutter0.symbols
++    - Updated
++
++  [ Josselin Mouette ]
++  * Tighten shlibs to the major GNOME version, libcamel-style.
++  * libmutter0.symbols: dropped, upstream ABI stability guarantees are
++    not sufficient.
++
++  [ Sjoerd Simons ]
++  * New upstream release (3.2.1)
++
++ -- Sjoerd Simons <sjoerd@debian.org>  Fri, 28 Oct 2011 20:19:30 +0200
++
++mutter (3.0.2.1-4) unstable; urgency=high
++
++  * Team upload. Urgency high as that problem already affects testing
++    users.
++  * debian/patches:
++    - Add 00git-dont-lose-application-redraws.patch to fix rendering
++      issues with parts of the screen not showing the latest content.
++
++ -- Raphaël Hertzog <hertzog@debian.org>  Mon, 17 Oct 2011 08:37:50 +0200
++
++mutter (3.0.2.1-3) unstable; urgency=low
++
++  [ Rico Tzschichholz ]
++  * debian/patches:
++    - Add 00git-meta-window-group-Use-clutter_stage_get_redraw_clip_.patch,
++      00git-Use-a-utility-function-to-create-GL_ARB_texture_rect.patch
++      to remove direct GL usages to let it build with EGL/GLES2 on arm
++  * debian/control:
++    - Bump build-dep on clutter-1.0-dev (>= 1.7.5)
++  * debian/libmutter0.symbols:
++    - updated (leave with debian revision since it is added by a patch)
++
++ -- Michael Biebl <biebl@debian.org>  Fri, 14 Oct 2011 19:01:24 +0200
++
++mutter (3.0.2.1-2) unstable; urgency=low
++
++  [ Laurent Bigonville ]
++  * Drop debian/mutter.lintian-overrides: Missing manpages are now installed
++
++  [ Michael Biebl ]
++  * debian/control.in:
++    - Drop Build-Depends on gir1.2-gtk-3.0, gir1.2-clutter-1.0 and
++      gir1.2-json-glib-1.0 and let their corresponding -dev package pull it in
++      automatically. Bump the Build-Depends on the -dev packages accordingly.
++  * Bump debhelper compatibility level to 8.
++    - Update Build-Depends on debhelper.
++    - Strip debian/tmp/ from .install files.
++  * Let cdbs call dh_girepository.
++    - Bump Build-Depends on cdbs to (>= 0.4.90).
++    - Remove custom dh_girepository rules from debian/rules.
++    - Set DEB_DH_GIREPOSITORY_ARGS_ALL to /usr/lib/mutter.
++
++ -- Michael Biebl <biebl@debian.org>  Thu, 07 Jul 2011 22:45:20 +0200
++
++mutter (3.0.2.1-1) unstable; urgency=low
++
++  [ Rico Tzschichholz ]
++  * New upstream release
++  * debian/watch:
++    - Look for bzip2 tarballs
++
++  [ Josselin Mouette ]
++  * Depend on libgnome2-common for the GConf schemas. This will be
++    necessary until mutter is ported to GSettings.
++
++ -- Laurent Bigonville <bigon@debian.org>  Sat, 11 Jun 2011 14:39:59 +0200
++
++mutter (3.0.1-1) experimental; urgency=low
++
++  * New upstream release (3.0.0).
++  * debian/control.in:
++    - Bump Standards-Version to 3.9.2 (no further changes)
++    - Drop versionized dpkg-dev build-dependency
++
++ -- Laurent Bigonville <bigon@debian.org>  Fri, 06 May 2011 23:47:25 +0200
++
++mutter (3.0.0-2) experimental; urgency=low
++
++  * Rename gir1.2-mutter-2.91 package to gir1.2-mutter-3.0
++
++ -- Laurent Bigonville <bigon@debian.org>  Mon, 11 Apr 2011 11:19:27 +0200
++
++mutter (3.0.0-1) experimental; urgency=low
++
++  * Team upload.
++
++  [ Frederic Peters ]
++  * New upstream release (2.91.93).
++  * debian/libmutter0.symbols: new symbol.
++
++  [ Josselin Mouette ]
++  * Make the -dev package depend on the gir package.
++
++  [ Raphaël Hertzog ]
++  * New upstream release (3.0.0).
++
++ -- Raphaël Hertzog <hertzog@debian.org>  Sun, 10 Apr 2011 19:38:04 +0000
++
++mutter (2.91.92-1) experimental; urgency=low
++
++  * New upstream release
++
++  [ Rico Tzschichholz ]
++  * debian/patches:
++    + drop 02_arm_include_clutter_x11.patch, is upstream
++    + drop 10_mutter-ldflags.patch, is upstream
++  * debian/control.in,debian/rules:
++    + add libmutter0 which replaces libmutter-wm0 and libmutter-private0
++
++  [ Frederic Peters ]
++  * debian/control.in: mention gnome-shell in libmutter0 package description.
++
++ -- Frederic Peters <fpeters@debian.org>  Thu, 24 Mar 2011 19:56:48 +0100
++
++mutter (2.91.91-1) experimental; urgency=low
++
++  * New upstream release.
++
++  [Laurent Bigonville]
++  * debian/control.in: Add Vcs-Svn and Vcs-Browser fields
++
++  [Frederic Peters]
++  * debian/control.in, libmutter-wm0.install, libmutter-wm0.symbols:
++    Add a libmutter-wm0 library
++  * debian/patches/10_mutter-ldflags.patch: Fix linking of mutter binary
++  * debian/patches/20_libmutter_export_symbols.patch: Limit list of symbols
++    exported by libmutter-{wm,private} (but don't add it to series as it makes
++    gnome-shell segfault)
++  * debian/mutter.install, debian/mutter-common.install: move mutter-wm.desktop
++    from mutter-common to mutter.
++  * debian/control.in: add replaces/breaks in mutter, against previous
++    versions of mutter-common, for the move of mutter-wm.desktop.
++
++ -- Frederic Peters <fpeters@debian.org>  Mon, 14 Mar 2011 19:09:58 +0100
++
++mutter (2.91.90-1) experimental; urgency=low
++
++  * New upstream release.
++
++ -- Frederic Peters <fpeters@debian.org>  Wed, 23 Feb 2011 09:29:08 +0100
++
++mutter (2.91.6-1) experimental; urgency=low
++
++  [ Laurent Bigonville ]
++  * New upstream release.
++  * debian/control.in:
++    - Remove duplicate Section
++    - Drop gir1.2-mutter-2.91 Conflicts/Replaces against libmutter-private0
++      package
++  * debian/watch: Drop call to uupdate
++  * debian/mutter.lintian-overrides: Add overrides for manpages shipped
++    in mutter-common
++
++  [ Emilio Pozuelo Monfort ]
++  * debian/control.in:
++    + Update for the new gtk+ 3 package names.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sat, 19 Feb 2011 15:20:42 +0000
++
++mutter (2.29.0-4) unstable; urgency=low
++
++  * Remove gir1.0-mutter-2.29 to ease the gir1.2 transition, since
++    nothing uses it.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Wed, 16 Feb 2011 20:34:44 +0000
++
++mutter (2.91.5-1) experimental; urgency=low
++
++  [ Emilio Pozuelo Monfort ]
++  * New upstream release.
++    + debian/control.in:
++      - Update build dependencies.
++      - Remove unneeded libgtk2.0-dev build dependency.
++    + debian/patches/02_gdk_removed_macro.patch,
++      debian/patches/03_handle_new_gtk_states.patch,
++      debian/patches/04_fix_gradient_example.patch:
++      - Removed, included upstream.
++  * debian/libmutter-private0.symbols:
++    + Add a symbols file.
++  * debian/rules:
++    + Make the shlibs always depend on the latest upstream version.
++      We have symbols file anyway, and manually bumping the shver is
++      error prone.
++
++  [ Laurent Bigonville ]
++  * debian/control: Bump Standards-Version to 3.9.1
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Wed, 12 Jan 2011 23:06:20 +0000
++
++mutter (2.91.3-3) experimental; urgency=low
++
++  * debian/patches/02_gdk_removed_macro.patch,
++  * debian/patches/03_handle_new_gtk_states.patch,
++  * debian/patches/04_fix_gradient_example.patch:
++    - Patches from upstream git, fix the build with latest GTK+ 3.
++  * debian/control.in:
++    - Bump the libgtk3.0-dev build dependency accordingly.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Sat, 18 Dec 2010 23:39:24 +0000
++
++mutter (2.91.3-2) experimental; urgency=low
++
++  * Update to the new gir policy:
++    - Rename gir1.0-mutter-2.91 to gir1.2-mutter-2.91.
++    - Bump the gobject-introspection build dependency.
++    - Build depend on gir1.2 packages.
++  * debian/control.in:
++    - Fix typo, s/shlib/shlibs/.
++  * debian/rules:
++    - Remove hack to get translations in /usr/share, no longer needed.
++    - Pass the path to the typelibs to dh_girepository to get correct
++      dependencies.
++  * debian/rules,
++    debian/control.in:
++    - Use dh-autoreconf.
++  * debian/patches/90_autotools.patch,
++    debian/patches/99_ltmain_as-needed.patch:
++    - Removed, no longer needed with dh-autoreconf.
++  * debian/rules,
++    debian/copyright:
++    - Fix some metacity leftovers.
++  * debian/mutter.1,
++    debian/mutter-message.1,
++    debian/mutter-theme-viewer.1,
++    debian/mutter-window-demo.1,
++    debian/mutter-common.manpages:
++    - Removed, shipped upstream.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Tue, 14 Dec 2010 00:52:38 +0100
++
++mutter (2.91.3-1) experimental; urgency=low
++
++  [ Gustavo Noronha Silva ]
++  * New development release
++  * debian/control:
++  - update build-dependencies on GObject-Introspection packages
++  - build-depend on GTK+3
++
++  [ Emilio Pozuelo Monfort ]
++  * New upstream release.
++    - Rename gir1.0-mutter-2.31 to gir1.0-mutter-2.91.
++  * debian/control.in:
++    - Build depend on libjson-glib-dev and gir1.0-json-glib-1.0.
++  * debian/rules,
++    debian/control.in,
++    debian/source/format:
++    - Switch to source format 3.0 (quilt).
++  * debian/rules:
++    - Bump the shlib version.
++
++ -- Emilio Pozuelo Monfort <pochu@debian.org>  Mon, 06 Dec 2010 00:59:42 +0100
++
++mutter (2.31.5-1) experimental; urgency=low
++
++  * New upstream release
++  - refreshed patches
++  - added a hack to rules to work-around the build trying to install
++    locale files to /usr/lib/locale
++  - bumped shlib minimum version to 2.31.5 (see #586124)
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Tue, 13 Jul 2010 11:36:29 -0300
++
++mutter (2.31.2-3) experimental; urgency=low
++
++  * debian/gir1.0-mutter-2.{29->31}.install:
++  - actually install the typelib file
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Mon, 31 May 2010 11:37:33 -0300
++
++mutter (2.31.2-2) experimental; urgency=low
++
++  * debian/control:
++  - fix GIR package name to account for GIR API name change
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Wed, 26 May 2010 15:15:34 -0300
++
++mutter (2.31.2-1) experimental; urgency=low
++
++  * New development release
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Wed, 26 May 2010 10:51:58 -0300
++
++mutter (2.29.1-1) experimental; urgency=low
++
++  * New development release.
++  * debian/control:
++  - build-dep on clutter >= 1.2
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Thu, 08 Apr 2010 20:48:38 -0300
++
++mutter (2.29.0-2) unstable; urgency=low
++
++  * debian/control:
++  - fix gir package name, because the typelib has changed its name
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Mon, 15 Mar 2010 17:27:59 -0300
++
++mutter (2.29.0-1) unstable; urgency=low
++
++  * New upstream development release.
++  * debian/rules:
++  - update makeshlibs argument to require >= 2.29.0
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Tue, 02 Mar 2010 19:19:44 -0300
++
++mutter (2.28.1~git20100129-1) unstable; urgency=low
++
++  * Upstream snapshot
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Fri, 29 Jan 2010 12:04:09 -0200
++
++mutter (2.28.1~git20091208-1) unstable; urgency=low
++
++  * New upstream snapshot
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Sat, 24 Oct 2009 13:16:53 -0200
++
++mutter (2.28.1~git20091024-1) unstable; urgency=low
++
++  * Upstream snapshot
++  * debian/control.in:
++  - fixed typo in description
++  - bump Standards-Version to 3.8.3
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Sat, 24 Oct 2009 12:59:03 -0200
++
++mutter (2.28.0-2) unstable; urgency=low
++
++  * debian/control.in:
++  - adapt for the new GObject introspection policy
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Mon, 19 Oct 2009 15:59:57 -0200
++
++mutter (2.28.0-1) unstable; urgency=low
++
++  * New upstream release
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Fri, 09 Oct 2009 13:23:25 -0300
++
++mutter (2.27.5-1) unstable; urgency=low
++
++  * New upstream release
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Wed, 30 Sep 2009 21:19:05 +0100
++
++mutter (2.27.3-2) unstable; urgency=low
++
++  [ Simon Raven <simon.raven@gmail.com> ]
++  * debian/control.in:
++  - adding missing build-dep to fix FTBFS (Closes: #544342)
++
++  [ Gustavo Noronha Silva ]
++  * debian/control.in:
++  - also add gobject-introspection, gobject-introspection-glib-2.0,
++    gobject-introspection-freedesktop, which were also missing, to
++    build-depends
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Sun, 30 Aug 2009 19:02:46 -0300
++
++mutter (2.27.3-1) unstable; urgency=low
++
++  [ Josselin Mouette ]
++  * Update list of copyright holders.
++
++  [ Gustavo Noronha Silva ]
++  * New upstream release
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Sat, 29 Aug 2009 21:53:05 -0300
++
++mutter (2.27.2-1) unstable; urgency=low
++
++  * First mutter release for Debian
++  - no ITP since this is in practice a branch of metacity
++  * debian/control.in:
++  - adapted descriptions
++  - added build-deps on gobject-introspection, and clutter >= 1.0
++  - renamed packages
++  * debian/patches/10_ignore_callbacks.patch:
++  - removed; applied upstream
++  * debian/mutter-common.install:
++  - this package no longer provides themes and gnome-control-center
++    keybindings capplet; this will come in a separate module in the
++    future, it seems, and we may want to make sure it is installed
++
++ -- Gustavo Noronha Silva <kov@debian.org>  Sun, 26 Jul 2009 13:33:08 +0200
++
++metacity (1:2.26.0-3) unstable; urgency=high
++
++  * 10_ignore_callbacks.patch: stolen upstream. Fix a bug leading to
++    some callbacks being ignored. Closes: #533917.
++
++ -- Josselin Mouette <joss@debian.org>  Wed, 24 Jun 2009 12:04:26 +0200
++
++metacity (1:2.26.0-2) unstable; urgency=low
++
++  * Use patchsys-quilt; build-depend on quilt.
++  * 01_Wcast-align.patch: don’t use -Wcast-align, it gives incorrect
++    warnings (errors thanks to -Werror) when some pointers are converted
++    back and forth to XPointers. Closes: #532655.
++  * 90_autotools.patch: relibtoolize the whole package.
++
++ -- Josselin Mouette <joss@debian.org>  Wed, 10 Jun 2009 21:52:35 +0200
++
++metacity (1:2.26.0-1) unstable; urgency=low
++
++  [ Josselin Mouette ]
++  * Fix typo in changelog entry.
++
++  [ Loic Minier ]
++  * Let metacity suggest gnome-themes as it attempts to use the Clearlooks
++    Metacity theme by default and logs a warning when it can't be used.
++  * Let metacity suggest xdg-user-dirs as it fails creating the
++    .config/metacity sub-directory and logs a warning if .config isn't created
++    by xdg-user-dirs.
++
++  [ Josselin Mouette ]
++  * Set the team as primary maintainer. Closes: #523545.
++  * Fixup in the descriptions.
++  * New upstream release.
++  * Update build-dependencies.
++  * Bump shlibs for libmetacity-private0.
++
++ -- Josselin Mouette <joss@debian.org>  Tue, 09 Jun 2009 20:36:03 +0200
++
++metacity (1:2.24.0-2) unstable; urgency=low
++
++  * Rename libmetacity0 to libmetacity-private0 because of an
++    unexpected ABI change. Closes: #510096.
++  * Remove trailing -1's in build-depends.
++  * debian/copyright: write complete list of copyright holders.
++  * Upload to unstable.
++
++ -- Josselin Mouette <joss@debian.org>  Mon, 16 Feb 2009 18:03:57 +0100
++
++metacity (1:2.24.0-1) experimental; urgency=low
++
++  * New upstream release.
++    + Implements one-way maximisation. Closes: #450837.
++    + Fixes issues when disabling the compositor. Closes: #476492.
++  * Bump shlibs version to 1:2.24.0.
++  * Standards version is 3.8.0.
++  * 01_doublefree_maximize.patch: dropped, merged upstream.
++  * Install the .desktop in the metacity package.
++
++ -- Josselin Mouette <joss@debian.org>  Sat, 22 Nov 2008 15:57:58 +0100
++
++metacity (1:2.22.0-2) unstable; urgency=low
++
++  [ Sven Arvidsson ]
++  * Add README.Debian, describing how to enable the compositor.
++    (Closes: #471442)
++
++  [ Josselin Mouette ]
++  * 01_doublefree_maximize.patch: stolen upstream (r3817). Fixes
++    vertical maximisation bug caused by an invalid free.
++    Closes: #452139.
++  * control.in: make metacity the first package so that it gets the
++    README.Debian.
++
++ -- Josselin Mouette <joss@debian.org>  Thu, 18 Sep 2008 16:53:19 +0200
++
++metacity (1:2.22.0-1) unstable; urgency=low
++
++  [ Bradley Smith ]
++  * New upstream development release.
++
++  [ Sam Morris ]
++  * Build-depend on libxcomposite-dev for composite manager.
++
++  [ Sebastian Dröge ]
++  * New upstream stable release:
++    + debian/rules:
++      - Drop check-dist include.
++      - Update shlibs to >= 2.22.0 because of new API.
++
++ -- Sebastian Dröge <slomo@debian.org>  Fri, 14 Mar 2008 13:54:19 +0100
++
++metacity (1:2.21.5-1) experimental; urgency=low
++
++  [ Riccardo Setti ]
++  * New metacity package.
++  * build with compositor extension.
++
++  [ Bradley Smith ]
++  * Update Standards Version to 3.7.3. (No changes)
++  * Add check-dist.
++
++ -- Riccardo Setti <giskard@debian.org>  Thu, 20 Dec 2007 02:29:13 +0100
++
++metacity (1:2.20.1-2) UNRELEASED; urgency=low
++
++  * Let metacity-common replace metacity instead of conflicting to ease
++    upgrades.
++
++ -- Loic Minier <lool@dooz.org>  Wed, 28 Nov 2007 19:00:45 +0100
++
++metacity (1:2.20.1-1) unstable; urgency=low
++
++  [ Josselin Mouette ]
++  * Recommend gnome-session | x-session-manager. Closes: #225640.
++  * Remove metacity.menu. Closes: #397645.
++
++  [ Sebastian Dröge ]
++  * New upstream bugfix release.
++
++ -- Sebastian Dröge <slomo@debian.org>  Mon, 19 Nov 2007 13:57:21 +0100
++
++metacity (1:2.20.0-1) unstable; urgency=low
++
++  * New upstream release:
++    + debian/patches/01_session_tolerate_missing_file.patch,
++      debian/patches/02_fix_crash_on_session_saving.patch:
++      - Dropped, merged upstream.
++    + debian/rules:
++      - Bump shlibs to >= 2.19.5.
++    + debian/metacity-common.install:
++      - Ship keybinding stuff.
++  * debian/control.in:
++    + Drop duplicated libxinerama-dev build dependency.
++
++ -- Sebastian Dröge <slomo@debian.org>  Sat, 22 Sep 2007 10:46:36 +0200
++
++metacity (1:2.18.5-1) unstable; urgency=low
++
++  * New upstream stable release; no API change.
++
++ -- Loic Minier <lool@dooz.org>  Tue, 19 Jun 2007 12:07:17 +0200
++
++metacity (1:2.18.3-2) unstable; urgency=low
++
++  * 99_ltmain_as-needed.patch: make --as-needed work for the library
++    too.
++
++ -- Josselin Mouette <joss@debian.org>  Wed, 06 Jun 2007 23:40:52 +0200
++
++metacity (1:2.18.3-1) unstable; urgency=low
++
++  * Drop metacity-common postinst as it was scheduled to be dropped post-etch.
++  * Rewrite metacity postinst and prerm to use safer individual if tests
++    instead of trying to list all possible args in a case; reported by
++    Lior Kaplan; closes: #421206.
++  * New upstream stable release; no API change.
++
++ -- Loic Minier <lool@dooz.org>  Mon, 28 May 2007 17:48:18 +0200
++
++metacity (1:2.18.2-3) unstable; urgency=low
++
++  * New patch 02_fix_crash_on_session_saving.patch, taken from Ubuntu.
++    Fix a crash that would occur when the current session is saved and would
++    corrupt ~/.gnome2/session. Gnome bug #433253
++
++ -- Sebastian Dröge <slomo@debian.org>  Thu, 26 Apr 2007 15:44:10 +0200
++
++metacity (1:2.18.2-2) unstable; urgency=low
++
++  * Add -z defs to LDFLAGS; cleanups.
++  * Upload to unstable; drop check-dist include.
++  * Add a ${misc:Depends}.
++  * Drop useless --enable-xsync=yes from configure flags.
++  * Wrap build-deps and deps.
++  * Bump dep on libgtk2.0-dev to >= 2.10.0-1.
++
++ -- Loic Minier <lool@dooz.org>  Sat, 14 Apr 2007 15:12:50 +0200
++
++metacity (1:2.18.2-1) experimental; urgency=low
++
++  * New upstream stable release.
++
++ -- Loic Minier <lool@dooz.org>  Mon, 09 Apr 2007 08:47:47 +0200
++
++metacity (1:2.18.1-1) experimental; urgency=low
++
++  * New upstream stable release; no API change; bug fixes and translations.
++  * Drop obsolete README.Debian; misc cleanups.
++
++ -- Loic Minier <lool@dooz.org>  Sun, 08 Apr 2007 09:23:44 +0200
++
++metacity (1:2.18.0-1) experimental; urgency=low
++
++  [ Marco Cabizza ]
++  * New upstream release: not enabling compositor, too unstable, and libcm
++    seems dead upstream.
++
++  [ Riccardo Setti ]
++  * Updated debhelper compatibility to 5
++
++  [ Loic Minier ]
++  * Set LDFLAGS directly instead of via DEB_CONFIGURE_SCRIPT_ENV; build-dep on
++    cdbs >= 0.4.41.
++  * Fix metacity-common.install to list the correct dirs.
++
++ -- Loic Minier <lool@dooz.org>  Mon, 26 Mar 2007 22:27:08 +0200
++
++metacity (1:2.16.5-1) experimental; urgency=low
++
++  [ Loic Minier ]
++  * Add a get-orig-source target to retrieve the upstream tarball.
++  * Include the new check-dist Makefile to prevent accidental uploads to
++    unstable; bump build-dep on gnome-pkg-tools to >= 0.10.
++
++  [ Josselin Mouette ]
++  * 01_session_tolerate_missing_file.patch: register differently to the
++    session, in order to handle gracefully the case where a session file
++    is missing on the disk (closes: #315169, #391287).
++  * New upstream release.
++
++ -- Josselin Mouette <joss@debian.org>  Sun,  4 Mar 2007 10:29:40 +0100
++
++metacity (1:2.16.3-1) experimental; urgency=low
++
++  [ Marco Cabizza ]
++  * New upstream release.
++
++  [ Loic Minier ]
++  * Merge 1:2.14.5-2.
++
++  [ Josselin Mouette ]
++  * Use ${gnome:Version} and ${gnome:NextVersion} to loosen the
++    dependencies.
++  * Build-depend on gnome-pkg-tools 0.6.
++  * Call gnome-version.mk.
++  * Replace the x-dev build-dependency by x11proto-core-dev.
++
++ -- Josselin Mouette <joss@debian.org>  Tue, 21 Nov 2006 20:50:05 +0100
++
++metacity (1:2.16.2-1) experimental; urgency=low
++
++  * New upstream release, with backwards incompatible changes in internal API.
++
++ -- Loic Minier <lool@dooz.org>  Mon, 25 Sep 2006 17:47:56 +0200
++
++metacity (1:2.16.1-1) experimental; urgency=low
++
++  [ Loïc Minier ]
++  * Remove superfluous dh_installcatalogs call and bump cdbs build-dep to
++    >= 0.4.37, thanks Peter Eisentraut. (Closes: #361156)
++    [debian/control, debian/control.in, debian/rules]
++  * Don't mention non-existing Info documentation in the metacity and
++    metacity-message man pages, thanks Piotr Engelking. (Closes: #365450)
++    [debian/metacity.1, debian/metacity-message.1]
++  * Fix watch file.
++
++  [ Marco Cabizza ]
++  * New upstream release, target experimental:
++    - Bumping up libgtk2.0-dev build-dep to 2.10
++  * Setting myself as the maintainer.
++
++ -- Marco Cabizza <marco87@gmail.com>  Wed, 13 Sep 2006 18:46:45 +0200
++
++metacity (1:2.14.5-2) unstable; urgency=low
++
++  * Remove superfluous dh_installcatalogs call and bump cdbs build-dep to
++    >= 0.4.37, thanks Peter Eisentraut. (Closes: #361156)
++    [debian/control, debian/control.in, debian/rules]
++  * Don't mention non-existing Info documentation in the metacity and
++    metacity-message man pages, thanks Piotr Engelking. (Closes: #365450)
++    [debian/metacity.1, debian/metacity-message.1]
++  * Fix watch file.
++  * Fix typo in debian/metacity-message.1; thanks Per Bojsen; closes: #397864.
++
++ -- Loic Minier <lool@dooz.org>  Fri, 10 Nov 2006 09:38:49 +0100
++
++metacity (1:2.14.5-1) unstable; urgency=low
++
++  * New upstream release.
++
++ -- Loic Minier <lool@dooz.org>  Tue, 30 May 2006 15:47:36 +0200
++
++metacity (1:2.14.3-1) unstable; urgency=low
++
++  [ Gustavo Noronha Silva ]
++  * New upstream release.
++    + Doesn't steal focus (closes: #361273).
++
++  [ Josselin Mouette ]
++  * Make the package binNMU-safe.
++    + Build-depend on dpkg-dev 1.13.19.
++    + Use ${source:Version} and ${binary:Version}.
++  * Standards version is 3.7.2.
++  * Bump shlibs version to 2.14.
++
++  [ Loic Minier ]
++  * Stop shipping /usr/lib/*.la files in libmetacity-dev.
++    [debian/libmetacity-dev.install]
++
++ -- Josselin Mouette <joss@debian.org>  Sun, 14 May 2006 23:30:56 +0200
++
++metacity (1:2.14.1-2) unstable; urgency=low
++
++  * Simple rebuild to get rid of references to Xcursor.la / Xrender.la.
++
++ -- Loic Minier <lool@dooz.org>  Tue,  2 May 2006 16:45:22 +0200
++
++metacity (1:2.14.1-1) unstable; urgency=low
++
++  * New upstram version.
++    * Adds edge resistance. Closes: #191649.
++  * patches/000_raise-on-click.patch: Fixed upstream; dropped.
++
++ -- Dafydd Harries <daf@debian.org>  Thu, 30 Mar 2006 19:50:23 +0100
++
++metacity (1:2.12.3-3) unstable; urgency=low
++
++  * Also explicitely remove catalogs installed by past metacity packages.
++    [debian/metacity-common.preinst]
++  * Move these clenaups to postinst.
++    [debian/metacity-common.preinst, debian/metacity-common.postinst]
++
++ -- Loic Minier <lool@dooz.org>  Sun, 12 Feb 2006 16:53:48 +0100
++
++metacity (1:2.12.3-2) unstable; urgency=low
++
++  * Clean up metacity's postinst.
++    [debian/metacity.postinst]
++  * Clean up /etc/sgml/metacity.cat and .old left over by metacity.
++    [debian/metacity-common.preinst]
++
++ -- Loic Minier <lool@dooz.org>  Sun, 12 Feb 2006 16:35:07 +0100
++
++metacity (1:2.12.3-1) unstable; urgency=low
++
++  * New upstream release.
++  * Update patch to support a new raise on click mode and choice of this mode
++    to apply without fuzz.  Also note this patch has been rejected upstream.
++    [debian/patches/000_raise-on-click.patch]
++  * New metacity-common package holds arch-independent files and registers
++    schemas. (Closes: #218365, #234665, #240211)
++    [debian/metacity.dirs, debian/metacity-common.links,
++    debian/metacity.install, debian/control, debian/control.in,
++    debian/metacity-common.postinst, debian/metacity.catalog,
++    debian/metacity-common.manpages, debian/metacity.postrm,
++    debian/metacity-common.dirs, debian/metacity-common.install,
++    debian/metacity-common.catalog, debian/changelog,
++    debian/metacity-common.postrm, debian/rules, debian/metacity.links,
++    debian/metacity.postinst, debian/metacity.manpages]
++  * Actually ship license information.
++    [debian/copyright]
++  * Version the metacity and libmetacity dependency on metacity-common with
++    Source-Version.
++    [debian/control, debian/control.in]
++  * Install SGML catalogs with dh_installcatalogs, move them below
++    /usr/share/sgml/metacity-common, in the metacity-common package.
++    [debian/control, debian/control, debian/metacity-common.catalog,
++    debian/metacity-common.postinst, debian/metacity-common.postrm,
++    debian/metacity-common.sgmlcatalogs, debian/rules]
++  * Drop the /usr/share/metacity/dtd symlink.
++    [debian/metacity-common.links]
++  * Drop /usr/share/sgml/dtd creation.
++    [debian/metacity-common.dirs]
++  * Drop useless /usr/share/metacity from metacity-common.
++    [debian/metacity-common.install]
++  * Drop obsolete cleanup "rm -rf".
++    [debian/rules]
++  * Give .dtd installation to dh_install.
++    [debian/metacity-common.install, debian/rules]
++
++ -- Loic Minier <lool@dooz.org>  Sat, 11 Feb 2006 21:10:40 +0100
++
++metacity (1:2.12.2-3) unstable; urgency=high
++
++  * Add xorg build-deps (libice-dev, libsm-dev, libx11-dev, libxext-dev,
++    libxinerama-dev, libxrandr-dev, x-dev) thanks to "xlibs-split".
++    (Closes: #347000)
++    [debian/control, debian/control.in]
++  * Relibtoolizing would get Debian's AC_PATH_XTRA, but I add a libxt-dev
++    build-dep and pass --as-needed because the patch was like uh 1.1 MB.
++    [debian/control, debian/control.in, debian/rules]
++
++ -- Loic Minier <lool@dooz.org>  Mon,  9 Jan 2006 22:47:36 +0100
++
++metacity (1:2.12.2-2) unstable; urgency=low
++
++  * Upload to unstable.
++
++ -- Josselin Mouette <joss@debian.org>  Sun,  8 Jan 2006 01:49:55 +0100
++
++metacity (1:2.12.2-1) experimental; urgency=low
++
++  * New upstream release.
++
++ -- Jordi Mallach <jordi@debian.org>  Sun, 25 Dec 2005 23:20:10 +0100
++
++metacity (1:2.12.1-1) experimental; urgency=low
++
++  * New upstream release.
++  * watch: update for 2.12.
++  * 000_raise-on-click.patch: update to make patch apply cleanly.
++  * rules: bump shlibs for new symbols.
++
++ -- Josselin Mouette <joss@debian.org>  Sun,  9 Oct 2005 16:50:22 +0200
++
++metacity (1:2.10.3-2) unstable; urgency=low
++
++  * debian/control.in:
++    - don't Build-Depends on xlibs-pic, Build-Depend on libxinerama-dev
++      (Closes: #320589).
++  * debian/patches/000_metacity-debian-xinerama-pic.patch:
++    - not useful with xorg.
++
++ -- Sebastien Bacher <seb128@debian.org>  Tue,  2 Aug 2005 17:40:43 +0200
++
++metacity (1:2.10.3-1) unstable; urgency=low
++
++  * New upstream version.
++  * Bump Standards-Version to 3.6.2.
++  * Add CDBS' utils to rules.
++
++ -- Loic Minier <lool@dooz.org>  Fri, 29 Jul 2005 10:56:05 +0200
++
++metacity (1:2.10.2-1) unstable; urgency=low
++
++  * New upstream version.
++
++ -- Sebastien Bacher <seb128@debian.org>  Tue, 28 Jun 2005 23:09:14 +0200
++
++metacity (1:2.10.1-2) unstable; urgency=low
++
++  * Upload to unstable.
++
++ -- Jordi Mallach <jordi@debian.org>  Sun, 12 Jun 2005 19:03:18 +0200
++
++metacity (1:2.10.1-1) experimental; urgency=low
++
++  * New upstream version.
++
++ -- Sebastien Bacher <seb128@debian.org>  Wed, 13 Apr 2005 17:35:20 +0200
++
++metacity (1:2.10.0-1) experimental; urgency=low
++
++  * New upstream version.
++  * debian/patches/000_raise-on-click.patch:
++    - updated.
++  * debian/watch:
++    - updated.
++
++ -- Sebastien Bacher <seb128@debian.org>  Fri,  8 Apr 2005 21:33:44 +0200
++
++metacity (1:2.8.8-1) unstable; urgency=low
++
++  * GNOME team upload.
++  * New upstream release.
++
++ -- Jordi Mallach <jordi@debian.org>  Wed, 29 Dec 2004 17:18:05 +0100
++
++metacity (1:2.8.6-1) unstable; urgency=low
++
++  * New upstream release.
++  * Upload to unstable.
++
++ -- Sebastien Bacher <seb128@debian.org>  Thu, 18 Nov 2004 13:23:27 +0100
++
++metacity (1:2.8.5-2) experimental; urgency=low
++
++  * debian/metacity.postinst:
++    - removed the static gconf registration.
++  * debian/metacity-theme-viewer.1:
++    - manpage written by Jose M. Moya" <josem@die.upm.es> (Closes: #252108).
++  * debian/metacity-window-demo.1:
++    - manpage written by Jose M. Moya" <josem@die.upm.es> (Closes: #252110).
++  * debian/metacity.manpages:
++    - updated.
++
++ -- Sebastien Bacher <seb128@debian.org>  Fri, 17 Sep 2004 22:11:51 +0200
++
++metacity (1:2.8.5-1) experimental; urgency=low
++
++  * GNOME team upload.
++  * New upstream release.
++  * Sebastien Bacher:
++    - Switched to CDBS.
++    - debian/rules: converted to CDBS
++    - debian/*.files: replaced with .install files.
++  * J.H.M. Dassen (Ray):
++    - [debian/control.in] Bumped libstartup-notification0-dev as
++      configure requires 0.7.
++  * Jordi Mallach:
++    - debian/control.in: add cdbs to build-deps.
++
++ -- Jordi Mallach <jordi@debian.org>  Tue, 14 Sep 2004 20:30:36 +0200
++
++metacity (1:2.8.1-4) unstable; urgency=low
++
++  * debian/rules:
++    - added a dh_gconf call.
++  * debian/metacity.postinst:
++    - removed the static schemas registration, dh_gconf handles that right.
++
++ -- Sebastien Bacher <seb128@debian.org>  Fri,  6 Aug 2004 18:17:03 +0200
++
++metacity (1:2.8.1-3) unstable; urgency=low
++
++  * GNOME Team Upload.
++  * Upload in unstable.
++
++ -- Sebastien Bacher <seb128@debian.org>  Wed, 26 May 2004 14:28:32 +0200
++
++metacity (1:2.8.1-2) experimental; urgency=low
++
++  * debian/patches/000_raise-on-click.patch:
++    + patch from bugzilla to choose to raise or not the window which has
++      the focus in mouse and sloppy modes. (Closes: #228768).
++      The gconf key to use is /apps/metacity/general/raise_on_click.
++  * Gnome Team Upload.
++
++ -- Sebastien Bacher <seb128@debian.org>  Wed, 26 May 2004 14:19:51 +0200
++
++metacity (1:2.8.1-1) experimental; urgency=low
++
++  * New upstream release.
++  * debian/patches/000_metacity-debian-xinerama-pic.patch:
++    + updated
++  * GNOME Team Upload.
++
++ -- Sebastien Bacher <seb128@debian.org>  Wed,  5 May 2004 21:17:15 +0200
++
++metacity (1:2.8.0-3) experimental; urgency=low
++
++  * GNOME team upload.
++  * debian/rules: get the epoch included in the shlib version for
++    libmetacity0.
++
++ -- Jordi Mallach <jordi@debian.org>  Tue,  6 Apr 2004 14:04:36 +0200
++
++metacity (1:2.8.0-2) experimental; urgency=low
++
++  * Added Build-Depends on gnome-pkg-tools and libxml-parser-perl
++    (Closes: #240639).
++
++ -- Sebastien Bacher <seb128@debian.org>  Sat,  3 Apr 2004 23:46:56 +0200
++
++metacity (1:2.8.0-1) experimental; urgency=low
++
++  * New upstream release:
++    + converts "show desktop mode" to "all windows are minimized" when
++      you open a new window (Closes: #217467).
++    + fixes bug with panel not listed before clicking on them
++      (Closes: #224054).
++    + fixes multi-tab handling (Closes: #227708).
++    + includes always on top menu entry (Closes: #204212).
++    + includes wireframes support (Closes: #184849).
++    + should fix bug with applications changing workspace
++      (Closes: #224156, #230782).
++    + switches window truncates title (Closes: #186324).
++  * debian/control.in, debian/rules:
++    + adapted for the Gnome Team.
++  * debian/patches/000_metacity-debian-xinerama-pic.patch:
++    + updated.
++  * debian/patches/001_metacity-focus.patch:
++    + removed since the changes are included in the new version.
++  * debian/watch:
++    + updated to 2.8 branch.
++
++ -- Sebastien Bacher <seb128@debian.org>  Sun, 28 Mar 2004 12:26:22 +0200
++
++metacity (1:2.6.3-2) unstable; urgency=low
++
++  * debian/patches/001_metacity-focus.patch :
++    + new patch to fix focus problem with panels in mouse and sloppy modes
++      (Closes: #224858).
++  * Gnome Team Upload.
++
++ -- Sebastien Bacher <seb128@debian.org>  Sun, 18 Jan 2004 19:31:49 +0100
++
++metacity (1:2.6.3-1) unstable; urgency=low
++
++  * New upstream release.
++  * Gnome Team Upload.
++
++ -- Sebastien Bacher <seb128@debian.org>  Sat, 20 Dec 2003 23:17:21 +0100
++
++metacity (1:2.6.2-2) unstable; urgency=low
++
++  * debian/patches/000_metacity-debian-xinerama-pic.patch:
++    - updated to fix a link problem (Closes: #216693).
++
++ -- Sebastien Bacher <seb128@debian.org>  Tue, 21 Oct 2003 13:56:24 +0200
++
++metacity (1:2.6.2-1) unstable; urgency=low
++
++  * New upstream release.
++  * debian/patches/:
++    - 000_metacity-2.4.34-usage.patch: removed.
++    - 000_metacity-debian-xinerama-pic.patch: updated.
++    - 001_metacity-2.4.55-non-weak-symbols.patch: removed.
++  * Update Build-Depends.
++  * Gnome Team Upload.
++
++ -- Sebastien Bacher <seb128@debian.org>  Sat, 18 Oct 2003 19:33:23 +0200
++
++metacity (1:2.4.55-3) unstable; urgency=low
++
++  * debian/metacity.1:
++    - fixed the incorrect option. (closes: Bug#209159)
++  * debian/metacity.prerm:
++    - fixed removing alternatives issue. (closes: Bug#211502)
++
++ -- Akira TAGOH <tagoh@debian.org>  Wed,  8 Oct 2003 18:44:56 +0900
++
++metacity (1:2.4.55-2) unstable; urgency=low
++
++  * debian/patches/000_metacity-debian-xinerama-pic.patch:
++    - update to fix the unnecessary library dependencies in .la.
++      (closes: Bug#195774)
++
++ -- Akira TAGOH <tagoh@debian.org>  Thu, 12 Jun 2003 01:25:45 +0900
++
++metacity (1:2.4.55-1) unstable; urgency=low
++
++  * New upstream release.
++  * debian/patches/:
++    - 000_metacity-2.4.34-save-workspace.patch: removed.
++    - 001_metacity-2.4.55-non-weak-symbols.patch: updated.
++
++ -- Akira TAGOH <tagoh@debian.org>  Mon,  2 Jun 2003 02:50:50 +0900
++
++metacity (1:2.4.34-3) unstable; urgency=low
++
++  * debian/control:
++    - suggests gnome-control-center instead of metacity-properties.
++      (closes: Bug#192752)
++    - bumped Standards-Version to 3.5.10.0.
++  * debian/patches/001_metacity-2.4.34-non-weak-symbols.patch:
++    - applied a backported patch to fix undefined non-weak symbols.
++      (closes: Bug#187347)
++  * debian/metacity.postinst:
++    - set a priority to 60 for x-window-manager according to the latest
++      policy.
++
++ -- Akira TAGOH <tagoh@debian.org>  Mon, 19 May 2003 06:30:37 +0900
++
++metacity (1:2.4.34-2) unstable; urgency=low
++
++  * Revert to 2.4.34 to use stable release.
++    - should works now. (closes: Bug#187749, Bug#187387, Bug#187982)
++  * debian/README.Debian:
++    - described NVidia drivers issue. (closes: Bug#181056)
++  * debian/patches/:
++    - 000_metacity-2.4.34-usage.patch: applied it again.
++    - 000_metacity-2.4.34-save-workspace.patch: applied a backported patch
++      from CVS to really fix Bug#186033 in 2.4.34.
++    - 000_metacity-2.5.0-noframe-window.patch: removed.
++
++ -- Akira TAGOH <tagoh@debian.org>  Mon, 14 Apr 2003 00:29:52 +0900
++
++metacity (2.5.0-2) unstable; urgency=low
++
++  * debian/patches/:
++    - 000_metacity-debian-xinerama-pic.patch:
++      use libXinerama_pic.a instead of libXinerama.a.
++    - 000_metacity-2.5.0-noframe-window.patch:
++      applied a backported patch from CVS to work no frame window.
++      (closes: Bug#187316)
++  * debian/control:
++    - requires xlibs-pic >= 4.2.1-6.
++
++ -- Akira TAGOH <tagoh@debian.org>  Fri,  4 Apr 2003 04:26:49 +0900
++
++metacity (2.5.0-1) unstable; urgency=low
++
++  * New upsream release.
++    - Workspace names are saved now. (closes: Bug#186033)
++  * debian/control:
++    - bumped Standards-Version to 3.5.9.
++    - changed a section for libmetacity-dev to libdevel.
++  * debian/compat:
++    - use it instead of DH_COMPAT.
++  * debian/patches/
++    - 000_metacity-2.4.34-usage.patch: removed.
++
++ -- Akira TAGOH <tagoh@debian.org>  Wed,  2 Apr 2003 00:16:38 +0900
++
++metacity (2.4.34-1) unstable; urgency=low
++
++  * New upstream release.
++    - contains a fix of 64-bit bug. so should be fixed. (closes: Bug#179698)
++    - should be fixed. (closes: Bug#177814)
++  * debian/patches/000_metacity-2.4.34-usage.patch:
++    applied to fix a typo in usage. (closes: Bug#179699)
++
++ -- Akira TAGOH <tagoh@debian.org>  Fri,  7 Feb 2003 04:38:32 +0900
++
++metacity (2.4.21-2) unstable; urgency=low
++
++  * debian/control:
++    - suggests metacity-properties instead of gnome-control-center.
++  * debian/metacity.docs:
++    - moved from libmetacity0. (closes: Bug#178966)
++  * debian/metacity.postinst:
++    - run gconftool-2 with HOME=/root
++
++ -- Akira TAGOH <tagoh@debian.org>  Sun,  2 Feb 2003 16:50:02 +0900
++
++metacity (2.4.21-1) unstable; urgency=low
++
++  * New upstream release.
++  * debian/patches/:
++    - 000_metacity-2.4.13-args.patch: removed, because it was merged to the
++      upstream.
++    - 000_metacity-2.4.8-properties.patch: removed.
++  * debian/control: add Suggests: gnome-control-center.
++  * debian/rules: drop --enable-config-dialog. metacity-properties is
++    obsolete. use gnome-window-properties in gnome-control-center instead of.
++
++ -- Akira TAGOH <tagoh@debian.org>  Wed, 29 Jan 2003 00:39:57 +0900
++
++metacity (2.4.13-2) unstable; urgency=low
++
++  * debian/docs: add NEWS file (closes: Bug#176317)
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue, 14 Jan 2003 23:15:48 +0900
++
++metacity (2.4.13-1) unstable; urgency=low
++
++  * New upstream release.
++  * debian/control:
++    - updated Build-Depends.
++    - add libgtk2.0-dev to Depends for libmetacity-dev
++  * debian/rules: enable startup-notification.
++  * debian/patches/:
++    - 000_metacity-2.4.8-dont-pass-NULL.patch:
++      removed.
++    - 000_metacity-2.4.13-args.patch:
++      applied to fix the working of configure options.
++
++ -- Akira TAGOH <tagoh@debian.org>  Sat, 11 Jan 2003 07:06:24 +0900
++
++metacity (2.4.8-4) unstable; urgency=low
++
++  * upstream bug was closed. so it should be fixed. (closes: Bug#152075)
++  * debian/rules: don't use dh_installwm until it will supports the
++    registration of manpage as slave.
++  * debian/metacity.postinst: runs update-alternatives. (closes: Bug#175756)
++  * debian/metacity.prerm: runs update-alternatives.
++
++ -- Akira TAGOH <tagoh@debian.org>  Thu,  9 Jan 2003 03:40:15 +0900
++
++metacity (2.4.8-3) unstable; urgency=low
++
++  * debian/metacity.postinst:
++    fix the wrong registration. (closes: Bug#173789, Bug#174358)
++
++ -- Akira TAGOH <tagoh@debian.org>  Fri, 27 Dec 2002 05:01:25 +0900
++
++metacity (2.4.8-2) unstable; urgency=low
++
++  * debian/patches/000_metacity-2.4.8-dont-pass-NULL.patch:
++    applied to fix the segfault at startup. (closes: Bug#173594, Bug#173604)
++
++ -- Akira TAGOH <tagoh@debian.org>  Fri, 20 Dec 2002 01:08:43 +0900
++
++metacity (2.4.8-1) unstable; urgency=low
++
++  * New upstream release.
++  * debian/patches/000_metacity-2.4.3-stack.patch:
++    removed, because this release contains it.
++  * debian/control:
++    - fix description-synopsis-ends-with-full-stop.
++    - add libmetacity0 and libmetacity-dev
++  * debian/rules:
++    - install metacity-theme.dtd as a sgml catalog. (closes: Bug#170041)
++    - build with --enable-config-dialog until we upload GNOME 2.2.
++  * debian/metacity.postinst:
++    - use gconftool-2 --get-default-source to get GCONF_CONFIG_SOURCE
++    - runs update-catalog.
++  * debian/patches/000_metacity-2.4.8-properties.patch:
++    applied to fix the missing file.
++
++ -- Akira TAGOH <tagoh@debian.org>  Thu, 12 Dec 2002 09:21:35 +0900
++
++metacity (2.4.3-2) unstable; urgency=low
++
++  * debian/patches/000_metacity-2.4.3-stack.patch: backported to fix the
++    random crashes. (closes: Bug#168653)
++
++ -- Akira TAGOH <tagoh@debian.org>  Wed, 13 Nov 2002 00:32:14 +0900
++
++metacity (2.4.3-1) unstable; urgency=low
++
++  * New upstream release. (closes: Bug#166919)
++  * debian/rules: support noopt option for DEB_BUILD_OPTIONS.
++  * debian/control: improve a description. Thanks stephen farrell.
++
++ -- Akira TAGOH <tagoh@debian.org>  Thu,  7 Nov 2002 23:16:47 +0900
++
++metacity (2.4.1-1) unstable; urgency=low
++
++  * New upstream release. (closes: Bug#160535)
++    - Should be fixed. (closes: Bug#157995)
++  * Set a priority to 40 for x-window-manager according to Bug#155680.
++    (closes: Bug#155494)
++  * debian/metacity.1: updated.
++  * debian/metacity-message.1: added.
++  * debian/control:
++    - bumped Standards-Version to 3.5.7.
++    - updated Build-Depends.
++
++ -- Akira TAGOH <tagoh@debian.org>  Sat, 14 Sep 2002 20:01:35 +0900
++
++metacity (2.4.0-1) unstable; urgency=low
++
++  * New upstream release.
++    - switching the workspaces should works now. (closes: Bug#151500)
++  * debian/control: update Build-Depends for libgtk2.0-dev.
++
++ -- Akira TAGOH <tagoh@debian.org>  Fri,  9 Aug 2002 02:35:15 +0900
++
++metacity (2.3.987-1) unstable; urgency=low
++
++  * New upstream release.
++  * debian/control: add libglade2-dev to Build-Depends (closes: Bug#149489)
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue, 11 Jun 2002 14:38:06 +0900
++
++metacity (2.3.610-1) unstable; urgency=low
++
++  * New upstream release.
++    - Should be fixed in this release. (closes: Bug#146127)
++
++ -- Akira TAGOH <tagoh@debian.org>  Wed,  5 Jun 2002 19:15:41 +0900
++
++metacity (2.3.377-2) unstable; urgency=low
++
++  * debian/docs: includes theme-format.txt (closes: Bug#147644)
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue, 21 May 2002 19:24:00 +0900
++
++metacity (2.3.377-1) unstable; urgency=low
++
++  * New upstream release.
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue, 21 May 2002 11:02:28 +0900
++
++metacity (2.3.233-2) unstable; urgency=low
++
++  * debian/control: fix the misleading description. (closes: Bug#145942)
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue,  7 May 2002 14:29:36 +0900
++
++metacity (2.3.233-1) unstable; urgency=low
++
++  * New upstream release.
++
++ -- Akira TAGOH <tagoh@debian.org>  Sun,  5 May 2002 03:21:05 +0900
++
++metacity (2.3.144-2) unstable; urgency=low
++
++  * debian/control: Add Provides: x-window-manager.
++
++ -- Akira TAGOH <tagoh@debian.org>  Fri,  3 May 2002 07:31:17 +0900
++
++metacity (2.3.144-1) unstable; urgency=low
++
++  * New upstream release.
++    - keybindings are configurable now. (closes: Bug#144657)
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue, 30 Apr 2002 03:32:36 +0900
++
++metacity (2.3.89-1) unstable; urgency=low
++
++  * New upstream release.
++  * debian/scripts/vars.build: fix bashism.
++  * debian/rules: add GCONF_DISABLE_MAKEFILE_SCHEMA_INSTALL=yes to install
++    rule.
++  * debian/metacity.manpages: remove metacity-restart.1 entry. this command
++    no longer exists.
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue, 16 Apr 2002 21:35:19 +0900
++
++metacity (2.3.55-1) unstable; urgency=low
++
++  * I have taken over from Thom.
++  * New upstream release.
++  * Build against the latest libraries (closes: Bug#139215)
++  * debian/rules:
++    - support DEB_HOST_GNU_TYPE and DEB_BUILD_GNU_TYPE.
++    - support debug and nostrip options for DEB_BUILD_OPTIONS.
++    - copying the latest config.sub and config.guess.
++
++ -- Akira TAGOH <tagoh@debian.org>  Tue, 26 Mar 2002 02:18:26 +0900
++
++metacity (2.3.34-2) unstable; urgency=low
++
++  * Added build-depend on docbook-to-man (Closes: #134433)
++
++ -- Thom May <thom@debian.org>  Sun, 17 Feb 2002 20:14:28 +0000
++
++metacity (2.3.34-1) unstable; urgency=low
++
++  * Initial Release. (Closes: #107181)
++
++ -- Thom May <thom@debian.org>  Sun, 10 Feb 2002 12:03:22 +0000
++
diff --cc debian/compat
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..b4de3947675361a7770d29b8982c407b0ec6b2a0
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++11
diff --cc debian/control
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..498aaa683da10b9781187794f9fc77054085268f
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,184 @@@
++# This file is autogenerated. DO NOT EDIT!
++#
++# Modifications should be made to debian/control.in instead.
++# This file is regenerated automatically in the clean target.
++Source: mutter
++Section: x11
++Priority: optional
++Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
++Uploaders: Jeremy Bicha <jbicha@debian.org>
++Build-Depends: debhelper (>= 11),
++               gnome-pkg-tools (>= 0.10),
++               gtk-doc-tools (>= 1.15),
++               libgtk-3-dev (>= 3.19.8),
++               libglib2.0-dev (>= 2.53.2),
++               libcanberra-gtk3-dev,
++               gobject-introspection (>= 1.41.3),
++               gsettings-desktop-schemas-dev (>= 3.21.4),
++               libgirepository1.0-dev (>= 0.9.12),
++               libjson-glib-dev (>= 0.13.2-1~),
++               libgbm-dev (>= 17.1),
++               libpango1.0-dev (>= 1.2.0),
++               libcairo2-dev (>= 1.10.0),
++               libcogl-dev,
++               libgl1-mesa-dev (>= 7.1~rc3-1~),
++               libdrm-dev (>= 2.4.83) [!hurd-any],
++               libegl1-mesa-dev (>= 17),
++               libgnome-desktop-3-dev (>= 3.27.90),
++               libgudev-1.0-dev (>= 232) [linux-any],
++               libinput-dev [linux-any],
++               libstartup-notification0-dev (>= 0.7),
++               libsystemd-dev (>= 212) [linux-any],
++               libupower-glib-dev (>= 0.99.0),
++               libwacom-dev (>= 0.13) [linux-any],
++               libxcb-randr0-dev,
++               libxcb-res0-dev,
++               libxcomposite-dev (>= 1:0.2),
++               libxi-dev (>= 2:1.6.0),
++               libxkbfile-dev,
++               libxkbcommon-x11-dev,
++               libxkbcommon-dev (>= 0.4.3),
++               libx11-xcb-dev,
++               libxfixes-dev,
++               libxdamage-dev,
++               libxcursor-dev,
++               libxt-dev,
++               libx11-dev,
++               libxinerama-dev,
++               libxext-dev,
++               libxrandr-dev,
++               libxrender-dev,
++               libsm-dev,
++               libice-dev,
++               libpam0g-dev,
++               libwayland-dev (>= 1.13.0) [linux-any],
++               wayland-protocols (>= 1.12) [linux-any],
++               xkb-data,
++               xvfb <!nocheck>,
++               xauth <!nocheck>,
++               zenity
++Standards-Version: 4.1.4
++Vcs-Git: https://salsa.debian.org/gnome-team/mutter.git
++Vcs-Browser: https://salsa.debian.org/gnome-team/mutter
++
++Package: mutter
++Architecture: any
++Depends: ${shlibs:Depends},
++         ${misc:Depends},
++         mutter-common (>= ${source:Version}),
++         gnome-settings-daemon,
++         gsettings-desktop-schemas (>= 3.21.4),
++         zenity
++Provides: x-window-manager
++Suggests: gnome-control-center (>= 1:3.25.2),
++          xdg-user-dirs
++Description: lightweight GTK+ window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the core binaries.
++
++Package: libmutter-2-0
++Section: libs
++Architecture: any
++Multi-Arch: same
++Pre-Depends: ${misc:Pre-Depends}
++Depends: ${shlibs:Depends},
++         ${misc:Depends},
++         gsettings-desktop-schemas (>= 3.15.92),
++         mutter-common (>= ${source:Version})
++Breaks: gnome-control-center (<< 1:3.25.2)
++Description: window manager library from the Mutter window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the window manager shared library, used by mutter
++ itself, and gnome-shell.
++
++Package: mutter-common
++Section: misc
++Architecture: all
++Multi-Arch: foreign
++Depends: ${misc:Depends}
++Description: shared files for the Mutter window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the shared files.
++
++Package: libmutter-2-dev
++Section: libdevel
++Architecture: any
++Multi-Arch: same
++Depends: ${misc:Depends},
++         libmutter-2-0 (= ${binary:Version}),
++         gir1.2-mutter-2 (= ${binary:Version}),
++         gsettings-desktop-schemas-dev,
++         libgtk-3-dev,
++         libcairo2-dev,
++         libglib2.0-dev,
++         libatk1.0-dev,
++         libpango1.0-dev,
++         libjson-glib-dev,
++         libegl1-mesa-dev,
++         libwayland-dev,
++         libdrm-dev,
++         libgbm-dev,
++         libinput-dev (>= 1.4),
++         libudev-dev,
++         libx11-dev,
++         libxext-dev,
++         libxdamage-dev,
++         libxcomposite-dev,
++         libxi-dev,
++         libgdk-pixbuf2.0-dev,
++         libxfixes-dev,
++         libxrandr-dev,
++         libx11-dev
++Conflicts: libmutter-0-dev, libmutter-1-dev
++Description: Development files for the Mutter window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the development files.
++
++Package: gir1.2-mutter-2
++Section: introspection
++Architecture: any
++Multi-Arch: same
++Depends: ${gir:Depends},
++         ${shlibs:Depends},
++         ${misc:Depends},
++         libmutter-2-0 (= ${binary:Version})
++Breaks: gnome-shell (<< 3.13.92~)
++Description: GObject introspection data for Mutter
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the GObject introspection data which may be
++ used to generate dynamic bindings.
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..f4099cb8ab347b5efcb14684b748e9abc9d4b043
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,180 @@@
++Source: mutter
++Section: x11
++Priority: optional
++Maintainer: Debian GNOME Maintainers <pkg-gnome-maintainers@lists.alioth.debian.org>
++Uploaders: @GNOME_TEAM@
++Build-Depends: debhelper (>= 11),
++               gnome-pkg-tools (>= 0.10),
++               gtk-doc-tools (>= 1.15),
++               libgtk-3-dev (>= 3.19.8),
++               libglib2.0-dev (>= 2.53.2),
++               libcanberra-gtk3-dev,
++               gobject-introspection (>= 1.41.3),
++               gsettings-desktop-schemas-dev (>= 3.21.4),
++               libgirepository1.0-dev (>= 0.9.12),
++               libjson-glib-dev (>= 0.13.2-1~),
++               libgbm-dev (>= 17.1),
++               libpango1.0-dev (>= 1.2.0),
++               libcairo2-dev (>= 1.10.0),
++               libcogl-dev,
++               libgl1-mesa-dev (>= 7.1~rc3-1~),
++               libdrm-dev (>= 2.4.83) [!hurd-any],
++               libegl1-mesa-dev (>= 17),
++               libgnome-desktop-3-dev (>= 3.27.90),
++               libgudev-1.0-dev (>= 232) [linux-any],
++               libinput-dev [linux-any],
++               libstartup-notification0-dev (>= 0.7),
++               libsystemd-dev (>= 212) [linux-any],
++               libupower-glib-dev (>= 0.99.0),
++               libwacom-dev (>= 0.13) [linux-any],
++               libxcb-randr0-dev,
++               libxcb-res0-dev,
++               libxcomposite-dev (>= 1:0.2),
++               libxi-dev (>= 2:1.6.0),
++               libxkbfile-dev,
++               libxkbcommon-x11-dev,
++               libxkbcommon-dev (>= 0.4.3),
++               libx11-xcb-dev,
++               libxfixes-dev,
++               libxdamage-dev,
++               libxcursor-dev,
++               libxt-dev,
++               libx11-dev,
++               libxinerama-dev,
++               libxext-dev,
++               libxrandr-dev,
++               libxrender-dev,
++               libsm-dev,
++               libice-dev,
++               libpam0g-dev,
++               libwayland-dev (>= 1.13.0) [linux-any],
++               wayland-protocols (>= 1.12) [linux-any],
++               xkb-data,
++               xvfb <!nocheck>,
++               xauth <!nocheck>,
++               zenity
++Standards-Version: 4.1.4
++Vcs-Git: https://salsa.debian.org/gnome-team/mutter.git
++Vcs-Browser: https://salsa.debian.org/gnome-team/mutter
++
++Package: mutter
++Architecture: any
++Depends: ${shlibs:Depends},
++         ${misc:Depends},
++         mutter-common (>= ${source:Version}),
++         gnome-settings-daemon,
++         gsettings-desktop-schemas (>= 3.21.4),
++         zenity
++Provides: x-window-manager
++Suggests: gnome-control-center (>= 1:3.25.2),
++          xdg-user-dirs
++Description: lightweight GTK+ window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the core binaries.
++
++Package: libmutter-2-0
++Section: libs
++Architecture: any
++Multi-Arch: same
++Pre-Depends: ${misc:Pre-Depends}
++Depends: ${shlibs:Depends},
++         ${misc:Depends},
++         gsettings-desktop-schemas (>= 3.15.92),
++         mutter-common (>= ${source:Version})
++Breaks: gnome-control-center (<< 1:3.25.2)
++Description: window manager library from the Mutter window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the window manager shared library, used by mutter
++ itself, and gnome-shell.
++
++Package: mutter-common
++Section: misc
++Architecture: all
++Multi-Arch: foreign
++Depends: ${misc:Depends}
++Description: shared files for the Mutter window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the shared files.
++
++Package: libmutter-2-dev
++Section: libdevel
++Architecture: any
++Multi-Arch: same
++Depends: ${misc:Depends},
++         libmutter-2-0 (= ${binary:Version}),
++         gir1.2-mutter-2 (= ${binary:Version}),
++         gsettings-desktop-schemas-dev,
++         libgtk-3-dev,
++         libcairo2-dev,
++         libglib2.0-dev,
++         libatk1.0-dev,
++         libpango1.0-dev,
++         libjson-glib-dev,
++         libegl1-mesa-dev,
++         libwayland-dev,
++         libdrm-dev,
++         libgbm-dev,
++         libinput-dev (>= 1.4),
++         libudev-dev,
++         libx11-dev,
++         libxext-dev,
++         libxdamage-dev,
++         libxcomposite-dev,
++         libxi-dev,
++         libgdk-pixbuf2.0-dev,
++         libxfixes-dev,
++         libxrandr-dev,
++         libx11-dev
++Conflicts: libmutter-0-dev, libmutter-1-dev
++Description: Development files for the Mutter window manager
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the development files.
++
++Package: gir1.2-mutter-2
++Section: introspection
++Architecture: any
++Multi-Arch: same
++Depends: ${gir:Depends},
++         ${shlibs:Depends},
++         ${misc:Depends},
++         libmutter-2-0 (= ${binary:Version})
++Breaks: gnome-shell (<< 3.13.92~)
++Description: GObject introspection data for Mutter
++ Mutter is a small window manager, using GTK+ and Clutter to do
++ everything.
++ .
++ Mutter is the clutter-based evolution of Metacity, which, as the
++ author says, is a "Boring window manager for the adult in you. Many
++ window managers are like Marshmallow Froot Loops; Metacity is like
++ Cheerios."
++ .
++ This package contains the GObject introspection data which may be
++ used to generate dynamic bindings.
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..ed9f6986da313976f68568babb27b6c04a9d4cbc
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,89 @@@
++This package was debianized by Thom May <thom@debian.org> on
++Sun, 10 Feb 2002 12:03:22 +0000.
++
++It was downloaded from https://download.gnome.org/sources/mutter/
++
++Upstream Author: Havoc Pennington <hp@redhat.com>
++
++Copyright:
++   Copyright © 2001-2008  Havoc Pennington, Red Hat, Inc., and others
++   Copyright © 2002       The Gnome Foundation
++   Copyright © 2007       The GNOME Project
++   Copyright © 2002       Ross Burton
++   Copyright © 2004-2006  Elijah Newren
++   Copyright © 2001       Dominik Vogt, Matthias Clasen, and fvwm2 team
++   Copyright © 2003-2004  Rob Adams
++   Copyright © 2002       Sun Microsystems, Inc.
++   Copyright © 1986-1998  The Open Group
++   Copyright © 1987       Digital Equipment Corporation
++   Copyright © 2001       Anders Carlsson
++   Copyright © 2008       Thomas Thurman
++   Copyright © 1995-2000  GTK+ Team
++   Copyright © 1988       Wyse Technology, Inc.,
++   Copyright © 2008       Iain Holmes
++   Copyright © 2000-2001  Eazel, Inc.
++   Copyright © 2001       Ximian, Inc.
++   Copyright © 2002       Gaute Lindkvist
++   Copyright © 2002       James M. Cape
++   Copyright © 2002       Garrett LeSage
++   Copyright © 2002       Tuomas Kuosmanen
++   Copyright © 2002       Jorn Baayen
++   Copyright © 1997-2000  Dan Pascu and Alfredo Kojima
++   Copyright © 1995-1997  Peter Mattis, Spencer Kimball and Josh MacDonald
++   Copyright © 1998       Tim Janik
++   Copyright © 1999-2007  Free Software Foundation, Inc.
++   Copyright © 1995-1997  Ulrich Drepper
++   Copyright © 1994       X Consortium
++   Copyright © 2004-2008  Rodney Dawes
++   Copyright © 2004       Scott James Remnant
++   Copyright © 2002       Simos Xenitellis
++   Copyright © 2003-2006  Miloslav Trmac
++   Copyright © 2008       GNOME i18n Project for Vietnamese
++   Copyright © 2003-2006  Sharif FarsiWeb, Inc.
++   Copyright © 2003       Åsmund Skjæveland.
++   Copyright © 2005-2006  Canonical Ltd. and Rosetta Contributors
++   Copyright © 2004-2006  Adam Weinberger and the GNOME Foundation
++   Copyright © 2004       Kakilik Project
++   Copyright ©            Croatiann team
++   Copyright © 2007-2008  OpenedHand
++   Copyright © 2008-2009  Intel Corporation
++   Copyright © 2008       Matthew Allum
++
++License:
++
++   This package is free software; you can redistribute it and/or modify
++   it under the terms of the GNU General Public License as published by
++   the Free Software Foundation; either version 2 of the License, or
++   (at your option) any later version.
++
++   This package is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
++   GNU General Public License for more details.
++
++   You should have received a copy of the GNU General Public License
++   along with this package; if not, write to the Free Software
++   Foundation, Inc., 51 Franklin St, Fifth Floor, Boston, MA  02110-1301 USA
++
++On Debian systems, the complete text of the GNU General
++Public License can be found in `/usr/share/common-licenses/GPL'.
++
++Files: src/ui/metaaccellabel.c src/ui/metaaccellabel.h
++License:
++   This library is free software; you can redistribute it and/or
++   modify it under the terms of the GNU Lesser General Public
++   License as published by the Free Software Foundation; either
++   version 2 of the License, or (at your option) any later version.
++
++   This library is distributed in the hope that it will be useful,
++   but WITHOUT ANY WARRANTY; without even the implied warranty of
++   MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the GNU
++   Lesser General Public License for more details.
++
++   You should have received a copy of the GNU Lesser General Public
++   License along with this library; if not, write to the
++   Free Software Foundation, Inc., 51 Franklin St, Fifth Floor,
++   Boston, MA  02110-1301 USA
++
++On Debian systems, the complete text of the GNU General
++Public License can be found in `/usr/share/common-licenses/LGPL'.
diff --cc debian/gbp.conf
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..e0196c44d71eab42fd2058aee7ca50ab54f559c6
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,5 @@@
++[DEFAULT]
++pristine-tar = True
++debian-branch = debian/master
++upstream-branch = upstream/latest
++upstream-vcs-tag = %(version)s
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..c44ed041948e3f7b621fc0cd51d83fe22f5bdf5a
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++usr/lib/*/mutter/*.typelib
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..64759ea408cb7cdf2295a7dcc2be34aecca1112f
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,2 @@@
++usr/lib/*/libmutter-2.so.*
++usr/lib/*/mutter/*.so
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..91a880d0e4762b986cefa23b04bc49420e8a8d03
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,4 @@@
++usr/include
++usr/lib/*/lib*.so
++usr/lib/*/pkgconfig/*.pc
++usr/lib/*/mutter/*.gir
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..132e43be7a0f543bc5db436c1dc3909f3b7c8afb
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,5 @@@
++usr/share/GConf
++usr/share/glib-2.0
++usr/share/locale
++usr/share/man
++usr/share/gnome-control-center
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..e38228fb1f7eddc359bb107c11643ed1d3e7cc1c
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,4 @@@
++usr/bin
++usr/lib/mutter/mutter-restart-helper
++usr/lib/*/mutter/plugins
++usr/share/applications
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..0dc00979982bcb1b38d07bf15ba93f4d776acfb7
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,16 @@@
++#!/bin/sh
++
++set -e
++
++action="$1"
++
++if [ "$action" = configure ]; then
++    # register the alternatives of x-window-manager manually
++    # because dh_installwm doesn't register manpage as slave yet.
++    update-alternatives --install /usr/bin/x-window-manager \
++        x-window-manager /usr/bin/mutter 60 \
++        --slave /usr/share/man/man1/x-window-manager.1.gz \
++        x-window-manager.1.gz /usr/share/man/man1/mutter.1.gz
++fi
++
++#DEBHELPER#
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..8256c4270822ea15a75457b5ca9c4877e409d9ad
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,12 @@@
++#!/bin/sh
++
++set -e
++
++action="$1"
++
++if [ "$action" = remove ]; then
++    update-alternatives --remove x-window-manager \
++        /usr/bin/mutter
++fi
++
++#DEBHELPER#
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..2853726031e60754f2fc01ca495ab8ab787d6529
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,173 @@@
++From: =?utf-8?q?Jonas_=C3=85dahl?= <jadahl@gmail.com>
++Date: Fri, 3 Nov 2017 04:27:57 -0600
++Subject: backends: Add logical monitor -> monitor -> output -> crtc ref chain
++
++Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1703668
++Bug-GNOME: https://bugzilla.gnome.org/show_bug.cgi?id=786929
++Forwarded: yes, https://gitlab.gnome.org/GNOME/mutter/merge_requests/81
++
++Make it so that each logical monitor has a reference to all the
++monitors that are assigned to it.
++
++All monitors has a reference to each output that belongs to it.
++
++Each output has a reference to any CRTC it has been assigned.
++
++https://bugzilla.gnome.org/show_bug.cgi?id=786929
++---
++ src/backends/meta-logical-monitor.c | 14 +++++++++-----
++ src/backends/meta-monitor.c         | 22 +++++++++++++++++++---
++ src/backends/meta-output.c          | 16 ++++++++++++++--
++ 3 files changed, 42 insertions(+), 10 deletions(-)
++
++diff --git a/src/backends/meta-logical-monitor.c b/src/backends/meta-logical-monitor.c
++index 9e14d66..bc91d1d 100644
++--- a/src/backends/meta-logical-monitor.c
+++++ b/src/backends/meta-logical-monitor.c
++@@ -144,7 +144,7 @@ meta_logical_monitor_add_monitor (MetaLogicalMonitor *logical_monitor,
++ 
++   is_presentation = logical_monitor->is_presentation;
++   logical_monitor->monitors = g_list_append (logical_monitor->monitors,
++-                                             monitor);
+++                                             g_object_ref (monitor));
++ 
++   for (l = logical_monitor->monitors; l; l = l->next)
++     {
++@@ -255,13 +255,17 @@ meta_logical_monitor_init (MetaLogicalMonitor *logical_monitor)
++ }
++ 
++ static void
++-meta_logical_monitor_finalize (GObject *object)
+++meta_logical_monitor_dispose (GObject *object)
++ {
++   MetaLogicalMonitor *logical_monitor = META_LOGICAL_MONITOR (object);
++ 
++-  g_list_free (logical_monitor->monitors);
+++  if (logical_monitor->monitors)
+++    {
+++      g_list_free_full (logical_monitor->monitors, g_object_unref);
+++      logical_monitor->monitors = NULL;
+++    }
++ 
++-  G_OBJECT_CLASS (meta_logical_monitor_parent_class)->finalize (object);
+++  G_OBJECT_CLASS (meta_logical_monitor_parent_class)->dispose (object);
++ }
++ 
++ static void
++@@ -269,7 +273,7 @@ meta_logical_monitor_class_init (MetaLogicalMonitorClass *klass)
++ {
++   GObjectClass *object_class = G_OBJECT_CLASS (klass);
++ 
++-  object_class->finalize = meta_logical_monitor_finalize;
+++  object_class->dispose = meta_logical_monitor_dispose;
++ }
++ 
++ gboolean
++diff --git a/src/backends/meta-monitor.c b/src/backends/meta-monitor.c
++index 1e1af39..9833066 100644
++--- a/src/backends/meta-monitor.c
+++++ b/src/backends/meta-monitor.c
++@@ -387,6 +387,21 @@ meta_monitor_crtc_to_logical_transform (MetaMonitor          *monitor,
++   return new_transform;
++ }
++ 
+++static void
+++meta_monitor_dispose (GObject *object)
+++{
+++  MetaMonitor *monitor = META_MONITOR (object);
+++  MetaMonitorPrivate *priv = meta_monitor_get_instance_private (monitor);
+++
+++  if (priv->outputs)
+++    {
+++      g_list_free_full (priv->outputs, g_object_unref);
+++      priv->outputs = NULL;
+++    }
+++
+++  G_OBJECT_CLASS (meta_monitor_parent_class)->dispose (object);
+++}
+++
++ static void
++ meta_monitor_finalize (GObject *object)
++ {
++@@ -395,7 +410,6 @@ meta_monitor_finalize (GObject *object)
++ 
++   g_hash_table_destroy (priv->mode_ids);
++   g_list_free_full (priv->modes, (GDestroyNotify) meta_monitor_mode_free);
++-  g_clear_pointer (&priv->outputs, g_list_free);
++   meta_monitor_spec_free (priv->spec);
++ 
++   G_OBJECT_CLASS (meta_monitor_parent_class)->finalize (object);
++@@ -414,6 +428,7 @@ meta_monitor_class_init (MetaMonitorClass *klass)
++ {
++   GObjectClass *object_class = G_OBJECT_CLASS (klass);
++ 
+++  object_class->dispose = meta_monitor_dispose;
++   object_class->finalize = meta_monitor_finalize;
++ }
++ 
++@@ -550,7 +565,7 @@ meta_monitor_normal_new (MetaGpu    *gpu,
++ 
++   monitor_priv->gpu = gpu;
++ 
++-  monitor_priv->outputs = g_list_append (NULL, output);
+++  monitor_priv->outputs = g_list_append (NULL, g_object_ref (output));
++   monitor_priv->winsys_id = output->winsys_id;
++   meta_monitor_generate_spec (monitor);
++ 
++@@ -665,7 +680,8 @@ add_tiled_monitor_outputs (MetaGpu          *gpu,
++       g_warn_if_fail (output->subpixel_order ==
++                       monitor_tiled->origin_output->subpixel_order);
++ 
++-      monitor_priv->outputs = g_list_append (monitor_priv->outputs, output);
+++      monitor_priv->outputs = g_list_append (monitor_priv->outputs,
+++                                             g_object_ref (output));
++     }
++ }
++ 
++diff --git a/src/backends/meta-output.c b/src/backends/meta-output.c
++index b5ecccd..2139a17 100644
++--- a/src/backends/meta-output.c
+++++ b/src/backends/meta-output.c
++@@ -43,7 +43,7 @@ meta_output_assign_crtc (MetaOutput *output,
++ 
++   g_assert (crtc);
++ 
++-  priv->crtc = crtc;
+++  g_set_object (&priv->crtc, crtc);
++ }
++ 
++ void
++@@ -51,7 +51,7 @@ meta_output_unassign_crtc (MetaOutput *output)
++ {
++   MetaOutputPrivate *priv = meta_output_get_instance_private (output);
++ 
++-  priv->crtc = NULL;
+++  g_clear_object (&priv->crtc);
++ }
++ 
++ MetaCrtc *
++@@ -62,6 +62,17 @@ meta_output_get_assigned_crtc (MetaOutput *output)
++   return priv->crtc;
++ }
++ 
+++static void
+++meta_output_dispose (GObject *object)
+++{
+++  MetaOutput *output = META_OUTPUT (object);
+++  MetaOutputPrivate *priv = meta_output_get_instance_private (output);
+++
+++  g_clear_object (&priv->crtc);
+++
+++  G_OBJECT_CLASS (meta_output_parent_class)->dispose (object);
+++}
+++
++ static void
++ meta_output_finalize (GObject *object)
++ {
++@@ -91,5 +102,6 @@ meta_output_class_init (MetaOutputClass *klass)
++ {
++   GObjectClass *object_class = G_OBJECT_CLASS (klass);
++ 
+++  object_class->dispose = meta_output_dispose;
++   object_class->finalize = meta_output_finalize;
++ }
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..dbb65eca88bf21af8d4ebe47f59dd1f8a8b6f3c0
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,766 @@@
++From: =?utf-8?q?Jonas_=C3=85dahl?= <jadahl@gmail.com>
++Date: Fri, 3 Nov 2017 04:25:30 -0600
++Subject: backends: Move MetaOutput::crtc field into private struct
++
++Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1703668
++Bug-GNOME: https://bugzilla.gnome.org/show_bug.cgi?id=786929
++Forwarded: yes, https://gitlab.gnome.org/GNOME/mutter/merge_requests/81
++
++No functional changes. This is only done so that changes to reference
++counting can done more reliably.
++
++https://bugzilla.gnome.org/show_bug.cgi?id=786929
++---
++ src/backends/meta-logical-monitor.c                | 11 ++---
++ src/backends/meta-monitor-manager-dummy.c          |  4 +-
++ src/backends/meta-monitor-manager.c                | 11 ++---
++ src/backends/meta-monitor.c                        | 48 ++++++++++++++--------
++ src/backends/meta-output.c                         | 35 +++++++++++++++-
++ src/backends/meta-output.h                         | 10 +++--
++ src/backends/native/meta-cursor-renderer-native.c  | 10 +++--
++ src/backends/native/meta-gpu-kms.c                 |  8 +++-
++ src/backends/native/meta-monitor-manager-kms.c     |  4 +-
++ src/backends/native/meta-output-kms.c              | 12 +++---
++ src/backends/native/meta-renderer-native.c         | 16 ++++----
++ src/backends/x11/meta-monitor-manager-xrandr.c     | 15 ++++---
++ src/backends/x11/meta-output-xrandr.c              | 11 +++--
++ src/backends/x11/meta-stage-x11-nested.c           |  4 +-
++ src/backends/x11/nested/meta-renderer-x11-nested.c | 14 +++----
++ src/tests/meta-monitor-manager-test.c              |  4 +-
++ src/tests/monitor-unit-tests.c                     | 18 ++++----
++ 17 files changed, 152 insertions(+), 83 deletions(-)
++
++diff --git a/src/backends/meta-logical-monitor.c b/src/backends/meta-logical-monitor.c
++index d2faa0f..9e14d66 100644
++--- a/src/backends/meta-logical-monitor.c
+++++ b/src/backends/meta-logical-monitor.c
++@@ -103,8 +103,7 @@ derive_monitor_transform (MetaMonitor *monitor)
++ 
++   main_output = meta_monitor_get_main_output (monitor);
++ 
++-  return meta_monitor_crtc_to_logical_transform (monitor,
++-                                                 main_output->crtc->transform);
+++  return meta_output_get_assigned_crtc (main_output)->transform;
++ }
++ 
++ MetaLogicalMonitor *
++@@ -157,10 +156,12 @@ meta_logical_monitor_add_monitor (MetaLogicalMonitor *logical_monitor,
++       for (l_output = outputs; l_output; l_output = l_output->next)
++         {
++           MetaOutput *output = l_output->data;
+++          MetaCrtc *crtc;
++ 
++           is_presentation = is_presentation && output->is_presentation;
++-          if (output->crtc)
++-            output->crtc->logical_monitor = logical_monitor;
+++          crtc = meta_output_get_assigned_crtc (output);
+++          if (crtc)
+++            crtc->logical_monitor = logical_monitor;
++         }
++     }
++ 
++@@ -220,7 +221,7 @@ foreach_crtc (MetaMonitor         *monitor,
++   ForeachCrtcData *data = user_data;
++ 
++   data->func (data->logical_monitor,
++-              monitor_crtc_mode->output->crtc,
+++              meta_output_get_assigned_crtc (monitor_crtc_mode->output),
++               data->user_data);
++ 
++   return TRUE;
++diff --git a/src/backends/meta-monitor-manager-dummy.c b/src/backends/meta-monitor-manager-dummy.c
++index f81349e..fe49487 100644
++--- a/src/backends/meta-monitor-manager-dummy.c
+++++ b/src/backends/meta-monitor-manager-dummy.c
++@@ -486,7 +486,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++               output = ((MetaOutput**)crtc_info->outputs->pdata)[j];
++ 
++               output->is_dirty = TRUE;
++-              output->crtc = crtc;
+++              meta_output_assign_crtc (output, crtc);
++             }
++         }
++     }
++@@ -531,7 +531,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++           continue;
++         }
++ 
++-      output->crtc = NULL;
+++      meta_output_unassign_crtc (output);
++       output->is_primary = FALSE;
++     }
++ }
++diff --git a/src/backends/meta-monitor-manager.c b/src/backends/meta-monitor-manager.c
++index 0b5e54c..6d9e2ad 100644
++--- a/src/backends/meta-monitor-manager.c
+++++ b/src/backends/meta-monitor-manager.c
++@@ -1041,6 +1041,7 @@ meta_monitor_manager_handle_get_resources (MetaDBusDisplayConfig *skeleton,
++       GVariantBuilder crtcs, modes, clones, properties;
++       GBytes *edid;
++       char *edid_file;
+++      MetaCrtc *crtc;
++       int crtc_index;
++ 
++       g_variant_builder_init (&crtcs, G_VARIANT_TYPE ("au"));
++@@ -1134,8 +1135,8 @@ meta_monitor_manager_handle_get_resources (MetaDBusDisplayConfig *skeleton,
++                                                 output->tile_info.tile_h));
++         }
++ 
++-      crtc_index = output->crtc ? g_list_index (combined_crtcs, output->crtc)
++-                                : -1;
+++      crtc = meta_output_get_assigned_crtc (output);
+++      crtc_index = crtc ? g_list_index (combined_crtcs, crtc) : -1;
++       g_variant_builder_add (&output_builder, "(uxiausauaua{sv})",
++                              i, /* ID */
++                              (gint64)output->winsys_id,
++@@ -2903,11 +2904,7 @@ meta_monitor_manager_get_monitor_for_connector (MetaMonitorManager *manager,
++ 
++       if (meta_monitor_is_active (monitor) &&
++           g_str_equal (connector, meta_monitor_get_connector (monitor)))
++-        {
++-          MetaOutput *main_output = meta_monitor_get_main_output (monitor);
++-
++-          return main_output->crtc->logical_monitor->number;
++-        }
+++        return meta_monitor_get_logical_monitor (monitor)->number;
++     }
++ 
++   return -1;
++diff --git a/src/backends/meta-monitor.c b/src/backends/meta-monitor.c
++index 51c7935..1e1af39 100644
++--- a/src/backends/meta-monitor.c
+++++ b/src/backends/meta-monitor.c
++@@ -204,10 +204,12 @@ gboolean
++ meta_monitor_is_active (MetaMonitor *monitor)
++ {
++   MetaOutput *output;
+++  MetaCrtc *crtc;
++ 
++   output = meta_monitor_get_main_output (monitor);
+++  crtc = meta_output_get_assigned_crtc (output);
++ 
++-  return output->crtc && output->crtc->current_mode;
+++  return crtc && crtc->current_mode;
++ }
++ 
++ gboolean
++@@ -493,6 +495,7 @@ meta_monitor_normal_generate_modes (MetaMonitorNormal *monitor_normal)
++   for (i = 0; i < output->n_modes; i++)
++     {
++       MetaCrtcMode *crtc_mode = output->modes[i];
+++      MetaCrtc *crtc;
++       MetaMonitorMode *mode;
++       gboolean replace;
++ 
++@@ -526,7 +529,9 @@ meta_monitor_normal_generate_modes (MetaMonitorNormal *monitor_normal)
++ 
++       if (crtc_mode == output->preferred_mode)
++         monitor_priv->preferred_mode = mode;
++-      if (output->crtc && crtc_mode == output->crtc->current_mode)
+++
+++      crtc = meta_output_get_assigned_crtc (output);
+++      if (crtc && crtc_mode == crtc->current_mode)
++         monitor_priv->current_mode = mode;
++     }
++ }
++@@ -568,13 +573,15 @@ meta_monitor_normal_derive_layout (MetaMonitor   *monitor,
++                                    MetaRectangle *layout)
++ {
++   MetaOutput *output;
+++  MetaCrtc *crtc;
++ 
++   output = meta_monitor_get_main_output (monitor);
+++  crtc = meta_output_get_assigned_crtc (output);
++   *layout = (MetaRectangle) {
++-    .x = output->crtc->rect.x,
++-    .y = output->crtc->rect.y,
++-    .width = output->crtc->rect.width,
++-    .height = output->crtc->rect.height
+++    .x = crtc->rect.x,
+++    .y = crtc->rect.y,
+++    .width = crtc->rect.width,
+++    .height = crtc->rect.height
++   };
++ }
++ 
++@@ -764,12 +771,13 @@ is_monitor_mode_assigned (MetaMonitor     *monitor,
++     {
++       MetaOutput *output = l->data;
++       MetaMonitorCrtcMode *monitor_crtc_mode = &mode->crtc_modes[i];
+++      MetaCrtc *crtc;
++ 
+++      crtc = meta_output_get_assigned_crtc (output);
++       if (monitor_crtc_mode->crtc_mode &&
++-          (!output->crtc ||
++-           output->crtc->current_mode != monitor_crtc_mode->crtc_mode))
+++          (!crtc || crtc->current_mode != monitor_crtc_mode->crtc_mode))
++         return FALSE;
++-      else if (!monitor_crtc_mode->crtc_mode && output->crtc)
+++      else if (!monitor_crtc_mode->crtc_mode && crtc)
++         return FALSE;
++     }
++ 
++@@ -1217,14 +1225,16 @@ meta_monitor_tiled_derive_layout (MetaMonitor   *monitor,
++   for (l = monitor_priv->outputs; l; l = l->next)
++     {
++       MetaOutput *output = l->data;
+++      MetaCrtc *crtc;
++ 
++-      if (!output->crtc)
+++      crtc = meta_output_get_assigned_crtc (output);
+++      if (!crtc)
++         continue;
++ 
++-      min_x = MIN (output->crtc->rect.x, min_x);
++-      min_y = MIN (output->crtc->rect.y, min_y);
++-      max_x = MAX (output->crtc->rect.x + output->crtc->rect.width, max_x);
++-      max_y = MAX (output->crtc->rect.y + output->crtc->rect.height, max_y);
+++      min_x = MIN (crtc->rect.x, min_x);
+++      min_y = MIN (crtc->rect.y, min_y);
+++      max_x = MAX (crtc->rect.x + crtc->rect.width, max_x);
+++      max_y = MAX (crtc->rect.y + crtc->rect.height, max_y);
++     }
++ 
++   *layout = (MetaRectangle) {
++@@ -1318,10 +1328,14 @@ meta_monitor_get_spec (MetaMonitor *monitor)
++ MetaLogicalMonitor *
++ meta_monitor_get_logical_monitor (MetaMonitor *monitor)
++ {
++-  MetaOutput *output = meta_monitor_get_main_output (monitor);
+++  MetaOutput *output;
+++  MetaCrtc *crtc;
+++
+++  output = meta_monitor_get_main_output (monitor);
+++  crtc = meta_output_get_assigned_crtc (output);
++ 
++-  if (output->crtc)
++-    return output->crtc->logical_monitor;
+++  if (crtc)
+++    return crtc->logical_monitor;
++   else
++     return NULL;
++ }
++diff --git a/src/backends/meta-output.c b/src/backends/meta-output.c
++index 62102ce..b5ecccd 100644
++--- a/src/backends/meta-output.c
+++++ b/src/backends/meta-output.c
++@@ -21,7 +21,13 @@
++ 
++ #include "backends/meta-output.h"
++ 
++-G_DEFINE_TYPE (MetaOutput, meta_output, G_TYPE_OBJECT)
+++typedef struct _MetaOutputPrivate
+++{
+++  /* The CRTC driving this output, NULL if the output is not enabled */
+++  MetaCrtc *crtc;
+++} MetaOutputPrivate;
+++
+++G_DEFINE_TYPE_WITH_PRIVATE (MetaOutput, meta_output, G_TYPE_OBJECT)
++ 
++ MetaGpu *
++ meta_output_get_gpu (MetaOutput *output)
++@@ -29,6 +35,33 @@ meta_output_get_gpu (MetaOutput *output)
++   return output->gpu;
++ }
++ 
+++void
+++meta_output_assign_crtc (MetaOutput *output,
+++                         MetaCrtc   *crtc)
+++{
+++  MetaOutputPrivate *priv = meta_output_get_instance_private (output);
+++
+++  g_assert (crtc);
+++
+++  priv->crtc = crtc;
+++}
+++
+++void
+++meta_output_unassign_crtc (MetaOutput *output)
+++{
+++  MetaOutputPrivate *priv = meta_output_get_instance_private (output);
+++
+++  priv->crtc = NULL;
+++}
+++
+++MetaCrtc *
+++meta_output_get_assigned_crtc (MetaOutput *output)
+++{
+++  MetaOutputPrivate *priv = meta_output_get_instance_private (output);
+++
+++  return priv->crtc;
+++}
+++
++ static void
++ meta_output_finalize (GObject *object)
++ {
++diff --git a/src/backends/meta-output.h b/src/backends/meta-output.h
++index a63a1cd..2dc17da 100644
++--- a/src/backends/meta-output.h
+++++ b/src/backends/meta-output.h
++@@ -64,9 +64,6 @@ struct _MetaOutput
++ 
++   MetaGpu *gpu;
++ 
++-  /* The CRTC driving this output, NULL if the output is not enabled */
++-  MetaCrtc *crtc;
++-
++   /* The low-level ID of this output, used to apply back configuration */
++   glong winsys_id;
++   char *name;
++@@ -122,4 +119,11 @@ G_DECLARE_FINAL_TYPE (MetaOutput, meta_output, META, OUTPUT, GObject)
++ 
++ MetaGpu * meta_output_get_gpu (MetaOutput *output);
++ 
+++void meta_output_assign_crtc (MetaOutput *output,
+++                              MetaCrtc   *crtc);
+++
+++void meta_output_unassign_crtc (MetaOutput *output);
+++
+++MetaCrtc * meta_output_get_assigned_crtc (MetaOutput *output);
+++
++ #endif /* META_OUTPUT_H */
++diff --git a/src/backends/native/meta-cursor-renderer-native.c b/src/backends/native/meta-cursor-renderer-native.c
++index aea86df..c7326af 100644
++--- a/src/backends/native/meta-cursor-renderer-native.c
+++++ b/src/backends/native/meta-cursor-renderer-native.c
++@@ -291,6 +291,7 @@ update_monitor_crtc_cursor (MetaMonitor         *monitor,
++     data->in_cursor_renderer_native;
++   MetaCursorRendererNativePrivate *priv =
++     meta_cursor_renderer_native_get_instance_private (cursor_renderer_native);
+++  MetaCrtc *crtc;
++   MetaMonitorTransform transform;
++   ClutterRect scaled_crtc_rect;
++   float scale;
++@@ -330,6 +331,8 @@ update_monitor_crtc_cursor (MetaMonitor         *monitor,
++     },
++   };
++ 
+++  crtc = meta_output_get_assigned_crtc (monitor_crtc_mode->output);
+++
++   if (priv->has_hw_cursor &&
++       clutter_rect_intersection (&scaled_crtc_rect,
++                                  &data->in_local_cursor_rect,
++@@ -340,7 +343,7 @@ update_monitor_crtc_cursor (MetaMonitor         *monitor,
++       float crtc_cursor_x, crtc_cursor_y;
++ 
++       set_crtc_cursor (data->in_cursor_renderer_native,
++-                       monitor_crtc_mode->output->crtc,
+++                       crtc,
++                        data->in_cursor_sprite);
++ 
++       gpu_kms = META_GPU_KMS (meta_monitor_get_gpu (monitor));
++@@ -350,7 +353,7 @@ update_monitor_crtc_cursor (MetaMonitor         *monitor,
++       crtc_cursor_y = (data->in_local_cursor_rect.origin.y -
++                        scaled_crtc_rect.origin.y) * scale;
++       drmModeMoveCursor (kms_fd,
++-                         monitor_crtc_mode->output->crtc->crtc_id,
+++                         crtc->crtc_id,
++                          roundf (crtc_cursor_x),
++                          roundf (crtc_cursor_y));
++ 
++@@ -358,8 +361,7 @@ update_monitor_crtc_cursor (MetaMonitor         *monitor,
++     }
++   else
++     {
++-      set_crtc_cursor (data->in_cursor_renderer_native,
++-                       monitor_crtc_mode->output->crtc, NULL);
+++      set_crtc_cursor (data->in_cursor_renderer_native, crtc, NULL);
++     }
++ 
++   return TRUE;
++diff --git a/src/backends/native/meta-gpu-kms.c b/src/backends/native/meta-gpu-kms.c
++index b33389d..613a607 100644
++--- a/src/backends/native/meta-gpu-kms.c
+++++ b/src/backends/native/meta-gpu-kms.c
++@@ -105,8 +105,10 @@ get_crtc_drm_connectors (MetaGpu       *gpu,
++   for (l = meta_gpu_get_outputs (gpu); l; l = l->next)
++     {
++       MetaOutput *output = l->data;
+++      MetaCrtc *assigned_crtc;
++ 
++-      if (output->crtc == crtc)
+++      assigned_crtc = meta_output_get_assigned_crtc (output);
+++      if (assigned_crtc == crtc)
++         g_array_append_val (connectors_array, output->winsys_id);
++     }
++ 
++@@ -186,8 +188,10 @@ meta_gpu_kms_is_crtc_active (MetaGpuKms *gpu_kms,
++   for (l = meta_gpu_get_outputs (gpu); l; l = l->next)
++     {
++       MetaOutput *output = l->data;
+++      MetaCrtc *assigned_crtc;
++ 
++-      if (output->crtc == crtc)
+++      assigned_crtc = meta_output_get_assigned_crtc (output);
+++      if (assigned_crtc == crtc)
++         {
++           connected_crtc_found = TRUE;
++           break;
++diff --git a/src/backends/native/meta-monitor-manager-kms.c b/src/backends/native/meta-monitor-manager-kms.c
++index 1a2eaec..d8e7b84 100644
++--- a/src/backends/native/meta-monitor-manager-kms.c
+++++ b/src/backends/native/meta-monitor-manager-kms.c
++@@ -188,7 +188,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++               MetaOutput *output = g_ptr_array_index (crtc_info->outputs, j);
++ 
++               output->is_dirty = TRUE;
++-              output->crtc = crtc;
+++              meta_output_assign_crtc (output, crtc);
++             }
++         }
++ 
++@@ -249,7 +249,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++               continue;
++             }
++ 
++-          output->crtc = NULL;
+++          meta_output_unassign_crtc (output);
++           output->is_primary = FALSE;
++         }
++     }
++diff --git a/src/backends/native/meta-output-kms.c b/src/backends/native/meta-output-kms.c
++index 5668be5..f33f65d 100644
++--- a/src/backends/native/meta-output-kms.c
+++++ b/src/backends/native/meta-output-kms.c
++@@ -64,11 +64,13 @@ typedef struct _MetaOutputKms
++ void
++ meta_output_kms_set_underscan (MetaOutput *output)
++ {
++-  if (!output->crtc)
+++  MetaCrtc *crtc;
+++
+++  crtc = meta_output_get_assigned_crtc (output);
+++  if (!crtc)
++     return;
++ 
++-  meta_crtc_kms_set_underscan (output->crtc,
++-                               output->is_underscanning);
+++  meta_crtc_kms_set_underscan (crtc, output->is_underscanning);
++ }
++ 
++ void
++@@ -600,14 +602,14 @@ meta_create_kms_output (MetaGpuKms        *gpu_kms,
++ 
++           if (crtc->crtc_id == output_kms->current_encoder->crtc_id)
++             {
++-              output->crtc = crtc;
+++              meta_output_assign_crtc (output, crtc);
++               break;
++             }
++         }
++     }
++   else
++     {
++-      output->crtc = NULL;
+++      meta_output_unassign_crtc (output);
++     }
++ 
++   if (old_output)
++diff --git a/src/backends/native/meta-renderer-native.c b/src/backends/native/meta-renderer-native.c
++index 2571cac..850e44b 100644
++--- a/src/backends/native/meta-renderer-native.c
+++++ b/src/backends/native/meta-renderer-native.c
++@@ -2083,6 +2083,7 @@ meta_renderer_native_create_surface_egl_device (CoglOnscreen       *onscreen,
++   EGLDisplay egl_display = renderer_gpu_data->egl_display;
++   MetaMonitor *monitor;
++   MetaOutput *output;
+++  MetaCrtc *crtc;
++   EGLConfig egl_config;
++   EGLStreamKHR egl_stream;
++   EGLSurface egl_surface;
++@@ -2106,6 +2107,7 @@ meta_renderer_native_create_surface_egl_device (CoglOnscreen       *onscreen,
++ 
++   monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
++   output = meta_monitor_get_main_output (monitor);
+++  crtc = meta_output_get_assigned_crtc (output);
++ 
++   /*
++    * An "logical_monitor" may have multiple outputs/crtcs in case its tiled,
++@@ -2113,7 +2115,7 @@ meta_renderer_native_create_surface_egl_device (CoglOnscreen       *onscreen,
++    * lets pass the first one.
++    */
++   output_attribs[0] = EGL_DRM_CRTC_EXT;
++-  output_attribs[1] = output->crtc->crtc_id;
+++  output_attribs[1] = crtc->crtc_id;
++   output_attribs[2] = EGL_NONE;
++ 
++   if (!meta_egl_get_output_layers (egl, egl_display,
++@@ -2711,12 +2713,10 @@ calculate_view_transform (MetaMonitorManager *monitor_manager,
++ {
++   MetaMonitor *main_monitor;
++   MetaOutput *main_output;
++-  MetaMonitorTransform crtc_transform;
+++  MetaCrtc *crtc;
++   main_monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
++   main_output = meta_monitor_get_main_output (main_monitor);
++-  crtc_transform =
++-    meta_monitor_logical_to_crtc_transform (main_monitor,
++-                                            logical_monitor->transform);
+++  crtc = meta_output_get_assigned_crtc (main_output);
++ 
++   /*
++    * Pick any monitor and output and check; all CRTCs of a logical monitor will
++@@ -2724,11 +2724,11 @@ calculate_view_transform (MetaMonitorManager *monitor_manager,
++    */
++ 
++   if (meta_monitor_manager_is_transform_handled (monitor_manager,
++-                                                 main_output->crtc,
++-                                                 crtc_transform))
+++                                                 crtc,
+++                                                 crtc->transform))
++     return META_MONITOR_TRANSFORM_NORMAL;
++   else
++-    return crtc_transform;
+++    return crtc->transform;
++ }
++ 
++ static MetaRendererView *
++diff --git a/src/backends/x11/meta-monitor-manager-xrandr.c b/src/backends/x11/meta-monitor-manager-xrandr.c
++index dbe3e4e..e438d8f 100644
++--- a/src/backends/x11/meta-monitor-manager-xrandr.c
+++++ b/src/backends/x11/meta-monitor-manager-xrandr.c
++@@ -225,8 +225,10 @@ is_crtc_assignment_changed (MetaCrtc      *crtc,
++       for (j = 0; j < crtc_info->outputs->len; j++)
++         {
++           MetaOutput *output = ((MetaOutput**) crtc_info->outputs->pdata)[j];
+++          MetaCrtc *assigned_crtc;
++ 
++-          if (output->crtc != crtc)
+++          assigned_crtc = meta_output_get_assigned_crtc (output);
+++          if (assigned_crtc != crtc)
++             return TRUE;
++         }
++ 
++@@ -243,6 +245,7 @@ is_output_assignment_changed (MetaOutput      *output,
++                               MetaOutputInfo **output_infos,
++                               unsigned int     n_output_infos)
++ {
+++  MetaCrtc *assigned_crtc;
++   gboolean output_is_found = FALSE;
++   unsigned int i;
++ 
++@@ -265,8 +268,10 @@ is_output_assignment_changed (MetaOutput      *output,
++       output_is_found = TRUE;
++     }
++ 
+++  assigned_crtc = meta_output_get_assigned_crtc (output);
+++
++   if (!output_is_found)
++-    return output->crtc != NULL;
+++    return assigned_crtc != NULL;
++ 
++   for (i = 0; i < n_crtc_infos; i++)
++     {
++@@ -279,7 +284,7 @@ is_output_assignment_changed (MetaOutput      *output,
++             ((MetaOutput**) crtc_info->outputs->pdata)[j];
++ 
++           if (crtc_info_output == output &&
++-              crtc_info->crtc == output->crtc)
+++              crtc_info->crtc == assigned_crtc)
++             return FALSE;
++         }
++     }
++@@ -455,7 +460,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++               output = ((MetaOutput**)crtc_info->outputs->pdata)[j];
++ 
++               output->is_dirty = TRUE;
++-              output->crtc = crtc;
+++              meta_output_assign_crtc (output, crtc);
++ 
++               output_ids[j] = output->winsys_id;
++             }
++@@ -521,7 +526,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++           continue;
++         }
++ 
++-      output->crtc = NULL;
+++      meta_output_unassign_crtc (output);
++       output->is_primary = FALSE;
++     }
++ 
++diff --git a/src/backends/x11/meta-output-xrandr.c b/src/backends/x11/meta-output-xrandr.c
++index 1f44cb1..515389d 100644
++--- a/src/backends/x11/meta-output-xrandr.c
+++++ b/src/backends/x11/meta-output-xrandr.c
++@@ -97,10 +97,13 @@ output_set_underscanning_xrandr (MetaOutput *output,
++    * make the border configurable. */
++   if (underscanning)
++     {
+++      MetaCrtc *crtc;
++       uint32_t border_value;
++ 
+++      crtc = meta_output_get_assigned_crtc (output);
+++
++       prop = XInternAtom (xdisplay, "underscan hborder", False);
++-      border_value = output->crtc->current_mode->width * 0.05;
+++      border_value = crtc->current_mode->width * 0.05;
++ 
++       xcb_randr_change_output_property (XGetXCBConnection (xdisplay),
++                                         (XID) output->winsys_id,
++@@ -109,7 +112,7 @@ output_set_underscanning_xrandr (MetaOutput *output,
++                                         1, &border_value);
++ 
++       prop = XInternAtom (xdisplay, "underscan vborder", False);
++-      border_value = output->crtc->current_mode->height * 0.05;
+++      border_value = crtc->current_mode->height * 0.05;
++ 
++       xcb_randr_change_output_property (XGetXCBConnection (xdisplay),
++                                         (XID) output->winsys_id,
++@@ -737,14 +740,14 @@ output_get_crtcs (MetaOutput    *output,
++     }
++   output->n_possible_crtcs = n_actual_crtcs;
++ 
++-  output->crtc = NULL;
+++  meta_output_unassign_crtc (output);
++   for (l = meta_gpu_get_crtcs (gpu); l; l = l->next)
++     {
++       MetaCrtc *crtc = l->data;
++ 
++       if ((XID) crtc->crtc_id == xrandr_output->crtc)
++         {
++-          output->crtc = crtc;
+++          meta_output_assign_crtc (output, crtc);
++           break;
++         }
++     }
++diff --git a/src/backends/x11/meta-stage-x11-nested.c b/src/backends/x11/meta-stage-x11-nested.c
++index 57fdabb..4cc58d6 100644
++--- a/src/backends/x11/meta-stage-x11-nested.c
+++++ b/src/backends/x11/meta-stage-x11-nested.c
++@@ -113,7 +113,7 @@ draw_crtc (MetaMonitor         *monitor,
++   CoglTexture *texture = data->texture;
++   MetaLogicalMonitor *logical_monitor = data->logical_monitor;
++   MetaOutput *output = monitor_crtc_mode->output;
++-  MetaCrtc *crtc = output->crtc;
+++  MetaCrtc *crtc;
++   MetaRendererView *renderer_view = META_RENDERER_VIEW (data->view);
++   MetaMonitorTransform view_transform;
++   MetaMonitorTransform layout_transform = META_MONITOR_TRANSFORM_NORMAL;
++@@ -129,6 +129,8 @@ draw_crtc (MetaMonitor         *monitor,
++   texture_width = cogl_texture_get_width (texture);
++   texture_height = cogl_texture_get_height (texture);
++ 
+++  crtc = meta_output_get_assigned_crtc (output);
+++
++   clutter_stage_view_get_layout (data->view, &view_layout);
++   sample_x = crtc->rect.x - view_layout.x;
++   sample_y = crtc->rect.y - view_layout.y;
++diff --git a/src/backends/x11/nested/meta-renderer-x11-nested.c b/src/backends/x11/nested/meta-renderer-x11-nested.c
++index a0c26c9..8fdf46b 100644
++--- a/src/backends/x11/nested/meta-renderer-x11-nested.c
+++++ b/src/backends/x11/nested/meta-renderer-x11-nested.c
++@@ -50,24 +50,22 @@ calculate_view_transform (MetaMonitorManager *monitor_manager,
++ {
++   MetaMonitor *main_monitor;
++   MetaOutput *main_output;
++-  MetaMonitorTransform crtc_transform;
+++  MetaCrtc *crtc;
+++
++   main_monitor = meta_logical_monitor_get_monitors (logical_monitor)->data;
++   main_output = meta_monitor_get_main_output (main_monitor);
++-  crtc_transform =
++-    meta_monitor_logical_to_crtc_transform (main_monitor,
++-                                            logical_monitor->transform);
++-
+++  crtc = meta_output_get_assigned_crtc (main_output);
++   /*
++    * Pick any monitor and output and check; all CRTCs of a logical monitor will
++    * always have the same transform assigned to them.
++    */
++ 
++   if (meta_monitor_manager_is_transform_handled (monitor_manager,
++-                                                 main_output->crtc,
++-                                                 crtc_transform))
+++                                                 crtc,
+++                                                 crtc->transform))
++     return META_MONITOR_TRANSFORM_NORMAL;
++   else
++-    return crtc_transform;
+++    return crtc->transform;
++ }
++ 
++ static MetaRendererView *
++diff --git a/src/tests/meta-monitor-manager-test.c b/src/tests/meta-monitor-manager-test.c
++index 5e1c56e..953d871 100644
++--- a/src/tests/meta-monitor-manager-test.c
+++++ b/src/tests/meta-monitor-manager-test.c
++@@ -209,7 +209,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++               output = ((MetaOutput**)crtc_info->outputs->pdata)[j];
++ 
++               output->is_dirty = TRUE;
++-              output->crtc = crtc;
+++              meta_output_assign_crtc (output, crtc);
++             }
++         }
++     }
++@@ -255,7 +255,7 @@ apply_crtc_assignments (MetaMonitorManager *manager,
++           continue;
++         }
++ 
++-      output->crtc = NULL;
+++      meta_output_unassign_crtc (output);
++       output->is_primary = FALSE;
++     }
++ }
++diff --git a/src/tests/monitor-unit-tests.c b/src/tests/monitor-unit-tests.c
++index 97b1e6e..a9cb2e2 100644
++--- a/src/tests/monitor-unit-tests.c
+++++ b/src/tests/monitor-unit-tests.c
++@@ -449,22 +449,24 @@ check_current_monitor_mode (MetaMonitor         *monitor,
++   CheckMonitorModeData *data = user_data;
++   MetaMonitorManager *monitor_manager = data->monitor_manager;
++   MetaOutput *output;
+++  MetaCrtc *crtc;
++ 
++   output = output_from_winsys_id (monitor_manager,
++                                   data->expect_crtc_mode_iter->output);
+++  crtc = meta_output_get_assigned_crtc (output);
++ 
++   if (data->expect_crtc_mode_iter->crtc_mode == -1)
++     {
++-      g_assert_null (output->crtc);
+++      g_assert_null (crtc);
++     }
++   else
++     {
++       MetaLogicalMonitor *logical_monitor;
++ 
++-      g_assert_nonnull (output->crtc);
++-      g_assert (monitor_crtc_mode->crtc_mode == output->crtc->current_mode);
+++      g_assert_nonnull (crtc);
+++      g_assert (monitor_crtc_mode->crtc_mode == crtc->current_mode);
++ 
++-      logical_monitor = output->crtc->logical_monitor;
+++      logical_monitor = crtc->logical_monitor;
++       g_assert_nonnull (logical_monitor);
++     }
++ 
++@@ -553,6 +555,7 @@ check_logical_monitor (MonitorTestCase               *test_case,
++       for (l_output = outputs; l_output; l_output = l_output->next)
++         {
++           MetaOutput *output = l_output->data;
+++          MetaCrtc *crtc;
++ 
++           if (output->is_primary)
++             {
++@@ -560,8 +563,8 @@ check_logical_monitor (MonitorTestCase               *test_case,
++               primary_output = output;
++             }
++ 
++-          g_assert (!output->crtc ||
++-                    output->crtc->logical_monitor == logical_monitor);
+++          crtc = meta_output_get_assigned_crtc (output);
+++          g_assert (!crtc || crtc->logical_monitor == logical_monitor);
++           g_assert_cmpint (logical_monitor->is_presentation,
++                            ==,
++                            output->is_presentation);
++@@ -983,7 +986,8 @@ create_monitor_test_setup (MonitorTestCase *test_case,
++ 
++       output = g_object_new (META_TYPE_OUTPUT, NULL);
++ 
++-      output->crtc = crtc;
+++      if (crtc)
+++        meta_output_assign_crtc (output, crtc);
++       output->winsys_id = i;
++       output->name = (is_laptop_panel ? g_strdup_printf ("eDP-%d",
++                                                   ++n_laptop_panels)
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..bc6b697bdf3c6b6d99e632457f3d6ec9fbf4b97b
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,43 @@@
++From: =?utf-8?q?Florian_M=C3=BCllner?= <fmuellner@gnome.org>
++Date: Thu, 20 Oct 2016 18:00:04 +0200
++Subject: gtk-shell: Work around non-working startup notifications
++
++GNOME Shell relies on the MetaScreen::startup-sequence-changed signal,
++which is tied to (lib)startup-notification and therefore X11. As a result,
++when we remove the startup sequence of a wayland client, GNOME Shell will
++not be notified about this until startup-notification's timeout is hit.
++As a temporary stop-gap, go through XWayland even for wayland clients,
++so that the signal is emitted when expected.
++
++Bug: https://bugzilla.gnome.org/show_bug.cgi?id=768531
++Applied-upstream: no
++---
++ src/wayland/meta-wayland-gtk-shell.c | 10 ++++++++++
++ 1 file changed, 10 insertions(+)
++
++diff --git a/src/wayland/meta-wayland-gtk-shell.c b/src/wayland/meta-wayland-gtk-shell.c
++index 0ef9b83..891109a 100644
++--- a/src/wayland/meta-wayland-gtk-shell.c
+++++ b/src/wayland/meta-wayland-gtk-shell.c
++@@ -312,11 +312,21 @@ gtk_shell_set_startup_id (struct wl_client   *client,
++                           struct wl_resource *resource,
++                           const char         *startup_id)
++ {
+++#if 0
++   MetaDisplay *display;
++ 
++   display = meta_get_display ();
++   meta_startup_notification_remove_sequence (display->startup_notification,
++                                              startup_id);
+++#else
+++  /* HACK: MetaScreen::startup-sequence-changed is currently tied to
+++           (lib)startup-notification, which means it only works on X11;
+++           so for now, always go through XWayland, even for wayland clients */
+++  gdk_x11_display_broadcast_startup_message (gdk_display_get_default (),
+++                                             "remove",
+++                                             "ID", startup_id,
+++                                             NULL);
+++#endif
++ }
++ 
++ static void
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..956cd939bbfcd451c190383e7111eb098a7f5ddf
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,227 @@@
++From: Daniel van Vugt <daniel.van.vugt@canonical.com>
++Date: Fri, 16 Feb 2018 02:50:59 -0600
++Subject: clutter: Smooth out master clock to smooth visuals
++
++Bug-GNOME: https://gitlab.gnome.org/GNOME/mutter/issues/25
++Forwarded, yes: https://gitlab.gnome.org/GNOME/mutter/merge_requests/70
++
++Clutter's master clock was jittery because it included errors in cur_tick
++such as dispatch delays due to other sources. Dispatch could also occur up
++to 1ms early since GSource can only be timed to the millisecond. All of this
++could impact the visual smoothness of animations as they are displayed on
++the steady interval of the monitor, but spacially moving in less regular
++steps derived from the dispatch times.
++
++The simple fix is to ignore any jitter in dispatch timing. Try a little
++bit harder to use a precise interval that will better match the display
++hardware, and smoother visuals will follow.
++
++https://gitlab.gnome.org/GNOME/mutter/issues/25
++---
++ clutter/clutter/clutter-master-clock-default.c | 134 +++++++++++++++++--------
++ 1 file changed, 93 insertions(+), 41 deletions(-)
++
++diff --git a/clutter/clutter/clutter-master-clock-default.c b/clutter/clutter/clutter-master-clock-default.c
++index 7b2df0d..97b6d13 100644
++--- a/clutter/clutter/clutter-master-clock-default.c
+++++ b/clutter/clutter/clutter-master-clock-default.c
++@@ -69,8 +69,10 @@ struct _ClutterMasterClockDefault
++   /* the previous state of the clock, in usecs, used to compute the delta */
++   gint64 prev_tick;
++ 
+++  /* the ideal frame interval in usecs (inverse of your max refresh rate) */
+++  gint64 frame_interval;
+++
++ #ifdef CLUTTER_ENABLE_DEBUG
++-  gint64 frame_budget;
++   gint64 remaining_budget;
++ #endif
++ 
++@@ -264,6 +266,41 @@ master_clock_reschedule_stage_updates (ClutterMasterClockDefault *master_clock,
++     }
++ }
++ 
+++static gint64
+++estimate_next_presentation_time (ClutterMasterClockDefault *master_clock)
+++{
+++  gint64 frame_phase, now, now_phase, undershoot;
+++
+++  /* In future if this was updated from the backend's (maximum) refresh rate
+++   * then that would fix: https://bugzilla.gnome.org/show_bug.cgi?id=781296
+++   */
+++  master_clock->frame_interval = G_USEC_PER_SEC /
+++                                 clutter_get_default_frame_rate ();
+++
+++  now = g_source_get_time (master_clock->source);
+++  now_phase = now % master_clock->frame_interval;
+++
+++  /* To be precise we would like to use:
+++   *   frame_phase = a_recent_hardware_presentation_time % frame_interval;
+++   * where hardware_presentation_time must be using the same clock as
+++   * g_source_get_time. Unfortunately they're different clocks right now
+++   * so we can't.
+++   *   Alternatively, we could replace g_source_get_time in future with the
+++   * current time in the clutter/cogl presentation clock, but that function
+++   * also doesn't exist yet.
+++   *   Until we can get either of those, zero is fine. It just means latency
+++   * will be suboptimal by half a frame on average. We still get maximum
+++   * smoothness this way...
+++   */
+++  frame_phase = 0;
+++
+++  undershoot = frame_phase - now_phase;
+++  if (undershoot < 0)
+++    undershoot += master_clock->frame_interval;
+++
+++  return now + undershoot;
+++}
+++
++ /*
++  * master_clock_next_frame_delay:
++  * @master_clock: a #ClutterMasterClock
++@@ -276,7 +313,8 @@ master_clock_reschedule_stage_updates (ClutterMasterClockDefault *master_clock,
++ static gint
++ master_clock_next_frame_delay (ClutterMasterClockDefault *master_clock)
++ {
++-  gint64 now, next;
+++  gint64 now, target_presentation_time, ideal_render_start;  /* timestamps */
+++  gint64 ideal_prerender_time, lateness;  /* deltas */
++   gint swap_delay;
++ 
++   if (!master_clock_is_running (master_clock))
++@@ -307,46 +345,45 @@ master_clock_next_frame_delay (ClutterMasterClockDefault *master_clock)
++       return 0;
++     }
++ 
++-  if (master_clock->prev_tick == 0)
++-    {
++-      /* If we weren't previously running, then draw the next frame
++-       * immediately
++-       */
++-      CLUTTER_NOTE (SCHEDULER, "draw the first frame immediately");
++-      return 0;
++-    }
++-
++-  /* Otherwise, wait at least 1/frame_rate seconds since we last
++-   * started a frame
++-   */
++   now = g_source_get_time (master_clock->source);
++ 
++-  next = master_clock->prev_tick;
++-
++-  /* If time has gone backwards then there's no way of knowing how
++-     long we should wait so let's just dispatch immediately */
++-  if (now <= next)
+++  /* As first preference, try to carry on smoothly from the previous frame,
+++   * even if that means we start rendering frame 2 before frame 1 has been
+++   * presented. This is why we ignore estimate_next_presentation_time here...
+++   */
+++  target_presentation_time = master_clock->prev_tick +
+++                             master_clock->frame_interval;
+++  ideal_prerender_time = master_clock->frame_interval;
+++  ideal_render_start = target_presentation_time - ideal_prerender_time;
+++  lateness = now - ideal_render_start;
+++
+++  /* If we just woke from idle then try to improve the smoothness of the first
+++   * two frames some more. Otherwise the first frame would appear too old
+++   * relative to the second frame.
+++   */
+++  if (lateness >= master_clock->frame_interval)
++     {
++-      CLUTTER_NOTE (SCHEDULER, "Time has gone backwards");
++-
++-      return 0;
+++      target_presentation_time = estimate_next_presentation_time (master_clock);
+++      ideal_render_start = target_presentation_time - ideal_prerender_time;
+++      lateness = now - ideal_render_start;
++     }
++ 
++-  next += (1000000L / clutter_get_default_frame_rate ());
++-
++-  if (next <= now)
+++  if (lateness > 0)
++     {
++-      CLUTTER_NOTE (SCHEDULER, "Less than %lu microsecs",
++-                    1000000L / (gulong) clutter_get_default_frame_rate ());
++-
+++      CLUTTER_NOTE (SCHEDULER, "No wait required. We're already late.");
++       return 0;
++     }
++   else
++     {
++-      CLUTTER_NOTE (SCHEDULER, "Waiting %" G_GINT64_FORMAT " msecs",
++-                   (next - now) / 1000);
++-
++-      return (next - now) / 1000;
+++      /* We +1 here to avoid premature dispatches that would otherwise occur
+++       * repeatedly during the 1ms before 'ideal_render_start'. We don't care
+++       * if this makes the final dispatch 1ms late because the smoothing
+++       * algorithm corrects that, and it's much better than attempting to
+++       * render more frames than the hardware can physically display...
+++       */
+++      gint millisec_delay = -lateness / 1000 + 1;
+++      CLUTTER_NOTE (SCHEDULER, "Waiting %dms", millisec_delay);
+++      return millisec_delay;
++     }
++ }
++ 
++@@ -532,16 +569,34 @@ clutter_clock_dispatch (GSource     *source,
++   ClutterMasterClockDefault *master_clock = clock_source->master_clock;
++   gboolean stages_updated = FALSE;
++   GSList *stages;
++-
++-  CLUTTER_NOTE (SCHEDULER, "Master clock [tick]");
+++  gint64 smooth_tick;
++ 
++   _clutter_threads_acquire_lock ();
++ 
++   /* Get the time to use for this frame */
++-  master_clock->cur_tick = g_source_get_time (source);
+++  smooth_tick = estimate_next_presentation_time (master_clock);
+++  if (smooth_tick <= master_clock->prev_tick)
+++    {
+++      /* Ordinarily this will never happen. But after we fix bug 781296, it
+++       * could happen in the rare case when the ideal frame_interval changes,
+++       * such as video mode switching or hotplugging monitors. As such it is
+++       * not considered a bug (unless it's happening without mode switching
+++       * or hotplugging).
+++       */
+++      CLUTTER_NOTE (SCHEDULER, "Master clock [tick] was premature (skipped)");
+++      _clutter_threads_release_lock ();
+++      return G_SOURCE_CONTINUE;
+++    }
+++
+++  master_clock->cur_tick = smooth_tick;
+++  if (master_clock->prev_tick)
+++    CLUTTER_NOTE (SCHEDULER, "Master clock [tick] %+ldus",
+++                  (long) (master_clock->cur_tick - master_clock->prev_tick));
+++  else
+++    CLUTTER_NOTE (SCHEDULER, "Master clock [tick] startup");
++ 
++ #ifdef CLUTTER_ENABLE_DEBUG
++-  master_clock->remaining_budget = master_clock->frame_budget;
+++  master_clock->remaining_budget = master_clock->frame_interval;
++ #endif
++ 
++   /* We need to protect ourselves against stages being destroyed during
++@@ -580,7 +635,7 @@ clutter_clock_dispatch (GSource     *source,
++ 
++   _clutter_threads_release_lock ();
++ 
++-  return TRUE;
+++  return G_SOURCE_CONTINUE;
++ }
++ 
++ static void
++@@ -612,10 +667,7 @@ clutter_master_clock_default_init (ClutterMasterClockDefault *self)
++   self->idle = FALSE;
++   self->ensure_next_iteration = FALSE;
++   self->paused = FALSE;
++-
++-#ifdef CLUTTER_ENABLE_DEBUG
++-  self->frame_budget = G_USEC_PER_SEC / 60;
++-#endif
+++  self->frame_interval = G_USEC_PER_SEC / 60; /* Will be refined at runtime */
++ 
++   g_source_set_priority (source, CLUTTER_PRIORITY_REDRAW);
++   g_source_set_can_recurse (source, FALSE);
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..d60918a1ec952a214c75d207d148d537a74fed89
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,42 @@@
++From: Olivier Fourdan <ofourdan@redhat.com>
++Date: Tue, 17 Apr 2018 14:03:12 +0200
++Subject: clutter/evdev: Don't ignore CAPS lock as modifier
++
++Mark CAPS lock as a modifier (as it should) so that when using XKB
++options to change the default behaviour of CAPS lock, the new assigned
++key can by used as a sticky key as well.
++
++(cherry picked from commit 6df2b7af556bf01f8d564b86c66c293678ab6b90)
++
++Bug: https://gitlab.gnome.org/GNOME/mutter/issues/112
++Origin: upstream, 3.28.3, commit:2dd9fc17c17cbc9b09f8a364682c5759d6539a8d
++---
++ clutter/clutter/evdev/clutter-input-device-evdev.c | 8 ++++++++
++ 1 file changed, 8 insertions(+)
++
++diff --git a/clutter/clutter/evdev/clutter-input-device-evdev.c b/clutter/clutter/evdev/clutter-input-device-evdev.c
++index e5dee65..51c7e94 100644
++--- a/clutter/clutter/evdev/clutter-input-device-evdev.c
+++++ b/clutter/clutter/evdev/clutter-input-device-evdev.c
++@@ -433,6 +433,8 @@ key_event_is_modifier (ClutterEvent *event)
++     case XKB_KEY_Super_R:
++     case XKB_KEY_Hyper_L:
++     case XKB_KEY_Hyper_R:
+++    case XKB_KEY_Caps_Lock:
+++    case XKB_KEY_Shift_Lock:
++       return TRUE;
++     default:
++       return FALSE;
++@@ -584,6 +586,12 @@ handle_stickykeys_press (ClutterEvent            *event,
++     }
++ 
++   depressed_mods = xkb_state_serialize_mods (seat->xkb, XKB_STATE_MODS_DEPRESSED);
+++  /* Ignore the lock modifier mask, that one cannot be sticky, yet the
+++   * CAPS_LOCK key itself counts as a modifier as it might be remapped
+++   * to some other modifier which can be sticky.
+++   */
+++  depressed_mods &= ~CLUTTER_LOCK_MASK;
+++
++   new_latched_mask = device->stickykeys_latched_mask;
++   new_locked_mask = device->stickykeys_locked_mask;
++ 
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..59057567e27ccaf107e129fb606b55b865d5de84
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,31 @@@
++From: Olivier Fourdan <ofourdan@redhat.com>
++Date: Tue, 17 Apr 2018 13:32:21 +0200
++Subject: clutter/evdev: ignore injected events from IM
++
++Input method can inject key events, which leads to multiple reported key
++press/release events for a single user action.
++
++Ignore those events as this confuses keyboard accessibility.
++
++(cherry picked from commit c01b099dbdfee4b2a98864bc76bfa1b96a55c8fb)
++
++Origin: upstream, 3.28.3, commit:c7a38c31398871d2461b66963756816d268f524e
++---
++ clutter/clutter/evdev/clutter-input-device-evdev.c | 4 ++++
++ 1 file changed, 4 insertions(+)
++
++diff --git a/clutter/clutter/evdev/clutter-input-device-evdev.c b/clutter/clutter/evdev/clutter-input-device-evdev.c
++index 6c52361..e5dee65 100644
++--- a/clutter/clutter/evdev/clutter-input-device-evdev.c
+++++ b/clutter/clutter/evdev/clutter-input-device-evdev.c
++@@ -1122,6 +1122,10 @@ clutter_input_device_evdev_process_kbd_a11y_event (ClutterEvent               *e
++ {
++   ClutterInputDeviceEvdev *device_evdev = CLUTTER_INPUT_DEVICE_EVDEV (device);
++ 
+++  /* Ignore key events injected from IM */
+++  if (event->key.flags & CLUTTER_EVENT_FLAG_INPUT_METHOD)
+++    goto emit_event;
+++
++   if (!device_evdev->a11y_flags & CLUTTER_A11Y_KEYBOARD_ENABLED)
++     goto emit_event;
++ 
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..da327bcd7aed1a87d07402436838ca1a9eb78b5b
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,39 @@@
++From: Sam Spilsbury <sam@endlessm.com>
++Date: Tue, 10 Oct 2017 11:39:40 -0500
++Subject: core: Return -1 if meta_window_get_monitor is called on an unmanaged
++ window
++
++Forwarded: yes
++Bug-GNOME: https://bugzilla.gnome.org/show_bug.cgi?id=788834
++Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/bionic/+source/gnome-shell/+bug/1724439
++
++As opposed to crashing. In this case, letting the caller deal with
++it is the best policy, since this is public API.
++
++Fixes #78834
++---
++ src/core/window.c | 7 ++++++-
++ 1 file changed, 6 insertions(+), 1 deletion(-)
++
++diff --git a/src/core/window.c b/src/core/window.c
++index 743326c..441b5be 100644
++--- a/src/core/window.c
+++++ b/src/core/window.c
++@@ -3750,11 +3750,16 @@ maybe_move_attached_dialog (MetaWindow *window,
++  *
++  * Gets index of the monitor that this window is on.
++  *
++- * Return Value: The index of the monitor in the screens monitor list
+++ * Return Value: The index of the monitor in the screens monitor list, or -1
+++ * if the window has been recently unmanaged and does not have
+++ * a monitor.
++  */
++ int
++ meta_window_get_monitor (MetaWindow *window)
++ {
+++  if (!window->monitor)
+++    return -1;
+++
++   return window->monitor->number;
++ }
++ 
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..a443ddf5f4cddb66c55cc7503a79c5e45e8628c9
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,24 @@@
++From: Jeremy Bicha <jbicha@ubuntu.com>
++Date: Thu, 31 Aug 2017 07:11:39 -0400
++Subject: Skip test that started failing with 3.25
++
++That way we can still benefit by running all the other tests.
++
++Bug: https://bugzilla.gnome.org/785319
++Applied-upstream: no
++---
++ clutter/tests/conform/Makefile.am | 1 -
++ 1 file changed, 1 deletion(-)
++
++diff --git a/clutter/tests/conform/Makefile.am b/clutter/tests/conform/Makefile.am
++index bca10dc..a2b7bee 100644
++--- a/clutter/tests/conform/Makefile.am
+++++ b/clutter/tests/conform/Makefile.am
++@@ -26,7 +26,6 @@ actor_tests = \
++      actor-layout \
++      actor-meta \
++      actor-offscreen-limit-max-size \
++-     actor-offscreen-redirect \
++      actor-paint-opacity \
++      actor-size \
++      $(NULL)
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..68cdca64e30291c0fb302d4ba19db42681e6d3e6
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,26 @@@
++From: Jeremy Bicha <jbicha@ubuntu.com>
++Date: Fri, 5 May 2017 08:26:36 -0500
++Subject: Don't run failing tests
++
++That way we can still benefit by running all the other tests.
++
++Bug: https://bugzilla.gnome.org/782215
++Bug: https://bugzilla.gnome.org/753836
++Applied-upstream: no
++---
++ clutter/tests/conform/Makefile.am | 2 --
++ 1 file changed, 2 deletions(-)
++
++diff --git a/clutter/tests/conform/Makefile.am b/clutter/tests/conform/Makefile.am
++index 9cef08b..bca10dc 100644
++--- a/clutter/tests/conform/Makefile.am
+++++ b/clutter/tests/conform/Makefile.am
++@@ -28,8 +28,6 @@ actor_tests = \
++      actor-offscreen-limit-max-size \
++      actor-offscreen-redirect \
++      actor-paint-opacity \
++-     actor-pick \
++-     actor-shader-effect \
++      actor-size \
++      $(NULL)
++ 
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..b3422bb7b9e38a5826886b9ac4db6907fc92ccd9
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,301 @@@
++From: Daniel van Vugt <daniel.van.vugt@canonical.com>
++Date: Sun, 18 Mar 2018 12:56:36 -0400
++Subject: backends/x11: Support input-synaptics, if present.
++
++Add support for configuring the Xorg synaptics touchpad driver.
++
++Turns out it's very simple to support both libinput and synaptics
++simultaneously, both under the heading of XI2.
++
++Bug-Ubuntu: https://launchpad.net/bugs/1686081
++Forwarded: https://gitlab.gnome.org/GNOME/mutter/merge_requests/37
++Applied-upstream: no, rejected as not long-term sustainable
++Last-Update: 2018-03-16
++---
++ clutter/clutter/x11/clutter-device-manager-xi2.c |  15 ++-
++ src/backends/x11/meta-input-settings-x11.c       | 150 ++++++++++++++++++++---
++ 2 files changed, 148 insertions(+), 17 deletions(-)
++
++diff --git a/clutter/clutter/x11/clutter-device-manager-xi2.c b/clutter/clutter/x11/clutter-device-manager-xi2.c
++index 62f5583..b22982a 100644
++--- a/clutter/clutter/x11/clutter-device-manager-xi2.c
+++++ b/clutter/clutter/x11/clutter-device-manager-xi2.c
++@@ -267,8 +267,9 @@ is_touch_device (XIAnyClassInfo         **classes,
++ }
++ 
++ static gboolean
++-is_touchpad_device (ClutterBackendX11 *backend_x11,
++-                    XIDeviceInfo      *info)
+++has_8bit_property (ClutterBackendX11 *backend_x11,
+++                   XIDeviceInfo      *info,
+++                   const char        *name)
++ {
++   gulong nitems, bytes_after;
++   guint32 *data = NULL;
++@@ -276,7 +277,7 @@ is_touchpad_device (ClutterBackendX11 *backend_x11,
++   Atom type;
++   Atom prop;
++ 
++-  prop = XInternAtom (backend_x11->xdpy, "libinput Tapping Enabled", True);
+++  prop = XInternAtom (backend_x11->xdpy, name, True);
++   if (prop == None)
++     return FALSE;
++ 
++@@ -297,6 +298,14 @@ is_touchpad_device (ClutterBackendX11 *backend_x11,
++   return TRUE;
++ }
++ 
+++static gboolean
+++is_touchpad_device (ClutterBackendX11 *backend_x11,
+++                    XIDeviceInfo      *info)
+++{
+++  return has_8bit_property (backend_x11, info, "libinput Tapping Enabled") ||
+++         has_8bit_property (backend_x11, info, "Synaptics Off");
+++}
+++
++ static gboolean
++ get_device_ids (ClutterBackendX11  *backend_x11,
++                 XIDeviceInfo       *info,
++diff --git a/src/backends/x11/meta-input-settings-x11.c b/src/backends/x11/meta-input-settings-x11.c
++index 9687fb3..43752df 100644
++--- a/src/backends/x11/meta-input-settings-x11.c
+++++ b/src/backends/x11/meta-input-settings-x11.c
++@@ -169,8 +169,6 @@ meta_input_settings_x11_set_send_events (MetaInputSettings        *settings,
++ 
++   available = get_property (device, "libinput Send Events Modes Available",
++                             XA_INTEGER, 8, 2);
++-  if (!available)
++-    return;
++ 
++   switch (mode)
++     {
++@@ -184,6 +182,11 @@ meta_input_settings_x11_set_send_events (MetaInputSettings        *settings,
++       break;
++     }
++ 
+++  change_property (device, "Synaptics Off", XA_INTEGER, 8, &values, 1);
+++
+++  if (!available)
+++    return;
+++
++   if ((values[0] && !available[0]) || (values[1] && !available[1]))
++     g_warning ("Device '%s' does not support sendevents mode %d\n",
++                clutter_input_device_get_device_name (device), mode);
++@@ -217,11 +220,23 @@ meta_input_settings_x11_set_speed (MetaInputSettings  *settings,
++ {
++   MetaBackend *backend = meta_get_backend ();
++   Display *xdisplay = meta_backend_x11_get_xdisplay (META_BACKEND_X11 (backend));
++-  gfloat value = speed;
+++  gfloat *accel = get_property (device, "libinput Accel Speed",
+++                                XInternAtom (xdisplay, "FLOAT", False), 32, 1);
++ 
++-  change_property (device, "libinput Accel Speed",
++-                   XInternAtom (xdisplay, "FLOAT", False),
++-                   32, &value, 1);
+++  if (accel)
+++    {
+++      *accel = speed; /* Sounds confused, but libinput is confused. */
+++      change_property (device, "libinput Accel Speed",
+++                       XInternAtom (xdisplay, "FLOAT", False), 32, accel, 1);
+++      meta_XFree (accel);
+++    }
+++  else
+++    {
+++      gfloat scale = (speed <= -1.0) ? 1.0 : (speed + 1.0) * 12.5;
+++
+++      change_property (device, "Device Accel Velocity Scaling",
+++                       XInternAtom (xdisplay, "FLOAT", False), 32, &scale, 1);
+++    }
++ }
++ 
++ static void
++@@ -259,6 +274,9 @@ meta_input_settings_x11_set_disable_while_typing (MetaInputSettings  *settings,
++ 
++   change_property (device, "libinput Disable While Typing Enabled",
++                    XA_INTEGER, 8, &value, 1);
+++
+++  change_property (device, "Synaptics Palm Detection",
+++                   XA_INTEGER, 8, &value, 1);
++ }
++ 
++ static void
++@@ -267,9 +285,13 @@ meta_input_settings_x11_set_tap_enabled (MetaInputSettings  *settings,
++                                          gboolean            enabled)
++ {
++   guchar value = (enabled) ? 1 : 0;
+++  gint32 tap_time = (enabled) ? 180 : 0;
++ 
++   change_property (device, "libinput Tapping Enabled",
++                    XA_INTEGER, 8, &value, 1);
+++
+++  change_property (device, "Synaptics Tap Time",
+++                   XA_INTEGER, 32, &tap_time, 1);
++ }
++ 
++ static void
++@@ -281,6 +303,9 @@ meta_input_settings_x11_set_tap_and_drag_enabled (MetaInputSettings  *settings,
++ 
++   change_property (device, "libinput Tapping Drag Enabled",
++                    XA_INTEGER, 8, &value, 1);
+++
+++  change_property (device, "Synaptics Gestures",
+++                   XA_INTEGER, 8, &value, 1);
++ }
++ 
++ static void
++@@ -288,10 +313,22 @@ meta_input_settings_x11_set_invert_scroll (MetaInputSettings  *settings,
++                                            ClutterInputDevice *device,
++                                            gboolean            inverted)
++ {
++-  guchar value = (inverted) ? 1 : 0;
+++  gint32 *scroll_dist = get_property (device, "Synaptics Scrolling Distance",
+++                                      XA_INTEGER, 32, 2);
+++  if (scroll_dist)
+++    {
+++      scroll_dist[0] = inverted ? -ABS (scroll_dist[0]) : ABS (scroll_dist[0]);
+++      change_property (device, "Synaptics Scrolling Distance",
+++                       XA_INTEGER, 32, scroll_dist, 2);
+++      meta_XFree (scroll_dist);
+++    }
+++  else
+++    {
+++      guchar value = (inverted) ? 1 : 0;
++ 
++-  change_property (device, "libinput Natural Scrolling Enabled",
++-                   XA_INTEGER, 8, &value, 1);
+++      change_property (device, "libinput Natural Scrolling Enabled",
+++                       XA_INTEGER, 8, &value, 1);
+++    }
++ }
++ 
++ static void
++@@ -303,6 +340,16 @@ meta_input_settings_x11_set_edge_scroll (MetaInputSettings            *settings,
++   guchar *current = NULL;
++   guchar *available = NULL;
++ 
+++  current = get_property (device, "Synaptics Edge Scrolling",
+++                          XA_INTEGER, 8, 3);
+++  if (current)
+++    {
+++      current[0] = current[1] = !!edge_scroll_enabled;
+++      change_property (device, "Synaptics Edge Scrolling",
+++                       XA_INTEGER, 8, current, 3);
+++      goto out;
+++    }
+++
++   available = get_property (device, "libinput Scroll Methods Available",
++                             XA_INTEGER, 8, SCROLL_METHOD_NUM_FIELDS);
++   if (!available || !available[SCROLL_METHOD_FIELD_EDGE])
++@@ -332,6 +379,16 @@ meta_input_settings_x11_set_two_finger_scroll (MetaInputSettings            *set
++   guchar *current = NULL;
++   guchar *available = NULL;
++ 
+++  current = get_property (device, "Synaptics Two-Finger Scrolling",
+++                          XA_INTEGER, 8, 2);
+++  if (current)
+++    {
+++      current[0] = current[1] = !!two_finger_scroll_enabled;
+++      change_property (device, "Synaptics Two-Finger Scrolling",
+++                       XA_INTEGER, 8, current, 2);
+++      goto out;
+++    }
+++
++   available = get_property (device, "libinput Scroll Methods Available",
++                             XA_INTEGER, 8, SCROLL_METHOD_NUM_FIELDS);
++   if (!available || !available[SCROLL_METHOD_FIELD_2FG])
++@@ -359,10 +416,19 @@ meta_input_settings_x11_has_two_finger_scroll (MetaInputSettings  *settings,
++   guchar *available = NULL;
++   gboolean has_two_finger = TRUE;
++ 
++-  available = get_property (device, "libinput Scroll Methods Available",
++-                            XA_INTEGER, 8, SCROLL_METHOD_NUM_FIELDS);
++-  if (!available || !available[SCROLL_METHOD_FIELD_2FG])
++-    has_two_finger = FALSE;
+++  available = get_property (device, "Synaptics Two-Finger Scrolling",
+++                            XA_INTEGER, 8, 2);
+++  if (available)
+++    {
+++      has_two_finger = available[0] || available[1];
+++    }
+++  else
+++    {
+++      available = get_property (device, "libinput Scroll Methods Available",
+++                                XA_INTEGER, 8, SCROLL_METHOD_NUM_FIELDS);
+++      if (!available || !available[SCROLL_METHOD_FIELD_2FG])
+++        has_two_finger = FALSE;
+++    }
++ 
++   meta_XFree (available);
++   return has_two_finger;
++@@ -377,6 +443,58 @@ meta_input_settings_x11_set_scroll_button (MetaInputSettings  *settings,
++                    XA_INTEGER, 32, &button, 1);
++ }
++ 
+++static void
+++meta_input_settings_x11_set_click_method_synaptics (MetaInputSettings *settings,
+++                                          ClutterInputDevice          *device,
+++                                          GDesktopTouchpadClickMethod  mode)
+++{
+++  /* { RT corner, RB, LT, LB, 1 finger, 2 fingers, 3 fingers } */
+++  guchar tap_action_default[7] = { 2, 3, 0, 0, 1, 3, 0 };
+++  guchar tap_action_areas[7]   = { 2, 3, 0, 0, 1, 0, 0 };
+++  guchar tap_action_fingers[7] = { 0, 0, 0, 0, 1, 3, 2 };
+++  guchar tap_action_none[7]    = { 0, 0, 0, 0, 1, 0, 0 };
+++  guchar *tap_action = tap_action_default;
+++
+++  /* TODO On startup save the default value of 'Synaptics Soft Button Areas',
+++          but save it where? */
+++  gint32 zero_button_areas[8] = { 0, 0, 0, 0, 0, 0, 0, 0 };
+++  gint32 *button_areas_known = NULL;
+++
+++  switch (mode)
+++    {
+++    case G_DESKTOP_TOUCHPAD_CLICK_METHOD_DEFAULT:
+++      tap_action = tap_action_default;
+++      /* Doing nothing right now will give the correct default, unless changed
+++         during the session */
+++      break;
+++    case G_DESKTOP_TOUCHPAD_CLICK_METHOD_NONE:
+++      tap_action = tap_action_none;
+++      button_areas_known = zero_button_areas;
+++      break;
+++    case G_DESKTOP_TOUCHPAD_CLICK_METHOD_AREAS:
+++      tap_action = tap_action_areas;
+++      /* Doing nothing right now will give the correct default, unless changed
+++         during the session */
+++      break;
+++    case G_DESKTOP_TOUCHPAD_CLICK_METHOD_FINGERS:
+++      tap_action = tap_action_fingers;
+++      button_areas_known = zero_button_areas;
+++      break;
+++    default:
+++      g_assert_not_reached ();
+++      return;
+++    }
+++
+++  change_property (device, "Synaptics Tap Action",
+++                   XA_INTEGER, 8, tap_action, 7);
+++  change_property (device, "Synaptics Click Action",
+++                   XA_INTEGER, 8, tap_action + 4, 3);
+++
+++  if (button_areas_known)
+++    change_property (device, "Synaptics Soft Button Areas",
+++                     XA_INTEGER, 32, button_areas_known, 8);
+++}
+++
++ static void
++ meta_input_settings_x11_set_click_method (MetaInputSettings           *settings,
++                                           ClutterInputDevice          *device,
++@@ -388,7 +506,11 @@ meta_input_settings_x11_set_click_method (MetaInputSettings           *settings,
++   available = get_property (device, "libinput Click Methods Available",
++                             XA_INTEGER, 8, 2);
++   if (!available)
++-    return;
+++    {
+++      meta_input_settings_x11_set_click_method_synaptics (settings, device,
+++                                                          mode);
+++      return;
+++    }
++ 
++   switch (mode)
++     {
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..029f95f5db2e57a9cb419a0edcd7d1639d0be8e8
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,13 @@@
++wayland-Use-cursor-position-in-logical-monitor.patch
++clutter-evdev-ignore-injected-events-from-IM.patch
++clutter-evdev-Don-t-ignore-CAPS-lock-as-modifier.patch
++theme-use-gtk_render_icon_suface-to-paint-button-icon.patch
++theme-load-icons-as-Gtk-does-with-fallback-and-RTL-suppor.patch
++clutter-Smooth-out-master-clock-to-smooth-visuals.patch
++core-Return-1-if-meta_window_get_monitor-is-called-on-an-.patch
++backends-Move-MetaOutput-crtc-field-into-private-struct.patch
++backends-Add-logical-monitor-monitor-output-crtc-ref-chai.patch
++bgo768531_workaround-startup-notifications.patch
++debian/synaptics-support.patch
++debian/skip-failing-tests.patch
++debian/skip-failing-tests-325.patch
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..48608d7715fbf01f466ef1e6e942dfa0f9739f5b
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,56 @@@
++From: =?utf-8?b?Ik1hcmNvIFRyZXZpc2FuIChUcmV2acOxbyki?= <mail@3v1n0.net>
++Date: Fri, 30 Mar 2018 15:17:39 -0600
++Subject: theme: load icons as Gtk does with fallback and RTL support
++
++Forwarded: yes, https://gitlab.gnome.org/GNOME/mutter/merge_requests/62
++---
++ src/ui/theme.c | 36 ++++++++++++++++++++++++++++--------
++ 1 file changed, 28 insertions(+), 8 deletions(-)
++
++diff --git a/src/ui/theme.c b/src/ui/theme.c
++index c88ae54..7a77078 100644
++--- a/src/ui/theme.c
+++++ b/src/ui/theme.c
++@@ -878,14 +878,34 @@ meta_frame_layout_draw_with_style (MetaFrameLayout         *layout,
++ 
++           if (icon_name)
++             {
++-              GtkIconTheme *theme = gtk_icon_theme_get_default ();
++-              GtkIconInfo *info;
++-              GdkPixbuf *pixbuf;
++-
++-              info = gtk_icon_theme_lookup_icon_for_scale (theme, icon_name,
++-                                                           layout->icon_size, scale, 0);
++-              pixbuf = gtk_icon_info_load_symbolic_for_context (info, style, NULL, NULL);
++-              surface = gdk_cairo_surface_create_from_pixbuf (pixbuf, scale, NULL);
+++              g_autoptr (GIcon) icon = NULL;
+++              g_autoptr (GtkIconInfo) info = NULL;
+++              g_autoptr (GdkPixbuf) pixbuf = NULL;
+++              GtkIconTheme *theme;
+++              int flags;
+++
+++              theme = gtk_icon_theme_get_default ();
+++
+++              /* This can't be exactly like Gtk does as some -gtk-* css
+++               * properties that are used for setting the loading flags
+++               * are not accessible from here */
+++              flags = GTK_ICON_LOOKUP_USE_BUILTIN;
+++              flags |= (meta_get_locale_direction () == META_LOCALE_DIRECTION_LTR) ?
+++                        GTK_ICON_LOOKUP_DIR_LTR : GTK_ICON_LOOKUP_DIR_RTL;
+++
+++              icon = g_themed_icon_new_with_default_fallbacks (icon_name);
+++              info = gtk_icon_theme_lookup_by_gicon_for_scale (theme, icon,
+++                                                               layout->icon_size,
+++                                                               scale, flags);
+++              if (gtk_icon_info_is_symbolic (info))
+++                pixbuf = gtk_icon_info_load_symbolic_for_context (info, style,
+++                                                                  NULL, NULL);
+++              else
+++                pixbuf = gtk_icon_info_load_icon (info, NULL);
+++
+++              if (pixbuf)
+++                surface = gdk_cairo_surface_create_from_pixbuf (pixbuf, scale,
+++                                                                NULL);
++             }
++ 
++           if (surface)
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..8048e248e3235b05a75384025cacdb5274dda98b
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,46 @@@
++From: =?utf-8?b?Ik1hcmNvIFRyZXZpc2FuIChUcmV2acOxbyki?= <mail@3v1n0.net>
++Date: Fri, 30 Mar 2018 14:13:41 -0600
++Subject: theme: use gtk_render_icon_suface to paint button icon
++
++Bug-Ubuntu: https://bugs.launchpad.net/ubuntu/+source/mutter/+bug/1764558
++Bug-GNOME: https://gitlab.gnome.org/GNOME/mutter/issues/100
++Forwarded: yes, https://gitlab.gnome.org/GNOME/mutter/merge_requests/62
++
++This will properly take care of the icon transformations
++and of the shadow.
++
++Fixes #100
++---
++ src/ui/theme.c | 18 ++++--------------
++ 1 file changed, 4 insertions(+), 14 deletions(-)
++
++diff --git a/src/ui/theme.c b/src/ui/theme.c
++index c0bb9b6..c88ae54 100644
++--- a/src/ui/theme.c
+++++ b/src/ui/theme.c
++@@ -890,21 +890,11 @@ meta_frame_layout_draw_with_style (MetaFrameLayout         *layout,
++ 
++           if (surface)
++             {
++-              float width, height;
++-              int x, y;
++-
++-              width = cairo_image_surface_get_width (surface) / scale;
++-              height = cairo_image_surface_get_height (surface) / scale;
++-              x = button_rect.x + (button_rect.width - layout->icon_size) / 2;
++-              y = button_rect.y + (button_rect.height - layout->icon_size) / 2;
++-
++-              cairo_translate (cr, x, y);
++-              cairo_scale (cr,
++-                           layout->icon_size / width,
++-                           layout->icon_size / height);
++-              cairo_set_source_surface (cr, surface, 0, 0);
++-              cairo_paint (cr);
+++              double x, y;
+++              x = button_rect.x + (button_rect.width - layout->icon_size) / 2.0;
+++              y = button_rect.y + (button_rect.height - layout->icon_size) / 2.0;
++ 
+++              gtk_render_icon_surface (style, cr, surface, x, y);
++               cairo_surface_destroy (surface);
++             }
++         }
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..0cb0657eb1f943cd40e3db9090578a0f89221bbd
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,87 @@@
++From: Olivier Fourdan <ofourdan@redhat.com>
++Date: Fri, 23 Mar 2018 13:05:12 +0100
++Subject: wayland: Use cursor position in logical monitor
++
++When using two monitors size by side with different scales, once the
++cursor moves from one output to another one, its size changes based on
++the scale of the given output.
++
++Changing the size of the cursor can cause the cursor area to change
++output again if the hotspot is not exactly at the top left corner of the
++area, causing the texture of the cursor to change, which will trigger
++another output change, so on and so forth causing continuous surface
++enter/leave event which flood the clients and eventually kill them.
++
++Change the logic to use only the actual cursor position to determine if
++its on the given logical monitor, so that it remains immune to scale
++changes induced by output scale differences.
++
++(cherry picked from commit 67917db45f96befb777e5f331a775ea3c2b53012)
++
++Bug: https://gitlab.gnome.org/GNOME/mutter/issues/83
++Origin: upstream, 3.28.3, commit:7d52be02290bd92589fbea756ca3431af8e71a94
++---
++ src/backends/meta-cursor-renderer.c            | 12 ++++++++++++
++ src/backends/meta-cursor-renderer.h            |  1 +
++ src/wayland/meta-wayland-surface-role-cursor.c |  9 +++++----
++ 3 files changed, 18 insertions(+), 4 deletions(-)
++
++diff --git a/src/backends/meta-cursor-renderer.c b/src/backends/meta-cursor-renderer.c
++index 0bdc59c..f6470e6 100644
++--- a/src/backends/meta-cursor-renderer.c
+++++ b/src/backends/meta-cursor-renderer.c
++@@ -264,6 +264,18 @@ meta_cursor_renderer_set_position (MetaCursorRenderer *renderer,
++   update_cursor (renderer, priv->displayed_cursor);
++ }
++ 
+++ClutterPoint
+++meta_cursor_renderer_get_position (MetaCursorRenderer *renderer)
+++{
+++  MetaCursorRendererPrivate *priv =
+++    meta_cursor_renderer_get_instance_private (renderer);
+++
+++  return (ClutterPoint) {
+++    .x = priv->current_x,
+++    .y = priv->current_y
+++  };
+++}
+++
++ MetaCursorSprite *
++ meta_cursor_renderer_get_cursor (MetaCursorRenderer *renderer)
++ {
++diff --git a/src/backends/meta-cursor-renderer.h b/src/backends/meta-cursor-renderer.h
++index 8ac0fe7..1691f44 100644
++--- a/src/backends/meta-cursor-renderer.h
+++++ b/src/backends/meta-cursor-renderer.h
++@@ -62,6 +62,7 @@ void meta_cursor_renderer_set_cursor (MetaCursorRenderer *renderer,
++ void meta_cursor_renderer_set_position (MetaCursorRenderer *renderer,
++                                         float               x,
++                                         float               y);
+++ClutterPoint meta_cursor_renderer_get_position (MetaCursorRenderer *renderer);
++ void meta_cursor_renderer_force_update (MetaCursorRenderer *renderer);
++ 
++ MetaCursorSprite * meta_cursor_renderer_get_cursor (MetaCursorRenderer *renderer);
++diff --git a/src/wayland/meta-wayland-surface-role-cursor.c b/src/wayland/meta-wayland-surface-role-cursor.c
++index 1c8ba94..d118a89 100644
++--- a/src/wayland/meta-wayland-surface-role-cursor.c
+++++ b/src/wayland/meta-wayland-surface-role-cursor.c
++@@ -195,14 +195,15 @@ cursor_surface_role_is_on_logical_monitor (MetaWaylandSurfaceRole *role,
++     META_WAYLAND_SURFACE_ROLE_CURSOR (surface->role);
++   MetaWaylandSurfaceRoleCursorPrivate *priv =
++     meta_wayland_surface_role_cursor_get_instance_private (cursor_role);
++-  ClutterRect rect;
+++  ClutterPoint point;
++   ClutterRect logical_monitor_rect;
++ 
++-  rect = meta_cursor_renderer_calculate_rect (priv->cursor_renderer,
++-                                              priv->cursor_sprite);
++   logical_monitor_rect =
++     meta_rectangle_to_clutter_rect (&logical_monitor->rect);
++-  return clutter_rect_intersection (&rect, &logical_monitor_rect, NULL);
+++
+++  point = meta_cursor_renderer_get_position (priv->cursor_renderer);
+++
+++  return clutter_rect_contains_point (&logical_monitor_rect, &point);
++ }
++ 
++ static void
diff --cc debian/rules
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..fffd803a76ce13eb3774eac6bee59c9892e1a7c6
new file mode 100755 (executable)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,59 @@@
++#!/usr/bin/make -f
++
++export DEB_BUILD_MAINT_OPTIONS = hardening=+all
++export DEB_LDFLAGS_MAINT_APPEND = -Wl,--as-needed
++
++%:
++      dh $@ --with gir,gnome
++
++override_dh_autoreconf:
++      dh_autoreconf --as-needed
++
++ifeq ($(DEB_HOST_ARCH_OS),linux)
++CONFFLAGS = \
++      --enable-egl-device \
++      --enable-wayland \
++      --enable-native-backend
++else
++CONFFLAGS += \
++      --disable-wayland-egl-platform \
++      --disable-wayland-egl-server \
++      --disable-kms-egl-platform \
++      --disable-wayland \
++      --disable-native-backend
++endif
++
++override_dh_auto_configure:
++      dh_auto_configure -- \
++              --libexecdir="\$${prefix}/lib/mutter" \
++              --enable-startup-notification \
++              --enable-compile-warnings \
++              $(CONFFLAGS)
++
++# See https://bugs.debian.org/874077
++# Ignore test failures on Debian and on s390x
++override_dh_auto_test:
++ifneq (,$(findstring $(DEB_HOST_ARCH),"s390x"))
++      -xvfb-run dh_auto_test
++else ifeq (yes,$(shell dpkg-vendor --derives-from Ubuntu && echo yes))
++      xvfb-run dh_auto_test
++else
++      -xvfb-run dh_auto_test
++endif
++
++override_dh_install:
++      find debian/tmp -name '*.la' -print -delete
++      dh_install
++
++override_dh_missing:
++      dh_missing --fail-missing
++
++override_dh_girepository:
++      dh_girepository /usr/lib/$(DEB_HOST_MULTIARCH)/mutter
++
++override_dh_makeshlibs:
++      dh_makeshlibs -V'libmutter-2-0 (>= 3.27.91)'
++
++override_dh_strip:
++      dh_strip --dbgsym-migration='mutter-dbg (<< 3.18.3-2~)'
++
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..163aaf8d82b6c54f23c45f32895dbdfdcc27b047
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,1 @@@
++3.0 (quilt)
diff --cc debian/watch
index 0000000000000000000000000000000000000000,0000000000000000000000000000000000000000..ac388170d8e661a2d7fd79eb7bcac90514ca2594
new file mode 100644 (file)
--- /dev/null
--- /dev/null
@@@ -1,0 -1,0 +1,3 @@@
++version=4
++https://download.gnome.org/sources/@PACKAGE@/([\d\.]+[02468])/ \
++      @PACKAGE@@ANY_VERSION@\.tar\.xz