app/clipboard: implement clipboard for Android

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2020-05-13 17:12:31 +02:00
parent a6dd70b2dc
commit 05dfceb7e7
6 changed files with 260 additions and 32 deletions
+17 -1
View File
@@ -2,11 +2,13 @@
package org.gioui;
import android.content.ClipboardManager;
import android.content.ClipData;
import android.content.Context;
import java.io.UnsupportedEncodingException;
public class Gio {
public final class Gio {
private final static Object initLock = new Object();
private static boolean jniLoaded;
@@ -35,5 +37,19 @@ public class Gio {
}
}
private static void writeClipboard(Context ctx, String s) {
ClipboardManager m = (ClipboardManager)ctx.getSystemService(Context.CLIPBOARD_SERVICE);
m.setPrimaryClip(ClipData.newPlainText(null, s));
}
private static String readClipboard(Context ctx) {
ClipboardManager m = (ClipboardManager)ctx.getSystemService(Context.CLIPBOARD_SERVICE);
ClipData c = m.getPrimaryClip();
if (c == null || c.getItemCount() < 1) {
return null;
}
return c.getItemAt(0).coerceToText(ctx).toString();
}
static private native void runGoMain(byte[] dataDir, Context context);
}