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

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

Issue 146873002: Handle Left out paths on Android/Aura for Async ReadBack. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Rebase. Created 6 years, 10 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/renderer_host/render_widget_host_view_aura.h ('k') | no next file » | 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/render_widget_host_view_aura.h" 5 #include "content/browser/renderer_host/render_widget_host_view_aura.h"
6 6
7 #include "base/auto_reset.h" 7 #include "base/auto_reset.h"
8 #include "base/basictypes.h" 8 #include "base/basictypes.h"
9 #include "base/bind.h" 9 #include "base/bind.h"
10 #include "base/callback_helpers.h" 10 #include "base/callback_helpers.h"
(...skipping 1828 matching lines...) Expand 10 before | Expand all | Expand 10 after
1839 } 1839 }
1840 1840
1841 if (result->HasTexture()) { 1841 if (result->HasTexture()) {
1842 PrepareTextureCopyOutputResult(dst_size_in_pixel, config, 1842 PrepareTextureCopyOutputResult(dst_size_in_pixel, config,
1843 callback, 1843 callback,
1844 result.Pass()); 1844 result.Pass());
1845 return; 1845 return;
1846 } 1846 }
1847 1847
1848 DCHECK(result->HasBitmap()); 1848 DCHECK(result->HasBitmap());
1849 PrepareBitmapCopyOutputResult(dst_size_in_pixel, callback, result.Pass()); 1849 PrepareBitmapCopyOutputResult(dst_size_in_pixel, config, callback,
1850 result.Pass());
1850 } 1851 }
1851 1852
1852 static void CopyFromCompositingSurfaceFinished( 1853 static void CopyFromCompositingSurfaceFinished(
1853 const base::Callback<void(bool, const SkBitmap&)>& callback, 1854 const base::Callback<void(bool, const SkBitmap&)>& callback,
1854 scoped_ptr<cc::SingleReleaseCallback> release_callback, 1855 scoped_ptr<cc::SingleReleaseCallback> release_callback,
1855 scoped_ptr<SkBitmap> bitmap, 1856 scoped_ptr<SkBitmap> bitmap,
1856 scoped_ptr<SkAutoLockPixels> bitmap_pixels_lock, 1857 scoped_ptr<SkAutoLockPixels> bitmap_pixels_lock,
1857 bool result) { 1858 bool result) {
1858 bitmap_pixels_lock.reset(); 1859 bitmap_pixels_lock.reset();
1859 1860
(...skipping 12 matching lines...) Expand all
1872 void RenderWidgetHostViewAura::PrepareTextureCopyOutputResult( 1873 void RenderWidgetHostViewAura::PrepareTextureCopyOutputResult(
1873 const gfx::Size& dst_size_in_pixel, 1874 const gfx::Size& dst_size_in_pixel,
1874 const SkBitmap::Config config, 1875 const SkBitmap::Config config,
1875 const base::Callback<void(bool, const SkBitmap&)>& callback, 1876 const base::Callback<void(bool, const SkBitmap&)>& callback,
1876 scoped_ptr<cc::CopyOutputResult> result) { 1877 scoped_ptr<cc::CopyOutputResult> result) {
1877 DCHECK(result->HasTexture()); 1878 DCHECK(result->HasTexture());
1878 base::ScopedClosureRunner scoped_callback_runner( 1879 base::ScopedClosureRunner scoped_callback_runner(
1879 base::Bind(callback, false, SkBitmap())); 1880 base::Bind(callback, false, SkBitmap()));
1880 1881
1881 scoped_ptr<SkBitmap> bitmap(new SkBitmap); 1882 scoped_ptr<SkBitmap> bitmap(new SkBitmap);
1882 bitmap->setConfig(SkBitmap::kARGB_8888_Config, 1883 bitmap->setConfig(config,
1883 dst_size_in_pixel.width(), dst_size_in_pixel.height(), 1884 dst_size_in_pixel.width(), dst_size_in_pixel.height(),
1884 0, kOpaque_SkAlphaType); 1885 0, kOpaque_SkAlphaType);
1885 if (!bitmap->allocPixels()) 1886 if (!bitmap->allocPixels())
1886 return; 1887 return;
1887 1888
1888 ImageTransportFactory* factory = ImageTransportFactory::GetInstance(); 1889 ImageTransportFactory* factory = ImageTransportFactory::GetInstance();
1889 GLHelper* gl_helper = factory->GetGLHelper(); 1890 GLHelper* gl_helper = factory->GetGLHelper();
1890 if (!gl_helper) 1891 if (!gl_helper)
1891 return; 1892 return;
1892 1893
(...skipping 21 matching lines...) Expand all
1914 base::Bind(&CopyFromCompositingSurfaceFinished, 1915 base::Bind(&CopyFromCompositingSurfaceFinished,
1915 callback, 1916 callback,
1916 base::Passed(&release_callback), 1917 base::Passed(&release_callback),
1917 base::Passed(&bitmap), 1918 base::Passed(&bitmap),
1918 base::Passed(&bitmap_pixels_lock))); 1919 base::Passed(&bitmap_pixels_lock)));
1919 } 1920 }
1920 1921
1921 // static 1922 // static
1922 void RenderWidgetHostViewAura::PrepareBitmapCopyOutputResult( 1923 void RenderWidgetHostViewAura::PrepareBitmapCopyOutputResult(
1923 const gfx::Size& dst_size_in_pixel, 1924 const gfx::Size& dst_size_in_pixel,
1925 const SkBitmap::Config config,
1924 const base::Callback<void(bool, const SkBitmap&)>& callback, 1926 const base::Callback<void(bool, const SkBitmap&)>& callback,
1925 scoped_ptr<cc::CopyOutputResult> result) { 1927 scoped_ptr<cc::CopyOutputResult> result) {
1928 if (config != SkBitmap::kARGB_8888_Config) {
1929 NOTIMPLEMENTED();
1930 callback.Run(false, SkBitmap());
1931 return;
1932 }
1926 DCHECK(result->HasBitmap()); 1933 DCHECK(result->HasBitmap());
1927 base::ScopedClosureRunner scoped_callback_runner( 1934 base::ScopedClosureRunner scoped_callback_runner(
1928 base::Bind(callback, false, SkBitmap())); 1935 base::Bind(callback, false, SkBitmap()));
1929 1936
1930 scoped_ptr<SkBitmap> source = result->TakeBitmap(); 1937 scoped_ptr<SkBitmap> source = result->TakeBitmap();
1931 DCHECK(source); 1938 DCHECK(source);
1932 if (!source) 1939 if (!source)
1933 return; 1940 return;
1934 1941
1935 ignore_result(scoped_callback_runner.Release()); 1942 ignore_result(scoped_callback_runner.Release());
(...skipping 1620 matching lines...) Expand 10 before | Expand all | Expand 10 after
3556 RenderWidgetHost* widget) { 3563 RenderWidgetHost* widget) {
3557 return new RenderWidgetHostViewAura(widget); 3564 return new RenderWidgetHostViewAura(widget);
3558 } 3565 }
3559 3566
3560 // static 3567 // static
3561 void RenderWidgetHostViewPort::GetDefaultScreenInfo(WebScreenInfo* results) { 3568 void RenderWidgetHostViewPort::GetDefaultScreenInfo(WebScreenInfo* results) {
3562 GetScreenInfoForWindow(results, NULL); 3569 GetScreenInfoForWindow(results, NULL);
3563 } 3570 }
3564 3571
3565 } // namespace content 3572 } // namespace content
OLDNEW
« no previous file with comments | « content/browser/renderer_host/render_widget_host_view_aura.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698