mouse-actions icon indicating copy to clipboard operation
mouse-actions copied to clipboard

[Feature Request]: Wacom Tablet Support

Open lexi-the-cute opened this issue 1 year ago • 1 comments

I would like to be able to map my wacom tablet and express keys to the program. I want to be able to push an express key on the tablet or pen to be able to switch between keyboard mode and regular tablet mode so I can "type" by writing characters out on the tablet. I would like to be able to add my own custom characters as well as use latin based characters

lexi-the-cute avatar Sep 01 '23 23:09 lexi-the-cute

Can't seem to get my tablet to be recognized outside of the app. Inside the app I can use it to make gestures just fine. That's all I need to fully replace easystroke in my workflow. Awesome app otherwise

dandy-is-lion avatar Jul 27 '24 02:07 dandy-is-lion

same behaviour for me, also a Wacom tablet, how can I help fix this?, is there anything I can send you that could help?

FerSal-ER avatar Oct 19 '24 17:10 FerSal-ER

I think I have a tablet somewhere, I'm going to try to reproduce... You think the "express key on the tablet or pen" is recognized as a mouse button? You can check it in xev for example, click in the small white window.

jersou avatar Oct 22 '24 19:10 jersou

I ran this while physically making a sigle click (touch the tablet with the tip of the pen and lifting immediately ) in the small square inside the xev window, you'll see that I ran it for only 0.3s but itś still too much so I'll leave the full version at the end and paste a cropped version next:

cropped

$ timeout 0.3s xev
Outer window is 0x6600001, inner window is 0x6600002

ButtonPress event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239738, (46,37), root:(658,344),
    state 0x0, button 1, same_screen YES

ButtonRelease event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239836, (45,36), root:(657,343),
    state 0x100, button 1, same_screen  #YES

full

$ timeout 0.3s xev
Outer window is 0x6600001, inner window is 0x6600002

PropertyNotify event, serial 8, synthetic NO, window 0x6600001,
    atom 0x27 (WM_NAME), time 6239599, state PropertyNewValue

PropertyNotify event, serial 9, synthetic NO, window 0x6600001,
    atom 0x22 (WM_COMMAND), time 6239599, state PropertyNewValue

PropertyNotify event, serial 10, synthetic NO, window 0x6600001,
    atom 0x28 (WM_NORMAL_HINTS), time 6239599, state PropertyNewValue

CreateNotify event, serial 11, synthetic NO, window 0x6600001,
    parent 0x6600001, window 0x6600002, (10,10), width 50, height 50
border_width 4, override NO

PropertyNotify event, serial 14, synthetic NO, window 0x6600001,
    atom 0x199 (WM_PROTOCOLS), time 6239601, state PropertyNewValue

MapNotify event, serial 15, synthetic NO, window 0x6600001,
    event 0x6600001, window 0x6600002, override NO

PropertyNotify event, serial 18, synthetic NO, window 0x6600001,
    atom 0x1a7 (_NET_WM_STATE), time 6239602, state PropertyNewValue

PropertyNotify event, serial 18, synthetic NO, window 0x6600001,
    atom 0x1a1 (_NET_WM_DESKTOP), time 6239602, state PropertyNewValue

ConfigureNotify event, serial 18, synthetic NO, window 0x6600001,
    event 0x6600001, window 0x6600001, (0,0), width 178, height 178,
    border_width 0, above 0x6a00032, override NO

ReparentNotify event, serial 18, synthetic NO, window 0x6600001,
    event 0x6600001, window 0x6600001, parent 0x1702e39,
    (1,26), override NO

ConfigureNotify event, serial 18, synthetic NO, window 0x6600001,
    event 0x6600001, window 0x6600001, (1,26), width 178, height 178,
    border_width 0, above 0x1702e48, override NO

ConfigureNotify event, serial 18, synthetic YES, window 0x6600001,
    event 0x6600001, window 0x6600001, (612,307), width 178, height 178,
    border_width 0, above 0x0, override NO

MapNotify event, serial 18, synthetic NO, window 0x6600001,
    event 0x6600001, window 0x6600001, override NO

VisibilityNotify event, serial 18, synthetic NO, window 0x6600001,
    state VisibilityUnobscured

Expose event, serial 18, synthetic NO, window 0x6600001,
    (0,0), width 178, height 10, count 3

Expose event, serial 18, synthetic NO, window 0x6600001,
    (0,10), width 10, height 58, count 2

