WindowSystem: Don't composite for every redraw request
authorRahul Singhal <rasinghal@nvidia.com>
Fri, 6 Apr 2012 12:14:41 +0000 (17:44 +0530)
committerMichael Schuldt <michael.schuldt@bmw.de>
Thu, 3 May 2012 07:20:35 +0000 (09:20 +0200)
commit962e9e6cabaf455a5321cfbcc6214f0c1b25f3be
tree4620fe3fac838057cf764bc8ac4efbf4202f6824
parent54260f6c87462edb992e1a96e901cf8ed582e38b
WindowSystem: Don't composite for every redraw request

Previously composition was done for every redraw request. But this
is incorrect as a layer/surface not part of the current render order
may have sent that request.

Correcting this exposes two hidden bugs. When the render order is
modified, there is no way to compare it against the old render order.
Hence we need to force a complete composition. And updating uniforms
of a shader also needs to force a composition.

Change-Id: Ie255c85fda24f6f30504617f19b62a23d77bbea5
12 files changed:
LayerManagerCommands/src/LayerRemoveCommand.cpp
LayerManagerCommands/src/ScreenSetRenderOrderCommand.cpp
LayerManagerCommands/src/ShaderSetUniformsCommand.cpp
LayerManagerPlugins/Renderers/Graphic/src/WindowSystems/WaylandBaseWindowSystem.cpp
LayerManagerPlugins/Renderers/Graphic/src/WindowSystems/X11WindowSystem.cpp
LayerManagerPlugins/Renderers/Platform/GLXRenderer/include/X11GLXRenderer.h
LayerManagerPlugins/Renderers/Platform/GLXRenderer/src/X11GLXRenderer.cpp
LayerManagerPlugins/Renderers/Platform/WaylandGLESRenderer/include/WaylandGLESRenderer.h
LayerManagerPlugins/Renderers/Platform/WaylandGLESRenderer/src/WaylandGLESRenderer.cpp
LayerManagerPlugins/Renderers/Platform/X11GLESRenderer/include/X11GLESRenderer.h
LayerManagerPlugins/Renderers/Platform/X11GLESRenderer/src/X11GLESRenderer.cpp
LayerManagerService/include/IRenderer.h