gnome-shell/js/ui
Jasper St. Pierre 93dc7a51c0 Rework window / actor focus handling
The duality of the Clutter's key focus and mutter's window focus has long been
a problem for us in lots of case, and caused us to create large and complicated
hacks to get around the issue, including GrabHelper's focus grab model.

Instead of doing this, tie basic focus management into the core of gnome-shell,
instead of requiring complex "application-level" management to get it done
right.

Do this by making sure that only one of an actor or window can be focused at
the same time, and apply the appropriate logic to drop one or the other,
reactively.

Modals are considered a special case, as we grab all keyboard events, but at
the X level, the client window still has focus. Make sure to not do any input
synchronization when we have a modal.

At the same time, remove the FOCUSED input mode, as it's no longer necessary.

https://bugzilla.gnome.org/show_bug.cgi?id=700735
2013-07-08 17:05:16 -04:00
..
components Make autorun notifications work 2013-07-01 16:54:01 -04:00
status network: Fix a recursion issue when updating VPN 2013-07-03 13:55:08 -04:00
altTab.js altTab: Always activate MRU window when activating an app 2013-05-15 12:12:35 +02:00
animation.js ui: move AnimatedIcon out of panel.js 2013-06-25 15:16:42 -04:00
appDisplay.js appDisplay: Give more horizontal space to control buttons 2013-06-03 19:26:26 +02:00
appFavorites.js Show feedback notifications when the user is busy 2012-11-02 19:25:26 +01:00
background.js background: fix asynchronous management of background loading operations 2013-07-03 17:03:02 +01:00
backgroundMenu.js backgroundMenu: Ignore releases when using long-press 2013-04-26 11:23:37 -04:00
boxpointer.js boxpointer: fix left/right arrow side calculation 2013-07-01 18:42:00 +02:00
calendar.js Calendar: refactor the layout of the event list 2013-06-14 18:44:47 +02:00
checkBox.js
ctrlAltTab.js Rework window / actor focus handling 2013-07-08 17:05:16 -04:00
dash.js dash: Grow the empty dash during drag operations 2013-06-05 15:32:43 +02:00
dateMenu.js dateMenu: Update visibility syncing for new dateMenu layout 2013-06-24 15:14:03 -04:00
dnd.js dnd: Make the draggable much faster 2013-07-02 14:17:38 -04:00
endSessionDialog.js logout dialog: Show the correct text right away 2013-06-12 05:48:23 -04:00
environment.js
extensionDownloader.js modalDialog: drop global.get_current_time() arguments to close 2013-02-20 14:16:53 -05:00
extensionSystem.js Disable all extensions in reverse order 2013-05-22 07:51:23 +02:00
grabHelper.js grabHelper: Remove explicitly having to select modal 2013-07-08 16:51:51 -04:00
ibusCandidatePopup.js ibusCandidatePopup: Fix cursor positioning 2013-02-15 00:26:47 +01:00
iconGrid.js iconGrid: Add fillParent property 2013-02-22 09:46:30 +01:00
keyboard.js keyboard: destroy actors when a group is removed 2013-02-20 22:39:41 +09:00
layout.js Rework window / actor focus handling 2013-07-08 17:05:16 -04:00
lightbox.js Fix bad rebase and regression in 3f6f597 2013-01-31 16:07:16 +01:00
lookingGlass.js lookingGlass: Remove a useless container 2013-05-09 09:49:12 -04:00
magnifier.js magnifier: Don't use some deprecated APIs 2012-08-31 16:43:52 -03:00
magnifierDBus.js
main.js windowManager: Use the correct schema for 'dynamic-workspaces' 2013-06-07 19:52:10 +02:00
messageTray.js grabHelper: Remove explicitly having to select modal 2013-07-08 16:51:51 -04:00
modalDialog.js ui: move AnimatedIcon out of panel.js 2013-06-25 15:16:42 -04:00
notificationDaemon.js Don't use ClutterX11TexturePixmap directly to embed docked windows 2013-03-18 16:49:47 +00:00
osdWindow.js osdWindow: Make sure to clear the hide timeout 2013-06-24 17:23:43 -04:00
overview.js xdnd: Lower window activation timeout 2013-05-29 22:04:07 +02:00
overviewControls.js overviewControls: Don't push window thumbs over when workspaces are invisible 2013-05-29 13:04:45 -04:00
panel.js Rework window / actor focus handling 2013-07-08 17:05:16 -04:00
panelMenu.js panelMenu: Attempt to navigate menus only if we can't navigate inside the menu 2013-05-03 23:20:02 -04:00
pointerWatcher.js Update to new GnomeIdleMonitor API 2013-02-15 09:13:02 +01:00
popupMenu.js grabHelper: Remove explicitly having to select modal 2013-07-08 16:51:51 -04:00
remoteMenu.js remoteMenu: Minor code cleanups 2013-05-13 18:34:26 -04:00
remoteSearch.js search: Rename pushResults to setResults 2013-05-29 11:32:49 -04:00
runDialog.js runDialog: don't destroy on close 2013-04-06 11:10:30 -04:00
screencast.js screencast: Fix return value in case of invalid file template 2013-05-22 17:22:28 +02:00
screenShield.js ScreenShield: when the user goes idle, check for active before pushing a modal 2013-07-04 15:16:27 +02:00
screenshot.js screenshot: Discard invalid sized areas 2013-03-02 22:26:27 +01:00
scripting.js
search.js search: Rename pushResults to setResults 2013-05-29 11:32:49 -04:00
searchDisplay.js searchDisplay: Remove the setResults/getResultsForDisplay dance 2013-05-29 11:32:50 -04:00
separator.js js: Explicitly dispose all cairo contexts 2013-01-08 13:07:51 -05:00
sessionMode.js main: Pick up overridesSchema from sessionMode 2013-06-07 19:52:10 +02:00
shellDBus.js overview: Add focusSearch() method and export it over DBus 2013-05-17 18:27:17 +02:00
shellEntry.js shellEntry: Set the input-purpose property for password entries 2013-05-10 12:42:18 +02:00
shellMountOperation.js Add a setting for the default state of 'Remember Password' 2012-12-02 23:01:56 +01:00
slider.js slider: Add rounded ends to sliders 2013-06-25 09:49:44 -04:00
switcherPopup.js switcherPopup: Remove separator support 2013-03-04 15:28:38 +01:00
tweener.js tweener: Look at the XSetting for disabling animations 2013-02-25 12:59:35 -05:00
unlockDialog.js userMenu: Move UserAvatarWidget into UserWidget 2013-06-06 14:00:37 -04:00
userMenu.js userMenu: Use addSettingsAction 2013-06-06 14:00:38 -04:00
userWidget.js userMenu: Move UserAvatarWidget into UserWidget 2013-06-06 14:00:37 -04:00
viewSelector.js searchDisplay: Remove the "provider meta" 2013-05-29 11:32:50 -04:00
wanda.js search: Rename pushResults to setResults 2013-05-29 11:32:49 -04:00
windowAttentionHandler.js Show feedback notifications when the user is busy 2012-11-02 19:25:26 +01:00
windowManager.js Fix launching apps / search results in new workspaces by dragging 2013-07-01 13:22:05 -04:00
workspace.js workspace: Remove unused zooming property 2013-06-29 11:56:37 +02:00
workspacesView.js overview: Really fix zoom animation 2013-06-26 18:06:54 +02:00
workspaceSwitcherPopup.js Switch all external uses of Main.panel.actor.height to the work area 2013-02-06 22:35:49 -05:00
workspaceThumbnail.js Fix launching apps / search results in new workspaces by dragging 2013-07-01 13:22:05 -04:00
xdndHandler.js Remove simple uses of ClutterRectangle 2013-05-09 09:49:12 -04:00