This commit is contained in:
Peter Robinson 2012-04-17 11:45:53 +01:00
parent b32fd49ca9
commit ff6c1186f3
4 changed files with 6 additions and 222 deletions

View File

@ -1,159 +0,0 @@
From 66c4d6214e7354749d396cff059b0d7a9b94e48c Mon Sep 17 00:00:00 2001
From: Peter Hutterer <peter.hutterer@who-t.net>
Date: Thu, 12 Apr 2012 13:07:34 +1000
Subject: [PATCH] Rename XINPUT_2_2 define to HAVE_XINPUT_2_2
configure.ac defines XINPUT_2_2 if XI 2.2 support was found. The code
expects XINPUT_2_2 in the device manager, but HAVE_XINPUT_2_2 in the x11
backend.
On newer X servers, the latter causes a BadValue when XIQueryDevice sends a
different major/minor than gdk's device manager (gnome-control-center).
Signed-off-by: Peter Hutterer <peter.hutterer@who-t.net>
---
clutter/x11/clutter-device-manager-xi2.c | 26 +++++++++++++-------------
clutter/x11/clutter-input-device-xi2.c | 4 ++--
configure.ac | 2 +-
3 files changed, 16 insertions(+), 16 deletions(-)
diff --git a/clutter/x11/clutter-device-manager-xi2.c b/clutter/x11/clutter-device-manager-xi2.c
index aad69c7..52897a0 100644
--- a/clutter/x11/clutter-device-manager-xi2.c
+++ b/clutter/x11/clutter-device-manager-xi2.c
@@ -154,7 +154,7 @@ translate_device_classes (Display *xdisplay,
(XIValuatorClassInfo *) class_info);
break;
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
case XIScrollClass:
{
XIScrollClassInfo *scroll_info = (XIScrollClassInfo *) class_info;
@@ -178,7 +178,7 @@ translate_device_classes (Display *xdisplay,
scroll_info->increment);
}
break;
-#endif /* XINPUT_2_2 */
+#endif /* HAVE_XINPUT_2_2 */
default:
break;
@@ -192,7 +192,7 @@ is_touch_device (XIAnyClassInfo **classes,
ClutterInputDeviceType *device_type,
guint *n_touch_points)
{
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
guint i;
for (i = 0; i < n_classes; i++)
@@ -486,11 +486,11 @@ get_event_stage (ClutterEventTranslator *translator,
case XI_ButtonPress:
case XI_ButtonRelease:
case XI_Motion:
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
case XI_TouchBegin:
case XI_TouchUpdate:
case XI_TouchEnd:
-#endif /* XINPUT_2_2 */
+#endif /* HAVE_XINPUT_2_2 */
{
XIDeviceEvent *xev = (XIDeviceEvent *) xi_event;
@@ -858,10 +858,10 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
stage_x11,
&xev->valuators);
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
if (xev->flags & XIPointerEmulated)
_clutter_event_set_pointer_emulated (event, TRUE);
-#endif /* XINPUT_2_2 */
+#endif /* HAVE_XINPUT_2_2 */
break;
default:
@@ -910,10 +910,10 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
event->button.y,
event->button.axes != NULL ? "yes" : "no");
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
if (xev->flags & XIPointerEmulated)
_clutter_event_set_pointer_emulated (event, TRUE);
-#endif /* XINPUT_2_2 */
+#endif /* HAVE_XINPUT_2_2 */
if (xi_event->evtype == XI_ButtonPress)
_clutter_stage_x11_set_user_time (stage_x11, event->button.time);
@@ -990,10 +990,10 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
if (source_device != NULL && device->stage != NULL)
_clutter_input_device_set_stage (source_device, device->stage);
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
if (xev->flags & XIPointerEmulated)
_clutter_event_set_pointer_emulated (event, TRUE);
-#endif /* XINPUT_2_2 */
+#endif /* HAVE_XINPUT_2_2 */
CLUTTER_NOTE (EVENT, "motion: win:0x%x device:%s (x:%.2f, y:%.2f, axes:%s)",
(unsigned int) stage_x11->xwin,
@@ -1006,7 +1006,7 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
}
break;
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
case XI_TouchBegin:
case XI_TouchEnd:
{
@@ -1114,7 +1114,7 @@ clutter_device_manager_xi2_translate_event (ClutterEventTranslator *translator,
retval = CLUTTER_TRANSLATE_QUEUE;
}
break;
-#endif /* XINPUT_2_2 */
+#endif /* HAVE_XINPUT_2_2 */
case XI_Enter:
case XI_Leave:
diff --git a/clutter/x11/clutter-input-device-xi2.c b/clutter/x11/clutter-input-device-xi2.c
index fb9f272..c2b0d18 100644
--- a/clutter/x11/clutter-input-device-xi2.c
+++ b/clutter/x11/clutter-input-device-xi2.c
@@ -92,7 +92,7 @@ clutter_input_device_xi2_select_stage_events (ClutterInputDevice *device,
if (event_mask & LeaveWindowMask)
XISetMask (mask, XI_Leave);
-#ifdef XINPUT_2_2
+#ifdef HAVE_XINPUT_2_2
/* enable touch event support if we're running on XInput 2.2 */
if (backend_x11->xi_minor >= 2)
{
@@ -100,7 +100,7 @@ clutter_input_device_xi2_select_stage_events (ClutterInputDevice *device,
XISetMask (mask, XI_TouchUpdate);
XISetMask (mask, XI_TouchEnd);
}
-#endif /* XINPUT_2_2 */
+#endif /* HAVE_XINPUT_2_2 */
xi_event_mask.deviceid = device_xi2->device_id;
xi_event_mask.mask = mask;
diff --git a/configure.ac b/configure.ac
index bd46aa8..83f0018 100644
--- a/configure.ac
+++ b/configure.ac
@@ -724,7 +724,7 @@ AS_IF([test "x$SUPPORT_X11" = "x1"],
AC_CHECK_MEMBER([XIScrollClassInfo.number],
[
have_xinput_2_2=yes
- AC_DEFINE([XINPUT_2_2], [1], [Define to 1 if XInput 2.2 is available])
+ AC_DEFINE([HAVE_XINPUT_2_2], [1], [Define to 1 if XInput 2.2 is available])
],
[have_xinput_2_2=no],
[[#include <X11/extensions/XInput2.h>]])])
--
1.7.10

View File

@ -1,54 +0,0 @@
From cc515ab11cf91412cd99deac3e2945d7ed4e2dae Mon Sep 17 00:00:00 2001
From: Emmanuele Bassi <ebassi@gnome.org>
Date: Wed, 28 Mar 2012 08:34:36 +0100
Subject: [PATCH] table-layout: Fix [xy]_expand
A copy and paste thinko.
https://bugzilla.gnome.org/show_bug.cgi?id=672853
---
clutter/clutter-table-layout.c | 7 ++-----
1 files changed, 2 insertions(+), 5 deletions(-)
diff --git a/clutter/clutter-table-layout.c b/clutter/clutter-table-layout.c
index ab7b5b2..fd216f3 100644
--- a/clutter/clutter-table-layout.c
+++ b/clutter/clutter-table-layout.c
@@ -861,7 +861,7 @@ calculate_col_widths (ClutterTableLayout *self,
}
if (!columns[i].expand)
- columns[i].expand = meta->x_fill;
+ columns[i].expand = meta->x_expand;
}
min_width += priv->col_spacing * (meta->col_span - 1);
pref_width += priv->col_spacing * (meta->col_span - 1);
@@ -915,8 +915,6 @@ calculate_col_widths (ClutterTableLayout *self,
}
}
}
-
-
}
/* calculate final widths */
@@ -1135,7 +1133,7 @@ calculate_row_heights (ClutterTableLayout *self,
}
if (!rows[i].expand)
- rows[i].expand = meta->y_fill;
+ rows[i].expand = meta->y_expand;
}
min_height += priv->row_spacing * (meta->row_span - 1);
@@ -1200,7 +1198,6 @@ calculate_row_heights (ClutterTableLayout *self,
}
}
}
-
}
/* calculate final heights */
--
1.7.7.6

