some more maximize stuff .... I really need to test that myself...

svn path=/trunk/kdebase/kwin/; revision=72975
icc-effect-5.14.5
Matthias Ettrich 2000-12-01 18:27:26 +00:00
parent 900cbeaf1e
commit c45c162ab0
1 changed files with 10 additions and 10 deletions

View File

@ -66,12 +66,12 @@ public:
if ( mask & NET::Shaded ) if ( mask & NET::Shaded )
m_client->setShade( state & NET::Shaded ); m_client->setShade( state & NET::Shaded );
if ( (mask & NET::Max) == NET::Max ) if ( (mask & NET::Max) == NET::Max )
m_client->maximizeRaw( state & NET::MaxVert, state & NET::MaxHoriz ); m_client->maximizeRaw( state & NET::MaxVert, state & NET::MaxHoriz );
else if ( mask & NET::MaxVert ) else if ( mask & NET::MaxVert )
m_client->maximizeRaw( state & NET::MaxVert, m_client->maximizeMode() & Client::MaximizeHorizontal ); m_client->maximizeRaw( state & NET::MaxVert, m_client->maximizeMode() & Client::MaximizeHorizontal );
else if ( mask & NET::MaxHoriz ) else if ( mask & NET::MaxHoriz )
m_client->maximizeRaw( m_client->maximizeMode() & Client::MaximizeVertical, state & NET::MaxVert ); m_client->maximizeRaw( m_client->maximizeMode() & Client::MaximizeVertical, state & NET::MaxHoriz );
if ( mask & NET::StaysOnTop) { if ( mask & NET::StaysOnTop) {
m_client->setStaysOnTop( (state & NET::StaysOnTop) != 0 ); m_client->setStaysOnTop( (state & NET::StaysOnTop) != 0 );
@ -589,7 +589,7 @@ bool Client::manage( bool isMapped, bool doNotShow, bool isInitial )
move( x(), area.bottom() - height() ); move( x(), area.bottom() - height() );
} }
XShapeSelectInput( qt_xdisplay(), win, ShapeNotifyMask ); XShapeSelectInput( qt_xdisplay(), win, ShapeNotifyMask );
if ( (is_shape = Shape::hasShape( win )) ) { if ( (is_shape = Shape::hasShape( win )) ) {
updateShape(); updateShape();
} }
@ -833,7 +833,7 @@ bool Client::windowEvent( XEvent * e)
if ( isActive() ) if ( isActive() )
workspace()->updateColormap(); workspace()->updateColormap();
default: default:
if ( e->type == Shape::shapeEvent() ) if ( e->type == Shape::shapeEvent() )
updateShape(); updateShape();
break; break;
} }
@ -1729,7 +1729,7 @@ void Client::maximizeRaw( bool vertically, bool horizontally )
{ {
if ( !vertically && !horizontally ) { if ( !vertically && !horizontally ) {
maximize ( MaximizeRestore ); maximize ( MaximizeRestore );
} else { } else {
QRect geom = geometry(); QRect geom = geometry();
if ( isMaximized() ) if ( isMaximized() )
geom = geom_restore; geom = geom_restore;
@ -1748,11 +1748,11 @@ void Client::maximizeRaw( bool vertically, bool horizontally )
} }
} }
/*! /*!
Maximizes the client according to mode \a m. If the client is Maximizes the client according to mode \a m. If the client is
already maximized with the same mode, it gets restored. Does some already maximized with the same mode, it gets restored. Does some
smart magic like vertically + horizontally = full. smart magic like vertically + horizontally = full.
This is the slot to connect to from your client subclass. This is the slot to connect to from your client subclass.
*/ */
void Client::maximize( MaximizeMode m) void Client::maximize( MaximizeMode m)
@ -1764,7 +1764,7 @@ void Client::maximize( MaximizeMode m)
if (isShade()) if (isShade())
setShade( FALSE ); setShade( FALSE );
if ( m == MaximizeAdjust ) { if ( m == MaximizeAdjust ) {
m = max_mode; m = max_mode;
} else { } else {
@ -1777,13 +1777,13 @@ void Client::maximize( MaximizeMode m)
if ( m != MaximizeRestore ) { if ( m != MaximizeRestore ) {
if ( max_mode == MaximizeRestore ) if ( max_mode == MaximizeRestore )
geom_restore = geometry(); geom_restore = geometry();
if ( m != MaximizeFull) else if ( m != MaximizeFull)
m = (MaximizeMode ) ( (max_mode & MaximizeFull) ^ (m & MaximizeFull) ); m = (MaximizeMode ) ( (max_mode & MaximizeFull) ^ (m & MaximizeFull) );
Events::raise( Events::Maximize ); Events::raise( Events::Maximize );
} }
} }
switch (m) { switch (m) {
case MaximizeVertical: case MaximizeVertical: