include/vcl/weld.hxx | 3 +++ include/vcl/window.hxx | 3 +++ svx/uiconfig/ui/sidebarparagraph.ui | 35 +++++++++++++++++++++++++++++++++++ vcl/inc/qt5/QtInstanceWidget.hxx | 4 ++++ vcl/inc/salvtables.hxx | 4 ++++ vcl/inc/window.h | 1 + vcl/qt5/QtInstanceWidget.cxx | 4 ++++ vcl/source/app/salvtables.cxx | 4 ++++ vcl/source/window/window.cxx | 2 ++ vcl/source/window/window2.cxx | 15 +++++++++++++++ vcl/unx/gtk3/gtkinst.cxx | 9 +++++++++ 11 files changed, 84 insertions(+)
New commits: commit 60fc3dcc2ab77e3905c66b5ad1eda08cdc89dec9 Author: Henry Castro <[email protected]> AuthorDate: Wed Feb 4 08:11:05 2026 -0400 Commit: Caolán McNamara <[email protected]> CommitDate: Fri Feb 27 09:15:39 2026 +0100 vcl: add Cargo text generic data It's useful to send generic custom JSON properties to the client side. Signed-off-by: Henry Castro <[email protected]> Change-Id: Ic58dc0ade0e1c247a68eac4164b5c2afe6ecc631 Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198684 Tested-by: Jenkins CollaboraOffice <[email protected]> Reviewed-by: Caolán McNamara <[email protected]> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200541 diff --git a/include/vcl/weld.hxx b/include/vcl/weld.hxx index 9d5f2257bf2a..b1182382e570 100644 --- a/include/vcl/weld.hxx +++ b/include/vcl/weld.hxx @@ -316,6 +316,9 @@ public: virtual bool get_direction() const = 0; virtual void set_direction(bool bRTL) = 0; + virtual const OUString& get_cargo_text() = 0; + virtual void set_cargo_text(const OUString& rCargo) = 0; + /* Increases the freeze count on widget. If the freeze count is non-zero, emission of the widget's notifications diff --git a/include/vcl/window.hxx b/include/vcl/window.hxx index bb793d71ea51..e42c69aa5c08 100644 --- a/include/vcl/window.hxx +++ b/include/vcl/window.hxx @@ -1053,6 +1053,9 @@ public: void SetHelpId( const OUString& ); const OUString& GetHelpId() const; + void SetCargoText( const OUString& rCargoText ); + const OUString& GetCargoText() const; + sal_uInt16 GetChildCount() const; vcl::Window* GetChild( sal_uInt16 nChild ) const; vcl::Window* GetWindow( GetWindowType nType ) const; diff --git a/vcl/inc/qt5/QtInstanceWidget.hxx b/vcl/inc/qt5/QtInstanceWidget.hxx index 045b1c9855ab..8a77f7898be5 100644 --- a/vcl/inc/qt5/QtInstanceWidget.hxx +++ b/vcl/inc/qt5/QtInstanceWidget.hxx @@ -133,6 +133,10 @@ public: virtual void set_direction(bool bRTL) override; + const OUString& get_cargo_text() override; + + void set_cargo_text(const OUString& rCargo) override; + virtual void freeze() override; virtual void thaw() override; diff --git a/vcl/inc/salvtables.hxx b/vcl/inc/salvtables.hxx index 17f29f3d6132..ded6170b5990 100644 --- a/vcl/inc/salvtables.hxx +++ b/vcl/inc/salvtables.hxx @@ -344,6 +344,10 @@ public: virtual void set_direction(bool bRTL) override; + virtual const OUString& get_cargo_text() override; + + virtual void set_cargo_text(const OUString& rCargo) override; + virtual void freeze() override; virtual void thaw() override; diff --git a/vcl/inc/window.h b/vcl/inc/window.h index 3173eac28712..b2190c327761 100644 --- a/vcl/inc/window.h +++ b/vcl/inc/window.h @@ -283,6 +283,7 @@ public: OUString maHelpText; OUString maQuickHelpText; OUString maID; + OUString maCargoText; InputContext maInputContext; css::uno::Reference< css::awt::XVclWindowPeer > mxWindowPeer; rtl::Reference<comphelper::OAccessible> mpAccessible; diff --git a/vcl/qt5/QtInstanceWidget.cxx b/vcl/qt5/QtInstanceWidget.cxx index 8531e279703a..c8457995f37c 100644 --- a/vcl/qt5/QtInstanceWidget.cxx +++ b/vcl/qt5/QtInstanceWidget.cxx @@ -687,6 +687,10 @@ bool QtInstanceWidget::get_direction() const return bRTL; } +const OUString& QtInstanceWidget::get_cargo_text() { return EMPTY_OUSTRING; } + +void QtInstanceWidget::set_cargo_text(const OUString& /*rCargo*/) {} + void QtInstanceWidget::set_direction(bool bRTL) { SolarMutexGuard g; diff --git a/vcl/source/app/salvtables.cxx b/vcl/source/app/salvtables.cxx index 9bd614688618..cbae738545ad 100644 --- a/vcl/source/app/salvtables.cxx +++ b/vcl/source/app/salvtables.cxx @@ -604,6 +604,10 @@ bool SalInstanceWidget::get_direction() const { return m_xWidget->IsRTLEnabled() void SalInstanceWidget::set_direction(bool bRTL) { m_xWidget->EnableRTL(bRTL); } +const OUString& SalInstanceWidget::get_cargo_text() { return m_xWidget->GetCargoText(); }; + +void SalInstanceWidget::set_cargo_text(const OUString& rCargo) { m_xWidget->SetCargoText(rCargo); } + void SalInstanceWidget::freeze() { if (m_nFreezeCount == 0) diff --git a/vcl/source/window/window2.cxx b/vcl/source/window/window2.cxx index 93a81bb259a6..435c82f1afa7 100644 --- a/vcl/source/window/window2.cxx +++ b/vcl/source/window/window2.cxx @@ -36,6 +36,7 @@ #include <vcl/settings.hxx> #include <vcl/builder.hxx> #include <o3tl/string_view.hxx> +#include <tools/json_writer.hxx> #include <window.h> #include <svdata.hxx> @@ -1318,6 +1319,20 @@ const OUString& Window::GetQuickHelpText() const return mpWindowImpl->maQuickHelpText; } +void Window::SetCargoText( const OUString& rCargoText ) +{ + if (mpWindowImpl) + mpWindowImpl->maCargoText = rCargoText; +} + +const OUString& Window::GetCargoText() const +{ + if (mpWindowImpl) + return mpWindowImpl->maCargoText; + + return EMPTY_OUSTRING; +} + bool Window::IsCreatedWithToolkit() const { return mpWindowImpl->mbCreatedWithToolkit; diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx index 66d9e7b66457..95e3bf834bed 100644 --- a/vcl/unx/gtk3/gtkinst.cxx +++ b/vcl/unx/gtk3/gtkinst.cxx @@ -4002,6 +4002,15 @@ public: gtk_widget_set_direction(m_pWidget, bRTL ? GTK_TEXT_DIR_RTL : GTK_TEXT_DIR_LTR); } + const OUString& get_cargo_text() override + { + return EMPTY_OUSTRING; + } + + void set_cargo_text(const OUString& /*rCargo*/) override + { + } + virtual void freeze() override { ++m_nFreezeCount; commit ea86fa03fd459cde3645936fe93c9b4e21e92bfb Author: codewithvk <[email protected]> AuthorDate: Tue Feb 17 15:34:18 2026 +0530 Commit: Caolán McNamara <[email protected]> CommitDate: Fri Feb 27 09:15:29 2026 +0100 a11y: add grouping roles to sidebar paragraph panel toolbars Signed-off-by: codewithvk <[email protected]> Change-Id: I39357a4b755a31a7c1a293ff9a74d423701b16ff Reviewed-on: https://gerrit.libreoffice.org/c/core/+/199534 Tested-by: Jenkins CollaboraOffice <[email protected]> Reviewed-by: Caolán McNamara <[email protected]> Reviewed-by: Parth Raiyani <[email protected]> Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200534 Tested-by: Caolán McNamara <[email protected]> diff --git a/svx/uiconfig/ui/sidebarparagraph.ui b/svx/uiconfig/ui/sidebarparagraph.ui index fa9e981c93d7..34686978d2c9 100644 --- a/svx/uiconfig/ui/sidebarparagraph.ui +++ b/svx/uiconfig/ui/sidebarparagraph.ui @@ -132,6 +132,11 @@ <property name="homogeneous">False</property> </packing> </child> + <child internal-child="accessible"> + <object class="AtkObject" id="horizontalalignment-atkobject"> + <property name="AtkObject::accessible-role">grouping</property> + </object> + </child> </object> <packing> <property name="expand">False</property> @@ -168,6 +173,11 @@ <property name="homogeneous">False</property> </packing> </child> + <child internal-child="accessible"> + <object class="AtkObject" id="writedirection-atkobject"> + <property name="AtkObject::accessible-role">grouping</property> + </object> + </child> </object> <packing> <property name="expand">False</property> @@ -221,6 +231,11 @@ <property name="position">2</property> </packing> </child> + <child internal-child="accessible"> + <object class="AtkObject" id="box1-atkobject"> + <property name="AtkObject::accessible-role">grouping</property> + </object> + </child> </object> <packing> <property name="left-attach">0</property> @@ -278,6 +293,11 @@ <property name="homogeneous">False</property> </packing> </child> + <child internal-child="accessible"> + <object class="AtkObject" id="paraspacing-atkobject"> + <property name="AtkObject::accessible-role">grouping</property> + </object> + </child> </object> <packing> <property name="expand">False</property> @@ -478,6 +498,11 @@ <property name="homogeneous">False</property> </packing> </child> + <child internal-child="accessible"> + <object class="AtkObject" id="indent-atkobject"> + <property name="AtkObject::accessible-role">grouping</property> + </object> + </child> </object> <packing> <property name="expand">False</property> @@ -856,6 +881,11 @@ <property name="homogeneous">False</property> </packing> </child> + <child internal-child="accessible"> + <object class="AtkObject" id="numberbullet-atkobject"> + <property name="AtkObject::accessible-role">grouping</property> + </object> + </child> </object> <packing> <property name="left-attach">0</property> @@ -1026,6 +1056,11 @@ <property name="position">0</property> </packing> </child> + <child internal-child="accessible"> + <object class="AtkObject" id="box2-atkobject"> + <property name="AtkObject::accessible-role">grouping</property> + </object> + </child> </object> <packing> <property name="expand">False</property> diff --git a/vcl/source/window/window.cxx b/vcl/source/window/window.cxx index acb2be0c9a8c..d3a481d03d66 100644 --- a/vcl/source/window/window.cxx +++ b/vcl/source/window/window.cxx @@ -3414,6 +3414,8 @@ void Window::DumpAsPropertyTree(tools::JsonWriter& rJsonWriter) sal_uInt16 nAccessibleRole = GetAccessibleRole(); if (nAccessibleRole == css::accessibility::AccessibleRole::PAGE_TAB_LIST) sAccRole = "tablist"; + else if (nAccessibleRole == css::accessibility::AccessibleRole::GROUP_BOX) + sAccRole = "group"; vcl::Window* pAccLabelFor = getAccessibleRelationLabelFor(); if (pAccLabelFor)
