[arch-commits] Commit in clutter/trunk (6 files)

Jan de Groot jgc at archlinux.org
Wed Sep 23 13:44:30 UTC 2015


    Date: Wednesday, September 23, 2015 @ 15:44:30
  Author: jgc
Revision: 247153

upgpkg: clutter 1.24.0-1

Modified:
  clutter/trunk/PKGBUILD
Deleted:
  clutter/trunk/closure-annotation.patch
  clutter/trunk/create-pangocontext-per-actor.patch
  clutter/trunk/dont-update-pangocontext.patch
  clutter/trunk/evdev-flush-event-queue.patch
  clutter/trunk/libinput08.patch

-------------------------------------+
 PKGBUILD                            |    4 
 closure-annotation.patch            |   22 ---
 create-pangocontext-per-actor.patch |  224 ----------------------------------
 dont-update-pangocontext.patch      |   37 -----
 evdev-flush-event-queue.patch       |   54 --------
 libinput08.patch                    |   90 -------------
 6 files changed, 2 insertions(+), 429 deletions(-)

Modified: PKGBUILD
===================================================================
--- PKGBUILD	2015-09-23 13:21:17 UTC (rev 247152)
+++ PKGBUILD	2015-09-23 13:44:30 UTC (rev 247153)
@@ -4,7 +4,7 @@
 # Contributor: William Rea <sillywilly at gmail.com>
 
 pkgname=clutter
-pkgver=1.22.4
+pkgver=1.24.0
 pkgrel=1
 pkgdesc="A GObject based library for creating fast, visually rich graphical user interfaces"
 arch=('i686' 'x86_64')
