Bug 374336 - Enable resettting tablet mapping in Krita after disabling or enabling a secondary display
Summary: Enable resettting tablet mapping in Krita after disabling or enabling a secon...
Status: RESOLVED FIXED
Alias: None
Product: krita
Classification: Applications
Component: Tablets (tablet issues are only very rarely bugs in Krita!) (show other bugs)
Version: 3.1.0
Platform: Microsoft Windows Microsoft Windows
: NOR wishlist
Target Milestone: ---
Assignee: Krita Bugs
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2016-12-30 13:59 UTC by Neviril
Modified: 2019-04-17 18:42 UTC (History)
4 users (show)

See Also:
Latest Commit:
Version Fixed In:


Attachments

Note You need to log in before you can comment on or make changes to this bug.
Description Neviril 2016-12-30 13:59:00 UTC
This issue pertains to recent versions of Krita on Windows 10 64bit, using a Wacom Intuos 5 L pen tablet.

When a secondary display is enabled or disabled *after Krita has been started*, the pen mapping inside the program gets messed up (= there is no more 1:1 correspondence between the tablet and the cursor position on screen), only to return back to normal either when:

1) The previous display configuration is restored;
2) Krita is restarted.

As this only occurs with Krita and not other programs in the same configuration/OS I suspect that this issue has to do with the way pen tablet management inside the program handles display mapping.


According to a Krita developer on IRC I consulted with before submitting this bug, when the display configuration changes the [pen tablet] driver sends a special event to all the applications and they should remap their input accordingly. Krita used to process it but probably something changed after porting it to Qt5.
Comment 1 Halla Rempt 2016-12-30 14:00:56 UTC
We never supported this on Windows; on Linux the drivers are completely different (and much more dependable), so it might have worked there. We also don't support plugging in a tablet after Krita has started on Windows.
Comment 2 Neviril 2016-12-30 14:41:11 UTC
I understand that this issue may be limited to specific user scenarios and may or may not be directly fixed within the program itself. But as I mentioned on IRC, perhaps if there was a way (e.g. with a key shortcut) to manually reset inside the program the pen tablet mapping, that would be fine as a workaround to avoid closing and restarting Krita whenever a new display is enabled or disabled in the OS.

I do not know if there would be performance issues by making this automatically occur when pen proximity goes off/on.
Comment 3 wolthera 2017-07-19 19:55:03 UTC
someone at blenderartists.org has been doing some trial and error on this and made some notes, so I'm linking them here:

https://blenderartists.org/forum/showthread.php?400040-Krita-3-0-is-out!&p=3219183&viewfull=1#post3219183
Comment 4 Alvin Wong 2017-08-27 12:13:29 UTC
Just FYI, it so happens that the new experimental Windows Ink support in the ANGLE test build (https://krita.org/en/item/angle-and-windows-ink-a-new-test-version-of-krita-for-windows/) does handle display resolution changes properly. It works because the API and handling code is completely different.

In certain cases (especially with Wacom hardware) WinTab is still preferred and the current Windows Ink support also doesn't work with certain features on certain tablets (e.g. second side button) due to API limitations.
Comment 5 Alvin Wong 2017-09-21 09:59:40 UTC
Using Windows Ink through Pointer Input messages on Windows 8 or above is supported in 3.3.0-rc.1 (though not enabled by default): https://krita.org/en/item/krita-3-3-0-first-release-candidate/

This issue should be nonexistent when using Pointer Input support.

Meanwhile, Krita's WinTab support does still suffer from this because Krita doesn't simply take the screen mapping from WinTab directly - it allows setting a custom screen mapping (which tbh might be more confusing than helpful).
Comment 6 Dmitry Kazakov 2019-04-17 18:42:37 UTC
Hi, Neviril!

I have just added automatic display resolution update in the Krita 4.2 PreAlpha. There is a special dialog in Preferences->Tablet->Wintab->Advanced that can let you configure tablet mapping without restarting Krita!

Please test the nightly builds from here! :)
https://binary-factory.kde.org/job/Krita_Nightly_Windows_Build/

If you still have a problem in the nightly builds, please reopen the bug the bug so we could see it :)