solenv/sanitizers/ui/modules/swriter.suppr |    9 ++++++---
 sw/source/ui/frmdlg/column.cxx             |    6 +++---
 sw/uiconfig/swriter/ui/columnpage.ui       |   13 ++++++++-----
 sw/uiconfig/swriter/ui/indentpage.ui       |    4 ++--
 4 files changed, 19 insertions(+), 13 deletions(-)

New commits:
commit 9eb08108ee660ba983e79815a2b7c85ca882b6a6
Author:     Parth Raiyani <[email protected]>
AuthorDate: Wed Jan 28 16:27:14 2026 +0530
Commit:     Caolán McNamara <[email protected]>
CommitDate: Thu Jan 29 12:01:14 2026 +0100

    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 9716890d002e..7b4ecacafc2a 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 0efb70b0e4a8..2f720778a963 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 b99fda46057b..d596dd3c4e5e 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 64e714595a23..1febd411baa6 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>

Reply via email to