I added a "controlled crossing" feature #329
mgfarmer
started this conversation in
Show and tell
Replies: 2 comments 2 replies
-
Hello, I did implement your idea in Implement-crossing-resistance I think it's something very helpful, thank you for the work done. I did not implement ctrl key, do you think it's really needed ? For now its only working in straight mode too and the unit is pixels (I think I will change it to mm to be consistent) |
Beta Was this translation helpful? Give feedback.
0 replies
-
Great. I did not explore your branches! My bad.
I do like the CTRL Key trigger. I actually use it the most. It has a
slightly more natural feel. I did the CTRL Key code back in December, and
the "resistance" code just last week. So I'm very used to the CTRL key now.
…-Kevin
On Wed, Apr 10, 2024 at 2:36 PM Mathieu GRENET ***@***.***> wrote:
Hello, I did implement your idea in Implement-crossing-resistance
<https://github.com/mgth/LittleBigMouse/tree/Implement-crossing-resistance>
I think it's something very helpful, thank you for the work done. I did not
implement ctrl key, do you think it's really needed ? For now its only
working in straight mode too and the unit is pixels (I think I will change
it to mm to be consistent)
—
Reply to this email directly, view it on GitHub
<#329 (comment)>,
or unsubscribe
<https://github.com/notifications/unsubscribe-auth/AUUGZBEVDBILXRDIUT2S6HTY4WWFZAVCNFSM6AAAAABF7BH3GCVHI2DSMVQWIX3LMV43SRDJONRXK43TNFXW4Q3PNVWWK3TUHM4TANZWGYZDM>
.
You are receiving this because you authored the thread.Message ID:
***@***.***>
|
Beta Was this translation helpful? Give feedback.
2 replies
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
-
Code is on my fork (I try to keep this fork synced to upstream)
Controlled Crossing
The implementation of this feature is fully functional, but not complete. See the limitations below. There is no UI for it.
An installer is available here.
This feature adds the ability to "control" crossing horizontal and/or vertical edges. You can configure this feature to prevent crossing the edges unless a control condition is met. Why would you want this feature? Well, not everyone will. I've been using this feature since December '23, and can't imagine working without it now. I'll describe my configuration and why this is so exceptional (you may, of course, disagree).
I have 4 monitors. Three of them are side-by-side and the fourth is mounted above the center row monitor. The top monitor is primarily used for monitoring team chats and email. I don't go there often. The main issue with having a vertically stacked monitor like this is that without a controlled crossing it is too easy to move the mouse between the upper and lower monitor when trying to interact with any UI near the top of the bottom monitor (like main menus in full screen apps, or the RDP control bar which require holding the mouse at the very top pixel of the screen to get it to drop), and any UI near the bottom of the upper monitor (like a taskbar). This is because I, like probably most people, have spent years simply pushing the mouse to the top or bottom quickly and expecting the mouse to just stop there when needing to get to these UI elements. With stacked monitors you will just push the mouse way beyond the elements you are aiming for and then have to drag the mouse back again, slowly zeroing in on the element, bouncing between monitors.
With the "controlled crossing" feature you can tell LBM to not make the transition from one monitor to the other unless one of two conditions is met:
Both modes can be enabled at the same time.
Limitations
If none of these environment variables are defined, LBM behaves as it always has.
The 4 environment variables are described below (via copy/paste from the code comments).
LBM_CC_HORZ_EDGE
LBM_CC_VERT_EDGE
/*
*/
LBM_CC_CTRL_KEY
/*
*/
LBM_CC_THRESHOLD
If you enable controlled crossing for either horizontal or vertical, but do not
enable either crossing mode, then the code will disable the edges, otherwise
you would not be able to cross the edge at all.
My hope is that at least two people find this useful (I count as the first person).
Beta Was this translation helpful? Give feedback.
All reactions