Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Migrate code to Swift #898

Merged
merged 76 commits into from
May 24, 2024
Merged

Migrate code to Swift #898

merged 76 commits into from
May 24, 2024

Conversation

LEOYoon-Tsaw
Copy link
Member

@LEOYoon-Tsaw LEOYoon-Tsaw commented May 19, 2024

  • Migrated code base to pure Swift, no more Obj-C (except for a bridging head), no more xib
    • Only 2400 lines of Swift code after migration
  • No major feature change is expected, if any, leave an issue
  • Limited updates:
    • Disabled Sandbox, as it complicates users syncing file
    • Added a menu item for logs folder
    • updated candidate_format to [index]. [candidate] [comment] for flexibility and better readability
    • updated squirrel.yaml version to 1.0 and added new options that are recently added
      • horizontal: true/false is further deprecated, users should not use it anymore
    • labels will vertically center if label font is smaller than candidate font, better matches macOS builtin IME
  • Improvements:
    • Fixed a bug that when using non-inline preedit, the first candidate may have too large a space above it in linear layout
    • Address include plugins & organize linked frameworks #853 by dynamically add plugins to xcodeproj
    • --enable-input-source, --disable-input-source and --select-input-source may take extra args to specify a method
    • Adopts Sparkle EdDSA

@LEOYoon-Tsaw LEOYoon-Tsaw requested a review from lotem May 19, 2024 15:08
@lotem
Copy link
Member

lotem commented May 19, 2024

I don't get how the sandbox benefits. It seems only harder to locate files.

@LEOYoon-Tsaw
Copy link
Member Author

LEOYoon-Tsaw commented May 19, 2024

I don't get how the sandbox benefits. It seems only harder to locate files.

It restricts unintentional changes to files. There's lua, it's possible that a user accidentally delete files by misusing lua script.

It also gives users confidence, that Squirrel will not touch anything else than clearly stated in entitlement. Users don't have to trust us not being evil.

But it makes "sync user data" almost impossible without a UI overhaul. So will have to leave it for future reconsideration

@LEOYoon-Tsaw LEOYoon-Tsaw self-assigned this May 19, 2024
Add Latn to tsInputModeCharacterRepertoireKey
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
3 participants