The Breeze theme SpinBox control is very compact:
It doesn't take up much space, but its inline buttons to increase and decrease the value are so small that they require very precise mousing to hit, which is slow (and borderline impossible for people with poor mousing skills). Clicking on them is particularly irritating with a low-quality laptop touchpad, with which small moves are often difficult. And it's flat-out impossible for touch; the click targets are simply too small. I personally often find myself just clicking in the text field area and manually typing a number or using the arrow keys to adjust the value; the controls are just too small for me to quickly and comfortably use on my laptop.
I'd like to consider a more user-friendly control that takes up a bit more space. Something like this:
Expected advantages of this approach:
- Much larger click targets; faster interaction to click on a single button
- Faster interaction to click on one button after the other when the control is not very wide: Fitt's law says that the acquisition time is proportional to both the distance and size, so by hugely increasing the size we would offset the increased distance
- Usable with a touchscreen
Expected disadvantages:
- When clients use an inappropriate layout that stretches the control to span a very wide space (e.g. System Settings > Desktop Behavior > Virtual Desktops), interaction to click on one button after the other will be slower due to increased distance between controls. Will need to fix clients to alleviate this effect
- Need to simultaneously change it in Breeze as well as QQC2 theme to avoid an awkward difference between the two