Resolves: tdf#124804 border considered changed when it isn't

Change-Id: Ib4b6031b31500a8a2086721124b5b8f554f7c1c5
Reviewed-on: https://gerrit.libreoffice.org/71307
Tested-by: Jenkins
Reviewed-by: Michael Stahl <Michael.Stahl@cib.de>
diff --git a/cui/source/inc/border.hxx b/cui/source/inc/border.hxx
index 009048d..455b88e 100644
--- a/cui/source/inc/border.hxx
+++ b/cui/source/inc/border.hxx
@@ -49,6 +49,8 @@ public:
    void SetControlValue(const SvxShadowItem& rItem);
    void SetControlDontKnow();

    bool get_value_changed_from_saved() const;

private:
    SvtValueSet&                        mrVsPos;
    weld::MetricSpinButton&             mrMfSize;
diff --git a/cui/source/tabpages/border.cxx b/cui/source/tabpages/border.cxx
index 4960f16..b81b683 100644
--- a/cui/source/tabpages/border.cxx
+++ b/cui/source/tabpages/border.cxx
@@ -157,9 +157,18 @@ void ShadowControlsWrapper::SetControlValue(const SvxShadowItem& rItem)
            mrVsPos.SetNoSelection();
            break;
    }
    mrVsPos.SaveValue();
    mrMfSize.set_value(mrMfSize.normalize(rItem.GetWidth()), FieldUnit::TWIP);
    mrLbColor.SelectEntry(rItem.GetColor());
    mrMfSize.save_value();
    mrLbColor.SelectEntry(rItem.GetColor());
    mrLbColor.SaveValue();
}

bool ShadowControlsWrapper::get_value_changed_from_saved() const
{
    return mrVsPos.IsValueChangedFromSaved() ||
           mrMfSize.get_value_changed_from_saved() ||
           mrLbColor.IsValueChangedFromSaved();
}

void ShadowControlsWrapper::SetControlDontKnow()
@@ -833,16 +842,12 @@ bool SvxBorderTabPage::FillItemSet( SfxItemSet* rCoreAttrs )
        bAttrsChanged = true;
    }

    if (m_xShadowControls)
    if (m_xShadowControls && m_xShadowControls->get_value_changed_from_saved())
    {
        sal_uInt16 nShadowId = pPool->GetWhich(mnShadowSlot);
        const SvxShadowItem& rOldShadowItem = *static_cast<const SvxShadowItem*>(rCoreAttrs->GetItem(nShadowId));
        SvxShadowItem aNewShadowItem = m_xShadowControls->GetControlValue(rOldShadowItem);
        if (aNewShadowItem != rOldShadowItem)
        {
            rCoreAttrs->Put(aNewShadowItem);
            bAttrsChanged = true;
        }
        rCoreAttrs->Put(m_xShadowControls->GetControlValue(rOldShadowItem));
        bAttrsChanged = true;
    }

    if (m_xMarginControls && m_xMarginControls->get_value_changed_from_saved())