{"object_kind":"push","event_name":"push","before":"905b4c6a4cce6dce87bf9653b41d55923e03ab71","after":"c48aff86d7264dfefafb690014c8694c104fe768","ref":"refs/heads/main","ref_protected":false,"checkout_sha":"c48aff86d7264dfefafb690014c8694c104fe768","message":null,"user_id":9716,"user_name":"Marge Bot","user_username":"marge-bot","user_email":"","user_avatar":"https://gitlab.freedesktop.org/uploads/-/system/user/avatar/9716/marge.png","project_id":147,"project":{"id":147,"name":"libinput","description":"Input device management and event handling library","web_url":"https://gitlab.freedesktop.org/libinput/libinput","avatar_url":null,"git_ssh_url":"git@ssh.gitlab.freedesktop.org:libinput/libinput.git","git_http_url":"https://gitlab.freedesktop.org/libinput/libinput.git","namespace":"libinput","visibility_level":20,"path_with_namespace":"libinput/libinput","default_branch":"main","ci_config_path":"","homepage":"https://gitlab.freedesktop.org/libinput/libinput","url":"git@ssh.gitlab.freedesktop.org:libinput/libinput.git","ssh_url":"git@ssh.gitlab.freedesktop.org:libinput/libinput.git","http_url":"https://gitlab.freedesktop.org/libinput/libinput.git"},"commits":[{"id":"8974a15178faaab58ccbbf67e3328828a466745a","message":"util: add a bitmask_t type for bit masks\n\nPreviously we used uint32_t for bitmasks but having a custom type means\nwe're less likely to confuse an int value with a mask type.\n\nTwo types of API here, the u32 api for passing in masks and a bit API\nfor passing in single bits.\n\nPart-of: \n","title":"util: add a bitmask_t type for bit masks","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/8974a15178faaab58ccbbf67e3328828a466745a","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":[],"modified":["src/util-bits.h","test/test-utils.c"],"removed":[]},{"id":"28e50024abc6935de07deaa499a1d4091aa289e0","message":"tablet: move the libwacom stylus query out into the caller\n\nBetter re-usability of the WacomStylus struct in subsequent patches.\n\nPart-of: \n","title":"tablet: move the libwacom stylus query out into the caller","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/28e50024abc6935de07deaa499a1d4091aa289e0","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":[],"modified":["src/evdev-tablet.c"],"removed":[]},{"id":"e7ebb1bca6850b046e266a25483d033fd3dbb4ab","message":"tablet: keep a ref to the last tablet in proximity for each tool\n\n99.9% of the time the next tablet will be the same tablet it was used on\nlast. Having a ref means we can modify tablet settings while the tool is\nout of proximity.\n\nPart-of: \n","title":"tablet: keep a ref to the last tablet in proximity for each tool","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/e7ebb1bca6850b046e266a25483d033fd3dbb4ab","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":[],"modified":["src/evdev-tablet.c","src/libinput-private.h","src/libinput.c"],"removed":[]},{"id":"e5e28ea7e6753cdd2ab9482026ec11d7e01eed80","message":"tablet: implement the tablet double tool quirk as plugin\n\nPart-of: \n","title":"tablet: implement the tablet double tool quirk as plugin","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/e5e28ea7e6753cdd2ab9482026ec11d7e01eed80","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":["src/libinput-plugin-tablet-double-tool.c","src/libinput-plugin-tablet-double-tool.h"],"modified":["meson.build","src/evdev-tablet.c","src/libinput-plugin.c","test/test-tablet.c"],"removed":[]},{"id":"2d23d7f4aa2772b4f73867da35599b3d162144f9","message":"tablet: implement the tablet proximity timer as plugin\n\nTogether with the \"forced-tool\" quirk (that enforces BTN_TOOL_PEN to be\nset even if the tablet doesn't) since those two go hand-in-hand.\n\nPart-of: \n","title":"tablet: implement the tablet proximity timer as plugin","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/2d23d7f4aa2772b4f73867da35599b3d162144f9","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":["src/libinput-plugin-tablet-forced-tool.c","src/libinput-plugin-tablet-forced-tool.h","src/libinput-plugin-tablet-proximity-timer.c","src/libinput-plugin-tablet-proximity-timer.h"],"modified":["meson.build","src/evdev-tablet.c","src/evdev-tablet.h","src/libinput-plugin.c","test/test-tablet.c"],"removed":[]},{"id":"4ef14e14e45d6d44984fe1fdd5511ac6ffdeadf3","message":"Add an API for configurable eraser button behavior\n\nThis adds the public API to configure an eraser button on a tablet tool\nto emulate a normal button. In DEFAULT mode the eraser button will\nsimply do whatever it does by default (i.e. toggle to eraser).\nIn BUTTON mode the eraser button will be converted to a regular tool\nbutton event, with libinput handling the underlying proximity event\nmadness.\n\nPart-of: \n","title":"Add an API for configurable eraser button behavior","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/4ef14e14e45d6d44984fe1fdd5511ac6ffdeadf3","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":["doc/user/svg/tablet-eraser-button.svg","doc/user/svg/tablet-eraser-invert.svg"],"modified":["doc/user/meson.build","doc/user/tablet-support.rst","src/libinput-private.h","src/libinput.c","src/libinput.h","src/libinput.sym","tools/libinput-debug-events.man","tools/shared.c","tools/shared.h"],"removed":[]},{"id":"42c0bff29b652c3dc8e92dbb41324e19050b86d1","message":"plugin: add internal api to notify plugins of tool configuration\n\nPart-of: \n","title":"plugin: add internal api to notify plugins of tool configuration","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/42c0bff29b652c3dc8e92dbb41324e19050b86d1","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":[],"modified":["src/evdev-tablet.c","src/libinput-plugin-system.h","src/libinput-plugin.c","src/libinput-plugin.h"],"removed":[]},{"id":"c48aff86d7264dfefafb690014c8694c104fe768","message":"tablet: implement eraser button disabling\n\nThis adds a new (internal) plugin that is responsible for eraser button\ndisabling.\n\nSigned-off-by: Peter Hutterer \nPart-of: \n","title":"tablet: implement eraser button disabling","timestamp":"2025-06-18T19:38:14+10:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/c48aff86d7264dfefafb690014c8694c104fe768","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":["src/libinput-plugin-tablet-eraser-button.c","src/libinput-plugin-tablet-eraser-button.h"],"modified":["meson.build","src/evdev-tablet.c","src/libinput-plugin.c","src/libinput-private.h","test/litest.h","test/test-tablet.c","tools/shared.c"],"removed":[]}],"total_commits_count":8,"push_options":{},"repository":{"name":"libinput","url":"git@ssh.gitlab.freedesktop.org:libinput/libinput.git","description":"Input device management and event handling library","homepage":"https://gitlab.freedesktop.org/libinput/libinput","git_http_url":"https://gitlab.freedesktop.org/libinput/libinput.git","git_ssh_url":"git@ssh.gitlab.freedesktop.org:libinput/libinput.git","visibility_level":20}}