[ANNOUNCE] xinput_calibrator 0.8.0
Peter Hutterer
peter.hutterer at who-t.net
Mon Jul 29 06:28:10 UTC 2024
This is the first release of xinput_calibrator after the move from
https://github.com/tias/xinput_calibrator to our gitlab instance. The
aim of this move is so this little tool, still in use here and there,
can see some of the benefits of group maintainership and doesn't go
completely stale. Don't expect active maintainership or new features
being added, we're just trying to keep this on life support.
The git shortlog below is for the ~14 years of patches since the 0.7.5
release, the last 10 of which the project was sitting idle.
Alan Coopersmith (1):
calibrator.cpp: include <climits> for PATH_MAX if needed
Alexey Kuznetsov (2):
gui_gtkmm: in a multi-head setup, allow calibrating one monitor only
Add gtkmm support for no window manager environment
Andreas Müller (8):
Add parameter --output-filename and store in output_filename
CalibratorEvdev: do write calibration results if --output-filename was set
CalibratorXorgPrint: do write calibration results if --output-filename was set
CalibratorUsbtouchscreen: overridde default file name when setting --output-filename
Make all Calibrator* destructors virtual to fix warning
Set up buffer size for max line length only once in calibrator.hh
show the name of the device on screen
Handle sysfs name for --device parameter
Antoine Hue (10):
Software engineering to avoid #include "XXX.cpp": + file headers + correct includes
Completing file reorganization with correct headers
Fixing .gitignore
Some refactoring of the Calibrator object
refactor to static Calibrator::verbose
Evdev::set_calibration and set_swapxy cleanups
Various remaining cleanups from Antoine
Refactor structs XYinfo, AxisInfo and clicked
inversion support for evdev and xorgprint
Fixing xinput_do_set_prop into cleaner xinput_do_set_int_prop Also fixing property issue on invert axes
Christian Gmeiner (6):
Use timerfd instead of signals on Linux
the usage protected is wrong - fix it
x11: convert bool methods
evdev: xinput_do_set_int_prop(..) does return a bool
pass function parameter 'new_axys' by reference
fix memory leak
David Ludlow (2):
change quotes in the .desktop file
add Changelog to EXTRA_DIST in makefile
Felipe Lerena (1):
adding the "no-timeout" parameter to avoid the calibrator to timeout and exit
Florian Echtler (1):
added support for --geometry parameter (needed, e.g., on Nvidia Twinview)
Goffredo Baroncelli (1):
Correct screen size detection
Jeff Lasslett (1):
Prevent timeout exit when --no-timeout is used
Khem Raj (1):
calibrator.hh: Include <string> to get std::string
Koen Kooi (1):
xinput_calibrator_pointercal.sh: specify output type since 'auto' doesn't always pick 'xinput'
Marco Cavallini (1):
Load font fixed when 9x15 fails in GuiCalibratorX11
Mario Domenech Goulart (1):
calibratorXorgPrint.cpp: fix miny and maxx printing order for UDEV and HAL
Martin Jansa (1):
add script to calibrate only once and store calibration data for later
Mikhail Novosyolov (1):
Translate desktop file into Russian
Peter Hutterer (29):
Don't claim we support udev configuration.
Print out an xorg.conf.d snippet for the configuration.
Update autogen.sh to the current one used by the xorg projects
configure.ac: run autoupdate to update deprecated notations
Fix autotools error for HAVE_X11_RANDR
Don't install the tester binary
Add a config.h for VERSION
Add a simple CI to do a basic build test
CI: remove some libinput copy/paste leftovers
CI: disable the commit message check for now
gui: fix indentation to prevent a compiler warning
Fix compiler warnings
Add support for building with meson
Changelog: fix erroneous link
man: mention --output-filename
README: move to markdown and update the links to point to fdo
Add MatchDriver "evdev" to the generated xorg.conf
main: fix the indentation for the opt parsing
main: remove a superfluous condition
Print a warning if we're running against Xwayland
autotools: add all the header files to the various SOURCES
autotools: add meson files to EXTRA_DIST
autotools: remove superfluous EXTRA_DIST entries
CI: add distcheck to the default build template
Drop HAL configuration
configure.ac: enable subdir-objects
Build xz tarballs instead of bzip2
configure.ac: stop using AM_MAINTAINER_MODE
Release v0.8.0
Petr Štetiar (2):
switch to autotools based build system
- make it compile with strict flags
Philipp Hagemeister (2):
Add include for pause()
Add generated src/tester to gitignore
Plamen Kolev (2):
convert leftover tabs to spaces
take rotation into account when calculating display size
Thierry Reding (1):
Fix dist* targets.
Tias Guns (127):
add --fake option
use strdup() due to pointer scope autofree [Thanks Sam Lin]
clarify that the license is the pure MIT/X11 license,
Rewrite: split the one-huge-file into clean components
minor fixes
make the touch points more visuals: draw a cross through them
press any key to quit
make the help_text boxed and 4 lines
minor cleanups
Delete original one-huge-file,
New X11 based gui,
release v0.5.0 + update docs
Fix bug when calling evdev:do_set_prop twice
make finish() and finish_data() return a boolean
use exceptions to detect if a calibrator is applicable or not
start methods from xinput with xinput_, give credit to Peter
add -v option, prints debug messages
more standard directory layout, enhanced autotools, gitignore
Add a manpage
Check that XInput >= 1.5 in evdev calibrator
rename driver to device as we are dealing with devices in the first place, and the drivers of the device only in the second place
check that the device is a XI_TOUCHSCREEN, some verbose checks on the number of axes too
add --list option, lists calibratable devices
add support for --device option, selects a specific device
xorg print: clean up output and added udev rule
set evdev calibration to default when none is apparently set (fixes sleep/resume quirk)
swap_xy in dynamic evdev: unswap if already swapped
stricter command line argument parsing
click coordinates are/must be integers
strdup is not ansi C, add my_strdup function
strict compile flags are good, but turning warnings into errors can screw users
rename driver to device part 2: in calibrators
add support for specific device id for evdev (necessary when 2 devices have the same name)
evdev: print ways to make config permanent (easier when evdev >= 2.3.0)
move get_precalib.sh to scripts/ and rename xinput_calibrator_get_hal_calibration.sh
add .desktop file in scripts/
release v0.6.0
rudimentary mis-click GUI for x11
mis-click GUI support for GTKMM
detect double-clicks on all previous points
mis-click detection: more robust
Revert "check that the device is a XI_TOUCHSCREEN, some verbose checks on the number of axes too"
Device detection: must be in absolute mode
configure.ac: require libtool
Release v0.6.1
change configure script: only build one GUI and name it
update manpage and readme to single binary
appearently in dutch its kalibreren with a 'k'
install .desktop file in (/usr/share)/applications
make sure the gnome/xfce4-terminal stays open when using the .desktop
add icon (svg and xpm)
A COPYING license file that explicits the MIT/X11 license, and the CC
more distcheck makefile fixes: scripts/ dir
manpage: include detailed instructions on how to make the calibration permanent
mention pointercal example script for mobile devices in the manpage
evdev print: make it more like the manpage
support common setting of thresholds for doubleclick and misclick detection
add --misclick <nr of pixels> as runtime option
thresholds mean 'at most X pixels' (non-strict comparison)
add mis-click option to manpage and add 'troubleshooting' section describing the meaning of repeated mis-click errors
Release v0.7.0
gui_x11: xrandr support
gui's: detect when screen size changed
Make: add --as-needed ld flag
give 'fake' modus a sensible start configuration, makes calibration output more verifiable
more fine-grained dependency check, runs on older systems too
Spelling fixes (thanks Paul Wise)
add swapaxes option to evdev conf snippet, fix some styling
xorg.conf.d snippet for standard xorg drivers too
replace udev rule by xorg.conf.d snippet for standard xorg drivers too
swap_xy, better document the difference between detecting the need to swap it, and the new swap_xy value
remove xorg.conf mention (superseded by xorg.conf.d snippet, or HAL on
clean up explanation of making calibration permanent for standard xorg drivers
clean up explanation of making calibration permanent for evdev
sysfs name detection, checks whether device name is sysfs name
use detected sysfs name in output when possible
dynamically detect xorg.conf.d support
lang: 'change to' instead of 'change by'
put output of xorg.conf.d/hal/xinput in separate functions
add --output-type option to select output type (default: auto, automatically selects best option)
add hal output for evdev (not used by auto, not recommended)
manpage: description cleanups
manpage: add --output-type option
manpage: remove mentions of udev configuration
manpage: simplify 'usage' section: do not list the different configs (would be too many options) + minor changes to troubleshoot section
manpage: remove mention of pointercal script, xorg.conf.d etc are now preferred
manpage: switch troubleshooting and examples order
icon: update mentioned license of the hand from human-icon-theme
manpage: use dist_man_MANS instead of man_MANS and EXTRA_DIST (suggested by Paul Wise)
make: move icon/desktop installation into scripts/Makefile.am (suggested by Paul Wise)
Release v0.7.5
gtkmm: fullscreen both with and without window manager
remove offset part of --geometry
add manpage and gui_gtkmm support for --geometry
Whitespace cleanups (were mangled in next patches)
Touch points, change to constant NUM_POINTS in enum
color management: make enum static
Various comment cleanups from tonio (leftovers file reorg. patch)
XYinfo/AxisInfo: copy constructors and invert/swap function
new_axys now contains the axys value to write
XYinfo: add print method
Tester: test calibration routines and make assumptions explicit
Add (xf86)scaleAxis code
driver emulation implementation
Different old_axis orientations and parameters
show maxdiff during testing
Some more tests, kind-of
Create CalibratorTesterInterface
EvdevTester with evdev 2.7.0 emulation code
Tester: run standard tester and evdev tester
calibrator: in finish code, correct new_axys to new_axis (no code change)
calib calculation: calculate average of clicks first
calib calculation: move min/max correction before transformation
calib calculation: use floats
calib calculation: rewrite and document num_block scaling
calib: make our scaleAxis function use floats to avoid rounding errors
calib calculation: rewrite and document transformation to 'raw' values
two minor API cleanups
Rewrite and simplify swapping
Copy Calibrator::finish() literally to CalibratorEvdev::finish()
Fix evdev calibration when invertX/Y is set
CalibratorEvdev: remove TODO about evdev 2.3.2
remove invertX/Y from evdev config outputting
Extra comment on unistd.h include
--no-timeout for X11 gui
document --no-timeout in man (and shorten descr in stdout)
Document /usr/share/X11/xorg.conf.d as location for conf.d snippet
markuspg (7):
Utilize nullptr instead of 0 and NULL
Utilize final and override specifiers
Constexpr whatever possible on first view
Utilize default member initializers where useful
Refactor tester program
Utilize initializer lists in tester program
Use range based for and drop printf
tias (3):
thresholds for doubleclick and misclick detection as attribute of calibrator
preliminary misclick detection
misclick detection in calibrator, now in GUI's
git tag: v0.8.0
https://xorg.freedesktop.org/archive/individual/app/xinput_calibrator-0.8.0.tar.gz
SHA256: dae3b8ce3aaba6f0b1a6262156c6352642bec5661be071312da58cbe4b8174c7 xinput_calibrator-0.8.0.tar.gz
SHA512: 616d5404e968ac6a2b0c223aa1fd69cc7bc7a1fefc6bd7a67ff29b8d339ef5865b87e7d4002ec63a6e555c1aba7aae0c826265b47b3229a1e02a880aea3db100 xinput_calibrator-0.8.0.tar.gz
PGP: https://xorg.freedesktop.org/archive/individual/app/xinput_calibrator-0.8.0.tar.gz.sig
https://xorg.freedesktop.org/archive/individual/app/xinput_calibrator-0.8.0.tar.xz
SHA256: 0508bf9705c0945f746b8c81bfc8d583a347dd067b58fa76b1aed4225e4b8b40 xinput_calibrator-0.8.0.tar.xz
SHA512: 38a06c1c181fb4e7c2a9fe6c9df47536065213bb177e74fb864b2aa62f7851c7bbc825771fc53725b6705d2c7b42ca01ae3c084b3229961aeee1c76bb86c6754 xinput_calibrator-0.8.0.tar.xz
PGP: https://xorg.freedesktop.org/archive/individual/app/xinput_calibrator-0.8.0.tar.xz.sig
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 195 bytes
Desc: not available
URL: <https://lists.x.org/archives/xorg/attachments/20240729/79ad1348/attachment.sig>
More information about the xorg
mailing list