Native Xinput support for krita shortcuts to use game pads as hotkey remotes

Hi, I’ve recently seen some artists on twitter using remotes/ gamepads as hotkey remotes for clip studio paint.
Here’s a video to give you an example:

Now i have been trying to do that with Krita and some of 8bitdo’s game pads.
Mainly the “8bitdo SF30 pro” and also the “8bitdo Zero 2”.
Problem is though, Krita won’t accept any of the Xinput signals from the game pad.
My current fix is to use a button remapping tool called AntiMicro, which lets me remap the buttons as keyboard keys as seen in the following video (not the remote/ game pad i use but it gets the point across):

And this has been a huge productivity increase for me while at the same time increasing portability and ease of use(much more convenient when I’m working on my Microsoft surface on the go)!
Also since I am not a capable ten key system user, personally i find navigating the buttons of a game pad blindly MUCH easier than a keyboard due to the fact that the buttons, triggers, D-pad and sticks on a game pad have more distinct shapes to them when compared to most keyboard keys (haptic feedback).

Now this is all nice and dandy and works well enough BUT there are a few limitations with this approach:

  1. AntiMicro only lets you map a single key to each button so mapping macros like CTRL+Z to a single key is impossible to my knowledge

  2. Configuring the game pad to work with Krita can be a hassle because of the reason above and the fact that it is overlapping with keyboard inputs, when using AntiMicro as a hotfix.
    This leads to some default shortcuts, who need both CTRL and ALT/ SHIFT keys, ending up using up way too many buttons on the game pad, even though they make perfect sense when using the keyboard.
    So instead you end up looking for keys that aren’t already bound to an existing shortcut just to use them with the game pad exclusively.
    This is a hassle and makes things needlessly complicated.

This is where native XINPUT support would come in:
With Xinput being accepted by Krita for shortcuts, you wouldn’t have to deal with conflicting existing shortcuts, so configuring alternative shortcuts becomes a breeze and the limited amount of buttons could be used more effectively.

I would really love to see this become a thing in Krita!


If you’re keen on ‘full-custom’, you can unbind any keyboard key from whatever it does and then bind it to whatever you want. That way you can have all your pad keys each performing a separate function.

Yeah, but I don’t really want to nuke all the existing shortcuts just to have no conflicting ones with my game pad/ remote. Especially since i am nowhere near of knowing/ understanding all the functions that are/ will be relevant to my work flow in Krita, so i don’t want to tear down walls that aren’t broken.

You don’t have to nuke anything. If you go to the bottom of the window you’ll see different selectable shortcut schemes and you can save and load your own shortcut schemes. Hence you could have a ‘special’ scheme particularly for game pad use and then switch back to a standard scheme, as desired or required.
Flexible and powerful customisation facilities are there if you want to explore them in the future.

1 Like

Having separate profiles would work but then switching back and forth isn’t exactly seamless either when you have to go into the settings menu to do so, unless there’s also a shortcut for switching between those profiles.
Furthermore this still keeps me from having additional buttons at my disposal and still ends up either cluttering the keyboard with additional shortcuts bound to the keyboard next to existing ones or bashing in established structures. It seems like you think I want to either use the keyboard OR the game pad when i really want to be able to use them more or less simultaneously without much hassle between the two.
Again it’s not like i can’t achieve what I want right now with antimicro for the most part except for actual macros but this is about making this process more STREAMLINED without an annoying little prompt popping in my face every time I try to bind a command to one of the game pad buttons because surprise surprise that shortcut is already used for something else.
Just because you can somehow get it to work doesn’t mean it’s easy or streamlined to get the wanted results, those are two different pairs of shoes.

It would be nice to be able to start a new shortcuts profile from a clean state :slight_smile:

Precisely and with xinput keys not being bound to anything by default you can just define them as alternative invocations for exising commands without having to reassign anything. Just assign the commands you want to the game pad buttons to your liking as alternative input methods and bam! You’re done! No prompt no hassle no worries about using up additional keyboard keys.