abouttreesummaryrefslogcommitdiff
path: root/srcs/juloo.keyboard2/Utils.java
diff options
context:
space:
mode:
Diffstat (limited to 'srcs/juloo.keyboard2/Utils.java')
-rw-r--r--srcs/juloo.keyboard2/Utils.java30
1 files changed, 30 insertions, 0 deletions
diff --git a/srcs/juloo.keyboard2/Utils.java b/srcs/juloo.keyboard2/Utils.java
new file mode 100644
index 0000000..cd28dfa
--- /dev/null
+++ b/srcs/juloo.keyboard2/Utils.java
@@ -0,0 +1,30 @@
+package juloo.keyboard2;
+
+import android.app.AlertDialog;
+import android.os.IBinder;
+import android.view.Window;
+import android.view.WindowManager;
+
+class Utils
+{
+ /** Turn the first letter of a string uppercase. */
+ public static String capitalize_string(String s)
+ {
+ // Make sure not to cut a code point in half
+ int i = s.offsetByCodePoints(0, 1);
+ return s.substring(0, i).toUpperCase() + s.substring(i);
+ }
+
+ /** Like [dialog.show()] but properly configure layout params when called
+ from an IME. [token] is the input view's [getWindowToken()]. */
+ public static void show_dialog_on_ime(AlertDialog dialog, IBinder token)
+ {
+ Window win = dialog.getWindow();
+ WindowManager.LayoutParams lp = win.getAttributes();
+ lp.token = token;
+ lp.type = WindowManager.LayoutParams.TYPE_APPLICATION_ATTACHED_DIALOG;
+ win.setAttributes(lp);
+ win.addFlags(WindowManager.LayoutParams.FLAG_ALT_FOCUSABLE_IM);
+ dialog.show();
+ }
+}