This was an evening activity scratching itches on kmdevlink's 'Open
Issue' dialog. The search box now supports three different types of
strings:
1. `[[repo]#]num` -> open issue/PR #num in repo (if repo omitted, will
use 'keyman'):
* `13235` or `#13235` or `keyman#13235` -> opens PR #13235
* `keyman.com#545` -> opens PR keymanapp/keyman.com#545
* `api#172` -> opens PR keymanapp/api.keyman.com#172
2. `[[repo]#]searchtext` -> any non-numeric string does an issue search:
* `label:ios/ font` -> opens an issue search for 'ios/' label and
'font' in keymanapp/keyman repo
* `api#db` -> opens an issue search for 'db' in
keymanapp/api.keyman.com repo
3. `[[repo]#]` -> opens issue list for repo (keymanapp/keyman if repo is
omitted, or empty box)
A second feature is construction of a HTML snippet of our usual
short-form links to issues/PRs for Google Docs. Note that this dialog
does not check if the target is an issue or PR, it just builds a link to
the issue URL and lets GitHub redirect to PR. To use this, just type the
`[[repo]#]num` format into the search field and click the Copy button.
# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
# Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
# Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
# Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
# Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
# Keyman Conventional Commit suggestions:
#
# - Link to a Sentry issue with git trailer:
# Fixes: _MODULE_-_ID_
# - Give credit to co-authors:
# Co-authored-by: _Name_ <_email_>
# - Use imperative, present tense ('attach' not 'attaches', 'attached' etc)
# - Don't include a period at the end of the title
# - Always include a blank line before trailers
# - More: https://github.com/keymanapp/keyman/wiki/Pull-Request-and-Commit-workflow-notes
In the case when a Keyboard was available for update but the
keyman version wasn't the state machine correctly didn't try to install
it. However the back ground download loop would try to download and
empty Params.InstallURL. This commit now checks the Params.Status.
This commit also removes the dead code for TDownloadUpdateParams record
type. This code is left over from a progress ui callback. It was
initially left for when UI callback maybe added back in. However, it
is currently confusing deadcode so has been removed.
Fixes: #13153
Using the KeymanMutex wrapper to check if a download process is occuring
if it isn't and we are in the downloading state this means the download
process exited early. We can then clean up any downloaded files and
reset the statemachine and check for updates again.
Check updates meaning has slightly changed it is now automatic updates
and it will now check, download and when possible start the install.
Previously it just meant a check for upates was made and notified
the user of updates.
Fixes:#13114