keymanapp / keyman

Keyman cross platform input methods system running on Android, iOS, Linux, macOS, Windows and mobile and desktop web
https://keyman.com/
Other
398 stars 112 forks source link

bug(web): auto-correct setting has no effect #12214

Open jahorton opened 3 months ago

jahorton commented 3 months ago

So we've always had this language-specific toggle, and I never saw a noticeable change in predictions. Can you confirm what the KeymanWeb API is for enabling/disabling?

corrections toggle

With enable corrections off, the engine shouldn't change any letters currently within the context. Granted, I haven't directly tested for that in a while... and upon deeper inspection, it doesn't seem to be affecting anything. So, yeah, that should be made into an issue and addressed.

https://github.com/keymanapp/keyman/blob/837667126b52839390ea8314e08ceb74cbc64ea2/web/src/engine/osk/src/visualKeyboard.ts#L932-L937

Note lines 935-937 there - that would have originally "turned off" fat-finger data when .mayCorrect is set to false. Looks like I never patched that up in 17.0 work.

Originally posted by @jahorton in https://github.com/keymanapp/keyman/issues/12203#issuecomment-2295597537

jahorton commented 3 months ago

The PR mentioned above will restore us to 16.0 behavior, but that still allows some correction to occur. We'd need to build a toggle of sorts into the worker that could prevent the correction-search process from building edges that perform corrections... or perhaps, just have it bypass the "correction" part entirely when mayCorrect == false. That will need a bit of design work, so we may have to put this off for a little while.

mcdurdin commented 2 months ago

I've rescheduled this for your return @jahorton