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

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

Issue 1492143002: Add support for printing multicol containers, and enable it. (Closed) Base URL: https://chromium.googlesource.com/chromium/src.git@master
Patch Set: Okay, bots. You won this round! Created 5 years 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 * Copyright (C) 2006 Apple Computer, Inc. 3 * Copyright (C) 2006 Apple Computer, Inc.
4 * 4 *
5 * This library is free software; you can redistribute it and/or 5 * This library is free software; you can redistribute it and/or
6 * modify it under the terms of the GNU Library General Public 6 * modify it under the terms of the GNU Library General Public
7 * License as published by the Free Software Foundation; either 7 * License as published by the Free Software Foundation; either
8 * version 2 of the License, or (at your option) any later version. 8 * version 2 of the License, or (at your option) any later version.
9 * 9 *
10 * This library is distributed in the hope that it will be useful, 10 * This library is distributed in the hope that it will be useful,
(...skipping 22 matching lines...) Expand all
33 #include "platform/heap/Handle.h" 33 #include "platform/heap/Handle.h"
34 #include "platform/scroll/ScrollableArea.h" 34 #include "platform/scroll/ScrollableArea.h"
35 #include "wtf/OwnPtr.h" 35 #include "wtf/OwnPtr.h"
36 36
37 namespace blink { 37 namespace blink {
38 38
39 class FrameView; 39 class FrameView;
40 class PaintLayerCompositor; 40 class PaintLayerCompositor;
41 class LayoutQuote; 41 class LayoutQuote;
42 class LayoutMedia; 42 class LayoutMedia;
43 class ViewFragmentationContext;
43 44
44 // LayoutView is the root of the layout tree and the Document's LayoutObject. 45 // LayoutView is the root of the layout tree and the Document's LayoutObject.
45 // 46 //
46 // It corresponds to the CSS concept of 'initial containing block' (or ICB). 47 // It corresponds to the CSS concept of 'initial containing block' (or ICB).
47 // http://www.w3.org/TR/CSS2/visudet.html#containing-block-details 48 // http://www.w3.org/TR/CSS2/visudet.html#containing-block-details
48 // 49 //
49 // Its dimensions match that of the layout viewport. This viewport is used to 50 // Its dimensions match that of the layout viewport. This viewport is used to
50 // size elements, in particular fixed positioned elements. 51 // size elements, in particular fixed positioned elements.
51 // LayoutView is always at position (0,0) relative to the document (and so isn't 52 // LayoutView is always at position (0,0) relative to the document (and so isn't
52 // necessarily in view). 53 // necessarily in view).
(...skipping 82 matching lines...) Expand 10 before | Expand all | Expand 10 after
135 LayoutRect viewRect() const override; 136 LayoutRect viewRect() const override;
136 LayoutRect overflowClipRect(const LayoutPoint& location, OverlayScrollbarSiz eRelevancy = IgnoreOverlayScrollbarSize) const override; 137 LayoutRect overflowClipRect(const LayoutPoint& location, OverlayScrollbarSiz eRelevancy = IgnoreOverlayScrollbarSize) const override;
137 138
138 bool shouldDoFullPaintInvalidationForNextLayout() const; 139 bool shouldDoFullPaintInvalidationForNextLayout() const;
139 bool doingFullPaintInvalidation() const; 140 bool doingFullPaintInvalidation() const;
140 141
141 LayoutState* layoutState() const { return m_layoutState; } 142 LayoutState* layoutState() const { return m_layoutState; }
142 143
143 void updateHitTestResult(HitTestResult&, const LayoutPoint&) override; 144 void updateHitTestResult(HitTestResult&, const LayoutPoint&) override;
144 145
146 ViewFragmentationContext* fragmentationContext() const { return m_fragmentat ionContext.get(); }
147
145 LayoutUnit pageLogicalHeight() const { return m_pageLogicalHeight; } 148 LayoutUnit pageLogicalHeight() const { return m_pageLogicalHeight; }
146 void setPageLogicalHeight(LayoutUnit height) 149 void setPageLogicalHeight(LayoutUnit height)
147 { 150 {
148 if (m_pageLogicalHeight != height) { 151 if (m_pageLogicalHeight != height) {
149 m_pageLogicalHeight = height; 152 m_pageLogicalHeight = height;
150 m_pageLogicalHeightChanged = true; 153 m_pageLogicalHeightChanged = true;
151 } 154 }
152 } 155 }
153 bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; } 156 bool pageLogicalHeightChanged() const { return m_pageLogicalHeightChanged; }
154 157
(...skipping 100 matching lines...) Expand 10 before | Expand all | Expand 10 after
255 // Outside of printing, this is 0. 258 // Outside of printing, this is 0.
256 LayoutUnit m_pageLogicalHeight; 259 LayoutUnit m_pageLogicalHeight;
257 bool m_pageLogicalHeightChanged; 260 bool m_pageLogicalHeightChanged;
258 261
259 // LayoutState is an optimization used during layout. 262 // LayoutState is an optimization used during layout.
260 // |m_layoutState| will be nullptr outside of layout. 263 // |m_layoutState| will be nullptr outside of layout.
261 // 264 //
262 // See the class comment for more details. 265 // See the class comment for more details.
263 LayoutState* m_layoutState; 266 LayoutState* m_layoutState;
264 267
268 OwnPtr<ViewFragmentationContext> m_fragmentationContext;
265 OwnPtr<PaintLayerCompositor> m_compositor; 269 OwnPtr<PaintLayerCompositor> m_compositor;
266 RefPtr<IntervalArena> m_intervalArena; 270 RefPtr<IntervalArena> m_intervalArena;
267 271
268 LayoutQuote* m_layoutQuoteHead; 272 LayoutQuote* m_layoutQuoteHead;
269 unsigned m_layoutCounterCount; 273 unsigned m_layoutCounterCount;
270 274
271 unsigned m_hitTestCount; 275 unsigned m_hitTestCount;
272 unsigned m_hitTestCacheHits; 276 unsigned m_hitTestCacheHits;
273 OwnPtrWillBePersistent<HitTestCache> m_hitTestCache; 277 OwnPtrWillBePersistent<HitTestCache> m_hitTestCache;
274 278
(...skipping 24 matching lines...) Expand all
299 m_paintInvalidationState->m_cachedOffsetsEnabled = true; 303 m_paintInvalidationState->m_cachedOffsetsEnabled = true;
300 } 304 }
301 private: 305 private:
302 const PaintInvalidationState* m_paintInvalidationState; 306 const PaintInvalidationState* m_paintInvalidationState;
303 bool m_didDisable; 307 bool m_didDisable;
304 }; 308 };
305 309
306 } // namespace blink 310 } // namespace blink
307 311
308 #endif // LayoutView_h 312 #endif // LayoutView_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698