chart2/source/controller/dialogs/ChartResourceGroups.cxx       |    3 
 chart2/source/controller/dialogs/ChartTypeDialogController.cxx |  545 ++++--
 chart2/source/controller/dialogs/tp_ChartType.cxx              |   36 
 chart2/source/controller/dialogs/tp_ChartType.hxx              |    8 
 chart2/source/controller/sidebar/ChartTypePanel.cxx            |   41 
 chart2/source/controller/sidebar/ChartTypePanel.hxx            |    6 
 chart2/source/inc/ChartResourceGroups.hxx                      |    1 
 chart2/source/inc/ChartTypeDialogController.hxx                |   46 
 chart2/uiconfig/ui/sidebartype.ui                              |   72 
 chart2/uiconfig/ui/tp_ChartType.ui                             |  786 +++++----
 chart2/uiconfig/ui/tp_DataSource.ui                            |    1 
 compilerplugins/clang/moveparam.cxx                            |    6 
 cui/qa/uitest/tabpages/tpcolor.py                              |    4 
 cui/source/factory/dlgfact.cxx                                 |   21 
 cui/source/factory/dlgfact.hxx                                 |    5 
 cui/source/inc/cuitabarea.hxx                                  |   97 -
 cui/source/inc/numpages.hxx                                    |   27 
 cui/source/tabpages/backgrnd.cxx                               |   30 
 cui/source/tabpages/chardlg.cxx                                |    2 
 cui/source/tabpages/numpages.cxx                               |  189 +-
 cui/source/tabpages/tparea.cxx                                 |  348 ++--
 cui/uiconfig/ui/areatabpage.ui                                 |  276 +--
 cui/uiconfig/ui/borderpage.ui                                  |    5 
 cui/uiconfig/ui/charnamepage.ui                                |   15 
 cui/uiconfig/ui/colorpage.ui                                   |   69 
 cui/uiconfig/ui/effectspage.ui                                 |    9 
 cui/uiconfig/ui/gradientpage.ui                                |   40 
 cui/uiconfig/ui/hatchpage.ui                                   |    8 
 cui/uiconfig/ui/imagetabpage.ui                                |   52 
 cui/uiconfig/ui/numberingformatpage.ui                         |    6 
 cui/uiconfig/ui/numberingoptionspage.ui                        |  150 +
 cui/uiconfig/ui/numberingpositionpage.ui                       |    2 
 cui/uiconfig/ui/pageformatpage.ui                              |    5 
 cui/uiconfig/ui/paragalignpage.ui                              |   15 
 cui/uiconfig/ui/paraindentspacing.ui                           |   30 
 cui/uiconfig/ui/patterntabpage.ui                              |   10 
 cui/uiconfig/ui/pickgraphicpage.ui                             |   47 
 cui/uiconfig/ui/picknumberingpage.ui                           |   36 
 cui/uiconfig/ui/pickoutlinepage.ui                             |   36 
 cui/uiconfig/ui/specialcharacters.ui                           |   76 
 cui/uiconfig/ui/textflowpage.ui                                |   24 
 cui/uiconfig/ui/twolinespage.ui                                |   12 
 formula/uiconfig/ui/formuladialog.ui                           |   31 
 formula/uiconfig/ui/functionpage.ui                            |    8 
 formula/uiconfig/ui/parameter.ui                               |   15 
 formula/uiconfig/ui/structpage.ui                              |    4 
 include/sfx2/charwin.hxx                                       |   23 
 include/sfx2/sfxdlg.hxx                                        |   14 
 include/sfx2/sfxsids.hrc                                       |    2 
 include/svl/srchitem.hxx                                       |    3 
 include/svtools/ctrlbox.hxx                                    |   10 
 include/svx/charmap.hxx                                        |    2 
 include/svx/cuicharmap.hxx                                     |   83 -
 include/svx/itemwin.hxx                                        |    8 
 include/svx/searchcharmap.hxx                                  |   67 
 include/svx/sidebar/LineWidthPopup.hxx                         |   15 
 include/svx/srchdlg.hxx                                        |    3 
 include/svx/svxbmpnumiconview.hxx                              |    3 
 include/svx/tbcontrl.hxx                                       |    1 
 officecfg/registry/data/org/openoffice/Office/Accelerators.xcu |    4 
 sc/qa/uitest/calc_tests/cellBackgroundColorSelector.py         |   16 
 sc/qa/uitest/calc_tests/formatCells.py                         |   13 
 sc/qa/uitest/chart/chartArea.py                                |    4 
 sc/qa/uitest/chart2/tdf142851.py                               |   10 
 sc/sdi/tabvwsh.sdi                                             |    1 
 sc/source/ui/inc/tabvwsh.hxx                                   |    2 
 sc/source/ui/view/tabvwsh4.cxx                                 |   37 
 sd/qa/uitest/impress_tests/tdf134734.py                        |    4 
 sd/qa/uitest/impress_tests/tdf137729.py                        |    4 
 sd/qa/uitest/impress_tests/tdf152295.py                        |   20 
 sd/qa/uitest/impress_tests2/tdf125449.py                       |    4 
 sd/qa/uitest/impress_tests2/tdf149787.py                       |    4 
 sd/sdi/_drvwsh.sdi                                             |    5 
 sd/source/ui/inc/DrawViewShell.hxx                             |    2 
 sd/source/ui/view/drviewse.cxx                                 |   36 
 sfx2/inc/charmapcontrol.hxx                                    |    2 
 sfx2/sdi/sfx.sdi                                               |    1 
 sfx2/source/control/charmapcontrol.cxx                         |   43 
 sfx2/source/dialog/StyleList.cxx                               |   29 
 sfx2/uiconfig/ui/templatepanel.ui                              |    1 
 solenv/clang-format/excludelist                                |    3 
 solenv/sanitizers/ui/cui.suppr                                 |    2 
 solenv/sanitizers/ui/modules/schart.suppr                      |    1 
 solenv/sanitizers/ui/modules/swriter.suppr                     |    9 
 solenv/sanitizers/ui/svx.suppr                                 |    2 
 svl/source/items/srchitem.cxx                                  |    6 
 svtools/source/control/ctrlbox.cxx                             |  132 +
 svtools/uiconfig/ui/linewindow.ui                              |   20 
 svx/Library_svx.mk                                             |    2 
 svx/source/dialog/charmap.cxx                                  |    6 
 svx/source/dialog/cuicharmap.cxx                               |  821 
+++++++---
 svx/source/dialog/hdft.cxx                                     |    2 
 svx/source/dialog/searchcharmap.cxx                            |  320 ---
 svx/source/dialog/srchdlg.cxx                                  |   24 
 svx/source/dialog/svxbmpnumiconview.cxx                        |   72 
 svx/source/sidebar/line/LineWidthPopup.cxx                     |  225 ++
 svx/source/sidebar/line/LineWidthValueSet.cxx                  |  163 -
 svx/source/sidebar/line/LineWidthValueSet.hxx                  |   55 
 svx/source/tbxctrls/linectrl.cxx                               |  275 ++-
 svx/source/tbxctrls/tbcontrl.cxx                               |  517 +++---
 svx/uiconfig/ui/findreplacedialog.ui                           |    2 
 svx/uiconfig/ui/floatingframeborder.ui                         |   34 
 svx/uiconfig/ui/floatinglineend.ui                             |   38 
 svx/uiconfig/ui/floatinglineproperty.ui                        |   34 
 svx/uiconfig/ui/floatinglinestyle.ui                           |   38 
 svx/uiconfig/ui/gotopagedialog.ui                              |    5 
 svx/uiconfig/ui/headfootformatpage.ui                          |    2 
 svx/uiconfig/ui/paralinespacingcontrol.ui                      |    6 
 sw/inc/view.hxx                                                |    1 
 sw/qa/extras/accessibility/dialogs.cxx                         |   47 
 sw/qa/uitest/table/tableProperties.py                          |    8 
 sw/qa/uitest/table/tdf109083.py                                |    4 
 sw/qa/uitest/table/tdf116737.py                                |    4 
 sw/qa/uitest/table/tdf144843.py                                |    5 
 sw/qa/uitest/writer_tests/tdf134734.py                         |    4 
 sw/qa/uitest/writer_tests2/formatBulletsNumbering.py           |   50 
 sw/qa/uitest/writer_tests2/formatParagraph.py                  |   16 
 sw/qa/uitest/writer_tests3/pageDialog.py                       |   36 
 sw/qa/uitest/writer_tests3/specialCharacter.py                 |    8 
 sw/qa/uitest/writer_tests5/tdf122045.py                        |    4 
 sw/sdi/_viewsh.sdi                                             |    5 
 sw/source/ui/fldui/fldvar.cxx                                  |    4 
 sw/source/ui/frmdlg/column.cxx                                 |    6 
 sw/source/ui/frmdlg/frmpage.cxx                                |    2 
 sw/source/ui/index/cnttab.cxx                                  |    2 
 sw/source/ui/misc/num.cxx                                      |    2 
 sw/source/ui/misc/outline.cxx                                  |   15 
 sw/source/ui/table/tabledlg.cxx                                |   10 
 sw/source/uibase/uiview/viewsrch.cxx                           |   27 
 sw/uiconfig/swriter/ui/captionoptions.ui                       |    1 
 sw/uiconfig/swriter/ui/columnpage.ui                           |   13 
 sw/uiconfig/swriter/ui/fldrefpage.ui                           |   82 
 sw/uiconfig/swriter/ui/fldvarpage.ui                           |    5 
 sw/uiconfig/swriter/ui/frmaddpage.ui                           |    7 
 sw/uiconfig/swriter/ui/frmtypepage.ui                          |   16 
 sw/uiconfig/swriter/ui/indentpage.ui                           |    4 
 sw/uiconfig/swriter/ui/insertbookmark.ui                       |    5 
 sw/uiconfig/swriter/ui/insertcaption.ui                        |   85 -
 sw/uiconfig/swriter/ui/navigatorpanel.ui                       |    1 
 sw/uiconfig/swriter/ui/outlinepositionpage.ui                  |    2 
 sw/uiconfig/swriter/ui/sidebarquickfind.ui                     |  103 -
 sw/uiconfig/swriter/ui/sidebarwrap.ui                          |    6 
 sw/uiconfig/swriter/ui/tablecolumnpage.ui                      |   18 
 sw/uiconfig/swriter/ui/tocentriespage.ui                       |  156 +
 sw/uiconfig/swriter/ui/tocindexpage.ui                         |   17 
 sw/uiconfig/swriter/ui/wordcount.ui                            |   95 +
 sw/uiconfig/swriter/ui/wrappage.ui                             |    2 
 uitest/demo_ui/char_dialog.py                                  |    4 
 uitest/impress_tests/backgrounds.py                            |   36 
 vcl/jsdialog/enabled.cxx                                       |    3 
 vcl/jsdialog/executor.cxx                                      |   23 
 vcl/source/treelist/iconview.cxx                               |   17 
 vcl/source/window/cursor.cxx                                   |    3 
 vcl/source/window/window.cxx                                   |   14 
 154 files changed, 4567 insertions(+), 2958 deletions(-)

