-
-
Notifications
You must be signed in to change notification settings - Fork 39.4k
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
[core][new feature]Pointing device modes #21426
base: develop
Are you sure you want to change the base?
Conversation
is the boards that are going over the memory limit expected? |
On NixOS with
|
Let me know if there is anything I can do to help the process along |
cf16784
to
77ca7e6
Compare
Okay so a bit of a major update to how pointing mode maps are working. Pointing mode maps now use Documentation has not been fully updated yet. Still needs proper testing but I have been able to compile it without issue. |
1bca1f0
to
be07d56
Compare
Okay should be cleaned up now. Sorry for anyone who picked it up while it was a bit of a mess for a bit there. |
Okay there was a bit more than documentation to fix up, but should be working as intended now. |
Argh another keyboard is going oversize again is this expected? (the code should not add much size without enabling things unless I missed something) |
I have some feedback: First off, thank you very much, alabastard, this is great! I tested the changes and have been running them on my productive keyboard for a combined 35 hours without trouble, though I did not try pointing mode maps yet. However, I found one small issue (or two tiny related ones, depending on how you look at it). The down and left directions of caret scrolling, volume, and history modes are swapped, and the order of the parameters for the relevant I've submitted a PR to the source fork that hopes to address this minor issue. |
You are very welcome! I am just happy when someone uses my code :)
This is great! glad it is working out there in the wild and that the docs were for the most part pretty clear/thorough!
Thanks for bringing this to my attention! |
ac90e3f
to
42591c6
Compare
ec7519d
to
44dc1d5
Compare
Okay just pushed a conflict resolution patch due to the dip switch changes. |
"playing" with this PRs code, to see if&how a dpad feature would fit in here. while doing so, some refactoring/typo fixes/.../suggestions came together = Alabastard#2 |
Thanks for this I see there is a decent amount of cleanup of my code included there but I'm wary about the changes to the cirque code as that seems a bit out of scope. I'll try and add in the cleanup right away and I'll have a think about the other changes for the moment. |
|
Relabelled for q2 pending further work by alabastard. I've tested what's in place so far and works well but appreciate the feedback in the chain above. |
Thank you for moving this to q2 sorry I've been slow haven't had as much time as I would like to work on this each day but progress is being made. Unfortunately the changes will require major updates to any code that uses this. A lot of function/define names have changed and many functions have been removed as they are no longer necessary. This will hopefully simplify interaction with pointing modes and improve functionality as well. I will push an update as soon as I can compile and test. |
Thank you for your contribution! |
Okay finally testing the latest changes and updating the documentation should push the changes really soon
Currently Requested features that were not included are:
|
Apologies for the delay should have the update this soon |
Okay I'm back from my health crisis/the dead to finish this up I have resolved the conflicts just need to move keycode stuff appropriately and then I should be good to push the update. |
@Alabastard welcome back and good to hear that you are doing better. Leave a comment when you have updated the PR - I intent to give it a review once the merge conflicts are resolved. |
Still working on this should have update soon. |
|
||
# Pointing Device Modes :id=pointing-device-modes | ||
|
||
Inspired by the work of previous trackball users that added features such as drag scroll, caret scroll, and sniping modes to their keyboards, this framework allows for easy setup and inclusion of different pointing device modes that when active will change the behaviour of a pointing device by taking it's x/y outputs and changing them into something else such as h/v for drag scrolling, key presses such as arrow keys for caret scrolling, and even just adjusting the x/y values before output. When a pointing device mode is active it accumulates x and y outputs from a pointing device and stores it into internal x & y values, halting normal mouse x and y output (_modes can re-enable and/or modify mouse output_), these internally stored x and y values are then divided by a defined divisor resulting the modified output (_key taps, h/v, modified mouse x/y etc._). The dividing factors can be used to control sensitivity in each mode as adjusting cpi may not always be desired/possible. |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
As a minor spelling/grammar nitpick, the fourth line should be ..."by taking its x/y"... rather than "it's".
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Thanks for this I have re written the intro a bit and cleaned up the grammar hopefully.
Okay I am actually pretty happy with the state of the code right now just going through the docs to adjust to the changes while I am testing the code. Will push an update as soon as docs are updated. Currently there are still two requested features missing:
|
I'd vote for getting it merged as is, the extra features can always be sorted later and those will be a smaller (easier) pull request to review. |
Okay as soon as I finish updating the docs I’ll push the refactor (as that
simplifies things and makes those additional features much smaller updates)
as it radically changes a few things on how to use the the modes.
Sorry for all the delays and slow progress I only am getting a small amount
of time per week to work on this
…On Sun, Nov 10, 2024 at 5:00 PM Dasky ***@***.***> wrote:
Currently there are still two requested features missing:
I'd vote for getting it merged as is, the extra features can always be
sorted later and those will be a smaller (easier) pull request to review.
—
Reply to this email directly, view it on GitHub
<#21426 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AMY4JLFEBKCXDJJE5LJ4HPDZ77XRTAVCNFSM6AAAAAAZ3GVIYGVHI2DSMVQWIX3LMV43OSLTON2WKQ3PNVWWK3TUHMZDINRWHE4TKOJVGY>
.
You are receiving this because you were mentioned.Message ID:
***@***.***>
|
Okay everyone this PR is finally back!
I have re based to current develop and tested that it does in fact compile let me know if there are any issues and I will address them as soon as I am able (also let me know if keycodes need to be bumped up another version I put it in 0.0.4 for now).
Also as it has been a while let me know if upcoming changes to pointing devices would require changes here.
Look in the feature_pointing_device.md doc under the new section:
Pointing Device Modes
for how this feature worksDescription
Types of Changes
Issues Fixed or Closed by This PR
Checklist