<div>ivan created this revision.<br />
ivan added reviewers: mart, davidedmundson, sebas.<br />
Herald added a project: Plasma.<br />
Herald added a subscriber: plasma-devel.</div><br /><div><strong>REVISION SUMMARY</strong><div><ul class="remarkup-list">
<li class="remarkup-list-item">Activities are sorted based on the last time used (an often requested feature, that makes meta+tab order activities like alt-tab orders windows - allows easy switching to the previous activity)</li>
<li class="remarkup-list-item">The data models are created once, and reused instead of allowing QML to instantiate them</li>
<li class="remarkup-list-item">Sorting logic is not duplicated in C++ and QML anymore (we now have a proper C++-instantiated model instead of having to rely on the QML one provided by KActivities QML module)</li>
<li class="remarkup-list-item">Activity starting/stopping/switching methods are now in the backend module, no need to go through the model</li>
</ul>

<p>Since Plasma 5.6 can not depend on KF5.20, some parts of KActivities<br />
code are copied in the backport subfolder. This is to be removed after<br />
5.6 is released, and Plasma will use the new<br />
KActivities::ActivitiesModel class.</p>

<p>This change is important enough to warrant this trickery.</p></div></div><br /><div><strong>REPOSITORY</strong><div><div>rPLASMADESKTOP Plasma Desktop</div></div></div><br /><div><strong>BRANCH</strong><div><div>master</div></div></div><br /><div><strong>REVISION DETAIL</strong><div><a href="https://phabricator.kde.org/D986" rel="noreferrer">https://phabricator.kde.org/D986</a></div></div><br /><div><strong>AFFECTED FILES</strong><div><div>CMakeLists.txt<br />
desktoppackage/contents/activitymanager/ActivityItem.qml<br />
desktoppackage/contents/activitymanager/ActivityList.qml<br />
imports/activitymanager/CMakeLists.txt<br />
imports/activitymanager/activityswitcherextensionplugin.cpp<br />
imports/activitymanager/backport/model_updaters.h<br />
imports/activitymanager/backport/qflatset.h<br />
imports/activitymanager/backport/switcheractivitiesmodel.cpp<br />
imports/activitymanager/backport/switcheractivitiesmodel.h<br />
imports/activitymanager/backport/switcheractivitiesmodel_p.h<br />
imports/activitymanager/sortedactivitiesmodel.cpp<br />
imports/activitymanager/sortedactivitiesmodel.h<br />
imports/activitymanager/switcherbackend.cpp<br />
imports/activitymanager/switcherbackend.h</div></div></div><br /><div><strong>EMAIL PREFERENCES</strong><div><a href="https://phabricator.kde.org/settings/panel/emailpreferences/" rel="noreferrer">https://phabricator.kde.org/settings/panel/emailpreferences/</a></div></div><br /><div><strong>To: </strong>ivan, mart, davidedmundson, sebas<br /><strong>Cc: </strong>plasma-devel<br /></div>