summaryrefslogtreecommitdiffstats
path: root/kcontrol/kdm
diff options
context:
space:
mode:
authortpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-08-13 02:31:25 +0000
committertpearson <tpearson@283d02a7-25f6-0310-bc7c-ecb5cbfe19da>2011-08-13 02:31:25 +0000
commitf50ce50331053efe6b06b3917bf07a5a64398736 (patch)
tree3b6de07bf3f62b177816725b61650cf4589a9db0 /kcontrol/kdm
parentecb591aa8446dd7b133e1674287924a5e2c0ac14 (diff)
downloadtdebase-f50ce50331053efe6b06b3917bf07a5a64398736.tar.gz
tdebase-f50ce50331053efe6b06b3917bf07a5a64398736.zip
Add Xorg composition support to kdm
KDM composition can be enabled in the control center When enabled, it provides seamless composited logins to Trinity sessions It also gets rid of the remaining artifacts in the themed kdm login screen git-svn-id: svn://anonsvn.kde.org/home/kde/branches/trinity/kdebase@1246834 283d02a7-25f6-0310-bc7c-ecb5cbfe19da
Diffstat (limited to 'kcontrol/kdm')
-rw-r--r--kcontrol/kdm/kdm-appear.cpp30
-rw-r--r--kcontrol/kdm/kdm-appear.h1
2 files changed, 25 insertions, 6 deletions
diff --git a/kcontrol/kdm/kdm-appear.cpp b/kcontrol/kdm/kdm-appear.cpp
index 08c412c26..73227ca51 100644
--- a/kcontrol/kdm/kdm-appear.cpp
+++ b/kcontrol/kdm/kdm-appear.cpp
@@ -169,14 +169,25 @@ KDMAppearanceWidget::KDMAppearanceWidget(TQWidget *parent, const char *name)
grid->addLayout(hglay, 3, 1);
hglay->setColStretch(3, 1);
+ compositorcombo = new KBackedComboBox(group);
+ compositorcombo->insertItem( "", i18n("None") );
+ compositorcombo->insertItem( "kompmgr", i18n("Trinity compositor") );
+ label = new TQLabel(compositorcombo, i18n("Compositor:"), group);
+ connect(compositorcombo, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
+ hglay->addWidget(label, 0, 0);
+ hglay->addWidget(compositorcombo, 0, 1);
+ wtstr = i18n("Choose a compositor to be used in KDM. Note that the chosen compositor will continue to run after login.");
+ TQWhatsThis::add( label, wtstr );
+ TQWhatsThis::add( compositorcombo, wtstr );
+
guicombo = new KBackedComboBox(group);
guicombo->insertItem( "", i18n("<default>") );
loadGuiStyles(guicombo);
guicombo->listBox()->sort();
label = new TQLabel(guicombo, i18n("GUI s&tyle:"), group);
connect(guicombo, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
- hglay->addWidget(label, 0, 0);
- hglay->addWidget(guicombo, 0, 1);
+ hglay->addWidget(label, 1, 0);
+ hglay->addWidget(guicombo, 1, 1);
wtstr = i18n("You can choose a basic GUI style here that will be "
"used by KDM only.");
TQWhatsThis::add( label, wtstr );
@@ -188,8 +199,8 @@ KDMAppearanceWidget::KDMAppearanceWidget(TQWidget *parent, const char *name)
colcombo->listBox()->sort();
label = new TQLabel(colcombo, i18n("&Color scheme:"), group);
connect(colcombo, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
- hglay->addWidget(label, 1, 0);
- hglay->addWidget(colcombo, 1, 1);
+ hglay->addWidget(label, 2, 0);
+ hglay->addWidget(colcombo, 2, 1);
wtstr = i18n("You can choose a basic Color Scheme here that will be "
"used by KDM only.");
TQWhatsThis::add( label, wtstr );
@@ -201,8 +212,8 @@ KDMAppearanceWidget::KDMAppearanceWidget(TQWidget *parent, const char *name)
echocombo->insertItem("ThreeStars", i18n("Three Stars"));
label = new TQLabel(echocombo, i18n("Echo &mode:"), group);
connect(echocombo, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
- hglay->addWidget(label, 2, 0);
- hglay->addWidget(echocombo, 2, 1);
+ hglay->addWidget(label, 3, 0);
+ hglay->addWidget(echocombo, 3, 1);
wtstr = i18n("You can choose whether and how KDM shows your password when you type it.");
TQWhatsThis::add( label, wtstr );
TQWhatsThis::add( echocombo, wtstr );
@@ -241,6 +252,7 @@ void KDMAppearanceWidget::makeReadOnly()
logoRadio->setEnabled(false);
xLineEdit->setEnabled(false);
yLineEdit->setEnabled(false);
+ compositorcombo->setEnabled(false);
guicombo->setEnabled(false);
colcombo->setEnabled(false);
echocombo->setEnabled(false);
@@ -425,6 +437,8 @@ void KDMAppearanceWidget::save()
config->writeEntry("LogoPixmap", KGlobal::iconLoader()->iconPath(logopath, KIcon::Desktop, true));
+ config->writeEntry("Compositor", compositorcombo->currentId());
+
config->writeEntry("GUIStyle", guicombo->currentId());
config->writeEntry("ColorScheme", colcombo->currentId());
@@ -460,6 +474,9 @@ void KDMAppearanceWidget::load()
// See if we use alternate logo
setLogo(config->readEntry("LogoPixmap"));
+ // Check the current compositor type
+ compositorcombo->setCurrentId(config->readEntry("Compositor"));
+
// Check the GUI type
guicombo->setCurrentId(config->readEntry("GUIStyle"));
@@ -489,6 +506,7 @@ void KDMAppearanceWidget::defaults()
logoRadio->setChecked( true );
slotAreaRadioClicked( KdmLogo );
setLogo( "" );
+ compositorcombo->setCurrentId( "" );
guicombo->setCurrentId( "" );
colcombo->setCurrentId( "" );
echocombo->setCurrentItem( "OneStar" );
diff --git a/kcontrol/kdm/kdm-appear.h b/kcontrol/kdm/kdm-appear.h
index 91aad8173..9dc451f0a 100644
--- a/kcontrol/kdm/kdm-appear.h
+++ b/kcontrol/kdm/kdm-appear.h
@@ -85,6 +85,7 @@ private:
TQRadioButton *logoRadio;
TQLineEdit *xLineEdit;
TQLineEdit *yLineEdit;
+ KBackedComboBox *compositorcombo;
KBackedComboBox *guicombo;
KBackedComboBox *colcombo;
KBackedComboBox *echocombo;