diff --git a/activation.cpp b/activation.cpp index 1e2254a651..e17d4d4394 100644 --- a/activation.cpp +++ b/activation.cpp @@ -633,6 +633,7 @@ void Client::updateUserTime( Time time ) && ( user_time == CurrentTime || timestampCompare( time, user_time ) > 0 )) // time > user_time user_time = time; + group()->updateUserTime( user_time ); } Time Client::readUserCreationTime() const diff --git a/manage.cpp b/manage.cpp index f6aa4d92be..8f9e5c9fbd 100644 --- a/manage.cpp +++ b/manage.cpp @@ -24,6 +24,7 @@ License. See the file "COPYING" for the exact licensing terms. #include "notifications.h" #include #include "rules.h" +#include "group.h" namespace KWinInternal { @@ -421,7 +422,9 @@ bool Client::manage( Window w, bool isMapped ) // - keep it? XLowerWindow( QX11Info::display(), frameId()); + // set initial user time directly user_time = readUserTimeMapTimestamp( asn_valid ? &asn_id : NULL, asn_valid ? &asn_data : NULL, session ); + group()->updateUserTime( user_time ); // and do what Client::updateUserTime() does if( isTopMenu()) // they're shown in Workspace::addClient() if their mainwindow hideClient( true ); // is the active one