mirror of
https://github.com/storytold/photocraft.git
synced 2026-11-07 02:41:47 +00:00
* Add an opt-in WinTab backend for pen pressure on Windows Windows Ink stays the default. Preferences > Tools > Pen Tablet has a Tablet input dropdown (Windows Ink (default) / WinTab). WinTab opens a WinTab 1.4 system context on PhotoCraft's window and polls pressure and the eraser end (tilt on devices that report orientation axes; rotation only with a pen and driver that report twist) into the stylus feed. The row says to turn Windows Ink off in the tablet's software utility; the choice applies at next launch. - crates/tablet: Windows-only wintab/wintab-sys backend. Devices with orientation axes use the orientation packet; pressure-only devices open a packet without it and report neutral tilt. Leaving is the driver's hardware proximity message (WT_PROXIMITY) and the packet's out-of-context status, with a long fallback for drivers that never report either. Overlap priority follows window focus, and the message hook requests a frame for each WinTab message so pressure-only strokes update without cursor movement. - apps/photocraft: install the backend when the preference is on; poll it at the start of each frame; the installed wake repaints the UI. - ui-egui: TabletPollFn service; the Windows-only Pen Tablet row with the Tablet input dropdown and the note. - engine: tools.tabletInput (windowsInk/winTab), default windowsInk. - docs: hardware-parity WinTab gap entry, qualifying tilt to orientation axes and rotation to twist-reporting pens. Tested locally on a Wacom tablet with Windows Ink off: pressure, tilt and the eraser end reach the brush (rotation where the pen reports twist); the default path is unchanged. * WinTab: a message that finds the state borrowed is skipped, not a panic in the hook Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * WinTab: rustfmt Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> * Scorecard: count the Tablet input setting Co-Authored-By: Claude Opus 5.5 <noreply@anthropic.com> --------- Co-authored-by: FredApps <153173854+FredApps@users.noreply.github.com> Co-authored-by: Claude Opus 5.5 <noreply@anthropic.com>