feat(windows): add ARM support to firstvoices wxs 🦾
Fixes: #15260
User Testing
TEST_INSTALLATION_BASIC
Installation verify FirstVoices installs and do a basic check to see it has installed correctly. For example
- Open Configuration - no issues
- Open notepad and use a keyboard
On existing Windows x86-x64 archeticture Basic Test On any Windows 10 or 11 32bit or the 64bit
TEST_MULTIPLE_EDITORS_NON_COMPLIANT
In install on a Windows 11 on Arm machine
Use the attached 32bit, 64 bit, and Arm editor.These editor is non-compliant
Select a FirstVoices Keyboard
Type a sequence that should work
Do this for each architecture version ot the text editor.
Continue to TEST_MULTIPLE_EDITORS_COMPLIANT
TEST_MULTIPLE_EDITORS_COMPLIANT
If you haven't already install Windows 11 on Arm machine Now open compliant apps to check on Windows 11 this can be Notepad for Windows 11
Build failed:
02:46:26Â C:\BuildAgent\work\7ac43416c45637e9\keyman\oem\firstvoices\windows\src\inst\firstvoices.wxs(187) : error LGHT0094 : Unresolved reference to symbol 'Property:WIX_NATIVE_MACHINE' in section 'Product:*'. 02:46:26Â [oem/firstvoices/windows/src/inst] ## publish failed
my bad left out the -ext WixUtilExtension flag on the light command in build.sh
Test Results
Testing this PR in the "Keyman-19.0.164-alpha-test-15268" build on Windows 11 arm and focusing on the part installation keyman/downloading keyboard.
- TEST_INSTALLATION_BASIC (failed):
- Installation on Windows 11 arm fails if there is already another version (e.g. Keyman-19.0.164-alpha-test-15181 or Keyman-19.0.173-alpha) being installed. The already installed version is overwritten either when using the
Install optionsand explicitely selecting the desired version. Moreover if there is already a Keyman Configuration open with e.g. Keyman-19.0.164-alpha-test-15181 a try to install Keyman-19.0.164-alpha-test-15268 causes the Keyman Configuration window can no longer be closed other than by TaskManager. i.e. switching betweenKeyboard Layouts,Optionsetc. is still possible butExitbutton or the crossXdoes not close the window. - Installation from scratch (without any Keyman version yet installed) - no issue
- usingInstallation was done with user having administration rights as well as with user without administration rights (where latter requires switch to administration user during installation) - no issues
- Installation firstvoices-19.0.164-alpha-test-15268 - no issues
- Enabling EuroLatin en-DE from FirstVoices and using it with newly started Notepad:
^+e-->ê`+e-->è´ +e-->´efails (in later tests for some unknown reason the sequence lead to expectedé - Closing Notepad and Download and install IPA and opening Notepad and selecting IPA -->
then any further typing is prevented in Notepad which needs to be closed
- Opening Notepad again and selecting IPA: s + = --> s= (failed)
- TEST_MULTIPLE_EDITORS_NON_COMPLIANT (passed):
- editor32 using FirstVoice EuroLatin en-DE: - ê, é and è as expected --> no issues
- editor32 using FirstVoice EuroLatin en-US: - neither ê, é nor è as expected --> failed
- editor32 using IPA: neither f= nor s= as expected --> failed
- editor64 using FirstVoice EuroLatin en-DE: - ê, é and è as expected --> no issues
- editor64 using FirstVoice EuroLatin en-US: - neither ê, é nor è as expected --> failed
- editor64 using IPA: neither f= nor s= as expected --> failed
- editorarm64 using FirstVoice EuroLatin en-DE: - ê, é and è as expected --> no issues
- editorarm64 using FirstVoice EuroLatin en-US: - neither ê, é nor è as expected --> failed
- editorarm64 using IPA: neither f= nor s= as expected --> failed Remark: with FirstVoice EuroLatin en-DE typing ^ or ´ or ` is not displayed and will only be contracted with following e.
-
TEST_MULTIPLE_EDITORS_COMPLIANT (failed):
With Notepad and editpad (with Firefox) same behaviour as with non-compliant editors. However using FirstVoice EuroLatin en-DE and temporarily switching to another app before typing
eleads to ê, é and è respectively.
This PR has uncovered a larger problem with the Firstvoices Windows installer on the stable and master branch and will be addressed with this issue #15359.
This PR can still be merged as the code change will still be needed.
Due to the fact the issues are present on the main branch we will do a test skip for this small code change. Test-bot: skip