D11586: libdbusmenu-qt: Remove nonexistant actions directly from the menu

Fabian Vogt noreply at phabricator.kde.org
Thu Mar 22 20:08:43 UTC 2018


fvogt created this revision.
fvogt added a reviewer: Plasma.
Restricted Application added a project: Plasma.
fvogt requested review of this revision.

REVISION SUMMARY
  The getLayout response handler compares the new list of actions with the
  current actions in the menu and calls deleteLater on all actions which aren't
  part of the new list anymore.
  Then, it adds all actions from the new list which aren't part of the menu yet.
  
  As deleteLater only has an effect after the next event processing, the menu
  still contains them together with the added actions.
  This resulted in broken size calculations, as even for static menus the item
  count changed during aboutToShow.
  
  Note that this is not a proper solution for the resize issue, as the
  aboutToShow handler changes the menus content for a reason, the application
  is free to add/remove items at any point in time.

TEST PLAN
  The context menu for SNI items in the system tray shows at the
  correct position now. Only tested the wayland session.

REPOSITORY
  R120 Plasma Workspace

BRANCH
  snifix

REVISION DETAIL
  https://phabricator.kde.org/D11586

AFFECTED FILES
  libdbusmenuqt/dbusmenuimporter.cpp

To: fvogt, #plasma
Cc: plasma-devel, ZrenBot, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://mail.kde.org/pipermail/plasma-devel/attachments/20180322/bfe11e2b/attachment.html>


More information about the Plasma-devel mailing list