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 ###############
|
########### 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_ui_files(kcm_kwincompositing_PART_SRCS advanced.ui main.ui)
|
||||||
kde4_add_plugin(kcm_kwincompositing ${kcm_kwincompositing_PART_SRCS})
|
kde4_add_plugin(kcm_kwincompositing ${kcm_kwincompositing_PART_SRCS})
|
||||||
target_link_libraries(kcm_kwincompositing ${KDE4_KUTILS_LIBS})
|
target_link_libraries(kcm_kwincompositing ${KDE4_KUTILS_LIBS})
|
||||||
install(TARGETS kcm_kwincompositing DESTINATION ${PLUGIN_INSTALL_DIR} )
|
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 ###############
|
########### install files ###############
|
||||||
|
|
||||||
|
|
|
@ -12,13 +12,16 @@ License. See the file "COPYING" for the exact licensing terms.
|
||||||
#include "advanced.moc"
|
#include "advanced.moc"
|
||||||
#include <klocale.h>
|
#include <klocale.h>
|
||||||
|
|
||||||
|
#include "compositingprefs.h"
|
||||||
|
|
||||||
namespace KWin
|
namespace KWin
|
||||||
{
|
{
|
||||||
|
|
||||||
KWinAdvancedCompositingOptions::KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config) :
|
KWinAdvancedCompositingOptions::KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config, CompositingPrefs* defaults) :
|
||||||
KDialog(parent)
|
KDialog(parent)
|
||||||
{
|
{
|
||||||
mKWinConfig = config;
|
mKWinConfig = config;
|
||||||
|
mDefaultPrefs = defaults;
|
||||||
|
|
||||||
setCaption(i18n("Advanced compositing options"));
|
setCaption(i18n("Advanced compositing options"));
|
||||||
setButtons(KDialog::Ok | KDialog::Cancel | KDialog::Apply);
|
setButtons(KDialog::Ok | KDialog::Cancel | KDialog::Apply);
|
||||||
|
@ -66,8 +69,8 @@ void KWinAdvancedCompositingOptions::load()
|
||||||
QString glMode = config.readEntry("GLMode", "TFP");
|
QString glMode = config.readEntry("GLMode", "TFP");
|
||||||
ui.glMode->setCurrentIndex((glMode == "TFP") ? 0 : ((glMode == "SHM") ? 1 : 2));
|
ui.glMode->setCurrentIndex((glMode == "TFP") ? 0 : ((glMode == "SHM") ? 1 : 2));
|
||||||
ui.glTextureFilter->setCurrentIndex(config.readEntry("GLTextureFilter", 1));
|
ui.glTextureFilter->setCurrentIndex(config.readEntry("GLTextureFilter", 1));
|
||||||
ui.glDirect->setChecked(config.readEntry("GLDirect", true));
|
ui.glDirect->setChecked(config.readEntry("GLDirect", mDefaultPrefs->enableDirectRendering()));
|
||||||
ui.glVSync->setChecked(config.readEntry("GLVSync", true));
|
ui.glVSync->setChecked(config.readEntry("GLVSync", mDefaultPrefs->enableVSync()));
|
||||||
}
|
}
|
||||||
|
|
||||||
void KWinAdvancedCompositingOptions::save()
|
void KWinAdvancedCompositingOptions::save()
|
||||||
|
|
|
@ -20,11 +20,13 @@ License. See the file "COPYING" for the exact licensing terms.
|
||||||
namespace KWin
|
namespace KWin
|
||||||
{
|
{
|
||||||
|
|
||||||
|
class CompositingPrefs;
|
||||||
|
|
||||||
class KWinAdvancedCompositingOptions : public KDialog
|
class KWinAdvancedCompositingOptions : public KDialog
|
||||||
{
|
{
|
||||||
Q_OBJECT
|
Q_OBJECT
|
||||||
public:
|
public:
|
||||||
KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config);
|
KWinAdvancedCompositingOptions(QWidget* parent, KSharedConfigPtr config, CompositingPrefs* defaults);
|
||||||
virtual ~KWinAdvancedCompositingOptions();
|
virtual ~KWinAdvancedCompositingOptions();
|
||||||
|
|
||||||
void load();
|
void load();
|
||||||
|
@ -40,6 +42,7 @@ class KWinAdvancedCompositingOptions : public KDialog
|
||||||
private:
|
private:
|
||||||
KSharedConfigPtr mKWinConfig;
|
KSharedConfigPtr mKWinConfig;
|
||||||
Ui::KWinAdvancedCompositingOptions ui;
|
Ui::KWinAdvancedCompositingOptions ui;
|
||||||
|
CompositingPrefs* mDefaultPrefs;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
|
@ -42,6 +42,10 @@ KWinCompositingConfig::KWinCompositingConfig(QWidget *parent, const QVariantList
|
||||||
ui.setupUi(this);
|
ui.setupUi(this);
|
||||||
ui.tabWidget->setCurrentIndex(0);
|
ui.tabWidget->setCurrentIndex(0);
|
||||||
|
|
||||||
|
// Driver-specific config detection
|
||||||
|
mDefaultPrefs.detect();
|
||||||
|
|
||||||
|
|
||||||
connect(ui.advancedOptions, SIGNAL(clicked()), this, SLOT(showAdvancedOptions()));
|
connect(ui.advancedOptions, SIGNAL(clicked()), this, SLOT(showAdvancedOptions()));
|
||||||
connect(ui.useCompositing, SIGNAL(toggled(bool)), this, SLOT(compositingEnabled(bool)));
|
connect(ui.useCompositing, SIGNAL(toggled(bool)), this, SLOT(compositingEnabled(bool)));
|
||||||
|
|
||||||
|
@ -83,7 +87,7 @@ void KWinCompositingConfig::compositingEnabled(bool enabled)
|
||||||
|
|
||||||
void KWinCompositingConfig::showAdvancedOptions()
|
void KWinCompositingConfig::showAdvancedOptions()
|
||||||
{
|
{
|
||||||
KWinAdvancedCompositingOptions* dialog = new KWinAdvancedCompositingOptions(this, mKWinConfig);
|
KWinAdvancedCompositingOptions* dialog = new KWinAdvancedCompositingOptions(this, mKWinConfig, &mDefaultPrefs);
|
||||||
|
|
||||||
dialog->show();
|
dialog->show();
|
||||||
connect(dialog, SIGNAL(configSaved()), this, SLOT(configChanged()));
|
connect(dialog, SIGNAL(configSaved()), this, SLOT(configChanged()));
|
||||||
|
@ -110,7 +114,7 @@ void KWinCompositingConfig::load()
|
||||||
mKWinConfig->reparseConfiguration();
|
mKWinConfig->reparseConfiguration();
|
||||||
|
|
||||||
KConfigGroup config(mKWinConfig, "Compositing");
|
KConfigGroup config(mKWinConfig, "Compositing");
|
||||||
ui.useCompositing->setChecked(config.readEntry("Enabled", false));
|
ui.useCompositing->setChecked(config.readEntry("Enabled", mDefaultPrefs.enableCompositing()));
|
||||||
|
|
||||||
// Load effect settings
|
// Load effect settings
|
||||||
config.changeGroup("Plugins");
|
config.changeGroup("Plugins");
|
||||||
|
@ -169,7 +173,7 @@ void KWinCompositingConfig::configChanged()
|
||||||
void KWinCompositingConfig::defaults()
|
void KWinCompositingConfig::defaults()
|
||||||
{
|
{
|
||||||
kDebug() ;
|
kDebug() ;
|
||||||
ui.useCompositing->setChecked(false);
|
ui.useCompositing->setChecked(mDefaultPrefs.enableCompositing());
|
||||||
ui.effectWinManagement->setChecked(true);
|
ui.effectWinManagement->setChecked(true);
|
||||||
ui.effectShadows->setChecked(true);
|
ui.effectShadows->setChecked(true);
|
||||||
ui.effectAnimations->setChecked(true);
|
ui.effectAnimations->setChecked(true);
|
||||||
|
|
|
@ -17,6 +17,7 @@ License. See the file "COPYING" for the exact licensing terms.
|
||||||
#include <ksharedconfig.h>
|
#include <ksharedconfig.h>
|
||||||
|
|
||||||
#include "ui_main.h"
|
#include "ui_main.h"
|
||||||
|
#include "compositingprefs.h"
|
||||||
|
|
||||||
class KPluginSelector;
|
class KPluginSelector;
|
||||||
|
|
||||||
|
@ -49,6 +50,7 @@ class KWinCompositingConfig : public KCModule
|
||||||
private:
|
private:
|
||||||
KSharedConfigPtr mKWinConfig;
|
KSharedConfigPtr mKWinConfig;
|
||||||
Ui::KWinCompositingConfig ui;
|
Ui::KWinCompositingConfig ui;
|
||||||
|
CompositingPrefs mDefaultPrefs;
|
||||||
};
|
};
|
||||||
|
|
||||||
} // namespace
|
} // namespace
|
||||||
|
|
Loading…
Reference in New Issue