OLD | NEW |
(Empty) | |
| 1 /* |
| 2 * Copyright (C) 2013 Google Inc. All rights reserved. |
| 3 * |
| 4 * Redistribution and use in source and binary forms, with or without |
| 5 * modification, are permitted provided that the following conditions are |
| 6 * met: |
| 7 * |
| 8 * * Redistributions of source code must retain the above copyright |
| 9 * notice, this list of conditions and the following disclaimer. |
| 10 * * Redistributions in binary form must reproduce the above |
| 11 * copyright notice, this list of conditions and the following disclaimer |
| 12 * in the documentation and/or other materials provided with the |
| 13 * distribution. |
| 14 * * Neither the name of Google Inc. nor the names of its |
| 15 * contributors may be used to endorse or promote products derived from |
| 16 * this software without specific prior written permission. |
| 17 * |
| 18 * THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS |
| 19 * "AS IS" AND ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT |
| 20 * LIMITED TO, THE IMPLIED WARRANTIES OF MERCHANTABILITY AND FITNESS FOR |
| 21 * A PARTICULAR PURPOSE ARE DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT |
| 22 * OWNER OR CONTRIBUTORS BE LIABLE FOR ANY DIRECT, INDIRECT, INCIDENTAL, |
| 23 * SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES (INCLUDING, BUT NOT |
| 24 * LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES; LOSS OF USE, |
| 25 * DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON ANY |
| 26 * THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT |
| 27 * (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE |
| 28 * OF THIS SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE. |
| 29 */ |
| 30 |
| 31 /* |
| 32 * CodeGeneratorInstrumentation.py uses this file as a source to generate |
| 33 * InspectorInstrumentationInl.h and InspectorInstrumentationImpl.cpp |
| 34 * |
| 35 * The code below is not a correct IDL but a mix of IDL and C++. |
| 36 * |
| 37 * The syntax for an instrumentation method is as follows: |
| 38 * |
| 39 * [methodAttributes] returnValue methodName([paramAttributes] paramList) |
| 40 * |
| 41 * Where: |
| 42 * methodAttributes - optional list of method attributes. |
| 43 * Attributes containing "=" are code generation options: |
| 44 * Inline=Custom - do not generate the public inline method. |
| 45 * Inline=FastReturn - return early from the inline method if there are
no frontends. |
| 46 * Inline=Forward - generate a simple forwarding inline method that doe
s not |
| 47 modify the parameter list (implies Inline=FastRetur
n) |
| 48 * Attributes without "=" are the names of the agents to be invoked. |
| 49 * Examples: DOM, Page, Debugger. |
| 50 * |
| 51 * paramAttributes - options list of attributes controlling the parameters hand
ling. |
| 52 * Keep - pass first parameter (used to access the InstrumentingAgents inst
ance) to agents. |
| 53 * |
| 54 * returnValue: C++ return value. Only "void" and "InspectorInstrumentationCook
ie" are supported. |
| 55 * |
| 56 * methodName: C++ name for the public instrumentation method and agents method
s. |
| 57 * |
| 58 * paramList: C++ parameter list with optional names. Names will be deduced fro
m types if omitted but you have to |
| 59 * specify explicit names for multiple parameters of the same type. |
| 60 */ |
| 61 |
| 62 interface InspectorInstrumentation { |
| 63 [Page, Inspector, PageDebugger, PageRuntime] |
| 64 void didClearWindowObjectInWorld([Keep] Frame*, DOMWrapperWorld*); |
| 65 |
| 66 [DOMDebugger, Inline=FastReturn] |
| 67 void willInsertDOMNode(Document*, Node* parent); |
| 68 |
| 69 [DOM, DOMDebugger, Inline=FastReturn] |
| 70 void didInsertDOMNode(Document*, Node*); |
| 71 |
| 72 [DOMDebugger, DOM, Inline=FastReturn] |
| 73 void willRemoveDOMNode(Document* document, Node*); |
| 74 |
| 75 [DOMDebugger, DOM, Inline=FastReturn] |
| 76 void willModifyDOMAttr(Document*, Element*, const AtomicString& oldValue, co
nst AtomicString& newValue); |
| 77 |
| 78 [DOM, Inline=FastReturn] |
| 79 void didModifyDOMAttr(Document*, Element*, const AtomicString& name, const A
tomicString& value); |
| 80 |
| 81 [DOM, Inline=FastReturn] |
| 82 void didRemoveDOMAttr(Document*, Element*, const AtomicString& name); |
| 83 |
| 84 [DOM, Inline=FastReturn] |
| 85 void characterDataModified(Document*, CharacterData*); |
| 86 |
| 87 [DOM, DOMDebugger, Inline=FastReturn] |
| 88 void didInvalidateStyleAttr(Document*, Node*); |
| 89 |
| 90 [CSS, Inline=FastReturn] |
| 91 void activeStyleSheetsUpdated([Keep] Document*, const Vector<RefPtr<StyleShe
et> >& newSheets); |
| 92 |
| 93 [Console] |
| 94 void frameWindowDiscarded(Frame*, DOMWindow* domWindow); |
| 95 |
| 96 [CSS, Inline=FastReturn] |
| 97 void mediaQueryResultChanged(Document*); |
| 98 |
| 99 [DOM, Inline=FastReturn] |
| 100 void didPushShadowRoot([Keep] Element* host, ShadowRoot*); |
| 101 |
| 102 [DOM, Inline=FastReturn] |
| 103 void willPopShadowRoot([Keep] Element* host, ShadowRoot*); |
| 104 |
| 105 [CSS, Inline=FastReturn] |
| 106 void didCreateNamedFlow([Keep] Document*, NamedFlow*); |
| 107 |
| 108 [CSS, Inline=FastReturn] |
| 109 void willRemoveNamedFlow([Keep] Document*, NamedFlow*); |
| 110 |
| 111 [CSS, Inline=FastReturn] |
| 112 void didUpdateRegionLayout([Keep] Document*, NamedFlow*); |
| 113 |
| 114 [DOMDebugger, Inline=FastReturn] |
| 115 void willSendXMLHttpRequest(ScriptExecutionContext*, const String& url); |
| 116 |
| 117 [Timeline, Inline=FastReturn] |
| 118 void didScheduleResourceRequest([Keep] Document*, const String& url); |
| 119 |
| 120 [DOMDebugger, Timeline, Inline=FastReturn] |
| 121 void didInstallTimer([Keep] ScriptExecutionContext*, int timerId, int timeou
t, bool singleShot); |
| 122 |
| 123 [DOMDebugger, Timeline, Inline=FastReturn] |
| 124 void didRemoveTimer([Keep] ScriptExecutionContext*, int timerId); |
| 125 |
| 126 [Timeline, Inline=FastReturn] |
| 127 InspectorInstrumentationCookie willCallFunction([Keep] ScriptExecutionContex
t*, const String& scriptName, int scriptLine); |
| 128 |
| 129 [Timeline, Inline=FastReturn] |
| 130 void didCallFunction(const InspectorInstrumentationCookie&); |
| 131 |
| 132 [Timeline, Inline=FastReturn] |
| 133 InspectorInstrumentationCookie willDispatchXHRReadyStateChangeEvent([Keep] S
criptExecutionContext*, XMLHttpRequest*); |
| 134 |
| 135 [Timeline, Inline=FastReturn] |
| 136 void didDispatchXHRReadyStateChangeEvent(const InspectorInstrumentationCooki
e&); |
| 137 |
| 138 [Timeline, Inline=FastReturn] |
| 139 InspectorInstrumentationCookie willDispatchEvent([Keep] Document*, const Eve
nt&, DOMWindow*, Node*, const EventPath&); |
| 140 |
| 141 [Timeline, Inline=FastReturn] |
| 142 void didDispatchEvent(const InspectorInstrumentationCookie&); |
| 143 |
| 144 [DOMDebugger, Inline=FastReturn] |
| 145 InspectorInstrumentationCookie willHandleEvent(ScriptExecutionContext*, Even
t*); |
| 146 |
| 147 [Debugger, Inline=FastReturn] |
| 148 void didHandleEvent(const InspectorInstrumentationCookie&); |
| 149 |
| 150 [Timeline, Inline=FastReturn] |
| 151 InspectorInstrumentationCookie willDispatchEventOnWindow(Frame*, const Event
&, DOMWindow*); |
| 152 |
| 153 [Timeline, Inline=FastReturn] |
| 154 void didDispatchEventOnWindow(const InspectorInstrumentationCookie&); |
| 155 |
| 156 [Timeline, Inline=FastReturn] |
| 157 InspectorInstrumentationCookie willEvaluateScript([Keep] Frame*, const Strin
g& url, int lineNumber); |
| 158 |
| 159 [Timeline, Inline=FastReturn] |
| 160 void didEvaluateScript(const InspectorInstrumentationCookie&); |
| 161 |
| 162 [Page, Inline=FastReturn] |
| 163 void scriptsEnabled(Page*, bool isEnabled); |
| 164 |
| 165 [PageRuntime, Inline=FastReturn] |
| 166 void didCreateIsolatedContext([Keep] Frame*, ScriptState*, SecurityOrigin*); |
| 167 |
| 168 [DOMDebugger, Timeline, Inline=FastReturn] |
| 169 InspectorInstrumentationCookie willFireTimer([Keep] ScriptExecutionContext*,
int timerId); |
| 170 |
| 171 [Debugger, Timeline, Inline=FastReturn] |
| 172 void didFireTimer(const InspectorInstrumentationCookie&); |
| 173 |
| 174 [Timeline, Inline=FastReturn] |
| 175 void didInvalidateLayout([Keep] Frame*); |
| 176 |
| 177 [Timeline, Inline=FastReturn] |
| 178 InspectorInstrumentationCookie willLayout([Keep] Frame*); |
| 179 |
| 180 [Timeline, Page, Inline=FastReturn] |
| 181 void didLayout(const InspectorInstrumentationCookie&, RenderObject* root); |
| 182 |
| 183 [Page, Inline=FastReturn] |
| 184 void didScroll(Page*); |
| 185 |
| 186 [Page, Inline=FastReturn] |
| 187 void didResizeMainFrame(Page*); |
| 188 |
| 189 [Timeline, Inline=FastReturn] |
| 190 InspectorInstrumentationCookie willDispatchXHRLoadEvent([Keep] ScriptExecuti
onContext*, XMLHttpRequest*); |
| 191 |
| 192 [Timeline, Inline=FastReturn] |
| 193 void didDispatchXHRLoadEvent(const InspectorInstrumentationCookie&); |
| 194 |
| 195 [Timeline, Inline=FastReturn] |
| 196 void willScrollLayer([Keep] Frame*); |
| 197 |
| 198 [Timeline, Inline=FastReturn] |
| 199 void didScrollLayer(Frame*); |
| 200 |
| 201 [Timeline, Inline=FastReturn] |
| 202 void willPaint([Keep] RenderObject*); |
| 203 |
| 204 [Timeline, Page, Inline=FastReturn] |
| 205 void didPaint([Keep] RenderObject*, GraphicsContext*, const LayoutRect&); |
| 206 |
| 207 [Resource, Timeline, Inline=FastReturn] |
| 208 InspectorInstrumentationCookie willRecalculateStyle([Keep] Document*); |
| 209 |
| 210 [Timeline, Resource, Page, Inline=FastReturn] |
| 211 void didRecalculateStyle(const InspectorInstrumentationCookie&); |
| 212 |
| 213 [Timeline, Inline=FastReturn] |
| 214 void didRecalculateStyleForElement(Element*); |
| 215 |
| 216 [Timeline, Resource, Inline=FastReturn] |
| 217 void didScheduleStyleRecalculation([Keep] Document*); |
| 218 |
| 219 [CSS, Inline=FastReturn] |
| 220 InspectorInstrumentationCookie willMatchRule(Document*, StyleRule*, Inspecto
rCSSOMWrappers&, DocumentStyleSheetCollection*); |
| 221 |
| 222 [CSS, Inline=FastReturn] |
| 223 void didMatchRule(const InspectorInstrumentationCookie&, bool matched); |
| 224 |
| 225 [CSS, Inline=Custom] |
| 226 InspectorInstrumentationCookie willProcessRule(Document* document, StyleRule
* rule, StyleResolver* styleResolver); |
| 227 |
| 228 [CSS, Inline=FastReturn] |
| 229 void didProcessRule(const InspectorInstrumentationCookie&); |
| 230 |
| 231 [Resource, Inline=FastReturn] |
| 232 void applyUserAgentOverride(Frame*, String* userAgent); |
| 233 |
| 234 [Page, Inline=FastReturn] |
| 235 void applyScreenWidthOverride(Frame*, long* width); |
| 236 |
| 237 [Page, Inline=FastReturn] |
| 238 void applyScreenHeightOverride(Frame*, long* height); |
| 239 |
| 240 [Page, Inline=FastReturn] |
| 241 void applyEmulatedMedia(Frame*, String* media); |
| 242 |
| 243 [Timeline, Resource] |
| 244 void willSendRequest(Frame*, unsigned long identifier, DocumentLoader*, Reso
urceRequest&, const ResourceResponse& redirectResponse); |
| 245 |
| 246 void continueAfterPingLoader(Frame*, unsigned long identifier, DocumentLoade
r*, ResourceRequest&, const ResourceResponse&); |
| 247 |
| 248 [Resource] |
| 249 void markResourceAsCached(Page*, unsigned long identifier); |
| 250 |
| 251 [Timeline, Inline=FastReturn] |
| 252 InspectorInstrumentationCookie willReceiveResourceData([Keep] Frame*, unsign
ed long identifier, int length); |
| 253 |
| 254 [Timeline, Inline=FastReturn] |
| 255 void didReceiveResourceData(const InspectorInstrumentationCookie&); |
| 256 |
| 257 [Timeline] |
| 258 InspectorInstrumentationCookie willReceiveResourceResponse([Keep] Frame*, un
signed long identifier, const ResourceResponse&); |
| 259 |
| 260 [Timeline, Resource, Console] // Console should come AFTER Resource notifica
tion, front-end relies on this. |
| 261 void didReceiveResourceResponse(const InspectorInstrumentationCookie&, unsig
ned long identifier, DocumentLoader*, const ResourceResponse&, ResourceLoader*); |
| 262 |
| 263 [Inline=Forward] |
| 264 void continueAfterXFrameOptionsDenied(Frame* frame, DocumentLoader* loader,
unsigned long identifier, const ResourceResponse& r); |
| 265 |
| 266 [Inline=Forward] |
| 267 void continueWithPolicyDownload(Frame* frame, DocumentLoader* loader, unsign
ed long identifier, const ResourceResponse& r); |
| 268 |
| 269 [Inline=Forward] |
| 270 void continueWithPolicyIgnore(Frame* frame, DocumentLoader* loader, unsigned
long identifier, const ResourceResponse& r); |
| 271 |
| 272 [Resource] |
| 273 void didReceiveData(Frame*, unsigned long identifier, const char* data, int
dataLength, int encodedDataLength); |
| 274 |
| 275 [Timeline, Resource] |
| 276 void didFinishLoading(Frame* frame, unsigned long identifier, DocumentLoader
*, double finishTime); |
| 277 |
| 278 [Timeline, Resource, Console] // Console should come AFTER Resource notifica
tion, front-end relies on this. |
| 279 void didFailLoading(Frame* frame, unsigned long identifier, DocumentLoader*,
const ResourceError&); |
| 280 |
| 281 [Resource] |
| 282 void documentThreadableLoaderStartedLoadingForClient(ScriptExecutionContext*
, unsigned long identifier, ThreadableLoaderClient* client); |
| 283 |
| 284 [Resource] |
| 285 void willLoadXHR(ScriptExecutionContext*, ThreadableLoaderClient* client, co
nst String& method, const KURL& url, bool async, PassRefPtr<FormData>, const HTT
PHeaderMap& headers, bool includeCredentials); |
| 286 |
| 287 [Resource] |
| 288 void didFailXHRLoading(ScriptExecutionContext*, ThreadableLoaderClient* clie
nt); |
| 289 |
| 290 [Console, Resource] |
| 291 void didFinishXHRLoading(ScriptExecutionContext*, ThreadableLoaderClient* cl
ient, unsigned long identifier, const String& sourceString, const String& url, c
onst String& sendURL, unsigned sendLineNumber); |
| 292 |
| 293 [Resource] |
| 294 void didReceiveXHRResponse(ScriptExecutionContext*, unsigned long identifier
); |
| 295 |
| 296 [Resource] |
| 297 void willLoadXHRSynchronously(ScriptExecutionContext*); |
| 298 |
| 299 [Resource] |
| 300 void didLoadXHRSynchronously(ScriptExecutionContext*); |
| 301 |
| 302 [Resource] |
| 303 void scriptImported(ScriptExecutionContext*, unsigned long identifier, const
String& sourceString); |
| 304 |
| 305 [Debugger] |
| 306 void scriptExecutionBlockedByCSP(ScriptExecutionContext*, const String& dire
ctiveText); |
| 307 |
| 308 [Resource] |
| 309 void didReceiveScriptResponse(ScriptExecutionContext*, unsigned long identif
ier); |
| 310 |
| 311 [Timeline, Inspector, DOM, Page] |
| 312 void domContentLoadedEventFired([Keep] Frame*); |
| 313 |
| 314 [DOM, Timeline, Page] |
| 315 void loadEventFired([Keep] Frame*); |
| 316 |
| 317 [Canvas, Page, CSS] |
| 318 void frameDetachedFromParent([Keep] Frame*); |
| 319 |
| 320 [Console, Resource, CSS, Database, DOM, LayerTree, Inspector, Canvas, Page] |
| 321 void didCommitLoad([Keep] Frame*, DocumentLoader*); |
| 322 |
| 323 [DOM, Inline=FastReturn] |
| 324 void frameDocumentUpdated([Keep] Frame*); |
| 325 |
| 326 [Page] |
| 327 void loaderDetachedFromFrame(Frame*, DocumentLoader*); |
| 328 |
| 329 [Page] |
| 330 void frameStartedLoading([Keep] Frame*); |
| 331 |
| 332 [Page] |
| 333 void frameStoppedLoading([Keep] Frame*); |
| 334 |
| 335 [Page] |
| 336 void frameScheduledNavigation([Keep] Frame*, double delay); |
| 337 |
| 338 [Page] |
| 339 void frameClearedScheduledNavigation([Keep] Frame*); |
| 340 |
| 341 [Page, Inline=FastReturn] |
| 342 InspectorInstrumentationCookie willRunJavaScriptDialog(Page*, const String&
message); |
| 343 |
| 344 [Page, Inline=FastReturn] |
| 345 void didRunJavaScriptDialog(const InspectorInstrumentationCookie&); |
| 346 |
| 347 [Inline=Forward] |
| 348 void willDestroyCachedResource(CachedResource* cachedResource); |
| 349 |
| 350 [Timeline, Inline=FastReturn] |
| 351 InspectorInstrumentationCookie willWriteHTML([Keep] Document*, unsigned star
tLine); |
| 352 |
| 353 [Timeline, Inline=FastReturn] |
| 354 void didWriteHTML(const InspectorInstrumentationCookie&, unsigned endLine); |
| 355 |
| 356 [DOMDebugger, Timeline] |
| 357 void didRequestAnimationFrame([Keep] Document*, int callbackId); |
| 358 |
| 359 [DOMDebugger, Timeline] |
| 360 void didCancelAnimationFrame([Keep] Document*, int callbackId); |
| 361 |
| 362 [DOMDebugger, Timeline] |
| 363 InspectorInstrumentationCookie willFireAnimationFrame([Keep] Document*, int
callbackId); |
| 364 |
| 365 [Timeline, Inline=FastReturn] |
| 366 void didFireAnimationFrame(const InspectorInstrumentationCookie&); |
| 367 |
| 368 [Console, Debugger, Inline=Custom] // FIXME: Drop this once we no longer ge
nerate stacks outside of Inspector. |
| 369 void addMessageToConsole(Page* page, MessageSource source, MessageType type,
MessageLevel level, const String& message, PassRefPtr<ScriptCallStack> callStac
k, unsigned long requestIdentifier = 0); |
| 370 |
| 371 [Console, Debugger, Inline=Custom] |
| 372 void addMessageToConsole(Page* page, MessageSource source, MessageType type,
MessageLevel level, const String& message, ScriptState* state, PassRefPtr<Scrip
tArguments> arguments, unsigned long requestIdentifier = 0); |
| 373 |
| 374 [Console, Inline=Custom] |
| 375 void addMessageToConsole(Page* page, MessageSource source, MessageType type,
MessageLevel level, const String& message, const String& scriptId, unsigned lin
eNumber, ScriptState* state = 0, unsigned long requestIdentifier = 0); |
| 376 |
| 377 [Console, Inline=Custom] |
| 378 void consoleCount(Page* page, ScriptState* state, PassRefPtr<ScriptArguments
> arguments); |
| 379 |
| 380 [Timeline, Console, Inline=Custom] |
| 381 void startConsoleTiming([Keep] Frame* frame, const String& title); |
| 382 |
| 383 [Console, Timeline, Inline=Custom] |
| 384 void stopConsoleTiming([Keep] Frame* frame, const String& title, PassRefPtr<
ScriptCallStack> stack); |
| 385 |
| 386 [Timeline, Inline=Custom] |
| 387 void consoleTimeStamp([Keep] Frame* frame, PassRefPtr<ScriptArguments> argum
ents); |
| 388 |
| 389 [Profiler, Inline=Custom] |
| 390 void addStartProfilingMessageToConsole(Page* page, const String& title, unsi
gned lineNumber, const String& sourceURL); |
| 391 |
| 392 [Profiler, Inline=Custom] |
| 393 void addProfile(Page* page, PassRefPtr<ScriptProfile> profile, PassRefPtr<Sc
riptCallStack> callStack); |
| 394 |
| 395 [Database, Inline=Custom] |
| 396 void didOpenDatabase(ScriptExecutionContext* context, PassRefPtr<Database> d
atabase, const String& domain, const String& name, const String& version); |
| 397 |
| 398 [DOMStorage, Inline=FastReturn] |
| 399 void didDispatchDOMStorageEvent(Page* page, const String& key, const String&
oldValue, const String& newValue, StorageType storageType, SecurityOrigin* secu
rityOrigin); |
| 400 |
| 401 [Worker] |
| 402 void didStartWorkerContext(ScriptExecutionContext*, WorkerContextProxy* prox
y, const KURL& url); |
| 403 |
| 404 [WorkerRuntime] |
| 405 void willEvaluateWorkerScript([Keep] WorkerContext* context, int workerThrea
dStartMode); |
| 406 |
| 407 [Worker] |
| 408 void workerContextTerminated(ScriptExecutionContext*, WorkerContextProxy* pr
oxy); |
| 409 |
| 410 [Resource, Timeline] |
| 411 void didCreateWebSocket([Keep] Document*, unsigned long identifier, const KU
RL& requestURL, const String& protocol); |
| 412 |
| 413 [Resource, Timeline] |
| 414 void willSendWebSocketHandshakeRequest([Keep] Document*, unsigned long ident
ifier, const WebSocketHandshakeRequest& request); |
| 415 |
| 416 [Resource, Timeline] |
| 417 void didReceiveWebSocketHandshakeResponse([Keep] Document*, unsigned long id
entifier, const WebSocketHandshakeResponse& response); |
| 418 |
| 419 [Resource, Timeline] |
| 420 void didCloseWebSocket([Keep] Document*, unsigned long identifier); |
| 421 |
| 422 [Resource] |
| 423 void didReceiveWebSocketFrame(Document*, unsigned long identifier, const Web
SocketFrame& frame); |
| 424 |
| 425 [Resource] |
| 426 void didSendWebSocketFrame(Document*, unsigned long identifier, const WebSoc
ketFrame& frame); |
| 427 |
| 428 [Resource] |
| 429 void didReceiveWebSocketFrameError(Document*, unsigned long identifier, cons
t String& errorMessage); |
| 430 |
| 431 [ApplicationCache, Inline=FastReturn] |
| 432 void networkStateChanged(Page*); |
| 433 |
| 434 [ApplicationCache, Inline=FastReturn] |
| 435 void updateApplicationCacheStatus([Keep] Frame*); |
| 436 |
| 437 [LayerTree] |
| 438 void layerTreeDidChange(Page*); |
| 439 |
| 440 [LayerTree] |
| 441 void renderLayerDestroyed(Page*, const RenderLayer*); |
| 442 |
| 443 [LayerTree] |
| 444 void pseudoElementDestroyed(Page*, PseudoElement*); |
| 445 } |
OLD | NEW |