Stuff the "Couldn't find executable" message box into a queued lambda
Summary:
This fixes a Plasma shell crash in the Task Manager applet: We
use KRun from inside the onReleased handler of a MouseArea. In
this error case this leads to a KMessageBox spinning the event
loop. The delegate hosting the MouseArea is in the meanwhile
deleted because it's replaced by a different one for the startup
creation. After closing the dialog we're back in the destroyed
delegate and crash.
The patch instead opens the message box from a queued-up lambda
run in the context of qGuiApp (guarded by a test for qGuiApp)
so we escape the caller before starting the nested event loop.
BUG:385942
Reviewers: dfaure, davidedmundson, mart
Subscribers: Frameworks
Tags: Frameworks
Differential Revision: https://phabricator.kde.org/D10405