From 43f5dd555b3fe6078b09bff9bc749bc3d8947f30 Mon Sep 17 00:00:00 2001 From: Helium314 Date: Thu, 6 Mar 2025 05:16:26 +0100 Subject: [PATCH] remove the / at the end of layout folders because apparently android 7 asset manager does not understand it fixes #1393 --- .../main/java/helium314/keyboard/latin/utils/LayoutType.kt | 2 +- .../main/java/helium314/keyboard/latin/utils/LayoutUtils.kt | 5 +++-- .../java/helium314/keyboard/latin/utils/LayoutUtilsCustom.kt | 2 +- 3 files changed, 5 insertions(+), 4 deletions(-) diff --git a/app/src/main/java/helium314/keyboard/latin/utils/LayoutType.kt b/app/src/main/java/helium314/keyboard/latin/utils/LayoutType.kt index 4aec8d22..412bb158 100644 --- a/app/src/main/java/helium314/keyboard/latin/utils/LayoutType.kt +++ b/app/src/main/java/helium314/keyboard/latin/utils/LayoutType.kt @@ -22,7 +22,7 @@ enum class LayoutType { return map } - val LayoutType.folder get() = "layouts${File.separator}${name.lowercase()}${File.separator}" + val LayoutType.folder get() = "layouts${File.separator}${name.lowercase()}" val LayoutType.displayNameId get() = when (this) { MAIN -> R.string.subtype_no_language diff --git a/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtils.kt b/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtils.kt index 8d575b8c..56afe9ce 100644 --- a/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtils.kt +++ b/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtils.kt @@ -5,6 +5,7 @@ import helium314.keyboard.latin.R import helium314.keyboard.latin.settings.Defaults.default import helium314.keyboard.latin.utils.LayoutType.Companion.folder import helium314.keyboard.latin.utils.ScriptUtils.script +import java.io.File import java.util.Locale // for layouts provided by the app @@ -28,8 +29,8 @@ object LayoutUtils { fun getContent(layoutType: LayoutType, layoutName: String, context: Context): String { val layouts = context.assets.list(layoutType.folder)!! layouts.firstOrNull { it.startsWith("$layoutName.") } - ?.let { return context.assets.open(layoutType.folder + it).reader().readText() } + ?.let { return context.assets.open(layoutType.folder + File.separator + it).reader().readText() } val fallback = layouts.first { it.startsWith(layoutType.default) } // must exist! - return context.assets.open(layoutType.folder + fallback).reader().readText() + return context.assets.open(layoutType.folder + File.separator + fallback).reader().readText() } } diff --git a/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtilsCustom.kt b/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtilsCustom.kt index 224ebf71..bc40baed 100644 --- a/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtilsCustom.kt +++ b/app/src/main/java/helium314/keyboard/latin/utils/LayoutUtilsCustom.kt @@ -138,7 +138,7 @@ object LayoutUtilsCustom { fun isCustomLayout(layoutName: String) = layoutName.startsWith(CUSTOM_LAYOUT_PREFIX) fun getLayoutFile(layoutName: String, layoutType: LayoutType, context: Context): File { - val file = File(DeviceProtectedUtils.getFilesDir(context), layoutType.folder + layoutName) + val file = File(DeviceProtectedUtils.getFilesDir(context), layoutType.folder + File.separator + layoutName) file.parentFile?.mkdirs() return file }