commit 3c2081fce45ce9363d167df0ef5093d272ca9c14 Author: Emmanuele Bassi Date: Tue Mar 4 01:29:07 2014 +0000 Release Clutter 1.17.6 NEWS | 40 ++++++++++++++++++++++++++++++++++++++++ configure.ac | 2 +- 2 files changed, 41 insertions(+), 1 deletion(-) commit c73f45ca7c90af622e604e1edd8e27f4bdd9acc8 Author: Emmanuele Bassi Date: Mon Mar 3 23:25:08 2014 +0000 text: Use the keymap direction when focused If the ClutterText actor has key focus then we should ask for the direction of the key map, instead of the direction of the actor. https://bugzilla.gnome.org/show_bug.cgi?id=705779 clutter/clutter-text.c | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) commit 3209129d6b9031fc4beb4d0c5c6b8a8c05286941 Author: Emmanuele Bassi Date: Mon Mar 3 23:23:12 2014 +0000 x11: Add keymap direction query We should use the Xkb API to query the direction of the key map, depending on the group. To get a valid result we need to go over the Unicode equivalents of the key symbols for each group, so we should cache the result. The code used to query and cache the key map direction is taken from GDK. https://bugzilla.gnome.org/show_bug.cgi?id=705779 clutter/x11/clutter-backend-x11.c | 13 +++ clutter/x11/clutter-keymap-x11.c | 164 +++++++++++++++++++++++++++++++++++++- clutter/x11/clutter-keymap-x11.h | 3 + 3 files changed, 179 insertions(+), 1 deletion(-) commit a0003499783d28028dbc4c48e3c673d6b244a20e Author: Emmanuele Bassi Date: Mon Mar 3 23:22:13 2014 +0000 backend: Add private accessor for the keymap direction We need to ask the backend (wherever possible) for the direction of the current keymap. https://bugzilla.gnome.org/show_bug.cgi?id=705779 clutter/clutter-backend-private.h | 4 ++++ clutter/clutter-backend.c | 12 ++++++++++++ 2 files changed, 16 insertions(+) commit 6faf6dfe420c57f97d4603979693e282082e9a9a Author: Emmanuele Bassi Date: Mon Mar 3 19:16:00 2014 +0000 text: Use the resolved text direction Now that we compute the effective text direction when creating the Pango layout, we should also use it when painting it. https://bugzilla.gnome.org/show_bug.cgi?id=705779 clutter/clutter-text.c | 5 ++++- 1 file changed, 4 insertions(+), 1 deletion(-) commit 50b6b59d02947bf17252c402deff112c2071edc8 Author: Emmanuele Bassi Date: Mon Mar 3 18:04:19 2014 +0000 text: Discover the direction of the contents We should set the direction on the PangoContext when creating a PangoLayout based on a best effort between the contents of the text itself and the text direction of the widget, in case that fails. https://bugzilla.gnome.org/show_bug.cgi?id=705779 clutter/clutter-text.c | 25 ++++++++++++++++++++++++- 1 file changed, 24 insertions(+), 1 deletion(-) commit c42aa42361ef12f2b331fe10db77510f2aada67c Author: Fran Diéguez Date: Mon Mar 3 21:47:28 2014 +0100 Updated Galician translations po/gl.po | 76 +++++++++++++++++++++++++++++++++++++--------------------------- 1 file changed, 44 insertions(+), 32 deletions(-) commit 9b097eb4d86e5235b3434a1e095f29a6a835b3cc Author: Jasper St. Pierre Date: Sat Mar 1 14:12:54 2014 -0500 device-manager-evdev: Make sure to reset released when reclaiming devices Otherwise, Clutter will tell us that we forgot to call reclaim_devices the next time we call release_devices... but we didn't! clutter/evdev/clutter-device-manager-evdev.c | 2 ++ 1 file changed, 2 insertions(+) commit 4a3ad9c3af2db9bb805b7abae018f6531087d1ac Author: Adel Gadllah Date: Mon Mar 3 11:36:11 2014 +0100 DeviceManagerXi2: Cache the client pointer Currently clutter_device_manager_xi2_get_core_device always does a round trip to query the client. So avoid that by caching the client pointer and only update it when the xi devices change. https://bugzilla.gnome.org/show_bug.cgi?id=725561 clutter/x11/clutter-device-manager-xi2.c | 35 ++++++++++++++++++++------------ 1 file changed, 22 insertions(+), 13 deletions(-) commit edc91b7640c15678a9136dc1028518a46631936a Author: Piotr Drąg Date: Sun Mar 2 18:49:34 2014 +0100 Updated Polish translation po/pl.po | 930 +++++++++++++++++++++++++++++++++------------------------------ 1 file changed, 489 insertions(+), 441 deletions(-) commit fdd553d2a9bef6cd449311e491fd985cad750f93 Author: Jasper St. Pierre Date: Fri Feb 28 09:50:36 2014 -0500 evdev: Kill compile warning clutter/evdev/clutter-device-manager-evdev.c | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit 64508e48b633dfd07fe2602b4c0601b267c2bb08 Author: Rui Matos Date: Thu Feb 27 11:30:10 2014 +0100 evdev: Add missing CLUTTER_AVAILABLE_IN_* annotations clutter/evdev/clutter-evdev.h | 7 +++++++ 1 file changed, 7 insertions(+) commit 2c9a4fd2204626119c501eb30f9608f660dd0c9a Author: Rui Matos Date: Thu Feb 27 11:22:50 2014 +0100 evdev: Add missing 'Since' and 'Stability' doc tags clutter/evdev/clutter-device-manager-evdev.c | 15 +++++++++++++++ 1 file changed, 15 insertions(+) commit 458de1178dcfd2371ca8d1e684c403b631c552cf Author: Rui Matos Date: Mon Feb 24 16:41:51 2014 +0100 evdev: Set the initial core pointer coordinates to a sane value ClutterInputDevice's default initial coordinates is (-1, -1) and since they're updated from events in a relative way it means that the pointer can go outside the stage right from the first event. We usually let this up to higher layers to fix through the pointer constraint callback but that doesn't work if the first event doesn't put the pointer immediately inside the stage. https://bugzilla.gnome.org/show_bug.cgi?id=725103 clutter/evdev/clutter-device-manager-evdev.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) commit d67b38f96086d8cec316784516154b3af4a449eb Author: Rui Matos Date: Wed Jan 15 17:54:25 2014 +0100 evdev: Make the keymap available Make the keymap available so that consumers don't have to duplicate it if they need it. https://bugzilla.gnome.org/show_bug.cgi?id=725102 clutter/evdev/clutter-device-manager-evdev.c | 20 ++++++++++++++++++++ clutter/evdev/clutter-evdev.h | 2 ++ 2 files changed, 22 insertions(+) commit 2a7d5503d85e8b35ee1347a12e3099273b689408 Author: Rui Matos Date: Mon Jan 20 13:50:08 2014 +0100 evdev: Don't update xkb state with pressed keys on keymap change Doing so is unlikely to work reliably. Instead, switching the keymap should be done at a time when no key is currently pressed down, but let's leave that task to higher level code. This allows us to remove key state tracking at yet another level in the stack since higher level code likely already tracks this for other purposes. https://bugzilla.gnome.org/show_bug.cgi?id=725102 clutter/evdev/clutter-device-manager-evdev.c | 47 ++-------------------------- 1 file changed, 3 insertions(+), 44 deletions(-) commit 945ee5764af31a0471c8410b094b41f343afd67a Author: Rui Matos Date: Mon Jan 20 13:47:06 2014 +0100 evdev: Keep latched and locked modifier state when switching keymaps https://bugzilla.gnome.org/show_bug.cgi?id=725102 clutter/evdev/clutter-device-manager-evdev.c | 12 ++++++++++++ 1 file changed, 12 insertions(+) commit a6bd53ec426f48441541b484281295316ce0b077 Author: Rui Matos Date: Mon Jan 13 16:05:57 2014 +0100 evdev: Implement keyboard repeat The kernel keyboard repeat functionality isn't configurable and libinput rightfully ignores it. This implements keyboard repeat in userspace allowing for consumers to set the initial delay and repeat intervals. https://bugzilla.gnome.org/show_bug.cgi?id=725102 clutter/evdev/clutter-device-manager-evdev.c | 129 ++++++++++++++++++++++++++- clutter/evdev/clutter-evdev.h | 4 + 2 files changed, 131 insertions(+), 2 deletions(-) commit 133f95fd0d5ec3a4ec8c6f5db5be5331a1d328f2 Author: Rui Matos Date: Mon Feb 24 14:22:19 2014 +0100 evdev: Add a conditional define guard to expose API The evdev backend has always been excluded from Clutter's API stability guarantee though in an informal way. This commit makes it explicit by forcing users to define CLUTTER_ENABLE_COMPOSITOR_API. https://bugzilla.gnome.org/show_bug.cgi?id=725102 README.in | 6 ++++++ clutter/evdev/clutter-evdev.h | 5 +++++ 2 files changed, 11 insertions(+) commit b9abda52b62913939d9caf374ada282071083537 Author: Rui Matos Date: Thu Feb 27 10:55:05 2014 +0100 build: Bump required libinput version to the actually released 0.1.0 configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) commit dacb515e27fe9f98fcfe7b93730e8b9bf76f11e2 Author: Jonas Ådahl Date: Sun Dec 15 17:38:56 2013 +0100 evdev: Port evdev input backend to libinput Instead of having its own evdev input device processing implementation, make clutter's evdev backend use libinput to do input device processing for it. Two GObject parameters of ClutterInputDeviceEvdev (sysfs-path and device-path) are removed as they are not used any more. Before ClutterDeviceManagerEvdev had one virtual core keyboard and one virtual core pointer device. These are now instead separated into seats, which all have one virtual core keyboard and pointer device respectively. The 'global' core keyboard and pointer device are the core keyboard and pointer device of the first seat that is created. A ClutterInputDeviceEvdev can, as before, both represent a real physical device or a virtual device, but is now instead created either via _clutter_input_device_evdev_new() for real devices, and _clutter_input_device_new_virtual() for virtual devices. XKB state and button state is moved to the seat structure and is thus separated per seat. Seats are not a concept exposed outside of clutter's evdev backend. Signed-off-by: Jonas Ådahl https://bugzilla.gnome.org/show_bug.cgi?id=720566 README.in | 7 +- clutter/evdev/clutter-device-manager-evdev.c | 1317 ++++++++++++-------------- clutter/evdev/clutter-input-device-evdev.c | 238 ++--- clutter/evdev/clutter-input-device-evdev.h | 35 +- configure.ac | 8 +- 5 files changed, 757 insertions(+), 848 deletions(-) commit 488639eb63f0c26d65db0700e94b1067da873617 Author: Carlos Garnacho Date: Sat Feb 22 20:35:23 2014 +0100 x11: Avoid invalid ClutterInputDevice pointers in the device list Due to the way add_device() invariably adds to the master/slave device lists, while keeping ClutterInputDevices 1:1 with device IDs, it may leave invalid pointers in the list if add_device() is called multiple times for the same device ID. There are two situations where this may happen: 1) If devices are disabled and later enabled: devices are added invariably to the master/slave lists on constructed(), but then on XIDeviceEnabled they'd get added yet again. 2) Racy cases where the ClutterDeviceManager is created around the same time XIHierarchyEvents are sent. When getting the XIDeviceInfo on constructed(), these devices may already appear as enabled, even though XIDeviceEnabled is seen through XIHierarchyEvents processed in the event loop sortly after. This last case can be seen when starting gnome-shell on a different tty, and entering in the one it's been spawned on, clutter initialization happens around the same time devices are added back because of the tty switch, and multiple extra ClutterInputDevices are created. https://bugzilla.gnome.org/show_bug.cgi?id=724971 clutter/x11/clutter-device-manager-xi2.c | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) commit c4372249e2b80b7623ad9ce33de2683f2ebed17c Author: Мирослав Николић Date: Mon Feb 24 22:45:32 2014 +0100 Updated Serbian translation po/sr.po | 62 +++++++++++++++++++++++++++++++++++----------------------- po/sr@latin.po | 62 +++++++++++++++++++++++++++++++++++----------------------- 2 files changed, 76 insertions(+), 48 deletions(-) commit 856342caadc4d9c8ed1ad701ba77800d0367b5b5 Author: Balázs Úr Date: Sun Feb 23 16:29:28 2014 +0100 Updated Hungarian translation po/hu.po | 863 ++++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 468 insertions(+), 395 deletions(-) commit cee480bd1a33305dff6f9302132e647acf1048ad Author: Marek Černocký Date: Sat Feb 22 13:14:34 2014 +0100 Updated Czech translation po/cs.po | 50 +++++++++++++++++++++++++++++++++----------------- 1 file changed, 33 insertions(+), 17 deletions(-) commit f8cfb5dd074d65f213da2e3bfea9787febf9fb3d Author: Aurimas Černius Date: Fri Feb 21 22:13:07 2014 +0200 Updated Lithuanian translation po/lt.po | 931 ++++++++++++++++++++++++++++++++++----------------------------- 1 file changed, 500 insertions(+), 431 deletions(-) commit bde9ea04e0409ad1101462fc11d82feb61cf3616 Author: Rafael Ferreira Date: Fri Feb 21 14:52:30 2014 +0000 Updated Brazilian Portuguese translation po/pt_BR.po | 54 +++++++++++++++++++++++++++++++++++++----------------- 1 file changed, 37 insertions(+), 17 deletions(-) commit 263939553385102bf53fe3dfeaa64ee7364d7b89 Author: Adel Gadllah Date: Sun Feb 16 22:07:43 2014 +0100 stage-cogl: Fix buffer_age code path Currently we where checking whether the damage_history list contains more or equal then buffer_age entries. This is wrong because we prepend our current clip to the list just before the check. Fix that to check whether we have more entries instead of more or equal. https://bugzilla.gnome.org/show_bug.cgi?id=724788 clutter/cogl/clutter-stage-cogl.c | 5 +++-- 1 file changed, 3 insertions(+), 2 deletions(-) commit 75f2b1c5c211537a4777d6ddb4cc6a63f6a6cc56 Author: Emmanuele Bassi Date: Wed Feb 19 13:30:45 2014 +0000 Post-release version bump to 1.17.5 configure.ac | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-)