Skip to content

Conversation

@deralmas
Copy link
Contributor

Depends on #114081.
Might fix #94157.
Fixes #111700 (comment).

Despite what I thought in the past, it is allowed, as long as we follow certain limitations depending on the toplevel's state.

As usual I peppered the code with comments expaining what those limitations are.

Regarding popups, AFAICT there are no major limitations, although we should eventually use the new reposition method, which autoadjusts the popup to follow the screen's borders and whatnot. I didn't do that in this patch as it requires some elbow grease, especially if we want to do it synchronously.


Includes some teeny tiny fixes to two mistakes:


Also needs more testing. It definitely fixes the issues reported in #111700 (comment) , which is already something :D

Copy link
Member

@bruvzg bruvzg left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Fixes window resizing (#94157) on Wayland (tested with GNOME/mutter).

Despite what I thought in the past, it is allowed, as long as we follow
certain limitations depending on the toplevel's state.

As usual I peppered the code with comments expaining what those
limitations are.

Regarding popups, AFAICT there are no major limitations, although we
should eventually use the new `reposition` method, which autoadjusts the
popup to follow the screen's borders and whatnot. I didn't do that in
this patch as it requires some elbow grease, especially if we want to do
it synchronously.
@deralmas
Copy link
Contributor Author

Oops, rebased wrong branch. No edits made.

@akien-mga akien-mga merged commit 5ce4e5d into godotengine:master Jan 16, 2026
20 checks passed
@akien-mga
Copy link
Member

Thanks!

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Window doesn't resize properly when changing resolution, with "Display Server" set to "Wayland" in Project Settings

3 participants