Go to file
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
.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 loginDialog: Move the session list to a PopupMenu 2013-06-26 14:42:31 -04:00
docs docs: Include ShellKeyBindingMode in docs 2013-05-23 17:07:50 +02:00
js Rework window / actor focus handling 2013-07-08 17:05:16 -04:00
man Document --clutter-display in the man page 2013-05-16 18:43:52 -04:00
po Updated Vietnamese translation 2013-07-06 18:29:12 +07:00
src Rework window / actor focus handling 2013-07-08 17:05:16 -04: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.9.3 2013-06-18 17:47:30 +02: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.9.3 2013-06-18 17:47:30 +02: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.