summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorHenry Castro <hcastro@collabora.com>2021-03-02 19:58:08 -0400
committerJan Holesovsky <kendy@collabora.com>2021-03-04 16:09:00 +0100
commit1c1604cf6ca6012efcc7f1642906ce686081b3c4 (patch)
tree1ab5fc18798bf92e54bcdd4a94815f1207565c75
parent145fba733121fe36d29d10fa62ce8ab90e00b891 (diff)
lok: async exception dialog messages for VBA macros
Change-Id: Ia713343541f8102de85f7ac57202780afba3da00 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/111855 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoffice@gmail.com> Reviewed-by: Jan Holesovsky <kendy@collabora.com>
-rw-r--r--cui/source/dialogs/scriptdlg.cxx16
1 files changed, 13 insertions, 3 deletions
diff --git a/cui/source/dialogs/scriptdlg.cxx b/cui/source/dialogs/scriptdlg.cxx
index 12da15e0c2b6..e6238f7c665c 100644
--- a/cui/source/dialogs/scriptdlg.cxx
+++ b/cui/source/dialogs/scriptdlg.cxx
@@ -20,6 +20,7 @@
#include <memory>
#include <utility>
+#include <sfx2/viewfrm.hxx>
#include <sal/log.hxx>
#include <sfx2/objsh.hxx>
#include <vcl/svapp.hxx>
@@ -46,6 +47,7 @@
#include <com/sun/star/script/XInvocation.hpp>
#include <com/sun/star/document/XEmbeddedScripts.hpp>
+#include <comphelper/lok.hxx>
#include <comphelper/SetFlagContextHelper.hxx>
#include <comphelper/documentinfo.hxx>
#include <comphelper/processfactory.hxx>
@@ -1343,10 +1345,18 @@ IMPL_STATIC_LINK( SvxScriptErrorDialog, ShowDialog, void*, p, void )
message = CuiResId( RID_SVXSTR_ERROR_TITLE );
}
- std::unique_ptr<weld::MessageDialog> xBox(Application::CreateMessageDialog(nullptr,
- VclMessageType::Warning, VclButtonsType::Ok, message));
+ const SfxViewFrame* pViewFrame = SfxViewFrame::Current();
+ std::shared_ptr<weld::MessageDialog> xBox(
+ Application::CreateMessageDialog(
+ pViewFrame->GetWindow().GetFrameWeld(),
+ VclMessageType::Warning,
+ VclButtonsType::Ok,
+ message,
+ comphelper::LibreOfficeKit::isActive() ? true : false));
+
xBox->set_title(CuiResId(RID_SVXSTR_ERROR_TITLE));
- xBox->run();
+
+ xBox->runAsync(xBox, [](sal_Int32 /*nResult*/) {});
delete pMessage;
}