@@ -13,7 +13,7 @@
 depends=('gtk3' 'cogl' 'libinput')
 makedepends=('gobject-introspection' 'gtk-doc')
 source=(https://download.gnome.org/sources/$pkgname/${pkgver:0:4}/$pkgname-$pkgver.tar.xz)
-sha256sums=('1d77ce16025f87667a1d00dc4fa617a1935156f63fd17635fdadf138866c9e1e')
+sha256sums=('85c87d5745b97af7633776419a47421aae7cea66c1b870f88cc5e06a4c5626e6')
 
 build() {
   cd "$pkgname-$pkgver"

Deleted: closure-annotation.patch
===================================================================
--- closure-annotation.patch	2015-09-23 13:21:17 UTC (rev 247152)
+++ closure-annotation.patch	2015-09-23 13:44:30 UTC (rev 247153)
@@ -1,22 +0,0 @@
-From 084dc49a0cdadeed7de896df81e9af536f2ab678 Mon Sep 17 00:00:00 2001
-From: Rico Tzschichholz <ricotz at ubuntu.com>
-Date: Thu, 2 Oct 2014 09:27:36 +0200
-Subject: x11: Add missing closure annotation to ClutterX11FilterFunc
-
-
-diff --git a/clutter/x11/clutter-x11.h b/clutter/x11/clutter-x11.h
-index b0ab8a1..285ea51 100644
---- a/clutter/x11/clutter-x11.h
-+++ b/clutter/x11/clutter-x11.h
-@@ -85,7 +85,7 @@ typedef struct _ClutterX11XInputDevice ClutterX11XInputDevice;
-  * ClutterX11FilterFunc:
-  * @xev: Native X11 event structure
-  * @cev: Clutter event structure
-- * @data: user data passed to the filter function
-+ * @data: (closure): user data passed to the filter function
-  *
-  * Filter function for X11 native events.
-  *
--- 
-cgit v0.10.1
-

Deleted: create-pangocontext-per-actor.patch
===================================================================
--- create-pangocontext-per-actor.patch	2015-09-23 13:21:17 UTC (rev 247152)
+++ create-pangocontext-per-actor.patch	2015-09-23 13:44:30 UTC (rev 247153)
@@ -1,224 +0,0 @@
-From 46877cc2bd497ec23acfa07fedaf29f45522dc6f Mon Sep 17 00:00:00 2001
-From: "Jasper St. Pierre" <jstpierre at mecheye.net>
-Date: Wed, 22 Oct 2014 18:44:22 -0700
-Subject: actor: Create a PangoContext per actor
-
-For a variety of complicated reasons, ClutterText currently sets fields
-on the PangoContext when creating a layout. This causes ClutterText to
-behave somewhat erratically in certain cases, since the PangoContext is
-currently shared between all actors.
-
-GTK+ creates a PangoContext for every single GtkWidget, so it seems like
-we should do the same here.
-
-Move the private code that was previously in clutter-main.c into
-clutter-actor.c and clean it up a bit. This gives every actor its own
-PangoContext it can mutilate whenever it wants, at its heart's content.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=739050
-
-diff --git a/clutter/clutter-actor.c b/clutter/clutter-actor.c
-index 6a0582a..33fe3e7 100644
---- a/clutter/clutter-actor.c
-+++ b/clutter/clutter-actor.c
-@@ -15474,6 +15474,46 @@ clutter_actor_grab_key_focus (ClutterActor *self)
-     clutter_stage_set_key_focus (CLUTTER_STAGE (stage), self);
- }
- 
-+static void
-+update_pango_context (ClutterBackend *backend,
-+                      PangoContext   *context)
-+{
-+  ClutterSettings *settings;
-+  PangoFontDescription *font_desc;
-+  const cairo_font_options_t *font_options;
-+  gchar *font_name;
-+  PangoDirection pango_dir;
-+  gdouble resolution;
-+
-+  settings = clutter_settings_get_default ();
-+
-+  /* update the text direction */
-+  if (clutter_get_default_text_direction () == CLUTTER_TEXT_DIRECTION_RTL)
-+    pango_dir = PANGO_DIRECTION_RTL;
-+  else
-+    pango_dir = PANGO_DIRECTION_LTR;
-+
-+  pango_context_set_base_dir (context, pango_dir);
-+
-+  g_object_get (settings, "font-name", &font_name, NULL);
-+
-+  /* get the configuration for the PangoContext from the backend */
-+  font_options = clutter_backend_get_font_options (backend);
-+  resolution = clutter_backend_get_resolution (backend);
-+
-+  font_desc = pango_font_description_from_string (font_name);
-+
-+  if (resolution < 0)
-+    resolution = 96.0; /* fall back */
-+
-+  pango_context_set_font_description (context, font_desc);
-+  pango_cairo_context_set_font_options (context, font_options);
-+  pango_cairo_context_set_resolution (context, resolution);
-+
-+  pango_font_description_free (font_desc);
-+  g_free (font_name);
-+}
-+
- /**
-  * clutter_actor_get_pango_context:
-  * @self: a #ClutterActor
-@@ -15500,16 +15540,23 @@ PangoContext *
- clutter_actor_get_pango_context (ClutterActor *self)
- {
-   ClutterActorPrivate *priv;
-+  ClutterBackend *backend = clutter_get_default_backend ();
- 
-   g_return_val_if_fail (CLUTTER_IS_ACTOR (self), NULL);
- 
-   priv = self->priv;
- 
--  if (priv->pango_context != NULL)
--    return priv->pango_context;
-+  if (G_UNLIKELY (priv->pango_context == NULL))
-+    {
-+      priv->pango_context = clutter_actor_create_pango_context (self);
- 
--  priv->pango_context = _clutter_context_get_pango_context ();
--  g_object_ref (priv->pango_context);
-+      g_signal_connect_object (backend, "resolution-changed",
-+                               G_CALLBACK (update_pango_context), priv->pango_context, 0);
-+      g_signal_connect_object (backend, "font-changed",
-+                               G_CALLBACK (update_pango_context), priv->pango_context, 0);
-+    }
-+  else
-+    update_pango_context (backend, priv->pango_context);
- 
-   return priv->pango_context;
- }
-@@ -15533,9 +15580,16 @@ clutter_actor_get_pango_context (ClutterActor *self)
- PangoContext *
- clutter_actor_create_pango_context (ClutterActor *self)
- {
--  g_return_val_if_fail (CLUTTER_IS_ACTOR (self), NULL);
-+  CoglPangoFontMap *font_map;
-+  PangoContext *context;
-+
-+  font_map = COGL_PANGO_FONT_MAP (clutter_get_font_map ());
-+
-+  context = cogl_pango_font_map_create_context (font_map);
-+  update_pango_context (clutter_get_default_backend (), context);
-+  pango_context_set_language (context, pango_language_get_default ());
- 
--  return _clutter_context_create_pango_context ();
-+  return context;
- }
- 
- /**
-diff --git a/clutter/clutter-main.c b/clutter/clutter-main.c
-index 3b9385a..1a337c0 100644
---- a/clutter/clutter-main.c
-+++ b/clutter/clutter-main.c
-@@ -764,86 +764,6 @@ clutter_get_text_direction (void)
-   return dir;
- }
- 
--static void
--update_pango_context (ClutterBackend *backend,
--                      PangoContext   *context)
--{
--  ClutterSettings *settings;
--  PangoFontDescription *font_desc;
--  const cairo_font_options_t *font_options;
--  gchar *font_name;
--  PangoDirection pango_dir;
--  gdouble resolution;
--
--  settings = clutter_settings_get_default ();
--
--  /* update the text direction */
--  if (clutter_text_direction == CLUTTER_TEXT_DIRECTION_RTL)
--    pango_dir = PANGO_DIRECTION_RTL;
--  else
--    pango_dir = PANGO_DIRECTION_LTR;
--
--  pango_context_set_base_dir (context, pango_dir);
--
--  g_object_get (settings, "font-name", &font_name, NULL);
--
--  /* get the configuration for the PangoContext from the backend */
--  font_options = clutter_backend_get_font_options (backend);
--  resolution = clutter_backend_get_resolution (backend);
--
--  font_desc = pango_font_description_from_string (font_name);
--
--  if (resolution < 0)
--    resolution = 96.0; /* fall back */
--
--  pango_context_set_font_description (context, font_desc);
--  pango_cairo_context_set_font_options (context, font_options);
--  pango_cairo_context_set_resolution (context, resolution);
--
--  pango_font_description_free (font_desc);
--  g_free (font_name);
--}
--
--PangoContext *
--_clutter_context_get_pango_context (void)
--{
--  ClutterMainContext *self = _clutter_context_get_default ();
--
--  if (G_UNLIKELY (self->pango_context == NULL))
--    {
--      PangoContext *context;
--
--      context = _clutter_context_create_pango_context ();
--      self->pango_context = context;
--
--      g_signal_connect (self->backend, "resolution-changed",
--                        G_CALLBACK (update_pango_context),
--                        self->pango_context);
--      g_signal_connect (self->backend, "font-changed",
--                        G_CALLBACK (update_pango_context),
--                        self->pango_context);
--    }
--  else
--    update_pango_context (self->backend, self->pango_context);
--
--  return self->pango_context;
--}
--
--PangoContext *
--_clutter_context_create_pango_context (void)
--{
--  CoglPangoFontMap *font_map;
--  PangoContext *context;
--
--  font_map = clutter_context_get_pango_fontmap ();
--
--  context = cogl_pango_font_map_create_context (font_map);
--  update_pango_context (clutter_get_default_backend (), context);
--  pango_context_set_language (context, pango_language_get_default ());
--
--  return context;
--}
--
- /**
-  * clutter_main_quit:
-  *
-diff --git a/clutter/clutter-private.h b/clutter/clutter-private.h
-index bf92626..b714edc 100644
---- a/clutter/clutter-private.h
-+++ b/clutter/clutter-private.h
-@@ -198,8 +198,6 @@ ClutterMainContext *    _clutter_context_get_default                    (void);
- void                    _clutter_context_lock                           (void);
- void                    _clutter_context_unlock                         (void);
- gboolean                _clutter_context_is_initialized                 (void);
--PangoContext *          _clutter_context_create_pango_context           (void);
--PangoContext *          _clutter_context_get_pango_context              (void);
- ClutterPickMode         _clutter_context_get_pick_mode                  (void);
- void                    _clutter_context_push_shader_stack              (ClutterActor *actor);
- ClutterActor *          _clutter_context_pop_shader_stack               (ClutterActor *actor);
--- 
-cgit v0.10.1
-

Deleted: dont-update-pangocontext.patch
===================================================================
--- dont-update-pangocontext.patch	2015-09-23 13:21:17 UTC (rev 247152)
+++ dont-update-pangocontext.patch	2015-09-23 13:44:30 UTC (rev 247153)
@@ -1,37 +0,0 @@
-From 14d28e7908d5421f15f9b94f4f37d66f14c4222e Mon Sep 17 00:00:00 2001
-From: "Jasper St. Pierre" <jstpierre at mecheye.net>
-Date: Wed, 22 Oct 2014 18:44:16 -0700
-Subject: main: Don't update the PangoContext in clutter_set_font_flags
-
-clutter_set_font_flags already calls clutter_backend_set_font_options,
-which emits a signal which our PangoContext listens to, so this is just
-duplicate and unneeded code.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=739050
-
-diff --git a/clutter/clutter-main.c b/clutter/clutter-main.c
-index 444ceba..3b9385a 100644
---- a/clutter/clutter-main.c
-+++ b/clutter/clutter-main.c
-@@ -3276,7 +3276,6 @@ clutter_clear_glyph_cache (void)
- void
- clutter_set_font_flags (ClutterFontFlags flags)
- {
--  ClutterMainContext *context = _clutter_context_get_default ();
-   CoglPangoFontMap *font_map;
-   ClutterFontFlags old_flags, changed_flags;
-   const cairo_font_options_t *font_options;
-@@ -3326,10 +3325,6 @@ clutter_set_font_flags (ClutterFontFlags flags)
-   clutter_backend_set_font_options (backend, new_font_options);
- 
-   cairo_font_options_destroy (new_font_options);
--
--  /* update the default pango context, if any */
--  if (context->pango_context != NULL)
--    update_pango_context (backend, context->pango_context);
- }
- 
- /**
--- 
-cgit v0.10.1
-

Deleted: evdev-flush-event-queue.patch
===================================================================
--- evdev-flush-event-queue.patch	2015-09-23 13:21:17 UTC (rev 247152)
+++ evdev-flush-event-queue.patch	2015-09-23 13:44:30 UTC (rev 247153)
@@ -1,54 +0,0 @@
-From 7764fd2079318fede95b4b96c72d18bd31699270 Mon Sep 17 00:00:00 2001
-From: Carlos Garnacho <carlosg at gnome.org>
-Date: Tue, 14 Oct 2014 12:41:10 +0200
-Subject: evdev: Flush event queue before removing an input device
-
-libinput_suspend() will trigger the removal of input devices, but also
-the emission of button/key releases pairing everything that is pressed
-at that moment. These events are queued, but the ClutterInputDevice
-pointers in these will point to invalid memory at the time these are
-processed.
-
-Fix this by flushing the event queue, in order to ensure there are no
-unprocessed input events after libinput_suspend().
-
-https://bugzilla.gnome.org/show_bug.cgi?id=738520
-
-diff --git a/clutter/evdev/clutter-device-manager-evdev.c b/clutter/evdev/clutter-device-manager-evdev.c
-index 77a8ec6..7b48481 100644
---- a/clutter/evdev/clutter-device-manager-evdev.c
-+++ b/clutter/evdev/clutter-device-manager-evdev.c
-@@ -1017,6 +1017,18 @@ clutter_seat_evdev_sync_leds (ClutterSeatEvdev *seat)
-     }
- }
- 
-+static void
-+flush_event_queue (void)
-+{
-+  ClutterEvent *event;
-+
-+  while ((event = clutter_event_get ()) != NULL)
-+    {
-+      _clutter_process_event (event);
-+      clutter_event_free (event);
-+    }
-+}
-+
- static gboolean
- process_base_event (ClutterDeviceManagerEvdev *manager_evdev,
-                     struct libinput_event *event)
-@@ -1034,6 +1046,11 @@ process_base_event (ClutterDeviceManagerEvdev *manager_evdev,
-       break;
- 
-     case LIBINPUT_EVENT_DEVICE_REMOVED:
-+      /* Flush all queued events, there
-+       * might be some from this device.
-+       */
-+      flush_event_queue ();
-+
-       libinput_device = libinput_event_get_device (event);
- 
-       device = libinput_device_get_user_data (libinput_device);
--- 
-cgit v0.10.1
-

