Chromium Code Reviews
chromiumcodereview-hr@appspot.gserviceaccount.com (chromiumcodereview-hr) | Please choose your nickname with Settings | Help | Chromium Project | Gerrit Changes | Sign out
(90)

Unified Diff: content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java

Issue 2453623003: Decouple MediaSession messages from WebContents (full patch) (Closed)
Patch Set: nit Created 4 years, 1 month ago
Use n/p to move between diff chunks; N/P to move between comments. Draft comments are only viewable by you.
Jump to:
View side-by-side diff with in-line comments
Download patch
Index: content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
diff --git a/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java b/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
index cfb0623cb0fca3b293aa4316b10f0978ee37213b..ac34c8892be9deb964a7805c2250dad2338277bc 100644
--- a/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
+++ b/content/public/android/java/src/org/chromium/content/browser/webcontents/WebContentsImpl.java
@@ -12,13 +12,13 @@ import android.os.Parcel;
import android.os.ParcelUuid;
import android.os.Parcelable;
-import org.chromium.base.ObserverList;
import org.chromium.base.ThreadUtils;
import org.chromium.base.VisibleForTesting;
import org.chromium.base.annotations.CalledByNative;
import org.chromium.base.annotations.JNINamespace;
import org.chromium.content.browser.AppWebMessagePort;
import org.chromium.content.browser.AppWebMessagePortService;
+import org.chromium.content.browser.MediaSessionImpl;
import org.chromium.content_public.browser.AccessibilitySnapshotCallback;
import org.chromium.content_public.browser.AccessibilitySnapshotNode;
import org.chromium.content_public.browser.ContentBitmapCallback;
@@ -94,6 +94,10 @@ import java.util.UUID;
// Lazily created proxy observer for handling all Java-based WebContentsObservers.
private WebContentsObserverProxy mObserverProxy;
+ // The media session for this WebContents. It is constructed by the native MediaSession and has
+ // the same life time as native MediaSession.
+ private MediaSessionImpl mMediaSession;
+
private WebContentsImpl(
long nativeWebContentsAndroid, NavigationController navigationController) {
mNativeWebContentsAndroid = nativeWebContentsAndroid;
@@ -372,21 +376,6 @@ import java.util.UUID;
nativeRequestAccessibilitySnapshot(mNativeWebContentsAndroid, callback);
}
- @Override
- public void resumeMediaSession() {
- nativeResumeMediaSession(mNativeWebContentsAndroid);
- }
-
- @Override
- public void suspendMediaSession() {
- nativeSuspendMediaSession(mNativeWebContentsAndroid);
- }
-
- @Override
- public void stopMediaSession() {
- nativeStopMediaSession(mNativeWebContentsAndroid);
- }
-
// root node can be null if parsing fails.
@CalledByNative
private static void onAccessibilitySnapshot(AccessibilitySnapshotNode root,
@@ -437,12 +426,6 @@ import java.util.UUID;
mObserverProxy.removeObserver(observer);
}
- @VisibleForTesting
- @Override
- public ObserverList.RewindableIterator<WebContentsObserver> getObserversForTesting() {
- return mObserverProxy.getObserversForTesting();
- }
-
@Override
public void getContentBitmapAsync(Bitmap.Config config, float scale, Rect srcRect,
ContentBitmapCallback callback) {
@@ -475,6 +458,11 @@ import java.util.UUID;
}
@CalledByNative
+ private final void setMediaSession(MediaSessionImpl mediaSession) {
+ mMediaSession = mediaSession;
+ }
+
+ @CalledByNative
private static List<Bitmap> createBitmapList() {
return new ArrayList<Bitmap>();
}
@@ -547,9 +535,6 @@ import java.util.UUID;
private native int nativeGetThemeColor(long nativeWebContentsAndroid);
private native void nativeRequestAccessibilitySnapshot(
long nativeWebContentsAndroid, AccessibilitySnapshotCallback callback);
- private native void nativeResumeMediaSession(long nativeWebContentsAndroid);
- private native void nativeSuspendMediaSession(long nativeWebContentsAndroid);
- private native void nativeStopMediaSession(long nativeWebContentsAndroid);
private native void nativeGetContentBitmap(long nativeWebContentsAndroid,
ContentBitmapCallback callback, Bitmap.Config config, float scale,
float x, float y, float width, float height);

Powered by Google App Engine
This is Rietveld 408576698