kwin/kwin.kcfg
Martin Gräßlin 17e0bad922 Drop OpenGL based color correction from KWin
Summary:
The feature has always been considered experimental. Unfortunately it is
completely unmaintained and hasn't seen any commits in years. It
requires kolor-manager to function, but that has not seen a release
based on frameworks yet. This makes it difficult to maintain. In fact I
have never been able from the introduction till now to setup a color
corrected system. One needs kolor-manager and oyranos and especially the
latter is hardly available on any linux distribution (e.g. not on the
Debian/Ubuntu systems).

Due to being unmaintained color correction in KWin did not keep up with
recent changes. Neither did it see any updates during the xlib->xcb
port, nor during the Wayland port. Especially the Wayland port with the
rendering changes make it unlikely to function correctly. E.g. Wayland
introduced a proper per-screen rendering, while color correction did a
"fake" per screen rendering. How that is going to work in combination is
something nobody ever tried. Now after the introduction of proper
per-screen rendering the solution would be to port color correction to
the new api, but that never happened.

Color correction also modified the shaders, but a newer shader API got
introduced some time ago. Whether the color correction shader support
that or not, is unknown to me. Also which shader language versions are
supported. I know it was based on 3d texture support, which back on
introduction was partially lacking in OpenGL ES. Nowadays that changed,
but color correction didn't update.

Last but not least it is completely X11 based and there is no work on
how to make it work with Wayland.

Given all the problems, especially the fact that it is unmaintained and
cannot be setup on my system, means to me that the only solution is to
remove it.

I'm open to having it reintroduced in future, but only if the
availability on Linux distributions gets addressed before. As long as
major linux distributions do not ship this feature, it should not be in
KWin. Given that I must say that it was a mistake to add it in the first
place and I need to point out that I was against the merge back then.

Reviewers: #kwin, #plasma

Subscribers: plasma-devel, kwin

Tags: #kwin

Differential Revision: https://phabricator.kde.org/D3402
2016-11-22 07:16:51 +01:00

307 lines
11 KiB
XML

