keymanapp / keyman

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

[iOS] Keyboard update doesn't update font with unchanged name #503

Closed gabrielwong closed 4 years ago

gabrielwong commented 6 years ago

When updating a keyboard, the font file is not updated if the file name of the font is unchanged between the two versions. KeymanEngine attempts a download of the new font file but does not overwrite the existing font file.

tombogle commented 6 years ago

Anyone know of a good example of this for testing purposes?

jahorton commented 5 years ago

Old note in other channels from June 22, 2018:

@mcdurdin I'm kind of stuck on this. I can't figure out how to get a testing scenario. I tried creating my own test keyboard with a font in it, but when I try to install it, Keyman for i)S doesn't find any keyboards in it. Then I figured out (I think) that I needed to include iOS as a target and add a touch layout. I did that and I can see that the files got included in the KMP, but Keyman still finds no keyboards. I tried to test it on-line, and I think the kleyboard is there, but it doesn't display correctly, so maybe I've messed something up.

Then I thought maybe I could take one of the "standard" keyboards as checked into the repo, and just add a font locally or build it and then swap out the font for a different one with the same name. But I can't find any of the keyboards in the repo that target iOS, even though they quite obviously show up in the online keyboard search from within iOS. So then I'm wondering if I'm looking at the right source or what? I also searched the repo for *.keyman-touch-layout and found nothing.

When I try to install my test kmp file, it fails the keyboard.isValid check. I just tried https://downloads.keyman.com/keyboards/gff_amh_7/1.4/, but that pops up an error saying Invalid Keyman Package.

MattGyverLee commented 4 years ago

@jahorton my keyboard compiles, targets iOS, and has a display font (Andika Africa). https://keyman.com/keyboards/sil_cameroon_qwerty Maybe you could try replacing my font in a new branch to test this.

jahorton commented 4 years ago

Now that installations are package-based, same-name fonts are overwritten on installs and updates. (See #3341 and #3372.)