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

Side by Side Diff: content/browser/renderer_host/compositor_impl_android.cc

Issue 1409833004: Add DeviceDisplayInfo getter in WindowAndroid. Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Fix failing bot, revert RWHVA changes, add NOTIMPLEMENTED to some functions in screen_android Created 4 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
« no previous file with comments | « content/browser/gpu/gpu_data_manager_impl_private.cc ('k') | ui/android/BUILD.gn » ('j') | no next file with comments »
Toggle Intra-line Diffs ('i') | Expand Comments ('e') | Collapse Comments ('c') | Show Comments Hide Comments ('s')
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/browser/renderer_host/compositor_impl_android.h" 5 #include "content/browser/renderer_host/compositor_impl_android.h"
6 6
7 #include <android/bitmap.h> 7 #include <android/bitmap.h>
8 #include <android/native_window_jni.h> 8 #include <android/native_window_jni.h>
9 #include <stdint.h> 9 #include <stdint.h>
10 #include <utility> 10 #include <utility>
(...skipping 412 matching lines...) Expand 10 before | Expand all | Expand 10 after
423 void CompositorImpl::SetNeedsComposite() { 423 void CompositorImpl::SetNeedsComposite() {
424 if (!host_->visible()) 424 if (!host_->visible())
425 return; 425 return;
426 host_->SetNeedsAnimate(); 426 host_->SetNeedsAnimate();
427 } 427 }
428 428
429 static scoped_ptr<WebGraphicsContext3DCommandBufferImpl> 429 static scoped_ptr<WebGraphicsContext3DCommandBufferImpl>
430 CreateGpuProcessViewContext( 430 CreateGpuProcessViewContext(
431 const scoped_refptr<GpuChannelHost>& gpu_channel_host, 431 const scoped_refptr<GpuChannelHost>& gpu_channel_host,
432 const blink::WebGraphicsContext3D::Attributes attributes, 432 const blink::WebGraphicsContext3D::Attributes attributes,
433 int surface_id) { 433 int surface_id,
434 gfx::NativeWindow native_window) {
434 GURL url("chrome://gpu/Compositor::createContext3D"); 435 GURL url("chrome://gpu/Compositor::createContext3D");
435 static const size_t kBytesPerPixel = 4; 436 static const size_t kBytesPerPixel = 4;
436 gfx::DeviceDisplayInfo display_info; 437 const gfx::DeviceDisplayInfo& display_info =
438 native_window->GetDeviceDisplayInfo();
437 size_t full_screen_texture_size_in_bytes = 439 size_t full_screen_texture_size_in_bytes =
438 display_info.GetDisplayHeight() * 440 display_info.GetDisplayHeight() *
439 display_info.GetDisplayWidth() * 441 display_info.GetDisplayWidth() *
440 kBytesPerPixel; 442 kBytesPerPixel;
441 WebGraphicsContext3DCommandBufferImpl::SharedMemoryLimits limits; 443 WebGraphicsContext3DCommandBufferImpl::SharedMemoryLimits limits;
442 limits.command_buffer_size = 64 * 1024; 444 limits.command_buffer_size = 64 * 1024;
443 limits.start_transfer_buffer_size = 64 * 1024; 445 limits.start_transfer_buffer_size = 64 * 1024;
444 limits.min_transfer_buffer_size = 64 * 1024; 446 limits.min_transfer_buffer_size = 64 * 1024;
445 limits.max_transfer_buffer_size = std::min( 447 limits.max_transfer_buffer_size = std::min(
446 3 * full_screen_texture_size_in_bytes, kDefaultMaxTransferBufferSize); 448 3 * full_screen_texture_size_in_bytes, kDefaultMaxTransferBufferSize);
(...skipping 84 matching lines...) Expand 10 before | Expand all | Expand 10 after
531 533
532 BrowserGpuChannelHostFactory* factory = 534 BrowserGpuChannelHostFactory* factory =
533 BrowserGpuChannelHostFactory::instance(); 535 BrowserGpuChannelHostFactory::instance();
534 // This channel might be lost (and even if it isn't right now, it might 536 // This channel might be lost (and even if it isn't right now, it might
535 // still get marked as lost from the IO thread, at any point in time really). 537 // still get marked as lost from the IO thread, at any point in time really).
536 // But from here on just try and always lead to either 538 // But from here on just try and always lead to either
537 // DidInitializeOutputSurface() or DidFailToInitializeOutputSurface(). 539 // DidInitializeOutputSurface() or DidFailToInitializeOutputSurface().
538 scoped_refptr<GpuChannelHost> gpu_channel_host(factory->GetGpuChannel()); 540 scoped_refptr<GpuChannelHost> gpu_channel_host(factory->GetGpuChannel());
539 scoped_refptr<ContextProviderCommandBuffer> context_provider( 541 scoped_refptr<ContextProviderCommandBuffer> context_provider(
540 ContextProviderCommandBuffer::Create( 542 ContextProviderCommandBuffer::Create(
541 CreateGpuProcessViewContext(gpu_channel_host, attrs, surface_id_), 543 CreateGpuProcessViewContext(gpu_channel_host, attrs, surface_id_,
544 root_window_),
542 BROWSER_COMPOSITOR_ONSCREEN_CONTEXT)); 545 BROWSER_COMPOSITOR_ONSCREEN_CONTEXT));
543 DCHECK(context_provider.get()); 546 DCHECK(context_provider.get());
544 547
545 scoped_ptr<cc::OutputSurface> real_output_surface( 548 scoped_ptr<cc::OutputSurface> real_output_surface(
546 new OutputSurfaceWithoutParent( 549 new OutputSurfaceWithoutParent(
547 this, context_provider, 550 this, context_provider,
548 base::Bind(&CompositorImpl::PopulateGpuCapabilities, 551 base::Bind(&CompositorImpl::PopulateGpuCapabilities,
549 base::Unretained(this)))); 552 base::Unretained(this))));
550 553
551 cc::SurfaceManager* manager = GetSurfaceManager(); 554 cc::SurfaceManager* manager = GetSurfaceManager();
(...skipping 93 matching lines...) Expand 10 before | Expand all | Expand 10 after
645 648
646 void CompositorImpl::SetNeedsAnimate() { 649 void CompositorImpl::SetNeedsAnimate() {
647 needs_animate_ = true; 650 needs_animate_ = true;
648 if (!host_->visible()) 651 if (!host_->visible())
649 return; 652 return;
650 653
651 host_->SetNeedsAnimate(); 654 host_->SetNeedsAnimate();
652 } 655 }
653 656
654 } // namespace content 657 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/gpu/gpu_data_manager_impl_private.cc ('k') | ui/android/BUILD.gn » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698