-
Notifications
You must be signed in to change notification settings - Fork 103
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 rendering of resized XWayland applications with client side decorations #3587
Fix rendering of resized XWayland applications with client side decorations #3587
Conversation
both match the current content size
I can confirm this. The fact this "works" is curious: It implies that some resizing code depends on both new width and new height being supplied. (Not just the dimension(s) that changed.) This might well be the simplest way to accommodate that. The reason that moving the cursor outside the window stops the resizing is probably that target window loses focus. (With the SSD & wayland windows generally there's "start resize" message passed to the window manager (that initiates a "resize gesture".) |
This will be fixed in another PR. I already had an attempt at fixing it, thinking that the issue was related to input event handling. I'll have another go at it soon™ going for the focus angle. |
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.
Not necessarily the right thing, but an improvement
…ations (#3587) Previously, resizing didn't work at all unless you did a vertical resize followed by a horizontal one (or vice versa). Now, resizes work but only if you shrink the application. Any resizing outside application bounds stops after a couple of pixels.
# rc1 * New upstream release 2.19.0 - ABI summary: . miral ABI unchanged at 7 . mircommon ABI unchanged at 10 . mircore ABI unchanged at 2 . miroil ABI unchanged at 5 . mirplatform ABI bumped to 30 . mirserver ABI bumped to 61 . mirwayland ABI unchanged at 5 . mirplatformgraphics ABI unchanged at 22 . mirinputplatform ABI unchanged at 9 - Enhancements: . [x11-kiosk] defer fullscreening of applications until they are placed once (#3670) . [x11-kiosk] Ensure windows are placed and repainted on X11 "CONFIGURE" (#3619) . [x11-kiosk] change enable-x11 default to true . Initial atomic-kms platform . [Wayland] Add support for xdg_activation_v1 (#3639) . Do not default window size (especially to weird values) (#3623) . DesktopFileManager::resolve_app_id no longer returns an app id with a .desktop file suffix (Fixes #3608) . [Configuration] Split options into global and per-module configuration (#3590) - Bugs fixed: . Ensure we always send an initial output enter (#3680) . Fix stuck-frame-after-mode-switch bug (#3673) . Fix rendering of resized XWayland applications with client side decorations (#3587) . Aspect ratios shouldn't contain zero (Fixes: #3663) . Use PkgConfig to find development headers (#3661) . Fix the inotify event handling in ReloadingYamlFileDisplayConfig::auto_reload() (#3636) . The `miral::ConfigFile` "Watcher" can be destroyed before the main loop (Fixes: #3612) . [xwayland] Don't allow clients to place X11 windows (#3622) . Surfaces track scale changes on outputs they appear on. (Fixes: #3552) . New attached windows need to be placed (#3676) ---- [Test Plan](https://canonical-mir.readthedocs-hosted.com/latest/how-to/how-to-test-mir-for-a-release/) ### Platforms || 24.04 | 24.10 | |-|-|-| | gbm-kms |@AlanGriffiths|@AlanGriffiths| | atomic-kms |@AlanGriffiths|@AlanGriffiths| | eglstream-kms |@tarek-y-ismail|| | eglstream-kms + gbm-kms hybrid |@tarek-y-ismail|| | x11 |@AlanGriffiths|@AlanGriffiths| | wayland |@AlanGriffiths|@AlanGriffiths| | virtual |@AlanGriffiths|@AlanGriffiths| ### Console Providers || 24.04 | 24.10 | |-|-|-| | vt |@AlanGriffiths|@AlanGriffiths| | logind |@AlanGriffiths|@AlanGriffiths| | minimal |@AlanGriffiths|| ### Window Manager Examples || 24.04 | 24.10 | |-|-|-| | --window-manager=floating |@AlanGriffiths|@AlanGriffiths| | --window-manager=tiling |@AlanGriffiths|| | -kiosk |@AlanGriffiths||
Previously, resizing didn't work at all unless you did a vertical resize followed by a horizontal one (or vice versa). Now, resizes work but only if you shrink the application. Any resizing outside application bounds stops after a couple of pixels.