Commit graph

3486 commits

Author SHA1 Message Date
Marc Durdin
dc01449aa5
Merge pull request #3638 from keymanapp/fix/windows/3561-upgrading-disabled-keyboards
fix(windows): upgrading disabled keyboards
2020-10-05 13:46:27 +11:00
Marc Durdin
51d5feecc3
Merge pull request #3637 from keymanapp/fix/windows/3561-upgrading-transitional-profiles-2
fix(windows): Upgrading keyboards with transient profiles
2020-10-05 13:46:16 +11:00
Marc Durdin
41fb5296e4
Update windows/src/developer/kmcmpdll/Compiler.cpp
additional braces

Co-authored-by: Joshua Horton <joshua_horton@sil.org>
2020-10-05 13:07:39 +11:00
Marc Durdin
7f70c14b2a fix(windows): Cast HANDLE types using PtrToInt 2020-10-05 09:30:55 +11:00
Marc Durdin
0406cb1381 fix(windows): coverity reports for keyman32 2020-10-02 14:54:43 +10:00
Marc Durdin
50ad8335ef
Apply suggestions from code review
Co-authored-by: Joshua Horton <joshua_horton@sil.org>
2020-10-02 09:18:49 +10:00
Marc Durdin
f691946f1c fix(windows): coverity reports for kmtip 2020-09-30 17:20:36 +10:00
Marc Durdin
146dd0acc5 fix: coverity reports for mcompile 2020-09-30 14:53:47 +10:00
Marc Durdin
1df49317c9 fix(windows): coverity reports for mcompile 2020-09-30 14:50:22 +10:00
Marc Durdin
508441ebf4 fix(developer): coverity reports for compiler
Addresses Coverity reports for compiler.cpp and other files.

Note that whitespace was reformatted on this PR. You may want to compare
with ignore-whitespace.
2020-09-30 14:20:41 +10:00
Marc Durdin
dd4ac89468 fix(developer): coverity issues for compiler.cpp
CID 309307 through 309313, 309318, 309321, 309371, 309388.
2020-09-30 11:58:28 +10:00
Marc Durdin
ca103155bf
Merge pull request #3635 from keymanapp/fix/windows/3561-upgrading-transitional-profiles
fix(windows): upgrading transitional profiles
2020-09-29 20:47:41 +10:00
Marc Durdin
4654b5485a
Merge pull request #3634 from keymanapp/fix/windows/3633-invalid-pointer-firstrun
fix(windows): Buffer overrun in firstrun
2020-09-29 20:47:33 +10:00
Marc Durdin
827ea6c386 fix(windows): upgrading disabled keyboards
Fixes #3561.

Resolves issues with upgrading disabled keyboards, and fixes a secondary
issue where Windows was giving us invalid LANGIDs for locales, which was
causing trouble with transient LANGIDs.
2020-09-29 20:25:10 +10:00
Marc Durdin
7ad11ca9d2 fix(windows): Upgrading keyboards with transient profiles
Relates to #3561.

If a keyboard has languages installed under one of the four transient
language profiles, then we need to jump through some additional hoops to
upgrade it to the 14.0 model.

This does not yet handle all scenarios around installed but non-loaded
keyboards.
2020-09-29 14:25:57 +10:00
Marc Durdin
301a76c88a fix(windows): upgrading transitional profiles
Relates to #3561.

If a keyboard is installed for a transitional profile but another
keyboard is already installed for that profile, then Keyman would
crash, expecting the transitional profile to be missing.
2020-09-29 09:08:47 +10:00
Marc Durdin
daa65dcd2e fix(windows): Buffer overrun in firstrun
Fixes #3633.

Memory allocation was half its required size due to missing
`sizeof(Char)` calculation.