<?xml version="1.0" encoding="UTF-8" ?>
<kcfg xmlns="http://www.kde.org/standards/kcfg/1.0"
xmlns:xsi="http://www.w3.org/2001/XMLSchema-instance"
xsi:schemaLocation="http://www.kde.org/standards/kcfg/1.0
http://www.kde.org/standards/kcfg/1.0/kcfg.xsd" >
<kcfgfile arg="true" />
<group name="MouseBindings">
<entry name="CommandTitlebarWheel" type="String">
<default>Switch to Window Tab to the Left/Right</default>
</entry>
<entry name="CommandAllKey" type="String">
<default>Alt</default>
</entry>
<entry name="CommandAllWheel" type="String">
<default>Nothing</default>
</entry>
<entry name="CommandActiveTitlebar1" type="String">
<default>Raise</default>
</entry>
<entry name="CommandActiveTitlebar2" type="String">
<default>Start Window Tab Drag</default>
</entry>
<entry name="CommandActiveTitlebar3" type="String">
<default>Operations menu</default>
</entry>
<entry name="CommandInactiveTitlebar1" type="String">
<default>Activate and raise</default>
</entry>
<entry name="CommandInactiveTitlebar2" type="String">
<default>Start Window Tab Drag</default>
</entry>
<entry name="CommandInactiveTitlebar3" type="String">
<default>Operations menu</default>
</entry>
<entry name="CommandWindow1" type="String">
<default>Activate, raise and pass click</default>
</entry>
<entry name="CommandWindow2" type="String">
<default>Activate and pass click</default>
</entry>
<entry name="CommandWindow3" type="String">
<default>Activate and pass click</default>
</entry>
<entry name="CommandWindowWheel" type="String">
<default>Scroll</default>
</entry>
<entry name="CommandAll1" type="String">
<default>Move</default>
</entry>
<entry name="CommandAll2" type="String">
<default>Toggle raise and lower</default>
</entry>
<entry name="CommandAll3" type="String">
<default>Resize</default>
</entry>
</group>
<group name="ElectricBorders">
<entry name="Top" type="String">
<default>None</default>
</entry>
<entry name="TopRight" type="String">
<default>None</default>
</entry>
<entry name="Right" type="String">
<default>None</default>
</entry>
<entry name="BottomRight" type="String">
<default>None</default>
</entry>
<entry name="Bottom" type="String">
<default>None</default>
</entry>
<entry name="BottomLeft" type="String">
<default>None</default>
</entry>
<entry name="Left" type="String">
<default>None</default>
</entry>
<entry name="TopLeft" type="String">
<default>None</default>
</entry>
</group>
<group name="Windows">
<entry name="GeometryTip" type="Bool">
<default>false</default>
</entry>
<entry name="CondensedTitle" type="Bool">
<default>false</default>
</entry>
<entry name="FocusPolicy" type="Enum">
<choices name="KWin::Options::FocusPolicy">
<choice name="ClickToFocus"/>
<choice name="FocusFollowsMouse"/>
<choice name="FocusUnderMouse"/>
<choice name="FocusStrictlyUnderMouse"/>
</choices>
<default>Options::ClickToFocus</default>
</entry>
<entry name="NextFocusPrefersMouse" type="Bool">
<default>false</default>
</entry>
<entry name="SeparateScreenFocus" type="Bool">
<default>false</default>
</entry>
<entry name="ActiveMouseScreen" type="Bool">
<default code="true">focusPolicy() != Options::ClickToFocus</default>
</entry>
<entry name="RollOverDesktops" type="Bool">
<default>true</default>
</entry>
<entry name="LegacyFullscreenSupport" type="Bool">
<default>false</default>
</entry>
<entry name="FocusStealingPreventionLevel" type="Int">
<default>1</default>
<min>0</min>
<max>4</max>
</entry>
<entry name="Placement" type="Enum">
<choices name="KWin::Placement::Policy">
<choice name="NoPlacement"/>
<choice name="Default"/>
<choice name="Unknown"/>
<choice name="Random"/>
<choice name="Smart"/>
<choice name="Cascade"/>
<choice name="Centered"/>
<choice name="ZeroCornered"/>
<choice name="UnderMouse"/>
<choice name="OnMainWindow"/>
<choice name="Maximizing"/>
</choices>
<default>Placement::Smart</default>
</entry>
<entry name="AutoRaise" type="Bool">
<default>false</default>
</entry>
<entry name="AutoRaiseInterval" type="Int">
<default>750</default>
</entry>
<entry name="DelayFocusInterval" type="Int">
<default>300</default>
</entry>
<entry name="ShadeHover" type="Bool">
<default>false</default>
</entry>
<entry name="ShadeHoverInterval" type="Int">
<default>250</default>
</entry>
<entry name="ClickRaise" type="Bool">
<default>true</default>
</entry>
<entry name="BorderSnapZone" type="Int">
<default>10</default>
</entry>
<entry name="WindowSnapZone" type="Int">
<default>10</default>
</entry>
<entry name="CenterSnapZone" type="Int">
<default>0</default>
</entry>
<entry name="SnapOnlyWhenOverlapping" type="Bool">
<default>false</default>
</entry>
<entry name="ElectricBorders" type="Int">
<default>0</default>
</entry>
<entry name="ElectricBorderDelay" type="Int">
<default>150</default>
</entry>
<entry name="ElectricBorderCooldown" type="Int">
<default>350</default>
</entry>
<entry name="ElectricBorderPushbackPixels" type="Int">
<default>1</default>
</entry>
<entry name="ElectricBorderMaximize" type="Bool">
<default>true</default>
</entry>
<entry name="ElectricBorderTiling" type="Bool">
<default>true</default>
</entry>
<entry name="ElectricBorderCornerRatio" type="Double">
<default>0.25</default>
<min>0.0</min>
<max>1.0</max>
</entry>
<entry name="TitlebarDoubleClickCommand" type="String">
<default>Maximize</default>
</entry>
<entry name="MaximizeButtonLeftClickCommand" type="String">
<default>Maximize</default>
</entry>
<entry name="MaximizeButtonMiddleClickCommand" type="String">
<default>Maximize (vertical only)</default>
</entry>
<entry name="MaximizeButtonRightClickCommand" type="String">
<default>Maximize (horizontal only)</default>
</entry>
<entry name="KillPingTimeout" type="Int">
<default>5000</default>
</entry>
<entry name="HideUtilityWindowsForInactive" type="Bool">
<default>true</default>
</entry>
<entry name="InactiveTabsSkipTaskbar" type="Bool">
<default>false</default>
</entry>
<entry name="AutogroupSimilarWindows" type="Bool">
<default>false</default>
</entry>
<entry name="AutogroupInForeground" type="Bool">
<default>true</default>
</entry>
<entry name="BorderlessMaximizedWindows" type="Bool">
<default>false</default>
</entry>
</group>
<group name="Compositing">
<entry name="MaxFPS" type="UInt">
<default>60</default>
</entry>
<entry name="RefreshRate" type="UInt">
<default>0</default>
</entry>
<entry name="VBlankTime" type="UInt">
<default>6144</default>
</entry>
<entry name="Backend" type="String">
<default>OpenGL</default>
</entry>
<entry name="Enabled" type="Bool">
<default>true</default>
</entry>
<entry name="GLTextureFilter" type="Int">
<default>2</default>
<min>-1</min>
<max>2</max>
</entry>
<entry name="GLStrictBinding" type="Bool">
<default>true</default>
</entry>
<entry name="GLLegacy" type="Bool">
<default>false</default>
</entry>
<entry name="XRenderSmoothScale" type="Bool">
<default>false</default>
</entry>
<entry name="HiddenPreviews" type="Int">
<default>5</default>
<min>4</min>
<max>6</max>
</entry>
<entry name="AnimationSpeed" type="Int">
<default>3</default>
<min>0</min>
<max>6</max>
</entry>
<entry name="GLPlatformInterface" type="String">
<default>glx</default>
</entry>
<entry name="WindowsBlockCompositing" type="Bool">
<default>true</default>
</entry>
</group>
<group name="TabBox">
<entry name="ShowDelay" type="Bool">
<default>true</default>
</entry>
<entry name="DelayTime" type="Int">
<default>90</default>
</entry>
<entry name="DesktopMode" type="UInt">
<default>1</default>
</entry>
<entry name="ActivitiesMode" type="UInt">
<default>1</default>
</entry>
<entry name="ApplicationsMode" type="UInt">
<default>0</default>
</entry>
<entry name="MinimizedMode" type="UInt">
<default>0</default>
</entry>
<entry name="ShowDesktopMode" type="UInt">
<default>0</default>
</entry>
<entry name="MultiScreenMode" type="UInt">
<default>0</default>
</entry>
<entry name="SwitchingMode" type="UInt">
<default>0</default>
</entry>
<entry name="ShowOutline" type="Bool">
<default>true</default>
</entry>
<entry name="ShowTabBox" type="Bool">
<default>true</default>
</entry>
<entry name="HighlightWindows" type="Bool">
<default>true</default>
</entry>
<entry name="LayoutName" type="String">
<default>thumbnails</default>
</entry>
</group>
</kcfg>