[arch-commits] Commit in mutter/repos (10 files)
Jan Steffens
heftig at archlinux.org
Wed Apr 15 11:10:28 UTC 2015
Date: Wednesday, April 15, 2015 @ 13:10:28
Author: heftig
Revision: 236647
archrelease: copy trunk to extra-i686, extra-x86_64
Added:
mutter/repos/extra-i686/PKGBUILD
(from rev 236646, mutter/trunk/PKGBUILD)
mutter/repos/extra-i686/mutter.install
(from rev 236646, mutter/trunk/mutter.install)
mutter/repos/extra-i686/revert.patch
(from rev 236646, mutter/trunk/revert.patch)
mutter/repos/extra-x86_64/PKGBUILD
(from rev 236646, mutter/trunk/PKGBUILD)
mutter/repos/extra-x86_64/mutter.install
(from rev 236646, mutter/trunk/mutter.install)
mutter/repos/extra-x86_64/revert.patch
(from rev 236646, mutter/trunk/revert.patch)
Deleted:
mutter/repos/extra-i686/PKGBUILD
mutter/repos/extra-i686/mutter.install
mutter/repos/extra-x86_64/PKGBUILD
mutter/repos/extra-x86_64/mutter.install
-----------------------------+
/PKGBUILD | 98 ++++++++++++++++
/mutter.install | 38 ++++++
extra-i686/PKGBUILD | 39 ------
extra-i686/mutter.install | 19 ---
extra-i686/revert.patch | 244 ++++++++++++++++++++++++++++++++++++++++++
extra-x86_64/PKGBUILD | 39 ------
extra-x86_64/mutter.install | 19 ---
extra-x86_64/revert.patch | 244 ++++++++++++++++++++++++++++++++++++++++++
8 files changed, 624 insertions(+), 116 deletions(-)
Deleted: extra-i686/PKGBUILD
===================================================================
--- extra-i686/PKGBUILD 2015-04-15 11:08:53 UTC (rev 236646)
+++ extra-i686/PKGBUILD 2015-04-15 11:10:28 UTC (rev 236647)
@@ -1,39 +0,0 @@
-# $Id$
-# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
-# Maintainer: Ionut Biru <ibiru at archlinux.org>
-# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
-
-pkgname=mutter
-pkgver=3.16.1
-pkgrel=1
-pkgdesc="A window manager for GNOME"
-arch=(i686 x86_64)
-license=('GPL')
-depends=('clutter' 'dconf' 'gobject-introspection-runtime' 'gsettings-desktop-schemas' 'libcanberra' 'startup-notification' 'zenity' 'libsm' 'gnome-desktop' 'upower' 'libxkbcommon-x11' 'gnome-settings-daemon')
-makedepends=('intltool' 'libxkbcommon-x11' 'gobject-introspection')
-conflicts=('mutter-wayland')
-replaces=('mutter-wayland')
-url="http://www.gnome.org"
-groups=('gnome')
-options=('!emptydirs')
-install=mutter.install
-source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver:0:4}/$pkgname-$pkgver.tar.xz)
-sha256sums=('be487f92bfa60c88fe474bd99f9665d57506479a06a48e00a7dd3171029b701c')
-
-build() {
- cd "$pkgname-$pkgver"
- ./configure --prefix=/usr --sysconfdir=/etc \
- --libexecdir=/usr/lib/mutter \
- --localstatedir=/var --disable-static \
- --disable-schemas-compile --enable-compile-warnings=minimum
-
- #https://bugzilla.gnome.org/show_bug.cgi?id=655517
- sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
-
- make
-}
-
-package() {
- cd "$pkgname-$pkgver"
- make DESTDIR="$pkgdir" install
-}
Copied: mutter/repos/extra-i686/PKGBUILD (from rev 236646, mutter/trunk/PKGBUILD)
===================================================================
--- extra-i686/PKGBUILD (rev 0)
+++ extra-i686/PKGBUILD 2015-04-15 11:10:28 UTC (rev 236647)
@@ -0,0 +1,49 @@
+# $Id$
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+# Maintainer: Ionut Biru <ibiru at archlinux.org>
+# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
+
+pkgname=mutter
+pkgver=3.16.1
+pkgrel=2
+pkgdesc="A window manager for GNOME"
+arch=(i686 x86_64)
+license=('GPL')
+depends=('clutter' 'dconf' 'gobject-introspection-runtime' 'gsettings-desktop-schemas' 'libcanberra' 'startup-notification' 'zenity' 'libsm' 'gnome-desktop' 'upower' 'libxkbcommon-x11' 'gnome-settings-daemon')
+makedepends=('intltool' 'libxkbcommon-x11' 'gobject-introspection')
+conflicts=('mutter-wayland')
+replaces=('mutter-wayland')
+url="http://www.gnome.org"
+groups=('gnome')
+options=('!emptydirs')
+install=mutter.install
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver:0:4}/$pkgname-$pkgver.tar.xz
+ revert.patch)
+sha256sums=('be487f92bfa60c88fe474bd99f9665d57506479a06a48e00a7dd3171029b701c'
+ 'ec06d41973e82a608d9de7e7369ad323a58f6f644016657ac54ce226321a6570')
+
+prepare() {
+ cd "$pkgname-$pkgver"
+
+ # Revert input-settings: Ensure that we always apply the same set of settings
+ # because it asserts when VT switching
+ patch -Np1 -i ../revert.patch
+}
+
+build() {
+ cd "$pkgname-$pkgver"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/mutter \
+ --localstatedir=/var --disable-static \
+ --disable-schemas-compile --enable-compile-warnings=minimum
+
+ #https://bugzilla.gnome.org/show_bug.cgi?id=655517
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+ make
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
Deleted: extra-i686/mutter.install
===================================================================
--- extra-i686/mutter.install 2015-04-15 11:08:53 UTC (rev 236646)
+++ extra-i686/mutter.install 2015-04-15 11:10:28 UTC (rev 236647)
@@ -1,19 +0,0 @@
-pkgname=mutter
-
-post_install() {
- glib-compile-schemas /usr/share/glib-2.0/schemas
-}
-
-pre_upgrade() {
- if [ -f /usr/share/gconf/schemas/$pkgname.schemas ]; then
- /usr/sbin/gconfpkg --uninstall $pkgname
- fi
-}
-
-post_upgrade() {
- post_install
-}
-
-post_remove() {
- post_install
-}
Copied: mutter/repos/extra-i686/mutter.install (from rev 236646, mutter/trunk/mutter.install)
===================================================================
--- extra-i686/mutter.install (rev 0)
+++ extra-i686/mutter.install 2015-04-15 11:10:28 UTC (rev 236647)
@@ -0,0 +1,19 @@
+pkgname=mutter
+
+post_install() {
+ glib-compile-schemas /usr/share/glib-2.0/schemas
+}
+
+pre_upgrade() {
+ if [ -f /usr/share/gconf/schemas/$pkgname.schemas ]; then
+ /usr/sbin/gconfpkg --uninstall $pkgname
+ fi
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
Copied: mutter/repos/extra-i686/revert.patch (from rev 236646, mutter/trunk/revert.patch)
===================================================================
--- extra-i686/revert.patch (rev 0)
+++ extra-i686/revert.patch 2015-04-15 11:10:28 UTC (rev 236647)
@@ -0,0 +1,244 @@
+diff --git c/src/backends/meta-input-settings.c i/src/backends/meta-input-settings.c
+index 004044e..4860fa9 100644
+--- c/src/backends/meta-input-settings.c
++++ i/src/backends/meta-input-settings.c
+@@ -279,82 +279,51 @@ update_mouse_left_handed (MetaInputSettings *input_settings,
+ }
+ }
+
+-static GSettings *
+-get_settings_for_device_type (MetaInputSettings *input_settings,
+- ClutterInputDeviceType type)
+-{
+- MetaInputSettingsPrivate *priv;
+- priv = meta_input_settings_get_instance_private (input_settings);
+- switch (type)
+- {
+- case CLUTTER_POINTER_DEVICE:
+- return priv->mouse_settings;
+- case CLUTTER_TOUCHPAD_DEVICE:
+- return priv->touchpad_settings;
+- default:
+- return NULL;
+- }
+-}
+-
+ static void
+ update_device_speed (MetaInputSettings *input_settings,
+- ClutterInputDevice *device)
++ GSettings *settings,
++ ClutterInputDevice *device,
++ ClutterInputDeviceType type)
+ {
+- GSettings *settings;
+- ConfigDoubleFunc func;
+- const gchar *key = "speed";
++ MetaInputSettingsClass *input_settings_class;
++ gdouble speed;
+
+- func = META_INPUT_SETTINGS_GET_CLASS (input_settings)->set_speed;
++ input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings);
++ speed = g_settings_get_double (settings, "speed");
+
+ if (device)
+- {
+- settings = get_settings_for_device_type (input_settings,
+- clutter_input_device_get_device_type (device));
+- if (!settings)
+- return;
+-
+- settings_device_set_double_setting (input_settings, device, func,
+- g_settings_get_double (settings, key));
+- }
++ settings_device_set_double_setting (input_settings, device,
++ input_settings_class->set_speed,
++ speed);
+ else
+- {
+- settings = get_settings_for_device_type (input_settings, CLUTTER_POINTER_DEVICE);
+- settings_set_double_setting (input_settings, CLUTTER_POINTER_DEVICE, func,
+- g_settings_get_double (settings, key));
+- settings = get_settings_for_device_type (input_settings, CLUTTER_TOUCHPAD_DEVICE);
+- settings_set_double_setting (input_settings, CLUTTER_TOUCHPAD_DEVICE, func,
+- g_settings_get_double (settings, key));
+- }
++ settings_set_double_setting (input_settings, type,
++ input_settings_class->set_speed,
++ speed);
+ }
+
+ static void
+ update_device_natural_scroll (MetaInputSettings *input_settings,
+- ClutterInputDevice *device)
++ GSettings *settings,
++ ClutterInputDevice *device,
++ ClutterInputDeviceType type)
+ {
+- GSettings *settings;
+- ConfigBoolFunc func;
+- const gchar *key = "natural-scroll";
++ MetaInputSettingsClass *input_settings_class;
++ gboolean enabled;
+
+- func = META_INPUT_SETTINGS_GET_CLASS (input_settings)->set_invert_scroll;
++ input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings);
++ enabled = g_settings_get_boolean (settings, "natural-scroll");
+
+ if (device)
+ {
+- settings = get_settings_for_device_type (input_settings,
+- clutter_input_device_get_device_type (device));
+- if (!settings)
+- return;
+-
+- settings_device_set_bool_setting (input_settings, device, func,
+- g_settings_get_boolean (settings, key));
++ settings_device_set_bool_setting (input_settings, device,
++ input_settings_class->set_invert_scroll,
++ enabled);
+ }
+ else
+ {
+- settings = get_settings_for_device_type (input_settings, CLUTTER_POINTER_DEVICE);
+- settings_set_bool_setting (input_settings, CLUTTER_POINTER_DEVICE, func,
+- g_settings_get_boolean (settings, key));
+- settings = get_settings_for_device_type (input_settings, CLUTTER_TOUCHPAD_DEVICE);
+- settings_set_bool_setting (input_settings, CLUTTER_TOUCHPAD_DEVICE, func,
+- g_settings_get_boolean (settings, key));
++ settings_set_bool_setting (input_settings, type,
++ input_settings_class->set_invert_scroll,
++ enabled);
+ }
+ }
+
+@@ -488,9 +457,7 @@ update_trackball_scroll_button (MetaInputSettings *input_settings,
+
+ priv = meta_input_settings_get_instance_private (input_settings);
+ input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings);
+- /* This key is 'i' in the schema but it also specifies a minimum
+- * range of 0 so the cast here is safe. */
+- button = (guint) g_settings_get_int (priv->trackball_settings, "scroll-wheel-emulation-button");
++ button = g_settings_get_uint (priv->trackball_settings, "scroll-wheel-emulation-button");
+
+ if (device && device_is_trackball (device))
+ {
+@@ -606,18 +573,22 @@ meta_input_settings_changed_cb (GSettings *settings,
+ if (strcmp (key, "left-handed") == 0)
+ update_mouse_left_handed (input_settings, NULL);
+ else if (strcmp (key, "speed") == 0)
+- update_device_speed (input_settings, NULL);
++ update_device_speed (input_settings, settings, NULL,
++ CLUTTER_POINTER_DEVICE);
+ else if (strcmp (key, "natural-scroll") == 0)
+- update_device_natural_scroll (input_settings, NULL);
++ update_device_natural_scroll (input_settings, settings,
++ NULL, CLUTTER_POINTER_DEVICE);
+ }
+ else if (settings == priv->touchpad_settings)
+ {
+ if (strcmp (key, "left-handed") == 0)
+ update_touchpad_left_handed (input_settings, NULL);
+ else if (strcmp (key, "speed") == 0)
+- update_device_speed (input_settings, NULL);
++ update_device_speed (input_settings, settings, NULL,
++ CLUTTER_TOUCHPAD_DEVICE);
+ else if (strcmp (key, "natural-scroll") == 0)
+- update_device_natural_scroll (input_settings, NULL);
++ update_device_natural_scroll (input_settings, settings,
++ NULL, CLUTTER_TOUCHPAD_DEVICE);
+ else if (strcmp (key, "tap-to-click") == 0)
+ update_touchpad_tap_enabled (input_settings, NULL);
+ else if (strcmp (key, "send-events") == 0)
+@@ -736,34 +707,44 @@ check_add_mappable_device (MetaInputSettings *input_settings,
+ }
+
+ static void
+-apply_device_settings (MetaInputSettings *input_settings,
+- ClutterInputDevice *device)
+-{
+- update_mouse_left_handed (input_settings, device);
+- update_device_speed (input_settings, device);
+- update_device_natural_scroll (input_settings, device);
+-
+- update_touchpad_left_handed (input_settings, device);
+- update_device_speed (input_settings, device);
+- update_device_natural_scroll (input_settings, device);
+- update_touchpad_tap_enabled (input_settings, device);
+- update_touchpad_send_events (input_settings, device);
+- update_touchpad_scroll_method (input_settings, device);
+- update_touchpad_click_method (input_settings, device);
+-
+- update_trackball_scroll_button (input_settings, device);
+-}
+-
+-static void
+ meta_input_settings_device_added (ClutterDeviceManager *device_manager,
+ ClutterInputDevice *device,
+ MetaInputSettings *input_settings)
+ {
++ ClutterInputDeviceType type;
++ MetaInputSettingsPrivate *priv;
++
+ if (clutter_input_device_get_device_mode (device) == CLUTTER_INPUT_MODE_MASTER)
+ return;
+
+- apply_device_settings (input_settings, device);
+- check_add_mappable_device (input_settings, device);
++ priv = meta_input_settings_get_instance_private (input_settings);
++ type = clutter_input_device_get_device_type (device);
++
++ if (type == CLUTTER_POINTER_DEVICE)
++ {
++ update_mouse_left_handed (input_settings, device);
++ update_device_speed (input_settings, priv->mouse_settings, device, type);
++
++ if (device_is_trackball (device))
++ update_trackball_scroll_button (input_settings, device);
++ }
++ else if (type == CLUTTER_TOUCHPAD_DEVICE)
++ {
++ update_touchpad_left_handed (input_settings, device);
++ update_touchpad_tap_enabled (input_settings, device);
++ update_touchpad_scroll_method (input_settings, device);
++ update_touchpad_click_method (input_settings, device);
++ update_touchpad_send_events (input_settings, device);
++
++ update_device_speed (input_settings, priv->touchpad_settings,
++ device, type);
++ update_device_natural_scroll (input_settings, priv->touchpad_settings,
++ device, type);
++ }
++ else
++ {
++ check_add_mappable_device (input_settings, device);
++ }
+ }
+
+ static void
+@@ -801,9 +782,25 @@ static void
+ meta_input_settings_constructed (GObject *object)
+ {
+ MetaInputSettings *input_settings = META_INPUT_SETTINGS (object);
++ MetaInputSettingsPrivate *priv;
++
++ priv = meta_input_settings_get_instance_private (input_settings);
++
++ update_mouse_left_handed (input_settings, NULL);
++
++ update_touchpad_left_handed (input_settings, NULL);
++ update_touchpad_tap_enabled (input_settings, NULL);
++ update_touchpad_send_events (input_settings, NULL);
++
++ update_device_natural_scroll (input_settings, priv->touchpad_settings,
++ NULL, CLUTTER_TOUCHPAD_DEVICE);
++ update_device_speed (input_settings, priv->touchpad_settings, NULL,
++ CLUTTER_TOUCHPAD_DEVICE);
++ update_device_speed (input_settings, priv->mouse_settings, NULL,
++ CLUTTER_POINTER_DEVICE);
+
+- apply_device_settings (input_settings, NULL);
+ update_keyboard_repeat (input_settings);
++
+ check_mappable_devices (input_settings);
+ }
+
Deleted: extra-x86_64/PKGBUILD
===================================================================
--- extra-x86_64/PKGBUILD 2015-04-15 11:08:53 UTC (rev 236646)
+++ extra-x86_64/PKGBUILD 2015-04-15 11:10:28 UTC (rev 236647)
@@ -1,39 +0,0 @@
-# $Id$
-# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
-# Maintainer: Ionut Biru <ibiru at archlinux.org>
-# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
-
-pkgname=mutter
-pkgver=3.16.1
-pkgrel=1
-pkgdesc="A window manager for GNOME"
-arch=(i686 x86_64)
-license=('GPL')
-depends=('clutter' 'dconf' 'gobject-introspection-runtime' 'gsettings-desktop-schemas' 'libcanberra' 'startup-notification' 'zenity' 'libsm' 'gnome-desktop' 'upower' 'libxkbcommon-x11' 'gnome-settings-daemon')
-makedepends=('intltool' 'libxkbcommon-x11' 'gobject-introspection')
-conflicts=('mutter-wayland')
-replaces=('mutter-wayland')
-url="http://www.gnome.org"
-groups=('gnome')
-options=('!emptydirs')
-install=mutter.install
-source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver:0:4}/$pkgname-$pkgver.tar.xz)
-sha256sums=('be487f92bfa60c88fe474bd99f9665d57506479a06a48e00a7dd3171029b701c')
-
-build() {
- cd "$pkgname-$pkgver"
- ./configure --prefix=/usr --sysconfdir=/etc \
- --libexecdir=/usr/lib/mutter \
- --localstatedir=/var --disable-static \
- --disable-schemas-compile --enable-compile-warnings=minimum
-
- #https://bugzilla.gnome.org/show_bug.cgi?id=655517
- sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
-
- make
-}
-
-package() {
- cd "$pkgname-$pkgver"
- make DESTDIR="$pkgdir" install
-}
Copied: mutter/repos/extra-x86_64/PKGBUILD (from rev 236646, mutter/trunk/PKGBUILD)
===================================================================
--- extra-x86_64/PKGBUILD (rev 0)
+++ extra-x86_64/PKGBUILD 2015-04-15 11:10:28 UTC (rev 236647)
@@ -0,0 +1,49 @@
+# $Id$
+# Maintainer: Jan Alexander Steffens (heftig) <jan.steffens at gmail.com>
+# Maintainer: Ionut Biru <ibiru at archlinux.org>
+# Contributor: Michael Kanis <mkanis_at_gmx_dot_de>
+
+pkgname=mutter
+pkgver=3.16.1
+pkgrel=2
+pkgdesc="A window manager for GNOME"
+arch=(i686 x86_64)
+license=('GPL')
+depends=('clutter' 'dconf' 'gobject-introspection-runtime' 'gsettings-desktop-schemas' 'libcanberra' 'startup-notification' 'zenity' 'libsm' 'gnome-desktop' 'upower' 'libxkbcommon-x11' 'gnome-settings-daemon')
+makedepends=('intltool' 'libxkbcommon-x11' 'gobject-introspection')
+conflicts=('mutter-wayland')
+replaces=('mutter-wayland')
+url="http://www.gnome.org"
+groups=('gnome')
+options=('!emptydirs')
+install=mutter.install
+source=(http://ftp.gnome.org/pub/gnome/sources/$pkgname/${pkgver:0:4}/$pkgname-$pkgver.tar.xz
+ revert.patch)
+sha256sums=('be487f92bfa60c88fe474bd99f9665d57506479a06a48e00a7dd3171029b701c'
+ 'ec06d41973e82a608d9de7e7369ad323a58f6f644016657ac54ce226321a6570')
+
+prepare() {
+ cd "$pkgname-$pkgver"
+
+ # Revert input-settings: Ensure that we always apply the same set of settings
+ # because it asserts when VT switching
+ patch -Np1 -i ../revert.patch
+}
+
+build() {
+ cd "$pkgname-$pkgver"
+ ./configure --prefix=/usr --sysconfdir=/etc \
+ --libexecdir=/usr/lib/mutter \
+ --localstatedir=/var --disable-static \
+ --disable-schemas-compile --enable-compile-warnings=minimum
+
+ #https://bugzilla.gnome.org/show_bug.cgi?id=655517
+ sed -i -e 's/ -shared / -Wl,-O1,--as-needed\0/g' libtool
+
+ make
+}
+
+package() {
+ cd "$pkgname-$pkgver"
+ make DESTDIR="$pkgdir" install
+}
Deleted: extra-x86_64/mutter.install
===================================================================
--- extra-x86_64/mutter.install 2015-04-15 11:08:53 UTC (rev 236646)
+++ extra-x86_64/mutter.install 2015-04-15 11:10:28 UTC (rev 236647)
@@ -1,19 +0,0 @@
-pkgname=mutter
-
-post_install() {
- glib-compile-schemas /usr/share/glib-2.0/schemas
-}
-
-pre_upgrade() {
- if [ -f /usr/share/gconf/schemas/$pkgname.schemas ]; then
- /usr/sbin/gconfpkg --uninstall $pkgname
- fi
-}
-
-post_upgrade() {
- post_install
-}
-
-post_remove() {
- post_install
-}
Copied: mutter/repos/extra-x86_64/mutter.install (from rev 236646, mutter/trunk/mutter.install)
===================================================================
--- extra-x86_64/mutter.install (rev 0)
+++ extra-x86_64/mutter.install 2015-04-15 11:10:28 UTC (rev 236647)
@@ -0,0 +1,19 @@
+pkgname=mutter
+
+post_install() {
+ glib-compile-schemas /usr/share/glib-2.0/schemas
+}
+
+pre_upgrade() {
+ if [ -f /usr/share/gconf/schemas/$pkgname.schemas ]; then
+ /usr/sbin/gconfpkg --uninstall $pkgname
+ fi
+}
+
+post_upgrade() {
+ post_install
+}
+
+post_remove() {
+ post_install
+}
Copied: mutter/repos/extra-x86_64/revert.patch (from rev 236646, mutter/trunk/revert.patch)
===================================================================
--- extra-x86_64/revert.patch (rev 0)
+++ extra-x86_64/revert.patch 2015-04-15 11:10:28 UTC (rev 236647)
@@ -0,0 +1,244 @@
+diff --git c/src/backends/meta-input-settings.c i/src/backends/meta-input-settings.c
+index 004044e..4860fa9 100644
+--- c/src/backends/meta-input-settings.c
++++ i/src/backends/meta-input-settings.c
+@@ -279,82 +279,51 @@ update_mouse_left_handed (MetaInputSettings *input_settings,
+ }
+ }
+
+-static GSettings *
+-get_settings_for_device_type (MetaInputSettings *input_settings,
+- ClutterInputDeviceType type)
+-{
+- MetaInputSettingsPrivate *priv;
+- priv = meta_input_settings_get_instance_private (input_settings);
+- switch (type)
+- {
+- case CLUTTER_POINTER_DEVICE:
+- return priv->mouse_settings;
+- case CLUTTER_TOUCHPAD_DEVICE:
+- return priv->touchpad_settings;
+- default:
+- return NULL;
+- }
+-}
+-
+ static void
+ update_device_speed (MetaInputSettings *input_settings,
+- ClutterInputDevice *device)
++ GSettings *settings,
++ ClutterInputDevice *device,
++ ClutterInputDeviceType type)
+ {
+- GSettings *settings;
+- ConfigDoubleFunc func;
+- const gchar *key = "speed";
++ MetaInputSettingsClass *input_settings_class;
++ gdouble speed;
+
+- func = META_INPUT_SETTINGS_GET_CLASS (input_settings)->set_speed;
++ input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings);
++ speed = g_settings_get_double (settings, "speed");
+
+ if (device)
+- {
+- settings = get_settings_for_device_type (input_settings,
+- clutter_input_device_get_device_type (device));
+- if (!settings)
+- return;
+-
+- settings_device_set_double_setting (input_settings, device, func,
+- g_settings_get_double (settings, key));
+- }
++ settings_device_set_double_setting (input_settings, device,
++ input_settings_class->set_speed,
++ speed);
+ else
+- {
+- settings = get_settings_for_device_type (input_settings, CLUTTER_POINTER_DEVICE);
+- settings_set_double_setting (input_settings, CLUTTER_POINTER_DEVICE, func,
+- g_settings_get_double (settings, key));
+- settings = get_settings_for_device_type (input_settings, CLUTTER_TOUCHPAD_DEVICE);
+- settings_set_double_setting (input_settings, CLUTTER_TOUCHPAD_DEVICE, func,
+- g_settings_get_double (settings, key));
+- }
++ settings_set_double_setting (input_settings, type,
++ input_settings_class->set_speed,
++ speed);
+ }
+
+ static void
+ update_device_natural_scroll (MetaInputSettings *input_settings,
+- ClutterInputDevice *device)
++ GSettings *settings,
++ ClutterInputDevice *device,
++ ClutterInputDeviceType type)
+ {
+- GSettings *settings;
+- ConfigBoolFunc func;
+- const gchar *key = "natural-scroll";
++ MetaInputSettingsClass *input_settings_class;
++ gboolean enabled;
+
+- func = META_INPUT_SETTINGS_GET_CLASS (input_settings)->set_invert_scroll;
++ input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings);
++ enabled = g_settings_get_boolean (settings, "natural-scroll");
+
+ if (device)
+ {
+- settings = get_settings_for_device_type (input_settings,
+- clutter_input_device_get_device_type (device));
+- if (!settings)
+- return;
+-
+- settings_device_set_bool_setting (input_settings, device, func,
+- g_settings_get_boolean (settings, key));
++ settings_device_set_bool_setting (input_settings, device,
++ input_settings_class->set_invert_scroll,
++ enabled);
+ }
+ else
+ {
+- settings = get_settings_for_device_type (input_settings, CLUTTER_POINTER_DEVICE);
+- settings_set_bool_setting (input_settings, CLUTTER_POINTER_DEVICE, func,
+- g_settings_get_boolean (settings, key));
+- settings = get_settings_for_device_type (input_settings, CLUTTER_TOUCHPAD_DEVICE);
+- settings_set_bool_setting (input_settings, CLUTTER_TOUCHPAD_DEVICE, func,
+- g_settings_get_boolean (settings, key));
++ settings_set_bool_setting (input_settings, type,
++ input_settings_class->set_invert_scroll,
++ enabled);
+ }
+ }
+
+@@ -488,9 +457,7 @@ update_trackball_scroll_button (MetaInputSettings *input_settings,
+
+ priv = meta_input_settings_get_instance_private (input_settings);
+ input_settings_class = META_INPUT_SETTINGS_GET_CLASS (input_settings);
+- /* This key is 'i' in the schema but it also specifies a minimum
+- * range of 0 so the cast here is safe. */
+- button = (guint) g_settings_get_int (priv->trackball_settings, "scroll-wheel-emulation-button");
++ button = g_settings_get_uint (priv->trackball_settings, "scroll-wheel-emulation-button");
+
+ if (device && device_is_trackball (device))
+ {
+@@ -606,18 +573,22 @@ meta_input_settings_changed_cb (GSettings *settings,
+ if (strcmp (key, "left-handed") == 0)
+ update_mouse_left_handed (input_settings, NULL);
+ else if (strcmp (key, "speed") == 0)
+- update_device_speed (input_settings, NULL);
++ update_device_speed (input_settings, settings, NULL,
++ CLUTTER_POINTER_DEVICE);
+ else if (strcmp (key, "natural-scroll") == 0)
+- update_device_natural_scroll (input_settings, NULL);
++ update_device_natural_scroll (input_settings, settings,
++ NULL, CLUTTER_POINTER_DEVICE);
+ }
+ else if (settings == priv->touchpad_settings)
+ {
+ if (strcmp (key, "left-handed") == 0)
+ update_touchpad_left_handed (input_settings, NULL);
+ else if (strcmp (key, "speed") == 0)
+- update_device_speed (input_settings, NULL);
++ update_device_speed (input_settings, settings, NULL,
++ CLUTTER_TOUCHPAD_DEVICE);
+ else if (strcmp (key, "natural-scroll") == 0)
+- update_device_natural_scroll (input_settings, NULL);
++ update_device_natural_scroll (input_settings, settings,
++ NULL, CLUTTER_TOUCHPAD_DEVICE);
+ else if (strcmp (key, "tap-to-click") == 0)
+ update_touchpad_tap_enabled (input_settings, NULL);
+ else if (strcmp (key, "send-events") == 0)
+@@ -736,34 +707,44 @@ check_add_mappable_device (MetaInputSettings *input_settings,
+ }
+
+ static void
+-apply_device_settings (MetaInputSettings *input_settings,
+- ClutterInputDevice *device)
+-{
+- update_mouse_left_handed (input_settings, device);
+- update_device_speed (input_settings, device);
+- update_device_natural_scroll (input_settings, device);
+-
+- update_touchpad_left_handed (input_settings, device);
+- update_device_speed (input_settings, device);
+- update_device_natural_scroll (input_settings, device);
+- update_touchpad_tap_enabled (input_settings, device);
+- update_touchpad_send_events (input_settings, device);
+- update_touchpad_scroll_method (input_settings, device);
+- update_touchpad_click_method (input_settings, device);
+-
+- update_trackball_scroll_button (input_settings, device);
+-}
+-
+-static void
+ meta_input_settings_device_added (ClutterDeviceManager *device_manager,
+ ClutterInputDevice *device,
+ MetaInputSettings *input_settings)
+ {
++ ClutterInputDeviceType type;
++ MetaInputSettingsPrivate *priv;
++
+ if (clutter_input_device_get_device_mode (device) == CLUTTER_INPUT_MODE_MASTER)
+ return;
+
+- apply_device_settings (input_settings, device);
+- check_add_mappable_device (input_settings, device);
++ priv = meta_input_settings_get_instance_private (input_settings);
++ type = clutter_input_device_get_device_type (device);
++
++ if (type == CLUTTER_POINTER_DEVICE)
++ {
++ update_mouse_left_handed (input_settings, device);
++ update_device_speed (input_settings, priv->mouse_settings, device, type);
++
++ if (device_is_trackball (device))
++ update_trackball_scroll_button (input_settings, device);
++ }
++ else if (type == CLUTTER_TOUCHPAD_DEVICE)
++ {
++ update_touchpad_left_handed (input_settings, device);
++ update_touchpad_tap_enabled (input_settings, device);
++ update_touchpad_scroll_method (input_settings, device);
++ update_touchpad_click_method (input_settings, device);
++ update_touchpad_send_events (input_settings, device);
++
++ update_device_speed (input_settings, priv->touchpad_settings,
++ device, type);
++ update_device_natural_scroll (input_settings, priv->touchpad_settings,
++ device, type);
++ }
++ else
++ {
++ check_add_mappable_device (input_settings, device);
++ }
+ }
+
+ static void
+@@ -801,9 +782,25 @@ static void
+ meta_input_settings_constructed (GObject *object)
+ {
+ MetaInputSettings *input_settings = META_INPUT_SETTINGS (object);
++ MetaInputSettingsPrivate *priv;
++
++ priv = meta_input_settings_get_instance_private (input_settings);
++
++ update_mouse_left_handed (input_settings, NULL);
++
++ update_touchpad_left_handed (input_settings, NULL);
++ update_touchpad_tap_enabled (input_settings, NULL);
++ update_touchpad_send_events (input_settings, NULL);
++
++ update_device_natural_scroll (input_settings, priv->touchpad_settings,
++ NULL, CLUTTER_TOUCHPAD_DEVICE);
++ update_device_speed (input_settings, priv->touchpad_settings, NULL,
++ CLUTTER_TOUCHPAD_DEVICE);
++ update_device_speed (input_settings, priv->mouse_settings, NULL,
++ CLUTTER_POINTER_DEVICE);
+
+- apply_device_settings (input_settings, NULL);
+ update_keyboard_repeat (input_settings);
++
+ check_mappable_devices (input_settings);
+ }
+
More information about the arch-commits
mailing list