gnome-shell/js/ui
Neil Roberts 5001bd8810 Don't use ClutterX11TexturePixmap directly to embed docked windows
Previously when a client requests that a window should be docked the
shell would reparent the socket window onto the stage's window and
then use ClutterX11TexturePixmap to get a texture to represent the
window. This will not work if Clutter is no longer using the X11
winsys for example if it becomes its own display server. Instead this
patch leaves the socket window as a child of the root window and lets
mutter create a MetaWindow out of it. If Mutter is acting as a display
server then this mechanism will still work via the headless x server.

The ShellGtkEmbed instance now registers for notification of the
‘window-created’ signal of the display so that it can find the
MetaWindow that gets created to represent the socket window. When this
window is found it is prevented from being displayed on the screen by
setting the actor's opacity to 0. An input shape is then set on the
window to prevent it receiving any input.

Instead of being a subclass of ClutterX11TexturePixmap, ShellGtkEmbed
is now a subclass of ClutterClone. When the MetaWindow is found for
the socket window the clone's source is set to the invisible actor for
the window so it can be displayed in the panel as before.

The ShellEmbeddedWindow no longer needs to know what the stage is
because it no longer reparents the socket window. Therefore the
ShellTrayManager doesn't need to know the stage either so
shell_tray_manager_manage_stage has been replaced with just
shell_tray_manager_manage_screen.

