Revision 9bd4733...

Go back to digest for 18th November 2012

Features in KDE Base

Casian Andrei committed changes in [kde-workspace] /:

Implement color correction (per output)

Add an option to kcmcompositing in the 'Advanced' tab, to enable or
disable color correction. It is specified that it's experimental and it
needs Kolor Manager.

Before painting for a particular screen, ColorCorrection::setupForOutput
should be called.

A screen property is added for WindowPaintData.

In kwinglutils, The fragment shaders are intercepted before being
compiled and they get a couple of lines of code inserted in order to do
the color correction. This happens only when color correction is enabled, of
course.

For D-Bus communication with KolorServer, everything is async.

The implementation basically manages a set of color lookup tables for
different outputs and for different window regions. These are taken via
D-Bus. Each lookup table has around 700 KB.

This commit reintroduces the changes from the former merge with the
"color2" branch. In this form, it can be easily reverted.

REVIEW: 106141

File Changes

Added 3 files
  • /libkwineffects
  •   kwin/kwinglcolorcorrection.cpp
  •   kwin/kwinglcolorcorrection.h
  •   kwin/kwinglcolorcorrection_p.h
Modified 15 files
  •   kwin/options.cpp
  •   kwin/options.h
  •   kwin/scene.cpp
  •   kwin/scene.h
  •   kwin/scene_opengl.cpp
  •   kwin/scene_opengl.h
  •   kwin/libkwineffects/CMakeLists.txt
  •   kwin/libkwineffects/kwineffects.cpp
  •   kwin/libkwineffects/kwineffects.h
  •   kwin/libkwineffects/kwinglplatform.cpp
  •   kwin/libkwineffects/kwinglplatform.h
  •   kwin/libkwineffects/kwinglutils.cpp
  •   kwin/libkwineffects/kwinglutils.h
  •   kwin/kcmkwin/kwincompositing/main.cpp
  •   kwin/kcmkwin/kwincompositing/main.ui
18 files changed in total