Problem
On iOS, importing a .lime table that does not include @cname@ / %cname metadata can report success, but the installed IM list shows no installed input method afterward. In the IM catalog, the same IM/table still appears as installed.
Observed behavior
- User imports a
.lime file without cname metadata.
- Import completes successfully.
- The IM manager / installed IM list shows no installed IM.
- The IM catalog still marks the imported IM/table as installed.
Expected behavior
After a successful .lime import, iOS should register and display the imported IM in the installed IM list even when cname metadata is missing. If cname is absent, the app should use a safe fallback display name such as version metadata, file name, table name, or a localized custom-table name.
Suggested investigation
- Check the iOS
.lime import path for text files in SetupImController.importTxtFile(...) and LimeDB.importTxtFile(...).
- Verify whether successful text import writes mapping rows but does not create/update the corresponding
im table row when cname is absent.
- Compare installed-list source (
ManageImController.loadIMList() / DBServer.getAllImConfigs()) with IM catalog installed detection (IMDownloadManager.refreshInstalledTables() / tableHasData(...)).
- Confirm whether
keyboard_state / active IM state is rebuilt after text import.
Verification plan
- Import a
.lime file without @cname@ / %cname metadata.
- Confirm the imported table appears in the installed IM list with a fallback name.
- Confirm the IM catalog installed state and installed IM list agree.
- Confirm the imported IM can be enabled/disabled and used by the keyboard.
Problem
On iOS, importing a
.limetable that does not include@cname@/%cnamemetadata can report success, but the installed IM list shows no installed input method afterward. In the IM catalog, the same IM/table still appears as installed.Observed behavior
.limefile without cname metadata.Expected behavior
After a successful
.limeimport, iOS should register and display the imported IM in the installed IM list even when cname metadata is missing. If cname is absent, the app should use a safe fallback display name such as version metadata, file name, table name, or a localized custom-table name.Suggested investigation
.limeimport path for text files inSetupImController.importTxtFile(...)andLimeDB.importTxtFile(...).imtable row when cname is absent.ManageImController.loadIMList()/DBServer.getAllImConfigs()) with IM catalog installed detection (IMDownloadManager.refreshInstalledTables()/tableHasData(...)).keyboard_state/ active IM state is rebuilt after text import.Verification plan
.limefile without@cname@/%cnamemetadata.