Age | Commit message (Collapse) | Author |
|
Here, the "logic" module has all the stuff for building one's own
graphical user interface.
The "api" module has stuff used by other trackers.
While at it, each of "api", "logic", and "compat" need their own export
headers. This is because of preprocessor symbol clashes.
This is all because a change in the "gui"-only dependency required a
relink of all the trackers, protocols, and flters. It takes too long
when building in the release configuration. With the split, only the
"gui" module gets rebuilt. Since it has close to no static dependencies,
it's fast enough.
|
|
|
|
Previous disallowed binding an already-bound key on Unix since Qxt
doesn't pass through bound keys unlike the Windows implementation.
Refactor some common code.
The Windows implementation isn't even compile-tested.
|
|
|
|
The following keybindings are now implemented:
- restart tracking. if not started, starts.
- toggle (keep position) while key held
- zero (keep zero) while key held
The latter two options only work for Windows as libqxt doesn't support
them.
Closes #291
|
|
Refresh joylist when new listener arrives, and when the joy singleton
just gets created. Enumerating joys all the time causes high CPU usage
for some of the users.
Issue: #279
Backtrace-by: @exulant
Reported-by: @aka2k
|
|
|
|
|
|
|
|
We can't depend on std::vector's address of array subscript to remain
constant, duh.
|
|
|
|
There's no need to have definitions in header for non-template classes
|
|
The worker class is win32-only. Don't guard there, consumers are
expected only to include it on _WIN32.
For the same reason don't provide a stub for the keybinding worker.
|
|
|
|
|
|
DirectInput dies when two LPDIRECTINPUT8 handles are obtained. Implement
a singleton worker providing keypress events.
|
|
It also slept with lock held. Good riddance.
|
|
|
|
Some buttons like the X65 mode switch are held all the time. Prevent
them from hogging all the keybindings.
Issue: #118
|
|
Win32 only
Issue: #118
|
|
|