Commit graph

111 commits

Author SHA1 Message Date
Shawn Schantz
057b79d4f9
Merge pull request #16567 from keymanapp/fix/mac/16489-migrate-first
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
fix(mac): do data migration before installation completion 🍎
2026-09-16 08:06:04 -04:00
Shawn Schantz
c9998a587b
Merge pull request #16554 from keymanapp/fix/mac/16442-repair-change
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
feat(mac): do not kill Keyman.app during config app startup 🍎
2026-09-15 21:59:03 -04:00
Shawn Schantz
31d0765e2e feat(mac): comment updated 2026-09-15 21:49:21 -04:00
Shawn Schantz
88fdaeff6d feat(mac): minor changes after review 2026-09-15 16:35:47 -04:00
Shawn Schantz
fedff1b172
Merge branch 'fix/mac/16442-repair-change' into fix/mac/16489-migrate-first
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-09-14 18:35:14 -04:00
Shawn Schantz
0e9fd0913d feat(mac): do data migration before installation completion
Fixes: #16489
2026-09-14 15:02:35 -04:00
Shawn Schantz
f09aa66e75
Merge branch 'feat/mac/kmp-inf' into fix/mac/16442-repair-change 2026-09-14 10:13:54 -04:00
Shawn Schantz
01c126780d feat(mac) do not kill Keyman app to manage accessibility permission
instead, if keyman input method is running, then
request or query access using notifications

also change text that prompts user to restart
restart should not be necessary in any normal
use case, as it happens at install time
2026-09-14 09:53:37 -04:00
Shawn Schantz
74cee6f064 Merge branch 'feat/mac/kmp-inf' of https://github.com/keymanapp/keyman into feat/mac/kmp-inf
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-09-11 16:13:42 -04:00
Shawn Schantz
6307410a8e feat(mac): fixed unit tests 2026-09-11 16:12:45 -04:00
Shawn Schantz
8b9c78d45a
Merge branch 'epic/mac-config' into feat/mac/kmp-inf
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-09-11 13:58:44 -04:00
Shawn Schantz
bae4480530 feat(mac): removed commented-out code 2026-09-11 13:47:02 -04:00
Shawn Schantz
c0c5c84329 feat(mac): more fixes based on re-review 2026-09-11 13:40:47 -04:00
Shawn Schantz
7906533806 feat(mac): update for review comments
get graphic file name from correct location
improved handling of parse error
bounds check for value array on website url
2026-09-11 13:31:48 -04:00
Shawn Schantz
2d1048139c feat(mac): do not kill Keyman.app to check accessibility
at startup -- instead use notifications when
app is running

only force a restart of the input method if we
need accessibility state during the setup flow

Fixes: #16442
2026-09-10 22:49:45 -04:00
Shawn Schantz
be97f1e046
Merge pull request #16514 from keymanapp/feat/mac/localize
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
feat(mac): localization support for Keyman config app 🍎
2026-09-10 13:53:49 -04:00
Shawn Schantz
51992b96f0 feat(mac): minscule formatting change
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-09-10 12:33:28 -04:00
Shawn Schantz
78e3008a6b feat(mac): implemented parser from scratch instead of
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
basing on Objective C code

added default for readMe and Help files
added validation for required fields
2026-09-10 12:18:59 -04:00
Shawn Schantz
2d4a1d8683 feat(mac): conver KMPackageReader to swift 2026-09-04 15:14:02 -04:00
Shawn Schantz
b19c85350e feat(mac): remove logging of legacy paths 2026-09-03 10:50:36 -04:00
Shawn Schantz
dc3c1bce95 feat(mac): minor text change and filename change 2026-09-03 09:24:47 -04:00
Shawn Schantz
ab30341f59 feat(mac): localization support
added localizable types where necessary
created Localizable.xcstrings for both the
config app and the Keyman settings package
2026-09-02 22:05:53 -04:00
Shawn Schantz
7d622997cb feat(mac): ensure that home directory is not written to logs
also replace references to URL.path with
URL.path(percentEncoded: false) because FileManager
operation do not expect percent encoding
2026-09-02 15:36:19 -04:00
Shawn Schantz
af6806666a feat(mac): added Sentry logging
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-09-01 22:37:51 -04:00
Shawn Schantz
5250a84c04 feat(mac): replaced print statements with OSLog calls 2026-09-01 10:38:18 -04:00
Shawn Schantz
92682b4f3d feat(mac): add back version parameter to install keyboard query
remove obsolete keyman link URL check
2026-08-31 13:28:08 -04:00
Shawn Schantz
daa60ef295 feat(mac): add all Keyman environment variables
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
pass language with keyboard search URL