Also added extra tags to Sentry events for command line and executable,
which made tracing this issue so much easier.
2020-09-29 09:04:07 +10:00
Marc Durdin
b92ca211df
Merge pull request #3627 from keymanapp/feat/windows/1843-scrollable-keyboard-menu
feat(windows): scrollable keyboard menu
2020-09-28 15:31:53 +10:00
Marc Durdin
b7160f99fa
Merge pull request #3626 from keymanapp/feat/windows/1659-overflow-menu-for-vk-toolbar
feat(windows): overflow menu for osk toolbar
2020-09-28 15:31:44 +10:00
Marc Durdin
5f59ee08ec chore(windows): make disabled arrows lighter 2020-09-28 15:05:58 +10:00
Marc Durdin
e34478c173 feat(windows): scrollable keyboard menu
Fixes #1843.

If there are so many keyboards installed that the menu would grow larger
than 3/4 of the screen height, then the menu will become scrollable.
2020-09-28 12:17:00 +10:00
Marc Durdin
d56567735e feat(windows): overflow menu for osk toolbar
Fixes #1659.

If there are too many keyboards to fit in the OSK toolbar, the toolbar
will now show a dropdown menu button and excess keyboards will be
visible there.
2020-09-27 13:07:45 +10:00
Marc Durdin
636b350399
Merge pull request #3619 from keymanapp/fix/windows/3394-tsysinfo-hardcoded-urls
fix(windows): cleanup hardcoded urls in tsysinfo
2020-09-25 13:32:18 +10:00
Marc Durdin
f5c2daa946
Merge pull request #3618 from keymanapp/fix/developer/3394-project-and-about-hardcoded-urls
fix(developer): Project window and About window hardcoded urls
2020-09-25 11:41:30 +10:00
Marc Durdin
265aefbea0
Merge pull request #3613 from keymanapp/fix/developer/3394-debugger-hardcoded-urls
fix(developer): hardcoded urls in debugger
2020-09-25 11:41:21 +10:00
Marc Durdin
bfcad1e097
Merge pull request #3612 from keymanapp/fix/windows/3084-cleanup-bad-pointer-typecasts
fix(windows): cleanup pointer to int typecasts
2020-09-25 11:41:13 +10:00
Marc Durdin
4fe1b16b1d fix(windows): cleanup hardcoded urls in tsysinfo
Relates to #3394.

Cleans up remaining hardcoded URLs in TSysInfo. Note that UfrmAbout.dfm
is removed because it is not used.
2020-09-25 11:11:14 +10:00
Marc Durdin
d57bbbf20c fix(developer): missing dependencies 2020-09-25 11:10:25 +10:00
Marc Durdin
69709ea18b
Merge pull request #3610 from keymanapp/fix/windows/bootstrap-skip-install-failed-downloads
fix(windows): bootstrap should skip install of failed downloads
2020-09-25 10:13:30 +10:00
Marc Durdin
8a945c9c51
Merge pull request #3609 from keymanapp/fix/windows/bootstrap-package-install-specified-language-bugs
fix(windows): bootstrap package install specified language bugs
2020-09-25 10:13:22 +10:00
Marc Durdin
c365f1ffca
Merge pull request #3607 from keymanapp/fix/windows/3560-support-disabling-keyboards
fix(windows): add back support for disabling keyboards
2020-09-25 10:13:14 +10:00
Marc Durdin
8460b8ff6c fix(developer): Project window and About window hardcoded urls
Relates to #3394.

Fixes all remaining hardcoded URLs in the Project / Welcome and the
About window in Keyman Developer.
2020-09-25 09:54:27 +10:00
Marc Durdin
25085ddfb3 fix(developer): hardcoded urls in debugger
Part of #3394.

Fixes two hard-coded URLs in the web debugger.
2020-09-24 14:54:16 +10:00
Marc Durdin
d5790ca9b6 fix(windows): cleanup pointer to int typecasts
Fixes #3084.

This does two things:

