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

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

Issue 12506003: Stop using the WebView::sharedGraphicsContext3D interface. (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: fixin Created 7 years, 9 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 | Annotate | Revision Log
OLDNEW
1 // Copyright (c) 2012 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2012 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_view_impl.h" 5 #include "content/renderer/render_view_impl.h"
6 6
7 #include <algorithm> 7 #include <algorithm>
8 #include <cmath> 8 #include <cmath>
9 9
10 #include "base/auto_reset.h" 10 #include "base/auto_reset.h"
(...skipping 198 matching lines...) Expand 10 before | Expand all | Expand 10 after
209 #include "webkit/media/webmediaplayer_ms.h" 209 #include "webkit/media/webmediaplayer_ms.h"
210 #include "webkit/media/webmediaplayer_params.h" 210 #include "webkit/media/webmediaplayer_params.h"
211 #include "webkit/plugins/npapi/plugin_list.h" 211 #include "webkit/plugins/npapi/plugin_list.h"
212 #include "webkit/plugins/npapi/plugin_utils.h" 212 #include "webkit/plugins/npapi/plugin_utils.h"
213 #include "webkit/plugins/npapi/webplugin_delegate.h" 213 #include "webkit/plugins/npapi/webplugin_delegate.h"
214 #include "webkit/plugins/npapi/webplugin_delegate_impl.h" 214 #include "webkit/plugins/npapi/webplugin_delegate_impl.h"
215 #include "webkit/plugins/npapi/webplugin_impl.h" 215 #include "webkit/plugins/npapi/webplugin_impl.h"
216 216
217 #if defined(OS_ANDROID) 217 #if defined(OS_ANDROID)
218 #include "content/common/android/device_telephony_info.h" 218 #include "content/common/android/device_telephony_info.h"
219 #include "content/common/gpu/client/context_provider_command_buffer.h"
219 #include "content/renderer/android/address_detector.h" 220 #include "content/renderer/android/address_detector.h"
220 #include "content/renderer/android/content_detector.h" 221 #include "content/renderer/android/content_detector.h"
221 #include "content/renderer/android/email_detector.h" 222 #include "content/renderer/android/email_detector.h"
222 #include "content/renderer/android/phone_number_detector.h" 223 #include "content/renderer/android/phone_number_detector.h"
223 #include "content/renderer/media/stream_texture_factory_impl_android.h" 224 #include "content/renderer/media/stream_texture_factory_impl_android.h"
224 #include "content/renderer/media/webmediaplayer_proxy_impl_android.h" 225 #include "content/renderer/media/webmediaplayer_proxy_impl_android.h"
225 #include "third_party/WebKit/Source/Platform/chromium/public/WebFloatPoint.h" 226 #include "third_party/WebKit/Source/Platform/chromium/public/WebFloatPoint.h"
226 #include "third_party/WebKit/Source/Platform/chromium/public/WebFloatRect.h" 227 #include "third_party/WebKit/Source/Platform/chromium/public/WebFloatRect.h"
227 #include "third_party/WebKit/Source/WebKit/chromium/public/WebHitTestResult.h" 228 #include "third_party/WebKit/Source/WebKit/chromium/public/WebHitTestResult.h"
228 #include "ui/gfx/rect_f.h" 229 #include "ui/gfx/rect_f.h"
(...skipping 2485 matching lines...) Expand 10 before | Expand all | Expand 10 after
2714 const CommandLine* cmd_line = CommandLine::ForCurrentProcess(); 2715 const CommandLine* cmd_line = CommandLine::ForCurrentProcess();
2715 #if defined(ENABLE_WEBRTC) 2716 #if defined(ENABLE_WEBRTC)
2716 if (MediaStreamImpl::CheckMediaStream(url)) { 2717 if (MediaStreamImpl::CheckMediaStream(url)) {
2717 EnsureMediaStreamImpl(); 2718 EnsureMediaStreamImpl();
2718 return new webkit_media::WebMediaPlayerMS( 2719 return new webkit_media::WebMediaPlayerMS(
2719 frame, client, AsWeakPtr(), media_stream_impl_, new RenderMediaLog()); 2720 frame, client, AsWeakPtr(), media_stream_impl_, new RenderMediaLog());
2720 } 2721 }
2721 #endif 2722 #endif
2722 2723
2723 #if defined(OS_ANDROID) 2724 #if defined(OS_ANDROID)
2724 WebGraphicsContext3D* resource_context =
2725 GetWebView()->sharedGraphicsContext3D();
2726
2727 GpuChannelHost* gpu_channel_host = 2725 GpuChannelHost* gpu_channel_host =
2728 RenderThreadImpl::current()->EstablishGpuChannelSync( 2726 RenderThreadImpl::current()->EstablishGpuChannelSync(
2729 CAUSE_FOR_GPU_LAUNCH_VIDEODECODEACCELERATOR_INITIALIZE); 2727 CAUSE_FOR_GPU_LAUNCH_VIDEODECODEACCELERATOR_INITIALIZE);
2730 if (!gpu_channel_host) { 2728 if (!gpu_channel_host) {
2731 LOG(ERROR) << "Failed to establish GPU channel for media player"; 2729 LOG(ERROR) << "Failed to establish GPU channel for media player";
2732 return NULL; 2730 return NULL;
2733 } 2731 }
2734 2732
2733 scoped_refptr<cc::ContextProvider> context_provider =
2734 RenderThreadImpl::current()->OffscreenContextProviderForMainThread();
2735 if (!context_provider->InitializeOnMainThread() ||
2736 !context_provider->BindToCurrentThread()) {
2737 LOG(ERROR) << "Failed to get context3d for media player";
2738 return NULL;
2739 }
2740
2735 if (cmd_line->HasSwitch(switches::kInProcessWebGL)) { 2741 if (cmd_line->HasSwitch(switches::kInProcessWebGL)) {
2736 if (!media_bridge_manager_.get()) { 2742 if (!media_bridge_manager_.get()) {
2737 media_bridge_manager_.reset( 2743 media_bridge_manager_.reset(
2738 new webkit_media::MediaPlayerBridgeManagerImpl(1)); 2744 new webkit_media::MediaPlayerBridgeManagerImpl(1));
2739 } 2745 }
2740 return new webkit_media::WebMediaPlayerInProcessAndroid( 2746 return new webkit_media::WebMediaPlayerInProcessAndroid(
2741 frame, 2747 frame,
2742 client, 2748 client,
2743 cookieJar(frame), 2749 cookieJar(frame),
2744 media_player_manager_.get(), 2750 media_player_manager_.get(),
2745 media_bridge_manager_.get(), 2751 media_bridge_manager_.get(),
2746 new StreamTextureFactoryImpl( 2752 new StreamTextureFactoryImpl(
2747 resource_context, gpu_channel_host, routing_id_), 2753 context_provider->Context3d(), gpu_channel_host, routing_id_),
2748 cmd_line->HasSwitch(switches::kDisableMediaHistoryLogging)); 2754 cmd_line->HasSwitch(switches::kDisableMediaHistoryLogging));
2749 } 2755 }
2750 if (!media_player_proxy_) { 2756 if (!media_player_proxy_) {
2751 media_player_proxy_ = new WebMediaPlayerProxyImplAndroid( 2757 media_player_proxy_ = new WebMediaPlayerProxyImplAndroid(
2752 this, media_player_manager_.get()); 2758 this, media_player_manager_.get());
2753 } 2759 }
2754 return new webkit_media::WebMediaPlayerImplAndroid( 2760 return new webkit_media::WebMediaPlayerImplAndroid(
2755 frame, 2761 frame,
2756 client, 2762 client,
2757 media_player_manager_.get(), 2763 media_player_manager_.get(),
2758 media_player_proxy_, 2764 media_player_proxy_,
2759 new StreamTextureFactoryImpl( 2765 new StreamTextureFactoryImpl(
2760 resource_context, gpu_channel_host, routing_id_)); 2766 context_provider->Context3d(), gpu_channel_host, routing_id_));
2761 #endif 2767 #endif
2762 2768
2763 scoped_refptr<media::AudioRendererSink> sink; 2769 scoped_refptr<media::AudioRendererSink> sink;
2764 if (!cmd_line->HasSwitch(switches::kDisableAudio)) { 2770 if (!cmd_line->HasSwitch(switches::kDisableAudio)) {
2765 if (!cmd_line->HasSwitch(switches::kDisableRendererSideMixing)) { 2771 if (!cmd_line->HasSwitch(switches::kDisableRendererSideMixing)) {
2766 sink = RenderThreadImpl::current()->GetAudioRendererMixerManager()-> 2772 sink = RenderThreadImpl::current()->GetAudioRendererMixerManager()->
2767 CreateInput(routing_id_); 2773 CreateInput(routing_id_);
2768 DVLOG(1) << "Using AudioRendererMixerManager-provided sink: " << sink; 2774 DVLOG(1) << "Using AudioRendererMixerManager-provided sink: " << sink;
2769 } else { 2775 } else {
2770 scoped_refptr<RendererAudioOutputDevice> device = 2776 scoped_refptr<RendererAudioOutputDevice> device =
(...skipping 3983 matching lines...) Expand 10 before | Expand all | Expand 10 after
6754 TransportDIB* dib = TransportDIB::CreateWithHandle(dib_handle); 6760 TransportDIB* dib = TransportDIB::CreateWithHandle(dib_handle);
6755 RenderProcess::current()->ReleaseTransportDIB(dib); 6761 RenderProcess::current()->ReleaseTransportDIB(dib);
6756 } 6762 }
6757 6763
6758 void RenderViewImpl::DidCommitCompositorFrame() { 6764 void RenderViewImpl::DidCommitCompositorFrame() {
6759 RenderWidget::DidCommitCompositorFrame(); 6765 RenderWidget::DidCommitCompositorFrame();
6760 FOR_EACH_OBSERVER(RenderViewObserver, observers_, DidCommitCompositorFrame()); 6766 FOR_EACH_OBSERVER(RenderViewObserver, observers_, DidCommitCompositorFrame());
6761 } 6767 }
6762 6768
6763 } // namespace content 6769 } // namespace content
OLDNEW
« no previous file with comments | « content/renderer/render_thread_impl.cc ('k') | content/renderer/renderer_webkitplatformsupport_impl.cc » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698