-
Notifications
You must be signed in to change notification settings - Fork 1.6k
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
Position persistence and sane clamping to still-available monitors for Windows #2583
Conversation
… restored between sessions.
# Conflicts: # crates/egui-winit/CHANGELOG.md
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.
Nice with this fix, but the code needs cleanup.
Have you tested it with pixels_per_point != 1
?
That's a good point, I have not. I'll give it a look soon. |
I have tested this on a display with resolution scaling applied. I had already done that, but was second guessing that I had done it properly. |
Discovered an issue where putting the monitor off a non-primary monitor to the left causes the position to be off the monitor x and y range, clamping to the primary instead of the non-primary.
…any part of the window had been visible on a remaining monitor.
Rather than just wrap in blocks, I kind of prefer the more explicit if cfg! call for line 114. CHANGELOG.md - correct a missing paren I noticed
emilk suggested changelog formatting Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
* Patch is a modified version of emilk#2583
Satisfy CI Error
…r Windows (emilk#2583) * Attempt to fix monitor clamping on Windows so window positions can be restored between sessions. * Missed a change. * Renamed variables, reorganized some lines of code, and added some more comments. * Cargo fmt run * Updated CHANGELOG.md to briefly describe my change * Updated CHANGELOG.md to briefly describe my change * Applied suggested fixes from emilk Discovered an issue where putting the monitor off a non-primary monitor to the left causes the position to be off the monitor x and y range, clamping to the primary instead of the non-primary. * Fix for matching negative restored window positions. Should clamp if any part of the window had been visible on a remaining monitor. * Apparently compiler attributes on statements have been marked unstable. Rather than just wrap in blocks, I kind of prefer the more explicit if cfg! call for line 114. CHANGELOG.md - correct a missing paren I noticed * I was being silly, I don't need to clone inner_size_points on line 112 * Cargo fmt run * Update crates/egui-winit/CHANGELOG.md emilk suggested changelog formatting Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com> * Update window_settings.rs Satisfy CI Error * clippy --------- Co-authored-by: Emil Ernerfeldt <emil.ernerfeldt@gmail.com>
Closes #1469.
Doesn't know where the task bar is, and that doesn't seem to be available in winit, so clamping vertically may result in some of the window being behind it.