Who-T
- Posts
- 311 from 30 Jun 2008 to 22 Jul 2026
- Posting
- now and then (5 in the last year)
- Kind
- personal blog
- Feed
- http://feeds.feedburner.com/Who-t
2026 5
2025 8
- Why is my device a touchpad and a mouse and a keyboard?
- xkeyboard-config 2.45 has a new install location
- libinput and Lua plugins (Part 2)
- unplug - a tool to test input devices via uinput
- libinput and tablet tool eraser buttons
- libinput and Lua plugins
- libinput and 3-finger dragging
- GNOME 48 and a changed tap-and-drag drag lock behaviour
2024 9
- A new issue policy for libinput - closing and reopening issues for fun and profit
- hidreport and hut: two crates for handling HID Report Descriptors and HID Reports
- HIOCREVOKE merged for kernel 6.12
- GNOME tablet support papercut fixes
- goodbye xsetwacom, hello gsetwacom
- libwacom and Huion/Gaomon devices
- udev-hid-bpf: quickstart tooling to fix your HID devices with eBPF
- Enforcing a touchscreen mapping in GNOME
- New gitlab.freedesktop.org 🚯 emoji-based spamfighting abilities
2023 8
- Xorg being removed. What does this mean?
- PSA: For Xorg GNOME sessions, use the xf86-input-wacom driver for your tablets
- gitlab.freedesktop.org now has a bugbot for automatic issue/merge request processing
- snegg - Python bindings for libei
- libei and a fancy protocol
- New gitlab.freedesktop.org spamfighting abilities
- libinput and the custom pointer acceleration function
- X servers no longer allow byte-swapped clients (by default)
2022 4
2021 10
- What's new in XI 2.4 - touchpad gestures
- An Xorg release without Xwayland
- libinput and high-resolution wheel scrolling
- Flatpak portals - how do they work?
- libei - a status update
- It's templates all the way down - part 4
- libinput and hold gestures
- A pre-supplied "custom" keyboard layout for X11
- Auto-updating XKB for new kernel keycodes
- Parsing HID Unit Items
2020 14
- It's templates all the way down - part 3
- No user-specific XKB configuration in X
- User-specific XKB configuration - putting it all together
- User-specific XKB configuration - part 3
- libei - a library to support emulated input
- User-specific XKB configuration - part 2
- It's templates all the way down - part 2
- xisxwayland checks for Xwayland ... or not
- Wayland doesn't support $BLAH
- High resolution wheel scrolling in the desktop stack
- It's templates all the way down
- A tale of missing touches
- User-specific XKB configuration - part 1
- libinput's timer offset errors
2019 12
- libinput and tablet pad keys
- libinput and button scrolling locks
- libinput's bus factor is 1
- Unit-testing static functions in C
- Tuhi - an application to support Wacom SmartPad devices
- libinput's new thumb detection code
- libinput and tablet proximity handling
- libinput and the Dell Canvas Totem
- Using hexdump to print binary protocols
- libinput's internal building blocks
- libinput and location-based touch arbitration
- Adding entries to the udev hwdb
2018 22
- High resolution wheel scrolling on Linux v4.21
- Understanding HID report descriptors
- ggkbdd is a generic gaming keyboard daemon
- What's new in libinput 1.12
- libinput's "new" trackpoint acceleration method
- How the 60-evdev.hwdb works
- A Fedora COPR for libinput git master
- libinput now has ReadTheDocs-style documentation
- Why it's not a good idea to handle evdev directly
- meson fails with "ERROR: Native dependency 'foo' not found" - and how to fix it
- X server pointer acceleration analysis - part 5
- libinput and its device quirks files
- Observations on trackpoint input data
- libinput is now on gitlab.freedesktop.org
- libinput-record and libinput-replay - tools to record and replay kernel devices
- X server pointer acceleration analysis - part 4
- X server pointer acceleration analysis - part 3
- X server pointer acceleration analysis - part 2
- X server pointer acceleration analysis - part 1
- GNOME 3.28 uses clickfinger behaviour by default on touchpads
- tuhi - a daemon to support Wacom SmartPad devices
- python-libevdev - a python wrapper for libevdev
2017 14
- What is libwacom? A library to describe graphics tablets
- libinput and the HUION PenTablet devices
- libinput and button debouncing
- libinput and pressure-based palm detection
- libinput 1.8 switching to git-like helper tool naming "libinput sometool"
- xf86-input-wacom 0.34 workaround for pressure range bugs
- xinput list shows a "xwayland-pointer" device but not my real devices and what to do about it
- inputfd - a protocol for direct access to input devices in wayland
- A simple house-moving tip: use tape to mark empty cupboards
- libinput knows about internal and external touchpads
- libinput and lid switch events
- How libinput opens device nodes
- libinput and wheel tilt events
- The definitive guide to synclient
2016 33
- xf86-input-synaptics is not a Synaptics, Inc. driver
- libinput touchpad pointer acceleration analysis
- libinput touchpad tap analysis
- xinput is not a configuration UI
- New udev property: XKB_FIXED_LAYOUT for keyboards that must not change layouts
- The future of xinput, xmodmap, setxkbmap, xsetwacom and other tools under Wayland
- Please don't use pastebins in bugs
- libinput now requires axis resolutions for graphics tablets
- Fedora - retiring xorg-x11-drv-synaptics
- Does $FEATURE work under Wayland?
- libinput beginner project - disabling touchpads on lid close
- libinput touchpad pointer acceleration - laptop model names needed
- libinput and the Lenovo T460 series trackstick
- Understanding evdev
- synaptics pointer acceleration
- Input threads in the X server
- Fedora: Cinnamon, MATE and the broken GNOME touchpad panel
- libinput and the Lenovo T450 and T460 series touchpads
- New xserver driver sort order - evdev < libinput < (synaptics|wacom|...)
- libinput and disable-while-typing
- libinput is done
- Why synclient does not work anymore
- xinput resolves device names and property names
- libinput and graphics tablet mode support
- The difference between uinput and evdev
- libinput and graphics tablet pad support
- Why libinput doesn't have a lot of config options
- libinput now has a touchpad software middle button
- why libinput does not have a configuration storage system
- libinput and graphics tablet support
- libinput and semi-mt touchpads
- Is Wayland ready yet?
- X.Org the project vs X.Org the Foundation
2015 16
- libinput and the Lenovo x220 touchpad - after a firmware update to version 8.1
- libratbag - a library for configurable mice
- A short overview of touchpad devices
- libinput and handling resolution-less touchpads
- Using git-notes for marking test suite successes
- libinput touchpad gestures
- libinput and model-specific configurations
- libinput and the lack of device types
- Extended tap-and-drag in libinput
- Why libinput doesn't support edge scrolling
- libinput scroll sources
- libinput device groups
- Lenovos X1 Carbon 3rd touchpad woes
- Lenovo T440, T540 latest generation touchpad issues
- xf86-input-libinput compatibility with evdev and synaptics
- Providing the physical movement of wheel events in libinput
2014 17
- pointer acceleration in libinput - building a DPI database for mice
- Why the 255 keycode limit in X is a real problem
- Analysing input events with evemu
- Wacom Intuos Creative Stylus 2 and the missing support on Linux
- libinput - a common input stack for Wayland compositors and X.Org drivers
- Stylus behaviour on Microsoft Surface 3 tablets
- pointer acceleration in libinput - a userstudy
- pointer acceleration in libinput - an analysis
- configure fails with "No package 'foo' found" - and how to fix it
- Introducing tellme, a text-to-speech notifier
- T440 touchpads, the story continues
- Viewing the Xorg.log with journalctl
- CyPS/2 Cypress Trackpad and firmware-based button emulation
- Stacking xorg.conf.d snippets
- X.Org synaptics support for the Lenovo T440, T540, X240, Helix, Yoga, X1 Carbon
- Using git - the next level
- Making sense of backtraces with addr2line
2013 15
- Lenovo T440 touchpad button configuration
- Wacom Serial devices and inputattach in a systemd world
- argcheck - assert on steroids
- evtest is dead. long live evemu
- Neues deutsches Tastaturlayout (Changes to the German keyboard layout)
- The X.Org Foundation and the 501(c)(3) status
- libevdev - creating uinput devices
- libevdev - accessing and modifying devices
- libevdev - handling input events
- git-branch-tools: creating patch sets
- CVE-2013-1940: VT-switched servers receive input from hot-plugged devices
- git branch-tools: some helpers for managing git branches
- How to move a cursor
- Proposed XI2.3 addition: XIGetSupportedVersion
- Getting rid of the GNOME "Oh No! Something has gone wrong." dialog
2012 29
- What's new in XI 2.3 - Pointer Barrier events and barrier releases
- Two magic words - "I think"
- X.Org integration test suite - part 2, the registry
- Lenovo x220t Tablet and the broken Wacom 0xE6 tablet
- The X.Org joystick driver (xf86-input-joystick)
- Never use a "Questions?" slide in your presentation
- X.Org integration test suite
- screen configuration for automatic session names
- Daily tmp directory
- elographics touchscreen setup
- XKB SlowKeys
- _XkbErrCode2 macro explanation
- XI 2.1 protocol design issues
- git branch-info
- pkg-config and empty CFLAGS
- Home-made 4WD rooftop awning
- Testing X servers from git
- vimdir for project-specific vim settings
- Copy/paste of code is not ok
- What's new in Synaptics 1.6.0
- Drive-by learning through patch reviews
- Clickpad kernel bugs in 3.3.x and 3.4
- ClickPad support in the synaptics driver
- New layout template
- Chrome's multitask mode - an April fool's 2 years too late?
- ssh and shared connections
- Multitouch in X - Multitouch-touchpads
- XKB breaking grabs - CVE-2012-0064
- Multitouch in X - Touch grab handling
2011 26
- Multitouch in X - Pointer emulation
- Multitouch in X - Getting events
- Multitouch patches posted
- A short update on multitouch
- Improving code readability through temporary variables
- The bugzilla attention span
- Mediawiki for personal notes
- Natural scrolling in the synaptics driver
- What's new in XI 2.1 - smooth scrolling
- What's new in XI 2.1 - raw events
- What's new in XI 2.1 - XI2 defines
- What's new in XI 2.1 - versioning
- Making git reset less dangerous
- Starting a terminal in GNOME3
- Disabling ssh host key checking
- A man page for xkeyboard-config
- Using environment git trees
- Linking kernel and X devices
- Fedora 15 and offlineimap users beware
- GNOME 3.0 middle mouse button emulation
- Custom input device configuration in GNOME
- How to DOS a developer
- evtest is now on freedesktop.org
- Relative and absolute devices in X
- Reviewing patches backwards
- The deficiency argument
2010 23
- A High-Level Overview of Grabs
- How to ignore configuration errors
- XKB mouse emulation removed from default keymap
- Adding Reviewed-by tags to patches
- XDS 2010 videos
- Thoughts on Linux multitouch
- Presentation in Toulouse
- Wacom support in Linux
- XTS census
- The antipattern of hate
- First draft of multitouch protocol spec published
- Input event processing in X
- XTS has a new home
- xmodmap keyboard deconfiguration
- An (incomplete) roundup of touchpad features
- driver configuration option madness
- New synaptics acceleration mechanism
- New evdev middle mouse button emulation defaults
- How to enable tapping (tap-to-click) on your touchpad in GNOME
- GTK merged XI2 support
- Vodafone Australia mobile broadband and Fedora Linux
- Fedora rawhide and X server input configuration
- New configuration world order
2009 35
- On commit messages
- Bisecting your favourite bug.
- The [Xx]([Ff](ree)?[86]|[\.]?[Oo]rg) glossary
- SHM config in synaptics
- evtest-capture and replaying events
- X11R7.5 released - but what is it?
- Bugzilla in Firefox
- XI2 and MPX released!
- Re-designing input methods with XKB
- The case for zsh
- XI2 ready for the final mile
- XI2 Recipes, Part 6
- XI2 recipes, Part 5
- XI2 recipes, Part 4
- XI2 and xlib cookies
- Xlib Cookie Events
- (Not) blaming HAL
- The joy of Xlib
- XI2 Recipes, Part 3
- linux multitouch getting somewhere
- XI2 Recipies, Part 2
- XI2 Recipes, Part 1
- git patches from tarballs
- Button mapping in X
- XI2 merge coming up
- My workflow
- The big fat X.Org supermodule
- git-format-patch for a single commit
- Zapping the server
- Synaptics 1.1 and what your touchpad can do now
- Goodbye VCP/VCK?
- XI2 implementation, take 1
- Tip of the day - wheel emulation
- Generic axis support in evdev
- 4 useful things - try this at home.