vcl/inc/jsdialog/jsdialogbuilder.hxx |    7 ++++++-
 1 file changed, 6 insertions(+), 1 deletion(-)

New commits:
commit 19a70b8c4b6d4886e8b65c85bb737f92369569a0
Author:     Szymon Kłos <[email protected]>
AuthorDate: Mon Feb 12 22:11:25 2024 +0100
Commit:     Szymon Kłos <[email protected]>
CommitDate: Tue Feb 13 11:57:52 2024 +0100

    jsdialog: use action for set_sensitive
    
    This will reduce protocol volume as we will send short
    message instead of JSON for the complete widget.
    
    Signed-off-by: Szymon Kłos <[email protected]>
    Change-Id: I5e7541915f7e2da4bf822b99a05cc3066073334e
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/163261
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/vcl/inc/jsdialog/jsdialogbuilder.hxx 
b/vcl/inc/jsdialog/jsdialogbuilder.hxx
index 6e611c4f962c..edd49c1804a7 100644
--- a/vcl/inc/jsdialog/jsdialogbuilder.hxx
+++ b/vcl/inc/jsdialog/jsdialogbuilder.hxx
@@ -420,7 +420,12 @@ public:
         bool bIsSensitive = BaseInstanceClass::get_sensitive();
         BaseInstanceClass::set_sensitive(sensitive);
         if (bIsSensitive != sensitive)
-            sendUpdate();
+        {
+            std::unique_ptr<jsdialog::ActionDataMap> pMap
+                = std::make_unique<jsdialog::ActionDataMap>();
+            (*pMap)[ACTION_TYPE ""_ostr] = (sensitive ? u"enable" : 
u"disable");
+            sendAction(std::move(pMap));
+        }
     }
 
     virtual css::uno::Reference<css::datatransfer::dnd::XDropTarget> 
get_drop_target() override

Reply via email to