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
[Mouse Jump] - new feature - #23216 #23566
[Mouse Jump] - new feature - #23216 #23566
Conversation
This comment has been minimized.
This comment has been minimized.
@mikeclayton |
@htcfreek - oh, that's not very promising :-S. I'll try to get the build working in this PR asap, and then maybe you could test it again in the PowerToys version? I'll ping you when it's ready to test... |
…kage allow-listing
… build-powertoys-steps.yml
@htcfreek - the latest commit in this PR builds successfully and passes all tests now. Are you able to test again and see if MouseJump works inside PowerToys or if you still get the white panel? There's a pane on the "Mouse utils" tab in the PowerToys settings screen where you can enable the feature and set the activation shortcut - on my machine I've bound that combination to a spare button in my mouse software (Logitec SetPoint) so I can activate it without letting go of the mouse, which makes it a bit more seamless. You'll need to run it from the source repo as I've not added the feature to the installer yet... This will be the first real test outside of "works on my machine", so give me a yell if / when there's any issues... |
Hi @mikeclayton , I'm on Windows 10 by the way. Not sure if that might be the issue. |
@mikeclayton , I think I know what's happening: This is my usual configuration of 3 screens: If I make my main monitor the leftmost one, it will show correctly: I just shifted one of the screens a bit up and we can see that the issue with the white screen seems to be about the coordinates where we're copying the screen contents to the bitmap. They likely need to be shifted because the top left coordinate of the the virtual screen can be negative and not 0,0. Hope this helps. |
On another note, just noticed that the background application running is staying running even after PowerToys has exited. |
@jaimecbernardo |
@jaimecbernardo, @htcfreek - apologies - the white screen was a school-boy error...
should have been
It was working fine for me because both values were 0, but obviously not so much if they're different... |
And it wasn't closing because I'd cut&pasted from my poc that sat in the system tray, so it was doing a I've fixed both issues and pushed them into this PR... |
@jaimecbernardo, @htcfreek - I think I've fixed the two reported issues, if you're able to try again? I'm struggling to update the installer, but it would be good to know if the core feature is working for you now... |
@mikeclayton |
@htcfreek - no worries. Note the feature should still work if there's only one monitor though - if you've got a single ultra-wide on a desktop / tower pc for example it would still be useful. And even you've only got a small virtual screen it might not be much practical use, but it should still show the pop-up thumbnail correctly and move the mouse :-). |
@mikeclayton And it doesn't works with VirtualBox and enabled Mouse pointer integration. |
@htcfreak - I'll need some time to take a look. I'll install VirtualBox and test that as well and I'll revert once I've got an update - thanks for the continued feedback... |
@mikeclayton |
Hi @mikeclayton , Gave it another try. It doesn't seem to be working when the screens have different dpis. In my case, I changed dpi value for the rightmost screen (not a primary one). |
Hi @mikeclayton , |
Alright, feel like this one is pretty wrapped up now as a MVP. |
@jaimecbernardo - fab, yeah I was just thinking it would be better to leave any improvement work for the next iteration of the tool... |
I've pushed a commit with the suggested changes. Thank you for the reviews! |
Merged it in to be released on the next release. |
* microsoft#23216 - initial MouseJump commit * microsoft#23216 - Mouse Jump - fix spelling, removing Interop folder * microsoft#23216 - Mouse Jump - removed orphaned project guids from PowerToys.sln * microsoft#23216 - Mouse Jump - removed orphaned project guids from PowerToys.sln * microsoft#23216 - Mouse Jump - switch MS Logger to NLog for nuget package allow-listing * microsoft#23216 added MouseJumpUI.UnitTests.dll to "MS Tests" step in build-powertoys-steps.yml * [MouseJump] fixed screenshot coords (x & y were transposed) (microsoft#23216) * [MouseJump] close form rather than hide on deactivate (microsoft#23216) * [MouseJump] added UI dll for signing (microsoft#23216) * [MouseJump] close form rather than hide on deactivate (microsoft#23216) * [MouseJump] removed redundant line * [MouseJump] configure dpi awareness, add NLog.config (microsoft#23216) * [MouseJump] fix spellchecker errors (microsoft#23216) * [MouseJump] fixing comment style warning (microsoft#23216) * [MouseJump] simplified dpi config (microsoft#23216) * [MouseJump] fixed edge case issue with moving cursor (microsoft#23216) * [MouseJump] fixed typo (microsoft#23216) * [MouseJump] added attribution (microsoft#23216) * [Mouse Jump] fix attribution link and spelling (microsoft#23216) * Add MouseJump to installer * Fix centralized version control * Add Quick Access enable/disable entry * Fix analyzer error in GPO * Fix botched merge * Disabled by default and remove boilerplate code * Add GPO definitions * Add GPO implications when starting standalone * Update hotkey when it's changed in Settings * Use standard Logger * Add OOBE strings for Mouse Jump * Add telemetry * Update installer * Add signing * Add to bug report tool * Address PR feedback
Summary of the Pull Request
Initial implementation of Mouse Jump as proposed in this issue:
#23216 - "Mouse Jump" for ultra-wide monitors
FancyMouse.mp4
(based on https://github.com/mikeclayton/FancyMouse)
Adds the core Mouse Jump functionality, a new settings card to enable / disable the feature and configure the activation shortcut, and includes some tests around the thumbnail sizing and form layout calculations.
It's functional and ready for an initial design review but will probably need some work before it's ready to release.
Some of the work still to do (or add as future improvements):
To Do
Needs Review by PowerToys Team
Nice to Have / Future Work
PR Checklist
Detailed Description of the Pull Request / Additional comments
Validation Steps Performed