Hello community,

here is the log from the commit of package gtk3 for openSUSE:Factory checked in 
at 2015-07-19 11:45:27
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++
Comparing /work/SRC/openSUSE:Factory/gtk3 (Old)
 and      /work/SRC/openSUSE:Factory/.gtk3.new (New)
++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Package is "gtk3"

Changes:
--------
--- /work/SRC/openSUSE:Factory/gtk3/gtk3.changes        2015-07-05 
18:00:43.000000000 +0200
+++ /work/SRC/openSUSE:Factory/.gtk3.new/gtk3.changes   2015-07-19 
11:45:29.000000000 +0200
@@ -1,0 +2,19 @@
+Wed Jul 15 20:06:01 UTC 2015 - [email protected]
+
+- Add gtk3-Revert-x11-Query-pointer-devices-scroll-valuators.patch:
+  Revert a commit as it makes hardware mouse-wheel scrolling
+  unreliable (bgo#752184).
+
+-------------------------------------------------------------------
+Tue Jul  7 17:05:45 UTC 2015 - [email protected]
+
+- Update to version 3.16.5:
+  + Fix ridge/groove border rendering.
+  + GtkListBoxRow: propagate in the draw vfunc.
+  + Bugs fixed: bgo#750489, bgo#750605, bgo#750690, bgo#750718,
+    bgo#750870, bgo#750888, bgo#750994, bgo#751018, bgo#751050,
+    bgo#751082, bgo#751227, bgo#751443, bgo#751739, bgo#751752,
+    bgo#751754.
+  + Updated translations.
+
+-------------------------------------------------------------------

Old:
----
  gtk+-3.16.4.tar.xz

New:
----
  gtk+-3.16.5.tar.xz
  gtk3-Revert-x11-Query-pointer-devices-scroll-valuators.patch

++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++

Other differences:
------------------
++++++ gtk3.spec ++++++
--- /var/tmp/diff_new_pack.7qbspL/_old  2015-07-19 11:45:31.000000000 +0200
+++ /var/tmp/diff_new_pack.7qbspL/_new  2015-07-19 11:45:31.000000000 +0200
@@ -29,7 +29,7 @@
 
 Name:           gtk3
 %define _name gtk+
-Version:        3.16.4
+Version:        3.16.5
 Release:        0
 Summary:        The GTK+ toolkit library (version 3)
 License:        LGPL-2.1+
@@ -47,6 +47,8 @@
 ## PATCH-DISABLED gtk3-bnc130159-bgo319483-async-font-selection.patch - 
Upstream bug was closed as obsolete in 2011, lets see if anyone complains. 
 # PATCH-FIX-UPSTREAM gtk3-bnc130159-bgo319483-async-font-selection.patch 
bnc130159 bgo319483 [email protected] - Load fonts asynchronously in 
GtkFontSelection to make it appear faster for CJK languages
 Patch3:         gtk3-bnc130159-bgo319483-async-font-selection.patch
+# PATCH-FIX-UPSTREAM 
gtk3-Revert-x11-Query-pointer-devices-scroll-valuators.patch bgo#752184 
[email protected] -- Revert a commit that makes hardware mice scrollwheel 
jumpy.
+Patch4:         gtk3-Revert-x11-Query-pointer-devices-scroll-valuators.patch
 BuildRequires:  cups-devel >= 1.2
 BuildRequires:  docbook-xsl-stylesheets
 BuildRequires:  fdupes
@@ -338,6 +340,7 @@
 %patch1 -p0
 ## PATCH-DISABLED - Upstream bug was closed as obsolete in 2011, as there was 
a new fontchooser, lets disable the patch and see if anyone complains.
 #%%patch3 -p1
+%patch4 -p1
 
 %build
 # Needed for patch1 and patch4

++++++ gtk+-3.16.4.tar.xz -> gtk+-3.16.5.tar.xz ++++++
/work/SRC/openSUSE:Factory/gtk3/gtk+-3.16.4.tar.xz 
/work/SRC/openSUSE:Factory/.gtk3.new/gtk+-3.16.5.tar.xz differ: char 26, line 1

++++++ gtk3-Revert-x11-Query-pointer-devices-scroll-valuators.patch ++++++
>From 72bfb40ccf746f743d9818f9dbecf2820f4557ba Mon Sep 17 00:00:00 2001
From: Carlos Garnacho <[email protected]>
Date: Wed, 15 Jul 2015 21:19:25 +0200
Subject: Revert "x11: Query pointer devices' scroll valuators on toplevel
 enter events"

This reverts commit 77b8495bc4e51826afa451914d6a3b0df1b62a24.

The commit broke more scenarios than fixed, better to go back to square one.

diff --git a/gdk/x11/gdkdevice-xi2.c b/gdk/x11/gdkdevice-xi2.c
index 280eb0d..515840b 100644
--- a/gdk/x11/gdkdevice-xi2.c
+++ b/gdk/x11/gdkdevice-xi2.c
@@ -40,6 +40,7 @@ struct _ScrollValuator
 {
   guint n_valuator       : 4;
   guint direction        : 4;
+  guint last_value_valid : 1;
   gdouble last_value;
   gdouble increment;
 };
@@ -818,8 +819,8 @@ _gdk_x11_device_xi2_add_scroll_valuator (GdkX11DeviceXI2    
*device,
 
   scroll.n_valuator = n_valuator;
   scroll.direction = direction;
+  scroll.last_value_valid = FALSE;
   scroll.increment = increment;
-  scroll.last_value = 0;
 
   g_array_append_val (device->scroll_valuators, scroll);
 }
@@ -850,10 +851,18 @@ _gdk_x11_device_xi2_get_scroll_delta (GdkX11DeviceXI2    
*device,
           if (delta_ret)
             *delta_ret = 0;
 
-          if (delta_ret)
-            *delta_ret = (valuator_value - scroll->last_value) / 
scroll->increment;
+          if (scroll->last_value_valid)
+            {
+              if (delta_ret)
+                *delta_ret = (valuator_value - scroll->last_value) / 
scroll->increment;
 
-          scroll->last_value = valuator_value;
+              scroll->last_value = valuator_value;
+            }
+          else
+            {
+              scroll->last_value = valuator_value;
+              scroll->last_value_valid = TRUE;
+            }
 
           return TRUE;
         }
@@ -863,33 +872,17 @@ _gdk_x11_device_xi2_get_scroll_delta (GdkX11DeviceXI2    
*device,
 }
 
 void
-_gdk_device_xi2_revalidate_scroll_valuators (GdkX11DeviceXI2 *device)
+_gdk_device_xi2_reset_scroll_valuators (GdkX11DeviceXI2 *device)
 {
-  GdkDisplay *display;
-  XIDeviceInfo *info;
-  gint i, ndevices;
-
-  display = gdk_device_get_display (GDK_DEVICE (device));
-
-  gdk_x11_display_error_trap_push (display);
-  info = XIQueryDevice (GDK_DISPLAY_XDISPLAY (display),
-                        device->device_id, &ndevices);
-  gdk_x11_display_error_trap_pop_ignored (display);
-
-  if (!info)
-    return;
+  guint i;
 
   for (i = 0; i < device->scroll_valuators->len; i++)
     {
-      XIValuatorClassInfo *valuator;
       ScrollValuator *scroll;
 
       scroll = &g_array_index (device->scroll_valuators, ScrollValuator, i);
-      valuator = (XIValuatorClassInfo *) info->classes[scroll->n_valuator + 1];
-      scroll->last_value = valuator->value;
+      scroll->last_value_valid = FALSE;
     }
-
-  XIFreeDeviceInfo (info);
 }
 
 void
diff --git a/gdk/x11/gdkdevicemanager-xi2.c b/gdk/x11/gdkdevicemanager-xi2.c
index 5d374a2..e63c35b 100644
--- a/gdk/x11/gdkdevicemanager-xi2.c
+++ b/gdk/x11/gdkdevicemanager-xi2.c
@@ -824,11 +824,13 @@ handle_device_changed (GdkX11DeviceManagerXI2 
*device_manager,
                        XIDeviceChangedEvent   *ev)
 {
   GdkDisplay *display;
-  GdkDevice *device;
+  GdkDevice *device, *source_device;
 
   display = gdk_device_manager_get_display (GDK_DEVICE_MANAGER 
(device_manager));
   device = g_hash_table_lookup (device_manager->id_table,
                                 GUINT_TO_POINTER (ev->deviceid));
+  source_device = g_hash_table_lookup (device_manager->id_table,
+                                       GUINT_TO_POINTER (ev->sourceid));
 
   if (device)
     {
@@ -839,6 +841,9 @@ handle_device_changed (GdkX11DeviceManagerXI2 
*device_manager,
 
       g_signal_emit_by_name (G_OBJECT (device), "changed");
     }
+
+  if (source_device)
+    _gdk_device_xi2_reset_scroll_valuators (GDK_X11_DEVICE_XI2 
(source_device));
 }
 
 static GdkCrossingMode
@@ -1678,16 +1683,16 @@ gdk_x11_device_manager_xi2_translate_event 
(GdkEventTranslator *translator,
             xev->detail != XINotifyInferior && xev->mode != 
XINotifyPassiveUngrab &&
            gdk_window_get_window_type (window) == GDK_WINDOW_TOPLEVEL)
           {
-            if (gdk_device_get_device_type (device) != GDK_DEVICE_TYPE_MASTER)
-              _gdk_device_xi2_revalidate_scroll_valuators (GDK_X11_DEVICE_XI2 
(source_device));
+            if (gdk_device_get_device_type (source_device) != 
GDK_DEVICE_TYPE_MASTER)
+              _gdk_device_xi2_reset_scroll_valuators (GDK_X11_DEVICE_XI2 
(source_device));
             else
               {
                 GList *slaves, *l;
 
-                slaves = gdk_device_list_slave_devices (device);
+                slaves = gdk_device_list_slave_devices (source_device);
 
                 for (l = slaves; l; l = l->next)
-                  _gdk_device_xi2_revalidate_scroll_valuators (l->data);
+                  _gdk_device_xi2_reset_scroll_valuators (GDK_X11_DEVICE_XI2 
(l->data));
 
                 g_list_free (slaves);
               }
diff --git a/gdk/x11/gdkprivate-x11.h b/gdk/x11/gdkprivate-x11.h
index 459b76e..c2afecf 100644
--- a/gdk/x11/gdkprivate-x11.h
+++ b/gdk/x11/gdkprivate-x11.h
@@ -246,8 +246,6 @@ gboolean  _gdk_x11_device_xi2_get_scroll_delta    
(GdkX11DeviceXI2    *device,
                                                    GdkScrollDirection 
*direction_ret,
                                                    gdouble            
*delta_ret);
 void     _gdk_device_xi2_reset_scroll_valuators   (GdkX11DeviceXI2    *device);
-void     _gdk_device_xi2_revalidate_scroll_valuators (GdkX11DeviceXI2 *device);
-
 
 gdouble  gdk_x11_device_xi2_get_last_axis_value (GdkX11DeviceXI2 *device,
                                                  gint             n_axis);
-- 
cgit v0.10.2


Reply via email to