Resolves: tdf#154623 KEY_DECIMAL == GDK_KEY_KP_Decimal or GDK_KEY_KP_Separator

Change-Id: Iade6d3f93ff7f9dcc35c5a04e21617df06955527
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150623
Reviewed-by: Michael Stahl <michael.stahl@allotropia.de>
Tested-by: Jenkins
(cherry picked from commit 50253a2cb2e1b604f0d5bfb5be1d6f91eaa0bc8b)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150625
Reviewed-by: Xisco Fauli <xiscofauli@libreoffice.org>
(cherry picked from commit f186dd4946c87ff2252d3cc330d564f0b92b32d6)
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/150629
Reviewed-by: Eike Rathke <erack@redhat.com>
Reviewed-by: Caolán McNamara <caolanm@redhat.com>
Tested-by: Caolán McNamara <caolanm@redhat.com>
diff --git a/vcl/unx/gtk3/gtkinst.cxx b/vcl/unx/gtk3/gtkinst.cxx
index 1841ebb..5926415 100644
--- a/vcl/unx/gtk3/gtkinst.cxx
+++ b/vcl/unx/gtk3/gtkinst.cxx
@@ -2479,8 +2479,9 @@ GtkWindow* get_active_window()

void LocalizeDecimalSeparator(guint& keyval)
{
    // #i1820# use locale specific decimal separator
    if (keyval == GDK_KEY_KP_Decimal && Application::GetSettings().GetMiscSettings().GetEnableLocalizedDecimalSep())
    const bool bDecimalKey = keyval == GDK_KEY_KP_Decimal || keyval == GDK_KEY_KP_Separator;
    // #i1820# (and tdf#154623) use locale specific decimal separator
    if (bDecimalKey && Application::GetSettings().GetMiscSettings().GetEnableLocalizedDecimalSep())
    {
        GtkWindow* pFocusWin = get_active_window();
        GtkWidget* pFocus = pFocusWin ? gtk_window_get_focus(pFocusWin) : nullptr;