-
Notifications
You must be signed in to change notification settings - Fork 913
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
Macos fullscreen & dialog support with run_return
#1581
Conversation
Rewrote my approach since I noticed I caused a bug with the control flow. |
Also added experimental dialog/child window support tested with https://github.com/EmbarkStudios/nfd2. |
run_return
run_return
@kchibisov @francesca64 You two originally authored the |
I don't have native macOS machine and don't know much about macOS. The run_return impl is a copypasta of run impl. I'm not sure If I ever seen a freeze from run_return, since we're using it for so much time in alacritty, and no one ever reported it. Maybe I don't understand the conditions where it should freeze? |
@kchibisov So its 2 issues. 1 is running the This PR solves both but not in a very clean way. |
@VZout while I wrote the macOS EL2 backend, I never included a My perspective might be poisoned from having to write so many workarounds in my life, but I honestly don't think this looks that unclean. While a canonical solution could exist, it'd likely involve a considerable amount of research into what other windowing implementations are doing. |
For various reasons we can't have winit really take control of our application loop like that. It would be a welcome addition to have I also don't think this code is super unclean, so I'd love to see this get merged into mainline. |
I believe that's already the current story. @vbogaevsky are you around for an additional review? |
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.
Thanks for the PR!
I've fixed a minor issue. A colleague noticed that maocs dialogs were not being closes properly and always exited with the canceled event. |
Previously the
run_return
example would freeze if you switch to fullscreen. This fixes it.It is not a clean solution but if anybody knows more about mac than I do let me know if there is a better way.
cargo fmt
has been run on this branchcargo doc
builds successfullyCHANGELOG.md
if knowledge of this change could be valuable to users