desktop/source/lib/init.cxx |   14 ++++++++++----
 1 file changed, 10 insertions(+), 4 deletions(-)

New commits:
commit 6fd6fc9d351527059d7a7ded3155f772c5e0982a
Author:     Szymon Kłos <szymon.k...@collabora.com>
AuthorDate: Thu Mar 20 08:16:12 2025 +0100
Commit:     Caolán McNamara <caolan.mcnam...@collabora.com>
CommitDate: Thu Mar 20 11:00:47 2025 +0100

    jsdialogs: shortcut legacy mobile-sidebar update
    
    In the past we used UI testing not welding for user interaction
    and updates so it was needed to send full update after every change.
    Use shortcut to avoid unnecessary operations.
    
    Change-Id: Ib3715e2287d6cc8b70db495b93cf09dd9aa20b14
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/183132
    Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com>
    Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com>
    Tested-by: Caolán McNamara <caolan.mcnam...@collabora.com>

diff --git a/desktop/source/lib/init.cxx b/desktop/source/lib/init.cxx
index d7647439ea72..d2c310ef721a 100644
--- a/desktop/source/lib/init.cxx
+++ b/desktop/source/lib/init.cxx
@@ -5069,7 +5069,17 @@ static void lcl_sendDialogEvent(unsigned long long int 
nWindowId, const char* pA
 
         // special values for window id
         if (nWindowId == static_cast<unsigned long long int>(-1))
+        {
             sWindowId = sCurrentShellId + "sidebar";
+
+            // force sidebar resend - for legacy mobile-wizard: {"id":"-1"}
+            if (aMap.size() == 1)
+            {
+                // force resend - used in mobile-wizard
+                jsdialog::SendFullUpdate(sCurrentShellId + "sidebar", 
u"Panel"_ustr);
+                return;
+            }
+        }
         if (nWindowId == static_cast<unsigned long long int>(-2))
             sWindowId = sCurrentShellId + "notebookbar";
         if (nWindowId == static_cast<unsigned long long int>(-3))
@@ -5093,10 +5103,6 @@ static void lcl_sendDialogEvent(unsigned long long int 
nWindowId, const char* pA
         // these dialogs are created with WindowId "0"
         if (!SfxViewShell::Current() && jsdialog::ExecuteAction(u"0"_ustr, 
sControlId, aMap))
             return;
-
-        // force resend - used in mobile-wizard
-        jsdialog::SendFullUpdate(sCurrentShellId + "sidebar", u"Panel"_ustr);
-
     }
     catch (std::out_of_range& e)
     {

Reply via email to