Index: chrome/browser/media/android/router/media_router_dialog_controller_android.cc |
diff --git a/chrome/browser/media/android/router/media_router_dialog_controller_android.cc b/chrome/browser/media/android/router/media_router_dialog_controller_android.cc |
index e0e05336efbf653efbb9702f6b065fa5cf047844..4a61bd4fd13e763ef786cf6dddf390fcb9818771 100644 |
--- a/chrome/browser/media/android/router/media_router_dialog_controller_android.cc |
+++ b/chrome/browser/media/android/router/media_router_dialog_controller_android.cc |
@@ -10,6 +10,8 @@ |
#include "chrome/browser/media/router/media_router.h" |
#include "chrome/browser/media/router/media_router_factory.h" |
#include "chrome/browser/media/router/media_source.h" |
+#include "chrome/browser/media/router/media_source_helper.h" |
+#include "chrome/browser/media/router/presentation_request.h" |
#include "chrome/browser/sessions/session_tab_helper.h" |
#include "content/public/browser/browser_thread.h" |
#include "content/public/browser/web_contents.h" |
@@ -36,16 +38,20 @@ MediaRouterDialogControllerAndroid::GetOrCreateForWebContents( |
void MediaRouterDialogControllerAndroid::OnSinkSelected( |
JNIEnv* env, jobject obj, jstring jsink_id) { |
- scoped_ptr<CreatePresentationSessionRequest> |
- request(TakePresentationRequest()); |
+ scoped_ptr<CreatePresentationSessionRequest> create_session_request( |
+ TakePresentationRequest()); |
- const std::string& source_id = request->media_source().id(); |
- const GURL& origin = request->frame_url().GetOrigin(); |
+ const PresentationRequest& presentation_request = |
+ create_session_request->presentation_request(); |
+ const MediaSource::Id source_id( |
mark a. foltz
2015/10/20 20:15:25
I actually preferred the previous code, where you
imcheng
2015/10/24 00:41:19
It's because now the CreateSessionRequest now hold
|
+ MediaSourceForPresentationUrl(presentation_request.presentation_url()) |
+ .id()); |
+ const GURL origin(presentation_request.frame_url().GetOrigin()); |
std::vector<MediaRouteResponseCallback> route_response_callbacks; |
route_response_callbacks.push_back( |
base::Bind(&CreatePresentationSessionRequest::HandleRouteResponse, |
- base::Passed(&request))); |
+ base::Passed(&create_session_request))); |
MediaRouter* router = MediaRouterFactory::GetApiForBrowserContext( |
initiator()->GetBrowserContext()); |
@@ -107,8 +113,10 @@ MediaRouterDialogControllerAndroid::~MediaRouterDialogControllerAndroid() { |
void MediaRouterDialogControllerAndroid::CreateMediaRouterDialog() { |
JNIEnv* env = base::android::AttachCurrentThread(); |
+ const std::string& presentation_url = |
+ create_session_request()->presentation_request().presentation_url(); |
const MediaSource::Id& media_source_id = |
- presentation_request()->media_source().id(); |
+ MediaSourceForPresentationUrl(presentation_url).id(); |
ScopedJavaLocalRef<jstring> jsource_urn = |
base::android::ConvertUTF8ToJavaString(env, media_source_id); |