On Tue Jun 23 20:43:56 2026 +0000, Etaash Mathamsetty wrote:
Posting a configure message doesn't work since the popup can be mapped before the message is sent. Instead, I adjusted the viewporter destination coordinates to ensure they are not outside the window geometry for popups. This ensures we use the requested size for win32u side, but if the compositor overrides the size wp_viewporter will just scale the surface contents so it fits what the compositor requested. It turns out that we still have full control of the size of the window. Since we technically do not need to follow the size reported by the compositor when we call xdg_surface::set_window_geometry. The protocol does not say that we are required to follow the size requested by xdg_popup::configure although that would be needed for certain constraint types like resize_x/y to function correctly (We don't use any constraints so no issues for us).
-- https://gitlab.winehq.org/wine/wine/-/merge_requests/11178#note_144039