vcl/jsdialog/enabled.cxx     |    1 +
 vcl/source/edit/vclmedit.cxx |    2 ++
 2 files changed, 3 insertions(+)

New commits:
commit 479b54677b62d4dc9f3cab00701200584d2c8a25
Author:     Andras Timar <[email protected]>
AuthorDate: Sun Feb 15 13:38:29 2026 +0100
Commit:     Szymon Kłos <[email protected]>
CommitDate: Sun Feb 15 18:25:43 2026 +0100

    jsdialog: fix View Certificate dialog Details tab and read-only TextViews
    
    The Details tab of the View Certificate dialog was non-interactive:
    selecting different fields didn't update the value edit box below.
    Root cause: xmlsec/ui/certdetails.ui was missing from the JSDialog
    enabled list, so its widgets were plain SalInstance types instead of
    JSWidgets, meaning no callbacks or updates reached the browser.
    
    Additionally, read-only multiline edit fields (on both the Details
    and Certificate Path tabs) were rendered as writable textareas.
    VclMultiLineEdit::DumpAsPropertyTree only output the "cursor"
    property (from IsCursorEnabled) but not the read-only state.
    Since SetReadOnly doesn't affect IsCursorEnabled, the browser
    never knew the field should be non-editable. Now DumpAsPropertyTree
    also outputs "readonly": true when the edit is read-only.
    
    Change-Id: If7349234ad6def7ab714da3957ea6654b7b8141b
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199405
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-by: Szymon Kłos <[email protected]>

diff --git a/vcl/jsdialog/enabled.cxx b/vcl/jsdialog/enabled.cxx
index aa36f751c134..7a134b2c005e 100644
--- a/vcl/jsdialog/enabled.cxx
+++ b/vcl/jsdialog/enabled.cxx
@@ -380,6 +380,7 @@ constexpr auto OtherDialogList
         { u"writerperfect/ui/exportepub.ui" },
         { u"writerperfect/ui/wpftencodingdialog.ui" },
         // xmlsec
+        { u"xmlsec/ui/certdetails.ui" },
         { u"xmlsec/ui/certgeneral.ui" },
         { u"xmlsec/ui/certpage.ui" },
         { u"xmlsec/ui/digitalsignaturesdialog.ui" },
diff --git a/vcl/source/edit/vclmedit.cxx b/vcl/source/edit/vclmedit.cxx
index 6df7c34917cd..02291ed37340 100644
--- a/vcl/source/edit/vclmedit.cxx
+++ b/vcl/source/edit/vclmedit.cxx
@@ -1509,6 +1509,8 @@ void 
VclMultiLineEdit::DumpAsPropertyTree(tools::JsonWriter& rJsonWriter)
     Edit::DumpAsPropertyTree(rJsonWriter);
 
     rJsonWriter.put("cursor", 
pImpVclMEdit->GetTextWindow()->GetTextView()->IsCursorEnabled());
+    if (IsReadOnly())
+        rJsonWriter.put("readonly", true);
 }
 
 /* vim:set shiftwidth=4 softtabstop=4 expandtab: */

Reply via email to