58668e52a0
The idea is to warn the user that changing the settings might break the setup when we know it could be dangerous. The following cases are considered: * Scale filter Accurate * Tearing prevention * keep window thumbnail always * EGL if EGL and GLX are available * unredirect fullscreen not working on all hardware In addition the OpenGL is Unsafe warning is turned int a KMessageWidget which is also used for all the other warnings. REVIEW: 118494
369 lines
10 KiB
XML
369 lines
10 KiB
XML
<?xml version="1.0" encoding="UTF-8"?>
|
|
<ui version="4.0">
|
|
<class>CompositingForm</class>
|
|
<widget class="QWidget" name="CompositingForm">
|
|
<property name="geometry">
|
|
<rect>
|
|
<x>0</x>
|
|
<y>0</y>
|
|
<width>402</width>
|
|
<height>335</height>
|
|
</rect>
|
|
</property>
|
|
<property name="windowTitle">
|
|
<string>Form</string>
|
|
</property>
|
|
<layout class="QFormLayout" name="formLayout">
|
|
<property name="fieldGrowthPolicy">
|
|
<enum>QFormLayout::AllNonFixedFieldsGrow</enum>
|
|
</property>
|
|
<item row="1" column="0" colspan="2">
|
|
<widget class="QCheckBox" name="compositingEnabled">
|
|
<property name="text">
|
|
<string>Enable compositor on startup</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="0">
|
|
<widget class="QLabel" name="label">
|
|
<property name="text">
|
|
<string>Animation speed:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="2" column="1">
|
|
<layout class="QVBoxLayout" name="verticalLayout_3">
|
|
<item>
|
|
<widget class="QSlider" name="animationSpeed">
|
|
<property name="maximum">
|
|
<number>6</number>
|
|
</property>
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
<property name="tickPosition">
|
|
<enum>QSlider::TicksBelow</enum>
|
|
</property>
|
|
<property name="tickInterval">
|
|
<number>1</number>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<layout class="QHBoxLayout" name="horizontalLayout">
|
|
<item>
|
|
<widget class="QLabel" name="label_3">
|
|
<property name="text">
|
|
<string>Instant</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<spacer name="horizontalSpacer">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
<property name="sizeHint" stdset="0">
|
|
<size>
|
|
<width>40</width>
|
|
<height>20</height>
|
|
</size>
|
|
</property>
|
|
</spacer>
|
|
</item>
|
|
<item>
|
|
<widget class="QLabel" name="label_4">
|
|
<property name="text">
|
|
<string>Very slow</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
<item row="4" column="0">
|
|
<widget class="QLabel" name="glScaleFilterLabel">
|
|
<property name="text">
|
|
<string>Scale method:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="4" column="1">
|
|
<widget class="QComboBox" name="glScaleFilter">
|
|
<item>
|
|
<property name="text">
|
|
<string>Crisp</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Smooth</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Accurate</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="0">
|
|
<widget class="QLabel" name="xrScaleFilterLabel">
|
|
<property name="text">
|
|
<string>Scale method:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="5" column="1">
|
|
<widget class="QComboBox" name="xrScaleFilter">
|
|
<item>
|
|
<property name="text">
|
|
<string>Crisp</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Smooth (slower)</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="6" column="0" colspan="2">
|
|
<widget class="Line" name="line">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="7" column="0">
|
|
<widget class="QLabel" name="label_2">
|
|
<property name="text">
|
|
<string>Rendering backend:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="7" column="1">
|
|
<widget class="QComboBox" name="type"/>
|
|
</item>
|
|
<item row="8" column="0">
|
|
<widget class="QLabel" name="openGLPlatformInterfaceLabel">
|
|
<property name="text">
|
|
<string>OpenGL interface:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="8" column="1">
|
|
<widget class="QComboBox" name="openGLPlatformInterface"/>
|
|
</item>
|
|
<item row="10" column="0">
|
|
<widget class="QLabel" name="label_5">
|
|
<property name="text">
|
|
<string>Tearing prevention ("vsync"):</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="10" column="1">
|
|
<widget class="QComboBox" name="tearingPrevention">
|
|
<item>
|
|
<property name="text">
|
|
<string>Never</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Automatic</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Only when cheap</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Full screen repaints</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Re-use screen content</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="11" column="0">
|
|
<widget class="QLabel" name="label_6">
|
|
<property name="text">
|
|
<string>Keep window thumbnails:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="11" column="1">
|
|
<widget class="QComboBox" name="windowThumbnail">
|
|
<item>
|
|
<property name="text">
|
|
<string>Always</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Only for Shown Windows</string>
|
|
</property>
|
|
</item>
|
|
<item>
|
|
<property name="text">
|
|
<string>Never</string>
|
|
</property>
|
|
</item>
|
|
</widget>
|
|
</item>
|
|
<item row="13" column="0">
|
|
<widget class="QLabel" name="label_8">
|
|
<property name="text">
|
|
<string>Expert:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="13" column="1">
|
|
<widget class="QCheckBox" name="unredirectFullscreen">
|
|
<property name="text">
|
|
<string>Suspend compositor for full screen windows</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="14" column="0">
|
|
<widget class="QLabel" name="label_9">
|
|
<property name="text">
|
|
<string>Experimental:</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="14" column="1">
|
|
<widget class="QCheckBox" name="colorCorrection">
|
|
<property name="text">
|
|
<string>Enable color correction</string>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="9" column="0" colspan="2">
|
|
<widget class="Line" name="line_2">
|
|
<property name="orientation">
|
|
<enum>Qt::Horizontal</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item row="0" column="0" colspan="2">
|
|
<layout class="QVBoxLayout" name="verticalLayout_4">
|
|
<item>
|
|
<widget class="KMessageWidget" name="glCrashedWarning">
|
|
<property name="text">
|
|
<string>OpenGL compositing (the default) has crashed KWin in the past.
|
|
This was most likely due to a driver bug.
|
|
If you think that you have meanwhile upgraded to a stable driver,
|
|
you can reset this protection but be aware that this might result in an immediate crash!
|
|
Alternatively, you might want to use the XRender backend instead.</string>
|
|
</property>
|
|
<property name="wordWrap">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="messageType">
|
|
<enum>KMessageWidget::Warning</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="KMessageWidget" name="interfaceWarning">
|
|
<property name="text">
|
|
<string>EGL is not supported by all OpenGL drivers. If not supported the Compositor will be disabled.</string>
|
|
</property>
|
|
<property name="wordWrap">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="messageType">
|
|
<enum>KMessageWidget::Warning</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="KMessageWidget" name="scaleWarning">
|
|
<property name="text">
|
|
<string>Scale method "Accurate" is not supported by all hardware and can cause performance regressions and rendering artifacts.</string>
|
|
</property>
|
|
<property name="wordWrap">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="messageType">
|
|
<enum>KMessageWidget::Warning</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="KMessageWidget" name="tearingWarning">
|
|
<property name="wordWrap">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="messageType">
|
|
<enum>KMessageWidget::Warning</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="KMessageWidget" name="windowThumbnailWarning">
|
|
<property name="text">
|
|
<string>Keeping the window thumbnail always interferes with the minimized state of windows. This can result in windows not suspending their work when minimized.</string>
|
|
</property>
|
|
<property name="wordWrap">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="messageType">
|
|
<enum>KMessageWidget::Warning</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
<item>
|
|
<widget class="KMessageWidget" name="unredirectInformation">
|
|
<property name="text">
|
|
<string>Having full screen windows bypass the compositor is not supported on every hardware.</string>
|
|
</property>
|
|
<property name="wordWrap">
|
|
<bool>true</bool>
|
|
</property>
|
|
<property name="visible">
|
|
<bool>false</bool>
|
|
</property>
|
|
<property name="messageType">
|
|
<enum>KMessageWidget::Information</enum>
|
|
</property>
|
|
</widget>
|
|
</item>
|
|
</layout>
|
|
</item>
|
|
</layout>
|
|
</widget>
|
|
<customwidgets>
|
|
<customwidget>
|
|
<class>KMessageWidget</class>
|
|
<extends>QFrame</extends>
|
|
<header location="global">kmessagewidget.h</header>
|
|
<container>1</container>
|
|
</customwidget>
|
|
</customwidgets>
|
|
<resources/>
|
|
<connections/>
|
|
</ui>
|