abouttreesummaryrefslogcommitdiff
diff options
context:
space:
mode:
-rw-r--r--build.gradle12
-rw-r--r--srcs/juloo.keyboard2/LayoutsPreference.java18
2 files changed, 28 insertions, 2 deletions
diff --git a/build.gradle b/build.gradle
index 57beb80..1fe3cf2 100644
--- a/build.gradle
+++ b/build.gradle
@@ -18,7 +18,7 @@ android {
main {
manifest.srcFile 'AndroidManifest.xml'
java.srcDirs = ['srcs']
- res.srcDirs = ['res']
+ res.srcDirs = ['res', 'build/generated-resources']
assets.srcDirs = ['assets']
}
}
@@ -134,6 +134,7 @@ tasks.register('syncTranslations') {
tasks.named("preBuild") {
dependsOn += "initDebugKeystore"
+ dependsOn += "copyRawQwertyUS"
}
tasks.register('initDebugKeystore') {
@@ -145,3 +146,12 @@ tasks.register('initDebugKeystore') {
}
}
}
+
+// latn_qwerty_us is used as a raw resource by the custom layout option.
+tasks.register('copyRawQwertyUS')
+{
+ copy {
+ from "res/xml/latn_qwerty_us.xml"
+ into "build/generated-resources/raw"
+ }
+}
diff --git a/srcs/juloo.keyboard2/LayoutsPreference.java b/srcs/juloo.keyboard2/LayoutsPreference.java
index 313b46f..a9405e6 100644
--- a/srcs/juloo.keyboard2/LayoutsPreference.java
+++ b/srcs/juloo.keyboard2/LayoutsPreference.java
@@ -151,7 +151,7 @@ public class LayoutsPreference extends ListGroupPreference<LayoutsPreference.Lay
callback.select(new SystemLayout());
break;
case "custom":
- select_custom(callback, "");
+ select_custom(callback, read_initial_custom_layout());
break;
default:
callback.select(new NamedLayout(name));
@@ -203,6 +203,22 @@ public class LayoutsPreference extends ListGroupPreference<LayoutsPreference.Lay
select(callback);
}
+ /** The initial text for the custom layout entry box. The qwerty_us layout is
+ a good default and contains a bit of documentation. */
+ String read_initial_custom_layout()
+ {
+ try
+ {
+ Resources res = getContext().getResources();
+ byte[] raw = res.openRawResource(R.raw.latn_qwerty_us).readAllBytes();
+ return new String(raw, "UTF-8");
+ }
+ catch (Exception _e)
+ {
+ return "";
+ }
+ }
+
class LayoutsAddButton extends AddButton
{
public LayoutsAddButton(Context ctx)