gnome-shell/js/ui
Jonas Dreßler da05c85f3c windowManager: Show window resizing clone on "size-changed"
When a window is being resized by the compositor, with Wayland the
compositor first asks the window to change its size and emits the
"size-change" signal, and then emits the "size-changed" signal after
the window acknowledges the new size. To show a fancy resize animation,
gnome-shell creates a "screenshot" of the resizing window on the
"size-change" signal, and later animates that "screenshot" to the new
window size on the "size-changed" signal.

Now if a client is not responding to our requests asking it to change
its size, we get a "size-change" signal and start showing the
window-clone, but never a "size-changed" signal, animating and hiding
the clone again. This causes a so called "ghost window" that is shown
above everything else and never disappears again.

To fix that, start showing the window clone once we get the
"size-changed" signal instead of the "size-change" signal. This makes
sure the window actually updates its size and the clone is going to be
hidden again.

Fixes https://gitlab.gnome.org/GNOME/mutter/issues/1078

https://gitlab.gnome.org/GNOME/gnome-shell/merge_requests/1055
2020-02-28 18:08:24 +00:00
..
components js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
status status/keyboard: Check for monkey-patched property before using it 2020-02-20 19:08:47 +00:00
accessDialog.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
altTab.js altTab: Don't fade out thumbnails on destroy 2020-02-26 22:46:51 +00:00
animation.js animation: Scale animation actor for HiDPI 2020-01-30 14:28:45 +00:00
appDisplay.js appDisplay: Remove unnecessary bind constraint 2020-02-19 09:20:05 -03:00
appFavorites.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
audioDeviceSelection.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
background.js background: Remove noise texture 2020-02-10 22:30:52 +00:00
backgroundMenu.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
barLevel.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
boxpointer.js Revert "js/ui: Use Clutter.OffscreenRedirect.ON_IDLE" 2020-02-26 11:54:54 +08:00
calendar.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
checkBox.js checkbox: Correctly align label 2020-01-30 15:48:26 +01:00
closeDialog.js closeDialog: Make dialog inactive while fading out 2020-02-21 08:11:57 +00:00
ctrlAltTab.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
dash.js Revert "js/ui: Use Clutter.OffscreenRedirect.ON_IDLE" 2020-02-26 11:54:54 +08:00
dateMenu.js dateMenu: Sync initial state of the message indicator 2020-02-25 16:47:29 +01:00
dialog.js closeDialog: Make dialog inactive while fading out 2020-02-21 08:11:57 +00:00
dnd.js dnd: Make DND translation-property-aware 2020-02-07 14:43:56 +00:00
edgeDragAction.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
endSessionDialog.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
environment.js environment: reduce calls to g_time_zone_new_local() 2020-02-27 13:48:26 -08:00
extensionDownloader.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
extensionSystem.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
focusCaretTracker.js cleanup: Prefer template strings 2019-07-05 11:32:31 +00:00
grabHelper.js grabHelper: Add (promised-based) grabAsync() 2019-12-20 15:41:32 +01:00
ibusCandidatePopup.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
iconGrid.js iconGrid: Create icon clones in a separate loop 2020-02-19 15:39:21 +00:00
inhibitShortcutsDialog.js inhibitShortcutsDialog: Adapt to new dialog design 2020-01-27 23:40:04 +01:00
kbdA11yDialog.js ui: Use ClutterSeat for keyboard/pointer a11y 2020-01-30 17:49:08 +00:00
keyboard.js keyboard: Specify symbolic icons to use in default keys 2020-02-20 11:34:07 +00:00
layout.js layout: Show and hide keyboard using translation_y 2020-02-21 12:59:21 +00:00
lightbox.js lightbox: Change vignette brightness to 0.5 2020-01-19 18:01:57 +01:00
locatePointer.js locatePointer: Bind ripples creation to settings 2019-09-09 19:28:18 +00:00
lookingGlass.js lookingGlass: Also handle null objects in objectToString 2020-02-19 11:56:36 +01:00
magnifier.js magnifier: Use inhibit-unfocus API to keep wayland focus while hidden 2020-02-24 10:31:08 +00:00
magnifierDBus.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
main.js main: Inhibit animations when there is a remote desktop session 2020-02-20 11:14:55 +00:00
messageList.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
messageTray.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
modalDialog.js switcherPopup: Dismiss when a system modal dialog opens 2019-12-06 19:55:39 +01:00
mpris.js mpris: Disallow media section on login screen 2020-02-26 17:45:33 +00:00
notificationDaemon.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
osdMonitorLabeler.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
osdWindow.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
overview.js Revert "js/ui: Use Clutter.OffscreenRedirect.ON_IDLE" 2020-02-26 11:54:54 +08:00
overviewControls.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
padOsd.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
pageIndicators.js pageIndicators: Redesign and add position-based animation 2019-11-23 03:01:51 +05:00
panel.js Revert "js/ui: Use Clutter.OffscreenRedirect.ON_IDLE" 2020-02-26 11:54:54 +08:00
panelMenu.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
pointerA11yTimeout.js ui: Use ClutterSeat for keyboard/pointer a11y 2020-01-30 17:49:08 +00:00
pointerWatcher.js cleanup: Stop using Mainloop module 2019-09-12 19:09:24 +02:00
popupMenu.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
remoteSearch.js cleanup: Avoid unnecessary parentheses 2019-11-11 19:25:14 +00:00
ripples.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
runDialog.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
screencast.js cleanup: Use destructuring for imports from GI 2019-02-09 07:39:20 +01:00
screenShield.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
screenshot.js screenshot: Fix stripping suffix from relative filename 2020-01-10 19:31:04 +01:00
scripting.js perf-tool: Spawn perf-tool-helper from gnome-shell 2020-01-27 13:43:06 +00:00
search.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
sessionMode.js sessionMode: Remove lock-screen mode 2020-02-10 22:30:52 +00:00
shellDBus.js extensionPrefs: Rename to Extensions 2020-02-03 19:03:19 +01:00
shellEntry.js shellEntry: Restore natural-height-set instead of forcing it 2020-02-22 16:58:01 +00:00
shellMountOperation.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
slider.js slider: Calculate handle position in whole pixel units 2020-02-21 11:29:09 +08:00
swipeTracker.js swipeTracker: Reset scroll gesture state on disabling 2020-02-06 17:36:05 +00:00
switcherPopup.js switcherPopup: Use correct scroll-direction property 2020-02-26 22:46:51 +00:00
switchMonitor.js switchMonitor: Center align switcher icon's label 2020-01-02 13:03:08 +05:30
tweener.js tweener: Use new adjustAnimationTime() helper 2019-08-06 20:50:43 +02:00
unlockDialog.js unlockDialog: Set accessible name of icon-only buttons 2020-02-24 12:29:44 +00:00
userWidget.js userWidget: Always set actor size inside update() 2020-02-18 22:10:00 +00:00
viewSelector.js workspaceThumbnail: Sync indicator with WorkspacesDisplay 2020-01-08 23:07:08 +01:00
windowAttentionHandler.js cleanup: Don't shadow variables 2019-11-11 19:25:14 +00:00
windowManager.js windowManager: Show window resizing clone on "size-changed" 2020-02-28 18:08:24 +00:00
windowMenu.js cleanup: Avoid unnecessary parentheses in arrow functions 2019-09-15 16:02:45 +02:00
workspace.js workspace: Ensure style of window-chrome titles before requesting width 2020-02-19 10:09:20 +00:00
workspacesView.js workspacesView: Disable swipe tracker during window dragging 2020-01-28 22:08:48 +00:00
workspaceSwitcherPopup.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00
workspaceThumbnail.js workspaceThumbnail: Sync indicator with WorkspacesDisplay 2020-01-08 23:07:08 +01:00
xdndHandler.js cleanup: Require "dangling" commas 2019-11-11 19:25:14 +00:00