-
Notifications
You must be signed in to change notification settings - Fork 8.5k
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
Fix fullscreen after maximize #3721
Conversation
…CSIZE to remove borders
@greg904 Is there any way to not get that vista-style window frame to appear for a brief second, and fix this bug? Overall, I'm happy that this works better, but that frame felt really jarring in my own testing :/ |
I don't know how to do it. Chromium's code https://github.com/chromium/chromium/blob/master/ui/views/win/fullscreen_handler.cc is pretty much the same as here and yet Chromium doesn't have the issue. I'm missing something somewhere. |
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.
Okay, I don't know if this is the right solution, but I was able to get the vista frame to hide itself when entering fullscreen if I hide the window near the top of IslandWindow::_SetIsFullscreen
, and show it again at the bottom.
The vista titlebar is visible for a frame or so when leaving fullscreen, but idk how we fix that. @greg904 if you want to experiment with that, I can let you try your hand at it more. If not, that's fine too - I can submit my own PR once this is merged to fix it when entering. Whatever you prefer 😄
I don't really have time now unfortunately so I would prefer that you submit your own PR. |
@greg904 No problem. Thanks for the initial fix 😄 |
Hello @zadjii-msft! Because this pull request has the p.s. you can customize the way I help with merging this pull request, such as holding this pull request until a specific person approves. Simply @mention me (
|
🎉 Handy links: |
Summary of the Pull Request
Fixes the sides disappearing when entering full screen mode when the window is maximized.
However, now, a Vista-style frame briefly appears when entering/exiting full screen.
References
PR Checklist
Detailed Description of the Pull Request / Additional comments
When the non-client island window is maximized and has the WS_OVERLAPPEDWINDOW style, SetWindowPos is "lying": the position ends up being offset compared to the one we gave it (found by debugging). So I changed it to use WS_POPUP like the client island window was already doing. But now it has the Vista frame that appears briefly when entering/exiting full screen like the client island window.
Validation Steps Performed