android_manifest("""<uses-permission android:name="android.permission.VIBRATE" />""")
end
-import native_app_glue
+import dalvik
# Handle to an Android vibrator
extern class Vibrator in "Java" `{ android.os.Vibrator `}
super JavaObject
# Vibrate for `n` miliseconds
- fun vibrate(n: Int) in "Java" `{ recv.vibrate(n); `}
+ fun vibrate(n: Int) in "Java" `{ self.vibrate(n); `}
# Does this devices has a vibrator
#
# TODO activate in API 11
- #fun exists: Bool in "Java" `{ return recv.hasVibrator(); `}
+ #fun exists: Bool in "Java" `{ return self.hasVibrator(); `}
# Turn off the vibration
- fun cancel in "Java" `{ recv.cancel(); `}
+ fun cancel in "Java" `{ self.cancel(); `}
# HACK for bug #845
redef fun new_global_ref import sys, Sys.jni_env `{
- Sys sys = Vibrator_sys(recv);
+ Sys sys = Vibrator_sys(self);
JNIEnv *env = Sys_jni_env(sys);
- return (*env)->NewGlobalRef(env, recv);
+ return (*env)->NewGlobalRef(env, self);
`}
end
redef class App
# Get the handle to this device vibrator as a global ref
- fun vibrator: Vibrator is cached do
- var v = vibrator_native(native_activity)
+ var vibrator: Vibrator is lazy do
+ var v = vibrator_native(native_context)
return v.new_global_ref
end
- private fun vibrator_native(context: NativeActivity): Vibrator in "Java" `{
+ private fun vibrator_native(context: NativeContext): Vibrator in "Java" `{
android.os.Vibrator v = (android.os.Vibrator)
context.getSystemService(android.content.Context.VIBRATOR_SERVICE);
return v;