diff --git a/SDKLauncher-Android/src/org/readium/sdk/android/launcher/WebViewActivity.java b/SDKLauncher-Android/src/org/readium/sdk/android/launcher/WebViewActivity.java index a4a7b250..efe468f5 100644 --- a/SDKLauncher-Android/src/org/readium/sdk/android/launcher/WebViewActivity.java +++ b/SDKLauncher-Android/src/org/readium/sdk/android/launcher/WebViewActivity.java @@ -202,6 +202,7 @@ public byte[] handle(byte[] data, String mime, String uriPath, private boolean mIsMoAvailable; private boolean mIsMoPlaying; + private boolean mShouldResumeMO; private int mEpubRsoInjectCounter = 0; @Override @@ -287,6 +288,12 @@ protected void onDestroy() { @Override protected void onPause() { super.onPause(); + + if (mIsMoPlaying) { + mShouldResumeMO = true; + mReadiumJSApi.pauseMediaOverlay(); + } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { mWebview.onPause(); } @@ -295,6 +302,12 @@ protected void onPause() { @Override protected void onResume() { super.onResume(); + + if (mShouldResumeMO) { + mShouldResumeMO = false; + mReadiumJSApi.playMediaOverlay(); + } + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { mWebview.onResume(); } diff --git a/SDKLauncher-Android/src/org/readium/sdk/android/launcher/model/ReadiumJSApi.java b/SDKLauncher-Android/src/org/readium/sdk/android/launcher/model/ReadiumJSApi.java index db8993d7..a991c42e 100644 --- a/SDKLauncher-Android/src/org/readium/sdk/android/launcher/model/ReadiumJSApi.java +++ b/SDKLauncher-Android/src/org/readium/sdk/android/launcher/model/ReadiumJSApi.java @@ -100,6 +100,14 @@ public void toggleMediaOverlay(){ loadJSOnReady("ReadiumSDK.reader.toggleMediaOverlay();"); } + public void pauseMediaOverlay(){ + loadJSOnReady("ReadiumSDK.reader.pauseMediaOverlay();"); + } + + public void playMediaOverlay(){ + loadJSOnReady("ReadiumSDK.reader.playMediaOverlay();"); + } + private void loadJSOnReady(String jScript) {