#67406 - config option kwinrc:Windows:ShowDesktopIsMinimizeAll.

But I hope this actually won't be needed with KDE4.


svn path=/trunk/KDE/kdebase/workspace/; revision=546548
icc-effect-5.14.5
Luboš Luňák 2006-05-30 11:47:16 +00:00
parent d3b5bf8a68
commit 750d4f1d03
5 changed files with 9 additions and 2 deletions

View File

@ -59,6 +59,7 @@
<entry key="ElectricBorderDelay" type="Int" />
<entry key="IgnorePositionClasses" type="StringList" />
<entry key="KillPingTimeout" type="Int" />
<entry key="ShowDesktopIsMinimizeAll" type="Bool" />
</group>
<group name="WM" >
<entry key="frame" type="Color" />

View File

@ -470,7 +470,7 @@ bool Client::manage( Window w, bool isMapped )
break;
}
if( !belongs_to_desktop && workspace()->showingDesktop())
workspace()->resetShowingDesktop( false );
workspace()->resetShowingDesktop( options->showDesktopIsMinimizeAll );
if( isOnCurrentDesktop() && !isMapped && !allow && (!session || session->stackingOrder < 0 ))
workspace()->restackClientUnderActive( this );

View File

@ -153,6 +153,7 @@ unsigned long Options::updateSettings()
killPingTimeout = config->readEntry( "KillPingTimeout", 5000 );
hideUtilityWindowsForInactive = config->readEntry( "HideUtilityWindowsForInactive", QVariant( true)).toBool();
showDesktopIsMinimizeAll = config->readEntry( "ShowDesktopIsMinimizeAll", false );
// Mouse bindings
config->setGroup( "MouseBindings");

View File

@ -182,6 +182,8 @@ class Options : public KDecorationOptions
* Animation speed (0 .. 10 )
*/
int animateMinimizeSpeed;
bool showDesktopIsMinimizeAll;
/**
* whether or not we roll over to the other edge when switching desktops past the edge

View File

@ -2616,7 +2616,10 @@ void Workspace::setShowingDesktop( bool showing )
// Unminimizing a window resets the state but keeps the windows hidden (except
// the one that was unminimized).
// A new window resets the state and shows the windows again, with the new window
// being active.
// being active. Due to popular demand (#67406) by people who apparently
// don't see a difference between "show desktop" and "minimize all", this is not
// true if "showDesktopIsMinimizeAll" is set in kwinrc. In such case showing
// a new window resets the state but doesn't show windows.
void Workspace::resetShowingDesktop( bool keep_hidden )
{
if( block_showing_desktop > 0 )