From cf86c50d983a4c1d402ee97bac420d95fecacd9e Mon Sep 17 00:00:00 2001 From: Lucas Murray Date: Thu, 17 Sep 2009 07:48:24 +0000 Subject: [PATCH] Fix quick tiling and maximization GUI and interlocks. svn path=/trunk/KDE/kdebase/workspace/; revision=1024684 --- kcmkwin/kwinscreenedges/main.cpp | 20 +++-- kcmkwin/kwinscreenedges/main.ui | 129 +++++++++++++++++-------------- 2 files changed, 82 insertions(+), 67 deletions(-) diff --git a/kcmkwin/kwinscreenedges/main.cpp b/kcmkwin/kwinscreenedges/main.cpp index 65de840299..8cd85eb7c2 100644 --- a/kcmkwin/kwinscreenedges/main.cpp +++ b/kcmkwin/kwinscreenedges/main.cpp @@ -61,6 +61,8 @@ KWinScreenEdgesConfig::KWinScreenEdgesConfig( QWidget* parent, const QVariantLis // Visual feedback of action group conflicts connect( m_ui->desktopSwitchCombo, SIGNAL( currentIndexChanged(int) ), this, SLOT( groupChanged() )); + connect( m_ui->quickMaximizeBox, SIGNAL( stateChanged(int) ), this, SLOT( groupChanged() )); + connect( m_ui->quickTileBox, SIGNAL( stateChanged(int) ), this, SLOT( groupChanged() )); if( CompositingPrefs::compositingPossible() ) m_defaultPrefs.detect(); // Driver-specific config detection @@ -84,13 +86,17 @@ void KWinScreenEdgesConfig::groupChanged() monitorHideEdge( ElectricLeft, hide ); // Desktop switch conflicts - m_ui->desktopSwitchLabel->setEnabled( true ); - m_ui->desktopSwitchCombo->setEnabled( true ); - - bool enableMaximize = false; - if( m_ui->desktopSwitchCombo->currentIndex() == 0 ) - enableMaximize = true; - m_ui->quickMaximizeBox->setEnabled( enableMaximize ); + if( m_ui->quickTileBox->isChecked() || m_ui->quickMaximizeBox->isChecked() ) + { + m_ui->desktopSwitchLabel->setEnabled( false ); + m_ui->desktopSwitchCombo->setEnabled( false ); + m_ui->desktopSwitchCombo->setCurrentIndex( 0 ); + } + else + { + m_ui->desktopSwitchLabel->setEnabled( true ); + m_ui->desktopSwitchCombo->setEnabled( true ); + } } void KWinScreenEdgesConfig::load() diff --git a/kcmkwin/kwinscreenedges/main.ui b/kcmkwin/kwinscreenedges/main.ui index 7a0b29fc1f..46853c373c 100644 --- a/kcmkwin/kwinscreenedges/main.ui +++ b/kcmkwin/kwinscreenedges/main.ui @@ -10,11 +10,69 @@ 475 - - - 0 - - + + + + + Active Screen Edge Actions + + + + + + + 200 + 200 + + + + Qt::StrongFocus + + + + + + + To trigger an action push your mouse cursor against the edge of the screen in the action's direction. + + + Qt::AlignCenter + + + true + + + + + + + + + + Window Management + + + + QFormLayout::ExpandingFieldsGrow + + + + + Maximize windows by dragging them to the top of the screen + + + + + + + Tile windows by dragging them to the side of the screen + + + + + + + true @@ -58,7 +116,7 @@ - + Amount of time required for the mouse cursor to be pushed against the edge of the screen before the action is triggered @@ -71,7 +129,7 @@ - + ms @@ -87,7 +145,7 @@ - + true @@ -103,7 +161,7 @@ - + true @@ -122,7 +180,7 @@ - + Qt::Vertical @@ -135,24 +193,10 @@ - - - - Maximize windows by dragging them to the top of the screen - - - - - - - Tile windows by dragging them to the side of the screen - - - - + Qt::Vertical @@ -165,41 +209,6 @@ - - - - Active Screen Edge Actions - - - - - - - 200 - 200 - - - - Qt::StrongFocus - - - - - - - To trigger an action push your mouse cursor against the edge of the screen in the action's direction. - - - Qt::AlignCenter - - - true - - - - - -