View File

@ -1,6 +1,6 @@
Name: clutter
Version: 1.10.0
Release: 5%{?dist}
Version: 1.10.2
Release: 1%{?dist}
Summary: Open Source software library for creating rich graphical user interfaces
Group: Development/Libraries
@ -8,10 +8,6 @@ License: LGPLv2+
URL: http://www.clutter-project.org/
Source0: http://www.clutter-project.org/sources/%{name}/1.10/%{name}-%{version}.tar.xz
# upstream fix
Patch01: 0001-table-layout-Fix-xy-_expand.patch
Patch02: 0001-Rename-XINPUT_2_2-define-to-HAVE_XINPUT_2_2.patch
BuildRequires: glib2-devel mesa-libGL-devel pkgconfig pango-devel
BuildRequires: cairo-gobject-devel gdk-pixbuf2-devel atk-devel
BuildRequires: cogl-devel >= 1.9.8
@ -63,8 +59,6 @@ This package contains documentation for clutter.
%prep
%setup -q
%patch01 -p1
%patch02 -p1
%build
(if ! test -x configure; then NOCONFIGURE=1 ./autogen.sh; CONFIGFLAGS=--enable-gtk-doc; fi;
@ -109,6 +103,9 @@ find %{buildroot} -name '*.la' -exec rm -f {} ';'
%{_datadir}/gtk-doc/html/cally
%changelog
* Tue Apr 17 2012 Peter Robinson <pbrobinson@fedoraproject.org> - 1.10.2-1
- Update to 1.10.2
* Thu Apr 12 2012 Peter Hutterer <peter.hutterer@redhat.com> 1.10.0-5
- Fix misnamed define to enable XI 2.2 support (#809864)

View File

@ -1 +1 @@
574ed008d4aa1a0587909750b8a8319e clutter-1.10.0.tar.xz
7447512b4cb4e7b360a691ed2ceee1b1 clutter-1.10.2.tar.xz