https://bugzilla.gnome.org/show_bug.cgi?id=693438
2013-03-18 16:49:47 +00:00
..
components keyring: Don't replace an already running prompter 2013-03-13 07:57:16 +01:00
status status/keyboard: Check if this._currentSource is valid on activation 2013-03-14 14:56:28 +01:00
altTab.js altTab: Ignore workspaces in popups 2013-03-04 15:28:37 +01:00
appDisplay.js appDisplay: Use a custom LayoutManager for the AllView stack 2013-03-15 22:41:54 +01:00
appFavorites.js Show feedback notifications when the user is busy 2012-11-02 19:25:26 +01:00
background.js background: Look at the duration per-step 2013-03-14 17:48:07 -04:00
backgroundMenu.js backgroundMenu: Rename "System Settings" to "Settings" 2013-02-20 20:07:08 +01:00
boxpointer.js AppDisplay: fix folder popup arrow 2013-02-20 16:04:54 +01:00
calendar.js Calendar: only show events when configured in Evolution 2013-03-04 18:59:30 +01:00
checkBox.js checkBox: Work around a height-for-width problem 2012-03-26 14:43:54 +02:00
ctrlAltTab.js ctrlAltTab: Fix external DOCK windows 2013-03-13 10:18:16 +01:00
dash.js dash: add a workaround for Clutter bug 692744 2013-02-20 20:51:11 +01:00
dateMenu.js Calendar: only show events when configured in Evolution 2013-03-04 18:59:30 +01:00
dnd.js DND: don't cancel a drag if the actor is destroyed inside acceptDrop 2013-03-17 19:26:13 +01:00
endSessionDialog.js endSessionDialog: don't process response until closed 2013-02-20 14:16:54 -05:00
environment.js Switch string formatting to the one inside gjs 2012-05-24 15:38:44 -04:00
extensionDownloader.js modalDialog: drop global.get_current_time() arguments to close 2013-02-20 14:16:53 -05:00
extensionSystem.js extensionSystem: Allow extensions to provide mode-specific styling 2013-02-05 19:54:17 +01:00
grabHelper.js grabHelper: Use a round trip for focusing the default window 2013-03-12 11:58:50 -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 layout: Move window_group visibility to the layout 2013-03-18 03:57:36 -04:00
lightbox.js Fix bad rebase and regression in 3f6f597 2013-01-31 16:07:16 +01:00
lookingGlass.js lg: add a reference to lookingGlass in the Extensions tab. 2013-02-20 23:14:53 +00:00
magnifier.js magnifier: Don't use some deprecated APIs 2012-08-31 16:43:52 -03:00
magnifierDBus.js Port everything to class framework 2011-11-24 09:50:04 +01:00
main.js main: Do not export DBus interfaces before initializing the UI 2013-03-14 17:28:31 +01:00
messageTray.js messageTray: Remove some dead positioning code 2013-03-14 17:18:20 -04:00
modalDialog.js modalDialog: Fix auto-completion of prompts immediately upon display 2013-03-04 09:17:41 +01:00
notificationDaemon.js Don't use ClutterX11TexturePixmap directly to embed docked windows 2013-03-18 16:49:47 +00:00
osdWindow.js osdWindow: bump down the OSD window size a bit 2013-03-07 17:02:41 -05:00
overview.js layout: Move window_group visibility to the layout 2013-03-18 03:57:36 -04:00
overviewControls.js overviewControls: only show chat icon in messages indicator for chats 2013-03-04 16:25:50 -05:00
panel.js overview: Try to do the right thing related to XDnD 2013-03-04 17:47:47 -05:00
panelMenu.js Switch all external uses of Main.panel.actor.height to the work area 2013-02-06 22:35:49 -05:00
pointerWatcher.js Update to new GnomeIdleMonitor API 2013-02-15 09:13:02 +01:00
popupMenu.js popupMenu: Close all child menus when the main menu is closed 2013-02-18 13:31:15 -05:00
remoteSearch.js search: fix description of results 2013-03-01 00:38:50 +01:00
runDialog.js runDialog: Remove the use of file monitors for file completion 2013-03-07 16:35:37 -05:00
screenShield.js ScreenShield: don't animate arrows if the user is idle 2013-03-17 19:20:43 +01:00
screenshot.js screenshot: Discard invalid sized areas 2013-03-02 22:26:27 +01:00
scripting.js Port client side code to GDBus 2011-11-11 11:15:38 -05:00
search.js search: Don't run a full search for equal terms 2013-02-16 13:24:21 -05:00
searchDisplay.js searchDisplay: Add an accessible name to the provider icon 2013-03-18 12:12:40 -04:00
separator.js js: Explicitly dispose all cairo contexts 2013-01-08 13:07:51 -05:00
sessionMode.js Defer initializing UI until after the global session has loaded 2013-03-07 16:35:36 -05:00
shellDBus.js shellDBus: Export ShowOSD() method on the bus 2013-03-03 12:59:09 +01:00
shellEntry.js shellEntry: Disable copy action for password entries 2013-03-04 16:43:59 +01:00
shellMountOperation.js Add a setting for the default state of 'Remember Password' 2012-12-02 23:01:56 +01: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 screenShield: Forward key presses to tne entry when raising the shield 2013-03-11 15:08:21 -04:00
userMenu.js userMenu: Add translation comments 2013-03-11 10:35:42 +01:00
userWidget.js unlockDialog: move user widget into separate file 2013-02-19 18:39:53 -05:00
viewSelector.js viewSelector: Move the loupe icon to the primary slot 2013-03-03 15:41:52 -05:00
wanda.js Wanda: so long GNOME 2, and thanks for all the fish. 2013-03-10 15:54:40 +01:00
windowAttentionHandler.js Show feedback notifications when the user is busy 2012-11-02 19:25:26 +01:00
windowManager.js windowManager: Don't use show_all 2013-02-22 14:28:58 +01:00
workspace.js Workspace/WorkspaceThumbnail: fix Clutter warnings from stacking code 2013-03-17 19:26:13 +01:00
workspacesView.js Revert "WorkspacesView: set the clip when setting the geometry" 2013-03-17 19:39:58 +01: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 WorkspaceThumbnails: animate the right workspace when creating by DND 2013-03-17 19:35:15 +01:00
xdndHandler.js xdndHandler: Ensure that the XDnD clone is on top of the panel 2013-03-03 15:41:52 -05:00