{"object_kind":"push","event_name":"push","before":"428a3299a895d1313c6dff94b21474b6bea78516","after":"f3f8e8ef6c82517ffa00de7dff8ed4cc82f17bc3","ref":"refs/heads/main","ref_protected":false,"checkout_sha":"f3f8e8ef6c82517ffa00de7dff8ed4cc82f17bc3","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":"ce1112c263b770a118423d9e1fd2f7e8ecfa0f4d","message":"plugin: remove the proximity timer callback after prox out events\n\nOne of the code paths was addressed in b2cd9c69a05b but this path was\nmissing.\n\nFixes: b2cd9c69a05b (\"plugin: remove the event frame callbacks when disabling a plugin\")\nPart-of: \n","title":"plugin: remove the proximity timer callback after prox out events","timestamp":"2025-08-31T00:18:59+00:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/ce1112c263b770a118423d9e1fd2f7e8ecfa0f4d","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":[],"modified":["src/libinput-plugin-tablet-proximity-timer.c"],"removed":[]},{"id":"f3f8e8ef6c82517ffa00de7dff8ed4cc82f17bc3","message":"plugin: ensure prox out for a forced proximity tool if the tool changes\n\nA device may send axis events while the tool is out of proximity,\ncausing our plugin to force a proximity in for the pen. If the tool then\nsends a proximity event for a different tool we ended up with two tools\nin proximity.\n\nThe sequence in #1171 shows this:\n\n - evdev:\n - [ 1, 499608, 3, 27, 0] # EV_ABS / ABS_TILT_Y 0 (+30)\n - [ 1, 499608, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +0ms\n - evdev:\n - [ 2, 199637, 1, 321, 1] # EV_KEY / BTN_TOOL_RUBBER 1\n - [ 2, 199637, 4, 4, 30] # EV_MSC / MSC_SCAN 30 (obfuscated)\n - [ 2, 199637, 1, 330, 1] # EV_KEY / BTN_TOUCH 1\n - [ 2, 199637, 3, 0, 910] # EV_ABS / ABS_X 910 (+246)\n - [ 2, 199637, 3, 1, 8736] # EV_ABS / ABS_Y 8736 (-105)\n - [ 2, 199637, 3, 27, -25] # EV_ABS / ABS_TILT_Y -25 (-25)\n - [ 2, 199637, 0, 0, 0] # ------------ SYN_REPORT (0) ---------- +700ms\n\nFix this by remembering that we forced the tool out of proximity so if\nwe see tool events for another tool we force the pen out of proximity\nagain.\n\nThis will have some interplay with the other tablet plugins but\nhopefully none that affect real-world devices, e.g. forcing a proximity\nout means the proximity out timer plugin gets disabled. Since devices\nbehave in unexpected manners anyway let's see if it affects a real-world\ndevice.\n\nCloses #1171\n\nPart-of: \n","title":"plugin: ensure prox out for a forced proximity tool if the tool changes","timestamp":"2025-08-31T00:18:59+00:00","url":"https://gitlab.freedesktop.org/libinput/libinput/-/commit/f3f8e8ef6c82517ffa00de7dff8ed4cc82f17bc3","author":{"name":"Peter Hutterer","email":"peter.hutterer@who-t.net"},"added":[],"modified":["src/libinput-plugin-tablet-forced-tool.c","test/test-tablet.c"],"removed":[]}],"total_commits_count":2,"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}}