include/sfx2/sidebar/Panel.hxx | 1 + sfx2/source/sidebar/Deck.cxx | 4 +++- 2 files changed, 4 insertions(+), 1 deletion(-)
New commits: commit 39cbba45d1aa53a12e731f91e6da59ab88dbb69b Author: Szymon Kłos <szymon.k...@collabora.com> AuthorDate: Mon Apr 28 15:11:58 2025 +0000 Commit: Caolán McNamara <caolan.mcnam...@collabora.com> CommitDate: Mon Apr 28 18:21:55 2025 +0200 jsdialog: sidebar: use vcl ids for panels JSDialog API cannot communicate without vcl id of a widget Change-Id: Ic6bd0d430207f32cf631564102511eae7130b7bb Reviewed-on: https://gerrit.libreoffice.org/c/core/+/184721 Tested-by: Jenkins CollaboraOffice <jenkinscollaboraoff...@gmail.com> Reviewed-by: Caolán McNamara <caolan.mcnam...@collabora.com> diff --git a/include/sfx2/sidebar/Panel.hxx b/include/sfx2/sidebar/Panel.hxx index 0e81ba3a4a15..9a4ec617bbf3 100644 --- a/include/sfx2/sidebar/Panel.hxx +++ b/include/sfx2/sidebar/Panel.hxx @@ -62,6 +62,7 @@ public: SAL_DLLPRIVATE PanelTitleBar* GetTitleBar() const; SAL_DLLPRIVATE weld::Box* GetContents() const; + SAL_DLLPRIVATE const weld::Box* GetContainer() const { return mxContainer.get(); } SAL_DLLPRIVATE void Show(bool bShow); bool IsTitleBarOptional() const { return mbIsTitleBarOptional; } SAL_DLLPRIVATE void SetUIElement(const css::uno::Reference<css::ui::XUIElement>& rxElement); diff --git a/sfx2/source/sidebar/Deck.cxx b/sfx2/source/sidebar/Deck.cxx index f42f0de2a86b..2db1569be919 100644 --- a/sfx2/source/sidebar/Deck.cxx +++ b/sfx2/source/sidebar/Deck.cxx @@ -152,7 +152,9 @@ void Deck::DumpAsPropertyTree(tools::JsonWriter& rJsonWriter) continue; auto childNode = rJsonWriter.startStruct(); - rJsonWriter.put("id", it->GetId()); + // JSDialog references widget by vcl id + rJsonWriter.put("id", it->GetContainer()->get_buildable_name()); + rJsonWriter.put("name", it->GetId()); rJsonWriter.put("type", "panel"); rJsonWriter.put("text", it->GetTitle()); rJsonWriter.put("enabled", true);