-
-
Notifications
You must be signed in to change notification settings - Fork 1.3k
Touch
Mixxx 1.11 don't works very well on touch screen devices. This was reported in some bugs like
- #1152572 MultiTouch compatibility and features
- #1217738 rotary dial control via touchscreen is wrong
- #1217733 right-click solution or replacement needed for touchscreens
These bug reports are containing many details and further lings, but are cluttered due to the post style. So here now brief overview.
All three OS's are offering a native touch to mouse converter. It is required to be able to use legacy application which are not able to receive original touch events. The right click is generated by some kind gesture. It is only a single pointing device emulated to achieve maximum compatibility. Unfortunately these solutions are optimized for common standard widgets. Mixxx on the other side does not use standard widgets. The Mixxx widgets are designed to behave as close possible like hardware Midi controls. The main difference here is that Mixxx buttons are emitting without delay on the push event while normal GUI buttons are emitting on release event. This way we have not time to detect a right click gesture without delaying the left click.
Here an overview to the different native right click solutions:
Windows 8
- Right click = Releasing after long push
Ubuntu
- Right click = long push
- Right click = Two finger click
iOs
- Right click = long push
Since the Mixxx buttons behaves like Midi buttons, a natural solution for the right click problem is to introduce a shift button like we can find on many DJ controllers as well.
In https://github.com/mixxxdj/mixxx/pull/76 was a new Control Object introduced which can be connected to a GUI Shift Button, a keyboard key or a controller button. Once this is = 1.0, the connected button is pressed, all touch tabs will be interpreted as right clicks.
This allows us to issue right and left clicks without additional latency to detect a gesture.
Mixxx is a free and open-source DJ software.
Manual
Hardware Compatibility
Reporting Bugs
Getting Involved
Contribution Guidelines
Coding Guidelines
Using Git
Developer Guide
Creating Skins
Contributing Mappings
Mixxx Controls
MIDI Scripting
Components JS
HID Scripting