update activity of transients properly
svn path=/trunk/KDE/kdebase/workspace/; revision=1128655icc-effect-5.14.5
parent
3807c33523
commit
24c7f96416
|
@ -1579,12 +1579,12 @@ void Client::setOnAllActivities( bool on )
|
|||
if( on )
|
||||
{
|
||||
activityList.clear();
|
||||
//FIXME update transients
|
||||
workspace()->updateOnAllActivitiesOfTransients( this );
|
||||
}
|
||||
else
|
||||
{
|
||||
setOnActivity(Workspace::self()->currentActivity(), true);
|
||||
//FIXME update transients
|
||||
workspace()->updateOnAllActivitiesOfTransients( this );
|
||||
return;
|
||||
}
|
||||
|
||||
|
|
14
group.cpp
14
group.cpp
|
@ -433,6 +433,20 @@ void Workspace::updateOnAllDesktopsOfTransients( Client* c )
|
|||
}
|
||||
}
|
||||
|
||||
/*!
|
||||
Sets the client \a c's transient windows' on_all_activities property to \a on_all_desktops.
|
||||
*/
|
||||
void Workspace::updateOnAllActivitiesOfTransients( Client* c )
|
||||
{
|
||||
for( ClientList::ConstIterator it = c->transients().constBegin();
|
||||
it != c->transients().constEnd();
|
||||
++it)
|
||||
{
|
||||
if( (*it)->isOnAllActivities() != c->isOnAllActivities())
|
||||
(*it)->setOnAllActivities( c->isOnAllActivities());
|
||||
}
|
||||
}
|
||||
|
||||
// A new window has been mapped. Check if it's not a mainwindow for some already existing transient window.
|
||||
void Workspace::checkTransients( Window w )
|
||||
{
|
||||
|
|
|
@ -1778,7 +1778,7 @@ void Workspace::sendClientToDesktop( Client* c, int desk, bool dont_activate )
|
|||
}
|
||||
|
||||
/**
|
||||
* Adds/removes client \a c to/from \a desk.
|
||||
* Adds/removes client \a c to/from \a activity.
|
||||
*
|
||||
* Takes care of transients as well.
|
||||
*/
|
||||
|
|
|
@ -410,6 +410,7 @@ class Workspace : public QObject, public KDecorationDefines
|
|||
|
||||
void updateMinimizedOfTransients( Client* );
|
||||
void updateOnAllDesktopsOfTransients( Client* );
|
||||
void updateOnAllActivitiesOfTransients( Client* );
|
||||
void checkTransients( Window w );
|
||||
|
||||
void performWindowOperation( Client* c, WindowOperation op );
|
||||
|
|
Loading…
Reference in New Issue