Mouse custom keys are useless by default. I use my mouse custom key as a middle click by remapping it from xinput. I was about to write an seperated application for it, then though like it may be good to have it on Mouse KCM. I think it should be really simple, flexible and useful. There are lots of possibilities about this which xinput already handles so we can use it to have an efficient solution.
**Requirements**
1. Device should be selected (we can show the names of the devices)
2. Target button should be selected (technically its just an id)
3. Target button's new functionality should be selected (this is an id too)
4. Each mouse button has a unique id
5. Button ids can be changed according to devices so its problem to making an assumption like "id 1 is always the left button". Thats why I put a "Show clicked button id" to my mockup. For example, one of my mouse has "go next page" button at the left side, while other has it at the right side.
Mockup 1
{F8181839}