-
-
Notifications
You must be signed in to change notification settings - Fork 7
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
Some insights after testing #5
Comments
Thank you so much for the feedback!
We can try something. I've put this together quickly, you can add it at the end of the config file: normal-mode.to.pause-mode=+]
pause-mode.to.normal-mode=-]
idle-mode.to.temp-normal-mode=#leftalt -leftalt +leftalt
temp-normal-mode.to.idle-mode=-leftalt
temp-normal-mode.indicator=normal-mode.indicator
temp-normal-mode.mouse=normal-mode.mouse
temp-normal-mode.wheel=normal-mode.wheel
temp-normal-mode.start-move=normal-mode.start-move
temp-normal-mode.stop-move=normal-mode.stop-move
temp-normal-mode.press=normal-mode.press
temp-normal-mode.release=normal-mode.release
temp-normal-mode.toggle=normal-mode.toggle
temp-normal-mode.start-wheel=normal-mode.start-wheel
temp-normal-mode.stop-wheel=normal-mode.stop-wheel
temp-normal-mode.move-to-grid-center=normal-mode.move-to-grid-center The first part is for the temporary deactivation when pressing ]. The second part is for a temporary activation (double left alt). As it is currently, the temporary activation is not going to work for grid and hint. Would that be useful as well?
Good point. I'm open to suggestions if you have any.
Is that a functionality you saw in another program? Do you have an example so I can take a look at it? Thanks again for the feedback! |
Thanks, the temporary activation/deactivation it works great, it will be a great improvement:) As for me I generally don't use the grid functiion, I use hints only from these two, but f.ex. Mouseable had neither of these two functions, so adding the temporary keys, even if now not encompassing all the features makes your app surpass Mouseable in my eyes. From the point of view of my method of working, in which I use the middle click very rarely, for Click And Disable I would choose something like the ' key for example, on the right side of the middle click key. Some people use it more, as I heared, so a second option for me would be maybe the \ key. On my keyboard it has some distance from the rest of the navigation keys, it's placed on the right side of '. But in general for keys switching the program permanently, that is more radical in their actions, I would also like to use some more peripherial keys like ` or - or + or 5. 5 seems nice, because it has the "protection" of two R and T empty keys, for example which makes the chance of accidental switching off minimal. Here's a program that uses the "cursor gravity" feature. SteadyMouse - Hand Tremor Mouse Accessibility Software At the same time I must say I never used it, as for me it's costly, but if you want to have only an idea of how it could work like, on their page you can find also an older version on SteadyMouse, with many bugs, but for free. I didn't install it, because after reading the potential bugs list, encompassing the cursor gravity feature too, I deemed it not useful for my purpose. At the same time the gravity feature is only partially disfunctional, at least that's what they are claiming, so it could be a good preview for you. Hope this helps! |
Update:
Instead of it I would propose to introduce a following system: **f for hints in the mainscreen 1 for hints on the first/main screen That makes the number of the combinations necessary same as on the main displays and at the same time eliminates the problem of mistaking displays, making the work on all the work on all displays equally fast. Personally I never saw somebody work on more than 4 screens at once, but who knows, maybe some elite megaminds do:) |
Thanks for looking into multi-screen hints. My usage of multi-screen hints is limited because I'm currently using a single screen. I'm glad other people can give me feedback on this.
Sounds like a bug. Is the bug still there after you restart the app?
I really like your suggestion. Currently, there is no command to map a key to jump to a specific screen, there is only the concept of "currently active screen". But it may be worth trying to add that functionality. However, right now we could change the config file to achieve something like this:
c + J + bb instead of c + j + f + bb. Not as concise as 1 + bb, but still. Here is what it could look like in the config file: # Assumes that the "slow" key alias is defined as leftshift.
screen-selection-mode.to.screen-selection-then-hint-mode=+slow
screen-selection-then-hint-mode.to.screen-selection-mode=-slow
screen-selection-then-hint-mode.hint=screen-selection-mode.hint
screen-selection-then-hint-mode.to.idle-mode=+exit
screen-selection-then-hint-mode.hint.mode-after-selection=hint2-1-mode If having to press leftshift is annoying, we could also do something like x + j + bb instead of c + J + bb. |
I just had an idea for implementing your suggestion (pressing 1 shows hints on screen 1, pressing 2 shows hints on screen 2, etc.) with a small code change. normal-mode.hint=screen-selection-mode.hint
normal-mode.hint.visible=false
normal-mode.hint.selection-keys=1 2 3 4
normal-mode.hint.mode-after-selection=hint1-mode I had to change the code to handle this new configuration setting ( |
Glad to see a new version, I will install it in minutes :) then I will send feedback. |
Okay, so I've installed the new version first by downloading the .exe file only. |
Ok, I'll need to get a second screen to try this out. hint1-mode.hint.grid-max-row-count=26
hint1-mode.hint.grid-max-column-count=26
hint1-mode.hint.grid-cell-width=72
hint1-mode.hint.grid-cell-height=40 Here we are saying that we want a hint grid made of (at most) 26 columns and 26 rows. We are also defining the size of the cells of this grid to be 72x40 pixels (one cell contains one hint). This means that the total width of the grid will be 26 * 72 = 1,872 pixels. I've chosen these numbers (26 columns, 26 rows, and cells of size 72x40) because it makes the grid fit nicely in regular 1920x1080 screens (and it makes the hints use the whole A-Z alphabet: row 1 is AA to ZA, row 2 is AB to ZB, ..., row 26 is AZ to ZZ).
I've tried to reproduce the problem, but couldn't. Here is what I did:
I'm attaching the configuration file that includes those modifications just in case: Let me know if it still doesn't work. |
Hi, I'll try to change the number of hint cells once more. Maybe now it'll work. An another thing I encountered today was problems with Windows 10. On my main computer I have Windows 11, and Mousemaster works fine on it, but when I tried to use it on my older laptop, with Windows 10, it doesn't work. Idk if Mousemaster was thought to be compatible with this older Windows version. |
Sure, a screenshot and/or photo will definitely help.
It's working on my Windows 10, let's try to see what the problem is on yours. Right now, your mousemaster command line window closes as soon as it starts. It may be showing a useful error message but unfortunately the window is closed as soon as the program stops. Open a Windows command line prompt, then make it move to the directory where mousemaster.exe is by typing:
Then, type this to launch the app:
This should start the app and the window won't close immediately. I hope that there is an error message that you can share with me here. |
Thanks. Could you also share a screenshot of hints on the other two screens? If you can, also share the hint mode configuration if you have changed it in any way (number of rows/columns, cell width/height, etc.).
You are right to question the reasons behind having the second hint pass this way. I have actually not spent a lot of time thinking about it. I have spent time optimizing my personal configuration of mousemaster, which is completely different than the one you're using (neo-mousekeys.properties). Currently, in neo-mousekeys.properties, we have: hint2-2-mode.hint.selection-keys=h j k l ; a s d f g q w e r t y u i o p z x c v b I have taken this from warpd which is the main project from which I got inspiration for implementing hints. hint2-2-mode.hint.selection-keys=q w e r t y u i o p a s d f g h j k l ; Is this better? |
Thanks for the screenshots. May I ask if you have a display scale set for the leftmost screen? It looks like the font of the date and time in the task bar of this screen is bigger than on the other screens, which is why I'm thinking that you may have a display scale of like 150% for this screen? If yes, then I'll need to look at the part that handles display scales, there may be a bug there.
This looks exactly like the problem someone else had. I have rebuilt mousemaster.exe using the compatibility build option discussed in that thread. Hopefully it will fix your issue too. See the release page for v1.0.40 which contains the fix (you just need to download mousemaster.exe).
Yes, I think I have the same problem. The Windows start menu is displayed on top of the hints. I don't know if it's possible to fix that.
That's strange. Sounds like a bug. If you're able to reproduce that problem, let me know how you did it.
Good to hear! If you don't mind, could you share your configuration file with the changes you made once you've finalized it? Thank you! |
Hi there, so, about the Windows 10 error - it's fixed, now it works! Big thanks :) About the screen scale - indeed, I changed it a bit, due to it's distance, without that I wouldn't be able to see everything there. For that reason too now I'm simply not using the hints on the leftmost screen - I switch to WASD when there. About the file, I doubt I can call it finalized, but at the same time I don't know if I'll do any more changes, as for now I'm simply thinking about most common obstacles in using this system and for now the keyboard mapping I have seems to work pretty fine, no casual switching off anymore, nice second hinting, nice selective screen hinting. mousemaster - Copy.txt Uhm... now that I think about it I only noticed two strange keys, that is V B that have the same fuction of scrolling faster, but only when other scrolling keys are pressed too. They are exactly the same and in the same place, I don't know if this is particularly useful, but on the other hand it doesn't provoke problems… but maybe, if we already have two keys for it, it would be more reasonable to change their function into one-keyed, so make B to scroll fast up and V to scroll fast down. Thanks to that there would be no need to press additional M or , key. On the other hand I don't know how it works with I O, because for now I don't see any change in the scrolling with or without V or B in all four directions - maybe that's also because I have set relatively fast scrolling by default on Windows. About other features or problems, the only frequent problem I have for now is about forgetting when the program is on or not switching it off because of, for example, hitting the wrong key, and trying to write when it's on. |
Hi @DobretaAndrzejewic, sorry for the late reply. I've been trying to fix the problem with hints on your smaller screen that has a display scale of 175%.
with: int scaledDpi = (int) (screen.dpi() * screen.scale()); I'm hoping that
I did not make the V, B mapping but I remember that the person who did told me that they mapped V, B to the same function because it is useful for Alice keyboards: I don't have such a keyboard myself so I cannot tell if having V, B mapped to the same function is good or not.
That is indeed an annoying problem when you have multiple screens. I'm not sure what would be the best solution yet. In my config, I have a timeout which disables mousemaster after 5 seconds of inactivity. Would that be useful for you?
|
Hi pentocle, About the keyboard - well, I have not such keyboard neither, so it's difficult for me to say… Well, about the switching on and off problem first I think that the authomatic switch off wouldn't be of a much help for me, because, for example during situations like filling some fields with text or navigating through internet I have to switch between writing and not pretty often. Yes, I was thinking about the distinctive sounds solution. I was also considering some all screen visuals, and it could be indeed the most useful of features if we are talking about that kind of problems - for example a thin red, semitranslucent frame at the displays' edges that appears on all the screeens would be hardly unnoticeable, but at the same time it would be necessary to make it an optional feature in the config file, like activity_frame = yes as this feature could be less useful for ppl like streamers or gamers, it could mess with the game graphics, for example. Edit: I'm also slowly gathering screenshots of cases when the hints had some problems in working |
… multiple screens with different display scales
Hi there, Here's me after about 6 months of testing and improvised changes. Main changes:
Other remarks:
|
Thanks for sharing your feedback @DobretaAndrzejewic. This is very useful. You're one of the first users of mousemaster!
Do you know how I can reproduce this problem?
This can happen if you try to use mousemaster on an app that is running in admin while mousemaster is not running in admin mode. You may be interested in what I'm working on for the next version: a way to remap keys. It can be used to trigger commands (e.g. alt + f4) when you press a key. I think it has potential to create more complex things. For example, in this video the Windows Zoom is automatically triggered when the second hint pass is shown: 2024-12-21-K085Vyexe0_1.mp4 |
In the latest version (58), this is fixed: mousemaster will always appear on top of everything, including the Start menu (you will need to run mousemaster as administrator). |
Hi:) I'm not sure how to reproduce the bugs I said you about. For now they occurred quite often, but I saw no particular pattern, I will try to pay more attention to the things you mentioned and we will see. |
Hello, I am still testing the new version and it's nice for now, some good improvements were made. At the same time I think Mousemaster could have a customizable set of shortcuts it is insensible to. For example, when I'm using mousemaster usually I'm using my keyboard more. That means that I am using a lot of shortcuts in navigation in File Explorer, browser and not only. In my configuration there are no ctrl + key combinations. At the same time, when in browser I use useful shortcuts like ctrl+T to open a new tab it does nothing when the Mousemaster is on and I need to switch it off everytime. Same with the ctrl+1 or 2 or 3 shortcut, for changing the tabs. Mousemaster is thinking I want to jump to a display and have the letter selection grid there. |
Hello!
That's not normal. If ctrl is not used in the configuration of mousemaster then you should not need to switch it off. Which version are you using? Can you share your configuration file and I'll take a look? |
Hello, of course:) here's the file. I had to modify it a bit, due to the 1 2 3 display feature, apparently absent in the official version. |
Thanks. I've had a look, and the reason why ctrl is giving you trouble is because the configuration was explicitly allowing ctrl to be pressed while clicking (to be able to do ctrl-clicks). But we can take it out by replacing these lines: # Register leftctrl to allow ctrl-clicking.
normal-mode.press.left=_{none | leftctrl} +leftbutton | _{none | leftctrl} +clickthendisable
normal-mode.press.right=_{none | leftctrl} +rightbutton
normal-mode.toggle.left=_{none | leftctrl} +toggleleft
normal-mode.toggle.right=_{none | leftctrl} +toggleright with: normal-mode.press.left=+leftbutton | +clickthendisable
normal-mode.press.right=+rightbutton
normal-mode.toggle.left=+toggleleft
normal-mode.toggle.right=+toggleright Here is your config with these changes applied: |
Hi! Edit: Oh, I see also that the ctrl+Q isn't working, I mean as it being the equivalent of ctrl+LClick. |
We can try to add this line: normal-mode.mode-after-unhandled-key-press=idle-mode This will switch it off as soon as you press a key that is not in the config file, such as ctrl. Let me know if that works. |
Uhmm, I tried it, but I think it has one major flaw - every missclick has a risk of needing to restart it again. Also, I don't remember which program it was, maybe a previous Mousemaster version, but I remember a feature, that made it possible to enter the idle mode only for the time of a specific key being pressed. Something like that could be a better solution, that is everytime I press ctrl for example, Mousemaster goes to idle mode until I release it. Thanks to that every shortcut including the ctrl key would work flawlessly. Maybe it could also work as you said, with all the keys absent in the config file 🤔 |
That's true. If you want to switch it off only when certain keys (like ctrl) are pressed, then remove normal-mode.to.idle-mode=+exit | -clickthendisable | _{capslock} to: # Pressing leftctrl will switch to idle-mode. You can add other keys like leftalt if you want to.
normal-mode.to.idle-mode=+exit | -clickthendisable | _{capslock} | _{leftctrl} |
Ah, I think that expressed myself in an unclear way. I mean a feature, where the idle mode is active as long, as a certain key is pressed, and then Mousemaster returns to normal mode. CapsLock pressed: idle mode on Ctrl Pressed: idle mode on |
Oh sorry, I misunderstood! You can try this: normal-mode.to.temp-idle-mode=_{leftctrl}
temp-idle-mode.to.normal-mode=^{leftctrl}
# Stop ongoing mouse movement/button clicking when entering temp-idle-mode.
temp-idle-mode.stop-commands-from-previous-mode=true Here, a new mode called temp-idle-mode is created. It is empty and has no commands, so it is like the idle-mode. From normal-mode, if you press leftctrl, it will switch to temp-idle-mode. Then, once you release leftctrl, it will switch back to normal-mode. |
Thanks:) I was not sure where to paste it, so frist I got an error, but after some tries I managed to make it right. I can even add some more keys working like that:) splendid! Edit: do you have any particular features you want me to focus on during using Mousemaster? |
Hi, thank you, I will implement it - but at the same time I have bad news. Apparently, after the changes with ctrl key introduced, the Mousemaster doesn't show the letter hint grid anymore when pressing ctrl+1, for example, which is good; but at the same time the ctrl+Q doesn't work too. The ctrl+1 2 3 changing tab shortcut is working partially only. |
I've tried it and couldn't reproduce the bug (I press ctrl + 1, it goes to the first tab, I release 1 while ctrl still pressed and press 2, it goes to the second tab). |
Ah, true, I did download new properties file, but not the new .exe file. Now the ctlr + 1 2 3 truly works, only the ctrl+Q not. I will test it further, including the zoom thing, thanks 👍 |
Sounds good. I just tried your config again with ctrl + Q and I did not see a problem with. Let me know how it goes. |
Hi,
so, after one day of using the tool I have some thoughts, hope they will be useful.
Thank you for developing this and wishing you further success!
The text was updated successfully, but these errors were encountered: