Support _NET_WM_FULL_PLACEMENT.
svn path=/trunk/KDE/kdebase/workspace/; revision=662075
This commit is contained in:
parent
c0412fbf23
commit
47232a2c17
3 changed files with 8 additions and 2 deletions
|
@ -166,7 +166,7 @@ bool Client::manage( Window w, bool isMapped )
|
||||||
it != mainclients.end();
|
it != mainclients.end();
|
||||||
++it )
|
++it )
|
||||||
{
|
{
|
||||||
if( (*it)->isSpecialWindow())
|
if( mainclients.count() > 1 && (*it)->isSpecialWindow())
|
||||||
continue; // don't consider toolbars etc when placing
|
continue; // don't consider toolbars etc when placing
|
||||||
maincl = *it;
|
maincl = *it;
|
||||||
if( (*it)->isOnCurrentDesktop())
|
if( (*it)->isOnCurrentDesktop())
|
||||||
|
|
|
@ -473,7 +473,7 @@ void Placement::placeOnMainWindow(Client* c, QRect& area, Policy nextPlacement )
|
||||||
it != mainwindows.end();
|
it != mainwindows.end();
|
||||||
++it )
|
++it )
|
||||||
{
|
{
|
||||||
if( (*it)->isSpecialWindow())
|
if( mainwindows.count() > 1 && (*it)->isSpecialWindow())
|
||||||
continue; // don't consider toolbars etc when placing
|
continue; // don't consider toolbars etc when placing
|
||||||
++mains_count;
|
++mains_count;
|
||||||
place_on2 = *it;
|
place_on2 = *it;
|
||||||
|
@ -502,6 +502,11 @@ void Placement::placeOnMainWindow(Client* c, QRect& area, Policy nextPlacement )
|
||||||
}
|
}
|
||||||
place_on = place_on2; // use the only window filtered together with 'mains_count'
|
place_on = place_on2; // use the only window filtered together with 'mains_count'
|
||||||
}
|
}
|
||||||
|
if( place_on->isDesktop())
|
||||||
|
{
|
||||||
|
place( c, area, Centered );
|
||||||
|
return;
|
||||||
|
}
|
||||||
QRect geom = c->geometry();
|
QRect geom = c->geometry();
|
||||||
geom.moveCenter( place_on->geometry().center());
|
geom.moveCenter( place_on->geometry().center());
|
||||||
c->move( geom.topLeft());
|
c->move( geom.topLeft());
|
||||||
|
|
|
@ -293,6 +293,7 @@ void Workspace::init()
|
||||||
NET::WM2KDETemporaryRules |
|
NET::WM2KDETemporaryRules |
|
||||||
NET::WM2ShowingDesktop |
|
NET::WM2ShowingDesktop |
|
||||||
NET::WM2DesktopLayout |
|
NET::WM2DesktopLayout |
|
||||||
|
NET::WM2FullPlacement |
|
||||||
0
|
0
|
||||||
,
|
,
|
||||||
NET::ActionMove |
|
NET::ActionMove |
|
||||||
|
|
Loading…
Reference in a new issue