László Monda
|
23459e3791
|
Don't make horizontal scrolling and vertical scrolling affect each other.
|
2017-12-14 01:30:06 +01:00 |
|
László Monda
|
2f7f7b1cd2
|
Make scrolling immediately react to keypresses regardless of the previous internal scroll state.
|
2017-12-07 04:44:45 +01:00 |
|
László Monda
|
2eb25ce05c
|
Make UpdateUsbReports() not exit prematurely even if a previously active USB interface is not polled anymore by the host. Tweak the Timer API to not set the current time automatically.
|
2017-12-07 03:24:53 +01:00 |
|
László Monda
|
6780c8177c
|
Expose per-interface count values for debugging purposes via USB.
|
2017-12-04 17:38:31 +01:00 |
|
László Monda
|
f76780ec48
|
Make the parser parse mouse properties, LED brightness values, and double tap switch layer timeout. Rename pointer config properties.
|
2017-11-30 18:20:00 +01:00 |
|
László Monda
|
b7e73b7b38
|
Clean up the debug lines of processMouseAction()
|
2017-11-28 22:45:51 +01:00 |
|
László Monda
|
7318175ce7
|
Tweak scroll kinetic properties.
|
2017-11-28 22:39:37 +01:00 |
|
László Monda
|
420078449d
|
Finish the fine-tuning of default mouse movement kinetic settings.
|
2017-11-28 20:12:01 +01:00 |
|
László Monda
|
dda3799877
|
Don't make the pointer jump when accelerating from zero while the decelerate key is pressed.
|
2017-11-28 19:10:13 +01:00 |
|
László Monda
|
712b87182a
|
Double timer interval that wasn't right for an unknown reason. Adjust mouse kinetic values accordingly. Reprioritize interrupts to make mouse pointer movement as smooth as possible.
|
2017-11-28 18:52:39 +01:00 |
|
László Monda
|
46126e1e78
|
Tweak kinetic mouse values further. Temporarily maximize / minimize the acceleratedSpeed / deceleratedSpeed values for testing purposes.
|
2017-11-28 17:25:46 +01:00 |
|
László Monda
|
2ac9ca5d67
|
Make the initialSpeed, acceleration, deceleratedSpeed, baseSpeed, and acceleratedSpeed kinetic properties uint8_t and multiply them by intMultiplier to provide a fixed set of steps to choose from.
|
2017-11-28 03:23:09 +01:00 |
|
László Monda
|
729e0be0ad
|
Make scrolling utilize mouse_kinetic_state_t, just like mouse movements. Fix scrolling issue by making distance float. Add new debug functions for ints and float.
|
2017-11-28 02:01:26 +01:00 |
|
László Monda
|
0867132ba3
|
Adjust the distance divisor from 10 to 1000 and other kinetic values accordingly.
|
2017-11-27 02:09:45 +01:00 |
|
László Monda
|
1b9273a5e5
|
Make processMouseKineticState() work with float x,y offsets to accumulate fractions.
|
2017-11-27 01:24:03 +01:00 |
|
László Monda
|
ebbd74407d
|
Extract code into processMouseKineticState() and add mouse_kinetic_state_t
|
2017-11-26 21:35:50 +01:00 |
|
László Monda
|
5df6220ab7
|
Slightly reorder mouse movement related variables.
|
2017-11-26 02:32:53 +01:00 |
|
László Monda
|
3d0993998c
|
Add double tap switch layer timeout.
|
2017-11-26 01:05:36 +01:00 |
|
László Monda
|
071be7e815
|
Implement "hold and double tap" layer switch mode and temporarily treat every hold mode keys this way.
|
2017-11-26 00:23:50 +01:00 |
|
László Monda
|
bb7faaa799
|
Make non-accelerated movements gradually accelerate from the start. Make all other movements and speed transitions immediate.
|
2017-11-24 22:49:39 +01:00 |
|
László Monda
|
368c724e6a
|
Fix the stuck state of the decelerate key that triggered once it was pressed.
|
2017-11-24 17:39:45 +01:00 |
|
László Monda
|
210ef31f27
|
Implement mouse movement acceleration and deceleration.
|
2017-11-24 13:00:05 +01:00 |
|
László Monda
|
0cb3c7e0ad
|
Implement horizontal scrolling.
|
2017-11-24 01:00:02 +01:00 |
|
László Monda
|
b68e8a736e
|
Make processMouseAction() handle acceleration and deceleration, even though I can't yet trigger these actions for some reason.
|
2017-11-23 01:54:54 +01:00 |
|
László Monda
|
4d211f0fe1
|
Reset mouseMoveCurrentSpeed when the mouse movement keys are no longer pressed, even if a mouse button key stays pressed due to drag and drop or selection purposes.
|
2017-11-22 02:34:37 +01:00 |
|
László Monda
|
8429ee2b71
|
Implement mouse acceleration.
|
2017-11-21 21:15:12 +01:00 |
|
László Monda
|
4bbc49f4ca
|
Clean up processMouseAction() by using floats instead of divisor values. Move MouseSpeed_* into mouse_speed_action_t
|
2017-11-21 19:01:59 +01:00 |
|
László Monda
|
d2ef63184b
|
Move updateUsbReports() from main.c to usb_report_updater.c and delete main.h
|
2017-11-17 01:21:30 +01:00 |
|
László Monda
|
a0afdcf476
|
Implement key debouncer.
|
2017-11-14 22:54:53 +01:00 |
|
László Monda
|
332f2a69fa
|
Set up the timer properly and introduce CurrentTime.
|
2017-11-12 17:33:23 +01:00 |
|
László Monda
|
c06b06ed1b
|
Make the secondary role work properly when a layer is set and when pressing the non-dual role key for long right after keeping the dual role key pressed.
|
2017-11-10 00:41:33 +01:00 |
|
László Monda
|
402697c0a3
|
Don't call applyKeyAction() when a secondary role is triggered because it'd output the scancode of the pressed key which is not the right thing when the secondary role is layer switching.
|
2017-11-09 22:26:44 +01:00 |
|
László Monda
|
4fa2304e4b
|
Suppress pressed keys upon layer switcher key release.
|
2017-11-07 02:21:36 +01:00 |
|
László Monda
|
f6beeecec1
|
Make local variables static.
|
2017-11-07 01:37:46 +01:00 |
|
László Monda
|
e3d4eb50db
|
Make secondary role layer switching work.
|
2017-11-07 00:30:40 +01:00 |
|
László Monda
|
31fa1a0d5e
|
Don't make secondary role stuck when holding a layer switcher even after releasing the dual role key.
|
2017-11-07 00:00:02 +01:00 |
|
László Monda
|
693315222f
|
Handle secondary role modifiers.
|
2017-11-06 18:11:05 +01:00 |
|
László Monda
|
c2a1a94349
|
Switch keymap only upon keypress.
|
2017-11-03 22:39:18 +01:00 |
|
László Monda
|
35b8f0084b
|
Don't put a zero scancode into ActiveUsbBasicKeyboardReport->scancodes[basicScancodeIndex++]
|
2017-11-03 22:32:10 +01:00 |
|
László Monda
|
0688c1bdfc
|
Rename keymaps.[ch] to keymap.[ch]
|
2017-11-03 19:01:56 +01:00 |
|
László Monda
|
4072a0ea33
|
Rename Keymap_Switch() to SwitchKeymap()
|
2017-11-03 18:59:58 +01:00 |
|
László Monda
|
e169627cde
|
Move updateLayerStates() and getActiveLayer() into the newly created layer.c
|
2017-11-03 18:53:17 +01:00 |
|
László Monda
|
aeb325a09f
|
Being static variables, lowercamelcase HeldLayers and PressedLayers.
|
2017-11-03 18:43:26 +01:00 |
|
László Monda
|
0df7879358
|
Get rid of the unused PreviousToggledLayer.
|
2017-11-03 18:42:04 +01:00 |
|
László Monda
|
bbbecb8f87
|
Handle layer toggle actions.
|
2017-11-03 18:29:17 +01:00 |
|
László Monda
|
05bbd28877
|
Maintain the states of previous key states.
|
2017-11-03 13:43:16 +01:00 |
|
László Monda
|
b18cb651ce
|
Leave the active layer active even if another layer switcher key gets pressed while holding it.
|
2017-11-03 12:49:55 +01:00 |
|
László Monda
|
88fac5c1ff
|
Rename key_matrix_instance.[ch] to right_key_matrix.[ch]
|
2017-11-03 03:30:14 +01:00 |
|
László Monda
|
fe2e611bb1
|
Update KeyStates[SlotId_RightKeyboardHalf] within usb_report_updater.c instead of main.c
|
2017-11-03 03:22:56 +01:00 |
|
László Monda
|
a0a162ae9e
|
Extend key states to include not only the current state but also the previous state and suppressed state.
|
2017-11-03 03:17:46 +01:00 |
|