diff options
author | Chris "Koying" Browet <cbro@semperpax.com> | 2016-02-26 19:30:34 +0100 |
---|---|---|
committer | Kolja Lampe <razzeee@gmail.com> | 2016-04-01 16:39:44 +0200 |
commit | bfd07d1e1ef767812493000ed5a4f936b05c83e3 (patch) | |
tree | 69d8af4d42002ba15264ee17c43bfd58f20729e4 /tools/android | |
parent | 72769f6951f60711d96cc5cd6206baad952ee3ad (diff) |
[droid] implement video reference clock
Diffstat (limited to 'tools/android')
-rw-r--r-- | tools/android/packaging/xbmc/src/org/xbmc/kodi/Main.java.in | 20 |
1 files changed, 19 insertions, 1 deletions
diff --git a/tools/android/packaging/xbmc/src/org/xbmc/kodi/Main.java.in b/tools/android/packaging/xbmc/src/org/xbmc/kodi/Main.java.in index b78b7bfd15..d7413e097b 100644 --- a/tools/android/packaging/xbmc/src/org/xbmc/kodi/Main.java.in +++ b/tools/android/packaging/xbmc/src/org/xbmc/kodi/Main.java.in @@ -7,6 +7,7 @@ import android.hardware.input.InputManager; import android.media.AudioManager; import android.os.Bundle; import android.util.Log; +import android.view.Choreographer; import android.view.View; import android.view.Surface; import android.widget.RelativeLayout; @@ -15,7 +16,7 @@ import android.graphics.PixelFormat; import android.os.Handler; import org.xbmc.@APP_NAME_LC@.XBMCVideoView; -public class Main extends NativeActivity +public class Main extends NativeActivity implements Choreographer.FrameCallback { private static final String TAG = "@APP_NAME_LC@"; @@ -27,6 +28,7 @@ public class Main extends NativeActivity private Handler handler = new Handler(); native void _onNewIntent(Intent intent); + native void _doFrame(long frameTimeNanos); public Main() { @@ -164,6 +166,8 @@ public class Main extends NativeActivity { super.onResume(); + Choreographer.getInstance().postFrameCallback(this); + if (android.os.Build.VERSION.SDK_INT >= 19) { // Immersive mode @@ -181,6 +185,13 @@ public class Main extends NativeActivity } @Override + public void onPause() + { + super.onPause(); + + Choreographer.getInstance().removeFrameCallback(this); + } + public void onDestroy() { // unregister the InputDeviceListener implementation @@ -190,6 +201,13 @@ public class Main extends NativeActivity getApplicationContext().getContentResolver().unregisterContentObserver(mSettingsContentObserver); super.onDestroy(); } + + @Override + public void doFrame(long frameTimeNanos) + { + Choreographer.getInstance().postFrameCallback(this); + _doFrame(frameTimeNanos); + } private native void _callNative(long funcAddr, long variantAddr); |