mutter/src/meta
Owen W. Taylor a4a688ed83 Rewrite background code
The old requirement that multiple MetaBackgroundActor objects be
layered on top of each to produce blended backgrounds resulted in
extremely inefficient drawing since the entire framebuffer had
to be read and written multiple times.

 * Replace the MetaBackground ClutterContent with a plain GObject
   that serves to hold the background parameters and prerender
   textures to be used to draw the background. It handles
   colors, gradients, and blended images, but does not handle
   vignetting

 * Add vignetting to MetaBackgroundActor directly.

 * Add MetaBackgroundImage and MetaBackgroundImageCache to allow
   multiple MetaBackground objects to share the same images

By removing the usage of ClutterContent, the following optimizations
were easy to add:

 Blending is turned off when the actor is fully opaque
 Nearest-neighbour filtering is used when drawing 1:1

The GLSL vignette code is slightly improved to use a vertex shader
snippet for computing the texture coordinate => position in actor
mapping.

https://bugzilla.gnome.org/show_bug.cgi?id=735637
2014-09-03 13:43:40 -04:00
..
atomnames.h x11: Add support for a new _GTK_SHOW_WINDOW_MENU request 2014-05-21 18:55:47 -04:00
barrier.h Fix gobs of gtk-doc warnings 2013-03-14 18:02:43 -04:00
boxes.h Remove trailing whitespace 2014-05-02 09:34:48 -04:00
common.h common: Make UNKNOWN a flag, not a combination of all directions 2014-08-19 15:11:10 -04:00
compositor-mutter.h Changed obsolete FSF postal address into generic URL. 2014-01-13 11:35:47 -05:00
compositor.h backend: Create the stage in the backend, rather than the compositor 2014-08-13 20:08:46 -04:00
display.h display: Move composite version checks here 2014-08-13 19:32:39 -04:00
errors.h Remove trailing whitespace 2014-05-02 09:34:48 -04:00
gradient.h Remove trailing whitespace 2014-05-02 09:34:48 -04:00
group.h Remove trailing whitespace 2014-05-02 09:34:48 -04:00
keybindings.h prefs: Completely remove references to REVERSES 2014-08-17 22:48:51 -04:00
main.h Add a framework for restarting the compositor with nice visuals 2014-07-16 18:09:25 -04:00
meta-backend.h backend: Create the stage in the backend, rather than the compositor 2014-08-13 20:08:46 -04:00
meta-background-actor.h Rewrite background code 2014-09-03 13:43:40 -04:00
meta-background-group.h Add a meaningful name and description to all sections/files in the API docs 2013-03-14 18:11:04 -04:00
meta-background-image.h Rewrite background code 2014-09-03 13:43:40 -04:00
meta-background.h Rewrite background code 2014-09-03 13:43:40 -04:00
meta-cursor-tracker.h Changed obsolete FSF postal address into generic URL. 2014-01-13 11:35:47 -05:00
meta-idle-monitor.h Changed obsolete FSF postal address into generic URL. 2014-01-13 11:35:47 -05:00
meta-plugin.h compositor: add support for unminimize compositor effects 2014-07-26 17:26:40 +02:00
meta-shadow-factory.h Changed obsolete FSF postal address into generic URL. 2014-01-13 11:35:47 -05:00
meta-shaped-texture.h Fix the input region not working properly 2014-02-18 21:29:23 -05:00
meta-version.h.in meta: Add generated meta-version.h 2014-06-05 14:05:16 +02:00
meta-window-actor.h window-actor: Remove old unused APIs 2014-01-31 17:19:27 -05:00
prefs.h prefs: Completely remove references to REVERSES 2014-08-17 22:48:51 -04:00
screen.h compositor: Kill off MetaCompScreen 2014-03-26 12:04:48 -04:00
theme.h Remove trailing whitespace 2014-05-02 09:34:48 -04:00
types.h Revert "Move MetaGroup to be X11-specific" 2014-03-19 09:12:48 -04:00
util.h util: Move the text direction stuff out of MetaUI 2014-08-17 22:59:43 -04:00
window.h window: expose meta_window_is_client_decorated() in the API 2014-07-08 12:10:54 +02:00
workspace.h workspace: Add a "workspace-index" property to MetaWorkspace 2014-08-16 14:56:38 -04:00