From 0f281a6a9d06a615c19c16a9ec7f85fa114b6931 Mon Sep 17 00:00:00 2001 From: Marc Durdin Date: Thu, 27 Aug 2026 07:47:25 +0200 Subject: [PATCH] maint(windows): remove `koSwitchLanguageForAllApplications`, `koAutoSwitchOSKPages`, osVista, osWin7, osWin8, cleanup * Remove references to `koSwitchLanguageForAllApplications` and `koAutoSwitchOSKPages` options, translated strings for them, and related `GlobalKeyboardChangeManager` -- no longer required since Win8. * Remove Windows Vista-, 7-, and 8-specific code paths - except for the one user-facing setting for installing keyboards on downlevel operating systems. * Remove commented code Fixes: #16433 Test-bot: skip --- .../windows/delphi/general/GetOsVersion.pas | 23 ++- ...yman.System.CanonicalLanguageCodeUtils.pas | 6 - .../windows/delphi/general/RegistryKeys.pas | 3 - .../windows/src/xml/keyman_options.xsl | 2 +- oem/firstvoices/windows/src/xml/strings.xml | 5 - .../install/UfrmInstallKeyboardLanguage.pas | 2 +- .../desktop/kmshell/locale/am-ET/strings.xml | 4 - .../desktop/kmshell/locale/az-AZ/strings.xml | 4 - .../desktop/kmshell/locale/bwr-NG/strings.xml | 4 - .../desktop/kmshell/locale/ckl-NG/strings.xml | 4 - .../desktop/kmshell/locale/cs-CZ/strings.xml | 4 - .../src/desktop/kmshell/locale/de/strings.xml | 4 - .../kmshell/locale/el-polyton/strings.xml | 4 - .../desktop/kmshell/locale/es-419/strings.xml | 4 - .../desktop/kmshell/locale/es-ES/strings.xml | 4 - .../desktop/kmshell/locale/ff-NG/strings.xml | 4 - .../desktop/kmshell/locale/ff-ZA/strings.xml | 4 - .../src/desktop/kmshell/locale/fr/strings.xml | 4 - .../desktop/kmshell/locale/ha-HG/strings.xml | 4 - .../desktop/kmshell/locale/hia-NG/strings.xml | 4 - .../desktop/kmshell/locale/id-ID/strings.xml | 4 - .../desktop/kmshell/locale/it-IT/strings.xml | 4 - .../desktop/kmshell/locale/km-KH/strings.xml | 4 - .../src/desktop/kmshell/locale/kn/strings.xml | 4 - .../desktop/kmshell/locale/kr-NG/strings.xml | 4 - .../desktop/kmshell/locale/mfi-NG/strings.xml | 4 - .../desktop/kmshell/locale/mnw-MM/strings.xml | 4 - .../desktop/kmshell/locale/mrt-NG/strings.xml | 4 - .../src/desktop/kmshell/locale/my/strings.xml | 1 - .../desktop/kmshell/locale/nl-NL/strings.xml | 4 - .../desktop/kmshell/locale/pl-PL/strings.xml | 4 - .../desktop/kmshell/locale/pt-BR/strings.xml | 4 - .../desktop/kmshell/locale/pt-PT/strings.xml | 4 - .../desktop/kmshell/locale/qqq/strings.xml | 1 - .../desktop/kmshell/locale/ru-RU/strings.xml | 4 - .../kmshell/locale/shu-latn/strings.xml | 4 - .../desktop/kmshell/locale/sv-SE/strings.xml | 4 - .../src/desktop/kmshell/locale/ta/strings.xml | 1 - .../src/desktop/kmshell/locale/tr/strings.xml | 1 - .../desktop/kmshell/locale/uk-UA/strings.xml | 4 - .../desktop/kmshell/locale/vec/strings.xml | 1 - .../desktop/kmshell/locale/vi-VN/strings.xml | 4 - .../desktop/kmshell/locale/zh-CN/strings.xml | 4 - .../main/UImportOlderVersionSettings.pas | 3 - .../desktop/kmshell/xml/keyman_options.xsl | 2 +- windows/src/desktop/kmshell/xml/strings.xml | 5 - windows/src/desktop/setup/bootstrapmain.pas | 2 +- windows/src/engine/.gitignore | 3 + .../keyman/GlobalKeyboardChangeManager.pas | 142 ------------------ windows/src/engine/keyman/UfrmKeyman7Main.pas | 134 +---------------- windows/src/engine/keyman/keyman.dpr | 1 - windows/src/engine/keyman/keyman.dproj | 1 - .../keyman/viskbd/UfrmVisualKeyboard.pas | 11 +- .../engine/kmcomapi/util/utilkeymanoption.pas | 12 +- .../delphi/general/KeymanOptionNames.pas | 2 - 55 files changed, 26 insertions(+), 466 deletions(-) delete mode 100644 windows/src/engine/keyman/GlobalKeyboardChangeManager.pas diff --git a/common/windows/delphi/general/GetOsVersion.pas b/common/windows/delphi/general/GetOsVersion.pas index e3c7293f2b..b4b85edda7 100644 --- a/common/windows/delphi/general/GetOsVersion.pas +++ b/common/windows/delphi/general/GetOsVersion.pas @@ -1,18 +1,18 @@ (* Name: GetOsVersion Copyright: Copyright (C) SIL International. - Documentation: - Description: + Documentation: + Description: Create Date: 4 Dec 2006 Modified Date: 28 May 2014 Authors: mcdurdin - Related Files: - Dependencies: + Related Files: + Dependencies: - Bugs: - Todo: - Notes: + Bugs: + Todo: + Notes: History: 04 Dec 2006 - mcdurdin - Add osVista 04 May 2012 - mcdurdin - I3306 - V9.0 - Remove TntControls + Win9x support 24 Oct 2012 - mcdurdin - I3487 - V9.0 - Add detection of Win8 @@ -27,7 +27,7 @@ uses Winapi.Windows; type - TOS = (osLegacy, osVista, osWin7, osWin8, osWin10, osOther); // I3669 // I4222 + TOS = (osLegacy, osWin10, osOther); // I3669 // I4222 function GetOs: TOS; @@ -46,12 +46,7 @@ begin begin case osv.dwMajorVersion of 5: Result := osLegacy; - 6: case osv.dwMinorVersion of - 0: Result := osVista; - 1: Result := osWin7; - 2: Result := osWin8; // I3487 - else Result := osWin8; // I3669 - end; + 6: Result := osLegacy; 10: Result := osWin10; else Result := osWin10; diff --git a/common/windows/delphi/general/Keyman.System.CanonicalLanguageCodeUtils.pas b/common/windows/delphi/general/Keyman.System.CanonicalLanguageCodeUtils.pas index 4da9557054..a792d34fe1 100644 --- a/common/windows/delphi/general/Keyman.System.CanonicalLanguageCodeUtils.pas +++ b/common/windows/delphi/general/Keyman.System.CanonicalLanguageCodeUtils.pas @@ -35,12 +35,6 @@ var t: TBCP47Tag; LangTag: TLangTag; begin - // We do not try and canonicalize language tags on Windows 7, because it does - // not follow the same patterns as for later versions of Windows. For example, - // zh-CN is not canonicalized to zh-Hans-CN - if GetOs = osWin7 then - Exit(Tag); - if Tag = '' then Exit(''); diff --git a/common/windows/delphi/general/RegistryKeys.pas b/common/windows/delphi/general/RegistryKeys.pas index b40c309ddd..0f627c7329 100644 --- a/common/windows/delphi/general/RegistryKeys.pas +++ b/common/windows/delphi/general/RegistryKeys.pas @@ -127,9 +127,6 @@ const SRegValue_ProxyLogin = 'proxy login'; SRegValue_AutoOpenOSK = 'auto open osk'; // CU, default true - SRegValue_AutoSwitchOSKPages = 'auto switch osk pages'; // CU, default true - SRegValue_SwitchLanguageWithKeyboard = 'switch language with keyboard'; // CU, default true - SRegValue_SwitchLanguageForAllApplications = 'switch language for all applications'; // CU, default true SRegValue_DeepTSFIntegration = 'deep tsf integration'; // LM, 0=disable, 1=enable, 2=default SRegKey_AppIntegration = SRegKey_KeymanEngine_LM + '\App Integration'; //KM diff --git a/oem/firstvoices/windows/src/xml/keyman_options.xsl b/oem/firstvoices/windows/src/xml/keyman_options.xsl index 0d8fee607b..561ddc70f6 100644 --- a/oem/firstvoices/windows/src/xml/keyman_options.xsl +++ b/oem/firstvoices/windows/src/xml/keyman_options.xsl @@ -14,7 +14,7 @@
- + diff --git a/oem/firstvoices/windows/src/xml/strings.xml b/oem/firstvoices/windows/src/xml/strings.xml index e476f1daf8..0348833eb1 100644 --- a/oem/firstvoices/windows/src/xml/strings.xml +++ b/oem/firstvoices/windows/src/xml/strings.xml @@ -408,11 +408,6 @@ Always show On Screen Keyboard Window when a FirstVoices keyboard is selected - - - - Switch to appropriate On Screen Keyboard/Help automatically when a keyboard is selected - diff --git a/windows/src/desktop/kmshell/install/UfrmInstallKeyboardLanguage.pas b/windows/src/desktop/kmshell/install/UfrmInstallKeyboardLanguage.pas index fab24635f7..e181f0203f 100644 --- a/windows/src/desktop/kmshell/install/UfrmInstallKeyboardLanguage.pas +++ b/windows/src/desktop/kmshell/install/UfrmInstallKeyboardLanguage.pas @@ -474,7 +474,7 @@ begin end; end; - if not (GetOs = osWin7) and not FFoundCustomTag then + if not FFoundCustomTag then begin if IsValidLocaleName(PChar(FText)) then begin diff --git a/windows/src/desktop/kmshell/locale/am-ET/strings.xml b/windows/src/desktop/kmshell/locale/am-ET/strings.xml index 2f23892343..deb9c06475 100644 --- a/windows/src/desktop/kmshell/locale/am-ET/strings.xml +++ b/windows/src/desktop/kmshell/locale/am-ET/strings.xml @@ -336,10 +336,6 @@ የኪይማን የፊደል ሰሌዳ ሲመረጥ ሁልጊዜ የስክሪን ላይ ኪቦርዱን መስኮት አሳይ - - የፊደል ሰሌዳው በሚመረጥበት ጊዜ ወዲያውኑ ወደ ተገቢው የስክሪን ላይ ኪቦርድ እርዳታ ይቀይሩ - - የኪማኑን ስህተቶች ፈልግ diff --git a/windows/src/desktop/kmshell/locale/az-AZ/strings.xml b/windows/src/desktop/kmshell/locale/az-AZ/strings.xml index 7e3b7d5691..e75a4ce7c1 100644 --- a/windows/src/desktop/kmshell/locale/az-AZ/strings.xml +++ b/windows/src/desktop/kmshell/locale/az-AZ/strings.xml @@ -315,10 +315,6 @@ Keyman klaviaturası seçildikdə həmişə Ekran Klaviatura Pəncərəsini göstərin - - Bir klaviatura seçildikdə avtomatik müvafiq olaraq On Screen Keyboard / Help-ə keçmək - - Hata düzəltməsi diff --git a/windows/src/desktop/kmshell/locale/bwr-NG/strings.xml b/windows/src/desktop/kmshell/locale/bwr-NG/strings.xml index 503b941fde..dc3d28ae73 100644 --- a/windows/src/desktop/kmshell/locale/bwr-NG/strings.xml +++ b/windows/src/desktop/kmshell/locale/bwr-NG/strings.xml @@ -315,10 +315,6 @@ Kǝlara saka ncangtǝ On Screen Keyboard Window saka tǝ mdǝ car keyboard ar Keyman - - Pali On Screen Keyboard/Help na kalkal ka kǝrni sakatǝ mdǝ car keyboard laga - - Debugging diff --git a/windows/src/desktop/kmshell/locale/ckl-NG/strings.xml b/windows/src/desktop/kmshell/locale/ckl-NG/strings.xml index 779b0e0531..70dfc201ae 100644 --- a/windows/src/desktop/kmshell/locale/ckl-NG/strings.xml +++ b/windows/src/desktop/kmshell/locale/ckl-NG/strings.xml @@ -335,10 +335,6 @@ Tsanti On Screen Keyboard Window kǝlara saka namtǝ ndǝ tsarba Keyman keyboard - - Mwari ata On Screen Keyboard/Help automatically saka namtǝ gǝ tsarba kibod - - Debugging diff --git a/windows/src/desktop/kmshell/locale/cs-CZ/strings.xml b/windows/src/desktop/kmshell/locale/cs-CZ/strings.xml index 6e217e3b1f..c1572d44ab 100644 --- a/windows/src/desktop/kmshell/locale/cs-CZ/strings.xml +++ b/windows/src/desktop/kmshell/locale/cs-CZ/strings.xml @@ -343,10 +343,6 @@ Vždy zobrazovat zapnuté okno klávesnice při výběru klávesnice - - Automaticky přepnout na vhodnou klávesnici na obrazovku/Pomoc při výběru klávesnice - - Ladění diff --git a/windows/src/desktop/kmshell/locale/de/strings.xml b/windows/src/desktop/kmshell/locale/de/strings.xml index 2e2d3bffd8..529e9dc090 100644 --- a/windows/src/desktop/kmshell/locale/de/strings.xml +++ b/windows/src/desktop/kmshell/locale/de/strings.xml @@ -343,10 +343,6 @@ Bildschirmtastatur immer anzeigen wenn eine Keyman-Tastatur ausgewählt ist - - Bildschirmtastatur bzw. Hilfe automatisch anzeigen, wenn eine Tastatur ausgewählt wird - - Fehlersuchen einschalten diff --git a/windows/src/desktop/kmshell/locale/el-polyton/strings.xml b/windows/src/desktop/kmshell/locale/el-polyton/strings.xml index 72d425903f..3eaab6827b 100644 --- a/windows/src/desktop/kmshell/locale/el-polyton/strings.xml +++ b/windows/src/desktop/kmshell/locale/el-polyton/strings.xml @@ -343,10 +343,6 @@ Ὅταν ἐπιλέγετε πληκτρολόγιο Keyman, νὰ προβάλλετε πάντα τὸ πληκτρολόγιο ὀθόνης - - Μόλις ἐπιλεγεῖ πληκτρολόγιο νὰ ἐμφανίζεται αὐτομάτως τὸ κατάλληλο πληκτρολόγιο ὀθόνης ἢ ὀθόνη βοηθείας - - Διερεύνηση σφαλμάτων diff --git a/windows/src/desktop/kmshell/locale/es-419/strings.xml b/windows/src/desktop/kmshell/locale/es-419/strings.xml index 6d9eabb204..f2ca57c5fe 100644 --- a/windows/src/desktop/kmshell/locale/es-419/strings.xml +++ b/windows/src/desktop/kmshell/locale/es-419/strings.xml @@ -343,10 +343,6 @@ Mostrar siempre la ventana de teclado en pantalla cuando se seleccione el teclado de Keyman - - Cambiar automáticamente a Teclado en pantalla/Ayuda según corresponda cuando se selecciona un teclado - - Depurar diff --git a/windows/src/desktop/kmshell/locale/es-ES/strings.xml b/windows/src/desktop/kmshell/locale/es-ES/strings.xml index 144777c605..608787b42b 100644 --- a/windows/src/desktop/kmshell/locale/es-ES/strings.xml +++ b/windows/src/desktop/kmshell/locale/es-ES/strings.xml @@ -343,10 +343,6 @@ Mostrar siempre la ventana Teclado En Pantalla cuando se selecciona el teclado Keyman - - Cambiar al Teclado En Pantalla apropiado/Ayuda automáticamente cuando se selecciona un teclado - - Depuración diff --git a/windows/src/desktop/kmshell/locale/ff-NG/strings.xml b/windows/src/desktop/kmshell/locale/ff-NG/strings.xml index 9c15b5bf15..01b1e1dcb0 100644 --- a/windows/src/desktop/kmshell/locale/ff-NG/strings.xml +++ b/windows/src/desktop/kmshell/locale/ff-NG/strings.xml @@ -335,10 +335,6 @@ Koonday holla kibod man dow yeeso na`ura to kibod keyman suptaama - - Yaha haa dow kibod yeeso na`ura/mballa to kibod suptaama - - Debugin diff --git a/windows/src/desktop/kmshell/locale/ff-ZA/strings.xml b/windows/src/desktop/kmshell/locale/ff-ZA/strings.xml index 47b53ff10e..475008766c 100644 --- a/windows/src/desktop/kmshell/locale/ff-ZA/strings.xml +++ b/windows/src/desktop/kmshell/locale/ff-ZA/strings.xml @@ -339,10 +339,6 @@ Hollir Tappirde Yaynirde tuma kala nde tappirde Keyman suɓaa - - Lomtin Tappirde Yaynirde/Ballal jaaɓdunde e jaajol so tappirde Keyman suɓaama - - Buggitagol diff --git a/windows/src/desktop/kmshell/locale/fr/strings.xml b/windows/src/desktop/kmshell/locale/fr/strings.xml index df1248f033..e6dbabace4 100644 --- a/windows/src/desktop/kmshell/locale/fr/strings.xml +++ b/windows/src/desktop/kmshell/locale/fr/strings.xml @@ -335,10 +335,6 @@ Toujours afficher le clavier visuel lorsque le clavier Keyman est sélectionné - - Basculer au clavier visuel approprié/aide quand un clavier est sélectionné - - Debogage diff --git a/windows/src/desktop/kmshell/locale/ha-HG/strings.xml b/windows/src/desktop/kmshell/locale/ha-HG/strings.xml index 91a118a878..6bbafe6eb0 100644 --- a/windows/src/desktop/kmshell/locale/ha-HG/strings.xml +++ b/windows/src/desktop/kmshell/locale/ha-HG/strings.xml @@ -315,10 +315,6 @@ Nuna Madannan Kan Screen koyaushe yayinda aka zaɓi madanni - - Koma ga Madannin Kan Screen da ya dace/Taikamaka kai tsaye yayinda aka zaɓi madanni - - Cire kuskure diff --git a/windows/src/desktop/kmshell/locale/hia-NG/strings.xml b/windows/src/desktop/kmshell/locale/hia-NG/strings.xml index bb558c5b18..e555b2d49b 100644 --- a/windows/src/desktop/kmshell/locale/hia-NG/strings.xml +++ b/windows/src/desktop/kmshell/locale/hia-NG/strings.xml @@ -315,10 +315,6 @@ Always show On Screen Keyboard Window when Keyman keyboard is selected - - A gunat daideya t Screen Keyboard/Fanast jiv kudeɗa t keyboard vita kabbklalo - - Klun tina magal kol ɗughwana diff --git a/windows/src/desktop/kmshell/locale/id-ID/strings.xml b/windows/src/desktop/kmshell/locale/id-ID/strings.xml index bfc69558a3..2b7aa7ef82 100644 --- a/windows/src/desktop/kmshell/locale/id-ID/strings.xml +++ b/windows/src/desktop/kmshell/locale/id-ID/strings.xml @@ -315,10 +315,6 @@ Selalu tunjukkan jendela papan tombol di layar ketika papan tombol Keyman dipilih - - Ganti ke bantuan/papan tombol di layar yang sesuai ketika memilih sebuah papan tombol - - Debugging diff --git a/windows/src/desktop/kmshell/locale/it-IT/strings.xml b/windows/src/desktop/kmshell/locale/it-IT/strings.xml index a89759327e..1090d7c064 100644 --- a/windows/src/desktop/kmshell/locale/it-IT/strings.xml +++ b/windows/src/desktop/kmshell/locale/it-IT/strings.xml @@ -343,10 +343,6 @@ Mostra sempre sulla finestra della tastiera a schermo quando è selezionata la tastiera Keyman - - Passa automaticamente a appropriate Tastiera/Aiuto sullo schermo quando viene selezionata una tastiera - - Debug diff --git a/windows/src/desktop/kmshell/locale/km-KH/strings.xml b/windows/src/desktop/kmshell/locale/km-KH/strings.xml index 4c32ffeb1b..722091289d 100644 --- a/windows/src/desktop/kmshell/locale/km-KH/strings.xml +++ b/windows/src/desktop/kmshell/locale/km-KH/strings.xml @@ -343,10 +343,6 @@ បង្ហាញ \"ក្ដារចុចលើអេក្រង់\" ជា​និច្ច នៅពេល​បាន​ជ្រើសរើស​ក្ដារចុច Keyman - - ប្ដូរ​ទៅ \"ក្ដារចុច​លើអេក្រង់/ជំនួយ\" ដែល​ពាក់ព័ន្ធ​ដោយ​ស្វ័យប្រវត្តិ នៅពេល​ក្ដារចុច​ណាមួយត្រូវ​បាន​ជ្រើសរើស​ - - ការប្រមូល​ព័ត៌មានសម្រាប់​ដោះស្រាយ​បញ្ហា diff --git a/windows/src/desktop/kmshell/locale/kn/strings.xml b/windows/src/desktop/kmshell/locale/kn/strings.xml index 4c985d98e0..aa72e7f0ea 100644 --- a/windows/src/desktop/kmshell/locale/kn/strings.xml +++ b/windows/src/desktop/kmshell/locale/kn/strings.xml @@ -335,10 +335,6 @@ ಹೊಸ ಕೀಮ್ಯಾನ್ ಕೀಲಿಮಣೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡಿದಾಗ ತೆರೆಯ ಮೇಲಿನ ಕೀಲಿಮಣೆಯನ್ನು ತೋರಿಸು - - ಬೇರೆ ಕೀಲಿಮಣೆಯನ್ನು ಆಯ್ಕೆ ಮಾಡಿದಾಗ ಸ್ವಯಂಚಾಲಿತವಾಗಿ ಸಹಾಯ ಅಥವಾ ತೆರೆಯ ಮೇಲಿನ ಕೀಲಿಮಣೆಯನ್ನು ಬದಲಿಸು - - ಡೀಬಗ್ ಮಾಡುವುದು diff --git a/windows/src/desktop/kmshell/locale/kr-NG/strings.xml b/windows/src/desktop/kmshell/locale/kr-NG/strings.xml index 509f3e8544..7bdb01ffcd 100644 --- a/windows/src/desktop/kmshell/locale/kr-NG/strings.xml +++ b/windows/src/desktop/kmshell/locale/kr-NG/strings.xml @@ -315,10 +315,6 @@ Sambi yayiScreen Keyboard Window dǝ fulene sa Keyman keyboard dǝ karnǝmiya - - Kalakkǝne rattǝram kalkalma dǝro - - Kadau dǝga kulasne tuluye diff --git a/windows/src/desktop/kmshell/locale/mfi-NG/strings.xml b/windows/src/desktop/kmshell/locale/mfi-NG/strings.xml index 7f3788a37c..f297e652b7 100644 --- a/windows/src/desktop/kmshell/locale/mfi-NG/strings.xml +++ b/windows/src/desktop/kmshell/locale/mfi-NG/strings.xml @@ -315,10 +315,6 @@ A nja a ban kwa Keyboard Window at sikirine ma seke an ksa Keyman keyboard ŋanna gé slera - - Magamaga Switch a dem kalkale sikirin Keyboard/anuga mla ma seke ksanta-ksande keyboard ŋanna - - Debugging diff --git a/windows/src/desktop/kmshell/locale/mnw-MM/strings.xml b/windows/src/desktop/kmshell/locale/mnw-MM/strings.xml index 63d921d4a9..2ea0f1b4dc 100644 --- a/windows/src/desktop/kmshell/locale/mnw-MM/strings.xml +++ b/windows/src/desktop/kmshell/locale/mnw-MM/strings.xml @@ -343,10 +343,6 @@ ယဝ်ရ ကဳဗုဒ်ကဳမာန် ရုဲလဝ်မ္ဂး ပံက် ကဳဗုဒ်ဗၠးမုက် လၟိန် - - ယဝ်ရ ရုဲစှ်လဝ်ကဳဗုဒ်မွဲမွဲမ္ဂး ပံက်ကဵု အရီုဗၚ် မဆက်စပ် ကု ကဳဗုဒ်ဗၠးမုက် - - ဂၠိုက်ဂၠာဲပသောၚ်စၟ diff --git a/windows/src/desktop/kmshell/locale/mrt-NG/strings.xml b/windows/src/desktop/kmshell/locale/mrt-NG/strings.xml index 896f67ddcb..0d8f9580a2 100644 --- a/windows/src/desktop/kmshell/locale/mrt-NG/strings.xml +++ b/windows/src/desktop/kmshell/locale/mrt-NG/strings.xml @@ -315,10 +315,6 @@ Kuga ncha On Screen Keyboard Window ma nagu ga caɗu Keyman keyboard - - Kuga pubila alu On screen Keyboard/ thlia ɓar udzu ma mji a caba keyboard ari - - Debugging diff --git a/windows/src/desktop/kmshell/locale/my/strings.xml b/windows/src/desktop/kmshell/locale/my/strings.xml index 0e8576c65b..c813fe581b 100644 --- a/windows/src/desktop/kmshell/locale/my/strings.xml +++ b/windows/src/desktop/kmshell/locale/my/strings.xml @@ -10,7 +10,6 @@ ထွက်ပါ Keyman? Simulate AltGr with Ctrl+Alt ကီးမန်းကီးဘုတ်ကို ရွေးသည့်အခါတိုင်း Screenမှာပေါ်မှာမြင်ရမည့်ကီးဘုတ် ကိုပြပါ - ကီးဘုတ်ကိုရွေးချယ်ပြီးပါက သင့်လျော်သော Screenမှာပေါ်မှာမြင်ရမည့်ကီးဘုတ်/အကူအညီကို အလိုအလျောက်ပြပါ Debugging အဆင့်မြင့် General diff --git a/windows/src/desktop/kmshell/locale/nl-NL/strings.xml b/windows/src/desktop/kmshell/locale/nl-NL/strings.xml index 4edb9a4e6c..66e9d72b0b 100644 --- a/windows/src/desktop/kmshell/locale/nl-NL/strings.xml +++ b/windows/src/desktop/kmshell/locale/nl-NL/strings.xml @@ -315,10 +315,6 @@ Toon altijd op het scherm toetsenbord wanneer toetsenbord is geselecteerd - - Schakel automatisch over naar toepasselijk bij schermtoetsenbord/Help wanneer een toetsenbord is geselecteerd - - Foutopsporing diff --git a/windows/src/desktop/kmshell/locale/pl-PL/strings.xml b/windows/src/desktop/kmshell/locale/pl-PL/strings.xml index 1702d5b4d1..43aea94ad6 100644 --- a/windows/src/desktop/kmshell/locale/pl-PL/strings.xml +++ b/windows/src/desktop/kmshell/locale/pl-PL/strings.xml @@ -315,10 +315,6 @@ Zawsze pokazuj okno klawiatury ekranowej, gdy wybrana jest klawiatura Keyman - - Automatycznie przełącz na odpowiednią klawiaturę ekranową/stronę pomocy po wybraniu klawiatury - - Debugowanie diff --git a/windows/src/desktop/kmshell/locale/pt-BR/strings.xml b/windows/src/desktop/kmshell/locale/pt-BR/strings.xml index d798b1b43d..5e58460a45 100644 --- a/windows/src/desktop/kmshell/locale/pt-BR/strings.xml +++ b/windows/src/desktop/kmshell/locale/pt-BR/strings.xml @@ -335,10 +335,6 @@ Always show On Screen Keyboard Window when Keyman keyboard is selected - - Switch to appropriate On Screen Keyboard/Help automatically when a keyboard is selected - - Debugging diff --git a/windows/src/desktop/kmshell/locale/pt-PT/strings.xml b/windows/src/desktop/kmshell/locale/pt-PT/strings.xml index 6a1d0df5a4..669dd4f8e2 100644 --- a/windows/src/desktop/kmshell/locale/pt-PT/strings.xml +++ b/windows/src/desktop/kmshell/locale/pt-PT/strings.xml @@ -343,10 +343,6 @@ Mostrar sempre Teclado Virtual enquanto o teclado Keyman estiver selecionado. - - Mudar automaticamente para a Ajuda apropriada do Teclado Virtual quando um teclado for selecionado - - Depuração diff --git a/windows/src/desktop/kmshell/locale/qqq/strings.xml b/windows/src/desktop/kmshell/locale/qqq/strings.xml index 23e31b333b..fe75075025 100644 --- a/windows/src/desktop/kmshell/locale/qqq/strings.xml +++ b/windows/src/desktop/kmshell/locale/qqq/strings.xml @@ -105,7 +105,6 @@ Create a user interface translation for Keyman Desktop at http://www.tavultesoft [!!Ţēśŧ ƒőŗ ćōńƒłĭćţıņġ ȃƥƿŀīčäťīōňş ŵĥēƞ !!]Keyman[!! şťǻřţš!!] [!!Ŕěŀęàšĕ Şĥıƒţ/Ĉţřŀ/Ȁľŧ ōň Őņ Ŝčŗėěń Ķēŷƃơâŕđ ȃƒţēŕ ćŀĭċĸīňģ å ĸȅȳ!!] [!!Äľŵȁƴŝ ŝĥŏŵ Őƞ Šċŕėěń ĶĕƴƄōãřđ Ŵīƞďơŵ ŵĥėń Ķěɏmàƞ ķȇƴƃőáŗď ĩš śēļĕĉţěď!!] - [!!Šŵĭŧčĥ ŧơ āƥƿřőƥŕįáŧė Őŋ Šćŗěėń ƘȅƴƄőãŗđ/Ħȅĺƿ áųťơmăŧĭĉåłŀŷ ŵĥȅņ ȃ ķęȳƀōāŕđ ĭŝ śĕļȇćţȇđ!!] [!!ĎēƄŭģġįƞĝ!!] [!!Ůšēř ĩŋţĕŗƒāĉē łáņģůȃġė...!!] [!!Ɓâśȇ Ƙȇƴɓŏäŕđ...!!] diff --git a/windows/src/desktop/kmshell/locale/ru-RU/strings.xml b/windows/src/desktop/kmshell/locale/ru-RU/strings.xml index b0729d8b54..e659a3f14f 100644 --- a/windows/src/desktop/kmshell/locale/ru-RU/strings.xml +++ b/windows/src/desktop/kmshell/locale/ru-RU/strings.xml @@ -335,10 +335,6 @@ Всегда показывать в экранном окне клавиатуры при выборе клавиатуры - - Переключиться на соответствующую клавиатуру/справку при выборе клавиатуры - - Отладка diff --git a/windows/src/desktop/kmshell/locale/shu-latn/strings.xml b/windows/src/desktop/kmshell/locale/shu-latn/strings.xml index ebf8995a12..b5397a2a83 100644 --- a/windows/src/desktop/kmshell/locale/shu-latn/strings.xml +++ b/windows/src/desktop/kmshell/locale/shu-latn/strings.xml @@ -335,10 +335,6 @@ Matakula eiwari Keyboard albinshaf matakula kan assar Keyman Keyboard - - Eilbarram ley Keyboard albinshaf alsayid/Mi\'awana bey dumta kan azzaltal keyboard - - Debugging diff --git a/windows/src/desktop/kmshell/locale/sv-SE/strings.xml b/windows/src/desktop/kmshell/locale/sv-SE/strings.xml index 7bba7833fe..253c4d849c 100644 --- a/windows/src/desktop/kmshell/locale/sv-SE/strings.xml +++ b/windows/src/desktop/kmshell/locale/sv-SE/strings.xml @@ -335,10 +335,6 @@ Visa alltid på tangentbordsfönstret när tangentbordet är markerat - - Växla till lämplig På skärmen Tangentbord/Hjälp automatiskt när ett tangentbord väljs - - Felsökning diff --git a/windows/src/desktop/kmshell/locale/ta/strings.xml b/windows/src/desktop/kmshell/locale/ta/strings.xml index 38a91f6665..9040263498 100644 --- a/windows/src/desktop/kmshell/locale/ta/strings.xml +++ b/windows/src/desktop/kmshell/locale/ta/strings.xml @@ -315,7 +315,6 @@ Entries not in this file will be sourced from the default locale.xml file in the Test for conflicting applications when Keyman starts Release Shift/Ctrl/Alt on On Screen Keyboard after clicking a key Always show On Screen Keyboard Window when Keyman keyboard is selected - Switch to appropriate On Screen Keyboard/Help automatically when a keyboard is selected Base Keyboard... diff --git a/windows/src/desktop/kmshell/locale/tr/strings.xml b/windows/src/desktop/kmshell/locale/tr/strings.xml index e32f2a09b5..f92561350c 100644 --- a/windows/src/desktop/kmshell/locale/tr/strings.xml +++ b/windows/src/desktop/kmshell/locale/tr/strings.xml @@ -10,7 +10,6 @@ Keyman'tan Çıkış? AltGr'yi Ctrl+Alt ile simüle edin Keyman klavye seçildiğinde daima Ekran Klavyesi Penceresini gösterin - Bir klavye seçildiğinde uygun Ekran Klavyesi/ Yardım'a otomatik olarak geçin Harf imleme tuşlarına düz tuşlar gibi davran Hata Ayıklama Gelişmiş diff --git a/windows/src/desktop/kmshell/locale/uk-UA/strings.xml b/windows/src/desktop/kmshell/locale/uk-UA/strings.xml index 6d2e9e092b..4da38b3878 100644 --- a/windows/src/desktop/kmshell/locale/uk-UA/strings.xml +++ b/windows/src/desktop/kmshell/locale/uk-UA/strings.xml @@ -335,10 +335,6 @@ Завжди показувати на екранному вікні, коли вибрано клавіатуру Keyman - - Автоматично переключатися на відповідну клавіатуру на екрані/допомога при виборі клавіатури - - Відлагодження diff --git a/windows/src/desktop/kmshell/locale/vec/strings.xml b/windows/src/desktop/kmshell/locale/vec/strings.xml index 47c1a96cc7..90d65792e6 100644 --- a/windows/src/desktop/kmshell/locale/vec/strings.xml +++ b/windows/src/desktop/kmshell/locale/vec/strings.xml @@ -10,7 +10,6 @@ Vusto andar fora da Keyman Desktop? Ìmita AltGr co' Ctrl+Alt Mostra senpre ƚa finèstra de ƚa Mapa Tastièra co xé desernìo ƚa tastièra Keyman - Pasa a ƚa pàxena pì pròpia de Mapa Tastièra so Schèrmo co xé desernìo na tastièra Debugging Avansà Xeneral diff --git a/windows/src/desktop/kmshell/locale/vi-VN/strings.xml b/windows/src/desktop/kmshell/locale/vi-VN/strings.xml index 2cf66d5d5a..48241f24c9 100644 --- a/windows/src/desktop/kmshell/locale/vi-VN/strings.xml +++ b/windows/src/desktop/kmshell/locale/vi-VN/strings.xml @@ -343,10 +343,6 @@ Luôn hiện Cửa sổ Bàn phím ảo khi bàn phím Keyman được chọn - - Tự động chuyển sang Bàn phím ảo/Trợ giúp phù hợp khi chọn bàn phím - - Gỡ lỗi diff --git a/windows/src/desktop/kmshell/locale/zh-CN/strings.xml b/windows/src/desktop/kmshell/locale/zh-CN/strings.xml index c9049cd2a9..2bf4c212fa 100644 --- a/windows/src/desktop/kmshell/locale/zh-CN/strings.xml +++ b/windows/src/desktop/kmshell/locale/zh-CN/strings.xml @@ -335,10 +335,6 @@ 选择键盘时,总是在屏幕键盘窗口中显示 - - 当选择键盘时,自动切换到屏幕键盘/帮助 - - 调试中 diff --git a/windows/src/desktop/kmshell/main/UImportOlderVersionSettings.pas b/windows/src/desktop/kmshell/main/UImportOlderVersionSettings.pas index 278f36a2df..7c873d4118 100644 --- a/windows/src/desktop/kmshell/main/UImportOlderVersionSettings.pas +++ b/windows/src/desktop/kmshell/main/UImportOlderVersionSettings.pas @@ -73,7 +73,6 @@ begin kmcom.Options['koKeyboardHotkeysAreToggle'].Value := True; kmcom.Options['koAltGrCtrlAlt'].Value := False; kmcom.Options['koShowHints'].Value := True; - kmcom.Options['koSwitchLanguageForAllApplications'].Value := True; { Startup } kmcom.Options['koShowStartup'].Value := True; @@ -82,7 +81,6 @@ begin { OSK } kmcom.Options['koReleaseShiftKeysAfterKeyPress'].Value := False; kmcom.Options['koAutoOpenOSK'].Value := False; - kmcom.Options['koAutoSwitchOSKPages'].Value := True; //// TODO: kmcom.Options['koShowOSKOnStartup'] := True; { Advanced } // I3629 @@ -109,7 +107,6 @@ begin kmcom.Options['koTestKeymanFunctioning'].Value := not ValueExists(SRegValue_TestKeymanFunctioning) or ReadBool(SRegValue_TestKeymanFunctioning); kmcom.Options['koReleaseShiftKeysAfterKeyPress'].Value := ValueExists(SRegValue_ReleaseShiftKeysAfterKeyPress) and ReadBool(SRegValue_ReleaseShiftKeysAfterKeyPress); - kmcom.Options['koAutoSwitchOSKPages'].Value := not ValueExists(SRegValue_AutoSwitchOSKPages) or ReadBool(SRegValue_AutoSwitchOSKPages); if OpenKeyReadOnly(SRegKey_UpgradeBackupPath_CU + SRegKey_KeymanEngine70_CU+'\hotkeys\1') or OpenKeyReadOnly(SRegKey_UpgradeBackupPath_CU + SRegKey_KeymanEngine70_CU+'\hotkeys\8') then begin diff --git a/windows/src/desktop/kmshell/xml/keyman_options.xsl b/windows/src/desktop/kmshell/xml/keyman_options.xsl index 7a085f5808..0d68ca46ca 100644 --- a/windows/src/desktop/kmshell/xml/keyman_options.xsl +++ b/windows/src/desktop/kmshell/xml/keyman_options.xsl @@ -14,7 +14,7 @@
- + diff --git a/windows/src/desktop/kmshell/xml/strings.xml b/windows/src/desktop/kmshell/xml/strings.xml index 16206a832c..7d6f53c85d 100644 --- a/windows/src/desktop/kmshell/xml/strings.xml +++ b/windows/src/desktop/kmshell/xml/strings.xml @@ -434,11 +434,6 @@ Always show On Screen Keyboard Window when Keyman keyboard is selected - - - - Switch to appropriate On Screen Keyboard/Help automatically when a keyboard is selected - diff --git a/windows/src/desktop/setup/bootstrapmain.pas b/windows/src/desktop/setup/bootstrapmain.pas index 28ac6a6257..0c9c258cd8 100644 --- a/windows/src/desktop/setup/bootstrapmain.pas +++ b/windows/src/desktop/setup/bootstrapmain.pas @@ -416,7 +416,7 @@ function TSetupBootstrap.CheckForOldVersionScenario: Boolean; // I4460 var OldKMShellPath: string; begin - if not (GetOS in [osLegacy, osVista]) then // I4365 + if GetOS <> osLegacy then // I4365 Exit(False); if FInstallInfo.Packages.Count = 0 then diff --git a/windows/src/engine/.gitignore b/windows/src/engine/.gitignore index e17dcb3de7..b5eaf968f8 100644 --- a/windows/src/engine/.gitignore +++ b/windows/src/engine/.gitignore @@ -3,6 +3,9 @@ keyman32/keyman-debug-etw.h keyman32/keyman-debug-etw.rc keyman32/keyman-debug-etw.res keyman32/keyman-debug-etwTEMP.BIN +keymanhp/versionarm64.res +keymanhp/versionx64.res +kmcomapi/kbd_noicon.res mcompile/Debug # Visual Studio packages for test diff --git a/windows/src/engine/keyman/GlobalKeyboardChangeManager.pas b/windows/src/engine/keyman/GlobalKeyboardChangeManager.pas deleted file mode 100644 index 22d5509a96..0000000000 --- a/windows/src/engine/keyman/GlobalKeyboardChangeManager.pas +++ /dev/null @@ -1,142 +0,0 @@ -unit GlobalKeyboardChangeManager; - -interface - -uses - Winapi.Windows, - Winapi.Messages, - System.Classes, - System.SysUtils, - - Keyman.System.SharedBuffers, - LangSwitchManager; - -type - TGlobalKeyboardChangeManager = class(TThread) - private type - TLastKeyboard = record - TIP: TSelectKeyboardBuffer; - Keyboard: HKL; - end; - private var - FWindow: HWND; - FLastKeyboard: TLastKeyboard; - procedure WndProc(var Message: TMessage); - procedure ProcessChange(Mode: Integer; Param: NativeUInt); - protected - procedure Execute; override; - public - constructor Create; - destructor Destroy; override; - - procedure PostChange(Keyboard: TLangSwitchKeyboard); - end; - -implementation - -uses - Keyman.System.DebugLogClient, - UfrmKeyman7Main; - -const - WM_USER_DESTROY = WM_USER + 1; - WM_USER_CHANGE = WM_USER + 2; - -{ TGlobalKeyboardChangeManager } - -constructor TGlobalKeyboardChangeManager.Create; -begin - inherited Create(False); -end; - -destructor TGlobalKeyboardChangeManager.Destroy; -begin - if FWindow <> 0 then - PostMessage(FWindow, WM_USER_DESTROY, 0, 0); - inherited Destroy; -end; - -procedure TGlobalKeyboardChangeManager.Execute; -var - msg: TMsg; -begin - FWindow := AllocateHwnd(WndProc); // TODO: Not thread safe! - while GetMessage(msg, 0, 0, 0) do - begin - DispatchMessage(msg); - end; - DeallocateHwnd(FWindow); -end; - -procedure TGlobalKeyboardChangeManager.PostChange( - Keyboard: TLangSwitchKeyboard); -var - TIP: TLangSwitchKeyboard_TIP; - WinKB: TLangSwitchKeyboard_WinKeyboard; - lk: TLastKeyboard; - FIdentity: DWORD; -begin - lk := FLastKeyboard; - - if Keyboard is TLangSwitchKeyboard_TIP then - begin - TIP := Keyboard as TLangSwitchKeyboard_TIP; - - lk.TIP.LangID := TIP.Profile.langid; - lk.TIP.CLSID := TIP.Profile.clsid; - lk.TIP.GUIDProfile := TIP.Profile.guidProfile; - TDebugLogClient.Instance.WriteMessage('TGlobalKeyboardChangeManager.PostChange TIP', []); - - if not CompareMem(@lk, @FLastKeyboard, SizeOf(TLastKeyboard)) then - begin - FLastKeyboard := lk; - FIdentity := TSharedBufferManager.Identity.WriteSelectKeyboardBuffer(lk.TIP); - PostMessage(FWindow, WM_USER_CHANGE, KMCI_SELECTKEYBOARD_BACKGROUND_TSF, FIdentity); - end; - end - else if Keyboard is TLangSwitchKeyboard_WinKeyboard then - begin - WinKB := Keyboard as TLangSwitchKeyboard_WinKeyboard; - lk.Keyboard := WinKB.HKL; - - TDebugLogClient.Instance.WriteMessage('TGlobalKeyboardChangeManager.PostChange HKL', []); - - if not CompareMem(@lk, @FLastKeyboard, SizeOf(TLastKeyboard)) then - begin - FLastKeyboard := lk; - PostMessage(FWindow, WM_USER_CHANGE, KMCI_SELECTKEYBOARD_BACKGROUND, lk.Keyboard); - end; - end - else - begin - Exit; - end; - -end; - -procedure TGlobalKeyboardChangeManager.ProcessChange(Mode: Integer; Param: NativeUInt); -begin - SendMessageTimeout(HWND_BROADCAST, wm_keyman_control_internal, Mode, Param, SMTO_ABORTIFHUNG, 250, nil); -end; - -procedure TGlobalKeyboardChangeManager.WndProc(var Message: TMessage); -begin - with Message do - begin - case Message.Msg of - WM_USER_DESTROY: - DestroyWindow(FWindow); - WM_DESTROY: - begin - PostQuitMessage(0); - Result := 0; - end; - WM_USER_CHANGE: - ProcessChange(WParam, LParam); - else - Message.Result := DefWindowProc(FWindow, Msg, WParam, LParam); - end; - end; -end; - -end. diff --git a/windows/src/engine/keyman/UfrmKeyman7Main.pas b/windows/src/engine/keyman/UfrmKeyman7Main.pas index 2836235f1f..852161ccc5 100644 --- a/windows/src/engine/keyman/UfrmKeyman7Main.pas +++ b/windows/src/engine/keyman/UfrmKeyman7Main.pas @@ -153,8 +153,6 @@ uses Keyman.System.FrameworkInputPane, keymanapi_TLB, -//TOUCH UfrmTouchKeyboard, - GlobalKeyboardChangeManager, UfrmVisualKeyboard, IntegerList, KeymanTrayIcon, @@ -222,7 +220,6 @@ type FLastFocus: THandle; FLastActive: THandle; FLangSwitchManager: TLangSwitchManager; // I3933 - FGlobalKeyboardChangeManager: TGlobalKeyboardChangeManager; // I4271 FActiveHKL: Integer; FTrayIcon: TIcon; // I4359 @@ -253,7 +250,6 @@ type procedure TrayIconMouseUp(Sender: TObject; Button: TMouseButton; Shift: TShiftState; X, Y: Integer); procedure TrayIconDblClick(Sender: TObject); - //function CreateKeymanMenuItem(Owner: TPopupMenu; rp: TRunningProduct; cmi: IKeymanCustomisationMenuItem): TKeymanMenuItem; function AppMessage(var Message: TMessage): Boolean; procedure TestKeymanFunctioning(FunctionType: TTestKeymanFunctionType; RunOnSuccess, ResetCounter: Boolean); function ShouldTestKeymanFunctioning: Boolean; @@ -262,13 +258,10 @@ type procedure UpdateOSKVisibility; function GetOption_AutoOpenOSK: Boolean; - function GetOption_AutoSwitchOSKPages: Boolean; - //procedure SnapToolHelp; procedure RecreateTaskbarIcons; function StartKeymanEngine: Boolean; procedure StartKeymanHostProcess(ProcessName: string); procedure OpenTextEditor; - //function GetCachedKeymanID(hkl: DWORD): DWORD; procedure ShowLanguageSwitchForm; procedure LanguageSwitchFormHidden(Sender: TObject); procedure RegisterControllerWindows; // I3092 @@ -278,13 +271,7 @@ type function GetActiveKeymanID: Integer; // I3949 procedure RequestCurrentActiveKeyboard(Command: WORD); // I3961 function ProcessWMKeymanControl(Command, WParam: Word; LParam: DWord): LResult; // I3961 -//TOUCH procedure HideTouchKeyboard; -//TOUCH procedure ShowTouchKeyboard; -//TOUCH function UseTouchKeyboard: Boolean; -//TOUCH function TouchKeyboardVisible: Boolean; -//TOUCH procedure ProcessContextChange(Atom: DWORD); - procedure PostGlobalKeyboardChange(FActiveKeyboard: TLangSwitchKeyboard); // I4271 function IsControllerWindow(AHandle: THandle): Boolean; // I4731 procedure UpdateFocusInfo; // I4731 procedure UnregisterControllerWindows; // I4731 @@ -339,7 +326,6 @@ type property LangSwitchManager: TLangSwitchManager read FLangSwitchManager; // I3933 property Option_AutoOpenOSK: Boolean read GetOption_AutoOpenOSK; - property Option_AutoSwitchOSKPages: Boolean read GetOption_AutoSwitchOSKPages; end; var @@ -405,7 +391,7 @@ uses klog, GetOsVersion, System.StrUtils, - System.Win.ComObj, {tlhelp32,} + System.Win.ComObj, VistaMessages, Vcl.AxCtrls, Vcl.Buttons, @@ -469,8 +455,6 @@ begin rp.FTrayIcon.OnMouseUp := TrayIconMouseUp; rp.FTrayIcon.OnDblClick := TrayIconDblClick; rp.FTrayIcon.OnUnresponsive := TrayIconUnresponsive; - //rp.FTrayIcon.OnClick := TrayIconClick; -// rp.FTrayIcon.Icon.ReleaseHandle; rp.FTrayIcon.Icon.Assign(FTrayIcon); rp.FTrayIcon.Hint := MsgFromId(SKApplicationTitle); rp.FTrayIcon.Visible := True; @@ -502,9 +486,6 @@ procedure TfrmKeyman7Main.FormCreate(Sender: TObject); begin TKeymanSentryClient.Breadcrumb('trace', 'TfrmKeyman7Main.FormCreate'); - if GetOs in [osVista, osWin7] then // I4576 - FGlobalKeyboardChangeManager := TGlobalKeyboardChangeManager.Create; // I4271 - frmKeymanMenu := TfrmKeymanMenu.Create(Self); FLangSwitchManager := TLangSwitchManager.Create; // I3933 @@ -517,7 +498,6 @@ begin end; Application.HookMainWindow(AppMessage); -// FRunningProduct := TRunningProduct.Create; sMsg_TaskbarRestart := RegisterWindowMessage('TaskbarCreated'); ChangeWindowMessageFilter(sMsg_TaskbarRestart, MSGFLT_ADD); @@ -527,11 +507,6 @@ begin PostMessage(Handle, WM_USER_Start, 0, 0); end; -{procedure TfrmKeyman7Main.AppDebug(var Msg: TMsg; var Handled: Boolean); -begin - KL.Log('MESSAGE %8.8x %x [%x, %x]', [Msg.hwnd, Msg.message, Msg.wParam, Msg.lParam]); -end;} - procedure TfrmKeyman7Main.FormDestroy(Sender: TObject); begin TKeymanSentryClient.Breadcrumb('trace', 'TfrmKeyman7Main.FormDestroy'); @@ -552,8 +527,6 @@ begin end; if Assigned(frmVisualKeyboard) then // I1096 - silent exception when Keyman closes begin - //frmVisualKeyboard.Hide; - //frmVisualKeyboard.Release; FreeAndNil(frmVisualKeyboard); // I2692 end; @@ -571,10 +544,7 @@ begin kmint.KeymanEngineControl.ShutdownKeyman32Engine; FreeAndNil(FLangSwitchManager); // I3933 - //Windows.MessageBox(Handle, PChar(IntToStr(kmcom._AddRef)), 'RefCount+1', MB_OK); kmint.kmcom := nil; // I5132 - - FreeAndNil(FGlobalKeyboardChangeManager); // I4271 end; function TfrmKeyman7Main.GetOption_AutoOpenOSK: Boolean; @@ -582,11 +552,6 @@ begin Result := kmcom.Options.Items['koAutoOpenOSK'].Value; end; -function TfrmKeyman7Main.GetOption_AutoSwitchOSKPages: Boolean; -begin - Result := kmcom.Options.Items['koAutoSwitchOSKPages'].Value; -end; - function TfrmKeyman7Main.IsControllerWindow(AHandle: THandle): Boolean; // I4731 begin Result := GetWindowThreadProcessId(AHandle, nil) = GetCurrentThreadId; @@ -865,11 +830,6 @@ begin Sleep(5000); TDebugLogClient.Instance.WriteMessage('kmc_fakefreeze end', []); end; -//TOUCH KMC_CONTEXT: -//TOUCH begin -//TOUCH if LParam <> 0 then -//TOUCH ProcessContextChange(LParam); -//TOUCH end; end; end; @@ -1120,16 +1080,6 @@ begin // I3933 frmKeymanMenu.PopupEx(mnu, pt.x, pt.y, systraylocation); // I3990 end; -procedure TfrmKeyman7Main.PostGlobalKeyboardChange(FActiveKeyboard: TLangSwitchKeyboard); // I4271 -begin - if Assigned(FActiveKeyboard) and - Assigned(kmcom) and - (GetOs in [osVista, osWin7]) and // I4576 // I4576 // I4576 - kmcom.Options.Items['koSwitchLanguageForAllApplications'].Value and - Assigned(FGlobalKeyboardChangeManager) then - FGlobalKeyboardChangeManager.PostChange(FActiveKeyboard); -end; - procedure TfrmKeyman7Main.TrayIconDblClick(Sender: TObject); begin SetLastFocus; @@ -1317,8 +1267,6 @@ begin end; end; - //Windows.MessageBox(Handle, PChar(IntToStr(kmcom._AddRef)), 'RefCount+1', MB_OK); - try kmcom.AutoApply := False; kmcom.Keyboards.Apply; @@ -1423,8 +1371,6 @@ begin GlobalDeleteAtom(HiWord(CommandAndAtom)); // I3949 buf := buftext; - //OutputDebugString(PChar('ProcessProfileChange("'+buf+'")'#13#10)); - {debug := } StrToken(buf, '|'); // I4285 if not TryStrToInt(StrToken(buf, '|'), FLangID) then Exit; @@ -1502,18 +1448,11 @@ begin UpdateOSKVisibility; end; - PostGlobalKeyboardChange(FActiveKeyboard); // I4271 - if Assigned(frmVisualKeyboard) then // I3949 begin frmVisualKeyboard.RefreshSelectedKeyboard; // I2398 end; -//TOUCH if Assigned(frmTouchKeyboard) then -//TOUCH begin -//TOUCH frmTouchKeyboard.RefreshSelectedKeyboard; -//TOUCH end; - if wCommand = PC_UPDATE_LANGUAGESWITCH then // I4124 begin // TODO fixup product id //OutputDebugString(PChar('Showing language switch form'#13#10)); @@ -1577,7 +1516,6 @@ begin Exit; end; - //Windows.SetForegroundWindow(FLastFocus); //FLastActive); if Winapi.Windows.SetFocus(FLastFocus) = 0 then TDebugLogClient.Instance.WriteLastError('SetLastFocus', 'SetFocus'); @@ -1695,19 +1633,9 @@ end; procedure TfrmKeyman7Main.MnuVisualKeyboard(Sender: TObject); begin SetLastFocus; // I1289 - Focus not returned to active app when OSK opened - -//TOUCH if UseTouchKeyboard then -//TOUCH begin -//TOUCH if TouchKeyboardVisible -//TOUCH then HideTouchKeyboard -//TOUCH else ShowTouchKeyboard; -//TOUCH end -//TOUCH else -//TOUCH begin - if VisualKeyboardVisible(apKeyboard) - then HideVisualKeyboard - else ShowVisualKeyboard(apKeyboard); -//TOUCH end; + if VisualKeyboardVisible(apKeyboard) + then HideVisualKeyboard + else ShowVisualKeyboard(apKeyboard); end; procedure TfrmKeyman7Main.MnuFontHelper(Sender: TObject); @@ -1747,12 +1675,6 @@ procedure TfrmKeyman7Main.HideVisualKeyboard; begin if not Assigned(kmcom) and not StartKeymanEngine then Exit; -//TOUCH if UseTouchKeyboard then -//TOUCH begin -//TOUCH HideTouchKeyboard; -//TOUCH Exit; -//TOUCH end; - if Assigned(frmVisualKeyboard) then // I1274 - Avoid crash when closing OSK when already closed! frmVisualKeyboard.Release; end; @@ -1761,14 +1683,6 @@ procedure TfrmKeyman7Main.ShowVisualKeyboard(Page: TOSKActivePage); begin if not Assigned(kmcom) and not StartKeymanEngine then Exit; -//TOUCH if UseTouchKeyboard then -//TOUCH begin -//TOUCH ShowTouchKeyboard; -//TOUCH Exit; -//TOUCH end; - -//TOUCH HideTouchKeyboard; - if not Assigned(frmVisualKeyboard) then // I1274 - Related, don't recreate OSK if already exists begin frmVisualKeyboard := TfrmVisualKeyboard.Create(nil); @@ -1785,11 +1699,6 @@ begin Result := Assigned(frmVisualKeyboard) and ((Page = apUndefined) or (frmVisualKeyboard.ActivePage = Page)); end; -//TOUCH function TfrmKeyman7Main.TouchKeyboardVisible: Boolean; -//TOUCH begin -//TOUCH Result := Assigned(frmTouchKeyboard); -//TOUCH end; - procedure TfrmKeyman7Main.TestKeymanFunctioning(FunctionType: TTestKeymanFunctionType; RunOnSuccess, ResetCounter: Boolean); begin tmrTestKeymanFunctioning.Enabled := False; @@ -1820,41 +1729,6 @@ begin end; end; -//TOUCH procedure TfrmKeyman7Main.ShowTouchKeyboard; -//TOUCH var -//TOUCH FProduct: IKeymanProduct; -//TOUCH begin -//TOUCH if not Assigned(kmcom) and not StartKeymanEngine then Exit; -//TOUCH -//TOUCH if Assigned(frmVisualKeyboard) then // I1274 - Avoid crash when closing OSK when already closed! -//TOUCH frmVisualKeyboard.Release; -//TOUCH -//TOUCH if not Assigned(frmTouchKeyboard) then -//TOUCH begin -//TOUCH FProduct := ProductFromMenuItem(nil); -//TOUCH if not Assigned(FProduct) then Exit; -//TOUCH -//TOUCH frmTouchKeyboard := TfrmTouchKeyboard.Create(nil, FProduct); -//TOUCH frmTouchKeyboard.FreeNotification(Self); -//TOUCH frmTouchKeyboard.SetContext(FCurrentContext); -//TOUCH //frmTouchKeyboard.Show; -//TOUCH end; -//TOUCH end; - -//TOUCH procedure TfrmKeyman7Main.HideTouchKeyboard; -//TOUCH begin -//TOUCH if not Assigned(kmcom) and not StartKeymanEngine then Exit; -//TOUCH -//TOUCH FreeAndNil(frmTouchKeyboard); -//TOUCH end; - -//TOUCH function TfrmKeyman7Main.UseTouchKeyboard: Boolean; -//TOUCH begin -//TOUCH if not Assigned(kmcom) -//TOUCH then Result := False -//TOUCH else Result := kmcom.Options['koUseTouchLayout'].Value; -//TOUCH end; - procedure TfrmKeyman7Main.tmrCheckInputPaneTimer(Sender: TObject); var r: TRect; diff --git a/windows/src/engine/keyman/keyman.dpr b/windows/src/engine/keyman/keyman.dpr index dadcca01fc..08cb417a59 100644 --- a/windows/src/engine/keyman/keyman.dpr +++ b/windows/src/engine/keyman/keyman.dpr @@ -86,7 +86,6 @@ uses Keyman.System.Util.RenderLanguageIcon in '..\..\..\..\common\windows\delphi\ui\Keyman.System.Util.RenderLanguageIcon.pas', TempFileManager in '..\..\..\..\common\windows\delphi\general\TempFileManager.pas', utiltsf in '..\..\global\delphi\general\utiltsf.pas', - GlobalKeyboardChangeManager in 'GlobalKeyboardChangeManager.pas', utilwow64 in '..\..\global\delphi\general\utilwow64.pas', USendInputString in '..\..\global\delphi\general\USendInputString.pas', Upload_Settings in '..\..\..\..\common\windows\delphi\general\Upload_Settings.pas', diff --git a/windows/src/engine/keyman/keyman.dproj b/windows/src/engine/keyman/keyman.dproj index aa70b2ab7b..2784f6c3b4 100644 --- a/windows/src/engine/keyman/keyman.dproj +++ b/windows/src/engine/keyman/keyman.dproj @@ -211,7 +211,6 @@ - diff --git a/windows/src/engine/keyman/viskbd/UfrmVisualKeyboard.pas b/windows/src/engine/keyman/viskbd/UfrmVisualKeyboard.pas index 5fc1d0ed9d..811b9cb075 100644 --- a/windows/src/engine/keyman/viskbd/UfrmVisualKeyboard.pas +++ b/windows/src/engine/keyman/viskbd/UfrmVisualKeyboard.pas @@ -1000,11 +1000,11 @@ begin end; procedure TfrmVisualKeyboard.WMKeymanOskModifierEvent(var Message: TMessage); -begin - if Assigned(FOnScreenKeyboard) then - FOnScreenKeyboard.OskModifierEvent(Message.WParam, Message.LParam); -end; - +begin + if Assigned(FOnScreenKeyboard) then + FOnScreenKeyboard.OskModifierEvent(Message.WParam, Message.LParam); +end; + procedure TfrmVisualKeyboard.AdjustToClosestMonitor(var x, y, cx, cy: Integer); var m: TMonitor; @@ -1589,7 +1589,6 @@ procedure TfrmVisualKeyboard.UpdateActivePage; begin if ActivePage in [apUndefined, apKeyboard] then // I2287 begin - {$MESSAGE HINT 'eliminate Option_AutoSwitchOSKPages'} LoadKeyboard; if (frmKeyman7Main.ActiveKeymanID = KEYMANID_NONKEYMAN) or FOnScreenKeyboard.HasVisualKeyboard(frmKeyman7Main.ActiveKeymanID) then // I3949 ActivePage := apKeyboard diff --git a/windows/src/engine/kmcomapi/util/utilkeymanoption.pas b/windows/src/engine/kmcomapi/util/utilkeymanoption.pas index 653fea1d96..bcb9e4cd34 100644 --- a/windows/src/engine/kmcomapi/util/utilkeymanoption.pas +++ b/windows/src/engine/kmcomapi/util/utilkeymanoption.pas @@ -122,11 +122,10 @@ type end; // The Default options here need to be consistent with the defaults set in TfrmRunDesktop.GetDefaultSettings -const KeymanOptionInfo: array[0..16] of TKeymanOptionInfo = ( // I3331 // I3620 // I4552 +const KeymanOptionInfo: array[0..14] of TKeymanOptionInfo = ( // I3331 // I3620 // I4552 // Global options (opt: koKeyboardHotkeysAreToggle; RegistryName: SRegValue_KeyboardHotkeysAreToggle; OptionType: kotBool; BoolValue: False; GroupName: 'kogGeneral'), - (opt: koSwitchLanguageForAllApplications; RegistryName: SRegValue_SwitchLanguageForAllApplications; OptionType: kotBool; BoolValue: True; GroupName: 'kogGeneral'), // I2277 // I4393 (opt: koAltGrCtrlAlt; RegistryName: SRegValue_AltGrCtrlAlt; OptionType: kotBool; BoolValue: False; GroupName: 'kogGeneral'), (opt: koRightModifierHK; RegistryName: SRegValue_AllowRightModifierHotKey; OptionType: kotBool; BoolValue: False; GroupName: 'kogGeneral'), (opt: koShowHints; RegistryName: SRegValue_EnableHints; OptionType: kotBool; BoolValue: True; GroupName: 'kogGeneral'), @@ -140,7 +139,6 @@ const KeymanOptionInfo: array[0..16] of TKeymanOptionInfo = ( // I3331 // I36 (opt: koReleaseShiftKeysAfterKeyPress; RegistryName: SRegValue_ReleaseShiftKeysAfterKeyPress; OptionType: kotBool; BoolValue: False; GroupName: 'kogOSK'), (opt: koAutoOpenOSK; RegistryName: SRegValue_AutoOpenOSK; OptionType: kotBool; BoolValue: True; GroupName: 'kogOSK'), - (opt: koAutoSwitchOSKPages; RegistryName: SRegValue_AutoSwitchOSKPages; OptionType: kotBool; BoolValue: True; GroupName: 'kogOSK'), // Startup options @@ -192,14 +190,6 @@ begin o.FEnabled := True; - if (KeymanOptionInfo[i].opt = koSwitchLanguageForAllApplications) and - not (GetOs in [osVista, osWin7]) then - begin - o.FEnabled := False; // I4271 - o.FBoolValue := False; // I4515 - o.FDefaultBoolValue := False; // I4515 - end; - o.FGroup := KeymanOptionInfo[i].GroupName; FOptions.Add(o); diff --git a/windows/src/global/delphi/general/KeymanOptionNames.pas b/windows/src/global/delphi/general/KeymanOptionNames.pas index c3cbe423c6..7c68d900c0 100644 --- a/windows/src/global/delphi/general/KeymanOptionNames.pas +++ b/windows/src/global/delphi/general/KeymanOptionNames.pas @@ -17,11 +17,9 @@ type koShowStartup, // Windows options koDebugging, - koSwitchLanguageForAllApplications, // I1089 koDeadkeyConversion, // I4552 // On Screen Keyboard Options koAutoOpenOSK, // I1288 - koAutoSwitchOSKPages, // I1375 koUseTouchLayout, koBaseLayout, koAutomaticallyReportErrors,