gnome-shell/js/ui
Jonas Dreßler d3880c0bff main: Unset the right prevFocus actor after the focus stack got shifted
When a modal that's not on top of the modalActorFocusStack gets popped,
we shift the focus stack as described in popModal() to ensure the chain
remains correct. That however destroys the association of a modal actor
and its prevFocus actor on the focus stack, because the prevFocus actors
are now moved to different entries of the stack.

Now when a prevFocus actor gets destroyed, we don't handle that case
correctly and search for the modal actor that was associated with the
prevFocus actor before the stack was shifted, which means we end up
unsetting the wrong prevFocus actor.

So fix that and search the stack for the prevFocus actor which is being
destroyed instead to unset the correct entry.

Thanks to Florian Müllner for figuring out the actual issue and
proposing this fix.

Fixes https://gitlab.gnome.org/GNOME/gnome-shell/-/issues/2446
2020-04-29 12:40:13 +02:00
..
components cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
status cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
accessDialog.js js: Don't use templates in files with translations 2020-02-17 23:20:40 +01:00
altTab.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
animation.js animation: Set size through CSS 2020-04-06 11:24:30 -03:00
appDisplay.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
appFavorites.js appFavorites: Hide favourites which are blacklisted by parental controls 2020-04-07 17:47:33 +02:00
audioDeviceSelection.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00: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 boxpointer: Call set_allocation before allocating child 2020-04-27 19:53:20 +02:00
calendar.js calendar-server: Improve performance by properly using ECalClientView 2020-04-27 16:14:57 +00:00
checkBox.js checkbox: Improve accessibility of check boxes for Orca users 2020-03-29 12:56:33 +00:00
closeDialog.js closeDialog: Remove transitions before resetting dialog 2020-03-23 15:27:47 +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: Update empty weather label 2020-04-09 10:52:44 -03: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: Promisify async operations 2020-03-31 05:43:40 +00:00
environment.js JS: migrate from the global window to globalThis 2020-04-26 19:07:02 -07:00
extensionDownloader.js extensionSystem: Require Extensions app for updates 2020-03-27 13:28:41 +00:00
extensionSystem.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00: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: Downscale icon size when comparing to defaults 2020-04-03 16:04:40 -03: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: Minor cleanup 2020-04-28 09:04:49 +00:00
layout.js layout: Use translation_y of 0 to hide keyboard 2020-03-28 20:45:32 +00:00
lightbox.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
locatePointer.js locatePointer: Bind ripples creation to settings 2019-09-09 19:28:18 +00:00
lookingGlass.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
magnifier.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
magnifierDBus.js cleanup: Use JSDoc for documentation comments 2019-11-11 19:25:14 +00:00
main.js main: Unset the right prevFocus actor after the focus stack got shifted 2020-04-29 12:40:13 +02:00
messageList.js js: Add missing chain-ups in vfuncs 2020-03-27 10:39:58 +01:00
messageTray.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00: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 messageTray: Don't create notification policy on demand 2020-03-26 18:52:10 +00: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 cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
overviewControls.js overviewControls: Remove transitions before updating adjustment value 2020-04-28 01:28:50 +02:00
padOsd.js padOsd: Add parameter type to keybinding-edited signal 2020-03-20 13:32:56 +01:00
pageIndicators.js pageIndicators: Redesign and add position-based animation 2019-11-23 03:01:51 +05:00
panel.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00: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 js: Promisify async operations 2020-03-31 05:43:40 +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 screenShield: Don't inhibit suspend during initial setup 2020-04-24 23:47:31 +00:00
screenshot.js js: Promisify async operations 2020-03-31 05:43:40 +00:00
scripting.js perf-tool: Spawn perf-tool-helper from gnome-shell 2020-01-27 13:43:06 +00:00
search.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
sessionMode.js main: Get the theme resource name from sessionMode 2020-03-06 19:09:25 +00:00
shellDBus.js extensionSystem: Add method for opening extension prefs 2020-04-03 15:23:26 +02:00
shellEntry.js shellEntry: Restore natural-height-set instead of forcing it 2020-02-22 16:58:01 +00:00
shellMountOperation.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +00:00
slider.js js: Add missing chain-ups in vfuncs 2020-03-27 10:39:58 +01:00
swipeTracker.js js/ui: Subscribe touchpad gesture handlers to only touchpad events 2020-02-29 13:39:17 +00:00
switcherPopup.js js/ui: Always use namespace for animation modes 2020-04-15 13:59:38 +00:00
switchMonitor.js switchMonitor: Center align switcher icon's label 2020-01-02 13:03:08 +05:30
unlockDialog.js unlockDialog: Call AuthPrompt.addCharacter() directly 2020-04-25 14:54:07 +00:00
userWidget.js userWidget: Always set actor size inside update() 2020-02-18 22:10:00 +00:00
viewSelector.js js/ui: Subscribe touchpad gesture handlers to only touchpad events 2020-02-29 13:39:17 +00:00
windowAttentionHandler.js messageTray: Don't create notification policy on demand 2020-03-26 18:52:10 +00:00
windowManager.js windowManager: Fix ngettext() call 2020-04-17 22:25:09 +00:00
windowMenu.js cleanup: Avoid unnecessary parentheses in arrow functions 2019-09-15 16:02:45 +02:00
workspace.js workspace: Fix chaining up 2020-04-03 12:57:01 +00:00
workspacesView.js cleanup: Don't linebreak before closing parentheses 2020-04-28 09:04:49 +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 shell/global: Add 'backend' property 2020-04-27 15:18:18 +00:00