[Differential] [Updated, 42 lines] D3950: Try to fix "Pinned Chrome disappears when all Chrome windows are closed"
hein (Eike Hein)
noreply at phabricator.kde.org
Fri Jan 6 13:52:37 UTC 2017
hein updated this revision to Diff 9797.
hein added a comment.
After the original bug became actually reproducible (thanks to
Roman for a tip - I needed multiple Chrome tabs to slow down
its teardown) I was able to pinpoint the actual cause, see the
updated summary and the code comment.
Re the lack-of-symmetry complaint: The rowsAboutToBeRemoved
connect is to the tree-shaped proxy because it allows for a
speed optimization by ignoring group children, which is now
even more worthwhile given the more coarse trigger. The
second connect is to the filterProxyModel because the actual
symmetry that's needed is to the model checked in
filterAcceptsRow, which is the filterProxyModel as well. As
previously explained proxy models fire rowsRemoved in response
to their source model firing rowsAboutToBeRemoved, so when
the grouping proxy (which is higher in the chain) fires
rowsRemoved, the filter proxy still has the window, causing
filterAcceptsRow not to allow the launcher to pass.
REPOSITORY
R120 Plasma Workspace
CHANGES SINCE LAST UPDATE
https://phabricator.kde.org/D3950?vs=9746&id=9797
BRANCH
master
REVISION DETAIL
https://phabricator.kde.org/D3950
AFFECTED FILES
libtaskmanager/tasksmodel.cpp
EMAIL PREFERENCES
https://phabricator.kde.org/settings/panel/emailpreferences/
To: hein, davidedmundson, mart
Cc: plasma-devel, lesliezhai, ali-mohamed, jensreuterberg, abetts, andreaska, sebas
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20170106/7a2d07e5/attachment-0001.html>
More information about the Plasma-devel
mailing list