summaryrefslogtreecommitdiff
path: root/sfx2
diff options
context:
space:
mode:
Diffstat (limited to 'sfx2')
-rw-r--r--sfx2/source/appl/appserv.cxx9
1 files changed, 9 insertions, 0 deletions
diff --git a/sfx2/source/appl/appserv.cxx b/sfx2/source/appl/appserv.cxx
index d58b62a9bf3b..9c1b3c9d2a57 100644
--- a/sfx2/source/appl/appserv.cxx
+++ b/sfx2/source/appl/appserv.cxx
@@ -256,6 +256,13 @@ namespace
return xFrame;
}
+ Reference<XFrame> GetDocFrame(const SfxRequest& rReq)
+ {
+ const SfxFrameItem* pFrameItem = rReq.GetArg<SfxFrameItem>(SID_DOCFRAME);
+ SfxFrame* pFrame = pFrameItem ? pFrameItem->GetFrame() : nullptr;
+ return pFrame ? pFrame->GetFrameInterface() : nullptr;
+ }
+
class LicenseDialog : public weld::GenericDialogController
{
public:
@@ -310,6 +317,8 @@ weld::Window* SfxRequest::GetFrameWeld() const
Reference<XFrame> xFrame(GetRequestFrame(*this));
if (!xFrame)
+ xFrame = GetDocFrame(*this);
+ if (!xFrame)
{
SAL_WARN("sfx.appl", "no parent for dialogs");
return nullptr;