Expose event, serial 18, synthetic NO, window 0x6600001,
    (68,10), width 110, height 58, count 1

Expose event, serial 18, synthetic NO, window 0x6600001,
    (0,68), width 178, height 110, count 0

EnterNotify event, serial 18, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239613, (45,42), root:(657,349),
    mode NotifyNormal, detail NotifyVirtual, same_screen YES,
    focus NO, state 0

KeymapNotify event, serial 18, synthetic NO, window 0x0,
    keys:  4294967236 0   0   0   16  0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

PropertyNotify event, serial 18, synthetic NO, window 0x6600001,
    atom 0x1c9 (WM_STATE), time 6239613, state PropertyNewValue

PropertyNotify event, serial 18, synthetic NO, window 0x6600001,
    atom 0x1fa (_NET_WM_ALLOWED_ACTIONS), time 6239613, state PropertyNewValue

PropertyNotify event, serial 18, synthetic NO, window 0x6600001,
    atom 0x1a7 (_NET_WM_STATE), time 6239613, state PropertyNewValue

FocusIn event, serial 18, synthetic NO, window 0x6600001,
    mode NotifyNormal, detail NotifyNonlinear

KeymapNotify event, serial 18, synthetic NO, window 0x0,
    keys:  4294967190 0   0   0   16  0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

PropertyNotify event, serial 18, synthetic NO, window 0x6600001,
    atom 0x19e (_NET_FRAME_EXTENTS), time 6239613, state PropertyNewValue

PropertyNotify event, serial 18, synthetic NO, window 0x6600001,
    atom 0x1a7 (_NET_WM_STATE), time 6239613, state PropertyNewValue

PropertyNotify event, serial 28, synthetic NO, window 0x6600001,
    atom 0x1a7 (_NET_WM_STATE), time 6239616, state PropertyNewValue

MotionNotify event, serial 33, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239631, (45,42), root:(657,349),
    state 0x0, is_hint 0, same_screen YES

KeyRelease event, serial 33, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239666, (45,42), root:(657,349),
    state 0x0, keycode 36 (keysym 0xff0d, Return), same_screen YES,
"   XLookupString gives 1 bytes: (0d) "
    XFilterEvent returns: False

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239709, (45,42), root:(657,349),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239716, (45,42), root:(657,349),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239723, (45,41), root:(657,348),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239730, (46,40), root:(658,347),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239738, (46,37), root:(658,344),
    state 0x0, is_hint 0, same_screen YES

EnterNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x0, time 6239738, (46,37), root:(658,344),
    mode NotifyGrab, detail NotifyInferior, same_screen YES,
    focus YES, state 256

KeymapNotify event, serial 36, synthetic NO, window 0x0,
    keys:  4294967207 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

LeaveNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x0, time 6239738, (46,37), root:(658,344),
    mode NotifyUngrab, detail NotifyInferior, same_screen YES,
    focus YES, state 256

ButtonPress event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239738, (46,37), root:(658,344),
    state 0x0, button 1, same_screen YES

EnterNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x0, time 6239738, (46,37), root:(658,344),
    mode NotifyGrab, detail NotifyInferior, same_screen YES,
    focus YES, state 256

KeymapNotify event, serial 36, synthetic NO, window 0x0,
    keys:  4294967190 0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   
           0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   0   

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239746, (46,37), root:(658,344),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239752, (45,37), root:(657,344),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239760, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239768, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239777, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239797, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239807, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239814, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239819, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239829, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239835, (45,36), root:(657,343),
    state 0x100, is_hint 0, same_screen YES

ButtonRelease event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239836, (45,36), root:(657,343),
    state 0x100, button 1, same_screen YES

LeaveNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x0, time 6239836, (45,36), root:(657,343),
    mode NotifyUngrab, detail NotifyInferior, same_screen YES,
    focus YES, state 0

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239842, (45,36), root:(657,343),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239865, (45,36), root:(657,343),
    state 0x0, is_hint 0, same_screen YES

MotionNotify event, serial 36, synthetic NO, window 0x6600001,
    root 0x783, subw 0x6600002, time 6239873, (45,36), root:(657,343),
    state 0x0, is_hint 0, same_screen YES

FerSal-ER avatar Oct 23 '24 04:10 FerSal-ER

if there's anything else I can do let me know, I found a way to install EasyStrokes but I think your project is way more powerful and would like to try it

FerSal-ER avatar Jan 07 '25 01:01 FerSal-ER