davidedmundson added a comment.
I get that there's a bug - I'm not remotely suggesting we drop the issue. Your supplied test is really useful, it's valid and I do want to see this problem get fixed. But, we can't knowingly replace one bug with a different one, we don't improve anything. The old implementation is buggy in other ways. Try adding this patch, add the appmenubar widget, run the test app in the libdbusmenuqt folder and click "Menu C". With this patch you can't open that menu at all. > Current code never obtains new submenus and always shows old ones. That's not entirely true. We do show the cached version, but also immediately call aboutToShow which will update the subtree. In theory at least :) ---- I /think/ all we need to do is make sure the else branch of the old code handle reparenting? If you can have another look at that, that'd be great, otherwise I'll try later this week. ---- Note also that the client code will go in one of two differnet paths depending on whether it's going through the plasma platform theme or not. REPOSITORY R120 Plasma Workspace REVISION DETAIL https://phabricator.kde.org/D7260 To: i.Dark_Templar, #plasma, davidedmundson Cc: plasma-devel, ZrenBot, progwolff, lesliezhai, ali-mohamed, jensreuterberg, abetts, sebas, apol, mart, lukas