Resolves: tdf#129484 just install decimal key handler for spinbuttons
as a simple interim fix
Change-Id: I7e393fe20f4fb7ea277c423f9fc9789d658b1e18
Reviewed-on: https://gerrit.libreoffice.org/85505
Tested-by: Jenkins
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
diff --git a/vcl/unx/gtk3/gtk3gtkinst.cxx b/vcl/unx/gtk3/gtk3gtkinst.cxx
index 5d80c7e..260bc60 100644
--- a/vcl/unx/gtk3/gtk3gtkinst.cxx
+++ b/vcl/unx/gtk3/gtk3gtkinst.cxx
@@ -1895,6 +1895,14 @@ protected:
return AllSettings::GetLayoutRTL();
}
void localizeDecimalSeparator()
{
// tdf#128867 if localize decimal separator is active we will always
// need to be able to change the output of the decimal key press
if (!m_nKeyPressSignalId && Application::GetSettings().GetMiscSettings().GetEnableLocalizedDecimalSep())
m_nKeyPressSignalId = g_signal_connect(m_pWidget, "key-press-event", G_CALLBACK(signalKey), this);
}
private:
bool m_bTakeOwnership;
bool m_bFrozen;
@@ -2174,10 +2182,6 @@ public:
, m_nDragDropReceivedSignalId(0)
, m_nDragLeaveSignalId(0)
{
// tdf#128867 if localize decimal separator is active we will always
// need to be able to change the output of the decimal key press
if (Application::GetSettings().GetMiscSettings().GetEnableLocalizedDecimalSep())
m_nKeyPressSignalId = g_signal_connect(m_pWidget, "key-press-event", G_CALLBACK(signalKey), this);
}
virtual void connect_key_press(const Link<const KeyEvent&, bool>& rLink) override
@@ -10508,6 +10512,7 @@ public:
, m_bBlockOutput(false)
, m_bBlank(false)
{
localizeDecimalSeparator();
}
virtual int get_value() const override