abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/LayoutsPreference.java
diff options
context:
space:
mode:
authorJules Aguillon2023-12-17 11:56:17 +0100
committerJules Aguillon2023-12-17 11:58:41 +0100
commit7af6adcf1132a85bd21339b97fd5fa9c2a731b94 (patch)
treebf03c173aa63d19156b72d38615b5b2990389fb1 /srcs/juloo.keyboard2/LayoutsPreference.java
parentdd327cc812ccf7c37187294771b011af402b7189 (diff)
downloadunexpected-keyboard-7af6adcf1132a85bd21339b97fd5fa9c2a731b94.tar.gz
unexpected-keyboard-7af6adcf1132a85bd21339b97fd5fa9c2a731b94.zip
prefs: Report errors while editing custom layouts
Errors are obtained by running the parser, validation is throttle to when the user stops editing for a second.
Diffstat (limited to 'srcs/juloo.keyboard2/LayoutsPreference.java')
-rw-r--r--srcs/juloo.keyboard2/LayoutsPreference.java13
1 files changed, 13 insertions, 0 deletions
diff --git a/srcs/juloo.keyboard2/LayoutsPreference.java b/srcs/juloo.keyboard2/LayoutsPreference.java
index f96af80..313b46f 100644
--- a/srcs/juloo.keyboard2/LayoutsPreference.java
+++ b/srcs/juloo.keyboard2/LayoutsPreference.java
@@ -177,6 +177,19 @@ public class LayoutsPreference extends ListGroupPreference<LayoutsPreference.Lay
else
callback.select(new CustomLayout(text));
}
+
+ public String validate(String text)
+ {
+ try
+ {
+ KeyboardData.load_string_exn(text);
+ return null; // Validation passed
+ }
+ catch (Exception e)
+ {
+ return e.getMessage();
+ }
+ }
});
}