tdf#139486 also listen to the Entry to determine if the SpinButton was changed
the Window::FocusOut handler the browser installs is called before the
Control::FocusOut handler, built-into vcl::Control, is called and
the Control::FocusOut handler is the one that calls the (speculative)
ValueChanged so the browser determines that the SpinButton is unchanged
at the time of focus out. If we additionally listen to Changed at the
Entry level we will correctly know that widget is modified in some way
at the Window::FocusOut time.
Change-Id: I540d917fc7375fa61662aa69397bcbaa04a91f26
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/109880
Tested-by: Jenkins
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
diff --git a/extensions/source/propctrlr/standardcontrol.hxx b/extensions/source/propctrlr/standardcontrol.hxx
index ead1f26..0ed0fc6 100644
--- a/extensions/source/propctrlr/standardcontrol.hxx
+++ b/extensions/source/propctrlr/standardcontrol.hxx
@@ -218,7 +218,9 @@ namespace pcr
virtual void SetModifyHandler() override
{
ONumericControl_Base::SetModifyHandler();
getTypedControlWindow()->connect_value_changed( LINK( this, CommonBehaviourControlHelper, MetricModifiedHdl ) );
weld::MetricSpinButton* pSpinButton = getTypedControlWindow();
pSpinButton->connect_value_changed( LINK( this, CommonBehaviourControlHelper, MetricModifiedHdl ) );
pSpinButton->get_widget().connect_changed( LINK( this, CommonBehaviourControlHelper, EditModifiedHdl ) );
}
private: