sw/source/uibase/config/usrpref.cxx |   29 ++++++++++++++++++++---------
 1 file changed, 20 insertions(+), 9 deletions(-)

New commits:
commit f376ad74457fed10f0655f1028ad3bb6897dff4d
Author:     Caolán McNamara <[email protected]>
AuthorDate: Fri Dec 20 13:44:17 2024 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Fri Dec 20 20:28:54 2024 +0100

    make SwCursorConfig ConfigItem listen to the config changes.
    
    Change-Id: Ia653759378913758f0b2750c9d072b76523fa034
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178924
    Reviewed-by: Caolán McNamara <[email protected]>
    Tested-by: Jenkins

diff --git a/sw/source/uibase/config/usrpref.cxx 
b/sw/source/uibase/config/usrpref.cxx
index 212b7fa02832..a32b82dfc4af 100644
--- a/sw/source/uibase/config/usrpref.cxx
+++ b/sw/source/uibase/config/usrpref.cxx
@@ -83,7 +83,6 @@ SwMasterUsrPref::SwMasterUsrPref(bool bWeb) :
     }
 
     m_aLayoutConfig.Load();
-    m_aCursorConfig.Load();
     if(m_pWebColorConfig)
         m_pWebColorConfig->Load();
     m_aFmtAidsAutoComplConfig.Load();
@@ -567,10 +566,12 @@ Sequence<OUString> SwCursorConfig::GetPropertyNames()
     return aNames;
 }
 
-SwCursorConfig::SwCursorConfig(SwMasterUsrPref& rPar) :
-    ConfigItem(u"Office.Writer/Cursor"_ustr, ConfigItemMode::ReleaseTree),
-    m_rParent(rPar)
+SwCursorConfig::SwCursorConfig(SwMasterUsrPref& rPar)
+    : ConfigItem(u"Office.Writer/Cursor"_ustr)
+    , m_rParent(rPar)
 {
+    Load();
+    EnableNotification(GetPropertyNames());
 }
 
 SwCursorConfig::~SwCursorConfig()
@@ -626,7 +627,10 @@ void SwCursorConfig::Load()
     }
 }
 
-void SwCursorConfig::Notify( const css::uno::Sequence< OUString >& ) {}
+void SwCursorConfig::Notify(const css::uno::Sequence<OUString>& )
+{
+    Load();
+}
 
 Sequence<OUString> SwFmtAidsAutoComplConfig::GetPropertyNames()
 {
commit 46d0e19de898cb8712b5e8582966e58ba6e13ff1
Author:     Caolán McNamara <[email protected]>
AuthorDate: Fri Dec 20 16:26:59 2024 +0000
Commit:     Caolán McNamara <[email protected]>
CommitDate: Fri Dec 20 20:28:48 2024 +0100

    use member init list and initialize before member Loads
    
    Change-Id: Iaca646e1a36b20adb29b5ff25649d08fc7055e24
    Reviewed-on: https://gerrit.libreoffice.org/c/core/+/178951
    Tested-by: Jenkins
    Reviewed-by: Caolán McNamara <[email protected]>

diff --git a/sw/source/uibase/config/usrpref.cxx 
b/sw/source/uibase/config/usrpref.cxx
index 0dd805faf57d..212b7fa02832 100644
--- a/sw/source/uibase/config/usrpref.cxx
+++ b/sw/source/uibase/config/usrpref.cxx
@@ -43,10 +43,21 @@ void SwMasterUsrPref::SetUsrPref(const SwViewOption &rCopy)
     *static_cast<SwViewOption*>(this) = rCopy;
 }
 
+static FieldUnit lclGetFieldUnit()
+{
+    if (comphelper::IsFuzzing())
+        return FieldUnit::CM;
+    MeasurementSystem eSystem = 
SvtSysLocale().GetLocaleData().getMeasurementSystemEnum();
+    return MeasurementSystem::Metric == eSystem ? FieldUnit::CM : 
FieldUnit::INCH;
+}
+
 SwMasterUsrPref::SwMasterUsrPref(bool bWeb) :
     m_eFieldUpdateFlags(AUTOUPD_OFF),
     m_nLinkUpdateMode(0),
+    m_eUserMetric(lclGetFieldUnit()),
+    m_eHScrollMetric(m_eUserMetric),
     m_bIsHScrollMetricSet(false),
+    m_eVScrollMetric(m_eUserMetric),
     m_bIsVScrollMetricSet(false),
     m_nDefTabInMm100( 2000 ), // 2 cm
     m_bIsSquaredPageMode(false),
@@ -64,16 +75,12 @@ SwMasterUsrPref::SwMasterUsrPref(bool bWeb) :
 {
     if (comphelper::IsFuzzing())
     {
-        m_eHScrollMetric = m_eVScrollMetric = m_eUserMetric = FieldUnit::CM;
         // match defaults
         SetCore2Option(true, ViewOptCoreFlags2::CursorInProt);
         SetCore2Option(false, ViewOptCoreFlags2::HiddenPara);
         m_nDefTabInMm100 = 1250;
         return;
     }
-    MeasurementSystem eSystem = 
SvtSysLocale().GetLocaleData().getMeasurementSystemEnum();
-    m_eUserMetric = MeasurementSystem::Metric == eSystem ? FieldUnit::CM : 
FieldUnit::INCH;
-    m_eHScrollMetric = m_eVScrollMetric = m_eUserMetric;
 
     m_aLayoutConfig.Load();
     m_aCursorConfig.Load();

Reply via email to