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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutPart.cpp

Issue 2770123003: Replace ASSERT with DCHECK in core/layout/ excluding subdirs (Closed)
Patch Set: Split some DCHECKs and add DCHECK_ops wherever possible Created 3 years, 8 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 /* 1 /*
2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 1999 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Simon Hausmann <hausmann@kde.org> 3 * (C) 2000 Simon Hausmann <hausmann@kde.org>
4 * (C) 2000 Stefan Schimanski (1Stein@gmx.de) 4 * (C) 2000 Stefan Schimanski (1Stein@gmx.de)
5 * Copyright (C) 2004, 2005, 2006, 2009 Apple Inc. All rights reserved. 5 * Copyright (C) 2004, 2005, 2006, 2009 Apple Inc. All rights reserved.
6 * Copyright (C) Research In Motion Limited 2011. All rights reserved. 6 * Copyright (C) Research In Motion Limited 2011. All rights reserved.
7 * 7 *
8 * This library is free software; you can redistribute it and/or 8 * This library is free software; you can redistribute it and/or
9 * modify it under the terms of the GNU Library General Public 9 * modify it under the terms of the GNU Library General Public
10 * License as published by the Free Software Foundation; either 10 * License as published by the Free Software Foundation; either
(...skipping 26 matching lines...) Expand all
37 #include "core/plugins/PluginView.h" 37 #include "core/plugins/PluginView.h"
38 38
39 namespace blink { 39 namespace blink {
40 40
41 LayoutPart::LayoutPart(Element* element) 41 LayoutPart::LayoutPart(Element* element)
42 : LayoutReplaced(element), 42 : LayoutReplaced(element),
43 // Reference counting is used to prevent the part from being destroyed 43 // Reference counting is used to prevent the part from being destroyed
44 // while inside the FrameViewBase code, which might not be able to handle 44 // while inside the FrameViewBase code, which might not be able to handle
45 // that. 45 // that.
46 m_refCount(1) { 46 m_refCount(1) {
47 ASSERT(element); 47 DCHECK(element);
48 frameView()->addPart(this); 48 frameView()->addPart(this);
49 setInline(false); 49 setInline(false);
50 } 50 }
51 51
52 void LayoutPart::deref() { 52 void LayoutPart::deref() {
53 if (--m_refCount <= 0) 53 if (--m_refCount <= 0)
54 delete this; 54 delete this;
55 } 55 }
56 56
57 void LayoutPart::willBeDestroyed() { 57 void LayoutPart::willBeDestroyed() {
(...skipping 20 matching lines...) Expand all
78 // 78 //
79 // But, we've told the system we've destroyed the layoutObject, which happens 79 // But, we've told the system we've destroyed the layoutObject, which happens
80 // when the DOM node is destroyed. So there is a good change the DOM node this 80 // when the DOM node is destroyed. So there is a good change the DOM node this
81 // object points too is invalid, so we have to clear the node so we make sure 81 // object points too is invalid, so we have to clear the node so we make sure
82 // we don't access it in the future. 82 // we don't access it in the future.
83 clearNode(); 83 clearNode();
84 deref(); 84 deref();
85 } 85 }
86 86
87 LayoutPart::~LayoutPart() { 87 LayoutPart::~LayoutPart() {
88 ASSERT(m_refCount <= 0); 88 DCHECK_LE(m_refCount, 0);
89 } 89 }
90 90
91 FrameViewBase* LayoutPart::frameViewBase() const { 91 FrameViewBase* LayoutPart::frameViewBase() const {
92 // Plugin FrameViewBases are stored in their DOM node. 92 // Plugin FrameViewBases are stored in their DOM node.
93 Element* element = toElement(node()); 93 Element* element = toElement(node());
94 94
95 if (element && element->isFrameOwnerElement()) 95 if (element && element->isFrameOwnerElement())
96 return toHTMLFrameOwnerElement(element)->ownedWidget(); 96 return toHTMLFrameOwnerElement(element)->ownedWidget();
97 97
98 return nullptr; 98 return nullptr;
(...skipping 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
165 accumulatedOffset, action); 165 accumulatedOffset, action);
166 } 166 }
167 167
168 // A hit test can never hit an off-screen element; only off-screen iframes are 168 // A hit test can never hit an off-screen element; only off-screen iframes are
169 // throttled; therefore, hit tests can skip descending into throttled iframes. 169 // throttled; therefore, hit tests can skip descending into throttled iframes.
170 if (toFrameView(frameViewBase())->shouldThrottleRendering()) { 170 if (toFrameView(frameViewBase())->shouldThrottleRendering()) {
171 return nodeAtPointOverFrameViewBase(result, locationInContainer, 171 return nodeAtPointOverFrameViewBase(result, locationInContainer,
172 accumulatedOffset, action); 172 accumulatedOffset, action);
173 } 173 }
174 174
175 ASSERT(document().lifecycle().state() >= DocumentLifecycle::CompositingClean); 175 DCHECK_GE(document().lifecycle().state(),
176 DocumentLifecycle::CompositingClean);
176 177
177 if (action == HitTestForeground) { 178 if (action == HitTestForeground) {
178 FrameView* childFrameView = toFrameView(frameViewBase()); 179 FrameView* childFrameView = toFrameView(frameViewBase());
179 LayoutViewItem childRootItem = childFrameView->layoutViewItem(); 180 LayoutViewItem childRootItem = childFrameView->layoutViewItem();
180 181
181 if (visibleToHitTestRequest(result.hitTestRequest()) && 182 if (visibleToHitTestRequest(result.hitTestRequest()) &&
182 !childRootItem.isNull()) { 183 !childRootItem.isNull()) {
183 LayoutPoint adjustedLocation = accumulatedOffset + location(); 184 LayoutPoint adjustedLocation = accumulatedOffset + location();
184 LayoutPoint contentOffset = LayoutPoint(borderLeft() + paddingLeft(), 185 LayoutPoint contentOffset = LayoutPoint(borderLeft() + paddingLeft(),
185 borderTop() + paddingTop()) - 186 borderTop() + paddingTop()) -
(...skipping 62 matching lines...) Expand 10 before | Expand all | Expand 10 after
248 toFrameView(frameViewBase)->recalculateCustomScrollbarStyle(); 249 toFrameView(frameViewBase)->recalculateCustomScrollbarStyle();
249 250
250 if (style()->visibility() != EVisibility::kVisible) { 251 if (style()->visibility() != EVisibility::kVisible) {
251 frameViewBase->hide(); 252 frameViewBase->hide();
252 } else { 253 } else {
253 frameViewBase->show(); 254 frameViewBase->show();
254 } 255 }
255 } 256 }
256 257
257 void LayoutPart::layout() { 258 void LayoutPart::layout() {
258 ASSERT(needsLayout()); 259 DCHECK(needsLayout());
259 LayoutAnalyzer::Scope analyzer(*this); 260 LayoutAnalyzer::Scope analyzer(*this);
260 clearNeedsLayout(); 261 clearNeedsLayout();
261 } 262 }
262 263
263 void LayoutPart::paint(const PaintInfo& paintInfo, 264 void LayoutPart::paint(const PaintInfo& paintInfo,
264 const LayoutPoint& paintOffset) const { 265 const LayoutPoint& paintOffset) const {
265 PartPainter(*this).paint(paintInfo, paintOffset); 266 PartPainter(*this).paint(paintInfo, paintOffset);
266 } 267 }
267 268
268 void LayoutPart::paintContents(const PaintInfo& paintInfo, 269 void LayoutPart::paintContents(const PaintInfo& paintInfo,
(...skipping 127 matching lines...) Expand 10 before | Expand all | Expand 10 after
396 } 397 }
397 398
398 bool LayoutPart::isThrottledFrameView() const { 399 bool LayoutPart::isThrottledFrameView() const {
399 if (!frameViewBase() || !frameViewBase()->isFrameView()) 400 if (!frameViewBase() || !frameViewBase()->isFrameView())
400 return false; 401 return false;
401 const FrameView* frameView = toFrameView(frameViewBase()); 402 const FrameView* frameView = toFrameView(frameViewBase());
402 return frameView->shouldThrottleRendering(); 403 return frameView->shouldThrottleRendering();
403 } 404 }
404 405
405 } // namespace blink 406 } // namespace blink
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/layout/LayoutPagedFlowThread.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutQuote.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698