New commits:
commit b4def1d2a1a4c66a97e48afb3119143487b054ea
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:56:44 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:49 2026 +0000

    a11y: enhance accessibility features in various UI components
    
    - rename conflicting label ids
    - add static role for relevant GtkLabels
    
    Signed-off-by: Parth Raiyani <[email protected]>
    Change-Id: I959693ba5251adf12da785f8aad2147504009b18
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198312
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins CollaboraOffice <[email protected]>

diff --git a/cui/source/tabpages/numpages.cxx b/cui/source/tabpages/numpages.cxx
index 0ad2d96bc438..b73fd2eccc6a 100644
--- a/cui/source/tabpages/numpages.cxx
+++ b/cui/source/tabpages/numpages.cxx
@@ -2390,7 +2390,7 @@ 
SvxNumPositionTabPage::SvxNumPositionTabPage(weld::Container* pPage, weld::Dialo
     , bInInintControl(false)
     , bLabelAlignmentPosAndSpaceModeActive(false)
     , m_xLevelLB(m_xBuilder->weld_tree_view(u"levellb"_ustr))
-    , m_xDistBorderFT(m_xBuilder->weld_label(u"indent"_ustr))
+    , m_xDistBorderFT(m_xBuilder->weld_label(u"numposindent"_ustr))
     , m_xDistBorderMF(m_xBuilder->weld_metric_spin_button(u"indentmf"_ustr, 
FieldUnit::CM))
     , m_xRelativeCB(m_xBuilder->weld_check_button(u"relative"_ustr))
     , m_xIndentFT(m_xBuilder->weld_label(u"numberingwidth"_ustr))
diff --git a/cui/uiconfig/ui/numberingpositionpage.ui 
b/cui/uiconfig/ui/numberingpositionpage.ui
index 85b766809132..298366dafbc6 100644
--- a/cui/uiconfig/ui/numberingpositionpage.ui
+++ b/cui/uiconfig/ui/numberingpositionpage.ui
@@ -285,7 +285,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="indent">
+                  <object class="GtkLabel" id="numposindent">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="numberingpositionpage|indent">Indent:</property>
diff --git a/cui/uiconfig/ui/pageformatpage.ui 
b/cui/uiconfig/ui/pageformatpage.ui
index a680f0c3b25d..fbf8347c945b 100644
--- a/cui/uiconfig/ui/pageformatpage.ui
+++ b/cui/uiconfig/ui/pageformatpage.ui
@@ -804,6 +804,11 @@
         <property name="label" translatable="yes" 
context="pageformatpage|labelMsg">The margin settings are out of print range.
 
 Do you still want to apply these settings?</property>
+        <child internal-child="accessible">
+          <object class="AtkObject" id="labelMsg-atkobject">
+            <property name="AtkObject::accessible-role">static</property>
+          </object>
+        </child>
       </object>
       <packing>
         <property name="left-attach">0</property>
diff --git a/cui/uiconfig/ui/paragalignpage.ui 
b/cui/uiconfig/ui/paragalignpage.ui
index aa40705593e9..6dc0dc21e079 100644
--- a/cui/uiconfig/ui/paragalignpage.ui
+++ b/cui/uiconfig/ui/paragalignpage.ui
@@ -243,6 +243,11 @@
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="paragalignpage|labelST_RIGHTALIGN_ASIAN">Force R_ight/Bottom</property>
                         <property name="use-underline">True</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" 
id="labelST_RIGHTALIGN_ASIAN-atkobject">
+                            <property 
name="AtkObject::accessible-role">static</property>
+                          </object>
+                        </child>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -255,6 +260,11 @@
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="paragalignpage|labelST_LEFTALIGN_ASIAN">Force _Left/Top</property>
                         <property name="use-underline">True</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" 
id="labelST_LEFTALIGN_ASIAN-atkobject">
+                            <property 
name="AtkObject::accessible-role">static</property>
+                          </object>
+                        </child>
                       </object>
                       <packing>
                         <property name="expand">False</property>
@@ -266,6 +276,11 @@
                       <object class="GtkLabel" id="labelST_VERTALIGN_SDR">
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="paragalignpage|labelST_VERTALIGN_SDR">Vertical</property>
+                        <child internal-child="accessible">
+                          <object class="AtkObject" 
id="labelST_VERTALIGN_SDR-atkobject">
+                            <property 
name="AtkObject::accessible-role">static</property>
+                          </object>
+                        </child>
                       </object>
                       <packing>
                         <property name="expand">False</property>
diff --git a/cui/uiconfig/ui/patterntabpage.ui 
b/cui/uiconfig/ui/patterntabpage.ui
index d315103cd1e3..4d2e00d40719 100644
--- a/cui/uiconfig/ui/patterntabpage.ui
+++ b/cui/uiconfig/ui/patterntabpage.ui
@@ -162,6 +162,11 @@
                     <property name="can_focus">False</property>
                     <property name="label" translatable="yes" 
context="patterntabpage|label4">Pattern Editor:</property>
                     <property name="xalign">0</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="label4-atkobject">
+                        <property 
name="AtkObject::accessible-role">static</property>
+                      </object>
+                    </child>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -390,6 +395,11 @@
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
+            <child internal-child="accessible">
+              <object class="AtkObject" id="label2-atkobject">
+                <property name="AtkObject::accessible-role">static</property>
+              </object>
+            </child>
           </object>
         </child>
       </object>
diff --git a/cui/uiconfig/ui/pickgraphicpage.ui 
b/cui/uiconfig/ui/pickgraphicpage.ui
index dfecd76fa922..a66523e509c7 100644
--- a/cui/uiconfig/ui/pickgraphicpage.ui
+++ b/cui/uiconfig/ui/pickgraphicpage.ui
@@ -59,6 +59,11 @@
         <property name="no-show-all">True</property>
         <property name="label" translatable="yes" 
context="pickgraphicpage|errorft">The Gallery theme 'Bullets' is empty (no 
images).</property>
         <property name="wrap">True</property>
+        <child internal-child="accessible">
+          <object class="AtkObject" id="errorft-atkobject">
+              <property name="AtkObject::accessible-role">static</property>
+          </object>
+        </child>
       </object>
       <packing>
         <property name="left-attach">0</property>
diff --git a/cui/uiconfig/ui/textflowpage.ui b/cui/uiconfig/ui/textflowpage.ui
index 0f9047f1f737..f0a377bbeee7 100644
--- a/cui/uiconfig/ui/textflowpage.ui
+++ b/cui/uiconfig/ui/textflowpage.ui
@@ -985,6 +985,11 @@
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="textflowpage|labelOrphan">lines</property>
                 <property name="xalign">0</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="labelOrphan-atkobject">
+                    <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
@@ -997,6 +1002,11 @@
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="textflowpage|labelWidow">lines</property>
                 <property name="xalign">0</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="labelWidow-atkobject">
+                    <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
diff --git a/svx/source/dialog/hdft.cxx b/svx/source/dialog/hdft.cxx
index 53bc257ba47b..5fddb8a8cd83 100644
--- a/svx/source/dialog/hdft.cxx
+++ b/svx/source/dialog/hdft.cxx
@@ -137,7 +137,7 @@ SvxHFPage::SvxHFPage(weld::Container* pPage, 
weld::DialogController* pController
     , m_xDistFT(m_xBuilder->weld_label(u"labelSpacing"_ustr))
     , m_xDistEdit(m_xBuilder->weld_metric_spin_button(u"spinSpacing"_ustr, 
FieldUnit::CM))
     , m_xDynSpacingCB(m_xBuilder->weld_check_button(u"checkDynSpacing"_ustr))
-    , m_xHeightFT(m_xBuilder->weld_label(u"labelHeight"_ustr))
+    , m_xHeightFT(m_xBuilder->weld_label(u"hfflabelHeight"_ustr))
     , m_xHeightEdit(m_xBuilder->weld_metric_spin_button(u"spinHeight"_ustr, 
FieldUnit::CM))
     , m_xHeightDynBtn(m_xBuilder->weld_check_button(u"checkAutofit"_ustr))
     , m_xBackgroundBtn(m_xBuilder->weld_button(u"buttonMore"_ustr))
diff --git a/svx/uiconfig/ui/headfootformatpage.ui 
b/svx/uiconfig/ui/headfootformatpage.ui
index bdad1120afeb..bab033c2145e 100644
--- a/svx/uiconfig/ui/headfootformatpage.ui
+++ b/svx/uiconfig/ui/headfootformatpage.ui
@@ -245,7 +245,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="labelHeight">
+                  <object class="GtkLabel" id="hfflabelHeight">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
diff --git a/sw/source/ui/table/tabledlg.cxx b/sw/source/ui/table/tabledlg.cxx
index 5363a25126d0..d2a98eee7779 100644
--- a/sw/source/ui/table/tabledlg.cxx
+++ b/sw/source/ui/table/tabledlg.cxx
@@ -746,11 +746,11 @@ SwTableColumnPage::SwTableColumnPage(weld::Container* 
pPage, weld::DialogControl
                     m_xBuilder->weld_metric_spin_button(u"width3"_ustr, 
FieldUnit::CM),
                     m_xBuilder->weld_metric_spin_button(u"width4"_ustr, 
FieldUnit::CM),
                     m_xBuilder->weld_metric_spin_button(u"width5"_ustr, 
FieldUnit::CM)}
-    , m_aTextArr { m_xBuilder->weld_label(u"1"_ustr),
-                   m_xBuilder->weld_label(u"2"_ustr),
-                   m_xBuilder->weld_label(u"3"_ustr),
-                   m_xBuilder->weld_label(u"4"_ustr),
-                   m_xBuilder->weld_label(u"5"_ustr)}
+    , m_aTextArr { m_xBuilder->weld_label(u"column1"_ustr),
+                   m_xBuilder->weld_label(u"column2"_ustr),
+                   m_xBuilder->weld_label(u"column3"_ustr),
+                   m_xBuilder->weld_label(u"column4"_ustr),
+                   m_xBuilder->weld_label(u"column5"_ustr)}
     , m_xColumnWidthsGrid(m_xBuilder->weld_grid(u"columnwidthsgrid"_ustr))
     , m_xModifyTableCB(m_xBuilder->weld_check_button(u"adaptwidth"_ustr))
     , m_xProportionalCB(m_xBuilder->weld_check_button(u"adaptcolumns"_ustr))
diff --git a/sw/uiconfig/swriter/ui/tablecolumnpage.ui 
b/sw/uiconfig/swriter/ui/tablecolumnpage.ui
index 8803bb1f8d9f..d488e367bc1b 100644
--- a/sw/uiconfig/swriter/ui/tablecolumnpage.ui
+++ b/sw/uiconfig/swriter/ui/tablecolumnpage.ui
@@ -120,7 +120,11 @@
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="tablecolumnpage|spaceft">Remaining space:</property>
                 <property name="use-underline">True</property>
-                <property name="mnemonic-widget">space</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="spaceft-atkobject">
+                    <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
@@ -300,7 +304,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="6">
+                  <object class="GtkLabel" id="column6">
                     <property name="sensitive">False</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -314,7 +318,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="1">
+                  <object class="GtkLabel" id="column1">
                     <property name="sensitive">False</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -328,7 +332,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="2">
+                  <object class="GtkLabel" id="column2">
                     <property name="sensitive">False</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -343,7 +347,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="3">
+                  <object class="GtkLabel" id="column3">
                     <property name="sensitive">False</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -358,7 +362,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="5">
+                  <object class="GtkLabel" id="column5">
                     <property name="sensitive">False</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -373,7 +377,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="4">
+                  <object class="GtkLabel" id="column4">
                     <property name="sensitive">False</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
diff --git a/sw/uiconfig/swriter/ui/wordcount.ui 
b/sw/uiconfig/swriter/ui/wordcount.ui
index f039ced95b74..d3ae9fd8f4d9 100644
--- a/sw/uiconfig/swriter/ui/wordcount.ui
+++ b/sw/uiconfig/swriter/ui/wordcount.ui
@@ -75,6 +75,11 @@
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="wordcount|label1">Words</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="label1-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
@@ -87,6 +92,11 @@
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="wordcount|label2">Characters including spaces</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="label2-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
@@ -99,6 +109,11 @@
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="wordcount|label3">Characters excluding spaces</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="label3-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
@@ -114,6 +129,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="selectwords-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -129,6 +149,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="selectchars-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -144,6 +169,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="selectcharsnospaces-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -159,6 +189,11 @@
                 <attributes>
                   <attribute name="weight" value="bold"/>
                 </attributes>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="label9-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -174,6 +209,11 @@
                 <attributes>
                   <attribute name="weight" value="bold"/>
                 </attributes>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="label10-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
@@ -189,6 +229,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="docwords-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
@@ -204,6 +249,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="docchars-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
@@ -219,6 +269,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="doccharsnospaces-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
@@ -231,6 +286,11 @@
                 <property name="no-show-all">True</property>
                 <property name="label" translatable="yes" 
context="wordcount|cjkcharsft">Asian characters and Korean words</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="cjkcharsft-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
@@ -246,6 +306,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="selectcjkchars-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -261,6 +326,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="doccjkchars-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
@@ -273,6 +343,11 @@
                 <property name="no-show-all">True</property>
                 <property name="label" translatable="yes" 
context="wordcount|standardizedpages">Standardized pages</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="standardizedpages-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
@@ -288,6 +363,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" 
id="selectstandardizedpages-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -303,6 +383,11 @@
                 <property name="label">            0</property>
                 <property name="justify">right</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" 
id="docstandardizedpages-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
@@ -315,6 +400,11 @@
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="wordcount|lbComments">Comments</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="lbComments-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
@@ -329,6 +419,11 @@
                 <property name="hexpand">True</property>
                 <property name="label">            0</property>
                 <property name="xalign">1</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="docComments-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">2</property>
commit 8d10241cfa51b9402dffc478b6c6f17834212409
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:48:00 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:49 2026 +0000

    a11y: enhance a11y in numbering options page by restructuring UI elements
    
    Signed-off-by: Parth Raiyani <[email protected]>
    Change-Id: I881c35f37a50011e6662616453d2563071374ced
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198311
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins CollaboraOffice <[email protected]>

diff --git a/cui/uiconfig/ui/numberingoptionspage.ui 
b/cui/uiconfig/ui/numberingoptionspage.ui
index 1b088870ad49..2ed6fef156d1 100644
--- a/cui/uiconfig/ui/numberingoptionspage.ui
+++ b/cui/uiconfig/ui/numberingoptionspage.ui
@@ -414,79 +414,101 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkLabel" id="prefixft">
+                      <object class="GtkFrame" id="separator_frame">
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
-                        <property name="margin-start">20</property>
-                        <property name="label" translatable="yes" 
context="numberingoptionspage|prefixft">Before:</property>
-                        <property name="use-underline">True</property>
-                        <property name="mnemonic-widget">prefix</property>
-                        <property name="xalign">1</property>
-                      </object>
-                      <packing>
-                        <property name="left-attach">0</property>
-                        <property name="top-attach">10</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkLabel" id="separator">
-                        <property name="visible">True</property>
-                        <property name="can-focus">False</property>
-                        <property name="margin-start">20</property>
-                        <property name="label" translatable="yes" 
context="numberingoptionspage|separator">Separator</property>
-                        <property name="xalign">1</property>
-                      </object>
-                      <packing>
-                        <property name="left-attach">0</property>
-                        <property name="top-attach">9</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkEntry" id="suffix">
-                        <property name="visible">True</property>
-                        <property name="can-focus">True</property>
-                        <property name="activates-default">True</property>
-                        <property name="truncate-multiline">True</property>
-                        <child internal-child="accessible">
-                          <object class="AtkObject" id="suffix-atkobject">
-                            <property name="AtkObject::accessible-description" 
translatable="yes" context="numberingoptionspage|extended_tip|suffix">Enter a 
character or the text to display behind the number in the list. To create the 
numbering scheme "1.)", enter ".)" in this box.</property>
+                        <property name="label-xalign">0</property>
+                        <property name="shadow-type">none</property>
+                        <child>
+                          <!-- n-columns=2 n-rows=2 -->
+                          <object class="GtkGrid">
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="margin-start">12</property>
+                            <property name="margin-top">6</property>
+                            <property name="row-spacing">6</property>
+                            <property name="column-spacing">12</property>
+                            <child>
+                              <object class="GtkLabel" id="prefixft">
+                                <property name="visible">True</property>
+                                <property name="can-focus">False</property>
+                                <property name="margin-start">20</property>
+                                <property name="label" translatable="yes" 
context="numberingoptionspage|prefixft">Before:</property>
+                                <property name="use-underline">True</property>
+                                <property 
name="mnemonic-widget">prefix</property>
+                                <property name="xalign">1</property>
+                              </object>
+                              <packing>
+                                <property name="left-attach">0</property>
+                                <property name="top-attach">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkEntry" id="prefix">
+                                <property name="visible">True</property>
+                                <property name="can-focus">True</property>
+                                <property 
name="activates-default">True</property>
+                                <property 
name="truncate-multiline">True</property>
+                                <child internal-child="accessible">
+                                  <object class="AtkObject" 
id="prefix-atkobject">
+                                    <property 
name="AtkObject::accessible-description" translatable="yes" 
context="numberingoptionspage|extended_tip|prefix">Enter a character or the 
text to display in front of the number in the list.</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="left-attach">1</property>
+                                <property name="top-attach">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkLabel" id="suffixft">
+                                <property name="visible">True</property>
+                                <property name="can-focus">False</property>
+                                <property name="label" translatable="yes" 
context="numberingoptionspage|suffixft">After:</property>
+                                <property name="use-underline">True</property>
+                                <property 
name="mnemonic-widget">suffix</property>
+                                <property name="xalign">1</property>
+                              </object>
+                              <packing>
+                                <property name="left-attach">0</property>
+                                <property name="top-attach">1</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkEntry" id="suffix">
+                                <property name="visible">True</property>
+                                <property name="can-focus">True</property>
+                                <property 
name="activates-default">True</property>
+                                <property 
name="truncate-multiline">True</property>
+                                <child internal-child="accessible">
+                                  <object class="AtkObject" 
id="suffix-atkobject">
+                                    <property 
name="AtkObject::accessible-description" translatable="yes" 
context="numberingoptionspage|extended_tip|suffix">Enter a character or the 
text to display behind the number in the list. To create the numbering scheme 
"1.)", enter ".)" in this box.</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="left-attach">1</property>
+                                <property name="top-attach">1</property>
+                              </packing>
+                            </child>
                           </object>
                         </child>
-                      </object>
-                      <packing>
-                        <property name="left-attach">1</property>
-                        <property name="top-attach">11</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkEntry" id="prefix">
-                        <property name="visible">True</property>
-                        <property name="can-focus">True</property>
-                        <property name="activates-default">True</property>
-                        <property name="truncate-multiline">True</property>
-                        <child internal-child="accessible">
-                          <object class="AtkObject" id="prefix-atkobject">
-                            <property name="AtkObject::accessible-description" 
translatable="yes" context="numberingoptionspage|extended_tip|prefix">Enter a 
character or the text to display in front of the number in the list.</property>
+                        <child type="label">
+                          <object class="GtkLabel" id="separator">
+                            <property name="visible">True</property>
+                            <property name="can-focus">False</property>
+                            <property name="label" translatable="yes" 
context="numberingoptionspage|separator">Separator</property>
+                            <attributes>
+                              <attribute name="weight" value="bold"/>
+                            </attributes>
                           </object>
                         </child>
                       </object>
-                      <packing>
-                        <property name="left-attach">1</property>
-                        <property name="top-attach">10</property>
-                      </packing>
-                    </child>
-                    <child>
-                      <object class="GtkLabel" id="suffixft">
-                        <property name="visible">True</property>
-                        <property name="can-focus">False</property>
-                        <property name="label" translatable="yes" 
context="numberingoptionspage|suffixft">After:</property>
-                        <property name="use-underline">True</property>
-                        <property name="mnemonic-widget">suffix</property>
-                        <property name="xalign">1</property>
-                      </object>
                       <packing>
                         <property name="left-attach">0</property>
-                        <property name="top-attach">11</property>
+                        <property name="top-attach">9</property>
+                        <property name="width">2</property>
+                        <property name="height">3</property>
                       </packing>
                     </child>
                     <child>
commit 5c7263dbc76e0ff2db2ac2e53efb6e9fdb53d5e5
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:44:00 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:49 2026 +0000

    a11y: improve accessibility in gradient page UI by updating layout
    
    Signed-off-by: Parth Raiyani <[email protected]>
    Change-Id: Ib6f9212a11802f7703b0786e588be4b607e889e9
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198310
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/cui/uiconfig/ui/gradientpage.ui b/cui/uiconfig/ui/gradientpage.ui
index 416209e5996b..a701ed95c751 100644
--- a/cui/uiconfig/ui/gradientpage.ui
+++ b/cui/uiconfig/ui/gradientpage.ui
@@ -310,25 +310,11 @@
             </child>
             <child>
               <!-- n-columns=1 n-rows=2 -->
-              <object class="GtkGrid" id="grid5">
+              <object class="GtkFrame" id="center_frame">
                 <property name="visible">True</property>
                 <property name="can-focus">False</property>
-                <property name="valign">start</property>
-                <property name="row-spacing">3</property>
-                <property name="column-spacing">6</property>
-                <child>
-                  <object class="GtkLabel" id="centerft">
-                    <property name="visible">True</property>
-                    <property name="can-focus">False</property>
-                    <property name="label" translatable="yes" 
context="gradientpage|centerft">Center ( X / Y ):</property>
-                    <property name="use-underline">True</property>
-                    <property name="xalign">0</property>
-                  </object>
-                  <packing>
-                    <property name="left-attach">0</property>
-                    <property name="top-attach">0</property>
-                  </packing>
-                </child>
+                <property name="label-xalign">0</property>
+                <property name="shadow-type">none</property>
                 <child>
                   <object class="GtkBox" id="box9">
                     <property name="visible">True</property>
@@ -374,10 +360,17 @@
                       </packing>
                     </child>
                   </object>
-                  <packing>
-                    <property name="left-attach">0</property>
-                    <property name="top-attach">1</property>
-                  </packing>
+                </child>
+                <child type="label">
+                  <object class="GtkLabel" id="centerft">
+                    <property name="visible">True</property>
+                    <property name="can-focus">False</property>
+                    <property name="label" translatable="yes" 
context="gradientpage|centerft">Center ( X / Y ):</property>
+                    <property name="use-underline">True</property>
+                    <attributes>
+                      <attribute name="weight" value="bold"/>
+                    </attributes>
+                  </object>
                 </child>
               </object>
               <packing>
@@ -743,6 +736,11 @@
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
+            <child internal-child="accessible">
+              <object class="AtkObject" id="label2-atkobject">
+                <property name="AtkObject::accessible-role">static</property>
+              </object>
+            </child>
           </object>
         </child>
       </object>
commit 2b0e0a282ee065f35880859c020281bdf5981202
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:42:42 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:49 2026 +0000

    a11y: enhance accessibility features in Area tab pages UI
    
    - rename conflicting GtkLabel ids
    - add static role in GtkLabel for better accessibility
    
    Change-Id: I0d3838192bcaaf521b476b9ac6fc3973c8100e06
    Signed-off-by: Parth Raiyani <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198309
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>

diff --git a/cui/uiconfig/ui/borderpage.ui b/cui/uiconfig/ui/borderpage.ui
index c3a1bb75353f..6ecc3a85b3dc 100644
--- a/cui/uiconfig/ui/borderpage.ui
+++ b/cui/uiconfig/ui/borderpage.ui
@@ -113,6 +113,11 @@
                 <property name="use-underline">True</property>
                 <property name="mnemonic-widget">framesel</property>
                 <property name="xalign">0</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="userdefft-atkobject">
+                    <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">0</property>
diff --git a/cui/uiconfig/ui/hatchpage.ui b/cui/uiconfig/ui/hatchpage.ui
index ba4870b25da7..44fdaf1be75a 100644
--- a/cui/uiconfig/ui/hatchpage.ui
+++ b/cui/uiconfig/ui/hatchpage.ui
@@ -165,7 +165,7 @@
             <property name="margin-start">12</property>
             <property name="margin-top">6</property>
             <child>
-              <object class="GtkLabel" id="distanceft">
+              <object class="GtkLabel" id="hatchdistanceft">
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="label" translatable="yes" 
context="hatchpage|distanceft">_Spacing:</property>
@@ -449,6 +449,11 @@
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
+            <child internal-child="accessible">
+              <object class="AtkObject" id="label1-atkobject">
+                <property name="AtkObject::accessible-role">static</property>
+              </object>
+            </child>
           </object>
         </child>
       </object>
diff --git a/cui/uiconfig/ui/imagetabpage.ui b/cui/uiconfig/ui/imagetabpage.ui
index 040fc745e5b3..2bbb6cc5adb9 100644
--- a/cui/uiconfig/ui/imagetabpage.ui
+++ b/cui/uiconfig/ui/imagetabpage.ui
@@ -620,6 +620,11 @@
             <attributes>
               <attribute name="weight" value="bold"/>
             </attributes>
+            <child internal-child="accessible">
+              <object class="AtkObject" id="label8-atkobject">
+                <property name="AtkObject::accessible-role">static</property>
+              </object>
+            </child>
           </object>
         </child>
       </object>
commit e03078252fdf1b5b86f45cd708d124df50ae8b05
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:36:38 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:48 2026 +0000

    a11y: enhance accessibility features in the table of contents entries page
    
    Change-Id: I5e2d0f972abd4888bd860c95fc13640bdaf382a0
    Signed-off-by: Parth Raiyani <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198308
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/sw/source/ui/index/cnttab.cxx b/sw/source/ui/index/cnttab.cxx
index 65a39de1a9e4..bbf2bc978204 100644
--- a/sw/source/ui/index/cnttab.cxx
+++ b/sw/source/ui/index/cnttab.cxx
@@ -1958,7 +1958,7 @@ SwTOXEntryTabPage::SwTOXEntryTabPage(weld::Container* 
pPage, weld::DialogControl
     , m_xTabPosMF(m_xBuilder->weld_metric_spin_button(u"tabstoppos"_ustr, 
FieldUnit::CM))
     , m_xAutoRightCB(m_xBuilder->weld_check_button(u"alignright"_ustr))
     , m_xFormatFrame(m_xBuilder->weld_widget(u"formatframe"_ustr))
-    , m_xMainEntryStyleFT(m_xBuilder->weld_label(u"mainstyleft"_ustr))
+    , 
m_xMainEntryStyleFT(m_xBuilder->weld_label(u"tocentriesmainstyleft"_ustr))
     , m_xMainEntryStyleLB(m_xBuilder->weld_combo_box(u"mainstyle"_ustr))
     , m_xAlphaDelimCB(m_xBuilder->weld_check_button(u"alphadelim"_ustr))
     , m_xCommaSeparatedCB(m_xBuilder->weld_check_button(u"commasep"_ustr))
diff --git a/sw/uiconfig/swriter/ui/tocentriespage.ui 
b/sw/uiconfig/swriter/ui/tocentriespage.ui
index 575cb579f187..9b06602b1e3f 100644
--- a/sw/uiconfig/swriter/ui/tocentriespage.ui
+++ b/sw/uiconfig/swriter/ui/tocentriespage.ui
@@ -195,59 +195,66 @@
                     <property name="vexpand">True</property>
                     <property name="row-spacing">6</property>
                     <child>
-                      <!-- n-columns=3 n-rows=1 -->
-                      <object class="GtkGrid" id="grid4">
+                      <object class="GtkFrame" id="structure_frame">
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
-                        <property name="column-spacing">12</property>
+                        <property name="label-xalign">0</property>
+                        <property name="shadow-type">none</property>
                         <child>
-                          <object class="GtkLabel" id="label4">
+                          <!-- n-columns=2 n-rows=1 -->
+                          <object class="GtkGrid" id="grid4">
                             <property name="visible">True</property>
                             <property name="can-focus">False</property>
-                            <property name="label" translatable="yes" 
context="tocentriespage|label4">_Structure:</property>
-                            <property name="use-underline">True</property>
-                            <property name="mnemonic-widget">token</property>
-                            <property name="xalign">0</property>
-                          </object>
-                          <packing>
-                            <property name="left-attach">0</property>
-                            <property name="top-attach">0</property>
-                          </packing>
-                        </child>
-                        <child>
-                          <object class="GtkButton" id="all">
-                            <property name="label" translatable="yes" 
context="tocentriespage|all">_All</property>
-                            <property name="visible">True</property>
-                            <property name="can-focus">True</property>
-                            <property name="receives-default">True</property>
-                            <property name="use-underline">True</property>
-                            <child internal-child="accessible">
-                              <object class="AtkObject" id="all-atkobject">
-                                <property 
name="AtkObject::accessible-description" translatable="yes" 
context="tocentriespage|extended_tip|all">Applies the current settings to all 
levels without closing the dialog.</property>
+                            <property name="column-spacing">12</property>
+                            <property name="margin-start">12</property>
+                            <property name="margin-top">6</property>
+                            <child>
+                              <object class="GtkBox" id="token">
+                                <property name="visible">True</property>
+                                <property name="can-focus">False</property>
+                                <property name="valign">center</property>
+                                <property name="hexpand">True</property>
+                                <child internal-child="accessible">
+                                  <object class="AtkObject" 
id="token-atkobject">
+                                    <property 
name="AtkObject::accessible-description" translatable="yes" 
context="tocentriespage|extended_tip|token">Displays the remainder of the 
Structure line.</property>
+                                  </object>
+                                </child>
+                              </object>
+                              <packing>
+                                <property name="left-attach">0</property>
+                                <property name="top-attach">0</property>
+                              </packing>
+                            </child>
+                            <child>
+                              <object class="GtkButton" id="all">
+                                <property name="label" translatable="yes" 
context="tocentriespage|all">_All</property>
+                                <property name="visible">True</property>
+                                <property name="can-focus">True</property>
+                                <property 
name="receives-default">True</property>
+                                <property name="use-underline">True</property>
+                                <child internal-child="accessible">
+                                  <object class="AtkObject" id="all-atkobject">
+                                    <property 
name="AtkObject::accessible-description" translatable="yes" 
context="tocentriespage|extended_tip|all">Applies the current settings to all 
levels without closing the dialog.</property>
+                                  </object>
+                                </child>
                               </object>
+                              <packing>
+                                <property name="left-attach">1</property>
+                                <property name="top-attach">0</property>
+                              </packing>
                             </child>
                           </object>
-                          <packing>
-                            <property name="left-attach">2</property>
-                            <property name="top-attach">0</property>
-                          </packing>
                         </child>
-                        <child>
-                          <object class="GtkBox" id="token">
+                        <child type="label">
+                          <object class="GtkLabel" id="structure_label">
                             <property name="visible">True</property>
                             <property name="can-focus">False</property>
-                            <property name="valign">center</property>
-                            <property name="hexpand">True</property>
-                            <child internal-child="accessible">
-                              <object class="AtkObject" id="token-atkobject">
-                                <property 
name="AtkObject::accessible-description" translatable="yes" 
context="tocentriespage|extended_tip|token">Displays the remainder of the 
Structure line.</property>
-                              </object>
-                            </child>
+                            <property name="label" translatable="yes" 
context="tocentriespage|structure_label">_Structure</property>
+                            <property name="use-underline">True</property>
+                            <attributes>
+                              <attribute name="weight" value="bold"/>
+                            </attributes>
                           </object>
-                          <packing>
-                            <property name="left-attach">1</property>
-                            <property name="top-attach">0</property>
-                          </packing>
                         </child>
                       </object>
                       <packing>
@@ -841,7 +848,7 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkLabel" id="mainstyleft">
+                      <object class="GtkLabel" id="tocentriesmainstyleft">
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="tocentriespage|mainstyleft">Character style for main 
entries:</property>
commit 9500b0db04f22c8890f2f4593fb89ad4c8cc769b
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:33:56 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:48 2026 +0000

    a11y: enhance accessibility in frmaddpage.ui and frmtypepage.ui
    
    - add static role in GtkLabel for better accessibility
    - rename conflicting label ids
    - add mnemonic-widget in GtkLabel to correctly reference relevant object
    
    Signed-off-by: Parth Raiyani <[email protected]>
    Change-Id: If5a1f1cac6fe9698a5fd7e64f2759a169acc9bfe
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198307
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>

diff --git a/cui/source/tabpages/chardlg.cxx b/cui/source/tabpages/chardlg.cxx
index 910eb2e535ef..c5795973b180 100644
--- a/cui/source/tabpages/chardlg.cxx
+++ b/cui/source/tabpages/chardlg.cxx
@@ -1331,7 +1331,7 @@ SvxCharEffectsPage::SvxCharEffectsPage(weld::Container* 
pPage, weld::DialogContr
     , m_xFontTransparencyFT(m_xBuilder->weld_label(u"fonttransparencyft"_ustr))
     , m_xFontTransparencyMtr(
           m_xBuilder->weld_metric_spin_button(u"fonttransparencymtr"_ustr, 
FieldUnit::PERCENT))
-    , m_xEffectsFT(m_xBuilder->weld_label(u"effectsft"_ustr))
+    , m_xEffectsFT(m_xBuilder->weld_label(u"caseft"_ustr))
     , m_xEffectsLB(m_xBuilder->weld_combo_box(u"effectslb"_ustr))
     , m_xReliefFT(m_xBuilder->weld_label(u"reliefft"_ustr))
     , m_xReliefLB(m_xBuilder->weld_combo_box(u"relieflb"_ustr))
diff --git a/cui/uiconfig/ui/charnamepage.ui b/cui/uiconfig/ui/charnamepage.ui
index 3864223029d8..40e7cc367c65 100644
--- a/cui/uiconfig/ui/charnamepage.ui
+++ b/cui/uiconfig/ui/charnamepage.ui
@@ -315,6 +315,11 @@
                 <attributes>
                   <attribute name="scale" value="0.9"/>
                 </attributes>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="lbWestFontinfo-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -594,6 +599,11 @@
                 <attributes>
                   <attribute name="scale" value="0.9"/>
                 </attributes>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="lbCJKFontinfo-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -848,6 +858,11 @@
                 <attributes>
                   <attribute name="scale" value="0.9"/>
                 </attributes>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="lbCTLFontinfo-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
diff --git a/cui/uiconfig/ui/effectspage.ui b/cui/uiconfig/ui/effectspage.ui
index 3b61fae6dfe1..11d1b28109f3 100644
--- a/cui/uiconfig/ui/effectspage.ui
+++ b/cui/uiconfig/ui/effectspage.ui
@@ -69,7 +69,7 @@
             <property name="row-spacing">6</property>
             <property name="column-spacing">12</property>
             <child>
-              <object class="GtkLabel" id="effectsft">
+              <object class="GtkLabel" id="caseft">
                 <property name="visible">True</property>
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="effectspage|effectsft">_Case:</property>
@@ -621,6 +621,11 @@
                 <property name="wrap">True</property>
                 <property name="max-width-chars">50</property>
                 <property name="xalign">0</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="a11ywarning-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
@@ -691,7 +696,7 @@
   <object class="GtkSizeGroup" id="sizegroup1">
     <property name="ignore-hidden">True</property>
     <widgets>
-      <widget name="effectsft"/>
+      <widget name="caseft"/>
       <widget name="reliefft"/>
       <widget name="positionft"/>
       <widget name="emphasisft"/>
diff --git a/cui/uiconfig/ui/twolinespage.ui b/cui/uiconfig/ui/twolinespage.ui
index 164f43e4103f..8ffd95ebbede 100644
--- a/cui/uiconfig/ui/twolinespage.ui
+++ b/cui/uiconfig/ui/twolinespage.ui
@@ -85,6 +85,12 @@
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="label" translatable="yes" 
context="twolinespage|label29">Initial character</property>
+                <property name="mnemonic-widget">startbracket</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="label29-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left_attach">0</property>
@@ -96,6 +102,12 @@
                 <property name="visible">True</property>
                 <property name="can_focus">False</property>
                 <property name="label" translatable="yes" 
context="twolinespage|label30">Final character</property>
+                <property name="mnemonic-widget">endbracket</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="label30-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left_attach">1</property>
diff --git a/sw/uiconfig/swriter/ui/insertbookmark.ui 
b/sw/uiconfig/swriter/ui/insertbookmark.ui
index f925aff4788d..67684e7e0ac5 100644
--- a/sw/uiconfig/swriter/ui/insertbookmark.ui
+++ b/sw/uiconfig/swriter/ui/insertbookmark.ui
@@ -88,6 +88,11 @@
                 <property name="hexpand">True</property>
                 <property name="label" translatable="no" 
context="insertbookmark|lbForbiddenChars">Forbidden characters:</property>
                 <property name="single-line-mode">True</property>
+                <child internal-child="accessible">
+                  <object class="AtkObject" id="lbForbiddenChars-atkobject">
+                      <property 
name="AtkObject::accessible-role">static</property>
+                  </object>
+                </child>
               </object>
               <packing>
                 <property name="left-attach">1</property>
diff --git a/sw/uiconfig/swriter/ui/insertcaption.ui 
b/sw/uiconfig/swriter/ui/insertcaption.ui
index 199261997465..47de9de1de74 100644
--- a/sw/uiconfig/swriter/ui/insertcaption.ui
+++ b/sw/uiconfig/swriter/ui/insertcaption.ui
@@ -297,7 +297,7 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkLabel" id="label4">
+                      <object class="GtkLabel" id="iclabel4">
                         <property name="visible">True</property>
                         <property name="can_focus">False</property>
                         <property name="halign">start</property>
diff --git a/sw/uiconfig/swriter/ui/wrappage.ui 
b/sw/uiconfig/swriter/ui/wrappage.ui
index 710d6de3a590..2c6d4a427aeb 100644
--- a/sw/uiconfig/swriter/ui/wrappage.ui
+++ b/sw/uiconfig/swriter/ui/wrappage.ui
@@ -497,7 +497,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label7">
+                  <object class="GtkLabel" id="wraplabel7">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="wrappage|label7">_Bottom:</property>
commit c2dfd2694c6c91c53be10f331cc5ca58f4cb33ec
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:26:22 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:48 2026 +0000

    a11y: enhance accessibility in frmaddpage.ui and frmtypepage.ui
    
    - add mnemonic-widget in GtkLabel to correctly reference relevant object
    - rename conflicting label ids
    
    Change-Id: I36fe46335faa93b068ef1c59ea5743134b4e0a4b
    Signed-off-by: Parth Raiyani <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198306
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/sw/source/ui/frmdlg/frmpage.cxx b/sw/source/ui/frmdlg/frmpage.cxx
index ef931a4ca65d..4b7d66a7b193 100644
--- a/sw/source/ui/frmdlg/frmpage.cxx
+++ b/sw/source/ui/frmdlg/frmpage.cxx
@@ -2988,7 +2988,7 @@ SwFrameAddPage::SwFrameAddPage(weld::Container* pPage, 
weld::DialogController* p
     , m_bFormat(false)
     , m_bNew(false)
     , m_xNameFrame(m_xBuilder->weld_widget(u"nameframe"_ustr))
-    , m_xNameFT(m_xBuilder->weld_label(u"name_label"_ustr))
+    , m_xNameFT(m_xBuilder->weld_label(u"frm_add_name_label"_ustr))
     , m_xNameED(m_xBuilder->weld_entry(u"name"_ustr))
     , m_xAltNameFT(m_xBuilder->weld_label(u"altname_label"_ustr))
     , m_xAltNameED(m_xBuilder->weld_entry(u"altname"_ustr))
diff --git a/sw/uiconfig/swriter/ui/frmaddpage.ui 
b/sw/uiconfig/swriter/ui/frmaddpage.ui
index 0c72dbe3e883..f700c2f07910 100644
--- a/sw/uiconfig/swriter/ui/frmaddpage.ui
+++ b/sw/uiconfig/swriter/ui/frmaddpage.ui
@@ -92,7 +92,7 @@
                       </packing>
                     </child>
                     <child>
-                      <object class="GtkLabel" id="name_label">
+                      <object class="GtkLabel" id="frm_add_name_label">
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="frmaddpage|name_label">_Name:</property>
@@ -230,7 +230,7 @@
             <property name="margin-top">6</property>
             <property name="column-spacing">12</property>
             <child>
-              <object class="GtkLabel" id="label2">
+              <object class="GtkLabel" id="frm_add_label2">
                 <property name="visible">True</property>
                 <property name="can-focus">False</property>
                 <property name="label" translatable="yes" 
context="frmaddpage|label2">_Vertical alignment:</property>
@@ -498,7 +498,7 @@
   <object class="GtkSizeGroup" id="sizegroup1">
     <property name="ignore-hidden">True</property>
     <widgets>
-      <widget name="name_label"/>
+      <widget name="frm_add_name_label"/>
       <widget name="altname_label"/>
       <widget name="description_label"/>
       <widget name="textflow_label"/>
diff --git a/sw/uiconfig/swriter/ui/frmtypepage.ui 
b/sw/uiconfig/swriter/ui/frmtypepage.ui
index 14e24f34b93d..ac16ab7c528c 100644
--- a/sw/uiconfig/swriter/ui/frmtypepage.ui
+++ b/sw/uiconfig/swriter/ui/frmtypepage.ui
@@ -71,6 +71,7 @@
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="frmtypepage|widthft">_Width</property>
+                        <property name="mnemonic-widget">width</property>
                         <property name="use-underline">True</property>
                         <property name="xalign">0</property>
                       </object>
@@ -85,6 +86,7 @@
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="frmtypepage|autowidthft">_Width (at least)</property>
+                        <property name="mnemonic-widget">width</property>
                         <property name="use-underline">True</property>
                         <property name="xalign">0</property>
                       </object>
@@ -194,6 +196,7 @@
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="frmtypepage|heightft">H_eight</property>
+                        <property name="mnemonic-widget">height</property>
                         <property name="use-underline">True</property>
                         <property name="xalign">0</property>
                       </object>
@@ -208,6 +211,7 @@
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="frmtypepage|autoheightft">H_eight (at least)</property>
+                        <property name="mnemonic-widget">height</property>
                         <property name="use-underline">True</property>
                         <property name="xalign">0</property>
                       </object>
commit 57f982149dc71c37221b25dea846dad2af20b916
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 15:19:25 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:48 2026 +0000

    a11y: enhance accessibility in fldrefpage.ui and fldvarpage.ui
    
    - restructure filter GtkEntry for better UI and accessibility
    - add mnemonic-widget to correctly reference GtkLabel with relevant object
    - rename conflicting label ids
    - make the frame label visible
    
    Change-Id: I3dbb8e0808906ae2c8701f385abdd8644d393333
    Signed-off-by: Parth Raiyani <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198305
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/sw/source/ui/fldui/fldvar.cxx b/sw/source/ui/fldui/fldvar.cxx
index 8885c08c04f1..230cca97a592 100644
--- a/sw/source/ui/fldui/fldvar.cxx
+++ b/sw/source/ui/fldui/fldvar.cxx
@@ -45,9 +45,9 @@ SwFieldVarPage::SwFieldVarPage(weld::Container* pPage, 
weld::DialogController* p
     , m_xTypeLB(m_xBuilder->weld_tree_view(u"type"_ustr))
     , m_xSelection(m_xBuilder->weld_widget(u"selectframe"_ustr))
     , m_xSelectionLB(m_xBuilder->weld_tree_view(u"select"_ustr))
-    , m_xNameFT(m_xBuilder->weld_label(u"nameft"_ustr))
+    , m_xNameFT(m_xBuilder->weld_label(u"fldvarnameft"_ustr))
     , m_xNameED(m_xBuilder->weld_entry(u"name"_ustr))
-    , m_xValueFT(m_xBuilder->weld_label(u"valueft"_ustr))
+    , m_xValueFT(m_xBuilder->weld_label(u"fldvarvalueft"_ustr))
     , m_xValueED(new 
ConditionEdit<weld::TextView>(m_xBuilder->weld_text_view(u"value"_ustr)))
     , m_xFormat(m_xBuilder->weld_widget(u"formatframe"_ustr))
     , m_xNumFormatLB(new 
SwNumFormatTreeView(m_xBuilder->weld_tree_view(u"numformat"_ustr)))
diff --git a/sw/uiconfig/swriter/ui/fldrefpage.ui 
b/sw/uiconfig/swriter/ui/fldrefpage.ui
index 4ebd892cafd5..7d9257ac003e 100644
--- a/sw/uiconfig/swriter/ui/fldrefpage.ui
+++ b/sw/uiconfig/swriter/ui/fldrefpage.ui
@@ -249,61 +249,6 @@
             <property name="vexpand">True</property>
             <property name="orientation">vertical</property>
             <property name="spacing">6</property>
-            <child>
-              <!-- n-columns=1 n-rows=2 -->
-              <object class="GtkGrid" id="grid3">
-                <property name="visible">True</property>
-                <property name="can-focus">False</property>
-                <property name="row-spacing">6</property>
-                <child>
-                  <object class="GtkBox" id="box3">
-                    <property name="visible">True</property>
-                    <property name="can-focus">False</property>
-                    <property name="margin-start">5</property>
-                    <property name="margin-end">5</property>
-                    <child>
-                      <object class="GtkLabel" id="label4">
-                        <property name="visible">True</property>
-                        <property name="can-focus">False</property>
-                        <property name="margin-end">5</property>
-                        <property name="label" translatable="yes" 
context="fldrefpage|label4">Selection</property>
-                        <attributes>
-                          <attribute name="weight" value="bold"/>
-                        </attributes>
-                      </object>
-                      <packing>
-                        <property name="expand">False</property>
-                        <property name="fill">True</property>
-                        <property name="position">0</property>
-                      </packing>
-                    </child>
-                  </object>
-                  <packing>
-                    <property name="left-attach">0</property>
-                    <property name="top-attach">0</property>
-                  </packing>
-                </child>
-                <child>
-                  <object class="GtkEntry" id="filter">
-                    <property name="visible">True</property>
-                    <property name="can-focus">True</property>
-                    <property name="hexpand">True</property>
-                    <property name="activates-default">True</property>
-                    <property name="truncate-multiline">True</property>
-                    <property name="placeholder-text" translatable="yes" 
context="fldrefpage|filter">Filter Selection</property>
-                  </object>
-                  <packing>
-                    <property name="left-attach">0</property>
-                    <property name="top-attach">1</property>
-                  </packing>
-                </child>
-              </object>
-              <packing>
-                <property name="expand">False</property>
-                <property name="fill">True</property>
-                <property name="position">0</property>
-              </packing>
-            </child>
             <child>
               <object class="GtkFrame" id="selectframe">
                 <property name="visible">True</property>
@@ -319,6 +264,21 @@
                     <property name="margin-top">6</property>
                     <property name="hexpand">True</property>
                     <property name="orientation">vertical</property>
+                    <child>
+                      <object class="GtkEntry" id="filter">
+                        <property name="visible">True</property>
+                        <property name="can-focus">True</property>
+                        <property name="hexpand">True</property>
+                        <property name="activates-default">True</property>
+                        <property name="truncate-multiline">True</property>
+                        <property name="placeholder-text" translatable="yes" 
context="fldrefpage|filter">Filter Selection</property>
+                      </object>
+                      <packing>
+                        <property name="expand">False</property>
+                        <property name="fill">True</property>
+                        <property name="position">0</property>
+                      </packing>
+                    </child>
                     <child>
                       <object class="GtkScrolledWindow">
                         <property name="visible">True</property>
@@ -361,7 +321,7 @@
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">True</property>
-                        <property name="position">0</property>
+                        <property name="position">1</property>
                       </packing>
                     </child>
                     <child>
@@ -406,7 +366,7 @@
                       <packing>
                         <property name="expand">False</property>
                         <property name="fill">True</property>
-                        <property name="position">1</property>
+                        <property name="position">2</property>
                       </packing>
                     </child>
                   </object>
@@ -414,6 +374,7 @@
                 <child type="label">
                   <object class="GtkLabel" id="label2">
                     <property name="can-focus">False</property>
+                    <property name="visible">True</property>
                     <property name="label" translatable="yes" 
context="fldrefpage|label2">S_election</property>
                     <property name="use-underline">True</property>
                     <property name="xalign">0</property>
@@ -426,9 +387,12 @@
               <packing>
                 <property name="expand">False</property>
                 <property name="fill">True</property>
-                <property name="position">1</property>
+                <property name="position">0</property>
               </packing>
             </child>
+            <child>
+              <placeholder/>
+            </child>
             <child>
               <!-- n-columns=2 n-rows=2 -->
               <object class="GtkGrid" id="grid1">
@@ -438,7 +402,7 @@
                 <property name="row-spacing">6</property>
                 <property name="column-spacing">12</property>
                 <child>
-                  <object class="GtkLabel" id="valueft">
+                  <object class="GtkLabel" id="fldrefvalueft">
                     <property name="visible">True</property>
                     <property name="sensitive">False</property>
                     <property name="can-focus">False</property>
diff --git a/sw/uiconfig/swriter/ui/fldvarpage.ui 
b/sw/uiconfig/swriter/ui/fldvarpage.ui
index 1e4473e2de8f..1c592565a25d 100644
--- a/sw/uiconfig/swriter/ui/fldvarpage.ui
+++ b/sw/uiconfig/swriter/ui/fldvarpage.ui
@@ -65,7 +65,7 @@
         <property name="row-spacing">6</property>
         <property name="column-spacing">6</property>
         <child>
-          <object class="GtkLabel" id="nameft">
+          <object class="GtkLabel" id="fldvarnameft">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
             <property name="halign">start</property>
@@ -98,7 +98,7 @@
           </packing>
         </child>
         <child>
-          <object class="GtkLabel" id="valueft">
+          <object class="GtkLabel" id="fldvarvalueft">
             <property name="visible">True</property>
             <property name="can-focus">False</property>
             <property name="halign">start</property>
@@ -491,6 +491,7 @@
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="fldvarpage|label5">_Up to level:</property>
+                        <property name="mnemonic-widget">level</property>
                         <property name="use-underline">True</property>
                         <property name="xalign">0</property>
                       </object>
commit 5b80569a8df00bb6755bf1b41a6be825d2043d17
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 16:27:14 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:48 2026 +0000

    a11y: fix accessibility issues in colorpage.ui and indentpage.ui
    
    - rename conflicting label ids to ensure we have unique ids across dialog
    - add labelled-by relation for GtkSpinButton
    - add relevant suppression in swriter.suppr
    
    Change-Id: I72b444a24a7094bec3fab434b900603f2192b5e1
    Signed-off-by: Parth Raiyani <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198304
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins CollaboraOffice <[email protected]>

diff --git a/solenv/sanitizers/ui/modules/swriter.suppr 
b/solenv/sanitizers/ui/modules/swriter.suppr
index 88bfb3ab577f..7b34f1e55c35 100644
--- a/solenv/sanitizers/ui/modules/swriter.suppr
+++ b/solenv/sanitizers/ui/modules/swriter.suppr
@@ -18,9 +18,12 @@ 
sw/uiconfig/swriter/ui/cardmediumpage.ui://GtkLabel[@id='formatinfo'] orphan-lab
 sw/uiconfig/swriter/ui/cardmediumpage.ui://GtkComboBoxText[@id='hiddentype'] 
no-labelled-by
 sw/uiconfig/swriter/ui/ccdialog.ui://GtkLabel[@id='label4'] orphan-label
 sw/uiconfig/swriter/ui/checkbox.ui://GtkCheckButton[@id='checkbutton'] 
button-no-label
-sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width3mf'] 
labelled-by-and-mnemonic
-sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width2mf'] 
labelled-by-and-mnemonic
-sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width1mf'] 
labelled-by-and-mnemonic
+sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width3mf'] 
multiple-labelled-by
+sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width2mf'] 
multiple-labelled-by
+sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width1mf'] 
multiple-labelled-by
+sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width3mf'] 
missing-label-for
+sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width2mf'] 
missing-label-for
+sw/uiconfig/swriter/ui/columnpage.ui://GtkSpinButton[@id='width1mf'] 
missing-label-for
 sw/uiconfig/swriter/ui/conditionpage.ui://GtkComboBoxText[@id='filter'] 
no-labelled-by
 sw/uiconfig/swriter/ui/converttexttable.ui://GtkLabel[@id='label4'] 
orphan-label
 sw/uiconfig/swriter/ui/customizeaddrlistdialog.ui://GtkButton[@id='down'] 
button-no-label
diff --git a/sw/source/ui/frmdlg/column.cxx b/sw/source/ui/frmdlg/column.cxx
index bb2443ee9ceb..9eef4088a4a4 100644
--- a/sw/source/ui/frmdlg/column.cxx
+++ b/sw/source/ui/frmdlg/column.cxx
@@ -379,9 +379,9 @@ SwColumnPage::SwColumnPage(weld::Container* pPage, 
weld::DialogController* pCont
     , m_xCLNrEdt(m_xBuilder->weld_spin_button(u"colsnf"_ustr))
     , m_xBalanceColsCB(m_xBuilder->weld_check_button(u"balance"_ustr))
     , m_xBtnBack(m_xBuilder->weld_button(u"back"_ustr))
-    , m_xLbl1(m_xBuilder->weld_label(u"1"_ustr))
-    , m_xLbl2(m_xBuilder->weld_label(u"2"_ustr))
-    , m_xLbl3(m_xBuilder->weld_label(u"3"_ustr))
+    , m_xLbl1(m_xBuilder->weld_label(u"column1"_ustr))
+    , m_xLbl2(m_xBuilder->weld_label(u"column2"_ustr))
+    , m_xLbl3(m_xBuilder->weld_label(u"column3"_ustr))
     , m_xBtnNext(m_xBuilder->weld_button(u"next"_ustr))
     , m_xAutoWidthBox(m_xBuilder->weld_check_button(u"autowidth"_ustr))
     , m_xLineTypeLbl(m_xBuilder->weld_label(u"linestyleft"_ustr))
diff --git a/sw/uiconfig/swriter/ui/columnpage.ui 
b/sw/uiconfig/swriter/ui/columnpage.ui
index dc4e0e88bb4a..482252f1c4b2 100644
--- a/sw/uiconfig/swriter/ui/columnpage.ui
+++ b/sw/uiconfig/swriter/ui/columnpage.ui
@@ -135,7 +135,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="1">
+                  <object class="GtkLabel" id="column1">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -152,7 +152,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="2">
+                  <object class="GtkLabel" id="column2">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -169,7 +169,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="3">
+                  <object class="GtkLabel" id="column3">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="hexpand">True</property>
@@ -214,6 +214,7 @@
                     <property name="digits">2</property>
                     <accessibility>
                       <relation type="labelled-by" target="widthft"/>
+                      <relation type="labelled-by" target="column3"/>
                     </accessibility>
                     <child internal-child="accessible">
                       <object class="AtkObject" id="width3mf-atkobject">
@@ -238,6 +239,7 @@
                     <property name="digits">2</property>
                     <accessibility>
                       <relation type="labelled-by" target="widthft"/>
+                      <relation type="labelled-by" target="column2"/>
                     </accessibility>
                     <child internal-child="accessible">
                       <object class="AtkObject" id="width2mf-atkobject">
@@ -262,6 +264,7 @@
                     <property name="digits">2</property>
                     <accessibility>
                       <relation type="labelled-by" target="widthft"/>
+                      <relation type="labelled-by" target="column1"/>
                     </accessibility>
                     <child internal-child="accessible">
                       <object class="AtkObject" id="width1mf-atkobject">
@@ -683,7 +686,7 @@
                     <property name="valign">center</property>
                     <property name="column-spacing">12</property>
                     <child>
-                      <object class="GtkLabel" id="label3">
+                      <object class="GtkLabel" id="columnlabel3">
                         <property name="visible">True</property>
                         <property name="can-focus">False</property>
                         <property name="label" translatable="yes" 
context="columnpage|label3">Columns:</property>
@@ -962,7 +965,7 @@
       <widget name="lineheightft"/>
       <widget name="lineposft"/>
       <widget name="linecolorft"/>
-      <widget name="label3"/>
+      <widget name="columnlabel3"/>
       <widget name="applytoft"/>
       <widget name="textdirectionft"/>
     </widgets>
diff --git a/sw/uiconfig/swriter/ui/indentpage.ui 
b/sw/uiconfig/swriter/ui/indentpage.ui
index 8ed62ce379af..e45350f1768b 100644
--- a/sw/uiconfig/swriter/ui/indentpage.ui
+++ b/sw/uiconfig/swriter/ui/indentpage.ui
@@ -49,7 +49,7 @@
                 <property name="margin-start">12</property>
                 <property name="margin-top">6</property>
                 <child>
-                  <object class="GtkLabel" id="label1">
+                  <object class="GtkLabel" id="indentlabel1">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="label" translatable="yes" 
context="indentpage|label1">_Before section</property>
@@ -63,7 +63,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label3">
+                  <object class="GtkLabel" id="indentlabel3">
                     <property name="visible">True</property>
                     <property name="can_focus">False</property>
                     <property name="label" translatable="yes" 
context="indentpage|label3">_After section</property>
commit 995c9c7be39347714e043c18c98d678519675c9c
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 12:29:58 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Tue Feb 24 21:21:48 2026 +0000

    a11y: fix accessibility issues in colorpage.ui
    
    - rename conflicting label ids to ensure we have unique ids across dialog
    - remove unwanted parent GtkScrolledWindow from GtkIconView
    - fix mnemonic-widget property of GtkLabel to reference GtkIconView object
    - add static role for relevant GtkLabels
    - remove unused object ids
    
    Change-Id: I27908427d0aa7fbc3d42d10b54a9a6fe5d752dd7
    Signed-off-by: Parth Raiyani <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/198303
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Tested-by: Caolán McNamara <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/cui/uiconfig/ui/colorpage.ui b/cui/uiconfig/ui/colorpage.ui
index b75e55f1bcbd..769fc16b5a48 100644
--- a/cui/uiconfig/ui/colorpage.ui
+++ b/cui/uiconfig/ui/colorpage.ui
@@ -150,13 +150,18 @@
                 <property name="orientation">vertical</property>
                 <property name="spacing">3</property>
                 <child>
-                  <object class="GtkLabel" id="label20">
+                  <object class="GtkLabel" id="colorlabel20">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label20">Recent Colors</property>
                     <property name="use-underline">True</property>
-                    <property 
name="mnemonic-widget">iconview_recent_colors_win</property>
+                    <property 
name="mnemonic-widget">iconview_recent_colors</property>
                     <property name="xalign">0</property>
+                    <child internal-child="accessible">
+                      <object class="AtkObject" id="colorlabel20-atkobject">
+                          <property 
name="AtkObject::accessible-role">static</property>
+                      </object>
+                    </child>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -165,27 +170,17 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkScrolledWindow" 
id="iconview_recent_colors_win">
+                  <object class="GtkIconView" id="iconview_recent_colors">
                     <property name="visible">True</property>
                     <property name="can-focus">True</property>
-                    <property name="hscrollbar-policy">never</property>
-                    <property name="vscrollbar-policy">never</property>
-                    <property name="shadow-type">in</property>
-                    <property name="height-request">10</property>
-                    <child>
-                      <object class="GtkIconView" id="iconview_recent_colors">
-                        <property name="visible">True</property>
-                        <property name="can-focus">True</property>
-                        <property 
name="model">recent_colors_liststore</property>
-                        <property name="pixbuf-column">0</property>
-                        <property name="selection-mode">single</property>
-                        <property name="item-orientation">horizontal</property>
-                        <property name="columns">12</property>
-                        <property name="row-spacing">1</property>
-                        <property name="column-spacing">1</property>
-                        <property name="item-padding">3</property>
-                      </object>
-                    </child>
+                    <property name="model">recent_colors_liststore</property>
+                    <property name="pixbuf-column">0</property>
+                    <property name="selection-mode">single</property>
+                    <property name="item-orientation">horizontal</property>
+                    <property name="columns">12</property>
+                    <property name="row-spacing">1</property>
+                    <property name="column-spacing">1</property>
+                    <property name="item-padding">3</property>
                   </object>
                   <packing>
                     <property name="expand">False</property>
@@ -272,7 +267,7 @@
                     <property name="margin-bottom">3</property>
                     <property name="label" translatable="yes" 
context="colorpage|label22">Custom Palette</property>
                     <property name="use-underline">True</property>
-                    <property 
name="mnemonic-widget">iconview_colors_win</property>
+                    <property name="mnemonic-widget">iconview_colors</property>
                     <property name="xalign">0</property>
                   </object>
                   <packing>
@@ -294,7 +289,7 @@
                 <property name="valign">start</property>
                 <property name="orientation">vertical</property>
                 <child>
-                  <object class="GtkScrolledWindow" id="iconview_colors_win">
+                  <object class="GtkScrolledWindow">
                     <property name="visible">True</property>
                     <property name="can-focus">True</property>
                     <property name="hscrollbar-policy">never</property>
@@ -421,7 +416,7 @@
                 <property name="row-spacing">6</property>
                 <property name="column-spacing">6</property>
                 <child>
-                  <object class="GtkLabel" id="label7">
+                  <object class="GtkLabel" id="colorlabel7">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label7">B</property>
@@ -434,7 +429,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label8">
+                  <object class="GtkLabel" id="colorlabel8">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label8">G</property>
@@ -447,7 +442,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label9">
+                  <object class="GtkLabel" id="colorlabel9">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label9">R</property>
@@ -541,7 +536,7 @@
                 <property name="row-spacing">6</property>
                 <property name="column-spacing">6</property>
                 <child>
-                  <object class="GtkLabel" id="label10">
+                  <object class="GtkLabel" id="colorlabel10">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label10">_C</property>
@@ -554,7 +549,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label16">
+                  <object class="GtkLabel" id="colorlabel16">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label16">_K</property>
@@ -567,7 +562,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label17">
+                  <object class="GtkLabel" id="colorlabel17">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label17">_Y</property>
@@ -632,7 +627,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label15">
+                  <object class="GtkLabel" id="colorlabel15">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label15">_M</property>
@@ -772,7 +767,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label4">
+                  <object class="GtkLabel" id="colorlabel4">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label4">_B</property>
@@ -785,7 +780,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label3">
+                  <object class="GtkLabel" id="colorlabel3">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label3">_G</property>
@@ -798,7 +793,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label2">
+                  <object class="GtkLabel" id="colorlabel2">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label2">_R</property>
@@ -869,7 +864,7 @@
                 <property name="row-spacing">6</property>
                 <property name="column-spacing">6</property>
                 <child>
-                  <object class="GtkLabel" id="label11">
+                  <object class="GtkLabel" id="colorlabel11">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label11">_C</property>
@@ -882,7 +877,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label12">
+                  <object class="GtkLabel" id="colorlabel12">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label12">_M</property>
@@ -895,7 +890,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label13">
+                  <object class="GtkLabel" id="colorlabel13">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label13">_K</property>
@@ -934,7 +929,7 @@
                   </packing>
                 </child>
                 <child>
-                  <object class="GtkLabel" id="label14">
+                  <object class="GtkLabel" id="colorlabel14">
                     <property name="visible">True</property>
                     <property name="can-focus">False</property>
                     <property name="label" translatable="yes" 
context="colorpage|label14">_Y</property>
-e 
... etc. - the rest is truncated

Reply via email to