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

Side by Side Diff: chrome/browser/renderer_host/backing_store_manager.cc

Issue 4399003: Deleted code associated with --enable-gpu-rendering and... (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src/
Patch Set: '' Created 10 years, 1 month 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) 2010 The Chromium Authors. All rights reserved. 1 // Copyright (c) 2010 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 "chrome/browser/renderer_host/backing_store_manager.h" 5 #include "chrome/browser/renderer_host/backing_store_manager.h"
6 6
7 #include "base/sys_info.h" 7 #include "base/sys_info.h"
8 #include "base/command_line.h" 8 #include "base/command_line.h"
9 #include "chrome/common/chrome_switches.h" 9 #include "chrome/common/chrome_switches.h"
10 #include "chrome/browser/renderer_host/backing_store.h" 10 #include "chrome/browser/renderer_host/backing_store.h"
(...skipping 178 matching lines...) Expand 10 before | Expand all | Expand 10 after
189 return backing_store; 189 return backing_store;
190 } 190 }
191 191
192 // static 192 // static
193 void BackingStoreManager::PrepareBackingStore( 193 void BackingStoreManager::PrepareBackingStore(
194 RenderWidgetHost* host, 194 RenderWidgetHost* host,
195 const gfx::Size& backing_store_size, 195 const gfx::Size& backing_store_size,
196 TransportDIB::Id bitmap, 196 TransportDIB::Id bitmap,
197 const gfx::Rect& bitmap_rect, 197 const gfx::Rect& bitmap_rect,
198 const std::vector<gfx::Rect>& copy_rects, 198 const std::vector<gfx::Rect>& copy_rects,
199 bool* needs_full_paint, 199 bool* needs_full_paint) {
200 bool* painted_synchronously) {
201 // Default to declaring we're done using the transport DIB so it can be freed.
202 *painted_synchronously = true;
203
204 BackingStore* backing_store = GetBackingStore(host, backing_store_size); 200 BackingStore* backing_store = GetBackingStore(host, backing_store_size);
205 if (!backing_store) { 201 if (!backing_store) {
206 // We need to get Webkit to generate a new paint here, as we 202 // We need to get Webkit to generate a new paint here, as we
207 // don't have a previous snapshot. 203 // don't have a previous snapshot.
208 if (bitmap_rect.size() != backing_store_size || 204 if (bitmap_rect.size() != backing_store_size ||
209 bitmap_rect.x() != 0 || bitmap_rect.y() != 0 || 205 bitmap_rect.x() != 0 || bitmap_rect.y() != 0 ||
210 ComputeTotalArea(copy_rects) != backing_store_size.GetArea()) { 206 ComputeTotalArea(copy_rects) != backing_store_size.GetArea()) {
211 DCHECK(needs_full_paint != NULL); 207 DCHECK(needs_full_paint != NULL);
212 *needs_full_paint = true; 208 *needs_full_paint = true;
213 // Makes no sense to paint the transport dib if we are going 209 // Makes no sense to paint the transport dib if we are going
214 // to request a full paint. 210 // to request a full paint.
215 return; 211 return;
216 } 212 }
217 backing_store = CreateBackingStore(host, backing_store_size); 213 backing_store = CreateBackingStore(host, backing_store_size);
218 } 214 }
219 215
220 backing_store->PaintToBackingStore(host->process(), bitmap, 216 backing_store->PaintToBackingStore(host->process(), bitmap,
221 bitmap_rect, copy_rects, 217 bitmap_rect, copy_rects);
222 painted_synchronously);
223 } 218 }
224 219
225 // static 220 // static
226 BackingStore* BackingStoreManager::Lookup(RenderWidgetHost* host) { 221 BackingStore* BackingStoreManager::Lookup(RenderWidgetHost* host) {
227 if (large_cache) { 222 if (large_cache) {
228 BackingStoreCache::iterator it = large_cache->Get(host); 223 BackingStoreCache::iterator it = large_cache->Get(host);
229 if (it != large_cache->end()) 224 if (it != large_cache->end())
230 return it->second; 225 return it->second;
231 226
232 // This moves host to the front of the MRU. 227 // This moves host to the front of the MRU.
(...skipping 51 matching lines...) Expand 10 before | Expand all | Expand 10 after
284 size_t mem = 0; 279 size_t mem = 0;
285 BackingStoreCache::iterator it; 280 BackingStoreCache::iterator it;
286 for (it = large_cache->begin(); it != large_cache->end(); ++it) 281 for (it = large_cache->begin(); it != large_cache->end(); ++it)
287 mem += it->second->MemorySize(); 282 mem += it->second->MemorySize();
288 283
289 for (it = small_cache->begin(); it != small_cache->end(); ++it) 284 for (it = small_cache->begin(); it != small_cache->end(); ++it)
290 mem += it->second->MemorySize(); 285 mem += it->second->MemorySize();
291 286
292 return mem; 287 return mem;
293 } 288 }
OLDNEW
« no previous file with comments | « chrome/browser/renderer_host/backing_store_manager.h ('k') | chrome/browser/renderer_host/backing_store_proxy.h » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698