From fcc75ec00e4cf84e72cdefecb8bbafcef669fc0e Mon Sep 17 00:00:00 2001 From: Darcy Wong Date: Fri, 25 Feb 2022 11:18:07 +0700 Subject: [PATCH] fix(android/engine): Clear WebView cache on package install --- .../java/com/tavultesoft/kmapro/PackageActivity.java | 2 ++ .../src/main/java/com/tavultesoft/kmea/KMManager.java | 11 +++++++++++ 2 files changed, 13 insertions(+) diff --git a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java index 1ae612a93a..34413e7868 100644 --- a/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java +++ b/android/KMAPro/kMAPro/src/main/java/com/tavultesoft/kmapro/PackageActivity.java @@ -282,6 +282,8 @@ public class PackageActivity extends AppCompatActivity implements notifyPackageInstallListeners(KeyboardEventHandler.EventType.PACKAGE_INSTALLED, installedPackageKeyboards, 1); } + KMManager.clearKeyboardCache(); + if(_cleanup) cleanup(); } else { diff --git a/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMManager.java b/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMManager.java index d27860ed57..70f1f42c14 100644 --- a/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMManager.java +++ b/android/KMEA/app/src/main/java/com/tavultesoft/kmea/KMManager.java @@ -1579,6 +1579,17 @@ public final class KMManager { registerAssociatedLexicalModel(kbInfo.getLanguageID()); } + public static void clearKeyboardCache() { + if (InAppKeyboard != null && InAppKeyboardLoaded) { + InAppKeyboard.clearCache(true); + InAppKeyboard.loadKeyboard(); + } + if (SystemKeyboard != null && SystemKeyboardLoaded) { + SystemKeyboard.clearCache(true); + SystemKeyboard.loadKeyboard(); + } + } + protected static IBinder getToken() { if (IMService == null) { return null;