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

Side by Side Diff: content/renderer/render_frame_impl.cc

Issue 2116763002: Reland: Web MIDI: use mojom::blink::PermissionService directly to ask permission (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: for second attempt Created 4 years, 4 months 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 unified diff | Download patch
OLDNEW
1 // Copyright 2013 The Chromium Authors. All rights reserved. 1 // Copyright 2013 The Chromium Authors. All rights reserved.
2 // Use of this source code is governed by a BSD-style license that can be 2 // Use of this source code is governed by a BSD-style license that can be
3 // found in the LICENSE file. 3 // found in the LICENSE file.
4 4
5 #include "content/renderer/render_frame_impl.h" 5 #include "content/renderer/render_frame_impl.h"
6 6
7 #include <map> 7 #include <map>
8 #include <string> 8 #include <string>
9 #include <utility> 9 #include <utility>
10 #include <vector> 10 #include <vector>
(...skipping 89 matching lines...) Expand 10 before | Expand all | Expand 10 after
100 #include "content/renderer/history_serialization.h" 100 #include "content/renderer/history_serialization.h"
101 #include "content/renderer/image_downloader/image_downloader_impl.h" 101 #include "content/renderer/image_downloader/image_downloader_impl.h"
102 #include "content/renderer/ime_event_guard.h" 102 #include "content/renderer/ime_event_guard.h"
103 #include "content/renderer/input/input_handler_manager.h" 103 #include "content/renderer/input/input_handler_manager.h"
104 #include "content/renderer/internal_document_state_data.h" 104 #include "content/renderer/internal_document_state_data.h"
105 #include "content/renderer/manifest/manifest_manager.h" 105 #include "content/renderer/manifest/manifest_manager.h"
106 #include "content/renderer/media/audio_device_factory.h" 106 #include "content/renderer/media/audio_device_factory.h"
107 #include "content/renderer/media/media_permission_dispatcher.h" 107 #include "content/renderer/media/media_permission_dispatcher.h"
108 #include "content/renderer/media/media_stream_dispatcher.h" 108 #include "content/renderer/media/media_stream_dispatcher.h"
109 #include "content/renderer/media/media_stream_renderer_factory_impl.h" 109 #include "content/renderer/media/media_stream_renderer_factory_impl.h"
110 #include "content/renderer/media/midi_dispatcher.h"
111 #include "content/renderer/media/render_media_log.h" 110 #include "content/renderer/media/render_media_log.h"
112 #include "content/renderer/media/renderer_webmediaplayer_delegate.h" 111 #include "content/renderer/media/renderer_webmediaplayer_delegate.h"
113 #include "content/renderer/media/user_media_client_impl.h" 112 #include "content/renderer/media/user_media_client_impl.h"
114 #include "content/renderer/media/web_media_element_source_utils.h" 113 #include "content/renderer/media/web_media_element_source_utils.h"
115 #include "content/renderer/media/webmediaplayer_ms.h" 114 #include "content/renderer/media/webmediaplayer_ms.h"
116 #include "content/renderer/mojo/interface_provider_js_wrapper.h" 115 #include "content/renderer/mojo/interface_provider_js_wrapper.h"
117 #include "content/renderer/mojo_bindings_controller.h" 116 #include "content/renderer/mojo_bindings_controller.h"
118 #include "content/renderer/navigation_state_impl.h" 117 #include "content/renderer/navigation_state_impl.h"
119 #include "content/renderer/notification_permission_dispatcher.h" 118 #include "content/renderer/notification_permission_dispatcher.h"
120 #include "content/renderer/pepper/pepper_audio_controller.h" 119 #include "content/renderer/pepper/pepper_audio_controller.h"
(...skipping 961 matching lines...) Expand 10 before | Expand all | Expand 10 after
1082 #if defined(ENABLE_PLUGINS) 1081 #if defined(ENABLE_PLUGINS)
1083 plugin_power_saver_helper_(nullptr), 1082 plugin_power_saver_helper_(nullptr),
1084 plugin_find_handler_(nullptr), 1083 plugin_find_handler_(nullptr),
1085 #endif 1084 #endif
1086 cookie_jar_(this), 1085 cookie_jar_(this),
1087 selection_text_offset_(0), 1086 selection_text_offset_(0),
1088 selection_range_(gfx::Range::InvalidRange()), 1087 selection_range_(gfx::Range::InvalidRange()),
1089 handling_select_range_(false), 1088 handling_select_range_(false),
1090 notification_permission_dispatcher_(NULL), 1089 notification_permission_dispatcher_(NULL),
1091 web_user_media_client_(NULL), 1090 web_user_media_client_(NULL),
1092 midi_dispatcher_(NULL),
1093 #if defined(OS_ANDROID) 1091 #if defined(OS_ANDROID)
1094 media_player_manager_(NULL), 1092 media_player_manager_(NULL),
1095 media_session_manager_(NULL), 1093 media_session_manager_(NULL),
1096 #endif 1094 #endif
1097 media_surface_manager_(nullptr), 1095 media_surface_manager_(nullptr),
1098 #if defined(ENABLE_BROWSER_CDMS) 1096 #if defined(ENABLE_BROWSER_CDMS)
1099 cdm_manager_(NULL), 1097 cdm_manager_(NULL),
1100 #endif 1098 #endif
1101 #if defined(VIDEO_HOLE) 1099 #if defined(VIDEO_HOLE)
1102 contains_media_player_(false), 1100 contains_media_player_(false),
(...skipping 3246 matching lines...) Expand 10 before | Expand all | Expand 10 after
4349 // base::Unretained(this) is safe because WebEncryptedMediaClientImpl 4347 // base::Unretained(this) is safe because WebEncryptedMediaClientImpl
4350 // is destructed before |this|, and does not give away ownership of the 4348 // is destructed before |this|, and does not give away ownership of the
4351 // callback. 4349 // callback.
4352 base::Bind(&RenderFrameImpl::AreSecureCodecsSupported, 4350 base::Bind(&RenderFrameImpl::AreSecureCodecsSupported,
4353 base::Unretained(this)), 4351 base::Unretained(this)),
4354 GetCdmFactory(), GetMediaPermission())); 4352 GetCdmFactory(), GetMediaPermission()));
4355 } 4353 }
4356 return web_encrypted_media_client_.get(); 4354 return web_encrypted_media_client_.get();
4357 } 4355 }
4358 4356
4359 blink::WebMIDIClient* RenderFrameImpl::webMIDIClient() {
4360 if (!midi_dispatcher_)
4361 midi_dispatcher_ = new MidiDispatcher(this);
4362 return midi_dispatcher_;
4363 }
4364
4365 blink::WebString RenderFrameImpl::userAgentOverride() { 4357 blink::WebString RenderFrameImpl::userAgentOverride() {
4366 if (!render_view_->webview() || !render_view_->webview()->mainFrame() || 4358 if (!render_view_->webview() || !render_view_->webview()->mainFrame() ||
4367 render_view_->renderer_preferences_.user_agent_override.empty()) { 4359 render_view_->renderer_preferences_.user_agent_override.empty()) {
4368 return blink::WebString(); 4360 return blink::WebString();
4369 } 4361 }
4370 4362
4371 // TODO(nasko): When the top-level frame is remote, there is no WebDataSource 4363 // TODO(nasko): When the top-level frame is remote, there is no WebDataSource
4372 // associated with it, so the checks below are not valid. Temporarily 4364 // associated with it, so the checks below are not valid. Temporarily
4373 // return early and fix properly as part of https://crbug.com/426555. 4365 // return early and fix properly as part of https://crbug.com/426555.
4374 if (render_view_->webview()->mainFrame()->isWebRemoteFrame()) 4366 if (render_view_->webview()->mainFrame()->isWebRemoteFrame())
(...skipping 1970 matching lines...) Expand 10 before | Expand all | Expand 10 after
6345 // event target. Potentially a Pepper plugin will receive the event. 6337 // event target. Potentially a Pepper plugin will receive the event.
6346 // In order to tell whether a plugin gets the last mouse event and which it 6338 // In order to tell whether a plugin gets the last mouse event and which it
6347 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets 6339 // is, we set |pepper_last_mouse_event_target_| to null here. If a plugin gets
6348 // the event, it will notify us via DidReceiveMouseEvent() and set itself as 6340 // the event, it will notify us via DidReceiveMouseEvent() and set itself as
6349 // |pepper_last_mouse_event_target_|. 6341 // |pepper_last_mouse_event_target_|.
6350 pepper_last_mouse_event_target_ = nullptr; 6342 pepper_last_mouse_event_target_ = nullptr;
6351 #endif 6343 #endif
6352 } 6344 }
6353 6345
6354 } // namespace content 6346 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_frame_impl.h ('k') | third_party/WebKit/LayoutTests/webmidi/loopback-receive.html » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698