summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--vcl/win/app/salinst.cxx2
-rw-r--r--vcl/win/window/salframe.cxx3
2 files changed, 5 insertions, 0 deletions
diff --git a/vcl/win/app/salinst.cxx b/vcl/win/app/salinst.cxx
index 1f2d22cdd69e..906129fdfb29 100644
--- a/vcl/win/app/salinst.cxx
+++ b/vcl/win/app/salinst.cxx
@@ -299,6 +299,8 @@ void SalData::initKeyCodeMap()
if( nKey < 0xffff )\
maVKMap[ nKey ] = b;
+ maVKMap.clear();
+
initKey( '+', KEY_ADD );
initKey( '-', KEY_SUBTRACT );
initKey( '*', KEY_MULTIPLY );
diff --git a/vcl/win/window/salframe.cxx b/vcl/win/window/salframe.cxx
index fd5d2076d05c..a7168989505c 100644
--- a/vcl/win/window/salframe.cxx
+++ b/vcl/win/window/salframe.cxx
@@ -4917,6 +4917,9 @@ static void ImplHandleInputLangChange( HWND hWnd, WPARAM, LPARAM lParam )
if( nLang != pFrame->mnInputLang )
pFrame->CallCallback( SalEvent::InputLanguageChange, 0 );
+ // reinit spec. keys
+ GetSalData()->initKeyCodeMap();
+
ImplSalYieldMutexRelease();
}