1. Cleans up a bunch of places where we used to use `(int)` typecasts
   for pointer math, which was problematic. We now use `(INT_PTR)` per
   MSDN https://docs.microsoft.com/en-us/windows/win32/winprog64/rules-for-using-pointers
   and then cast that down to `(int)` where necessary, e.g. when storing
   string lengths which are never going to be more than a few hundred
   characters! Doing this explicitly helps to clarify that we are aware
   of the typecast and believe it to be safe.

2. Adds in some build infrastructure for future use of Coverity Scan
   https://scan.coverity.com/ which we plan to use for further code
   quality updates. I have submitted the project to Coverity and are
   now waiting for approval so we can check results. Once we have
   approval, I do plan to add this to the nightly build (we need to
   keep submissions under 3 builds/day).

   Note: I have not yet added Keyman Core (Windows) to this project,
   nor are we currently building Keyman Core (macOS) or Keyman for
   Linux, but we should consider adding those in future.
2020-09-24 14:39:59 +10:00
Marc Durdin
048b4d5de1 fix(windows): bootstrap should skip install of failed downloads 2020-09-24 07:34:20 +10:00
Marc Durdin
43415e1a4f fix(windows): bootstrap package install specified language bugs
If the user does not specify a language in the bootstrap install,
then the package would be installed without any language selection.

Also, the elevated portion was doing a register and install instead
of just register.
2020-09-24 07:26:45 +10:00
Marc Durdin
31fe63b496
Merge pull request #3602 from keymanapp/fix/windows/3461-download-dialog-external-links
fix(windows): external links should open externally
2020-09-24 06:08:47 +10:00
Marc Durdin
ffc0b21a46 chore(windows): cleanup comments 2020-09-23 17:47:08 +10:00
Marc Durdin
ded5ed94ad fix(windows): cleanup 2020-09-23 17:44:26 +10:00
Marc Durdin
be411392ea fix(windows): apply keyboards before installing TIP 2020-09-23 17:42:06 +10:00
Marc Durdin
8fc7421391 fix(windows): add back support for disabling keyboards
Fixes #3560. This reworks the functionality for disabling
keyboards to work with the new TIP registration pattern. Much
of the code is the same as in Keyman 13, but there are some
significant differences, so it all needs to be reviewed.
2020-09-23 17:37:08 +10:00
Marc Durdin
4fc7e15a9f
Merge pull request #3559 from keymanapp/fix/windows/simplify-profile-repair
fix(windows): simplify profile repair
2020-09-23 17:28:40 +10:00
Marc Durdin
c4d079731c chore: address review comments (whitespace) 2020-09-23 13:46:50 +10:00
Marc Durdin
f08fd6090d fix(windows): hint dialog was blank when elevated
Fixes #3110. The hint dialog must be launched unelevated. Refactors
the UCreateProcessAsShellUser unit into the TUtilExecute class.
2020-09-22 20:04:44 +10:00
Marc Durdin
6c546b10d4 fix(windows): external links should open externally
Fixes #3461.
2020-09-22 13:58:53 +10:00
Marc Durdin
f1b63cc95b
Merge pull request #3558 from keymanapp/fix/windows/language-name
fix(windows): lookup language name on create
2020-09-21 15:32:34 +10:00
Marc Durdin
e1be8d1ca2 chore(windows): Merge branch 'master' into feat/windows/improve-keyboard-language-dialog 2020-09-21 14:25:06 +10:00
Marc Durdin
27a40128e4 fix(windows): remove obsolete releaseCapture calls
Fixes #3361. Remove obsolete releaseCapture calls from Keyman Config.
2020-09-18 10:20:14 +10:00
Marc Durdin
6d0c3ff318
Merge pull request #3585 from keymanapp/fix/developer/3487-font-size-string
fix(developer): Touch font size should be string
2020-09-18 06:08:54 +10:00
Marc Durdin
4ec4d5081f
Merge pull request #3586 from keymanapp/fix/windows/signtime-replacement
fix(windows): use new signtime.bat on build agents
2020-09-18 06:08:23 +10:00