app/internal/window: [Android] use app context for clipboard access

The Activity context may not be available, so it's safer and simpler
to use the always available app context.

Signed-off-by: Elias Naur <mail@eliasnaur.com>
This commit is contained in:
Elias Naur
2020-06-13 14:50:46 +02:00
parent 65d9a9d1f1
commit 2f521899c9
3 changed files with 30 additions and 23 deletions
-16
View File
@@ -11,8 +11,6 @@ import android.app.Activity;
import android.app.Fragment;
import android.app.FragmentManager;
import android.app.FragmentTransaction;
import android.content.ClipboardManager;
import android.content.ClipData;
import android.content.Context;
import android.graphics.Rect;
import android.os.Build;
@@ -229,20 +227,6 @@ public final class GioView extends SurfaceView implements Choreographer.FrameCal
ft.commitNow();
}
void writeClipboard(String s) {
ClipboardManager m = (ClipboardManager)getContext().getSystemService(Context.CLIPBOARD_SERVICE);
m.setPrimaryClip(ClipData.newPlainText(null, s));
}
String readClipboard() {
ClipboardManager m = (ClipboardManager)getContext().getSystemService(Context.CLIPBOARD_SERVICE);
ClipData c = m.getPrimaryClip();
if (c == null || c.getItemCount() < 1) {
return null;
}
return c.getItemAt(0).coerceToText(getContext()).toString();
}
static private native long onCreateView(GioView view);
static private native void onDestroyView(long handle);
static private native void onStartView(long handle);