Fixes: #15541
2026-08-29 21:05:36 -04:00
Shawn Schantz
155c2da5ec feat(mac): handle package downloads with standard URL
invoke download directly with url
change build to pass tier into info.plist of
configuration app so that it can be added to URL
2026-08-28 08:13:53 -04:00
Shawn Schantz
fa24b00e7a feat(mac): reload packages after migrate
moved InputMethodUtil to Settings
2026-08-25 20:47:22 -04:00
Shawn Schantz
f006f0512d feat(mac): remove dependence on name of .kmp file
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
promote delete package code to main view to avoid
race condition
2026-08-25 09:25:49 -04:00
Shawn Schantz
dd049266ce feat(mac): comment revision 2026-08-24 20:29:48 -04:00
Shawn Schantz
bb2613314b feat(mac): improve font installation error handling
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
revise comments
2026-08-24 19:57:30 -04:00
Shawn Schantz
95ae54ed23 feat(mac): added font validation and installation
wait to unzip package before determining installation
directory because the package name must be used
for the final installation directory name
2026-08-24 16:32:22 -04:00
Shawn Schantz
7c5bc212ab feat(mac): added internalError for debugging
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
removed packageNotFound installationType
2026-08-22 18:54:47 -04:00
Shawn Schantz
69b43443cc feat(mac): added progress indicator for downloads
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-08-21 21:48:58 -04:00
Shawn Schantz
3064a3d3ef feat(mac): added error handling for failed downloads 2026-08-21 19:07:17 -04:00
Shawn Schantz
a58f6f9ffc feat(mac): strip obsolete code
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-08-21 15:21:17 -04:00
Shawn Schantz
6b92bd8c94 feat(mac): renaming for clarity 2026-08-21 14:52:14 -04:00
Shawn Schantz
751dc0bfae feat(mac): package download and drag and drop use common code
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
for installation and confirmation UI

added DownloadCoordinator to link webview to
SwiftUI views
2026-08-21 09:29:45 -04:00
Shawn Schantz
504e8678ac feat(mac): classified four different package installation types
new package
package replacement (version matches)
package upgrade
package downgrade
2026-08-20 20:41:25 -04:00
Shawn Schantz
38e3c4534c
Merge branch 'feat/mac/config-ui' into feat/mac/drag-kmp
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
2026-08-20 15:27:39 -04:00
Shawn Schantz
4b6d52a00b feat(mac): replaced scaled multiple images with pdfs
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
added 1024 x 1024 app icon
replaced Apple's installer icon with symbol
2026-08-20 14:56:46 -04:00
Shawn Schantz
52d41e7932 feat(mac): used shared webview for help and readme
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
added default and min size for config view
2026-08-19 22:02:23 -04:00
Shawn Schantz
f194a15c7b feat(mac): enforce minimum keyman version for package
Some checks failed
Keyman Build Summary / Summarize build status checks (push) Has been cancelled
2026-08-18 17:36:20 -04:00
Shawn Schantz
a18c740d8a rename PackageDownload to PackageInstallHelper
Some checks are pending
Keyman Build Summary / Summarize build status checks (push) Waiting to run
modifying the class to handle not just installation
of packages being downloaded but also installation
due to drag and drop or opening a .kmp from the
file menu

also added boolean to distinguish a download and
install operation because that is the only case
where we delete the original .kmp file that was
downloaded to the temp directory
2026-08-18 09:43:32 -04:00
Shawn Schantz
e7c35394ce feat(mac): added function to clean up package on failed drop install 2026-08-15 18:00:23 -04:00
Shawn Schantz
6a996aefd4 feat(mac): handled drag and drop errors
display alert when drag and drop fails
handle installation errors
clean up un-installable .kmp files
2026-08-15 18:00:23 -04:00
Shawn Schantz
652c6f75c7 feat(mac): drag and drop .kmp with debug window 2026-08-15 17:56:29 -04:00
Shawn Schantz
8276645c2f feat(mac): added function to clean up package on failed drop install 2026-08-15 17:46:35 -04:00
Shawn Schantz
d9705067d8 feat(mac): handled drag and drop errors
display alert when drag and drop fails
handle installation errors
clean up un-installable .kmp files
2026-08-15 17:46:35 -04:00