Use CompositingPrefs here as well for default options autodetection
svn path=/trunk/KDE/kdebase/workspace/; revision=714012icc-effect-5.14.5
parent
59f21e39fe
commit
9f95efdc27
|
@ -1,11 +1,26 @@
|
|||
########### next target ###############
|
||||
|
||||
set(kcm_kwincompositing_PART_SRCS advanced.cpp main.cpp )
|
||||
include_directories( ${KDEBASE_WORKSPACE_SOURCE_DIR}/kwin )
|
||||
|
||||
set(kcm_kwincompositing_PART_SRCS
|
||||
advanced.cpp
|
||||
main.cpp
|
||||
${KDEBASE_WORKSPACE_SOURCE_DIR}/kwin/compositingprefs.cpp )
|
||||
kde4_add_ui_files(kcm_kwincompositing_PART_SRCS advanced.ui main.ui)
|
||||
kde4_add_plugin(kcm_kwincompositing ${kcm_kwincompositing_PART_SRCS})
|
||||
target_link_libraries(kcm_kwincompositing ${KDE4_KUTILS_LIBS})
|
||||
install(TARGETS kcm_kwincompositing DESTINATION ${PLUGIN_INSTALL_DIR} )
|
||||
|
||||
# CompositingPrefs uses OpenGL
|
||||
if(OPENGL_FOUND)
|
||||
target_link_libraries(kcm_kwincompositing ${OPENGL_gl_LIBRARY})
|
||||
# -ldl used by OpenGL code
|
||||
find_library(DL_LIBRARY dl)
|
||||
if (DL_LIBRARY)
|
||||
target_link_libraries(kcm_kwincompositing ${DL_LIBRARY})
|
||||
endif(DL_LIBRARY)
|
||||
endif(OPENGL_FOUND)
|
||||
|
||||
|
||||
########### install files ###############
|
||||
|
||||
|
|
|
@ -12,13 +12,16 @@ License. See the file "COPYING" for the exact licensing terms.
|
|||
#include "advanced.moc"
|
||||
#include <klocale.h>
|
||||
|
||||
#include "compositingprefs.h"
|
||||
|
||||
namespace KWin
|
||||
{
|
||||
|
||||
KWinAdvancedCompositingOptions::KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config) :
|
||||
KWinAdvancedCompositingOptions::KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config, CompositingPrefs* defaults) :
|
||||
KDialog(parent)
|
||||
{
|
||||
mKWinConfig = config;
|
||||
mDefaultPrefs = defaults;
|
||||
|
||||
setCaption(i18n("Advanced compositing options"));
|
||||
setButtons(KDialog::Ok | KDialog::Cancel | KDialog::Apply);
|
||||
|
@ -66,8 +69,8 @@ void KWinAdvancedCompositingOptions::load()
|
|||
QString glMode = config.readEntry("GLMode", "TFP");
|
||||
ui.glMode->setCurrentIndex((glMode == "TFP") ? 0 : ((glMode == "SHM") ? 1 : 2));
|
||||
ui.glTextureFilter->setCurrentIndex(config.readEntry("GLTextureFilter", 1));
|
||||
ui.glDirect->setChecked(config.readEntry("GLDirect", true));
|
||||
ui.glVSync->setChecked(config.readEntry("GLVSync", true));
|
||||
ui.glDirect->setChecked(config.readEntry("GLDirect", mDefaultPrefs->enableDirectRendering()));
|
||||
ui.glVSync->setChecked(config.readEntry("GLVSync", mDefaultPrefs->enableVSync()));
|
||||
}
|
||||
|
||||
void KWinAdvancedCompositingOptions::save()
|
||||
|
|
|
@ -20,11 +20,13 @@ License. See the file "COPYING" for the exact licensing terms.
|
|||
namespace KWin
|
||||
{
|
||||
|
||||
class CompositingPrefs;
|
||||
|
||||
class KWinAdvancedCompositingOptions : public KDialog
|
||||
{
|
||||
Q_OBJECT
|
||||
public:
|
||||
KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config);
|
||||
KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config, CompositingPrefs* defaults);
|
||||
virtual ~KWinAdvancedCompositingOptions();
|
||||
|
||||
void load();
|
||||
|
@ -40,6 +42,7 @@ class KWinAdvancedCompositingOptions : public KDialog
|
|||
private:
|
||||
KSharedConfigPtr mKWinConfig;
|
||||
Ui::KWinAdvancedCompositingOptions ui;
|
||||
CompositingPrefs* mDefaultPrefs;
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
|
|
@ -42,6 +42,10 @@ KWinCompositingConfig::KWinCompositingConfig(QWidget *parent, const QVariantList
|
|||
ui.setupUi(this);
|
||||
ui.tabWidget->setCurrentIndex(0);
|
||||
|
||||
// Driver-specific config detection
|
||||
mDefaultPrefs.detect();
|
||||
|
||||
|
||||
connect(ui.advancedOptions, SIGNAL(clicked()), this, SLOT(showAdvancedOptions()));
|
||||
connect(ui.useCompositing, SIGNAL(toggled(bool)), this, SLOT(compositingEnabled(bool)));
|
||||
|
||||
|
@ -83,7 +87,7 @@ void KWinCompositingConfig::compositingEnabled(bool enabled)
|
|||
|
||||
void KWinCompositingConfig::showAdvancedOptions()
|
||||
{
|
||||
KWinAdvancedCompositingOptions* dialog = new KWinAdvancedCompositingOptions(this, mKWinConfig);
|
||||
KWinAdvancedCompositingOptions* dialog = new KWinAdvancedCompositingOptions(this, mKWinConfig, &mDefaultPrefs);
|
||||
|
||||
dialog->show();
|
||||
connect(dialog, SIGNAL(configSaved()), this, SLOT(configChanged()));
|
||||
|
@ -110,7 +114,7 @@ void KWinCompositingConfig::load()
|
|||
mKWinConfig->reparseConfiguration();
|
||||
|
||||
KConfigGroup config(mKWinConfig, "Compositing");
|
||||
ui.useCompositing->setChecked(config.readEntry("Enabled", false));
|
||||
ui.useCompositing->setChecked(config.readEntry("Enabled", mDefaultPrefs.enableCompositing()));
|
||||
|
||||
// Load effect settings
|
||||
config.changeGroup("Plugins");
|
||||
|
@ -169,7 +173,7 @@ void KWinCompositingConfig::configChanged()
|
|||
void KWinCompositingConfig::defaults()
|
||||
{
|
||||
kDebug() ;
|
||||
ui.useCompositing->setChecked(false);
|
||||
ui.useCompositing->setChecked(mDefaultPrefs.enableCompositing());
|
||||
ui.effectWinManagement->setChecked(true);
|
||||
ui.effectShadows->setChecked(true);
|
||||
ui.effectAnimations->setChecked(true);
|
||||
|
|
|
@ -17,6 +17,7 @@ License. See the file "COPYING" for the exact licensing terms.
|
|||
#include <ksharedconfig.h>
|
||||
|
||||
#include "ui_main.h"
|
||||
#include "compositingprefs.h"
|
||||
|
||||
class KPluginSelector;
|
||||
|
||||
|
@ -49,6 +50,7 @@ class KWinCompositingConfig : public KCModule
|
|||
private:
|
||||
KSharedConfigPtr mKWinConfig;
|
||||
Ui::KWinCompositingConfig ui;
|
||||
CompositingPrefs mDefaultPrefs;
|
||||
};
|
||||
|
||||
} // namespace
|
||||
|
|
Loading…
Reference in New Issue