sw/source/ui/config/mailconfigpage.cxx     |    5 +++--
 sw/uiconfig/swriter/ui/testmailsettings.ui |    1 +
 vcl/qt5/QtInstanceBuilder.cxx              |    1 +
 3 files changed, 5 insertions(+), 2 deletions(-)

New commits:
commit f463a48a9bc525d4ecfc34799a2b33c1cb1a89a0
Author:     Michael Weghorn <[email protected]>
AuthorDate: Sun Oct 5 01:27:17 2025 +0200
Commit:     Michael Weghorn <[email protected]>
CommitDate: Sun Oct 5 11:24:43 2025 +0200

    tdf#130857 qt weld: Support mail merge test account settings dialog
    
    This means that native Qt widgets are used for that dialog
    now when using the qt5 or qt6 VCL plugin and starting LO with
    environment variable SAL_VCL_QT_USE_WELDED_WIDGETS=1 set.
    
    The dialog can be triggered as follows:
    
    * "Tools" -> "Options" -> "LibreOfficeDev Writer"
      -> "Mail Merge Email"
    * click the "Test Settings" button
    
    Change-Id: I47886d4954f59ae3d38c93b70272e9260a93bbba
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191870
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/vcl/qt5/QtInstanceBuilder.cxx b/vcl/qt5/QtInstanceBuilder.cxx
index 481428a57a46..e03e6dd4fb4d 100644
--- a/vcl/qt5/QtInstanceBuilder.cxx
+++ b/vcl/qt5/QtInstanceBuilder.cxx
@@ -172,6 +172,7 @@ bool QtInstanceBuilder::IsUIFileSupported(const OUString& 
rUIFile, const weld::W
         u"modules/swriter/ui/renameobjectdialog.ui"_ustr,
         u"modules/swriter/ui/rowheight.ui"_ustr,
         u"modules/swriter/ui/splittable.ui"_ustr,
+        u"modules/swriter/ui/testmailsettings.ui"_ustr,
         u"modules/swriter/ui/wordcount.ui"_ustr,
         u"sfx/ui/documentpropertiesdialog.ui"_ustr,
         u"sfx/ui/editdurationdialog.ui"_ustr,
commit a86f1bb0e30f1dbc6f260130db5bd74b273326d3
Author:     Michael Weghorn <[email protected]>
AuthorDate: Sun Oct 5 01:18:18 2025 +0200
Commit:     Michael Weghorn <[email protected]>
CommitDate: Sun Oct 5 11:24:36 2025 +0200

    tdf#130857 Make mail merge test account settings dialog async
    
    In its ctor, SwTestAccountSettingsDialog posts an event
    that is responsible for actually running the account
    settings test:
    
        m_pPostedEvent = Application::PostUserEvent(LINK(this, 
SwTestAccountSettingsDialog, TestHdl));
    
    For the case of a native Qt dialog (QtInstanceDialog),
    that event would only be processed after the dialog
    gets closed when the dialog is run synchronously,
    so no test result would be shown in the dialog at all
    (once support for it is declared for using native Qt widgets,
    which will be done in an upcoming commit).
    
    Run the dialog asynchronously to make sure events
    get processed while it is being run. Explicitly
    make it modal to make sure it remains on top of
    the parent.
    
    The dialog can be triggered as follows:
    
    * "Tools" -> "Options" -> "LibreOfficeDev Writer"
      -> "Mail Merge Email"
    * click the "Test Settings" button
    
    Change-Id: I0ffb0c0a59690917217fd3d5d7cdf8dfb092e364
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/191869
    Tested-by: Jenkins
    Reviewed-by: Michael Weghorn <[email protected]>

diff --git a/sw/source/ui/config/mailconfigpage.cxx 
b/sw/source/ui/config/mailconfigpage.cxx
index 4e40badaa21b..77e366aa2255 100644
--- a/sw/source/ui/config/mailconfigpage.cxx
+++ b/sw/source/ui/config/mailconfigpage.cxx
@@ -253,8 +253,9 @@ IMPL_LINK_NOARG(SwMailConfigPage, AuthenticationHdl, 
weld::Button&, void)
 
 IMPL_LINK_NOARG(SwMailConfigPage, TestHdl, weld::Button&, void)
 {
-    SwTestAccountSettingsDialog aDlg(this);
-    aDlg.run();
+    std::shared_ptr<SwTestAccountSettingsDialog> pDialog
+        = std::make_shared<SwTestAccountSettingsDialog>(this);
+    weld::DialogController::runAsync(pDialog, [](int) {});
 }
 
 IMPL_LINK(SwMailConfigPage, SecureHdl, weld::Toggleable&, rBox, void)
diff --git a/sw/uiconfig/swriter/ui/testmailsettings.ui 
b/sw/uiconfig/swriter/ui/testmailsettings.ui
index b774d8cde234..0c096d652185 100644
--- a/sw/uiconfig/swriter/ui/testmailsettings.ui
+++ b/sw/uiconfig/swriter/ui/testmailsettings.ui
@@ -9,6 +9,7 @@
     <property name="can-focus">False</property>
     <property name="border-width">6</property>
     <property name="title" translatable="yes" 
context="testmailsettings|TestMailSettings">Test Account Settings</property>
+    <property name="modal">True</property>
     <property name="type-hint">dialog</property>
     <child internal-child="vbox">
       <object class="GtkBox" id="dialog-vbox1">

Reply via email to