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

Side by Side Diff: android_webview/browser/browser_view_renderer.cc

Issue 902813003: Temporarily remove DCHECK that triggers during hardware teardown. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: More speculative changes Created 5 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
OLDNEW
1 // Copyright 2014 The Chromium Authors. All rights reserved. 1 // Copyright 2014 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 "android_webview/browser/browser_view_renderer.h" 5 #include "android_webview/browser/browser_view_renderer.h"
6 6
7 #include "android_webview/browser/browser_view_renderer_client.h" 7 #include "android_webview/browser/browser_view_renderer_client.h"
8 #include "base/auto_reset.h" 8 #include "base/auto_reset.h"
9 #include "base/command_line.h" 9 #include "base/command_line.h"
10 #include "base/logging.h" 10 #include "base/logging.h"
(...skipping 361 matching lines...) Expand 10 before | Expand all | Expand 10 after
372 "width", 372 "width",
373 width, 373 width,
374 "height", 374 "height",
375 height); 375 height);
376 attached_to_window_ = true; 376 attached_to_window_ = true;
377 size_.SetSize(width, height); 377 size_.SetSize(width, height);
378 } 378 }
379 379
380 void BrowserViewRenderer::OnDetachedFromWindow() { 380 void BrowserViewRenderer::OnDetachedFromWindow() {
381 TRACE_EVENT0("android_webview", "BrowserViewRenderer::OnDetachedFromWindow"); 381 TRACE_EVENT0("android_webview", "BrowserViewRenderer::OnDetachedFromWindow");
382 attached_to_window_ = false;
382 shared_renderer_state_.ReleaseHardwareDrawIfNeededOnUI(); 383 shared_renderer_state_.ReleaseHardwareDrawIfNeededOnUI();
383 attached_to_window_ = false;
384 DCHECK(!hardware_enabled_); 384 DCHECK(!hardware_enabled_);
385 } 385 }
386 386
387 void BrowserViewRenderer::ReleaseHardware() { 387 void BrowserViewRenderer::ReleaseHardware() {
388 DCHECK(hardware_enabled_); 388 DCHECK(hardware_enabled_);
389 ReturnUnusedResource(shared_renderer_state_.PassUncommittedFrameOnUI()); 389 ReturnUnusedResource(shared_renderer_state_.PassUncommittedFrameOnUI());
390 ReturnResourceFromParent(); 390 ReturnResourceFromParent();
391 DCHECK(shared_renderer_state_.ReturnedResourcesEmptyOnUI()); 391 DCHECK(shared_renderer_state_.ReturnedResourcesEmptyOnUI());
392 392
393 if (compositor_) { 393 if (compositor_) {
394 compositor_->ReleaseHwDraw(); 394 compositor_->ReleaseHwDraw();
395 } 395 }
396 396
397 hardware_enabled_ = false; 397 hardware_enabled_ = false;
398 } 398 }
399 399
400 bool BrowserViewRenderer::IsVisible() const { 400 bool BrowserViewRenderer::IsVisible() const {
401 // Ignore |window_visible_| if |attached_to_window_| is false. 401 // Ignore |window_visible_| if |attached_to_window_| is false.
402 return view_visible_ && (!attached_to_window_ || window_visible_); 402 return view_visible_ && attached_to_window_ && window_visible_;
403 } 403 }
404 404
405 gfx::Rect BrowserViewRenderer::GetScreenRect() const { 405 gfx::Rect BrowserViewRenderer::GetScreenRect() const {
406 return gfx::Rect(client_->GetLocationOnScreen(), size_); 406 return gfx::Rect(client_->GetLocationOnScreen(), size_);
407 } 407 }
408 408
409 void BrowserViewRenderer::DidInitializeCompositor( 409 void BrowserViewRenderer::DidInitializeCompositor(
410 content::SynchronousCompositor* compositor) { 410 content::SynchronousCompositor* compositor) {
411 TRACE_EVENT0("android_webview", 411 TRACE_EVENT0("android_webview",
412 "BrowserViewRenderer::DidInitializeCompositor"); 412 "BrowserViewRenderer::DidInitializeCompositor");
(...skipping 333 matching lines...) Expand 10 before | Expand all | Expand 10 after
746 base::StringAppendF(&str, 746 base::StringAppendF(&str,
747 "overscroll_rounding_error_: %s ", 747 "overscroll_rounding_error_: %s ",
748 overscroll_rounding_error_.ToString().c_str()); 748 overscroll_rounding_error_.ToString().c_str());
749 base::StringAppendF( 749 base::StringAppendF(
750 &str, "on_new_picture_enable: %d ", on_new_picture_enable_); 750 &str, "on_new_picture_enable: %d ", on_new_picture_enable_);
751 base::StringAppendF(&str, "clear_view: %d ", clear_view_); 751 base::StringAppendF(&str, "clear_view: %d ", clear_view_);
752 return str; 752 return str;
753 } 753 }
754 754
755 } // namespace android_webview 755 } // namespace android_webview
OLDNEW
« no previous file with comments | « no previous file | android_webview/browser/shared_renderer_state.cc » ('j') | android_webview/browser/shared_renderer_state.cc » ('J')

Powered by Google App Engine
This is Rietveld 408576698