commit a34b939a571a29d7cf0c13ce3fa92a52983b0881
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Tue Jun 30 11:24:03 2015 +0100

    Release Clutter 1.22.4

 NEWS         | 19 +++++++++++++++++++
 README.in    |  4 ++++
 configure.ac |  2 +-
 3 files changed, 24 insertions(+), 1 deletion(-)

commit 9d63feddba0837a33344ecc1b73c98326182e7c1
Author: Peter Hutterer <peter.hutterer@who-t.net>
Date:   Thu Jun 25 09:23:13 2015 +1000

    x11: don't create the libinput tapping property
    
    If it doesn't exist, we don't have a touchpad. Don't create the property
    and potentially confuse other pieces of the stack that do the same check.

 clutter/x11/clutter-device-manager-xi2.c | 7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

commit d2b08eb177f2fcf88b99914f261442389770ed43
Author: Kalev Lember <klember@redhat.com>
Date:   Sat Jun 20 18:55:01 2015 +0200

    docs: Fix a typo in ClutterImage example

 clutter/clutter-image.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit f42075866d171b4677215d26b2382d045ede408d
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Sat Jun 6 20:11:33 2015 +0200

    gdk: Enable GDK_TOUCH_MASK on the stage window
    
    This allows touch events to be received and translated.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=750496
    (cherry picked from commit 2105055a347c8a35d091cabe118983f621f26965)
    Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>

 clutter/gdk/clutter-stage-gdk.h | 1 +
 1 file changed, 1 insertion(+)

commit 595eef724598a62b78da6ec55aea44f6e64a3c82
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Sat Jun 6 20:10:13 2015 +0200

    gdk: Ignore synthesized leave events out of touch events
    
    Certain crossing modes notify about synthesized events, where
    the pointer didn't really leave the window. Unsetting the stage
    from the device at that time is incorrect, and will leave all
    remaining touches unable to pick coordinates, so silently eaten
    away.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=750496
    (cherry picked from commit 7ed3714a94dbac1022b3e123e9243b501b01c6cd)
    Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>

 clutter/gdk/clutter-event-gdk.c | 5 ++++-
 1 file changed, 4 insertions(+), 1 deletion(-)

commit 19064c4f444ed3fd596580cb98876619133c7f22
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Wed Jun 10 19:13:13 2015 +0100

    build: Reset interface_age
    
    We don't usually add symbols inside a stable branch, but given that the
    newly added clutter_gdk_get_visual() function is necessary to make
    Clutter work when embedded inside GTK running on nVidia binary drivers,
    I decided to break the rule. This requires resetting the interface age,
    so that the soname version changes.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747489

 configure.ac | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit ab63b30a9b1812b0e53bcddcd55f00fd507347dc
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Wed Jun 10 12:02:13 2015 +0100

    gdk: Add function to retrieve the GdkVisual
    
    Straight from Cogl.
    
    This allows us to propagate the GdkVisual Cogl and Clutter use to
    embedding toolkits, like GTK+.
    
    The function is annotated as being added to the 1.22 development
    cycle because it will be backported to the stable branch, so that
    downstream developers can package up a version of Clutter that does
    not crash on nVidia.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747489
    (cherry picked from commit 2d5b5aa82aacab7cc523e5877afbb864592b7651)
    Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>

 clutter/gdk/clutter-backend-gdk.c          | 48 ++++++++++++++++++++++++++++++
 clutter/gdk/clutter-gdk.h                  |  3 ++
 doc/reference/clutter/clutter-sections.txt |  1 +
 3 files changed, 52 insertions(+)

commit 44fc1c87489bb7bbe1d28eb0f551794db333e1fb
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Wed Jun 10 11:55:50 2015 +0100

    gdk: Use the Cogl visual on Xlib winsys
    
    GDK 3.16 started selecting different visuals, to best comply with the
    requirements for OpenGL, and this has broken Clutter on GLX drivers that
    are fairly picky in how they select visuals and GLXFBConfig.
    
    GDK selects GLXFBConfig that do not include depth or stencil buffers;
    Cogl, on the other hand, needs both depth and stencil buffers, and keeps
    selecting the first available visual, assuming that the GLX driver will
    give us the best compliant one, as per specification. Sadly, some
    drivers will return incompatible configurations, and then bomb out when
    you try to embed Clutter inside GTK+, because of mismatched visuals.
    
    Cogl has an old, deprecated, Clutter-only API that allows us to retrieve
    the XVisualInfo mapping to the GLXFBConfig it uses; this means we should
    look up the GdkVisual for it when creating our own GdkWindows, instead
    of relying on the RGBA and system GdkVisuals exposed by GDK 鈥� at least
    on X11.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=747489
    (cherry picked from commit c91621e8c28bb190eaa9d59e08b180589a255cf3)
    Signed-off-by: Emmanuele Bassi <ebassi@gnome.org>

 clutter/gdk/clutter-stage-gdk.c | 50 ++++++++++++++++++++++++++++++-----------
 1 file changed, 37 insertions(+), 13 deletions(-)

commit 69dee9c5eb5711e20d63d5aa5cfe249321d02228
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Fri May 22 18:40:34 2015 +0200

    swipe-action: Fix typo
    
    X coords are meant to compare with distance_x.

 clutter/clutter-swipe-action.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit a0bd40110a1bfc2110602aa74eb19ec6b6c4afb5
Author: Carlos Garnacho <carlosg@gnome.org>
Date:   Fri May 22 13:19:29 2015 +0200

    swipe-action: Prepare for multifinger swipes
    
    Its ::gesture-end implementation used to check the press/release
    coordinates for the first touchpoint. On multifinger swipes, we
    can receive this vfunc called due to other touch sequence going
    first, so we'd get 0/0 as the release coordinates for this still
    active sequence, resulting in bogus directions.
    
    Instead, check the last event coordinates, that will be always
    correct regardless of whether the touchpoint 0 finished yet or
    not.
    
    https://bugzilla.gnome.org/show_bug.cgi?id=749739

 clutter/clutter-swipe-action.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

commit a4aad807d5cc6842043e12897cfac3a516825c0f
Author: Rui Matos <tiagomatos@gmail.com>
Date:   Sun May 17 00:50:56 2015 +0200

    x11: Fix touchpad detection
    
    Commit 79849ef1d5fff9acd310cd68d59df0c7cf2cb28f had a typo in the
    device property format check. This property is formated in 8-bit
    items, not 32-bit.
    
    This went unnoticed till now because some touchpads were still being
    detected as such due to a second check below:
    
          else if (strstr (name, "touchpad") != NULL)
            source = CLUTTER_TOUCHPAD_DEVICE;
    
    https://bugzilla.gnome.org/show_bug.cgi?id=749482

 clutter/x11/clutter-device-manager-xi2.c | 2 +-
 1 file changed, 1 insertion(+), 1 deletion(-)

commit 24d2114fcf4d10ae770286cd0c9a5d501c5bf386
Author: Emmanuele Bassi <ebassi@gnome.org>
Date:   Tue May 12 11:39:11 2015 +0100

    Post-release version bump to 1.22.3

 configure.ac | 4 ++--
 1 file changed, 2 insertions(+), 2 deletions(-)