Go to file
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
.settings Convert all JS style to be uniform, add Eclipse settings bits 2008-11-28 20:12:20 +00:00
browser-plugin Remove use of deprecated g_type_init () ... 2012-10-17 22:49:32 +02:00
data login-dialog: Increase top/bottom padding 2013-03-15 19:35:18 +01:00
docs shell-docs: remove leftover mobile-providers include 2013-02-06 01:33:51 +02:00
js Don't use ClutterX11TexturePixmap directly to embed docked windows 2013-03-18 16:49:47 +00:00
man Use the same xsltproc parameters as other modules 2012-11-05 23:42:52 -05:00
po Updated gujarati file 2013-03-18 12:33:14 +05:30
src Don't use ClutterX11TexturePixmap directly to embed docked windows 2013-03-18 16:49:47 +00:00
tests st-scroll-view: Add :overlay-scrollbars property 2013-02-22 10:57:50 +01:00
tools jhbuildrc-gnome-shell: switch to the GNOME 3.8 moduleset 2012-10-05 13:59:57 -04:00
.gitignore remote-search: properly document the DBus interface 2012-12-06 12:13:24 -05:00
.gitmodules Use libgnome-volume-control from a submodule 2012-12-08 15:53:46 +01:00
.project Convert all JS style to be uniform, add Eclipse settings bits 2008-11-28 20:12:20 +00:00
AUTHORS Initial commit 2008-10-31 04:22:44 +00:00
autogen.sh Use libgnome-volume-control from a submodule 2012-12-08 15:53:46 +01:00
configure.ac Bump version to 3.7.91 2013-03-05 00:42:25 +01:00
COPYING Initial commit 2008-10-31 04:22:44 +00:00
gnome-shell.doap Revert "doap: add myself to doap file" 2013-03-15 14:02:31 -04:00
HACKING Add a new code style/hacking guide 2012-10-10 19:11:36 -03:00
MAINTAINERS MAINTAINERS: Fix my email address 2011-05-23 09:15:58 -04:00
Makefile.am build: Exclude .gitmodules from distribution 2012-12-18 18:28:42 +01:00
NEWS Bump version to 3.7.91 2013-03-05 00:42:25 +01:00
README Add README and DOAP file 2009-09-04 15:23:13 -04:00

GNOME Shell provides core user interface functions for the GNOME 3 desktop,
like switching to windows and launching applications. GNOME Shell takes
advantage of the capabilities of modern graphics hardware and introduces
innovative user interface concepts to provide a visually attractive and
easy to use experience.

For more information about GNOME Shell, including instructions on how
to build GNOME Shell from source and how to get involved with the project,
see:

 http://live.gnome.org/GnomeShell

Bugs should be reported at http://bugzilla.gnome.org against the 'gnome-shell'
product.

License
=======
GNOME Shell is distributed under the terms of the GNU General Public License,
version 2 or later. See the COPYING file for details.