Both the win32 and the win64 keyman engine libraries would receive a
refresh notification, and then they'd both broadcast the change. This
change limits the broadcast responsibility to the 32-bit engine.
Fixes#3518.
Changes in Keyman Configuration will now apply immediately. This removes
the OK and Cancel buttons from the dialog and means that all actions
are consistent in when they are applied, unlike previously. This also
matches the Windows 10 Settings metaphor and metaphors for most modern
apps and devices.
For now, I have placed a message where the OK and Buttons were
previously, to help existing users understand the change. In time, I
expect us to be able to remove that message entirely.
These two tiny apps automate enabling/disabling TSF integration for
Chrome and Firefox. They are support apps, manually built, signed and
uploaded to downloads.keyman.com. Hopefully one day they will disappear!
This app uses the new `TKeymanSettings` class to present a standardised
interface for all Keyman settings -- debug, development and
compatibility. This is a console app, intended for use in a variety of
scenarios, including development tools, in the future.
Settings can be set, exported/imported to/from json, reset, shown.
Important in this PR is establishing the command line parameter
consistency and usage into the future.
This moves the Keyman Settings Manager into global and prepares for use
with kmshell and a new console app kmconfig; these changes will be in
separate PRs.
Note: this PR still does not include the other standard Keyman options
which can be configured via the normal Keyman Configuration Options
dialog. I don't anticipate adding these standard options in Keyman 14;
perhaps in 15.0.
Introduces a new app that lists all available
debug settings in Keyman Desktop and Developer
with a single unified UI to manage them. This
comes because I (as lead dev) am always forgetting
what the various keys and values are and need a
better way to manage them.
For now, this is alpha-quality and I do not intend
to deploy it with 13.0
Fixes#3690.
This applies an 'Installing Keyman' label during the install. While
Windows Installer does supply some status messages, at present we are
not using those. Also fixed a missing i18n string.
Fixes#3694.
The keyboard menu would sometimes scroll too far, which could be
confusing for the end user. This fix stops the scroll once the last
item is in view; it also tweaks the down arrow key handler to ensure
that the current item is correctly scrolled into view.
When loading transient language profiles, RefreshKeyboards would reset
the list of profiles (and in so doing, also leak memory). Instead, the
list should be cleared before the initial language profile list load.
Fixes#3679.
If keyman.exe is running with a non-elevated token, then it would fail
to launch kmshell.exe non-elevated. This is a regression from the work
in #3604.
Fixes#3680.
Note that because the installer version may differ from the Keyman
version that will actually be installed, the installer version number is
a bit hidden away in the Options dialog, to try and reduce potential for
confusion.
For example, if a user already has the installer downloaded, but a new
version of Keyman is available, then by default the installer will try
and download the new version rather than install the current version.
While it might be nice to add the tag to versions in filenames, this
creates a lot of work on the website where we make some filename
assumptions. So, this PR winds that detail of filename changes back,
and renames copydev.in to download.in to make it consistent with the
other download.in files.