summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorTimothy Pearson <[email protected]>2012-01-11 13:21:12 -0600
committerTimothy Pearson <[email protected]>2012-01-11 13:21:12 -0600
commitcbe6b0eca09e4bb4cf2cbb248ba46ed981b43cf7 (patch)
tree5e97d5175798ef29ec95dbd5f8a5a97c8227ae4f
parent6f32bfd96c038c8ddec90f6ab6e88629e709991f (diff)
downloadtdebase-cbe6b0eca09e4bb4cf2cbb248ba46ed981b43cf7.tar.gz
tdebase-cbe6b0eca09e4bb4cf2cbb248ba46ed981b43cf7.zip
Move kcontrol focus prevention option to a more logical place
This closes Bug 642
-rw-r--r--twin/kcmtwin/twinoptions/windows.cpp100
-rw-r--r--twin/kcmtwin/twinoptions/windows.h4
2 files changed, 54 insertions, 50 deletions
diff --git a/twin/kcmtwin/twinoptions/windows.cpp b/twin/kcmtwin/twinoptions/windows.cpp
index accacb3fd..567121a1a 100644
--- a/twin/kcmtwin/twinoptions/windows.cpp
+++ b/twin/kcmtwin/twinoptions/windows.cpp
@@ -188,13 +188,47 @@ KFocusConfig::KFocusConfig (bool _standAlone, KConfig *_config, TQWidget * paren
delayFocus->setSuffix(i18n(" msec"));
fLay->addWidget(delayFocus);
- clickRaiseOn = new TQCheckBox(i18n("C&lick raise active window"), fcsBox);
+ clickRaiseOn = new TQCheckBox(i18n("Click &raises active window"), fcsBox);
connect(clickRaiseOn,TQT_SIGNAL(toggled(bool)), this, TQT_SLOT(clickRaiseOnTog(bool)));
fLay->addWidget(clickRaiseOn);
// fLay->addColSpacing(0,QMAX(autoRaiseOn->sizeHint().width(),
// clickRaiseOn->sizeHint().width()) + 15);
+ TQHBoxLayout* focusStealingLayout = new TQHBoxLayout(lay,KDialog::spacingHint());
+ TQLabel* focusStealingLabel = new TQLabel( i18n( "Focus stealing prevention &level:" ), fcsBox);
+ cLay->addWidget(focusStealingLabel, 0);
+ focusStealing = new TQComboBox(false, fcsBox);
+ focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "None" ));
+ focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "Low" ));
+ focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "Normal" ));
+ focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "High" ));
+ focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "Extreme" ));
+ focusStealingLabel->setBuddy( focusStealing );
+ focusStealingLayout->addWidget( focusStealingLabel );
+ cLay->addWidget(focusStealing,2 ,Qt::AlignLeft);
+ wtstr = i18n( "<p>This option specifies how much KWin will try to prevent unwanted focus stealing "
+ "caused by unexpected activation of new windows. (Note: This feature does not "
+ "work with the Focus Under Mouse or Focus Strictly Under Mouse focus policies.)"
+ "<ul>"
+ "<li><em>None:</em> Prevention is turned off "
+ "and new windows always become activated.</li>"
+ "<li><em>Low:</em> Prevention is enabled; when some window does not have support "
+ "for the underlying mechanism and KWin cannot reliably decide whether to "
+ "activate the window or not, it will be activated. This setting may have both "
+ "worse and better results than normal level, depending on the applications.</li>"
+ "<li><em>Normal:</em> Prevention is enabled.</li>"
+ "<li><em>High:</em> New windows get activated only if no window is currently active "
+ "or if they belong to the currently active application. This setting is probably "
+ "not really usable when not using mouse focus policy.</li>"
+ "<li><em>Extreme:</em> All windows must be explicitly activated by the user.</li>"
+ "</ul></p>"
+ "<p>Windows that are prevented from stealing focus are marked as demanding attention, "
+ "which by default means their taskbar entry will be highlighted. This can be changed "
+ "in the Notifications control module.</p>" );
+ TQWhatsThis::add( focusStealing, wtstr );
+ TQWhatsThis::add( focusStealingLabel, wtstr );
+
TQWhatsThis::add( autoRaiseOn, i18n("When this option is enabled, a window in the background will automatically"
" come to the front when the mouse pointer has been over it for some time.") );
wtstr = i18n("This is the delay after which the window that the mouse pointer is over will automatically"
@@ -267,7 +301,7 @@ KFocusConfig::KFocusConfig (bool _standAlone, KConfig *_config, TQWidget * paren
" the edge of a desktop to take you to the opposite edge of the new desktop." );
TQWhatsThis::add( rollOverDesktops, wtstr );
- showPopupinfo = new TQCheckBox( i18n("Popup desktop name on desktop &switch"), kbdBox );
+ showPopupinfo = new TQCheckBox( i18n("Popup &desktop name on desktop switch"), kbdBox );
kLay->addWidget(showPopupinfo);
wtstr = i18n( "Enable this option if you wish to see the current desktop"
@@ -289,6 +323,7 @@ KFocusConfig::KFocusConfig (bool _standAlone, KConfig *_config, TQWidget * paren
connect(traverseAll, TQT_SIGNAL(clicked()), TQT_SLOT(changed()));
connect(rollOverDesktops, TQT_SIGNAL(clicked()), TQT_SLOT(changed()));
connect(showPopupinfo, TQT_SIGNAL(clicked()), TQT_SLOT(changed()));
+ connect(focusStealing, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
load();
}
@@ -423,6 +458,11 @@ void KFocusConfig::setShowPopupinfo(bool a) {
showPopupinfo->setChecked(a);
}
+void KFocusConfig::setFocusStealing(int l) {
+ l = KMAX( 0, KMIN( 4, l ));
+ focusStealing->setCurrentItem(l);
+}
+
void KFocusConfig::load( void )
{
TQString key;
@@ -466,6 +506,10 @@ void KFocusConfig::load( void )
config->setGroup( "PopupInfo" );
setShowPopupinfo( config->readBoolEntry(KWIN_SHOW_POPUP, false ));
+ // setFocusStealing( config->readNumEntry(KWIN_FOCUS_STEALING, 2 ));
+ // TODO default to low for now
+ setFocusStealing( config->readNumEntry(KWIN_FOCUS_STEALING, 1 ));
+
config->setGroup( "TabBox" );
setTraverseAll( config->readBoolEntry(KWIN_TRAVERSE_ALL, false ));
@@ -525,6 +569,8 @@ void KFocusConfig::save( void )
config->setGroup( "PopupInfo" );
config->writeEntry( KWIN_SHOW_POPUP, showPopupinfo->isChecked());
+ config->writeEntry(KWIN_FOCUS_STEALING, focusStealing->currentItem());
+
config->setGroup( "TabBox" );
config->writeEntry( KWIN_TRAVERSE_ALL , traverseAll->isChecked());
@@ -555,6 +601,9 @@ void KFocusConfig::defaults()
setTraverseAll( false );
setRollOverDesktops(true);
setShowPopupinfo(false);
+ // setFocusStealing(2);
+ // TODO default to low for now
+ setFocusStealing(1);
emit KCModule::changed(true);
}
@@ -639,40 +688,6 @@ KAdvancedConfig::KAdvancedConfig (bool _standAlone, KConfig *_config, TQWidget *
lay->addWidget(electricBox);
- TQHBoxLayout* focusStealingLayout = new TQHBoxLayout( lay,KDialog::spacingHint());
- TQLabel* focusStealingLabel = new TQLabel( i18n( "Focus stealing prevention level:" ), this );
- focusStealing = new TQComboBox( this );
- focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "None" ));
- focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "Low" ));
- focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "Normal" ));
- focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "High" ));
- focusStealing->insertItem( i18n( "Focus Stealing Prevention Level", "Extreme" ));
- focusStealingLabel->setBuddy( focusStealing );
- focusStealingLayout->addWidget( focusStealingLabel );
- focusStealingLayout->addWidget( focusStealing, AlignLeft );
- wtstr = i18n( "<p>This option specifies how much KWin will try to prevent unwanted focus stealing "
- "caused by unexpected activation of new windows. (Note: This feature does not "
- "work with the Focus Under Mouse or Focus Strictly Under Mouse focus policies.)"
- "<ul>"
- "<li><em>None:</em> Prevention is turned off "
- "and new windows always become activated.</li>"
- "<li><em>Low:</em> Prevention is enabled; when some window does not have support "
- "for the underlying mechanism and KWin cannot reliably decide whether to "
- "activate the window or not, it will be activated. This setting may have both "
- "worse and better results than normal level, depending on the applications.</li>"
- "<li><em>Normal:</em> Prevention is enabled.</li>"
- "<li><em>High:</em> New windows get activated only if no window is currently active "
- "or if they belong to the currently active application. This setting is probably "
- "not really usable when not using mouse focus policy.</li>"
- "<li><em>Extreme:</em> All windows must be explicitly activated by the user.</li>"
- "</ul></p>"
- "<p>Windows that are prevented from stealing focus are marked as demanding attention, "
- "which by default means their taskbar entry will be highlighted. This can be changed "
- "in the Notifications control module.</p>" );
- TQWhatsThis::add( focusStealing, wtstr );
- TQWhatsThis::add( focusStealingLabel, wtstr );
- connect(focusStealing, TQT_SIGNAL(activated(int)), TQT_SLOT(changed()));
-
hideUtilityWindowsForInactive = new TQCheckBox( i18n( "Hide utility windows for inactive applications" ), this );
TQWhatsThis::add( hideUtilityWindowsForInactive,
i18n( "When turned on, utility windows (tool windows, torn-off menus,...) of inactive applications will be"
@@ -682,6 +697,7 @@ KAdvancedConfig::KAdvancedConfig (bool _standAlone, KConfig *_config, TQWidget *
lay->addWidget( hideUtilityWindowsForInactive );
lay->addStretch();
+
load();
}
@@ -708,11 +724,6 @@ void KAdvancedConfig::setAnimateShade(bool a) {
animateShade->setChecked(a);
}
-void KAdvancedConfig::setFocusStealing(int l) {
- l = KMAX( 0, KMIN( 4, l ));
- focusStealing->setCurrentItem(l);
-}
-
void KAdvancedConfig::setHideUtilityWindowsForInactive(bool s) {
hideUtilityWindowsForInactive->setChecked( s );
}
@@ -728,9 +739,6 @@ void KAdvancedConfig::load( void )
setElectricBorders(config->readNumEntry(KWM_ELECTRIC_BORDER, 0));
setElectricBorderDelay(config->readNumEntry(KWM_ELECTRIC_BORDER_DELAY, 150));
-// setFocusStealing( config->readNumEntry(KWIN_FOCUS_STEALING, 2 ));
- // TODO default to low for now
- setFocusStealing( config->readNumEntry(KWIN_FOCUS_STEALING, 1 ));
setHideUtilityWindowsForInactive( config->readBoolEntry( KWIN_HIDE_UTILITY, true ));
emit KCModule::changed(false);
@@ -754,7 +762,6 @@ void KAdvancedConfig::save( void )
config->writeEntry(KWM_ELECTRIC_BORDER, getElectricBorders());
config->writeEntry(KWM_ELECTRIC_BORDER_DELAY,getElectricBorderDelay());
- config->writeEntry(KWIN_FOCUS_STEALING, focusStealing->currentItem());
config->writeEntry(KWIN_HIDE_UTILITY, hideUtilityWindowsForInactive->isChecked());
if (standAlone)
@@ -774,9 +781,6 @@ void KAdvancedConfig::defaults()
setShadeHoverInterval(250);
setElectricBorders(0);
setElectricBorderDelay(150);
-// setFocusStealing(2);
- // TODO default to low for now
- setFocusStealing(1);
setHideUtilityWindowsForInactive( true );
emit KCModule::changed(true);
}
diff --git a/twin/kcmtwin/twinoptions/windows.h b/twin/kcmtwin/twinoptions/windows.h
index e3b81d07a..0b371d054 100644
--- a/twin/kcmtwin/twinoptions/windows.h
+++ b/twin/kcmtwin/twinoptions/windows.h
@@ -108,6 +108,7 @@ private:
void setTraverseAll(bool);
void setRollOverDesktops(bool);
void setShowPopupinfo(bool);
+ void setFocusStealing(int);
TQButtonGroup *fcsBox;
TQComboBox *focusCombo;
@@ -118,6 +119,7 @@ private:
KIntNumInput *delayFocus;
TQCheckBox *separateScreenFocus;
TQCheckBox *activeMouseScreen;
+ TQComboBox* focusStealing;
TQButtonGroup *kbdBox;
TQCheckBox *altTabPopup;
@@ -231,10 +233,8 @@ private:
TQRadioButton *active_always;
KIntNumInput *delays;
- void setFocusStealing( int );
void setHideUtilityWindowsForInactive( bool );
- TQComboBox* focusStealing;
TQCheckBox* hideUtilityWindowsForInactive;
};