From 5dc513e6a409c623eab8464c8e7e3f0189285b90 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Martin=20Gr=C3=A4=C3=9Flin?= Date: Fri, 17 Sep 2010 17:46:34 +0000 Subject: [PATCH] Adding checkbox for unredirecting fullscreen windows. FEATURE: 232532 CCBUG: 177495 FIXED-IN: 4.6.0 svn path=/trunk/KDE/kdebase/workspace/; revision=1176432 --- kcmkwin/kwincompositing/main.cpp | 4 ++++ kcmkwin/kwincompositing/main.ui | 28 +++++++++++++++++++--------- 2 files changed, 23 insertions(+), 9 deletions(-) diff --git a/kcmkwin/kwincompositing/main.cpp b/kcmkwin/kwincompositing/main.cpp index ad0950493b..3952fec6b3 100644 --- a/kcmkwin/kwincompositing/main.cpp +++ b/kcmkwin/kwincompositing/main.cpp @@ -119,6 +119,7 @@ KWinCompositingConfig::KWinCompositingConfig(QWidget *parent, const QVariantList connect(ui.compositingType, SIGNAL(currentIndexChanged(int)), this, SLOT(changed())); connect(ui.windowThumbnails, SIGNAL(activated(int)), this, SLOT(changed())); connect(ui.disableChecks, SIGNAL(toggled(bool)), this, SLOT(changed())); + connect(ui.unredirectFullscreen , SIGNAL(toggled(bool)), this, SLOT(changed())); connect(ui.glMode, SIGNAL(currentIndexChanged(int)), this, SLOT(changed())); connect(ui.glTextureFilter, SIGNAL(currentIndexChanged(int)), this, SLOT(changed())); connect(ui.glDirect, SIGNAL(toggled(bool)), this, SLOT(changed())); @@ -443,6 +444,7 @@ void KWinCompositingConfig::loadAdvancedTab() else // shown, or default ui.windowThumbnails->setCurrentIndex( 1 ); ui.disableChecks->setChecked( config.readEntry( "DisableChecks", false )); + ui.unredirectFullscreen->setChecked( config.readEntry( "UnredirectFullscreen", true )); QString glMode = config.readEntry("GLMode", "TFP"); ui.glMode->setCurrentIndex((glMode == "TFP") ? 0 : ((glMode == "SHM") ? 1 : 2)); @@ -607,6 +609,7 @@ bool KWinCompositingConfig::saveAdvancedTab() config.writeEntry("Backend", (ui.compositingType->currentIndex() == OPENGL_INDEX) ? "OpenGL" : "XRender"); config.writeEntry("HiddenPreviews", hps[ ui.windowThumbnails->currentIndex() ] ); config.writeEntry("DisableChecks", ui.disableChecks->isChecked()); + config.writeEntry( "UnredirectFullscreen", ui.unredirectFullscreen->isChecked() ); config.writeEntry("GLMode", glModes[ui.glMode->currentIndex()]); config.writeEntry("GLTextureFilter", ui.glTextureFilter->currentIndex()); @@ -752,6 +755,7 @@ void KWinCompositingConfig::defaults() ui.compositingType->setCurrentIndex( 0 ); ui.windowThumbnails->setCurrentIndex( 1 ); ui.disableChecks->setChecked( false ); + ui.unredirectFullscreen->setChecked( true ); ui.glMode->setCurrentIndex( 0 ); ui.glTextureFilter->setCurrentIndex( 1 ); ui.glDirect->setChecked( mDefaultPrefs.enableDirectRendering() ); diff --git a/kcmkwin/kwincompositing/main.ui b/kcmkwin/kwincompositing/main.ui index 4943ae5383..91267e0458 100644 --- a/kcmkwin/kwincompositing/main.ui +++ b/kcmkwin/kwincompositing/main.ui @@ -404,7 +404,7 @@ - + Enabling this option allows compositing to be activated even if some of the internal checks fail. Doing so may make the whole desktop unusable and its use is not recommened. Use only if KWin refuses to activate compositing on a system that should be capable of compositing. @@ -415,7 +415,7 @@ - + OpenGL Options @@ -532,7 +532,7 @@ - + XRender Options @@ -548,7 +548,7 @@ - + Qt::Vertical @@ -561,6 +561,16 @@ + + + + Improves performance of fullscreen applications like games and video players. This option can cause flickering when another window is opened above the fullscreen window. + + + Suspend desktop effects for fullscreen windows + + + @@ -568,16 +578,16 @@ - - KComboBox - QComboBox -
kcombobox.h
-
KTitleWidget QWidget
ktitlewidget.h
+ + KComboBox + QComboBox +
kcombobox.h
+
KPluginSelector QWidget