hein created this revision. hein added reviewers: Plasma, davidedmundson, broulik. hein added a subscriber: plasma-devel. Restricted Application added a project: Plasma.
REVISION SUMMARY Utility windows (NET::Utility/_NET_WM_WINDOW_TYPE_UTILITY) should not be on the Task Manager, but they should be on the Pager. This patch achieves this by evaluating the window type in the AbstractTasksModel::SkipTaskBar data role. I considered the alternative approach of making a new AbstractTasksModel::IsUtilityWindow (or similar) data role and adding a pass to evaluate it to TaskFilterProxyModel, then configuring the filter models in TasksModel and the Pager backend differently. But this is not very extensible. Then I realized that AbstractTasksModel data roles do not and should not reflect X11 idioms anyway; the point of the library is to abstract for the purpose of UI, and what XWindowTasksModel considers "SkipTaskBar" is really an implementation detail. This makes all the more sense considering on Wayland we have no notion of window types (beyond "popup") yet, and don't quite now how it's going to evolve. Various API docstrings have been changed to better reflect that the meaning of the data role doesn't map to anything specific in the tasks. BUG:368956 REPOSITORY rPLASMAWORKSPACE Plasma Workspace BRANCH Plasma/5.8 REVISION DETAIL https://phabricator.kde.org/D2807 AFFECTED FILES libtaskmanager/abstracttasksmodel.h libtaskmanager/taskfilterproxymodel.h libtaskmanager/xwindowtasksmodel.cpp EMAIL PREFERENCES https://phabricator.kde.org/settings/panel/emailpreferences/ To: hein, #plasma, davidedmundson, broulik Cc: plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas