aboutsummaryrefslogtreecommitdiff
path: root/vendor/gioui.org/app/app_android.go
diff options
context:
space:
mode:
Diffstat (limited to 'vendor/gioui.org/app/app_android.go')
-rw-r--r--vendor/gioui.org/app/app_android.go48
1 files changed, 0 insertions, 48 deletions
diff --git a/vendor/gioui.org/app/app_android.go b/vendor/gioui.org/app/app_android.go
deleted file mode 100644
index 58e40d0..0000000
--- a/vendor/gioui.org/app/app_android.go
+++ /dev/null
@@ -1,48 +0,0 @@
-// SPDX-License-Identifier: Unlicense OR MIT
-
-package app
-
-import (
- "gioui.org/app/internal/window"
-)
-
-// JavaVM returns the global JNI JavaVM.
-func JavaVM() uintptr {
- return window.JavaVM()
-}
-
-// AppContext returns the global Application context as a JNI
-// jobject.
-func AppContext() uintptr {
- return window.AppContext()
-}
-
-// Do invokes the function with a JNI jobject handle to the underlying
-// Android View. The function is invoked on the main thread, and the
-// handle is invalidated after the function returns.
-//
-// Note: Do may deadlock if called from the same goroutine that receives from
-// Events.
-func (w *Window) Do(f func(view uintptr)) {
- type androidDriver interface {
- Do(f func(view uintptr)) bool
- }
- success := make(chan bool)
- for {
- driver := make(chan androidDriver, 1)
- // two-stage process: first wait for a valid driver...
- w.driverDo(func() {
- driver <- w.driver.(androidDriver)
- })
- // .. then run the function on the main thread using the
- // driver. The driver Do method returns false if the
- // view was invalidated while switching to the main thread.
- window.RunOnMain(func() {
- d := <-driver
- success <- d.Do(f)
- })
- if <-success {
- break
- }
- }
-}