http://bugs.winehq.org/show_bug.cgi?id=30893
Bug #: 30893 Summary: No pressure in gimp 2.8 windows version with evdev tablet Product: Wine Version: 1.5.5 Platform: x86-64 OS/Version: Linux Status: UNCONFIRMED Severity: normal Priority: P2 Component: wintab32 AssignedTo: wine-bugs@winehq.org ReportedBy: viktoria.s@freemail.hu Classification: Unclassified
Created attachment 40482 --> http://bugs.winehq.org/attachment.cgi?id=40482 Output of gimp 2.8 windows version with WINEDEBUG=+wintab32
I got an Genius Mousepen i608X tablet. It works only with the evdev driver. (I am using xubuntu 64 bit with a patched kernel (which includes the driver of this tablet on a VM.)) I have got no pressure in gimp 2.8 windows version. (Gimp 2.8 linux version works perfectly on the same operating system.)
In the attachment log you can see that it reports as a tablet: trace:wintab32:X11DRV_LoadTabletInfo Device 10: [id 12|name Genius MousePen i608X|type TABLET|num_classes 2|use 4] but at the end wine writes: warn:wintab32:X11DRV_LoadTabletInfo Did not find a valid stylus, unable to determine system context parameters. Wintab is disabled.
Which is wrong. I attached the output of xinput list --long (xinput.txt), so you can see clearly which device reports what. (I guess I should add that attachment separately because the bug can contain only one attachment.)
One thing to note: this device comes with a mouse too. And the kernel gives identical name to both devices. (That is the reason why you can fin 2 mousepens in the logs. The one with the id=12 is the pen, because this one is reporting the pressure, the other one is the mouse.)
In my opinion if you modify the wine source/dlls/winex11.drv/wintab.c according to this: in line 622 you write this: if (! is_tablet_cursor(target->name, device_type) && ! devices[loop].type == XInternAtom(data->display, XI_TABLET, False)) in line 641 you write this: if (is_stylus(target->name, device_type) || devices[loop].type == XInternAtom(data->display, XI_TABLET, False)) my tablet will be recognised.
Unfortunately I was not able to test if this is going to work or not, because I was not able to build wine properly so far. (Gimp 2.8 windows version was always crashed with the one I have built, but the tablet was recognised as tablet though.)
You can find a list of tablets which are using the evdev driver here: http://sourceforge.net/apps/mediawiki/digimend/index.php?title=Tablet_suppor...
If you have any questions please let me know.
http://bugs.winehq.org/show_bug.cgi?id=30893
--- Comment #1 from Viktoria viktoria.s@freemail.hu 2012-06-11 02:39:11 CDT --- Created attachment 40483 --> http://bugs.winehq.org/attachment.cgi?id=40483 Output of xinput list --long
http://bugs.winehq.org/show_bug.cgi?id=30893
Viktoria viktoria.s@freemail.hu changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |viktoria.s@freemail.hu
http://bugs.winehq.org/show_bug.cgi?id=30893
Austin English austinenglish@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- Keywords| |download, hardware, source
http://bugs.winehq.org/show_bug.cgi?id=30893
--- Comment #2 from Viktoria viktoria.s@freemail.hu 2012-06-12 10:02:14 CDT --- Created attachment 40515 --> http://bugs.winehq.org/attachment.cgi?id=40515 Artrage and Pixie output with my modified wine
http://bugs.winehq.org/show_bug.cgi?id=30893
--- Comment #3 from Viktoria viktoria.s@freemail.hu 2012-06-12 10:03:08 CDT --- Created attachment 40516 --> http://bugs.winehq.org/attachment.cgi?id=40516 Artrage ghost lines
http://bugs.winehq.org/show_bug.cgi?id=30893
--- Comment #4 from Viktoria viktoria.s@freemail.hu 2012-06-12 10:03:46 CDT --- Created attachment 40517 --> http://bugs.winehq.org/attachment.cgi?id=40517 Pixia fisrt stroke full pressure
http://bugs.winehq.org/show_bug.cgi?id=30893
--- Comment #5 from Viktoria viktoria.s@freemail.hu 2012-06-12 10:05:57 CDT --- Created attachment 40518 --> http://bugs.winehq.org/attachment.cgi?id=40518 My wintab.c
Hi!
I have compiled a wine and I could test it with some drawing applications. The Gimp 2.8 windows version crashed even in this build, but Artrage and Pixia not.
So my initial idea worked, but I had to code a bit more to have pressure in these applications. As I mentioned Genius MousePen i608X is a multiple input device, both the mouse and the pen got identical names. And in the wintab.c in X11DRV_AttachEventQueueToTablet function allways the mouse got identified (because thet is the one which was last in the xinput list..). So I corrected it: in line 1001 I wrote: if (strcmp(devices[loop].name, cursorNameA) == 0 && gSysCursor[cur_loop].PHYSID == devices[loop].id) In this way I got the correct wine cursor and X device mapping and now I got pressure from the pen under wine :) (This modification might be ban, I guess it is not a coincidence the you have used the name instead of the device id for pairing but in case of multiple input devices only the X device id can identify the devices or maybe name+type together.)
(I have attached my wintab.c it contains some additional traces too.)
So as I mentioned in this way I got pressure in wine, but there are some problems with the applications: Artrage I have downloaded it from here: http://www2.ambientdesign.com/files/install_artrage_2.6.0_starter.exe. And in this application I have got "ghost lines" (see the screenshot in one of the attachments). The is reminds me of a bug in Gimp 2.6.11 linux version. You can read more about it here: http://ubuntuforums.org/showpost.php?p=11691071&postcount=32. (May be the way it was fixed in Gimp can give you some idea how you can fix it in wine.)
Pixia I have downloaded it from here: http://www.ne.jp/asahi/mighty/knight/pix478ee.exe In this application the first stoke is always got maximum pressure (see the screenshot in one of the attachments). Which reminds me of a Blender bug here: http://projects.blender.org/tracker/index.php?func=detail&aid=20667&... (May be the way it was/will be fixed in Blender can give you some idea how you can fix it in wine.)
http://bugs.winehq.org/show_bug.cgi?id=30893
Adam ottenskjold@gmail.com changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |ottenskjold@gmail.com
--- Comment #6 from Adam ottenskjold@gmail.com 2013-02-16 03:11:51 CST --- This is a late request, but could you please specify in more detail exactly what you did to get pen pressure working?
I have a multiple input tablet as well, and would like to use some programs but am, unfortunately, new and unfamiliar with wine.
Thanks in advance.
https://bugs.winehq.org/show_bug.cgi?id=30893
Pikyun chaillerlucien@gmx.fr changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |chaillerlucien@gmx.fr
https://bugs.winehq.org/show_bug.cgi?id=30893
Neko-san nekoNexus@protonmail.ch changed:
What |Removed |Added ---------------------------------------------------------------------------- CC| |nekoNexus@protonmail.ch