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

Side by Side Diff: third_party/WebKit/Source/core/layout/LayoutObject.h

Issue 2732573003: Skip paint property update and visual rect update if no geometry change (Closed)
Patch Set: - 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) 2000 Lars Knoll (knoll@kde.org) 2 * Copyright (C) 2000 Lars Knoll (knoll@kde.org)
3 * (C) 2000 Antti Koivisto (koivisto@kde.org) 3 * (C) 2000 Antti Koivisto (koivisto@kde.org)
4 * (C) 2000 Dirk Mueller (mueller@kde.org) 4 * (C) 2000 Dirk Mueller (mueller@kde.org)
5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com) 5 * (C) 2004 Allan Sandfeld Jensen (kde@carewolf.com)
6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc. 6 * Copyright (C) 2003, 2004, 2005, 2006, 2007, 2008, 2009, 2012 Apple Inc.
7 * All rights reserved. 7 * All rights reserved.
8 * Copyright (C) 2009 Google Inc. All rights reserved. 8 * Copyright (C) 2009 Google Inc. All rights reserved.
9 * 9 *
10 * This library is free software; you can redistribute it and/or 10 * This library is free software; you can redistribute it and/or
(...skipping 1773 matching lines...) Expand 10 before | Expand all | Expand 10 after
1784 DCHECK_EQ(m_layoutObject.document().lifecycle().state(), 1784 DCHECK_EQ(m_layoutObject.document().lifecycle().state(),
1785 DocumentLifecycle::InPrePaint); 1785 DocumentLifecycle::InPrePaint);
1786 m_layoutObject.clearPaintInvalidationFlags(); 1786 m_layoutObject.clearPaintInvalidationFlags();
1787 m_layoutObject.m_bitfields.setNeedsPaintPropertyUpdate(false); 1787 m_layoutObject.m_bitfields.setNeedsPaintPropertyUpdate(false);
1788 m_layoutObject.m_bitfields.setSubtreeNeedsPaintPropertyUpdate(false); 1788 m_layoutObject.m_bitfields.setSubtreeNeedsPaintPropertyUpdate(false);
1789 m_layoutObject.m_bitfields.setDescendantNeedsPaintPropertyUpdate(false); 1789 m_layoutObject.m_bitfields.setDescendantNeedsPaintPropertyUpdate(false);
1790 } 1790 }
1791 void setShouldDoFullPaintInvalidation(PaintInvalidationReason reason) { 1791 void setShouldDoFullPaintInvalidation(PaintInvalidationReason reason) {
1792 m_layoutObject.setShouldDoFullPaintInvalidation(reason); 1792 m_layoutObject.setShouldDoFullPaintInvalidation(reason);
1793 } 1793 }
1794 void setShouldDoFullPaintInvalidationWithoutGeometryChange(
1795 PaintInvalidationReason reason) {
1796 m_layoutObject.setShouldDoFullPaintInvalidationWithoutGeometryChange(
1797 reason);
1798 }
1794 void setBackgroundChangedSinceLastPaintInvalidation() { 1799 void setBackgroundChangedSinceLastPaintInvalidation() {
1795 m_layoutObject.setBackgroundChangedSinceLastPaintInvalidation(); 1800 m_layoutObject.setBackgroundChangedSinceLastPaintInvalidation();
1796 } 1801 }
1797 void ensureIsReadyForPaintInvalidation() { 1802 void ensureIsReadyForPaintInvalidation() {
1798 m_layoutObject.ensureIsReadyForPaintInvalidation(); 1803 m_layoutObject.ensureIsReadyForPaintInvalidation();
1799 } 1804 }
1800 1805
1801 // The following setters store the current values as calculated during the 1806 // The following setters store the current values as calculated during the
1802 // pre-paint tree walk. TODO(wangxianzhu): Add check of lifecycle states. 1807 // pre-paint tree walk. TODO(wangxianzhu): Add check of lifecycle states.
1803 void setVisualRect(const LayoutRect& r) { m_layoutObject.setVisualRect(r); } 1808 void setVisualRect(const LayoutRect& r) { m_layoutObject.setVisualRect(r); }
(...skipping 1054 matching lines...) Expand 10 before | Expand all | Expand 10 after
2858 CORE_EXPORT void showLineTree(const blink::LayoutObject*); 2863 CORE_EXPORT void showLineTree(const blink::LayoutObject*);
2859 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1); 2864 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1);
2860 // We don't make object2 an optional parameter so that showLayoutTree 2865 // We don't make object2 an optional parameter so that showLayoutTree
2861 // can be called from gdb easily. 2866 // can be called from gdb easily.
2862 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1, 2867 CORE_EXPORT void showLayoutTree(const blink::LayoutObject* object1,
2863 const blink::LayoutObject* object2); 2868 const blink::LayoutObject* object2);
2864 2869
2865 #endif 2870 #endif
2866 2871
2867 #endif // LayoutObject_h 2872 #endif // LayoutObject_h
OLDNEW
« no previous file with comments | « third_party/WebKit/Source/core/frame/FrameView.cpp ('k') | third_party/WebKit/Source/core/layout/LayoutObject.cpp » ('j') | no next file with comments »

Powered by Google App Engine
This is Rietveld 408576698