Deleted: libinput08.patch
===================================================================
--- libinput08.patch	2015-09-23 13:21:17 UTC (rev 247152)
+++ libinput08.patch	2015-09-23 13:44:30 UTC (rev 247153)
@@ -1,90 +0,0 @@
-From ede13b11d72a310e535f9a6f0b7e3f774f5529dc Mon Sep 17 00:00:00 2001
-From: Peter Hutterer <peter.hutterer at who-t.net>
-Date: Fri, 16 Jan 2015 01:03:52 +0100
-Subject: evdev: use libinput's new merged scroll events
-
-libinput's API changed from separate scroll events for vert/horiz scrolling to
-a single event that contains both axes if they changed.
-
-Updated by Armin K. to use the discrete axis value for wheel events as done
-in Weston.
-
-https://bugzilla.gnome.org/show_bug.cgi?id=742829
-
-diff --git a/clutter/evdev/clutter-device-manager-evdev.c b/clutter/evdev/clutter-device-manager-evdev.c
-index 7b48481..2b3828a 100644
---- a/clutter/evdev/clutter-device-manager-evdev.c
-+++ b/clutter/evdev/clutter-device-manager-evdev.c
-@@ -1191,29 +1191,43 @@ process_device_event (ClutterDeviceManagerEvdev *manager_evdev,
- 
-     case LIBINPUT_EVENT_POINTER_AXIS:
-       {
--        gdouble value, dx = 0.0, dy = 0.0;
-+        gdouble dx = 0.0, dy = 0.0;
-         guint32 time;
-+        gboolean wheel = FALSE;
-         enum libinput_pointer_axis axis;
-+        enum libinput_pointer_axis_source source;
-         struct libinput_event_pointer *axis_event =
-           libinput_event_get_pointer_event (event);
-+
-         device = libinput_device_get_user_data (libinput_device);
- 
-         time = libinput_event_pointer_get_time (axis_event);
--        value = libinput_event_pointer_get_axis_value (axis_event);
--        axis = libinput_event_pointer_get_axis (axis_event);
-+        source = libinput_event_pointer_get_axis_source (axis_event);
- 
--        switch (axis)
--          {
--          case LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL:
--            dx = 0;
--            dy = value;
--            break;
-+        /* libinput < 0.8 sent wheel click events with value 10. Since 0.8
-+           the value is the angle of the click in degrees. To keep
-+           backwards-compat with existing clients, we just send multiples of
-+           the click count. */
-+
-+        if (source == LIBINPUT_POINTER_AXIS_SOURCE_WHEEL)
-+            wheel = TRUE;
- 
--          case LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL:
--            dx = value;
--            dy = 0;
--            break;
-+        axis = LIBINPUT_POINTER_AXIS_SCROLL_VERTICAL;
-+        if (libinput_event_pointer_has_axis (axis_event, axis))
-+          {
-+            if (wheel)
-+              dy = 10 * libinput_event_pointer_get_axis_value_discrete (axis_event, axis);
-+            else
-+              dy = libinput_event_pointer_get_axis_value (axis_event, axis);
-+          }
- 
-+        axis = LIBINPUT_POINTER_AXIS_SCROLL_HORIZONTAL;
-+        if (libinput_event_pointer_has_axis (axis_event, axis))
-+          {
-+            if (wheel)
-+              dx = 10 * libinput_event_pointer_get_axis_value_discrete (axis_event, axis);
-+            else
-+              dx = libinput_event_pointer_get_axis_value (axis_event, axis);
-           }
- 
-         notify_scroll (device, time, dx, dy);
-diff --git a/configure.ac b/configure.ac
-index 0a9a580..2a47744 100644
---- a/configure.ac
-+++ b/configure.ac
-@@ -146,7 +146,7 @@ m4_define([uprof_req_version],          [0.3])
- m4_define([gtk_doc_req_version],        [1.20])
- m4_define([xcomposite_req_version],     [0.4])
- m4_define([gdk_req_version],            [3.3.18])
--m4_define([libinput_req_version],       [0.4.0])
-+m4_define([libinput_req_version],       [0.8.0])
- m4_define([libudev_req_version],        [136])
- 
- AC_SUBST([GLIB_REQ_VERSION],       [glib_req_version])
--- 
-cgit v0.10.1
-



More information about the arch-commits mailing list