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

Side by Side Diff: ui/compositor/compositor.cc

Issue 10052018: Drop frontbuffers with ui-use-gpu-process, synchronized with browser, decoupled from backbuffer dro… (Closed) Base URL: svn://svn.chromium.org/chrome/trunk/src
Patch Set: minor changes, rebasing with master Created 8 years, 6 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 "ui/compositor/compositor.h" 5 #include "ui/compositor/compositor.h"
6 6
7 #include "base/command_line.h" 7 #include "base/command_line.h"
8 #include "base/threading/thread_restrictions.h" 8 #include "base/threading/thread_restrictions.h"
9 #include "third_party/WebKit/Source/WebKit/chromium/public/WebCompositor.h" 9 #include "third_party/WebKit/Source/WebKit/chromium/public/WebCompositor.h"
10 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebFloatPoin t.h" 10 #include "third_party/WebKit/Source/WebKit/chromium/public/platform/WebFloatPoin t.h"
(...skipping 292 matching lines...) Expand 10 before | Expand all | Expand 10 after
303 return test_context; 303 return test_context;
304 } else { 304 } else {
305 return ContextFactory::GetInstance()->CreateContext(this); 305 return ContextFactory::GetInstance()->CreateContext(this);
306 } 306 }
307 } 307 }
308 308
309 void Compositor::didRebindGraphicsContext(bool success) { 309 void Compositor::didRebindGraphicsContext(bool success) {
310 } 310 }
311 311
312 void Compositor::didCommitAndDrawFrame() { 312 void Compositor::didCommitAndDrawFrame() {
313 currently_compositing_ = true;
313 FOR_EACH_OBSERVER(CompositorObserver, 314 FOR_EACH_OBSERVER(CompositorObserver,
314 observer_list_, 315 observer_list_,
315 OnCompositingStarted(this)); 316 OnCompositingStarted(this));
316 } 317 }
317 318
318 void Compositor::didCompleteSwapBuffers() { 319 void Compositor::didCompleteSwapBuffers() {
319 NotifyEnd(); 320 NotifyEnd();
320 } 321 }
321 322
322 void Compositor::scheduleComposite() { 323 void Compositor::scheduleComposite() {
(...skipping 17 matching lines...) Expand all
340 memcpy(&pixels[row * row_size], 341 memcpy(&pixels[row * row_size],
341 &pixels[bitmap_size - (row + 1) * row_size], 342 &pixels[bitmap_size - (row + 1) * row_size],
342 row_size); 343 row_size);
343 memcpy(&pixels[bitmap_size - (row + 1) * row_size], 344 memcpy(&pixels[bitmap_size - (row + 1) * row_size],
344 tmp_row.get(), 345 tmp_row.get(),
345 row_size); 346 row_size);
346 } 347 }
347 } 348 }
348 349
349 void Compositor::NotifyEnd() { 350 void Compositor::NotifyEnd() {
351 currently_compositing_ = false;
350 FOR_EACH_OBSERVER(CompositorObserver, 352 FOR_EACH_OBSERVER(CompositorObserver,
351 observer_list_, 353 observer_list_,
352 OnCompositingEnded(this)); 354 OnCompositingEnded(this));
353 } 355 }
354 356
355 COMPOSITOR_EXPORT void SetupTestCompositor() { 357 COMPOSITOR_EXPORT void SetupTestCompositor() {
356 if (!CommandLine::ForCurrentProcess()->HasSwitch( 358 if (!CommandLine::ForCurrentProcess()->HasSwitch(
357 switches::kDisableTestCompositor)) { 359 switches::kDisableTestCompositor)) {
358 test_compositor_enabled = true; 360 test_compositor_enabled = true;
359 } 361 }
360 #if defined(OS_CHROMEOS) 362 #if defined(OS_CHROMEOS)
361 // If the test is running on the chromeos envrionment (such as 363 // If the test is running on the chromeos envrionment (such as
362 // device or vm bots), use the real compositor. 364 // device or vm bots), use the real compositor.
363 if (base::chromeos::IsRunningOnChromeOS()) 365 if (base::chromeos::IsRunningOnChromeOS())
364 test_compositor_enabled = false; 366 test_compositor_enabled = false;
365 #endif 367 #endif
366 } 368 }
367 369
368 COMPOSITOR_EXPORT void DisableTestCompositor() { 370 COMPOSITOR_EXPORT void DisableTestCompositor() {
369 test_compositor_enabled = false; 371 test_compositor_enabled = false;
370 } 372 }
371 373
372 COMPOSITOR_EXPORT bool IsTestCompositorEnabled() { 374 COMPOSITOR_EXPORT bool IsTestCompositorEnabled() {
373 return test_compositor_enabled; 375 return test_compositor_enabled;
374 } 376 }
375 377
376 } // namespace ui 378 } // namespace ui
OLDNEW
« content/common/gpu/image_transport_surface.h ('K') | « ui/compositor/compositor.h ('k') | no next file » | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698