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

Side by Side Diff: Source/core/page/Page.h

Issue 16896019: Replace RenderArena with PartitionAlloc. (Closed) Base URL: svn://svn.chromium.org/blink/trunk
Patch Set: Created 7 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 /* 1 /*
2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2013 Apple Inc. All rights reserv ed. 2 * Copyright (C) 2006, 2007, 2008, 2009, 2010, 2013 Apple Inc. All rights reserv ed.
3 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/) 3 * Copyright (C) 2008 Torch Mobile Inc. All rights reserved. (http://www.torchmo bile.com/)
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 66 matching lines...) Expand 10 before | Expand all | Expand 10 after
77 class ScrollableArea; 77 class ScrollableArea;
78 class ScrollingCoordinator; 78 class ScrollingCoordinator;
79 class Settings; 79 class Settings;
80 class StorageNamespace; 80 class StorageNamespace;
81 class ValidationMessageClient; 81 class ValidationMessageClient;
82 82
83 typedef uint64_t LinkHash; 83 typedef uint64_t LinkHash;
84 84
85 float deviceScaleFactor(Frame*); 85 float deviceScaleFactor(Frame*);
86 86
87 struct ArenaSize {
88 ArenaSize(size_t treeSize, size_t allocated)
89 : treeSize(treeSize)
90 , allocated(allocated)
91 {
92 }
93 size_t treeSize;
94 size_t allocated;
95 };
96
97 class Page : public Supplementable<Page> { 87 class Page : public Supplementable<Page> {
98 WTF_MAKE_NONCOPYABLE(Page); 88 WTF_MAKE_NONCOPYABLE(Page);
99 friend class Settings; 89 friend class Settings;
100 public: 90 public:
101 static void scheduleForcedStyleRecalcForAllPages(); 91 static void scheduleForcedStyleRecalcForAllPages();
102 92
103 // It is up to the platform to ensure that non-null clients are provided whe re required. 93 // It is up to the platform to ensure that non-null clients are provided whe re required.
104 struct PageClients { 94 struct PageClients {
105 WTF_MAKE_NONCOPYABLE(PageClients); WTF_MAKE_FAST_ALLOCATED; 95 WTF_MAKE_NONCOPYABLE(PageClients); WTF_MAKE_FAST_ALLOCATED;
106 public: 96 public:
107 PageClients(); 97 PageClients();
108 ~PageClients(); 98 ~PageClients();
109 99
110 ChromeClient* chromeClient; 100 ChromeClient* chromeClient;
111 ContextMenuClient* contextMenuClient; 101 ContextMenuClient* contextMenuClient;
112 EditorClient* editorClient; 102 EditorClient* editorClient;
113 DragClient* dragClient; 103 DragClient* dragClient;
114 InspectorClient* inspectorClient; 104 InspectorClient* inspectorClient;
115 BackForwardClient* backForwardClient; 105 BackForwardClient* backForwardClient;
116 }; 106 };
117 107
118 explicit Page(PageClients&); 108 explicit Page(PageClients&);
119 ~Page(); 109 ~Page();
120 110
121 ArenaSize renderTreeSize() const;
122
123 void setNeedsRecalcStyleInAllFrames(); 111 void setNeedsRecalcStyleInAllFrames();
124 112
125 RenderTheme* theme() const { return m_theme.get(); } 113 RenderTheme* theme() const { return m_theme.get(); }
126 114
127 ViewportArguments viewportArguments() const; 115 ViewportArguments viewportArguments() const;
128 116
129 static void refreshPlugins(bool reload); 117 static void refreshPlugins(bool reload);
130 PluginData* pluginData() const; 118 PluginData* pluginData() const;
131 119
132 EditorClient* editorClient() const { return m_editorClient; } 120 EditorClient* editorClient() const { return m_editorClient; }
(...skipping 215 matching lines...) Expand 10 before | Expand all | Expand 10 after
348 #endif 336 #endif
349 337
350 const OwnPtr<PageConsole> m_console; 338 const OwnPtr<PageConsole> m_console;
351 339
352 HashSet<MultisamplingChangedObserver*> m_multisamplingChangedObservers; 340 HashSet<MultisamplingChangedObserver*> m_multisamplingChangedObservers;
353 }; 341 };
354 342
355 } // namespace WebCore 343 } // namespace WebCore
356 344
357 #endif // Page_h 345 #endif // Page_h
OLDNEW

Powered by Google App Engine
This is Rietveld 408576698