sw/source/ui/misc/outline.cxx |   15 +++++++++------
 vcl/jsdialog/enabled.cxx      |    3 +++
 2 files changed, 12 insertions(+), 6 deletions(-)

New commits:
commit ad6745e1ae2a286618c3235289b8fc877e6642bd
Author:     Szymon Kłos <[email protected]>
AuthorDate: Fri Jan 2 07:50:34 2026 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Thu Feb 26 15:11:43 2026 +0100

    jsdialog: enable heading numbering dialog
    
    - be sure tab names are unique id to avoid problems
    
    Change-Id: I254f7984a9c5fb0f143f9e7ba9a3de625ab9dd45
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/196410
    Reviewed-by: Tomaž Vajngerl <[email protected]>
    Tested-by: Jenkins CollaboraOffice <[email protected]>
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/200429
    Tested-by: Caolán McNamara <[email protected]>
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/sw/source/ui/misc/outline.cxx b/sw/source/ui/misc/outline.cxx
index cebdd5cf843c..6ecf51e950d7 100644
--- a/sw/source/ui/misc/outline.cxx
+++ b/sw/source/ui/misc/outline.cxx
@@ -54,6 +54,9 @@ using namespace ::com::sun::star;
 
 namespace {
 
+constexpr auto NUMBERING_TAB = u"numbering"_ustr;
+constexpr auto POSITION_TAB = u"position"_ustr;
+
 class SwNumNamesDlg : public weld::GenericDialogController
 {
     std::unique_ptr<weld::Entry> m_xFormEdit;
@@ -165,9 +168,9 @@ SwOutlineTabDialog::SwOutlineTabDialog(weld::Window* 
pParent, const SfxItemSet*
         SetActNumLevel(nTmp < 0 ? USHRT_MAX : (1 << nTmp));
     }
 
-    AddTabPage(u"numbering"_ustr, TabResId(RID_TAB_NUMBERING.aLabel),
+    AddTabPage(NUMBERING_TAB, TabResId(RID_TAB_NUMBERING.aLabel),
                &SwOutlineSettingsTabPage::Create, RID_L + 
RID_TAB_NUMBERING.sIconName);
-    AddTabPage(u"position"_ustr, TabResId(RID_TAB_POSITION.aLabel), 
&SwNumPositionTabPage::Create,
+    AddTabPage(POSITION_TAB, TabResId(RID_TAB_POSITION.aLabel), 
&SwNumPositionTabPage::Create,
                RID_L + RID_TAB_POSITION.sIconName);
 
     UIName sHeadline;
@@ -205,12 +208,12 @@ SwOutlineTabDialog::~SwOutlineTabDialog()
 
 void SwOutlineTabDialog::PageCreated(const OUString& rPageId, SfxTabPage& 
rPage)
 {
-    if (rPageId == "position")
+    if (rPageId == POSITION_TAB)
     {
         static_cast<SwNumPositionTabPage&>(rPage).SetWrtShell(&m_rWrtSh);
         static_cast<SwNumPositionTabPage&>(rPage).SetOutlineTabDialog(this);
     }
-    else if (rPageId == "numbering")
+    else if (rPageId == NUMBERING_TAB)
     {
         static_cast<SwOutlineSettingsTabPage&>(rPage).SetWrtShell(&m_rWrtSh);
     }
@@ -290,7 +293,7 @@ IMPL_LINK(SwOutlineTabDialog, MenuSelectHdl, const 
OUString&, rIdent, void)
         {
             pRules->ResetNumRule(m_rWrtSh, *m_xNumRule);
             m_xNumRule->SetRuleType( OUTLINE_RULE );
-            SfxTabPage* pOutlinePage = GetTabPage(u"numbering");
+            SfxTabPage* pOutlinePage = GetTabPage(NUMBERING_TAB);
             assert(pOutlinePage);
             
static_cast<SwOutlineSettingsTabPage*>(pOutlinePage)->SetNumRule(m_xNumRule.get());
         }
@@ -896,7 +899,7 @@ void NumberingPreview::Paint(vcl::RenderContext& 
rRenderContext, const tools::Re
     if (m_pActNum)
     {
         tools::Long nWidthRelation = 30; // chapter dialog
-        if(m_nPageWidth)
+        if (m_nPageWidth && aSize.Width())
         {
             nWidthRelation = m_nPageWidth / aSize.Width();
             if(m_bPosition)
diff --git a/vcl/jsdialog/enabled.cxx b/vcl/jsdialog/enabled.cxx
index 1db4c9d0d8d5..c56383d27a4a 100644
--- a/vcl/jsdialog/enabled.cxx
+++ b/vcl/jsdialog/enabled.cxx
@@ -257,6 +257,9 @@ constexpr auto SwriterDialogList
         { u"modules/swriter/ui/newuserindexdialog.ui" },
         { u"modules/swriter/ui/numparapage.ui" },
         { u"modules/swriter/ui/objectdialog.ui" },
+        { u"modules/swriter/ui/outlinenumbering.ui" },
+        { u"modules/swriter/ui/outlinenumberingpage.ui" },
+        { u"modules/swriter/ui/outlinepositionpage.ui" },
         { u"modules/swriter/ui/pagenumberdlg.ui" },
         { u"modules/swriter/ui/paradialog.ui" },
         { u"modules/swriter/ui/picturedialog.ui" },

Reply via email to