98fdefdc715ad6b3a93994c6e0ac275b7856ee38
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-03-15  Simon Fraser  <simon.fraser@apple.com>
2
3         Reflected video elements hit assertion on Lion
4         https://bugs.webkit.org/show_bug.cgi?id=112490
5
6         Disable the new reflected video functionality added in r145915
7         on Lion because of a nasty re-entrancy problem. Tracked by bug 112490.
8
9         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
10         (PlatformCALayer::clone):
11
12 2013-03-15  Bem Jones-Bey  <bjonesbe@adobe.com>
13
14         [CSS Exclusions] shape-outside on floats for circle and ellipse shapes
15         https://bugs.webkit.org/show_bug.cgi?id=98673
16
17         Reviewed by Dirk Schulze.
18
19         Enable circles and ellipses for shape-outside on floats. Most of the
20         code already supports them, just needed to turn them on and add tests.
21
22         Tests: fast/exclusions/shape-outside-floats/shape-outside-floats-simple-circle.html
23                fast/exclusions/shape-outside-floats/shape-outside-floats-simple-ellipse.html
24
25         * rendering/ExclusionShapeOutsideInfo.cpp:
26         (WebCore::ExclusionShapeOutsideInfo::isEnabledFor): Enable circles and
27             ellipses. Also add a check for if the RenderBox is floating, since
28             that test should have been there all along, as shape outside is
29             only supported on floats for now.
30
31 2013-03-15  Christian Biesinger  <cbiesinger@chromium.org>
32
33         Convert old flexbox uses in html.css to new flexbox (non-<select>)
34         https://bugs.webkit.org/show_bug.cgi?id=110837
35
36         Reviewed by Ojan Vafai.
37
38         Covered by existing tests.
39
40         * rendering/RenderTextControlSingleLine.cpp:
41         (WebCore::RenderTextControlSingleLine::layout):
42         After we set our descendants' heights, we need to mark them for
43         layout.
44         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
45         Use new-flexbox style setters.
46
47         * css/html.css:
48         (input::-webkit-textfield-decoration-container):
49         (input[type="search"]::-webkit-search-cancel-button):
50         (input[type="search"]::-webkit-search-decoration):
51         (input[type="search"]::-webkit-search-results-decoration):
52         (input[type="search"]::-webkit-search-results-button):
53         (input::-webkit-inner-spin-button):
54         (input::-webkit-input-speech-button):
55         (textarea):
56         (input[type="file"]):
57         (input[type="color"]::-webkit-color-swatch-wrapper):
58         (input[type="color"]::-webkit-color-swatch):
59         (::-webkit-validation-bubble-message):
60         (::-webkit-validation-bubble-text-block):
61         * css/themeWin.css:
62         (input[type="search"]::-webkit-search-results-decoration):
63         (input[type="search"]::-webkit-search-results-button):
64         Convert -webkit-box to -webkit-flex and adjust related properties.
65         Notably switch to auto margins for centering the speech button as well
66         as the search result and cancel buttons to stay compatible with the
67         previous centering behaviour. This does not produce visible
68         differences but eliminates the render tree dump changes.
69         * html/TextFieldInputType.cpp:
70         (WebCore::TextFieldInputType::createShadowSubtree):
71         * html/shadow/TextControlInnerElements.cpp:
72         (WebCore::TextControlInnerContainer::TextControlInnerContainer):
73         (WebCore):
74         (WebCore::TextControlInnerContainer::create):
75         (WebCore::TextControlInnerContainer::createRenderer):
76         * html/shadow/TextControlInnerElements.h:
77         (TextControlInnerContainer):
78         (WebCore):
79         * rendering/RenderTextControl.cpp:
80         (WebCore::RenderTextControlInnerContainer::RenderTextControlInnerContainer):
81         (WebCore):
82         (WebCore::RenderTextControlInnerContainer::~RenderTextControlInnerContainer):
83         * rendering/RenderTextControl.h:
84         (WebCore):
85         (RenderTextControlInnerContainer):
86         Create a new DOM element & renderer type for the textfield-decoration
87         div (the direct child of the <input> in the shadow dom if we have a
88         special input field). This is necessary because new-flexbox uses a
89         different algorithm for calculating the baseline, which would
90         otherwise cause an <input> and an <input type=search> to not be
91         aligned with each other.
92         The new renderer just calls back to RenderBlock for calculating the
93         baseline.
94         * rendering/RenderTextControlSingleLine.cpp:
95         (WebCore::RenderTextControlSingleLine::layout):
96         Make sure to mark renderers as needing layout when we change their
97         style. This didn't use to be necessary because old-flexbox relayouts
98         children even when they are not marked for needing layout.
99         (WebCore::RenderTextControlSingleLine::createInnerBlockStyle):
100         Use new-flexbox CSS properties.
101         * html/shadow/TextFieldDecorationElement.cpp:
102         (WebCore::TextFieldDecorationElement::decorate):
103         Use new-flexbox CSS properties.
104
105 2013-03-15  Kenneth Russell  <kbr@google.com>
106
107         Unreviewed attempted build fix for Chromium Windows after r145929.
108         Verified this fix builds and works on Linux.
109         https://bugs.webkit.org/show_bug.cgi?id=96798
110
111         * bindings/v8/V8Binding.cpp:
112         (WebCore):
113
114 2013-03-15  Nate Chapin  <japhet@chromium.org>
115
116         Merge MainResourceLoader::willSendRequest into DocumentLoader 
117         https://bugs.webkit.org/show_bug.cgi?id=109757
118
119         This is one of the steps to merging MainResourceLoader entirely into
120         DocumentLoader, given the lack of clear division of responsibility
121         between the two.
122
123         Reviewed by Antti Koivisto.
124
125         No new tests, refactor only.
126
127         * loader/DocumentLoader.cpp:
128         (WebCore::DocumentLoader::mainResourceData):
129         (WebCore::DocumentLoader::isPostOrRedirectAfterPost):
130         (WebCore::DocumentLoader::willSendRequest):
131         (WebCore::DocumentLoader::callContinueAfterNavigationPolicy):
132         (WebCore::DocumentLoader::continueAfterNavigationPolicy):
133         (WebCore::DocumentLoader::startLoadingMainResource):
134         * loader/DocumentLoader.h:
135         * loader/MainResourceLoader.cpp:
136         (WebCore::MainResourceLoader::resourceData):
137         (WebCore::MainResourceLoader::redirectReceived):
138         (WebCore::MainResourceLoader::continueAfterContentPolicy):
139         (WebCore::MainResourceLoader::reportMemoryUsage):
140         (WebCore::MainResourceLoader::handleSubstituteDataLoadNow):
141         (WebCore::MainResourceLoader::load):
142         * loader/MainResourceLoader.h:
143         (WebCore::MainResourceLoader::takeIdentifierFromResourceLoader): Temporarily
144             exposed for moving from a normal load to SubstituteData load on redirect.
145
146 2013-03-15  Zhenyao Mo  <zmo@google.com>
147
148         Disable EXT_draw_buffers WebGL extension on Mac
149         https://bugs.webkit.org/show_bug.cgi?id=112486
150
151         Reviewed by Kenneth Russell.
152
153         * html/canvas/EXTDrawBuffers.cpp:
154         (WebCore::EXTDrawBuffers::supported):
155
156 2013-03-15  Dana Jansens  <danakj@chromium.org>
157
158         [chromium] Remove the background filter blur layout tests
159         https://bugs.webkit.org/show_bug.cgi?id=112372
160
161         Reviewed by James Robinson.
162
163         Remove the now-unused hacks to regression test the background
164         filter blur compositor feature.
165
166         * testing/Internals.cpp:
167         * testing/Internals.h:
168         (Internals):
169         * testing/Internals.idl:
170
171 2013-03-15  Alexey Proskuryakov  <ap@apple.com>
172
173         Reduce amount of platform specific code in MessagePortChannel
174         https://bugs.webkit.org/show_bug.cgi?id=112469
175
176         Reviewed by Sam Weinig.
177
178         * dom/MessagePortChannel.h: Ifdefed out an unused channel() function, except for
179         Chromium, where it is used. We certainly don't want to expose this implementation
180         detail as a public function.
181
182         * dom/default/PlatformMessagePortChannel.h: Removed functions that are no longer
183         delegated. Made class contents all public, as it's now basically a data storage
184         for MessagePortChannel.
185
186         * dom/default/PlatformMessagePortChannel.cpp:
187         (WebCore::MessagePortChannel::createChannel):
188         (WebCore::MessagePortChannel::~MessagePortChannel):
189         (WebCore::MessagePortChannel::entangleIfOpen):
190         (WebCore::MessagePortChannel::disentangle):
191         (WebCore::MessagePortChannel::postMessageToRemote):
192         (WebCore::MessagePortChannel::tryGetMessageFromRemote):
193         (WebCore::MessagePortChannel::close):
194         (WebCore::MessagePortChannel::isConnectedTo):
195         (WebCore::MessagePortChannel::hasPendingActivity):
196         (WebCore::MessagePortChannel::locallyEntangledPort):
197         (WebCore::PlatformMessagePortChannel::PlatformMessagePortChannel):
198         (WebCore::PlatformMessagePortChannel::entangledChannel):
199         Moved code from PlatformMessagePortChannel to MessagePortChannel. Added some
200         FIXMEs.
201
202 2013-03-15  Arvid Nilsson  <anilsson@rim.com>
203
204         [BlackBerry] Expose the compositing thread layer's draw rectangle to aid hit testing
205         https://bugs.webkit.org/show_bug.cgi?id=112255
206
207         Reviewed by Rob Buis.
208
209         PR 308284.
210         Reviewed internally by Yongxin Dai.
211
212         Add a getter for the layer renderer of a compositing thread layer.
213
214         No change in behavior, no new tests.
215
216         * platform/graphics/blackberry/LayerCompositingThread.h:
217         (WebCore::LayerCompositingThread::layerRenderer):
218
219 2013-03-15  Christian Biesinger  <cbiesinger@chromium.org>
220
221         Convert <select> to new-flexbox
222         https://bugs.webkit.org/show_bug.cgi?id=112395
223
224         Reviewed by Ojan Vafai.
225
226         Covered by existing tests.
227
228         * css/html.css:
229         (select):
230         (select[size][multiple]):
231         (select[size="1"]):
232         Use new-style flexbox properties.
233         * rendering/RenderMenuList.cpp:
234         (WebCore::RenderMenuList::RenderMenuList):
235         (WebCore::RenderMenuList::createInnerBlock):
236         (WebCore::RenderMenuList::adjustInnerStyle):
237         (WebCore::RenderMenuList::removeChild):
238         RenderDeprecatedFlexibleBox -> RenderFlexibleBox, and use the
239         new-style flexbox properties. Use margin:auto for centering to get
240         the old safe-centering behavior.
241         * rendering/RenderMenuList.h:
242         (RenderMenuList):
243         Inherit from RenderFlexibleBox. Override baseline methods to call the
244         RenderBlock methods
245
246 2013-03-15  Andy Estes  <aestes@apple.com>
247
248         REGRESSION (r145820): Stop over-retaining CFDataRefs in SharedBuffer::maybeTransferPlatformData()
249         https://bugs.webkit.org/show_bug.cgi?id=112474
250
251         Reviewed by Simon Fraser.
252
253         Transfer ownership of m_cfData to the local variable rather than leaking a reference.
254
255         * platform/cf/SharedBufferCF.cpp:
256         (WebCore::SharedBuffer::maybeTransferPlatformData):
257
258 2013-03-15  Rajeev Sarvaria  <rsarvaria@blackberry.com>
259
260         New context extensions restored improperly
261         https://bugs.webkit.org/show_bug.cgi?id=112156
262
263         Reviewed by Rob Buis.
264
265         Sets up extensions after new context is created for restoration.
266         Previous extensions set up is lost when context is initially lost.
267
268         Cannot create a test as change is not visible from the web. When a context
269         is lost, WebGLRenderingContext drops m_context. Upon restoration a new context
270         object is created without available extensions initialized. Calling isEnabled
271         within setupFlags leads to the eventual initialization of extensions for the
272         new context.
273
274         * html/canvas/WebGLRenderingContext.cpp:
275         (WebCore):
276         (WebCore::WebGLRenderingContext::maybeRestoreContext):
277
278 2013-03-15  Aurimas Liutikas  <aurimas@chromium.org>
279
280         TextIterator emits LF for a br element inside an empty input element
281         https://bugs.webkit.org/show_bug.cgi?id=112275
282
283         Reviewed by Ryosuke Niwa.
284
285         Adding a check to avoid emiting LF for br elements inside a shadow tree
286         of an input element.
287
288         Test: editing/text-iterator/basic-iteration.html
289               editing/text-iterator/basic-iteration-shadowdom.html
290
291         * editing/TextIterator.cpp:
292         (WebCore::shouldEmitNewlineForNode):
293         (WebCore::TextIterator::handleNonTextNode):
294         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
295         (WebCore::SimplifiedBackwardsTextIterator::handleNonTextNode):
296         (WebCore::SimplifiedBackwardsTextIterator::exitNode):
297         * editing/TextIterator.h:
298         (SimplifiedBackwardsTextIterator):
299
300 2013-03-15  Arvid Nilsson  <anilsson@rim.com>
301
302         [BlackBerry] Allow an embedder to position child windows using window coordinates
303         https://bugs.webkit.org/show_bug.cgi?id=112236
304
305         Reviewed by Rob Buis.
306
307         PR 232752
308
309         The LayerCompositingThread can now position the video window using
310         either document or window coordinates.
311
312         The LayerRenderer class gets a new client interface. This allows us to
313         avoid state duplication by delegating decisions directly to the client,
314         which can then be in charge of the (one and only) state.
315
316         The context is moved over to the client, as well as delegation of the
317         decision on whether to clear the surface every frame.
318
319         Also, the decision on which coordinate system to use for positioning
320         child windows is delegated to the client interface.
321
322         No new tests, not testable using DRT.
323
324         * platform/graphics/blackberry/LayerCompositingThread.cpp:
325         (WebCore::LayerCompositingThread::drawTextures):
326         * platform/graphics/blackberry/LayerRenderer.cpp:
327         (WebCore::LayerRenderer::create):
328         (WebCore::LayerRenderer::LayerRenderer):
329         (WebCore::LayerRenderer::setViewport):
330         (WebCore::LayerRenderer::compositeLayers):
331         (WebCore::LayerRenderer::toWebKitWindowCoordinates):
332         (WebCore::LayerRenderer::makeContextCurrent):
333         * platform/graphics/blackberry/LayerRenderer.h:
334         (WebCore):
335         (LayerRenderer):
336         (WebCore::LayerRenderer::client):
337         * platform/graphics/blackberry/LayerRendererClient.h: Added.
338         (Graphics):
339         (WebCore):
340         (LayerRendererClient):
341         (WebCore::LayerRendererClient::~LayerRendererClient):
342
343 2013-03-15  Jochen Eisinger  <jochen@chromium.org>
344
345         Expose whether a UserGestureToken still has gestures via WebKit API
346         https://bugs.webkit.org/show_bug.cgi?id=112342
347
348         Reviewed by Adam Barth.
349
350         * dom/UserGestureIndicator.cpp:
351         * dom/UserGestureIndicator.h:
352         (UserGestureToken):
353
354 2013-03-15  Christian Biesinger  <cbiesinger@chromium.org>
355
356         Convert inspector to new-flexbox
357         https://bugs.webkit.org/show_bug.cgi?id=112399
358
359         Reviewed by Ojan Vafai.
360
361         No new tests, refactoring.
362
363         * inspector/front-end/auditsPanel.css:
364         (.audit-launcher-view .audit-launcher-view-content):
365         (.audit-launcher-view div.button-container):
366         (.audit-launcher-view div.button-container > button):
367         * inspector/front-end/dialog.css:
368         (.dialog):
369         * inspector/front-end/elementsPanel.css:
370         (.sidebar-pane.composite .metrics):
371         * inspector/front-end/helpScreen.css:
372         (.help-window-main):
373         (.help-content):
374         * inspector/front-end/inspector.css:
375         (#toolbar):
376         (#toolbar-controls):
377         (#toolbar-dropdown .scrollable-content):
378         (#toolbar-dropdown .toolbar-item):
379         (.toolbar-item.close-left, .toolbar-item.close-right):
380         * inspector/front-end/nativeMemoryProfiler.css:
381         (.memory-pie-chart-container):
382         (.memory-pie-chart):
383         * inspector/front-end/networkPanel.css:
384         (.network-item-view.visible):
385         * inspector/front-end/panelEnablerView.css:
386         (.panel-enabler-view .flexible-space):
387         * inspector/front-end/profilesPanel.css:
388         (.profile-launcher-view-content):
389         (.control-profiling):
390         * inspector/front-end/splitView.css:
391         (.sidebar-overlay):
392         * inspector/front-end/tabbedPane.css:
393         (.tabbed-pane):
394         (.tabbed-pane-content):
395         Replace -webkit-box with -webkit-flex, -webkit-box-orient with
396         -webkit-flex-direction, etc.
397
398 2013-03-15  Rouslan Solomakhin  <rouslan@chromium.org>
399
400         Remove unused unified textchecker variable
401         https://bugs.webkit.org/show_bug.cgi?id=112362
402
403         Reviewed by Tony Chang.
404
405         The variable m_originalUnifiedSpellCheckerEnabled is never used. The generated
406         code from Settings.in already backs up and restores unified textchecker setting.
407
408         * testing/InternalSettings.h: Remove unusued m_originalUnifiedSpellCheckerEnabled variable.
409
410 2013-03-14  Ojan Vafai  <ojan@chromium.org>
411
412         Auto height column flexboxes with border and padding are too short
413         https://bugs.webkit.org/show_bug.cgi?id=112398
414
415         Reviewed by Tony Chang.
416
417         Test: css3/flexbox/auto-height-column-with-border-and-padding.html
418
419         * rendering/RenderFlexibleBox.cpp:
420         (WebCore::RenderFlexibleBox::mainAxisContentExtent):
421         computeLogicalHeight expects that you pass in the border-box logicalHeight, not
422         the contentLogicalHeight. Since we subtract the border, padding and scrollbar height from 
423         the returned m_extent, if we pass in the contentLogicalHeight and the flexbox is auto-sized
424         then we end up incorrectly subtracting border, padding and scrollbar height from the
425         contentLogicalHeight.
426
427 2013-03-15  Tim Horton  <timothy_horton@apple.com>
428
429         RenderSnapshottedPlugIn can't be a RenderBlock (what if it's display: inline?)
430         https://bugs.webkit.org/show_bug.cgi?id=112432
431         <rdar://problem/13187211>
432
433         Reviewed by Simon Fraser and Dean Jackson.
434
435         Re-use code from PLUGIN_PROXY_FOR_VIDEO to allow RenderEmbeddedObject to lay out its children,
436         and make RenderSnapshottedPlugIn a RenderEmbeddedObject subclass once again. This will ensure that
437         RenderSnapshottedPlugIn lays itself out in the page the same as the RenderEmbeddedObject it replaces did,
438         preventing snapshotted plug-ins from breaking the layout when they are display: inline.
439
440         * html/HTMLPlugInElement.cpp:
441         (WebCore::HTMLPlugInElement::defaultEventHandler):
442         RenderSnapshottedPlugIn is a RenderEmbeddedObject subclass again, so we need to check
443         for it when we have a RenderEmbeddedObject, instead of when we don't.
444
445         * page/FrameView.cpp:
446         (WebCore::FrameView::updateWidget):
447         Ditto.
448
449         * rendering/RenderEmbeddedObject.cpp:
450         (WebCore::RenderEmbeddedObject::layout):
451         (WebCore::RenderEmbeddedObject::canHaveChildren):
452         Allow RenderEmbeddedObject to have and lay out children if it is a RenderSnapshottedPlugIn.
453         Also, preserve the code that allows children if it is a media element and PLUGIN_PROXY_FOR_VIDEO is enabled.
454         Don't call addWidgetToUpdate for instances which will never have a widget, like RenderSnapshottedPlugIn.
455
456         * rendering/RenderEmbeddedObject.h:
457         (RenderEmbeddedObject):
458         We need canHaveChildren() and children() and m_children now.
459         Add canHaveWidget(), which returns true. Subclasses can override if need be.
460
461         * rendering/RenderSnapshottedPlugIn.h: Add canHaveWidget(), which is false for RenderSnapshottedPlugIn.
462         * rendering/RenderSnapshottedPlugIn.cpp:
463         (WebCore::RenderSnapshottedPlugIn::RenderSnapshottedPlugIn):
464         (WebCore::RenderSnapshottedPlugIn::layout):
465         (WebCore::RenderSnapshottedPlugIn::getCursor):
466         Make RenderSnapshottedPlugIn a RenderEmbeddedObject.
467
468         (WebCore::RenderSnapshottedPlugIn::paint):
469         Paint our children.
470
471 2013-03-15  Hajime Morrita  <morrita@google.com>
472
473         [Custom Elements] Any HTMLElement subclass should become a superclass of custom element
474         https://bugs.webkit.org/show_bug.cgi?id=110436
475
476         Reviewed by Dimitri Glazkov.
477
478         This change introduces "type extension" concept of custom elements.
479         With the type extension, each custom elements are able to inherit
480         from not only HTMLElement, but also any HTML element. To make it work,
481         this change extends the plumbing.
482
483         This change does following changes:
484
485         = Data structure:
486
487         - Let CustomElementConstructor objects being keyed by pair of (element
488           name, local name) as the standard requries, instead of just using
489           single name. See CustomElementRegistry::ConstructorMap and CustomElementRegistry::find().
490
491         - Creates mapping from WrapperTypeInfo to element name.  This map
492           can be looked-up by generated functions like
493           findHTMLTagNameOfV8Type().  With this table, WebKit can determine
494           the custom element local name of given prototype object. See  make_names.pl.
495           Note that V8 prototype object knows associated WrapperTypeInfo. See r144865.
496
497         = Hooking up element lifecyle:
498
499         - Create appropriate C++ instance for each custom element.  Before
500           this change, the C++ backend of custom elements were always
501           HTMLUnknownElements or HTMLElement.  See
502           CustomElementConstructor::createElement() and ElementFactories in
503           make_names.pl.
504
505         - Hooks up element construction and element wrapper creation for
506           custom element "before" non-custom case instead of "after"
507           that. We do this because custom element needs to
508           override non-custom case when @is attribute is given for
509           otherwise-non-custom elements like <div is=x-bar>.
510           See make_names.pl.
511
512         - Gives @is attributes to elements if needed. See setTypeExtension() call sites
513           like Document::createElement(), Document::createElementtNS() and CustomElementConstructor::createElementt()
514
515         Test: fast/dom/custom/document-register-type-extensions.html
516
517         * bindings/scripts/CodeGeneratorV8.pm:
518         (GenerateHeader):
519         * bindings/scripts/test/V8/V8Float64Array.h:
520         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
521         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
522         * bindings/scripts/test/V8/V8TestEventConstructor.h:
523         * bindings/scripts/test/V8/V8TestEventTarget.h:
524         * bindings/scripts/test/V8/V8TestException.h:
525         * bindings/scripts/test/V8/V8TestInterface.h:
526         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
527         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
528         * bindings/scripts/test/V8/V8TestNode.h:
529         * bindings/scripts/test/V8/V8TestObj.h:
530         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
531         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
532         * bindings/scripts/test/V8/V8TestTypedefs.h:
533         * bindings/v8/CustomElementHelpers.cpp:
534         (WebCore::hasValidPrototypeChain):
535         (WebCore::CustomElementHelpers::isValidPrototypeParameter):
536         (WebCore::CustomElementHelpers::findLocalName):
537         (WebCore):
538         (WebCore::CustomElementHelpers::findWrapperType):
539         * bindings/v8/CustomElementHelpers.h:
540         (CustomElementHelpers):
541         * bindings/v8/V8CustomElement.cpp:
542         (WebCore::V8CustomElement::createWrapper):
543         * bindings/v8/V8CustomElement.h:
544         (V8CustomElement):
545         (WebCore::V8CustomElement::wrap):
546         (WebCore::V8CustomElement::constructorOf):
547         * bindings/v8/WrapperTypeInfo.h:
548         (WrapperTypeTraits): Added.
549         * bindings/v8/custom/V8CustomElementConstructorCustom.cpp:
550         (WebCore::V8CustomElementConstructor::callAsFunctionCallback):
551         * dom/CustomElementConstructor.cpp:
552         (WebCore::CustomElementConstructor::create):
553         (WebCore::CustomElementConstructor::CustomElementConstructor):
554         (WebCore::CustomElementConstructor::createElement):
555         (WebCore::setTypeExtension):
556         * dom/CustomElementConstructor.h:
557         (CustomElementConstructor):
558         (WebCore::CustomElementConstructor::document):
559         (WebCore::CustomElementConstructor::typeName):
560         (WebCore::CustomElementConstructor::localName):
561         * dom/CustomElementRegistry.cpp:
562         (WebCore::nameIncludesHyphen):
563         (WebCore::CustomElementRegistry::isValidName):
564         (WebCore::CustomElementRegistry::registerElement):
565         (WebCore::CustomElementRegistry::findFor):
566         (WebCore::CustomElementRegistry::find):
567         (WebCore::CustomElementRegistry::createElement):
568         * dom/CustomElementRegistry.h:
569         (CustomElementRegistry):
570         * dom/Document.cpp:
571         (WebCore::Document::createElement):
572         (WebCore::Document::createElementNS):
573         (WebCore::Document::registerElement):
574         * dom/Document.h:
575         (Document):
576         (WebCore::Document::registry): Moved from Document.cpp to be inlined.
577         * dom/Document.idl:
578         * dom/make_names.pl:
579         (printFactoryCppFile):
580         (printWrapperFactoryCppFile):
581         (printWrapperFactoryHeaderFile):
582         * html/HTMLAttributeNames.in: Added @is attribute
583
584 2013-03-15  Alexey Proskuryakov  <ap@apple.com>
585
586         Minor cleanup in worker code
587         https://bugs.webkit.org/show_bug.cgi?id=112455
588
589         Reviewed by Anders Carlsson.
590
591         - Added OVERRIDE keywords.
592         - Toned down FIXMEs about single MessagePort versions of functions. It's not a given
593         that we'll want to get rid of them even when implementing array versions.
594         - Explicitly marked virtual destructors as virtual.
595
596         * dom/MessageEvent.cpp:
597         * dom/MessageEvent.h:
598         * workers/Worker.cpp:
599         * workers/Worker.h:
600         Removed an unused version of postMessage() that took no MessagePorts. This makes
601         it less confusing why MessagePortArray is passed by pointer, and not by reference.
602
603         * workers/DedicatedWorkerContext.cpp:
604         (WebCore::DedicatedWorkerContext::~DedicatedWorkerContext):
605         * workers/DedicatedWorkerContext.h:
606         Added a destructor instead of an implicit one.
607         Removed an unused version of postMessage() that took no MessagePorts.
608
609         * workers/SharedWorker.h: Removed an unused virtual function (thank you OVERRIDE!)
610
611         * dom/MessagePort.cpp:
612         * dom/MessagePort.h:
613         * loader/WorkerThreadableLoader.h:
614         * page/DOMWindow.h:
615         * workers/AbstractWorker.h:
616         * workers/DedicatedWorkerThread.h:
617         * workers/SharedWorkerContext.h:
618         * workers/SharedWorkerThread.h:
619         * workers/WorkerContext.h:
620         * workers/WorkerMessagingProxy.h:
621         * workers/WorkerObjectProxy.h:
622         * workers/WorkerScriptLoader.h:
623
624 2013-03-15  Joshua Bell  <jsbell@chromium.org>
625
626         [V8] Binding: Implement EnforceRange IDL Attribute for long long conversions
627         https://bugs.webkit.org/show_bug.cgi?id=96798
628
629         Reviewed by Kentaro Hara.
630
631         Implement [EnforceRange] attribute for V8 bindings, which specifies throwing behavior
632         on conversions outside int/uint 32/64 ranges and edge cases like NaNs and Infinities.
633         Conversely, conversions without this attribute should *not* throw.
634
635         Tests: fast/js/webidl-type-mapping.html:
636                fast/dom/non-numeric-values-numeric-parameters.html
637                fast/js/script-tests/select-options-add.html
638                storage/indexeddb/intversion-bad-parameters.html
639
640         * Modules/indexeddb/IDBCursor.cpp: Remove custom range enforcement for advance()
641         * Modules/indexeddb/IDBCursor.h: Adjust type to match WebIDL.
642         * Modules/indexeddb/IDBCursor.idl: Specify [EnforceRange] and type matches spec WebIDL.
643         * Modules/indexeddb/IDBFactory.cpp: Remove custom range enforcement for open()
644         * Modules/indexeddb/IDBFactory.h: Adjust type to match WebIDL.
645         * Modules/indexeddb/IDBFactory.idl: Specify [EnforceRange] and type matches spec WebIDL.
646         * bindings/scripts/CodeGeneratorJS.pm:
647         (JSValueToNative): Add FIXME to support [EnforceRange]
648         * bindings/scripts/CodeGeneratorV8.pm:
649         (GenerateNormalAttrSetter): Handle [EnforceRange] in attribute setters
650         (GenerateParametersCheck): Handle [EnforceRange] in parameters.
651         (JSValueToNative): Pass EnforceRange to toInt() functions as appropriate.
652         * bindings/scripts/IDLAttributes.txt:
653         * bindings/scripts/test/TestObj.idl: Tests w/ [EnforceRange]
654         * bindings/scripts/test/V8/V8TestObj.cpp: Updated expectations
655         * bindings/scripts/test/V8/V8TestTypedefs.cpp: Updated expectations.
656         * bindings/v8/V8Binding.cpp: Overloads for toInt() variants that handle constraints.
657         (WebCore::toInt32):
658         (WebCore::toUInt32):
659         (WebCore::toInt64):
660         (WebCore::toUInt64):
661         * bindings/v8/V8Binding.h: Ditto, plus helpers for callers not expecting errors.
662         (WebCore::toInt32):
663         (WebCore::toUInt32):
664         (WebCore::toInt64):
665         (WebCore::toUInt64):
666         * bindings/v8/V8BindingMacros.h: Helper macros for type conversions that may throw.
667         * testing/TypeConversions.h: Added new members with EnforceRange constraint.
668         * testing/TypeConversions.idl: Ditto.
669
670 2013-03-15  Eugene Klyuchnikov  <eustas@chromium.org>
671
672         Web Inspector: [Network] Refine JSDocs in NetworkRequest.js
673         https://bugs.webkit.org/show_bug.cgi?id=112412
674
675         Reviewed by Vsevolod Vlasov.
676
677         Return types for some members are confusing (Object).
678
679         * inspector/front-end/NetworkManager.js: Fixed JSDocs.
680         * inspector/front-end/NetworkRequest.js: Ditto. Plus minor refactorings.
681
682 2013-03-15  Andy Estes  <aestes@apple.com>
683
684         REGRESSION (r127277): CSS URIs with multi-byte Unicode escape sequences fail to parse
685         https://bugs.webkit.org/show_bug.cgi?id=112436
686
687         Reviewed by Michael Saboff.
688
689         r127277 modified the CSS parser to use 8-bit strings when possible.
690         However, it failed to handle URIs that contain Unicode escape sequences
691         that expand to multi-byte characters. Not only would the URI fail to
692         parse, but so would the remainder of the input string.
693
694         Fix this by producing a 16-bit result when we detect a URI with a
695         multi-byte Unicode escape, like we do for identifiers and other strings.
696
697         Test: fast/css/url-with-multi-byte-unicode-escape.html
698
699         * css/CSSParser.cpp:
700         (WebCore::checkAndSkipString): Changed to be a free function since it
701         doesn't access CSSParser's internal state.
702         (WebCore::CSSParser::findURI): Added a function that consolidates the
703         logic of finding the start and end pointers of the URI and the quote
704         character (if encountered), starting at the current character.
705         (WebCore::CSSParser::parseURIInternal): Removed duplicated logic for
706         finding the URI bounds (this now lives in findURI()) and logic for
707         setting the token type and updating the current character (this now
708         lives in parseURI()).
709         (WebCore::CSSParser::parseURI): Find the URI and parse it. If a
710         multi-byte Unicode escape is encountered, rewind to the beginning of
711         the URI and re-parse with a 16-bit string as the destination.
712         * css/CSSParser.h:
713
714 2013-03-15  Andreas Kling  <akling@apple.com>
715
716         [JSC] Remove custom WebAudio mark functions that we can generate instead.
717         <http://webkit.org/b/110976>
718
719         Reviewed by Eric Carlson.
720
721         Remove custom JSC mark functions for AudioContext and ScriptProcessorNode since they
722         are trivial to generate.
723
724         * Modules/webaudio/AudioContext.idl:
725         * Modules/webaudio/ScriptProcessorNode.idl:
726         * GNUmakefile.list.am:
727         * UseJSC.cmake:
728         * WebCore.xcodeproj/project.pbxproj:
729         * bindings/js/JSAudioContextCustom.cpp:
730         * bindings/js/JSScriptProcessorNodeCustom.cpp: Removed.
731
732 2013-03-15  Jer Noble  <jer.noble@apple.com>
733
734         Unreviewed build fix. Rename local variable which was colliding with class method.
735
736         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
737         (PlatformCALayer::clone):
738
739 2013-03-15  Joshua Bell  <jsbell@chromium.org>
740
741         IndexedDB: Handle success events arriving after context stopped
742         https://bugs.webkit.org/show_bug.cgi?id=112451
743
744         Reviewed by Tony Chang.
745
746         In multiprocess ports, events from the back-end can arrive in the form of
747         onXXX() calls after the script execution context has stopped. These need to
748         be ignored. This was already done in most cases, but missing for two overloads
749         of IDBRequest::onSuccess() - void and int64_t.
750
751         Test: webkit_unit_test IDBRequestTest.EventsAfterStopping
752
753         * Modules/indexeddb/IDBRequest.cpp:
754         (WebCore::IDBRequest::onSuccess): Early return if context has stopped.
755         (WebCore::IDBRequest::onSuccessInternal): ASSERT() that callers have checked context.
756
757 2013-03-14  Jer Noble  <jer.noble@apple.com>
758
759         REGRESSION: -webkit-box-reflect does not show on video elements
760         https://bugs.webkit.org/show_bug.cgi?id=112397
761
762         Reviewed by Simon Fraser.
763
764         Test: compositing/video/video-reflection.html
765
766         Support cloning specific CALayer subtypes in PlatformCALayer,
767         which allows reflections to work correctly for those layer types.
768         Specifically, add support for cloning AVPlayerLayer layers.
769
770         * platform/graphics/ca/GraphicsLayerCA.cpp:
771         (WebCore::GraphicsLayerCA::cloneLayer): Moved most of the
772             implementation to PlatformCALayer::clone().
773         * platform/graphics/ca/PlatformCALayer.h:
774         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
775         (PlatformCALayer::PlatformCALayer): Set the layerType to 
776             LayerTypeAVPlayerLayer if the PlatformLayer parameter is an
777             AVPlayerLayer.
778         (PlatformCALayer::clone): Moved from GraphicsLayerCA::cloneLayer().
779             Copy the player value to the new layer, if the current layer is
780             a LayerTypeAVPlayerLayer.
781         (PlatformCALayer::playerLayer):
782         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
783         (PlatformCALayer::clone): Moved from GraphicsLayerCA::cloneLayer().
784             May want to add support for AVCFPlayerLayers in the future.
785
786 2013-03-15  Nate Chapin  <japhet@chromium.org>
787
788         Hide MainResourceLoader from the outside world
789         https://bugs.webkit.org/show_bug.cgi?id=109971
790
791         Reviewed by Adam Barth.
792
793         No new tests, refactor only.
794
795         * WebCore.exp.in:
796         * dom/Document.cpp:
797         * html/HTMLEmbedElement.cpp:
798         * html/MediaDocument.cpp:
799         * html/PluginDocument.cpp:
800         * loader/DocumentLoader.cpp:
801         (WebCore::DocumentLoader::mainResourceLoader):
802         (WebCore::DocumentLoader::finishedLoading):
803         (WebCore::DocumentLoader::receivedData):
804         (WebCore::DocumentLoader::setMainResourceDataBufferingPolicy):
805         * loader/DocumentLoader.h:
806         * loader/EmptyClients.h:
807         * loader/FrameLoader.cpp:
808         * loader/FrameLoaderClient.h:
809         * loader/MainResourceLoader.cpp:
810         * loader/appcache/ApplicationCacheGroup.cpp:
811         * loader/appcache/ApplicationCacheHost.cpp:
812
813 2013-03-15  Abhishek Arya  <inferno@chromium.org>
814
815         Replace static_casts with to* helper functions.
816         https://bugs.webkit.org/show_bug.cgi?id=112401
817
818         Reviewed by Stephen Chenney.
819
820         to* helper functions are preferred over static_cast calls since they
821         help to catch bad casts easily on the testing infrastructure.
822
823         * accessibility/AccessibilityObject.cpp:
824         (WebCore::appendAccessibilityObject):
825         * accessibility/AccessibilityRenderObject.cpp:
826         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
827         * accessibility/AccessibilityScrollView.cpp:
828         (WebCore::AccessibilityScrollView::webAreaObject):
829         (WebCore::AccessibilityScrollView::documentFrameView):
830         (WebCore::AccessibilityScrollView::parentObject):
831         (WebCore::AccessibilityScrollView::parentObjectIfExists):
832         * accessibility/chromium/AXObjectCacheChromium.cpp:
833         (WebCore::AXObjectCache::postPlatformNotification):
834         * bindings/js/JSPluginElementFunctions.cpp:
835         (WebCore::pluginScriptObjectFromPluginViewBase):
836         * bindings/js/PageScriptDebugServer.cpp:
837         (WebCore::PageScriptDebugServer::setJavaScriptPaused):
838         * bindings/js/ScriptController.cpp:
839         (WebCore::ScriptController::createScriptInstanceForWidget):
840         * bindings/js/ScriptControllerQt.cpp:
841         (WebCore::ScriptController::createScriptInstanceForWidget):
842         * bindings/v8/ScriptController.cpp:
843         (WebCore::ScriptController::createScriptInstanceForWidget):
844         * html/HTMLObjectElement.cpp:
845         (WebCore::HTMLObjectElement::appendFormData):
846         * page/EventHandler.cpp:
847         (WebCore::EventHandler::subframeForTargetNode):
848         (WebCore::EventHandler::passGestureEventToWidget):
849         * page/Frame.cpp:
850         (WebCore::Frame::frameForWidget):
851         * page/FrameView.cpp:
852         (WebCore::collectFrameViewChildren):
853         (WebCore::FrameView::hasCustomScrollbars):
854         (WebCore::FrameView::convertToContainingView):
855         (WebCore::FrameView::convertFromContainingView):
856         (WebCore::FrameView::removeChild):
857         * page/FrameView.h:
858         (WebCore::toFrameView):
859         (WebCore):
860         * page/Page.cpp:
861         (WebCore::Page::collectPluginViews):
862         * page/chromium/EventHandlerChromium.cpp:
863         (WebCore::EventHandler::passWheelEventToWidget):
864         * page/efl/EventHandlerEfl.cpp:
865         (WebCore::EventHandler::passWheelEventToWidget):
866         * page/gtk/EventHandlerGtk.cpp:
867         (WebCore::EventHandler::passWheelEventToWidget):
868         * page/mac/EventHandlerMac.mm:
869         (WebCore::EventHandler::passWheelEventToWidget):
870         * page/qt/EventHandlerQt.cpp:
871         (WebCore::EventHandler::passWheelEventToWidget):
872         * page/scrolling/ScrollingCoordinator.cpp:
873         (WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):
874         * page/win/EventHandlerWin.cpp:
875         (WebCore::EventHandler::passWheelEventToWidget):
876         * page/wx/EventHandlerWx.cpp:
877         (WebCore::EventHandler::passWheelEventToWidget):
878         * platform/ScrollView.h:
879         (WebCore::toScrollView):
880         (WebCore):
881         * platform/Scrollbar.cpp:
882         (WebCore::Scrollbar::isScrollViewScrollbar):
883         (WebCore::Scrollbar::mouseUp):
884         (WebCore::Scrollbar::axObjectCache):
885         * platform/Widget.h:
886         (WebCore::Widget::isScrollView):
887         * platform/blackberry/PlatformScreenBlackBerry.cpp:
888         (WebCore::toUserSpace):
889         * platform/efl/ScrollbarEfl.cpp:
890         (ScrollbarEfl::setParent):
891         * platform/qt/PlatformSupportQt.cpp:
892         (WebCore::PlatformSupport::popupsAllowed):
893         (WebCore::PlatformSupport::pluginScriptableObject):
894         * plugins/IFrameShimSupport.cpp:
895         (WebCore::getPluginOcclusions):
896         * plugins/PluginView.h:
897         (WebCore::toPluginView):
898         (WebCore):
899         * plugins/PluginViewBase.h:
900         (WebCore::PluginViewBase::isPluginViewBase):
901         (PluginViewBase):
902         (WebCore::toPluginViewBase):
903         (WebCore):
904         * plugins/blackberry/PluginViewBlackBerry.cpp:
905         (WebCore::PluginView::updatePluginWidget):
906         (WebCore::PluginView::updateBuffer):
907         (WebCore::PluginView::paint):
908         (WebCore::PluginView::handleScrollEvent):
909         (WebCore::PluginView::calculateClipRect):
910         (WebCore::PluginView::handleFullScreenAllowedEvent):
911         (WebCore::PluginView::handleFullScreenExitEvent):
912         (WebCore::PluginView::setParent):
913         (WebCore::PluginView::setNPWindowIfNeeded):
914         (WebCore::PluginView::platformGetValue):
915         (WebCore::PluginView::platformStart):
916         (WebCore::PluginView::platformDestroy):
917         (WebCore::PluginView::setBackgroundPlay):
918         * plugins/blackberry/PluginViewPrivateBlackBerry.cpp:
919         (WebCore::PluginViewPrivate::setVisibleRects):
920         (WebCore::PluginViewPrivate::showKeyboard):
921         (WebCore::PluginViewPrivate::requestFullScreen):
922         (WebCore::PluginViewPrivate::requestCenterFitZoom):
923         (WebCore::PluginViewPrivate::lockOrientation):
924         (WebCore::PluginViewPrivate::unlockOrientation):
925         (WebCore::PluginViewPrivate::preventIdle):
926         * plugins/gtk/PluginViewGtk.cpp:
927         (WebCore::PluginView::updatePluginWidget):
928         * plugins/mac/PluginViewMac.mm:
929         (WebCore::PluginView::platformStart):
930         * plugins/qt/PluginViewQt.cpp:
931         (WebCore::PluginView::updatePluginWidget):
932         * plugins/win/PluginViewWin.cpp:
933         (WebCore::PluginView::updatePluginWidget):
934         (WebCore::PluginView::paintIntoTransformedContext):
935         (WebCore::PluginView::paintWindowedPluginIntoContext):
936         (WebCore::PluginView::paint):
937         (WebCore::PluginView::handleMouseEvent):
938         (WebCore::PluginView::setNPWindowRect):
939         (WebCore::PluginView::snapshot):
940         * rendering/RenderBox.cpp:
941         (WebCore::RenderBox::addLayoutOverflow):
942         * rendering/RenderBoxModelObject.cpp:
943         (WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):
944         * rendering/RenderEmbeddedObject.cpp:
945         (WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing):
946         (WebCore::RenderEmbeddedObject::viewCleared):
947         (WebCore::RenderEmbeddedObject::nodeAtPoint):
948         (WebCore::RenderEmbeddedObject::scroll):
949         * rendering/RenderFlexibleBox.h:
950         (WebCore::toRenderFlexibleBox):
951         (WebCore):
952         * rendering/RenderFrame.cpp:
953         (WebCore::RenderFrame::viewCleared):
954         * rendering/RenderFrameBase.cpp:
955         (WebCore::RenderFrameBase::layoutWithFlattening):
956         * rendering/RenderIFrame.cpp:
957         (WebCore::RenderIFrame::contentRootRenderer):
958         (WebCore::RenderIFrame::layoutSeamlessly):
959         * rendering/RenderLayerBacking.cpp:
960         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
961         * rendering/RenderLayerCompositor.cpp:
962         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
963         * rendering/RenderPart.cpp:
964         (WebCore::RenderPart::requiresAcceleratedCompositing):
965         (WebCore::RenderPart::embeddedContentBox):
966         (WebCore::RenderPart::nodeAtPoint):
967         * rendering/RenderRuby.cpp:
968         (WebCore::rubyBeforeBlock):
969         (WebCore::rubyAfterBlock):
970         (WebCore::lastRubyRun):
971         (WebCore::findRubyRunParent):
972         * rendering/RenderTreeAsText.cpp:
973         (WebCore::write):
974         * rendering/RenderWidget.cpp:
975         (WebCore::RenderWidget::paintContents):
976         (WebCore::RenderWidget::setOverlapTestResult):
977         (WebCore::RenderWidget::updateWidgetPosition):
978
979 2013-03-15  No'am Rosenthal  <noam@webkit.org>
980
981         [Texmap] REGRESSION (r144190): Failure at style with preserve-3d and opacity
982         https://bugs.webkit.org/show_bug.cgi?id=112370
983
984         According to spec, we avoid masking and clipping when preserves-3d is enabled.
985         However, opacity should still work.
986         Allowing opacity when preserves-3d is on.
987
988         Reviewed by Caio Marcelo de Oliveira Filho.
989
990         Test: compositing/overlap-blending/preserves3d-opacity.html
991
992         * platform/graphics/texmap/TextureMapperGL.cpp:
993         * platform/graphics/texmap/TextureMapperLayer.cpp:
994         (WebCore::TextureMapperLayer::paintRecursive):
995
996 2013-03-15  Konrad Piascik  <kpiascik@blackberry.com>
997
998         Get rid of useless forward declaration.
999         https://bugs.webkit.org/show_bug.cgi?id=112449
1000
1001         Reviewed by Stephen Chenney.
1002
1003         No behavioural change 
1004
1005         * svg/SVGRectElement.cpp:
1006
1007 2013-03-15  Alexei Filippov  <alph@chromium.org>
1008
1009         Web Inspector: make CPU profiler show timings using the same time unit [ms]
1010         https://bugs.webkit.org/show_bug.cgi?id=112356
1011
1012         That makes it much easier to compare values when looking at the data.
1013
1014         Reviewed by Yury Semikhatsky.
1015
1016         * inspector/front-end/ProfileDataGridTree.js:
1017         (WebInspector.ProfileDataGridNode.prototype.get data.formatMilliseconds):
1018
1019 2013-03-15  Peter Beverloo  <peter@chromium.org>
1020
1021         Implement support for nullable types in the bindings generator
1022         https://bugs.webkit.org/show_bug.cgi?id=111728
1023
1024         Reviewed by Kentaro Hara.
1025
1026         This patch adds support for nullable types in the bindings
1027         generator, as described in section 3.10.22 of WebIDL:
1028             http://dev.w3.org/2006/webapi/WebIDL/#idl-nullable-type
1029
1030         interface MyInterface {
1031             readonly attribute boolean? value; // true, false or null.
1032         };
1033
1034         The IDL Parser has been modified to record whether attributes are
1035         nullable. Question marks from the type will always be stripped
1036         from the domAttribute->signature->type field. Once support for
1037         this has been completely implemented, we'll be able to remove a
1038         bunch of custom bindings, i.e. those of Device Orientation.
1039
1040         Any getter for an attribute which returns a nullable type will be
1041         called with an additional attribute (passed by reference) named
1042         "isNull". This will be the last argument passed to the method,
1043         unless an exception code (ec) argument will be passed as well.
1044
1045         The CPP, GObject and ObjC bindings will not change behavior following
1046         this patch, although they have been modified to call the WebCore
1047         methods for nullable attributes with the correct signature. The
1048         V8 and JS binding generators do have modified behavior, in that they
1049         will actually return v8Null/jsNull when isNull == true.
1050
1051         Tested by existing binding tests and the new nullable attribute
1052         tests in the bindings/scripts/test/ directory.
1053
1054         * bindings/scripts/CodeGeneratorCPP.pm:
1055         (GenerateImplementation):
1056         * bindings/scripts/CodeGeneratorGObject.pm:
1057         (GenerateProperty):
1058         (GenerateFunction):
1059         * bindings/scripts/CodeGeneratorJS.pm:
1060         (GenerateImplementation):
1061         * bindings/scripts/CodeGeneratorObjC.pm:
1062         (GenerateImplementation):
1063         * bindings/scripts/CodeGeneratorV8.pm:
1064         (GenerateNormalAttrGetter):
1065         * bindings/scripts/IDLParser.pm:
1066         (typeHasNullableSuffix):
1067         (typeRemoveNullableSuffix):
1068         (parseAttributeRest):
1069         (parseOptionalOrRequiredArgument):
1070         (parseAttributeRestOld):
1071         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
1072         (WebDOMTestObj::nullableDoubleAttribute):
1073         (WebDOMTestObj::nullableLongAttribute):
1074         (WebDOMTestObj::nullableBooleanAttribute):
1075         (WebDOMTestObj::nullableStringAttribute):
1076         (WebDOMTestObj::nullableLongSettableAttribute):
1077         (WebDOMTestObj::setNullableLongSettableAttribute):
1078         (WebDOMTestObj::nullableStringValue):
1079         (WebDOMTestObj::setNullableStringValue):
1080         * bindings/scripts/test/CPP/WebDOMTestObj.h:
1081         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1082         (webkit_dom_test_obj_set_property):
1083         (webkit_dom_test_obj_get_property):
1084         (webkit_dom_test_obj_class_init):
1085         (webkit_dom_test_obj_get_nullable_double_attribute):
1086         (webkit_dom_test_obj_get_nullable_long_attribute):
1087         (webkit_dom_test_obj_get_nullable_boolean_attribute):
1088         (webkit_dom_test_obj_get_nullable_string_attribute):
1089         (webkit_dom_test_obj_get_nullable_long_settable_attribute):
1090         (webkit_dom_test_obj_set_nullable_long_settable_attribute):
1091         (webkit_dom_test_obj_get_nullable_string_value):
1092         (webkit_dom_test_obj_set_nullable_string_value):
1093         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1094         * bindings/scripts/test/JS/JSTestObj.cpp:
1095         (WebCore):
1096         (WebCore::jsTestObjNullableDoubleAttribute):
1097         (WebCore::jsTestObjNullableLongAttribute):
1098         (WebCore::jsTestObjNullableBooleanAttribute):
1099         (WebCore::jsTestObjNullableStringAttribute):
1100         (WebCore::jsTestObjNullableLongSettableAttribute):
1101         (WebCore::jsTestObjNullableStringValue):
1102         (WebCore::setJSTestObjNullableLongSettableAttribute):
1103         (WebCore::setJSTestObjNullableStringValue):
1104         * bindings/scripts/test/JS/JSTestObj.h:
1105         (WebCore):
1106         * bindings/scripts/test/ObjC/DOMTestObj.h:
1107         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1108         (-[DOMTestObj nullableDoubleAttribute]):
1109         (-[DOMTestObj nullableLongAttribute]):
1110         (-[DOMTestObj nullableBooleanAttribute]):
1111         (-[DOMTestObj nullableStringAttribute]):
1112         (-[DOMTestObj nullableLongSettableAttribute]):
1113         (-[DOMTestObj setNullableLongSettableAttribute:]):
1114         (-[DOMTestObj nullableStringValue]):
1115         (-[DOMTestObj setNullableStringValue:]):
1116         * bindings/scripts/test/TestObj.idl:
1117         * bindings/scripts/test/V8/V8TestObj.cpp:
1118         (WebCore::TestObjV8Internal::nullableDoubleAttributeAttrGetter):
1119         (TestObjV8Internal):
1120         (WebCore::TestObjV8Internal::nullableDoubleAttributeAttrGetterCallback):
1121         (WebCore::TestObjV8Internal::nullableLongAttributeAttrGetter):
1122         (WebCore::TestObjV8Internal::nullableLongAttributeAttrGetterCallback):
1123         (WebCore::TestObjV8Internal::nullableBooleanAttributeAttrGetter):
1124         (WebCore::TestObjV8Internal::nullableBooleanAttributeAttrGetterCallback):
1125         (WebCore::TestObjV8Internal::nullableStringAttributeAttrGetter):
1126         (WebCore::TestObjV8Internal::nullableStringAttributeAttrGetterCallback):
1127         (WebCore::TestObjV8Internal::nullableLongSettableAttributeAttrGetter):
1128         (WebCore::TestObjV8Internal::nullableLongSettableAttributeAttrGetterCallback):
1129         (WebCore::TestObjV8Internal::nullableLongSettableAttributeAttrSetter):
1130         (WebCore::TestObjV8Internal::nullableLongSettableAttributeAttrSetterCallback):
1131         (WebCore::TestObjV8Internal::nullableStringValueAttrGetter):
1132         (WebCore::TestObjV8Internal::nullableStringValueAttrGetterCallback):
1133         (WebCore::TestObjV8Internal::nullableStringValueAttrSetter):
1134         (WebCore::TestObjV8Internal::nullableStringValueAttrSetterCallback):
1135         (WebCore):
1136
1137 2013-03-15  Marja Hölttä  <marja@chromium.org>
1138
1139         [V8] Store main world and non-main world templates separately.
1140         https://bugs.webkit.org/show_bug.cgi?id=111724
1141
1142         Reviewed by Jochen Eisinger.
1143
1144         This is needed for generating specialized bindings for the main
1145         world (bug 110874).
1146
1147         No new tests (updated existing bindings tests).
1148
1149         * bindings/scripts/CodeGeneratorV8.pm:
1150         (GenerateHeader):
1151         (GenerateDomainSafeFunctionGetter):
1152         (GenerateNormalAttrSetter):
1153         (GenerateParametersCheckExpression):
1154         (GenerateParametersCheck):
1155         (GenerateImplementation):
1156         (JSValueToNative):
1157         (CreateCustomSignature):
1158         * bindings/scripts/test/V8/V8Float64Array.cpp:
1159         (WebCore::Float64ArrayV8Internal::fooMethod):
1160         (WebCore::ConfigureV8Float64ArrayTemplate):
1161         (WebCore::V8Float64Array::GetTemplate):
1162         (WebCore::V8Float64Array::HasInstance):
1163         (WebCore):
1164         (WebCore::V8Float64Array::HasInstanceInAnyWorld):
1165         * bindings/scripts/test/V8/V8Float64Array.h:
1166         (V8Float64Array):
1167         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1168         (WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethod):
1169         (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
1170         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
1171         (WebCore::V8TestActiveDOMObject::GetTemplate):
1172         (WebCore::V8TestActiveDOMObject::HasInstance):
1173         (WebCore):
1174         (WebCore::V8TestActiveDOMObject::HasInstanceInAnyWorld):
1175         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
1176         (V8TestActiveDOMObject):
1177         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1178         (WebCore::V8TestCustomNamedGetter::GetTemplate):
1179         (WebCore::V8TestCustomNamedGetter::HasInstance):
1180         (WebCore):
1181         (WebCore::V8TestCustomNamedGetter::HasInstanceInAnyWorld):
1182         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
1183         (V8TestCustomNamedGetter):
1184         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1185         (WebCore::V8TestEventConstructor::GetTemplate):
1186         (WebCore::V8TestEventConstructor::HasInstance):
1187         (WebCore):
1188         (WebCore::V8TestEventConstructor::HasInstanceInAnyWorld):
1189         * bindings/scripts/test/V8/V8TestEventConstructor.h:
1190         (V8TestEventConstructor):
1191         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1192         (WebCore::TestEventTargetV8Internal::dispatchEventMethod):
1193         (WebCore::ConfigureV8TestEventTargetTemplate):
1194         (WebCore::V8TestEventTarget::GetTemplate):
1195         (WebCore::V8TestEventTarget::HasInstance):
1196         (WebCore):
1197         (WebCore::V8TestEventTarget::HasInstanceInAnyWorld):
1198         * bindings/scripts/test/V8/V8TestEventTarget.h:
1199         (V8TestEventTarget):
1200         * bindings/scripts/test/V8/V8TestException.cpp:
1201         (WebCore::V8TestException::GetTemplate):
1202         (WebCore::V8TestException::HasInstance):
1203         (WebCore):
1204         (WebCore::V8TestException::HasInstanceInAnyWorld):
1205         * bindings/scripts/test/V8/V8TestException.h:
1206         (V8TestException):
1207         * bindings/scripts/test/V8/V8TestInterface.cpp:
1208         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetter):
1209         (WebCore::TestInterfaceV8Internal::supplementalMethod2Method):
1210         (WebCore::ConfigureV8TestInterfaceTemplate):
1211         (WebCore::V8TestInterface::GetTemplate):
1212         (WebCore::V8TestInterface::HasInstance):
1213         (WebCore):
1214         (WebCore::V8TestInterface::HasInstanceInAnyWorld):
1215         * bindings/scripts/test/V8/V8TestInterface.h:
1216         (V8TestInterface):
1217         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1218         (WebCore::V8TestMediaQueryListListener::GetTemplate):
1219         (WebCore::V8TestMediaQueryListListener::HasInstance):
1220         (WebCore):
1221         (WebCore::V8TestMediaQueryListListener::HasInstanceInAnyWorld):
1222         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1223         (V8TestMediaQueryListListener):
1224         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1225         (WebCore::V8TestNamedConstructor::GetTemplate):
1226         (WebCore::V8TestNamedConstructor::HasInstance):
1227         (WebCore):
1228         (WebCore::V8TestNamedConstructor::HasInstanceInAnyWorld):
1229         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
1230         (V8TestNamedConstructor):
1231         * bindings/scripts/test/V8/V8TestNode.cpp:
1232         (WebCore::V8TestNode::GetTemplate):
1233         (WebCore::V8TestNode::HasInstance):
1234         (WebCore):
1235         (WebCore::V8TestNode::HasInstanceInAnyWorld):
1236         * bindings/scripts/test/V8/V8TestNode.h:
1237         (V8TestNode):
1238         * bindings/scripts/test/V8/V8TestObj.cpp:
1239         (WebCore::TestObjV8Internal::testObjAttrAttrSetter):
1240         (WebCore::TestObjV8Internal::XMLObjAttrAttrSetter):
1241         (WebCore::TestObjV8Internal::typedArrayAttrAttrSetter):
1242         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetter):
1243         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetter):
1244         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetter):
1245         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetter):
1246         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetter):
1247         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetter):
1248         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
1249         (WebCore::TestObjV8Internal::mutablePointAttrSetter):
1250         (WebCore::TestObjV8Internal::immutablePointAttrSetter):
1251         (WebCore::TestObjV8Internal::voidMethodWithArgsMethod):
1252         (WebCore::TestObjV8Internal::longMethodWithArgsMethod):
1253         (WebCore::TestObjV8Internal::objMethodWithArgsMethod):
1254         (WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethod):
1255         (WebCore::TestObjV8Internal::overloadedMethod1Method):
1256         (WebCore::TestObjV8Internal::overloadedMethod2Method):
1257         (WebCore::TestObjV8Internal::overloadedMethod8Method):
1258         (WebCore::TestObjV8Internal::overloadedMethodMethod):
1259         (WebCore::TestObjV8Internal::convert1Method):
1260         (WebCore::TestObjV8Internal::convert2Method):
1261         (WebCore::TestObjV8Internal::convert4Method):
1262         (WebCore::TestObjV8Internal::convert5Method):
1263         (WebCore::TestObjV8Internal::variadicNodeMethodMethod):
1264         (WebCore::ConfigureV8TestObjTemplate):
1265         (WebCore::V8TestObj::GetTemplate):
1266         (WebCore::V8TestObj::HasInstance):
1267         (WebCore):
1268         (WebCore::V8TestObj::HasInstanceInAnyWorld):
1269         * bindings/scripts/test/V8/V8TestObj.h:
1270         (V8TestObj):
1271         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
1272         (WebCore::TestOverloadedConstructorsV8Internal::constructor1):
1273         (WebCore::TestOverloadedConstructorsV8Internal::constructor2):
1274         (WebCore::TestOverloadedConstructorsV8Internal::constructor3):
1275         (WebCore::TestOverloadedConstructorsV8Internal::constructor):
1276         (WebCore::V8TestOverloadedConstructors::GetTemplate):
1277         (WebCore::V8TestOverloadedConstructors::HasInstance):
1278         (WebCore):
1279         (WebCore::V8TestOverloadedConstructors::HasInstanceInAnyWorld):
1280         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
1281         (V8TestOverloadedConstructors):
1282         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1283         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
1284         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
1285         (WebCore):
1286         (WebCore::V8TestSerializedScriptValueInterface::HasInstanceInAnyWorld):
1287         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
1288         (V8TestSerializedScriptValueInterface):
1289         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
1290         (WebCore::TestTypedefsV8Internal::funcMethod):
1291         (WebCore::ConfigureV8TestTypedefsTemplate):
1292         (WebCore::V8TestTypedefs::GetTemplate):
1293         (WebCore::V8TestTypedefs::HasInstance):
1294         (WebCore):
1295         (WebCore::V8TestTypedefs::HasInstanceInAnyWorld):
1296         * bindings/scripts/test/V8/V8TestTypedefs.h:
1297         (V8TestTypedefs):
1298         * bindings/v8/Dictionary.cpp:
1299         (WebCore::Dictionary::get):
1300         * bindings/v8/ScriptProfiler.cpp:
1301         (WebCore::ScriptProfiler::visitNodeWrappers):
1302         * bindings/v8/SerializedScriptValue.cpp:
1303         * bindings/v8/V8AdaptorFunction.cpp:
1304         (WebCore::V8AdaptorFunction::getTemplate):
1305         * bindings/v8/V8Binding.cpp:
1306         (WebCore::toDOMStringList):
1307         (WebCore::toXPathNSResolver):
1308         * bindings/v8/V8Binding.h:
1309         (WebCore):
1310         (WebCore::toRefPtrNativeArray):
1311         * bindings/v8/V8Collection.cpp:
1312         (WebCore::toOptionsCollectionSetter):
1313         * bindings/v8/V8GCController.cpp:
1314         * bindings/v8/V8NPObject.cpp:
1315         (WebCore::npObjectInvokeImpl):
1316         * bindings/v8/V8PerIsolateData.cpp:
1317         (WebCore::V8PerIsolateData::reportMemoryUsage):
1318         (WebCore::V8PerIsolateData::hasPrivateTemplate):
1319         (WebCore::V8PerIsolateData::privateTemplate):
1320         (WebCore::V8PerIsolateData::rawTemplate):
1321         (WebCore::V8PerIsolateData::hasInstance):
1322         * bindings/v8/V8PerIsolateData.h:
1323         (WebCore::V8PerIsolateData::rawTemplateMap):
1324         (V8PerIsolateData):
1325         (WebCore::V8PerIsolateData::templateMap):
1326         * bindings/v8/V8Utilities.cpp:
1327         (WebCore::extractTransferables):
1328         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
1329         (WebCore::constructWebGLArray):
1330         (WebCore::setWebGLArrayHelper):
1331         * bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp:
1332         (WebCore::V8AudioBufferSourceNode::bufferAttrSetterCustom):
1333         * bindings/v8/custom/V8BlobCustom.cpp:
1334         (WebCore::V8Blob::constructorCustom):
1335         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
1336         (WebCore::toCanvasStyle):
1337         * bindings/v8/custom/V8ClipboardCustom.cpp:
1338         (WebCore::V8Clipboard::setDragImageMethodCustom):
1339         * bindings/v8/custom/V8CryptoCustom.cpp:
1340         (WebCore::V8Crypto::getRandomValuesMethodCustom):
1341         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1342         (WebCore::V8DOMFormData::constructorCustom):
1343         (WebCore::V8DOMFormData::appendMethodCustom):
1344         * bindings/v8/custom/V8DataViewCustom.cpp:
1345         (WebCore::V8DataView::constructorCustom):
1346         * bindings/v8/custom/V8DocumentCustom.cpp:
1347         (WebCore::V8Document::evaluateMethodCustom):
1348         * bindings/v8/custom/V8HTMLMediaElementCustom.cpp:
1349         (WebCore::V8HTMLMediaElement::controllerAttrSetterCustom):
1350         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1351         (WebCore::V8HTMLOptionsCollection::addMethodCustom):
1352         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
1353         (WebCore::removeElement):
1354         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1355         (WebCore::V8InjectedScriptHost::isHTMLAllCollectionMethodCustom):
1356         (WebCore::V8InjectedScriptHost::typeMethodCustom):
1357         (WebCore::V8InjectedScriptHost::getEventListenersMethodCustom):
1358         * bindings/v8/custom/V8LocationCustom.cpp:
1359         (WebCore::V8Location::reloadAttrGetterCustom):
1360         (WebCore::V8Location::replaceAttrGetterCustom):
1361         (WebCore::V8Location::assignAttrGetterCustom):
1362         * bindings/v8/custom/V8NodeCustom.cpp:
1363         (WebCore::V8Node::insertBeforeMethodCustom):
1364         (WebCore::V8Node::replaceChildMethodCustom):
1365         (WebCore::V8Node::removeChildMethodCustom):
1366         (WebCore::V8Node::appendChildMethodCustom):
1367         * bindings/v8/custom/V8NodeListCustom.cpp:
1368         (WebCore::V8NodeList::opaqueRootForGC):
1369         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1370         (WebCore::toWebGLUniformLocation):
1371         (WebCore::V8WebGLRenderingContext::getAttachedShadersMethodCustom):
1372         (WebCore::V8WebGLRenderingContext::getProgramParameterMethodCustom):
1373         (WebCore::V8WebGLRenderingContext::getShaderParameterMethodCustom):
1374         (WebCore::V8WebGLRenderingContext::getUniformMethodCustom):
1375         (WebCore::vertexAttribAndUniformHelperf):
1376         (WebCore::uniformHelperi):
1377         (WebCore::uniformMatrixHelper):
1378         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1379         (WebCore::isDocumentType):
1380         (WebCore::V8XMLHttpRequest::sendMethodCustom):
1381
1382 2013-03-15  Sheriff Bot  <webkit.review.bot@gmail.com>
1383
1384         Unreviewed, rolling out r145802.
1385         http://trac.webkit.org/changeset/145802
1386         https://bugs.webkit.org/show_bug.cgi?id=112444
1387
1388         This broke Chrome. (Requested by marja____ on #webkit).
1389
1390         * bindings/scripts/CodeGeneratorV8.pm:
1391         (GenerateHeader):
1392         (GenerateDomainSafeFunctionGetter):
1393         (GenerateNormalAttrSetter):
1394         (GenerateParametersCheckExpression):
1395         (GenerateParametersCheck):
1396         (GenerateImplementation):
1397         (JSValueToNative):
1398         (CreateCustomSignature):
1399         * bindings/scripts/test/V8/V8Float64Array.cpp:
1400         (WebCore::Float64ArrayV8Internal::fooMethod):
1401         (WebCore::ConfigureV8Float64ArrayTemplate):
1402         (WebCore::V8Float64Array::GetTemplate):
1403         (WebCore::V8Float64Array::HasInstance):
1404         * bindings/scripts/test/V8/V8Float64Array.h:
1405         (V8Float64Array):
1406         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1407         (WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethod):
1408         (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
1409         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
1410         (WebCore::V8TestActiveDOMObject::GetTemplate):
1411         (WebCore::V8TestActiveDOMObject::HasInstance):
1412         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
1413         (V8TestActiveDOMObject):
1414         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1415         (WebCore::V8TestCustomNamedGetter::GetTemplate):
1416         (WebCore::V8TestCustomNamedGetter::HasInstance):
1417         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
1418         (V8TestCustomNamedGetter):
1419         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1420         (WebCore::V8TestEventConstructor::GetTemplate):
1421         (WebCore::V8TestEventConstructor::HasInstance):
1422         * bindings/scripts/test/V8/V8TestEventConstructor.h:
1423         (V8TestEventConstructor):
1424         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1425         (WebCore::TestEventTargetV8Internal::dispatchEventMethod):
1426         (WebCore::ConfigureV8TestEventTargetTemplate):
1427         (WebCore::V8TestEventTarget::GetTemplate):
1428         (WebCore::V8TestEventTarget::HasInstance):
1429         * bindings/scripts/test/V8/V8TestEventTarget.h:
1430         (V8TestEventTarget):
1431         * bindings/scripts/test/V8/V8TestException.cpp:
1432         (WebCore::V8TestException::GetTemplate):
1433         (WebCore::V8TestException::HasInstance):
1434         * bindings/scripts/test/V8/V8TestException.h:
1435         (V8TestException):
1436         * bindings/scripts/test/V8/V8TestInterface.cpp:
1437         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetter):
1438         (WebCore::TestInterfaceV8Internal::supplementalMethod2Method):
1439         (WebCore::ConfigureV8TestInterfaceTemplate):
1440         (WebCore::V8TestInterface::GetTemplate):
1441         (WebCore::V8TestInterface::HasInstance):
1442         * bindings/scripts/test/V8/V8TestInterface.h:
1443         (V8TestInterface):
1444         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1445         (WebCore::V8TestMediaQueryListListener::GetTemplate):
1446         (WebCore::V8TestMediaQueryListListener::HasInstance):
1447         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1448         (V8TestMediaQueryListListener):
1449         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1450         (WebCore::V8TestNamedConstructor::GetTemplate):
1451         (WebCore::V8TestNamedConstructor::HasInstance):
1452         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
1453         (V8TestNamedConstructor):
1454         * bindings/scripts/test/V8/V8TestNode.cpp:
1455         (WebCore::V8TestNode::GetTemplate):
1456         (WebCore::V8TestNode::HasInstance):
1457         * bindings/scripts/test/V8/V8TestNode.h:
1458         (V8TestNode):
1459         * bindings/scripts/test/V8/V8TestObj.cpp:
1460         (WebCore::TestObjV8Internal::testObjAttrAttrSetter):
1461         (WebCore::TestObjV8Internal::XMLObjAttrAttrSetter):
1462         (WebCore::TestObjV8Internal::typedArrayAttrAttrSetter):
1463         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetter):
1464         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetter):
1465         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetter):
1466         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetter):
1467         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetter):
1468         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetter):
1469         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
1470         (WebCore::TestObjV8Internal::mutablePointAttrSetter):
1471         (WebCore::TestObjV8Internal::immutablePointAttrSetter):
1472         (WebCore::TestObjV8Internal::voidMethodWithArgsMethod):
1473         (WebCore::TestObjV8Internal::longMethodWithArgsMethod):
1474         (WebCore::TestObjV8Internal::objMethodWithArgsMethod):
1475         (WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethod):
1476         (WebCore::TestObjV8Internal::overloadedMethod1Method):
1477         (WebCore::TestObjV8Internal::overloadedMethod2Method):
1478         (WebCore::TestObjV8Internal::overloadedMethod8Method):
1479         (WebCore::TestObjV8Internal::overloadedMethodMethod):
1480         (WebCore::TestObjV8Internal::convert1Method):
1481         (WebCore::TestObjV8Internal::convert2Method):
1482         (WebCore::TestObjV8Internal::convert4Method):
1483         (WebCore::TestObjV8Internal::convert5Method):
1484         (WebCore::TestObjV8Internal::variadicNodeMethodMethod):
1485         (WebCore::ConfigureV8TestObjTemplate):
1486         (WebCore::V8TestObj::GetTemplate):
1487         (WebCore::V8TestObj::HasInstance):
1488         * bindings/scripts/test/V8/V8TestObj.h:
1489         (V8TestObj):
1490         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
1491         (WebCore::TestOverloadedConstructorsV8Internal::constructor1):
1492         (WebCore::TestOverloadedConstructorsV8Internal::constructor2):
1493         (WebCore::TestOverloadedConstructorsV8Internal::constructor3):
1494         (WebCore::TestOverloadedConstructorsV8Internal::constructor):
1495         (WebCore::V8TestOverloadedConstructors::GetTemplate):
1496         (WebCore::V8TestOverloadedConstructors::HasInstance):
1497         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
1498         (V8TestOverloadedConstructors):
1499         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1500         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
1501         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
1502         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
1503         (V8TestSerializedScriptValueInterface):
1504         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
1505         (WebCore::TestTypedefsV8Internal::funcMethod):
1506         (WebCore::ConfigureV8TestTypedefsTemplate):
1507         (WebCore::V8TestTypedefs::GetTemplate):
1508         (WebCore::V8TestTypedefs::HasInstance):
1509         * bindings/scripts/test/V8/V8TestTypedefs.h:
1510         (V8TestTypedefs):
1511         * bindings/v8/Dictionary.cpp:
1512         (WebCore::Dictionary::get):
1513         * bindings/v8/ScriptProfiler.cpp:
1514         (WebCore::ScriptProfiler::visitNodeWrappers):
1515         * bindings/v8/SerializedScriptValue.cpp:
1516         * bindings/v8/V8AdaptorFunction.cpp:
1517         (WebCore::V8AdaptorFunction::getTemplate):
1518         * bindings/v8/V8Binding.cpp:
1519         (WebCore::toDOMStringList):
1520         (WebCore::toXPathNSResolver):
1521         * bindings/v8/V8Binding.h:
1522         (WebCore::toRefPtrNativeArray):
1523         (WebCore):
1524         * bindings/v8/V8Collection.cpp:
1525         (WebCore::toOptionsCollectionSetter):
1526         * bindings/v8/V8GCController.cpp:
1527         * bindings/v8/V8NPObject.cpp:
1528         (WebCore::npObjectInvokeImpl):
1529         * bindings/v8/V8PerIsolateData.cpp:
1530         (WebCore::V8PerIsolateData::reportMemoryUsage):
1531         (WebCore::V8PerIsolateData::hasPrivateTemplate):
1532         (WebCore::V8PerIsolateData::privateTemplate):
1533         (WebCore::V8PerIsolateData::rawTemplate):
1534         (WebCore::V8PerIsolateData::hasInstance):
1535         * bindings/v8/V8PerIsolateData.h:
1536         (WebCore::V8PerIsolateData::rawTemplateMap):
1537         (WebCore::V8PerIsolateData::templateMap):
1538         (V8PerIsolateData):
1539         * bindings/v8/V8Utilities.cpp:
1540         (WebCore::extractTransferables):
1541         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
1542         (WebCore::constructWebGLArray):
1543         (WebCore::setWebGLArrayHelper):
1544         * bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp:
1545         (WebCore::V8AudioBufferSourceNode::bufferAttrSetterCustom):
1546         * bindings/v8/custom/V8BlobCustom.cpp:
1547         (WebCore::V8Blob::constructorCustom):
1548         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
1549         (WebCore::toCanvasStyle):
1550         * bindings/v8/custom/V8ClipboardCustom.cpp:
1551         (WebCore::V8Clipboard::setDragImageMethodCustom):
1552         * bindings/v8/custom/V8CryptoCustom.cpp:
1553         (WebCore::V8Crypto::getRandomValuesMethodCustom):
1554         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
1555         (WebCore::V8DOMFormData::constructorCustom):
1556         (WebCore::V8DOMFormData::appendMethodCustom):
1557         * bindings/v8/custom/V8DataViewCustom.cpp:
1558         (WebCore::V8DataView::constructorCustom):
1559         * bindings/v8/custom/V8DocumentCustom.cpp:
1560         (WebCore::V8Document::evaluateMethodCustom):
1561         * bindings/v8/custom/V8HTMLMediaElementCustom.cpp:
1562         (WebCore::V8HTMLMediaElement::controllerAttrSetterCustom):
1563         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1564         (WebCore::V8HTMLOptionsCollection::addMethodCustom):
1565         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
1566         (WebCore::removeElement):
1567         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1568         (WebCore::V8InjectedScriptHost::isHTMLAllCollectionMethodCustom):
1569         (WebCore::V8InjectedScriptHost::typeMethodCustom):
1570         (WebCore::V8InjectedScriptHost::getEventListenersMethodCustom):
1571         * bindings/v8/custom/V8LocationCustom.cpp:
1572         (WebCore::V8Location::reloadAttrGetterCustom):
1573         (WebCore::V8Location::replaceAttrGetterCustom):
1574         (WebCore::V8Location::assignAttrGetterCustom):
1575         * bindings/v8/custom/V8NodeCustom.cpp:
1576         (WebCore::V8Node::insertBeforeMethodCustom):
1577         (WebCore::V8Node::replaceChildMethodCustom):
1578         (WebCore::V8Node::removeChildMethodCustom):
1579         (WebCore::V8Node::appendChildMethodCustom):
1580         * bindings/v8/custom/V8NodeListCustom.cpp:
1581         (WebCore::V8NodeList::opaqueRootForGC):
1582         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1583         (WebCore::toWebGLUniformLocation):
1584         (WebCore::V8WebGLRenderingContext::getAttachedShadersMethodCustom):
1585         (WebCore::V8WebGLRenderingContext::getProgramParameterMethodCustom):
1586         (WebCore::V8WebGLRenderingContext::getShaderParameterMethodCustom):
1587         (WebCore::V8WebGLRenderingContext::getUniformMethodCustom):
1588         (WebCore::vertexAttribAndUniformHelperf):
1589         (WebCore::uniformHelperi):
1590         (WebCore::uniformMatrixHelper):
1591         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1592         (WebCore::isDocumentType):
1593         (WebCore::V8XMLHttpRequest::sendMethodCustom):
1594
1595 2013-03-15  Sheriff Bot  <webkit.review.bot@gmail.com>
1596
1597         Unreviewed, rolling out r145896.
1598         http://trac.webkit.org/changeset/145896
1599         https://bugs.webkit.org/show_bug.cgi?id=112443
1600
1601         Chrome broken by r145802 and this builds on top of it.
1602         (Requested by marja____ on #webkit).
1603
1604         * bindings/scripts/CodeGeneratorV8.pm:
1605         (GenerateHeader):
1606         (GenerateNormalAttrGetterCallback):
1607         (GenerateNormalAttrGetter):
1608         (GenerateNormalAttrSetterCallback):
1609         (GenerateNormalAttrSetter):
1610         (GenerateNamedConstructor):
1611         (GenerateBatchedAttributeData):
1612         (GenerateSingleBatchedAttribute):
1613         (GenerateImplementation):
1614         (GenerateCallbackImplementation):
1615         (GenerateFunctionCallString):
1616         (CreateCustomSignature):
1617         (NativeToJSValue):
1618         * bindings/scripts/test/V8/V8Float64Array.cpp:
1619         (WebCore::ConfigureV8Float64ArrayTemplate):
1620         (WebCore::V8Float64Array::GetTemplate):
1621         (WebCore::V8Float64Array::HasInstance):
1622         * bindings/scripts/test/V8/V8Float64Array.h:
1623         (WebCore):
1624         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1625         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
1626         (WebCore::V8TestActiveDOMObject::GetTemplate):
1627         (WebCore::V8TestActiveDOMObject::HasInstance):
1628         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
1629         (WebCore):
1630         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1631         (WebCore::ConfigureV8TestCustomNamedGetterTemplate):
1632         (WebCore::V8TestCustomNamedGetter::GetTemplate):
1633         (WebCore::V8TestCustomNamedGetter::HasInstance):
1634         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
1635         (WebCore):
1636         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1637         (WebCore):
1638         (WebCore::ConfigureV8TestEventConstructorTemplate):
1639         (WebCore::V8TestEventConstructor::GetTemplate):
1640         (WebCore::V8TestEventConstructor::HasInstance):
1641         * bindings/scripts/test/V8/V8TestEventConstructor.h:
1642         (WebCore):
1643         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1644         (WebCore::ConfigureV8TestEventTargetTemplate):
1645         (WebCore::V8TestEventTarget::GetTemplate):
1646         (WebCore::V8TestEventTarget::HasInstance):
1647         * bindings/scripts/test/V8/V8TestEventTarget.h:
1648         (WebCore):
1649         * bindings/scripts/test/V8/V8TestException.cpp:
1650         (WebCore::ConfigureV8TestExceptionTemplate):
1651         (WebCore::V8TestException::GetTemplate):
1652         (WebCore::V8TestException::HasInstance):
1653         * bindings/scripts/test/V8/V8TestException.h:
1654         (WebCore):
1655         * bindings/scripts/test/V8/V8TestInterface.cpp:
1656         (TestInterfaceV8Internal):
1657         (WebCore):
1658         (WebCore::ConfigureV8TestInterfaceTemplate):
1659         (WebCore::V8TestInterface::GetTemplate):
1660         (WebCore::V8TestInterface::HasInstance):
1661         * bindings/scripts/test/V8/V8TestInterface.h:
1662         (WebCore):
1663         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1664         (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
1665         (WebCore::V8TestMediaQueryListListener::GetTemplate):
1666         (WebCore::V8TestMediaQueryListListener::HasInstance):
1667         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1668         (WebCore):
1669         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1670         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
1671         (WebCore::ConfigureV8TestNamedConstructorTemplate):
1672         (WebCore::V8TestNamedConstructor::GetTemplate):
1673         (WebCore::V8TestNamedConstructor::HasInstance):
1674         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
1675         (WebCore):
1676         * bindings/scripts/test/V8/V8TestNode.cpp:
1677         (WebCore::ConfigureV8TestNodeTemplate):
1678         (WebCore::V8TestNode::GetTemplate):
1679         (WebCore::V8TestNode::HasInstance):
1680         * bindings/scripts/test/V8/V8TestNode.h:
1681         (WebCore):
1682         * bindings/scripts/test/V8/V8TestObj.cpp:
1683         (TestObjV8Internal):
1684         (WebCore):
1685         (WebCore::ConfigureV8TestObjTemplate):
1686         (WebCore::V8TestObj::GetTemplate):
1687         (WebCore::V8TestObj::HasInstance):
1688         * bindings/scripts/test/V8/V8TestObj.h:
1689         (WebCore):
1690         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
1691         (WebCore::ConfigureV8TestOverloadedConstructorsTemplate):
1692         (WebCore::V8TestOverloadedConstructors::GetTemplate):
1693         (WebCore::V8TestOverloadedConstructors::HasInstance):
1694         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
1695         (WebCore):
1696         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1697         (WebCore):
1698         (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
1699         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
1700         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
1701         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
1702         (WebCore):
1703         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
1704         (WebCore):
1705         (WebCore::ConfigureV8TestTypedefsTemplate):
1706         (WebCore::V8TestTypedefs::GetTemplate):
1707         (WebCore::V8TestTypedefs::HasInstance):
1708         * bindings/scripts/test/V8/V8TestTypedefs.h:
1709         (WebCore):
1710         * bindings/v8/DOMDataStore.h:
1711         (DOMDataStore):
1712         * bindings/v8/V8DOMConfiguration.cpp:
1713         * bindings/v8/V8DOMConfiguration.h:
1714         (V8DOMConfiguration):
1715         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1716         * bindings/v8/custom/V8EventTargetCustom.cpp:
1717         * bindings/v8/custom/V8IDBAnyCustom.cpp:
1718         * bindings/v8/custom/V8MicroDataItemValueCustom.cpp:
1719         * bindings/v8/custom/V8WorkerContextCustom.cpp:
1720
1721 2013-03-15  Alberto Garcia  <agarcia@igalia.com>
1722
1723         [BlackBerry] Remove PlatformSupport
1724         https://bugs.webkit.org/show_bug.cgi?id=112438
1725
1726         Reviewed by Rob Buis.
1727
1728         This class only contains getFontFamilyForCharacters(), which was
1729         moved from PlatformSupport to FontCache in r129257.
1730
1731         This patch does the same for the BlackBerry port.
1732
1733         * platform/graphics/FontCache.h:
1734         (FontCache):
1735         * platform/graphics/blackberry/FontCacheBlackBerry.cpp:
1736         (WebCore::FontCache::getFontFamilyForCharacters):
1737         (WebCore):
1738         (WebCore::FontCache::getFontDataForCharacters):
1739         * platform/graphics/blackberry/PlatformSupport.cpp: Removed.
1740         * platform/graphics/blackberry/PlatformSupport.h: Removed.
1741
1742 2013-03-15  Alberto Garcia  <agarcia@igalia.com>
1743
1744         [BlackBerry] FontPlatformData: remove TextOrientation parameter
1745         https://bugs.webkit.org/show_bug.cgi?id=112135
1746
1747         Reviewed by Rob Buis.
1748
1749         I forgot to remove the #include "TextOrientation.h" line as
1750         well. This file no longer exists.
1751
1752         * platform/graphics/blackberry/FontCustomPlatformData.h:
1753
1754 2013-03-15  Sankeerth V S  <sankeerth.vs@samsung.com>
1755
1756         DataGrid should reveal and select next/previous DataGridNode upon deletion of selected node
1757         https://bugs.webkit.org/show_bug.cgi?id=112404
1758
1759         Reviewed by Vsevolod Vlasov.
1760
1761         No new tests as this is a UI related change.
1762
1763         While deleting the entries of the data grid by clicking on 'Delete'
1764         status bar button, deletion of selected node should trigger selection of
1765         next possible (backward/forward) DataGridNode.
1766
1767         * inspector/front-end/DOMStorageItemsView.js:
1768         (WebInspector.DOMStorageItemsView.prototype._deleteButtonClicked):
1769         * inspector/front-end/DataGrid.js:
1770         (WebInspector.DataGrid.prototype._keyDown):
1771         (WebInspector.DataGrid.prototype.changeNodeAfterDeletion):
1772
1773 2013-03-15  Ilya Tikhonovsky  <loislo@chromium.org>
1774
1775         Web Inspector: Flame Chart. Draw timeline grid over flame chart items.
1776         https://bugs.webkit.org/show_bug.cgi?id=112439
1777
1778         Reviewed by Pavel Feldman.
1779
1780         I've used WebInspector.TimelineGrid
1781
1782         * inspector/front-end/FlameChart.js:
1783         (WebInspector.FlameChart):
1784         (WebInspector.FlameChart.Calculator):
1785         (WebInspector.FlameChart.Calculator.prototype._updateBoundaries):
1786         (WebInspector.FlameChart.Calculator.prototype.computePosition):
1787         (WebInspector.FlameChart.Calculator.prototype.formatTime):
1788         (WebInspector.FlameChart.Calculator.prototype.maximumBoundary):
1789         (WebInspector.FlameChart.Calculator.prototype.minimumBoundary):
1790         (WebInspector.FlameChart.Calculator.prototype.boundarySpan):
1791         (WebInspector.FlameChart.prototype.update):
1792
1793 2013-03-15  Marja Hölttä  <marja@chromium.org>
1794
1795         [V8] Add machinery for generating specialized bindings for the main world
1796         https://bugs.webkit.org/show_bug.cgi?id=111417
1797
1798         Reviewed by Kentaro Hara.
1799
1800         The new specialized bindings will be faster, because they don't need to
1801         do the "main world, isolated world or a worker" check, but can right
1802         away assume that we're in the main world.
1803
1804         This patch generates main world bindings for getters and setters.
1805
1806         No new tests (updated existing bindings tests).
1807
1808         * bindings/scripts/CodeGeneratorV8.pm:
1809         (GenerateHeader):
1810         (GenerateNormalAttrGetterCallback):
1811         (GenerateNormalAttrGetter):
1812         (GenerateNormalAttrSetterCallback):
1813         (GenerateNormalAttrSetter):
1814         (GenerateNamedConstructor):
1815         (GenerateBatchedAttributeData):
1816         (GenerateSingleBatchedAttribute):
1817         (GenerateImplementation):
1818         (GenerateCallbackImplementation):
1819         (GenerateFunctionCallString):
1820         (CreateCustomSignature):
1821         (NativeToJSValue):
1822         * bindings/scripts/test/V8/V8Float64Array.cpp:
1823         (WebCore::ConfigureV8Float64ArrayTemplate):
1824         (WebCore::V8Float64Array::GetTemplate):
1825         (WebCore::V8Float64Array::HasInstance):
1826         * bindings/scripts/test/V8/V8Float64Array.h:
1827         (WebCore::toV8ForMainWorld):
1828         (WebCore):
1829         (WebCore::toV8FastForMainWorld):
1830         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1831         (WebCore::TestActiveDOMObjectV8Internal::excitingAttrAttrGetterForMainWorld):
1832         (TestActiveDOMObjectV8Internal):
1833         (WebCore::TestActiveDOMObjectV8Internal::excitingAttrAttrGetterCallbackForMainWorld):
1834         (WebCore):
1835         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
1836         (WebCore::V8TestActiveDOMObject::GetTemplate):
1837         (WebCore::V8TestActiveDOMObject::HasInstance):
1838         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
1839         (WebCore::toV8ForMainWorld):
1840         (WebCore):
1841         (WebCore::toV8FastForMainWorld):
1842         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1843         (WebCore::ConfigureV8TestCustomNamedGetterTemplate):
1844         (WebCore::V8TestCustomNamedGetter::GetTemplate):
1845         (WebCore::V8TestCustomNamedGetter::HasInstance):
1846         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
1847         (WebCore::toV8ForMainWorld):
1848         (WebCore):
1849         (WebCore::toV8FastForMainWorld):
1850         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1851         (WebCore::TestEventConstructorV8Internal::attr1AttrGetterForMainWorld):
1852         (TestEventConstructorV8Internal):
1853         (WebCore::TestEventConstructorV8Internal::attr1AttrGetterCallbackForMainWorld):
1854         (WebCore::TestEventConstructorV8Internal::attr2AttrGetterForMainWorld):
1855         (WebCore::TestEventConstructorV8Internal::attr2AttrGetterCallbackForMainWorld):
1856         (WebCore):
1857         (WebCore::ConfigureV8TestEventConstructorTemplate):
1858         (WebCore::V8TestEventConstructor::GetTemplate):
1859         (WebCore::V8TestEventConstructor::HasInstance):
1860         * bindings/scripts/test/V8/V8TestEventConstructor.h:
1861         (WebCore::toV8ForMainWorld):
1862         (WebCore):
1863         (WebCore::toV8FastForMainWorld):
1864         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1865         (WebCore::ConfigureV8TestEventTargetTemplate):
1866         (WebCore::V8TestEventTarget::GetTemplate):
1867         (WebCore::V8TestEventTarget::HasInstance):
1868         * bindings/scripts/test/V8/V8TestEventTarget.h:
1869         (WebCore::toV8ForMainWorld):
1870         (WebCore):
1871         (WebCore::toV8FastForMainWorld):
1872         * bindings/scripts/test/V8/V8TestException.cpp:
1873         (WebCore::TestExceptionV8Internal::nameAttrGetterForMainWorld):
1874         (TestExceptionV8Internal):
1875         (WebCore::TestExceptionV8Internal::nameAttrGetterCallbackForMainWorld):
1876         (WebCore):
1877         (WebCore::ConfigureV8TestExceptionTemplate):
1878         (WebCore::V8TestException::GetTemplate):
1879         (WebCore::V8TestException::HasInstance):
1880         * bindings/scripts/test/V8/V8TestException.h:
1881         (WebCore::toV8ForMainWorld):
1882         (WebCore):
1883         (WebCore::toV8FastForMainWorld):
1884         * bindings/scripts/test/V8/V8TestInterface.cpp:
1885         (WebCore::TestInterfaceV8Internal::supplementalStaticReadOnlyAttrAttrGetterForMainWorld):
1886         (TestInterfaceV8Internal):
1887         (WebCore::TestInterfaceV8Internal::supplementalStaticReadOnlyAttrAttrGetterCallbackForMainWorld):
1888         (WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrGetterForMainWorld):
1889         (WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrGetterCallbackForMainWorld):
1890         (WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetterForMainWorld):
1891         (WebCore::TestInterfaceV8Internal::supplementalStaticAttrAttrSetterCallbackForMainWorld):
1892         (WebCore::TestInterfaceV8Internal::supplementalStr1AttrGetterForMainWorld):
1893         (WebCore::TestInterfaceV8Internal::supplementalStr1AttrGetterCallbackForMainWorld):
1894         (WebCore::TestInterfaceV8Internal::supplementalStr2AttrGetterForMainWorld):
1895         (WebCore::TestInterfaceV8Internal::supplementalStr2AttrGetterCallbackForMainWorld):
1896         (WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetterForMainWorld):
1897         (WebCore::TestInterfaceV8Internal::supplementalStr2AttrSetterCallbackForMainWorld):
1898         (WebCore::TestInterfaceV8Internal::supplementalStr3AttrGetterCallbackForMainWorld):
1899         (WebCore::TestInterfaceV8Internal::supplementalStr3AttrSetterCallbackForMainWorld):
1900         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetterForMainWorld):
1901         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrGetterCallbackForMainWorld):
1902         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetterForMainWorld):
1903         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetterCallbackForMainWorld):
1904         (WebCore):
1905         (WebCore::ConfigureV8TestInterfaceTemplate):
1906         (WebCore::V8TestInterface::GetTemplate):
1907         (WebCore::V8TestInterface::HasInstance):
1908         * bindings/scripts/test/V8/V8TestInterface.h:
1909         (WebCore::toV8ForMainWorld):
1910         (WebCore):
1911         (WebCore::toV8FastForMainWorld):
1912         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1913         (WebCore::ConfigureV8TestMediaQueryListListenerTemplate):
1914         (WebCore::V8TestMediaQueryListListener::GetTemplate):
1915         (WebCore::V8TestMediaQueryListListener::HasInstance):
1916         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1917         (WebCore::toV8ForMainWorld):
1918         (WebCore):
1919         (WebCore::toV8FastForMainWorld):
1920         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1921         (WebCore::V8TestNamedConstructorConstructor::GetTemplate):
1922         (WebCore::ConfigureV8TestNamedConstructorTemplate):
1923         (WebCore::V8TestNamedConstructor::GetTemplate):
1924         (WebCore::V8TestNamedConstructor::HasInstance):
1925         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
1926         (WebCore::toV8ForMainWorld):
1927         (WebCore):
1928         (WebCore::toV8FastForMainWorld):
1929         * bindings/scripts/test/V8/V8TestNode.cpp:
1930         (WebCore::ConfigureV8TestNodeTemplate):
1931         (WebCore::V8TestNode::GetTemplate):
1932         (WebCore::V8TestNode::HasInstance):
1933         * bindings/scripts/test/V8/V8TestNode.h:
1934         (WebCore::toV8ForMainWorld):
1935         (WebCore):
1936         (WebCore::toV8FastForMainWorld):
1937         * bindings/scripts/test/V8/V8TestObj.cpp:
1938         (WebCore::TestObjV8Internal::readOnlyLongAttrAttrGetterForMainWorld):
1939         (TestObjV8Internal):
1940         (WebCore::TestObjV8Internal::readOnlyLongAttrAttrGetterCallbackForMainWorld):
1941         (WebCore::TestObjV8Internal::readOnlyStringAttrAttrGetterForMainWorld):
1942         (WebCore::TestObjV8Internal::readOnlyStringAttrAttrGetterCallbackForMainWorld):
1943         (WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetterForMainWorld):
1944         (WebCore::TestObjV8Internal::readOnlyTestObjAttrAttrGetterCallbackForMainWorld):
1945         (WebCore::TestObjV8Internal::staticReadOnlyLongAttrAttrGetterForMainWorld):
1946         (WebCore::TestObjV8Internal::staticReadOnlyLongAttrAttrGetterCallbackForMainWorld):
1947         (WebCore::TestObjV8Internal::staticStringAttrAttrGetterForMainWorld):
1948         (WebCore::TestObjV8Internal::staticStringAttrAttrGetterCallbackForMainWorld):
1949         (WebCore::TestObjV8Internal::staticStringAttrAttrSetterForMainWorld):
1950         (WebCore::TestObjV8Internal::staticStringAttrAttrSetterCallbackForMainWorld):
1951         (WebCore::TestObjV8Internal::enumAttrAttrGetterForMainWorld):
1952         (WebCore::TestObjV8Internal::enumAttrAttrGetterCallbackForMainWorld):
1953         (WebCore::TestObjV8Internal::enumAttrAttrSetterForMainWorld):
1954         (WebCore::TestObjV8Internal::enumAttrAttrSetterCallbackForMainWorld):
1955         (WebCore::TestObjV8Internal::shortAttrAttrGetterForMainWorld):
1956         (WebCore::TestObjV8Internal::shortAttrAttrGetterCallbackForMainWorld):
1957         (WebCore::TestObjV8Internal::shortAttrAttrSetterForMainWorld):
1958         (WebCore::TestObjV8Internal::shortAttrAttrSetterCallbackForMainWorld):
1959         (WebCore::TestObjV8Internal::unsignedShortAttrAttrGetterForMainWorld):
1960         (WebCore::TestObjV8Internal::unsignedShortAttrAttrGetterCallbackForMainWorld):
1961         (WebCore::TestObjV8Internal::unsignedShortAttrAttrSetterForMainWorld):
1962         (WebCore::TestObjV8Internal::unsignedShortAttrAttrSetterCallbackForMainWorld):
1963         (WebCore::TestObjV8Internal::longAttrAttrGetterForMainWorld):
1964         (WebCore::TestObjV8Internal::longAttrAttrGetterCallbackForMainWorld):
1965         (WebCore::TestObjV8Internal::longAttrAttrSetterForMainWorld):
1966         (WebCore::TestObjV8Internal::longAttrAttrSetterCallbackForMainWorld):
1967         (WebCore::TestObjV8Internal::longLongAttrAttrGetterForMainWorld):
1968         (WebCore::TestObjV8Internal::longLongAttrAttrGetterCallbackForMainWorld):
1969         (WebCore::TestObjV8Internal::longLongAttrAttrSetterForMainWorld):
1970         (WebCore::TestObjV8Internal::longLongAttrAttrSetterCallbackForMainWorld):
1971         (WebCore::TestObjV8Internal::unsignedLongLongAttrAttrGetterForMainWorld):
1972         (WebCore::TestObjV8Internal::unsignedLongLongAttrAttrGetterCallbackForMainWorld):
1973         (WebCore::TestObjV8Internal::unsignedLongLongAttrAttrSetterForMainWorld):
1974         (WebCore::TestObjV8Internal::unsignedLongLongAttrAttrSetterCallbackForMainWorld):
1975         (WebCore::TestObjV8Internal::stringAttrAttrGetterForMainWorld):
1976         (WebCore::TestObjV8Internal::stringAttrAttrGetterCallbackForMainWorld):
1977         (WebCore::TestObjV8Internal::stringAttrAttrSetterForMainWorld):
1978         (WebCore::TestObjV8Internal::stringAttrAttrSetterCallbackForMainWorld):
1979         (WebCore::TestObjV8Internal::testObjAttrAttrGetterForMainWorld):
1980         (WebCore::TestObjV8Internal::testObjAttrAttrGetterCallbackForMainWorld):
1981         (WebCore::TestObjV8Internal::testObjAttrAttrSetterForMainWorld):
1982         (WebCore::TestObjV8Internal::testObjAttrAttrSetterCallbackForMainWorld):
1983         (WebCore::TestObjV8Internal::XMLObjAttrAttrGetterForMainWorld):
1984         (WebCore::TestObjV8Internal::XMLObjAttrAttrGetterCallbackForMainWorld):
1985         (WebCore::TestObjV8Internal::XMLObjAttrAttrSetterForMainWorld):
1986         (WebCore::TestObjV8Internal::XMLObjAttrAttrSetterCallbackForMainWorld):
1987         (WebCore::TestObjV8Internal::createAttrGetterForMainWorld):
1988         (WebCore::TestObjV8Internal::createAttrGetterCallbackForMainWorld):
1989         (WebCore::TestObjV8Internal::createAttrSetterForMainWorld):
1990         (WebCore::TestObjV8Internal::createAttrSetterCallbackForMainWorld):
1991         (WebCore::TestObjV8Internal::reflectedStringAttrAttrGetterForMainWorld):
1992         (WebCore::TestObjV8Internal::reflectedStringAttrAttrGetterCallbackForMainWorld):
1993         (WebCore::TestObjV8Internal::reflectedStringAttrAttrSetterForMainWorld):
1994         (WebCore::TestObjV8Internal::reflectedStringAttrAttrSetterCallbackForMainWorld):
1995         (WebCore::TestObjV8Internal::reflectedIntegralAttrAttrGetterForMainWorld):
1996         (WebCore::TestObjV8Internal::reflectedIntegralAttrAttrGetterCallbackForMainWorld):
1997         (WebCore::TestObjV8Internal::reflectedIntegralAttrAttrSetter):
1998         (WebCore::TestObjV8Internal::reflectedIntegralAttrAttrSetterForMainWorld):
1999         (WebCore::TestObjV8Internal::reflectedIntegralAttrAttrSetterCallbackForMainWorld):
2000         (WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrGetterForMainWorld):
2001         (WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrGetterCallbackForMainWorld):
2002         (WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrSetterForMainWorld):
2003         (WebCore::TestObjV8Internal::reflectedUnsignedIntegralAttrAttrSetterCallbackForMainWorld):
2004         (WebCore::TestObjV8Internal::reflectedBooleanAttrAttrGetterForMainWorld):
2005         (WebCore::TestObjV8Internal::reflectedBooleanAttrAttrGetterCallbackForMainWorld):
2006         (WebCore::TestObjV8Internal::reflectedBooleanAttrAttrSetterForMainWorld):
2007         (WebCore::TestObjV8Internal::reflectedBooleanAttrAttrSetterCallbackForMainWorld):
2008         (WebCore::TestObjV8Internal::reflectedURLAttrAttrGetterForMainWorld):
2009         (WebCore::TestObjV8Internal::reflectedURLAttrAttrGetterCallbackForMainWorld):
2010         (WebCore::TestObjV8Internal::reflectedURLAttrAttrSetterForMainWorld):
2011         (WebCore::TestObjV8Internal::reflectedURLAttrAttrSetterCallbackForMainWorld):
2012         (WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrGetterForMainWorld):
2013         (WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrGetterCallbackForMainWorld):
2014         (WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrSetterForMainWorld):
2015         (WebCore::TestObjV8Internal::reflectedCustomIntegralAttrAttrSetterCallbackForMainWorld):
2016         (WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrGetterForMainWorld):
2017         (WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrGetterCallbackForMainWorld):
2018         (WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrSetterForMainWorld):
2019         (WebCore::TestObjV8Internal::reflectedCustomBooleanAttrAttrSetterCallbackForMainWorld):
2020         (WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrGetterForMainWorld):
2021         (WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrGetterCallbackForMainWorld):
2022         (WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetterForMainWorld):
2023         (WebCore::TestObjV8Internal::reflectedCustomURLAttrAttrSetterCallbackForMainWorld):
2024         (WebCore::TestObjV8Internal::typedArrayAttrAttrGetterForMainWorld):
2025         (WebCore::TestObjV8Internal::typedArrayAttrAttrGetterCallbackForMainWorld):
2026         (WebCore::TestObjV8Internal::typedArrayAttrAttrSetterForMainWorld):
2027         (WebCore::TestObjV8Internal::typedArrayAttrAttrSetterCallbackForMainWorld):
2028         (WebCore::TestObjV8Internal::attrWithGetterExceptionAttrGetterForMainWorld):
2029         (WebCore::TestObjV8Internal::attrWithGetterExceptionAttrGetterCallbackForMainWorld):
2030         (WebCore::TestObjV8Internal::attrWithGetterExceptionAttrSetterForMainWorld):
2031         (WebCore::TestObjV8Internal::attrWithGetterExceptionAttrSetterCallbackForMainWorld):
2032         (WebCore::TestObjV8Internal::attrWithSetterExceptionAttrGetterForMainWorld):
2033         (WebCore::TestObjV8Internal::attrWithSetterExceptionAttrGetterCallbackForMainWorld):
2034         (WebCore::TestObjV8Internal::attrWithSetterExceptionAttrSetterForMainWorld):
2035         (WebCore::TestObjV8Internal::attrWithSetterExceptionAttrSetterCallbackForMainWorld):
2036         (WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrGetterForMainWorld):
2037         (WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrGetterCallbackForMainWorld):
2038         (WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetterForMainWorld):
2039         (WebCore::TestObjV8Internal::stringAttrWithGetterExceptionAttrSetterCallbackForMainWorld):
2040         (WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrGetterForMainWorld):
2041         (WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrGetterCallbackForMainWorld):
2042         (WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetterForMainWorld):
2043         (WebCore::TestObjV8Internal::stringAttrWithSetterExceptionAttrSetterCallbackForMainWorld):
2044         (WebCore::TestObjV8Internal::customAttrAttrGetterCallbackForMainWorld):
2045         (WebCore::TestObjV8Internal::customAttrAttrSetterCallbackForMainWorld):
2046         (WebCore::TestObjV8Internal::withScriptStateAttributeAttrGetterForMainWorld):
2047         (WebCore::TestObjV8Internal::withScriptStateAttributeAttrGetterCallbackForMainWorld):
2048         (WebCore::TestObjV8Internal::withScriptStateAttributeAttrSetterForMainWorld):
2049         (WebCore::TestObjV8Internal::withScriptStateAttributeAttrSetterCallbackForMainWorld):
2050         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetterForMainWorld):
2051         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrGetterCallbackForMainWorld):
2052         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetterForMainWorld):
2053         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetterCallbackForMainWorld):
2054         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetterForMainWorld):
2055         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrGetterCallbackForMainWorld):
2056         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetterForMainWorld):
2057         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetterCallbackForMainWorld):
2058         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetterForMainWorld):
2059         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrGetterCallbackForMainWorld):
2060         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetterForMainWorld):
2061         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetterCallbackForMainWorld):
2062         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetterForMainWorld):
2063         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrGetterCallbackForMainWorld):
2064         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetterForMainWorld):
2065         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetterCallbackForMainWorld):
2066         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetterForMainWorld):
2067         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrGetterCallbackForMainWorld):
2068         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetterForMainWorld):
2069         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetterCallbackForMainWorld):
2070         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetterForMainWorld):
2071         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrGetterCallbackForMainWorld):
2072         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetterForMainWorld):
2073         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetterCallbackForMainWorld):
2074         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetterForMainWorld):
2075         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrGetterCallbackForMainWorld):
2076         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetterForMainWorld):
2077         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetterCallbackForMainWorld):
2078         (WebCore::TestObjV8Internal::conditionalAttr1AttrGetterForMainWorld):
2079         (WebCore::TestObjV8Internal::conditionalAttr1AttrGetterCallbackForMainWorld):
2080         (WebCore::TestObjV8Internal::conditionalAttr1AttrSetterForMainWorld):
2081         (WebCore::TestObjV8Internal::conditionalAttr1AttrSetterCallbackForMainWorld):
2082         (WebCore::TestObjV8Internal::conditionalAttr2AttrGetterForMainWorld):
2083         (WebCore::TestObjV8Internal::conditionalAttr2AttrGetterCallbackForMainWorld):
2084         (WebCore::TestObjV8Internal::conditionalAttr2AttrSetterForMainWorld):
2085         (WebCore::TestObjV8Internal::conditionalAttr2AttrSetterCallbackForMainWorld):
2086         (WebCore::TestObjV8Internal::conditionalAttr3AttrGetterForMainWorld):
2087         (WebCore::TestObjV8Internal::conditionalAttr3AttrGetterCallbackForMainWorld):
2088         (WebCore::TestObjV8Internal::conditionalAttr3AttrSetterForMainWorld):
2089         (WebCore::TestObjV8Internal::conditionalAttr3AttrSetterCallbackForMainWorld):
2090         (WebCore::TestObjV8Internal::cachedAttribute1AttrGetterForMainWorld):
2091         (WebCore::TestObjV8Internal::cachedAttribute1AttrGetterCallbackForMainWorld):
2092         (WebCore::TestObjV8Internal::cachedAttribute2AttrGetterForMainWorld):
2093         (WebCore::TestObjV8Internal::cachedAttribute2AttrGetterCallbackForMainWorld):
2094         (WebCore::TestObjV8Internal::anyAttributeAttrGetterForMainWorld):
2095         (WebCore::TestObjV8Internal::anyAttributeAttrGetterCallbackForMainWorld):
2096         (WebCore::TestObjV8Internal::anyAttributeAttrSetterForMainWorld):
2097         (WebCore::TestObjV8Internal::anyAttributeAttrSetterCallbackForMainWorld):
2098         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrGetterForMainWorld):
2099         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrGetterCallbackForMainWorld):
2100         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrSetterForMainWorld):
2101         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr1AttrSetterCallbackForMainWorld):
2102         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrGetterForMainWorld):
2103         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrGetterCallbackForMainWorld):
2104         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrSetterForMainWorld):
2105         (WebCore::TestObjV8Internal::enabledAtRuntimeAttr2AttrSetterCallbackForMainWorld):
2106         (WebCore::TestObjV8Internal::floatArrayAttrGetterForMainWorld):
2107         (WebCore::TestObjV8Internal::floatArrayAttrGetterCallbackForMainWorld):
2108         (WebCore::TestObjV8Internal::floatArrayAttrSetterForMainWorld):
2109         (WebCore::TestObjV8Internal::floatArrayAttrSetterCallbackForMainWorld):
2110         (WebCore::TestObjV8Internal::doubleArrayAttrGetterForMainWorld):
2111         (WebCore::TestObjV8Internal::doubleArrayAttrGetterCallbackForMainWorld):
2112         (WebCore::TestObjV8Internal::doubleArrayAttrSetterForMainWorld):
2113         (WebCore::TestObjV8Internal::doubleArrayAttrSetterCallbackForMainWorld):
2114         (WebCore::TestObjV8Internal::contentDocumentAttrGetterForMainWorld):
2115         (WebCore::TestObjV8Internal::contentDocumentAttrGetterCallbackForMainWorld):
2116         (WebCore::TestObjV8Internal::mutablePointAttrGetterForMainWorld):
2117         (WebCore::TestObjV8Internal::mutablePointAttrGetterCallbackForMainWorld):
2118         (WebCore::TestObjV8Internal::mutablePointAttrSetterForMainWorld):
2119         (WebCore::TestObjV8Internal::mutablePointAttrSetterCallbackForMainWorld):
2120         (WebCore::TestObjV8Internal::immutablePointAttrGetterForMainWorld):
2121         (WebCore::TestObjV8Internal::immutablePointAttrGetterCallbackForMainWorld):
2122         (WebCore::TestObjV8Internal::immutablePointAttrSetterForMainWorld):
2123         (WebCore::TestObjV8Internal::immutablePointAttrSetterCallbackForMainWorld):
2124         (WebCore::TestObjV8Internal::strawberryAttrGetterForMainWorld):
2125         (WebCore::TestObjV8Internal::strawberryAttrGetterCallbackForMainWorld):
2126         (WebCore::TestObjV8Internal::strawberryAttrSetterForMainWorld):
2127         (WebCore::TestObjV8Internal::strawberryAttrSetterCallbackForMainWorld):
2128         (WebCore::TestObjV8Internal::strictFloatAttrGetterForMainWorld):
2129         (WebCore::TestObjV8Internal::strictFloatAttrGetterCallbackForMainWorld):
2130         (WebCore::TestObjV8Internal::strictFloatAttrSetterForMainWorld):
2131         (WebCore::TestObjV8Internal::strictFloatAttrSetterCallbackForMainWorld):
2132         (WebCore::TestObjV8Internal::descriptionAttrGetterForMainWorld):
2133         (WebCore::TestObjV8Internal::descriptionAttrGetterCallbackForMainWorld):
2134         (WebCore::TestObjV8Internal::idAttrGetterForMainWorld):
2135         (WebCore::TestObjV8Internal::idAttrGetterCallbackForMainWorld):
2136         (WebCore::TestObjV8Internal::idAttrSetterForMainWorld):
2137         (WebCore::TestObjV8Internal::idAttrSetterCallbackForMainWorld):
2138         (WebCore::TestObjV8Internal::hashAttrGetterForMainWorld):
2139         (WebCore::TestObjV8Internal::hashAttrGetterCallbackForMainWorld):
2140         (WebCore::TestObjV8Internal::replaceableAttributeAttrGetterForMainWorld):
2141         (WebCore::TestObjV8Internal::replaceableAttributeAttrGetterCallbackForMainWorld):
2142         (WebCore):
2143         (WebCore::ConfigureV8TestObjTemplate):
2144         (WebCore::V8TestObj::GetTemplate):
2145         (WebCore::V8TestObj::HasInstance):
2146         * bindings/scripts/test/V8/V8TestObj.h:
2147         (WebCore::toV8ForMainWorld):
2148         (WebCore):
2149         (WebCore::toV8FastForMainWorld):
2150         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
2151         (WebCore::ConfigureV8TestOverloadedConstructorsTemplate):
2152         (WebCore::V8TestOverloadedConstructors::GetTemplate):
2153         (WebCore::V8TestOverloadedConstructors::HasInstance):
2154         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
2155         (WebCore::toV8ForMainWorld):
2156         (WebCore):
2157         (WebCore::toV8FastForMainWorld):
2158         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
2159         (WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrGetterForMainWorld):
2160         (TestSerializedScriptValueInterfaceV8Internal):
2161         (WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrGetterCallbackForMainWorld):
2162         (WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrSetterForMainWorld):
2163         (WebCore::TestSerializedScriptValueInterfaceV8Internal::valueAttrSetterCallbackForMainWorld):
2164         (WebCore::TestSerializedScriptValueInterfaceV8Internal::readonlyValueAttrGetterForMainWorld):
2165         (WebCore::TestSerializedScriptValueInterfaceV8Internal::readonlyValueAttrGetterCallbackForMainWorld):
2166         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetterForMainWorld):
2167         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrGetterCallbackForMainWorld):
2168         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetterForMainWorld):
2169         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedValueAttrSetterCallbackForMainWorld):
2170         (WebCore::TestSerializedScriptValueInterfaceV8Internal::portsAttrGetterForMainWorld):
2171         (WebCore::TestSerializedScriptValueInterfaceV8Internal::portsAttrGetterCallbackForMainWorld):
2172         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetterForMainWorld):
2173         (WebCore::TestSerializedScriptValueInterfaceV8Internal::cachedReadonlyValueAttrGetterCallbackForMainWorld):
2174         (WebCore):
2175         (WebCore::ConfigureV8TestSerializedScriptValueInterfaceTemplate):
2176         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
2177         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
2178         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
2179         (WebCore::toV8ForMainWorld):
2180         (WebCore):
2181         (WebCore::toV8FastForMainWorld):
2182         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
2183         (WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrGetterForMainWorld):
2184         (TestTypedefsV8Internal):
2185         (WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrGetterCallbackForMainWorld):
2186         (WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrSetterForMainWorld):
2187         (WebCore::TestTypedefsV8Internal::unsignedLongLongAttrAttrSetterCallbackForMainWorld):
2188         (WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrGetterForMainWorld):
2189         (WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrGetterCallbackForMainWorld):
2190         (WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrSetterForMainWorld):
2191         (WebCore::TestTypedefsV8Internal::immutableSerializedScriptValueAttrSetterCallbackForMainWorld):
2192         (WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrGetterForMainWorld):
2193         (WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrGetterCallbackForMainWorld):
2194         (WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrSetterForMainWorld):
2195         (WebCore::TestTypedefsV8Internal::attrWithGetterExceptionAttrSetterCallbackForMainWorld):
2196         (WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrGetterForMainWorld):
2197         (WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrGetterCallbackForMainWorld):
2198         (WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrSetterForMainWorld):
2199         (WebCore::TestTypedefsV8Internal::attrWithSetterExceptionAttrSetterCallbackForMainWorld):
2200         (WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrGetterForMainWorld):
2201         (WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrGetterCallbackForMainWorld):
2202         (WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrSetterForMainWorld):
2203         (WebCore::TestTypedefsV8Internal::stringAttrWithGetterExceptionAttrSetterCallbackForMainWorld):
2204         (WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrGetterForMainWorld):
2205         (WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrGetterCallbackForMainWorld):
2206         (WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrSetterForMainWorld):
2207         (WebCore::TestTypedefsV8Internal::stringAttrWithSetterExceptionAttrSetterCallbackForMainWorld):
2208         (WebCore):
2209         (WebCore::ConfigureV8TestTypedefsTemplate):
2210         (WebCore::V8TestTypedefs::GetTemplate):
2211         (WebCore::V8TestTypedefs::HasInstance):
2212         * bindings/scripts/test/V8/V8TestTypedefs.h:
2213         (WebCore::toV8ForMainWorld):
2214         (WebCore):
2215         (WebCore::toV8FastForMainWorld):
2216         * bindings/v8/DOMDataStore.h:
2217         (WebCore::DOMDataStore::getWrapperForMainWorld):
2218         (DOMDataStore):
2219         * bindings/v8/V8DOMConfiguration.cpp:
2220         (WebCore::V8DOMConfiguration::addToTemplate):
2221         (WebCore):
2222         * bindings/v8/V8DOMConfiguration.h:
2223         (V8DOMConfiguration):
2224         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2225         (WebCore::toV8ForMainWorld):
2226         (WebCore):
2227         * bindings/v8/custom/V8EventTargetCustom.cpp:
2228         (WebCore::toV8ForMainWorld):
2229         (WebCore):
2230         * bindings/v8/custom/V8IDBAnyCustom.cpp:
2231         (WebCore::toV8ForMainWorld):
2232         (WebCore):
2233         * bindings/v8/custom/V8MicroDataItemValueCustom.cpp:
2234         (WebCore::toV8ForMainWorld):
2235         (WebCore):
2236         * bindings/v8/custom/V8WorkerContextCustom.cpp:
2237         (WebCore::toV8ForMainWorld):
2238         (WebCore):
2239
2240 2013-03-15  Ilya Tikhonovsky  <loislo@chromium.org>
2241
2242         Web Inspector: Flame Chart. xOffset calculates incorrectly when chart width less that canvas.width.
2243         https://bugs.webkit.org/show_bug.cgi?id=112423
2244
2245         Reviewed by Yury Semikhatsky.
2246
2247         I extracted xOffset assigment procedure into a separate function.
2248
2249         Drive by fix: size and posion of anchor element was adjusted.
2250         Drive by fix: we will not paint item if it is not visible.
2251
2252         * inspector/front-end/FlameChart.js:
2253         (WebInspector.FlameChart.prototype._maxXOffset):
2254         (WebInspector.FlameChart.prototype._setXOffset):
2255         (WebInspector.FlameChart.prototype._canvasDragging):
2256         (WebInspector.FlameChart.prototype._onMouseMove):
2257         (WebInspector.FlameChart.prototype._adjustXOffset):
2258         (WebInspector.FlameChart.prototype._adjustXScale):
2259         (WebInspector.FlameChart.prototype.draw):
2260
2261 2013-03-15  Noam Rosenthal  <noam@webkit.org>
2262
2263         [Texmap] Change brightness filter to match new spec
2264         https://bugs.webkit.org/show_bug.cgi?id=112422
2265
2266         New filters spec specifies an intercept of 0 instead of 1.
2267         This is already done for the software version in http://trac.webkit.org/changeset/139770.
2268         This patch adjusts the value for the accelerated version.
2269
2270         Reviewed by Allan Sandfeld Jensen.
2271
2272         Filter tests are currently disabled on Qt/GTK/EFL, but they would need to be rebaselined once enabled.
2273
2274         * platform/graphics/texmap/TextureMapperShaderProgram.cpp:
2275
2276 2013-03-15  Jaehun Lim  <ljaehun.lim@samsung.com>
2277
2278         Call release() when a RefPtr is returned.
2279         https://bugs.webkit.org/show_bug.cgi?id=112420
2280
2281         Reviewed by Eric Seidel.
2282
2283         release() should be called on a RefPtr to convert it to a PassRefPtr.
2284
2285         No new tests needed, no behavior changes.
2286
2287         * css/CSSParser.cpp:
2288         (WebCore::CSSParser::parseImageResolution):
2289         (WebCore::CSSParser::parseImageSet):
2290
2291 2013-03-15  Eugene Klyuchnikov  <eustas@chromium.org>
2292
2293         Web Inspector: [Network] InitiatorComparator is not reflexive/antisymmetric.
2294         https://bugs.webkit.org/show_bug.cgi?id=112341
2295
2296         Reviewed by Vsevolod Vlasov.
2297
2298         When both objects do not have initiator: f(a, b) = f(b, a) = -1
2299         Furthermore: redirected responses are mixed with "other".
2300
2301         * inspector/front-end/NetworkPanel.js:
2302         (WebInspector.NetworkDataGridNode.prototype._refreshInitiatorCell):
2303         Remember "displayed" initiator type.
2304         (WebInspector.NetworkDataGridNode.InitiatorComparator):
2305         Recall "diaplayed" initiator type for more precise comparison.
2306
2307 2013-03-15  Andrey Kosyakov  <caseq@chromium.org>
2308
2309         Web Inspector: show image decode performed off main thread on timeline
2310         https://bugs.webkit.org/show_bug.cgi?id=111159
2311
2312         Reviewed by Pavel Feldman.
2313
2314         - add handling of Decode Image event to TimelineTraceEventProcessorr;
2315         - only log platform events for the main thread;
2316         - extract constants for trace events produced by platform instrumentation.
2317
2318         * inspector/InspectorTimelineAgent.cpp:
2319         (TimelineRecordType):
2320         * inspector/InspectorTimelineAgent.h:
2321         (TimelineRecordType):
2322         * inspector/TimelineTraceEventProcessor.cpp:
2323         (WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
2324         (WebCore::TimelineTraceEventProcessor::onImageDecodeBegin):
2325         (WebCore):
2326         (WebCore::TimelineTraceEventProcessor::onImageDecodeEnd):
2327         * inspector/TimelineTraceEventProcessor.h:
2328         (TimelineTraceEventProcessor):
2329         * platform/PlatformInstrumentation.cpp:
2330         (WebCore):
2331         * platform/PlatformInstrumentation.h:
2332         (PlatformInstrumentation):
2333         (WebCore):
2334         (WebCore::PlatformInstrumentation::willDecodeImage):
2335         (WebCore::PlatformInstrumentation::didDecodeImage):
2336         (WebCore::PlatformInstrumentation::willResizeImage):
2337         (WebCore::PlatformInstrumentation::didResizeImage):
2338
2339 2013-03-15  Ilya Tikhonovsky  <loislo@chromium.org>
2340
2341         Web Inspector: Flame Chart. When user zooms the chart, the point under cursor has to be the zooming center.
2342         https://bugs.webkit.org/show_bug.cgi?id=112417
2343
2344         Reviewed by Yury Semikhatsky.
2345
2346         It converts the cursor position into time,
2347         changes the scale factor and calculates the new offset for the canvas.
2348
2349         * inspector/front-end/FlameChart.js:
2350         (WebInspector.FlameChart.prototype._adjustXScale):
2351         (WebInspector.FlameChart.prototype._onMouseWheel):
2352
2353 2013-03-13  Eugene Klyuchnikov  <eustas@chromium.org>
2354
2355         Web Inspector: [Network] Sort columns context menu items alphabetically.
2356         https://bugs.webkit.org/show_bug.cgi?id=112321
2357
2358         Reviewed by Pavel Feldman.
2359
2360         Problem: columns are presented in "natural" order,
2361         so it is hard to find specific item.
2362
2363         * inspector/front-end/NetworkPanel.js:
2364         (WebInspector.NetworkLogView.prototype._getConfigurableColumnIDs):
2365         Generate list of column IDs sorted alphabetically.
2366         (WebInspector.NetworkLogView.prototype._contextMenu):
2367         Use alphabetically sorted list of column IDs.
2368
2369 2013-03-15  Takashi Sakamoto  <tasak@google.com>
2370
2371         Crash at RenderStyle::inheritFrom reported by fuzzer
2372         https://bugs.webkit.org/show_bug.cgi?id=112322
2373
2374         Reviewed by Hajime Morrita.
2375
2376         pseudoStyleForElement should check whether a parent style of a given
2377         element is available or not. If a given element's parent is
2378         an insertion point whose reset-style-inheritance is true, the parent
2379         style is not available. Need to use defaultStyleForElement.
2380
2381         Test: fast/dom/shadow/insertion-point-resetStyleInheritance-with-pseudo-element-crash.html
2382
2383         * css/StyleResolver.cpp:
2384         (WebCore::StyleResolver::styleForElement):
2385         Removed cloneForParent. Instead, made m_state own parentStyle, i.e.
2386         changed m_parentStyle in class State from RenderStyle* to
2387         RefPtr<RenderStyle>.
2388         (WebCore::StyleResolver::pseudoStyleForElement):
2389         If an actual parent style of a given element is not available, use
2390         defaultStyleForElement. This is the same logic as styleForElement.
2391         * css/StyleResolver.h:
2392         (WebCore::StyleResolver::State::setParentStyle):
2393         Modified the parameter to use PassRefPtr<RenderStyle>.
2394         (WebCore::StyleResolver::State::parentStyle):
2395         (State):
2396
2397 2013-03-15  Mihnea Ovidenie  <mihnea@adobe.com>
2398
2399         [CSS Regions] Selecting text inside an empty region causes selection outside the region area
2400         https://bugs.webkit.org/show_bug.cgi?id=107752
2401
2402         Reviewed by David Hyatt.
2403
2404         When performing hit testing inside a flow thread, we need to make sure that
2405         we actually hit some node from the flow thread content and not the flow thread
2406         itself (which would set the hit test result node to the document node, allowing
2407         wrong selection of content outside the empty region).
2408
2409         Test: fast/regions/selecting-text-in-empty-region.html
2410
2411         * rendering/RenderFlowThread.cpp:
2412         (WebCore::RenderFlowThread::hitTestFlowThreadPortionInRegion):
2413
2414 2013-03-15  Luiz Agostini  <luiz.agostini@nokia.com>
2415
2416         [Texmap] layerRect should be used instead of contents rect for scrollable layer hit tests.
2417         https://bugs.webkit.org/show_bug.cgi?id=112413
2418
2419         Reviewed by Noam Rosenthal.
2420
2421         Using layerRect() instead of m_state.contentsRect for scrollable layer hit test.
2422         * platform/graphics/texmap/TextureMapperLayer.cpp:
2423         (WebCore::TextureMapperLayer::scrollableLayerHitTestCondition):
2424
2425 2013-03-14  Dominic Cooney  <dominicc@chromium.org>
2426
2427         Redundant if statement in RenderTextControlSingleLine::layout should be removed
2428         https://bugs.webkit.org/show_bug.cgi?id=112406
2429
2430         Reviewed by Andreas Kling.
2431
2432         Covered by existing tests added in r145239.
2433
2434         * rendering/RenderTextControlSingleLine.cpp:
2435         (WebCore::RenderTextControlSingleLine::layout):
2436
2437 2013-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2438
2439         Unreviewed, rolling out r145864.
2440         http://trac.webkit.org/changeset/145864
2441         https://bugs.webkit.org/show_bug.cgi?id=112408
2442
2443         should fix XMLDocumentParser instead of CSSDefaultStyleSheet
2444         (Requested by tasak on #webkit).
2445
2446         * css/CSSDefaultStyleSheets.cpp:
2447         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
2448
2449 2013-03-14  Eugene Klyuchnikov  <eustas@chromium.org>
2450
2451         Web Inspector: [DataGrid] Specify columns with array of descriptors.
2452         https://bugs.webkit.org/show_bug.cgi?id=112338
2453
2454         Reviewed by Pavel Feldman.
2455
2456         Currently columns are specified by Object that maps
2457         column identifiers to column descriptors. Iteration order over
2458         Object keys is not guaranteed.
2459
2460         Array should be used to specify column order.
2461
2462         * inspector/front-end/DataGrid.js: Change consrtructor parameter type.
2463         * inspector/front-end/ApplicationCacheItemsView.js: Adopt changes.
2464         * inspector/front-end/CPUProfileView.js: Ditto.
2465         * inspector/front-end/CSSSelectorProfileView.js: Ditto.
2466         * inspector/front-end/CanvasProfileView.js: Ditto.
2467         * inspector/front-end/CookieItemsView.js: Ditto.
2468         * inspector/front-end/CookiesTable.js: Ditto.
2469         * inspector/front-end/DOMStorageItemsView.js: Ditto.
2470         * inspector/front-end/DirectoryContentView.js: Ditto.
2471         * inspector/front-end/HeapSnapshot.js: Ditto.
2472         * inspector/front-end/HeapSnapshotDataGrids.js: Ditto.
2473         * inspector/front-end/IndexedDBViews.js: Ditto.
2474         * inspector/front-end/NativeMemorySnapshotView.js: Ditto.
2475         * inspector/front-end/NetworkPanel.js: Ditto.
2476         * inspector/front-end/ResourceWebSocketFrameView.js: Ditto.
2477
2478 2013-03-14  Ilya Tikhonovsky  <loislo@chromium.org>
2479
2480         Web Inspector: Flame Chart. Support scrolling by dragging.
2481         https://bugs.webkit.org/show_bug.cgi?id=112346
2482
2483         Reviewed by Yury Semikhatsky.
2484
2485         Drag hander was added. It seems that simple repaint works well.
2486         When the user starts dragging we hide the popover, change offset
2487         and do update for the new canvas image.
2488         Drive by change: Due to new way of scrolling the canvas I changed
2489         the behaiviour of the wheel events. Now wheel scrolls if Shift key pressed
2490         and zooms if not.
2491
2492         * inspector/front-end/FlameChart.js:
2493         (WebInspector.FlameChart):
2494         (WebInspector.FlameChart.prototype._startCanvasDragging):
2495         (WebInspector.FlameChart.prototype._canvasDragging):
2496         (WebInspector.FlameChart.prototype._endCanvasDragging):
2497         (WebInspector.FlameChart.prototype._onMouseWheel):
2498
2499 2013-03-14  Hayato Ito  <hayato@chromium.org>
2500
2501         [Shadow Dom]: Non Bubbling events in ShadowDOM dispatch in an incorrect order
2502         https://bugs.webkit.org/show_bug.cgi?id=112214
2503
2504         Reviewed by Dimitri Glazkov.
2505
2506         Fix the order of event dispatching for Shadow DOM.
2507
2508         So far, an event whose event phase should be set to AT_TARGET,
2509         e.g. event at shadow hosts, is dispatched in bubbling phase in the
2510         whole event path.  This patch fixed the order of event dispatching
2511         so that an event whose event phase must be set to AT_TARGET phase
2512         is dispatched in capturing phase rather than bubbling phase.
2513
2514         The spec is here:
2515         https://dvcs.w3.org/hg/webcomponents/raw-file/tip/spec/shadow/index.html#event-dispatch
2516
2517         5.5 Event Dispatch says:
2518
2519         - When capturing, which entails processing step 3 of the event
2520         dispatch algorithm, the Event eventPhase attribute must return
2521         AT_TARGET if the relative target is same as the node on which
2522         event listeners are invoked
2523         - When bubbling, which entails
2524         processing step 6 of the event dispatch algorithm, the event
2525         listeners must not be invoked on a node if it is the same as its
2526         relative target
2527
2528         No new tests. Update existing layout tests.
2529
2530         * dom/EventDispatcher.cpp:
2531         (WebCore::EventDispatcher::dispatchEventAtCapturing):
2532         (WebCore::EventDispatcher::dispatchEventAtBubbling):
2533
2534 2013-03-14  Shezan Baig  <sbaig1@bloomberg.net>
2535
2536         Backspace/delete at start of table cell shouldn't step out of cell
2537         https://bugs.webkit.org/show_bug.cgi?id=35372
2538
2539         Reviewed by Ryosuke Niwa.
2540
2541         Make Delete and ForwardDelete commands be no-ops if we are at the first
2542         position or last position of a table cell respectively.
2543
2544         Tests: editing/deleting/backspace-at-table-cell-beginning.html
2545                editing/deleting/forward-delete-at-table-cell-ending.html
2546
2547         * editing/TypingCommand.cpp:
2548         (WebCore::TypingCommand::deleteKeyPressed):
2549         (WebCore::TypingCommand::forwardDeleteKeyPressed):
2550
2551 2013-03-14  Xidorn Quan  <quanxunzhen@gmail.com>
2552
2553         Clickable area is incorrect for elements with border-radius
2554         https://bugs.webkit.org/show_bug.cgi?id=95373
2555
2556         Reviewed by Simon Fraser.
2557
2558         As RenderBlock doesn't see rounded rect which comes from border-radius
2559         in nodeAtPoint, the rounded corner seems to have an 'invisible' square
2560         box which catches hits. So we added check on whether hitTestPoint also
2561         intersects the rounded rect when hasBorderRadius is set.
2562
2563         This patch is based on Takashi Sakamoto's work in
2564         https://bugs.webkit.org/show_bug.cgi?id=95373
2565
2566         Test: fast/borders/border-radius-position.html
2567
2568         * platform/graphics/FloatQuad.cpp:
2569         (WebCore):
2570         (WebCore::lineIntersectsCircle):
2571         (WebCore::FloatQuad::intersectsCircle):
2572         (WebCore::FloatQuad::intersectsEllipse):
2573         * platform/graphics/FloatQuad.h:
2574         (FloatQuad):
2575         * platform/graphics/RoundedRect.cpp:
2576         (WebCore::RoundedRect::intersectsQuad):
2577         (WebCore):
2578         * platform/graphics/RoundedRect.h:
2579         (RoundedRect):
2580         * rendering/HitTestLocation.cpp:
2581         (WebCore::HitTestLocation::intersects):
2582         (WebCore):
2583         * rendering/HitTestLocation.h:
2584         (HitTestLocation):
2585         * rendering/RenderBlock.cpp:
2586         (WebCore::RenderBlock::nodeAtPoint):
2587
2588 2013-03-14  Chris Fleizach  <cfleizach@apple.com>
2589
2590         AX: Crash when removing aria-menu item from DOM
2591         https://bugs.webkit.org/show_bug.cgi?id=112396
2592
2593         Reviewed by Tim Horton.
2594
2595         Prevent nil access to items in the ARIA menu flow when deleting
2596         objects from the DOM.
2597
2598         Test: accessibility/menu-item-crash.html
2599
2600         * accessibility/AccessibilityNodeObject.cpp:
2601         (WebCore::siblingWithAriaRole):
2602         (WebCore::AccessibilityNodeObject::menuButtonForMenu):
2603
2604 2013-03-14  Hayato Ito  <hayato@chromium.org>
2605
2606         [Shadow]: left side of ::-webkit-distributed selector not working as expected
2607         https://bugs.webkit.org/show_bug.cgi?id=110825
2608
2609         Reviewed by Dimitri Glazkov.
2610
2611         Make functional pseudo distributed elements work even when a left side element has specifiers.
2612
2613         Test: fast/dom/shadow/distributed-pseudo-element-specifiers-in-left-side.html
2614
2615         * css/CSSParser.cpp:
2616         (WebCore::CSSParser::rewriteSpecifiersWithNamespaceIfNeeded):
2617         Make it call rewriteSpecifiersForShadowDistributed() if required.
2618
2619         (WebCore::CSSParser::rewriteSpecifiersWithElementName):
2620         Updated so that it can generate a correct chain of
2621         CSSParserSelectors even when '::distributed()' is used with an
2622         element, which might be empty, with specifiers.
2623
2624         e.g. When parsing a selector of 'content.content-class::-webkit-distributed(div)', the following happens:
2625
2626         1. rewriteSpecifiersWithElementName(...) is called with:
2627
2628            elementName is: "content"
2629            specifiers is: [.content-class] -> [::-webkit-distributed]
2630
2631         2. Looking for a distributed pseudo element in the specifiers and
2632            found it at the end of tagHistory chain of the specifiers.
2633
2634         3. The result of calling specifiers->prependTagSelector(tag) is:
2635
2636            specifiers is: [content] -> [.content-class] -> [::-webkit-distributed]
2637
2638         4. rewriteSpecifiersForShadowDistributed() is called with:
2639
2640            specifiers is: [content] -> [.content-class] -> [::-webkit-distributed]
2641            distributedPseudoElementSelector is: [::-webkit-distributed]
2642
2643         5. An argumentSelector of the distributedPseudoElementSelector is:
2644
2645            argumentSelector is: [div]
2646
2647         6. Remove the distributed pseudo element selector from the specifiers.
2648
2649            specifiers is: [content] -> [.content-class]
2650
2651            Note that one pseudo-element may appear per complex selector
2652            and the pseudo-element may appear only if the subject of the
2653            selector is the last compound selector in the selector.
2654
2655         7. Append specifiers to the end of the argument selector with a relation of ShadowDistributed:
2656
2657            argumentSelector is: [div] -(ShadowDistributed)-> [content] -> [.content-class]
2658
2659         8. Returns the argument selector as a return value.
2660
2661         (WebCore::CSSParser::rewriteSpecifiersForShadowDistributed): As explained.
2662         * css/CSSParserValues.cpp:
2663         (WebCore):
2664         (WebCore::CSSParserSelector::findDistributedPseudoElementSelector):
2665         * css/CSSParserValues.h:
2666         (CSSParserSelector):
2667         (WebCore::CSSParserSelector::clearTagHistory):
2668
2669 2013-03-14  Takashi Sakamoto  <tasak@google.com>
2670
2671         Crash at CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement reported by fuzzer
2672         https://bugs.webkit.org/show_bug.cgi?id=112328
2673
2674         Reviewed by Dimitri Glazkov.
2675
2676         ensureDefaultStyleSheets should check whether page() is null or not.
2677
2678         Test: fast/css/ensure-default-style-sheets-crash.xhtml
2679
2680         * css/CSSDefaultStyleSheets.cpp:
2681         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
2682
2683 2013-03-14  Brandon Jones  <bajones@google.com>
2684
2685         Check to ensure MultisampleRenderbuffer creation succeeds
2686         https://bugs.webkit.org/show_bug.cgi?id=111780
2687
2688         Reviewed by Kenneth Russell.
2689
2690         On OSX systems using AMD graphics chips the allocation of large
2691         Multisample Renderbuffers in Chromium would fail without any indication
2692         of failure. Attempting to draw to the buffer resulted in garbage being
2693         rendered onscreen. This could be reproduced by opening a full-page
2694         WebGL app and pressing (Command + "-") several times. This patch adds an
2695         additional check during DrawingBuffer resize to verify that the resized
2696         buffer is valid. 
2697
2698         * platform/graphics/gpu/DrawingBuffer.cpp:
2699         (WebCore):
2700         (WebCore::DrawingBuffer::checkBufferIntegrity):
2701         (WebCore::DrawingBuffer::reset):
2702         * platform/graphics/gpu/DrawingBuffer.h:
2703         (DrawingBuffer):
2704
2705 2013-03-14  Enrica Casucci  <enrica@apple.com>
2706
2707         Character orientation should follow UTR50 specs for vertical layout.
2708         https://bugs.webkit.org/show_bug.cgi?id=112213
2709         <rdar://problem/12880943>
2710
2711         Reviewed by Ryosuke Niwa.
2712
2713         platform/mac/fast/text/vertical-no-sideways.html: Modified to cover samples
2714         of the additional character ranges that should not be rotated in vertical layout.
2715         Added pixel results.
2716
2717         This patch modifies shouldIgnoreRotation to include all the characters that
2718         should not be rotated sideways in vertical layout according to the UTR50 draft 6
2719         specifications. It also fixes rotation for Emojii.
2720
2721         * platform/graphics/FontFastPath.cpp:
2722         (WebCore::shouldIgnoreRotation):
2723         (WebCore::isInRange): Added.
2724         * platform/graphics/mac/FontMac.mm:
2725         (WebCore::showGlyphsWithAdvances): Adds the proper transforms to ensure
2726         Emojii also are drawn correctly upright.
2727
2728 2013-03-14  Manuel Rego Casasnovas  <rego@igalia.com>
2729
2730         Add selectTrailingWhitespaceEnabled setting to WebCore::Page
2731         https://bugs.webkit.org/show_bug.cgi?id=109404
2732
2733         Reviewed by Tony Chang.
2734
2735         Covered by
2736         editing/selection/doubleclick-inline-first-last-contenteditable.html.
2737
2738         * page/Settings.cpp:
2739         (WebCore): Configure default value for smartInsertDeleteEnabled and
2740         selectTrailingWhitespaceEnabled seetings as they are different in
2741         Chromium port depending on the OS.
2742         * page/Settings.in: Add new setting.
2743
2744 2013-03-14  Robert Flack  <flackr@chromium.org>
2745
2746         [chromium] Short scrollbar has empty track rect even when buttons have no size.
2747         https://bugs.webkit.org/show_bug.cgi?id=102580
2748
2749         Reviewed by James Robinson.
2750
2751         When computing the scrollbar track rect, don't assume the button's height is the track width.
2752
2753         Test: platform/chromium/scrollbars/short-scrollbar.html
2754         Note however that this doesn't expose the bug on any tested platforms and mock scrollbars
2755         don't use ScrollbarThemeChromium.cpp. Manually running this test on linux chromiumos will
2756         show the now present scrollbar track and thumb.
2757
2758         * platform/chromium/ScrollbarThemeChromium.cpp:
2759         (WebCore::ScrollbarThemeChromium::trackRect):
2760
2761 2013-03-14  Andrey Lushnikov  <lushnikov@chromium.org>
2762
2763         Web Inspector: Show syntax highlight for application/javascript in Resource Preview tab
2764         https://bugs.webkit.org/show_bug.cgi?id=112355
2765
2766         Reviewed by Pavel Feldman.
2767
2768         No new tests.
2769
2770         Return canonical mimeType in requestContent method of
2771         NetworkRequest.js
2772
2773         * inspector/front-end/NetworkRequest.js:
2774         (WebInspector.NetworkRequest.prototype.requestContent):
2775
2776 2013-03-14  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2777
2778         [EFL] Use CROSS_PLATFORM_CONTEXT_MENU
2779         https://bugs.webkit.org/show_bug.cgi?id=111877
2780
2781         Reviewed by Caio Marcelo de Oliveira Filho.
2782
2783         Now EFL uses the CROSS_PLATFORM_CONTEXT_MENUS
2784         USE flag. This flag provides a full cross-platform
2785         representation of a ContextMenu and a ContextMenuItem.
2786         The embedder can then decide how to show this and neither
2787         WebCore nor WebCore/platform need to know any platform
2788         specific code about the menus, even though they could.
2789
2790         No new tests needed, no behavior changes.
2791
2792         * platform/ContextMenu.h:
2793         (ContextMenu):
2794         * platform/ContextMenuItem.h:
2795         (WebCore):
2796         * platform/PlatformMenuDescription.h:
2797         (WebCore):
2798         * platform/efl/ContextMenuEfl.cpp:
2799         (WebCore::ContextMenu::ContextMenu):
2800         (WebCore::ContextMenu::getContextMenuItems):
2801         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
2802         (WebCore::ContextMenu::platformContextMenu):
2803         * platform/efl/ContextMenuItemEfl.cpp:
2804         (WebCore::ContextMenuItem::platformContextMenuItem):
2805
2806 2013-03-14  Julien Chaffraix  <jchaffraix@webkit.org>
2807
2808         [CSS Grid Layout] resolveContentBasedTrackSizingFunctions should iterate over the grid items not the grid tracks
2809         https://bugs.webkit.org/show_bug.cgi?id=112299
2810
2811         Reviewed by Tony Chang.
2812
2813         Our initial implementation would iterate over the grid tracks. This was equivalent as no items were spanning but
2814         once grid items spans, they start to contribute to several grid tracks differently. This change aligns our code
2815         with what the specification does.
2816
2817         One upside of doing a grid items' iteration is that the complexity should be better in all cases as we don't do
2818         a full grid walking (which is potentially quadratic), only some extra grid tracks' iteration (which are linear).
2819
2820         Refactoring, there should be no change in behavior.
2821
2822         * rendering/RenderGrid.cpp:
2823         (WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
2824         Moved the |availableLogicalSpace| update into resolveContentBasedTrackSizingFunctions. This simplifies and consolidate our handling.
2825
2826         (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
2827         Updated the core loop to iterator over grid items and not grid tracks. This idea is that now resolveContentBasedTrackSizingFunctionsForItems
2828         uses a filtering function to only process the appropriate grid tracks.
2829
2830         (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
2831         Updated to filter the grid tracks here (this matches the |TracksForGrowth| spec logic that is merely a filtering function).
2832
2833         * rendering/RenderGrid.h:
2834         Added a new typedef and updated resolveContentBasedTrackSizingFunctionsForItems to use it.
2835
2836         * rendering/style/GridTrackSize.h:
2837         (WebCore::GridTrackSize::hasMinOrMaxContentMinTrackBreadth):
2838         (WebCore::GridTrackSize::hasMaxContentMinTrackBreadth):
2839         (WebCore::GridTrackSize::hasMinOrMaxContentMaxTrackBreadth):
2840         (WebCore::GridTrackSize::hasMaxContentMaxTrackBreadth):
2841         Added the following filtering function, which matches the values from |TracksForGrowth| in the specification.
2842
2843 2013-03-14  Alberto Garcia  <agarcia@igalia.com>
2844
2845         [BlackBerry] Gradient: don't use the default setPlatformGradientSpaceTransform()
2846         https://bugs.webkit.org/show_bug.cgi?id=112246
2847
2848         Reviewed by Xan Lopez.
2849
2850         BlackBerry has its own implementation.
2851
2852         * platform/graphics/Gradient.cpp:
2853         (WebCore):
2854
2855 2013-03-14  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2856
2857         [GStreamer] simulateAudioInterruption needs to be guarded by ENABLE(VIDEO)"
2858         https://bugs.webkit.org/show_bug.cgi?id=112358
2859
2860         Guarded with ENABLE(VIDEO) to prevent problems when it is not
2861         enabled.
2862
2863         Reviewed by Philippe Normand.
2864
2865 2013-03-12  Florin Malita  <fmalita@chromium.org>
2866
2867         Tighten up the type bounds for SVGPropertyInfo callback parameters
2868         https://bugs.webkit.org/show_bug.cgi?id=111786
2869
2870         Reviewed by Philip Rogers.
2871
2872         Update SVGPropertyInfo's callbacks to pass SVGElement* parameters instead of void*. This
2873         allows us to perform some ASSERT-based type checking before downcasting in implementors.
2874
2875         To avoid adding virtual methods unused in release builds to the base class (and overrides
2876         in descendants), for subtypes lacking polymorphic type markers (isXXX()) the check is
2877         performed using hasTagName() instead.
2878
2879         The patch is also removing the lookupOrCreateWrapperForAnimatedProperty() SVGPropertyInfo
2880         callback for SVGViewSpec properties, because
2881
2882           a) it doesn't appear to be reachable (SVGViewSpec doesn't have a backing element and
2883           thus cannot have an associated animator)
2884
2885           b) it interferes with the parameter specialization described above (SVGViewSpec does not
2886           inherit from SVGElement)
2887
2888         No new tests, refactoring only.
2889
2890         * svg/SVGElement.cpp:
2891         (WebCore::SVGElement::synchronizeRequiredFeatures):
2892         (WebCore::SVGElement::synchronizeRequiredExtensions):
2893         (WebCore::SVGElement::synchronizeSystemLanguage):
2894         * svg/SVGElement.h:
2895         (SVGElement):
2896         * svg/SVGMarkerElement.cpp:
2897         (WebCore::SVGMarkerElement::synchronizeOrientType):
2898         (WebCore::SVGMarkerElement::lookupOrCreateOrientTypeWrapper):
2899         * svg/SVGMarkerElement.h:
2900         (SVGMarkerElement):
2901         (WebCore::toSVGMarkerElement):
2902         (WebCore):
2903         * svg/SVGPathElement.cpp:
2904         (WebCore::SVGPathElement::lookupOrCreateDWrapper):
2905         (WebCore::SVGPathElement::synchronizeD):
2906         * svg/SVGPathElement.h:
2907         (SVGPathElement):
2908         (WebCore::toSVGPathElement):
2909         (WebCore):
2910         * svg/SVGPolyElement.cpp:
2911         (WebCore::SVGPolyElement::synchronizePoints):
2912         (WebCore::SVGPolyElement::lookupOrCreatePointsWrapper):
2913         * svg/SVGPolyElement.h:
2914         (SVGPolyElement):
2915         (WebCore::toSVGPolyElement):
2916         (WebCore):
2917         * svg/SVGTextContentElement.cpp:
2918         (WebCore::SVGTextContentElement::synchronizeTextLength):
2919         (WebCore::SVGTextContentElement::lookupOrCreateTextLengthWrapper):
2920         * svg/SVGTextContentElement.h:
2921         (SVGTextContentElement):
2922         (WebCore::toSVGTextContentElement):
2923         (WebCore):
2924         Change SVGPropertyInfo callback params to SVGElement* and replace static casts with
2925         conversion wrappers. Implement conversion wrappers where needed.
2926
2927         * svg/SVGViewSpec.cpp:
2928         (WebCore::SVGViewSpec::viewBoxPropertyInfo):
2929         (WebCore::SVGViewSpec::preserveAspectRatioPropertyInfo):
2930         (WebCore::SVGViewSpec::transformPropertyInfo):
2931         (WebCore::SVGViewSpec::lookupOrCreateViewBoxWrapper):
2932         (WebCore::SVGViewSpec::lookupOrCreatePreserveAspectRatioWrapper):
2933         (WebCore::SVGViewSpec::lookupOrCreateTransformWrapper):
2934         * svg/SVGViewSpec.h:
2935         (SVGViewSpec):
2936         Remove SVGPropertyInfo-based lookupOrCreate* callbacks and updated the methods' parameters
2937         to SVGViewSpec*. Remove now-unneeded casts.
2938
2939         * svg/properties/SVGAnimatedPropertyMacros.h:
2940         (WebCore):
2941         * svg/properties/SVGPropertyInfo.h:
2942         (WebCore):
2943         (SVGPropertyInfo):
2944         Update callback declarations.
2945
2946 2013-03-14  Jesus Sanchez-Palencia  <jesus.palencia@openbossa.org>
2947
2948         Move platform-specific typedefs to PlatformMenuDescription.h
2949         https://bugs.webkit.org/show_bug.cgi?id=111876
2950
2951         Reviewed by Caio Marcelo de Oliveira Filho.
2952
2953         Cross platform Context Menu platform-specific typedefs fit better
2954         in PlatformMenuDescription.h and should not be part of the classes
2955         ContextMenu and ContextMenuItem. We have also renamed them to
2956         PlatformContextMenu and PlatformContextMenuItem instead of NativeMenu
2957         and NativeMenuItem respectively.
2958
2959         No new tests needed since no behavior has changed.
2960
2961         * platform/ContextMenu.h:
2962         (ContextMenu):
2963         * platform/ContextMenuItem.h:
2964         (ContextMenuItem):
2965         * platform/PlatformMenuDescription.h:
2966         (WebCore):
2967         * platform/efl/ContextMenuEfl.cpp:
2968         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
2969         (WebCore::ContextMenu::platformContextMenu):
2970         * platform/efl/ContextMenuItemEfl.cpp:
2971         (WebCore::ContextMenuItem::platformContextMenuItem):
2972         * platform/win/ContextMenuItemWin.cpp:
2973         (WebCore):
2974         (WebCore::ContextMenuItem::platformContextMenuItem):
2975         * platform/win/ContextMenuWin.cpp:
2976         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
2977         (WebCore::ContextMenu::platformContextMenu):
2978
2979 2013-03-11  Jer Noble  <jer.noble@apple.com>
2980
2981         Crash in DumpRenderTree at com.apple.WebCore: WebCore::CaptionUserPreferences::captionPreferencesChanged + 185
2982         https://bugs.webkit.org/show_bug.cgi?id=112051
2983
2984         Reviewed by Eric Carlson.
2985
2986         No new tests; fixes a crash during media/video-controls-captions-trackmenu.html.
2987
2988         Instead of relying on a registration system which can fail when an element's document does not have a page,
2989         Elements will register for captionPreferencesChanged() notifications directly with their owning Document.
2990         CaptionUserPreferences, in turn, will notify all Documents in its PageGroup, rather than only directly
2991         registered listeners.
2992
2993         * dom/Document.cpp:
2994         (WebCore::Document::registerForCaptionPreferencesChangedCallbacks): Added. Notify the CaptionUserPreferences that someone
2995             is interested in captionPreferencesChanged notfications.
2996         (WebCore::Document::unregisterForCaptionPreferencesChangedCallbacks): Added.
2997         (WebCore::Document::captionPreferencesChanged): Added. Pass to all registered elements.
2998         * dom/Document.h:
2999         * dom/Element.h:
3000         (WebCore::Element::captionPreferencesChanged): Added. Empty; intended
3001             to be overridden by subclasses.
3002         * history/CachedPage.cpp:
3003         (WebCore::CachedPage::CachedPage): Initialize m_needsCaptionPreferenceChanged member.
3004         (WebCore::CachedPage::restore): Call captionPreferencesChanged() if necessary.
3005         * history/CachedPage.h:
3006         (WebCore::CachedPage::markForCaptionPreferencesChanged): Set the m_needsCaptionPreferenceChanged member.
3007         * history/PageCache.cpp:
3008         (WebCore::PageCache::markPagesForCaptionPreferencesChanged): Pass to every CachedPage.
3009         * history/PageCache.h:
3010         * html/HTMLMediaElement.cpp:
3011         (WebCore::HTMLMediaElement::HTMLMediaElement): Register with the Document.
3012         (WebCore::HTMLMediaElement::~HTMLMediaElement): Unregister with same.
3013         (WebCore::HTMLMediaElement::attach): Remove previous registration call.
3014         * html/HTMLMediaElement.h:
3015         * page/CaptionUserPreferences.cpp:
3016         (WebCore::CaptionUserPreferences::captionPreferencesChanged): Pass to the
3017             PageGroup.
3018         * page/CaptionUserPreferences.h:
3019         (WebCore::CaptionUserPreferences::setInterestedInCaptionPreferenceChanges):
3020             Empty; intended to be overridden by subclasses.
3021         * page/CaptionUserPreferencesMac.h:
3022         * page/CaptionUserPreferencesMac.mm:
3023         (WebCore::CaptionUserPreferencesMac::setInterestedInCaptionPreferenceChanges):
3024             Renamed from registerForPreferencesChangedCallbacks().
3025         (WebCore::CaptionUserPreferencesMac::captionPreferencesChanged):
3026             Replace call to havePreferenceChangeListeners() with m_listeningForPreferenceChanges.
3027         * page/Page.cpp:
3028         (WebCore::Page::captionPreferencesChanged):
3029             Pass to every contained Document.
3030         * page/Page.h:
3031         * page/CaptionUserPreferences.cpp:
3032         (WebCore::CaptionUserPreferences::captionPreferencesChanged): Pass to the PageGroup.
3033         * page/CaptionUserPreferences.h:
3034         * page/PageGroup.cpp:
3035         (WebCore::PageGroup::captionPreferencesChanged): Pass to every page, as well as pages in the PageCache.
3036         * page/PageGroup.h:
3037
3038 2013-03-14  David Grogan  <dgrogan@chromium.org>
3039
3040         IndexedDB: Histogram leveldb open errors.
3041         https://bugs.webkit.org/show_bug.cgi?id=112307
3042
3043         Reviewed by Tony Chang.
3044
3045         No new tests, I don't know if there's a good way to test histograms.
3046
3047         * platform/leveldb/LevelDBDatabase.cpp:
3048         (WebCore::LevelDBDatabase::open):
3049
3050 2013-03-14  Robert Hogan  <robert@webkit.org>
3051
3052         REGRESSION(r145305) Performance: 1.3% mac-release-10.6-webkit-latest/intl2/times/t change after rev 145300
3053         https://bugs.webkit.org/show_bug.cgi?id=112125
3054
3055         Reviewed by Julien Chaffraix.
3056
3057         When detecting cases where a loaded image may need to move up into the padding created by the row's baseline
3058         we don't need to do anything if the row doesn't have a baseline yet.
3059
3060         * rendering/RenderTableCell.cpp:
3061         (WebCore::RenderTableCell::layout):
3062
3063 2013-03-14  Brady Eidson  <beidson@apple.com>
3064
3065         Add a mode to ResourceLoader that takes SharedBuffers instead of raw pointers and lengths.
3066         <rdar://problem/13416953> and https://bugs.webkit.org/show_bug.cgi?id=112310
3067
3068         Reviewed by Andy Estes.
3069
3070         No new tests (No independently testable change in behavior).
3071
3072         Many of the tested platforms deliver data buffers to their ResourceHandles from objects
3073         that encapsulate a data buffer such as NSData (Mac), CFDataRef (CF), or QByteArray (qt).
3074
3075         If those platforms also augmented SharedBuffer to wrap their native object (which Mac/CF do)
3076         and there existed ResourceLoader callbacks to take that SharedBuffer instead of char* + length,
3077         then many resource loads could avoid a useless copy.
3078
3079         At least on Mac, there are some extremely important behind-the-scenes optimizations for NS/CFData
3080         that will be a more important win than simply avoiding a copy.
3081
3082         This patch adds that SharedBuffer-based callback with the hope that all platforms could find a 
3083         way to use a buffer-encapsulating object going forward, and we could therefore deprecate the
3084         char* + length version of didReceiveData.
3085
3086         * platform/network/ResourceHandleClient.h:
3087         (WebCore::ResourceHandleClient::didReceiveBuffer): Add a didReceiveBuffer callback that takes 
3088           a SharedBuffer object. The default implementation passes raw bytes + length to didReceiveData.
3089
3090         * loader/ResourceLoader.cpp:
3091         (WebCore::ResourceLoader::addDataOrBuffer): Replacing addData(), optionally adding the data from
3092           either a data+length or SharedBuffer
3093         (WebCore::ResourceLoader::didReceiveData): Pipe to didReceiveDataOrBuffer.
3094         (WebCore::ResourceLoader::didReceiveBuffer): Pipe to didReceiveDataOrBuffer.
3095         (WebCore::ResourceLoader::didReceiveDataOrBuffer): Single chokepoint for receiving data.
3096         * loader/ResourceLoader.h: Add OVERRIDE to all of the ResourceHandleClient methods to help
3097           catch future mistakes. Remove "virtual" from methods that didn't need it. Make "addData" into
3098           "addDataOrBuffer" and make it private.
3099
3100         * loader/NetscapePlugInStreamLoader.cpp:
3101         (WebCore::NetscapePlugInStreamLoader::didReceiveData): Pipe to didReceiveDataOrBuffer.
3102         (WebCore::NetscapePlugInStreamLoader::didReceiveBuffer): Pipe to didReceiveDataOrBuffer.
3103         (WebCore::NetscapePlugInStreamLoader::didReceiveDataOrBuffer): Single chokepoint for receiving data.
3104         * loader/NetscapePlugInStreamLoader.h:
3105
3106         * loader/SubresourceLoader.cpp:
3107         (WebCore::SubresourceLoader::didReceiveData): Pipe to didReceiveDataOrBuffer.
3108         (WebCore::SubresourceLoader::didReceiveBuffer): Pipe to didReceiveDataOrBuffer.
3109         (WebCore::SubresourceLoader::didReceiveDataOrBuffer): Single chokepoint for receiving data. Also,
3110           rely on ResourceLoader's base implementation for notifying the ResourceLoadNotifier.
3111         * loader/SubresourceLoader.h:
3112
3113         * loader/ResourceBuffer.cpp:
3114         (WebCore::ResourceBuffer::append): Add a mode that appends a SharedBuffer.
3115         * loader/ResourceBuffer.h:
3116
3117         * platform/cf/SharedBufferCF.cpp:
3118         (WebCore::SharedBuffer::maybeTransferPlatformData): Fix a bug where appending data to a CFData-backed
3119           SharedBuffer would re-enter maybeTransferPlatformData and blow out the stack.
3120
3121         * platform/network/mac/ResourceHandleMac.mm:
3122         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]): Send a wrapped NSData
3123           to didReceiveBuffer() instead of sending its char* and length to didReceiveData()
3124
3125 2013-03-14  Yury Semikhatsky  <yurys@chromium.org>
3126
3127         Web Inspector: nuke bottom up CPU profile calculation on backend
3128         https://bugs.webkit.org/show_bug.cgi?id=112351
3129
3130         Reviewed by Pavel Feldman.
3131
3132         Removed code that builds bottom-up CPU profile on the inspector
3133         backend. Bottom-up view is already built on the front-end from
3134         the top-down profile data.
3135
3136         * bindings/js/ScriptProfile.cpp:
3137         * bindings/js/ScriptProfile.h:
3138         (ScriptProfile):
3139         * bindings/v8/ScriptProfile.cpp:
3140         (WebCore::ScriptProfile::buildInspectorObjectForHead):
3141         * bindings/v8/ScriptProfile.h:
3142         (ScriptProfile):
3143         * inspector/Inspector.json:
3144         * inspector/InspectorProfilerAgent.cpp:
3145         (WebCore::InspectorProfilerAgent::getCPUProfile):
3146
3147 2013-03-14  Abhishek Arya  <inferno@chromium.org>
3148
3149         Replace static_casts with to* helper functions.
3150         https://bugs.webkit.org/show_bug.cgi?id=112296
3151
3152         Reviewed by Kentaro Hara.
3153
3154         to* helper functions are preferred over static_cast calls since they
3155         help to catch bad casts easily on the testing infrastructure.
3156
3157         * accessibility/AXObjectCache.cpp:
3158         (WebCore::nodeHasRole):
3159         * accessibility/AccessibilityObject.cpp:
3160         (WebCore::AccessibilityObject::hasAttribute):
3161         (WebCore::AccessibilityObject::getAttribute):
3162         * accessibility/AccessibilityRenderObject.cpp:
3163         (WebCore::AccessibilityRenderObject::anchorElement):
3164         (WebCore::AccessibilityRenderObject::helpText):
3165         (WebCore::AccessibilityRenderObject::checkboxOrRadioRect):
3166         (WebCore::AccessibilityRenderObject::titleUIElement):
3167         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
3168         (WebCore::AccessibilityRenderObject::accessKey):
3169         (WebCore::AccessibilityRenderObject::setElementAttributeValue):
3170         (WebCore::AccessibilityRenderObject::setValue):
3171         (WebCore::AccessibilityRenderObject::activeDescendant):
3172         (WebCore::AccessibilityRenderObject::handleActiveDescendantChanged):
3173         (WebCore::AccessibilityRenderObject::correspondingLabelForControlElement):
3174         (WebCore::AccessibilityRenderObject::inheritsPresentationalRole):
3175         (WebCore::AccessibilityRenderObject::setAccessibleName):
3176         (WebCore::AccessibilityRenderObject::stringRoleForMSAA):
3177         * bindings/gobject/WebKitDOMBinding.cpp:
3178         (WebKit::createWrapper):
3179         * bindings/js/JSClipboardCustom.cpp:
3180         (WebCore::JSClipboard::setDragImage):
3181         * bindings/js/JSElementCustom.cpp:
3182         (WebCore::toJSNewlyCreated):
3183         * bindings/js/JSNodeCustom.cpp:
3184         (WebCore::createWrapperInline):
3185         * bindings/v8/custom/V8ClipboardCustom.cpp:
3186         (WebCore::V8Clipboard::setDragImageMethodCustom):
3187         * bindings/v8/custom/V8ElementCustom.cpp:
3188         (WebCore::wrap):
3189         * bindings/v8/custom/V8NodeCustom.cpp:
3190         (WebCore::wrap):
3191         * dom/Document.cpp:
3192         (WebCore::Document::importNode):
3193         (WebCore::Document::recalcStyle):
3194         (WebCore::Document::setFocusedNode):
3195         (WebCore::Document::updateFocusAppearanceTimerFired):
3196         * dom/DocumentStyleSheetCollection.cpp:
3197         (WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
3198         * dom/Element.cpp:
3199         (WebCore::Element::offsetParent):
3200         (WebCore::Element::boundsInRootViewSpace):
3201         (WebCore::Element::getBoundingClientRect):
3202         (WebCore::Element::recalcStyle):
3203         (WebCore::Element::computeInheritedLanguage):
3204         (WebCore::Element::lastElementChild):
3205         * dom/LiveNodeList.cpp:
3206         (WebCore::LiveNodeList::namedItem):
3207         * dom/Node.cpp:
3208         (WebCore::Node::dumpStatistics):
3209         (WebCore::Node::normalize):
3210         (WebCore::Node::rootEditableElement):
3211         (WebCore::Node::isDefaultNamespace):
3212         (WebCore::Node::ancestorElement):
3213         (WebCore::appendAttributeDesc):
3214         * dom/Position.cpp:
3215         (WebCore::Position::element):
3216         * dom/Range.cpp:
3217         (WebCore::Range::getBorderAndTextQuads):
3218         * dom/SelectorQuery.cpp:
3219         (WebCore::SelectorDataList::queryFirst):
3220         (WebCore::SelectorDataList::execute):
3221         * dom/ShadowRoot.cpp:
3222         (WebCore::ShadowRoot::recalcStyle):
3223         * dom/StaticHashSetNodeList.cpp:
3224         (WebCore::StaticHashSetNodeList::namedItem):
3225         * editing/ApplyStyleCommand.cpp:
3226         (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
3227         (WebCore::ApplyStyleCommand::pushDownInlineStyleAroundNode):
3228         (WebCore::ApplyStyleCommand::mergeStartWithPreviousIfIdentical):
3229         (WebCore::ApplyStyleCommand::surroundNodeRangeWithElement):
3230         * editing/Editor.cpp:
3231         (WebCore::Editor::applyEditingStyleToBodyElement):
3232         * editing/FrameSelection.cpp:
3233         (WebCore::removingNodeRemovesPosition):
3234         * editing/IndentOutdentCommand.cpp:
3235         (WebCore::IndentOutdentCommand::outdentParagraph):
3236         * editing/MarkupAccumulator.cpp:
3237         (WebCore::MarkupAccumulator::entityMaskForText):
3238         (WebCore::MarkupAccumulator::appendStartMarkup):
3239         (WebCore::MarkupAccumulator::appendEndMarkup):
3240         * editing/ModifySelectionListLevel.cpp:
3241         (WebCore::IncreaseSelectionListLevelCommand::doApply):
3242         * editing/ReplaceSelectionCommand.cpp:
3243         (WebCore::haveSameTagName):
3244         (WebCore::handleStyleSpansBeforeInsertion):
3245         (WebCore::ReplaceSelectionCommand::doApply):
3246         * editing/SplitTextNodeContainingElementCommand.cpp:
3247         (WebCore::SplitTextNodeContainingElementCommand::doApply):
3248         * editing/TextIterator.cpp:
3249         (WebCore::TextIterator::advance):
3250         * editing/htmlediting.cpp:
3251         (WebCore::unsplittableElementForPosition):
3252         (WebCore::enclosingTableCell):
3253         * editing/markup.cpp:
3254         (WebCore::StyledMarkupAccumulator::wrapWithNode):
3255         (WebCore::createMarkupInternal):
3256         (WebCore::createFragmentFromMarkupWithContext):
3257         (WebCore::isPlainTextMarkup):
3258         (WebCore::createFragmentFromText):
3259         * html/HTMLElement.cpp:
3260         (WebCore::HTMLElement::insertAdjacentElement):
3261         (WebCore::contextElementForInsertion):
3262         * html/HTMLFormControlElement.cpp:
3263         (WebCore::focusPostAttach):
3264         (WebCore::updateFromElementCallback):
3265         * html/HTMLFormElement.cpp:
3266         (WebCore::submitElementFromEvent):
3267         * html/HTMLObjectElement.cpp:
3268         (WebCore::HTMLObjectElement::updateDocNamedItem):
3269         * html/HTMLPlugInImageElement.cpp:
3270         (WebCore::HTMLPlugInImageElement::updateSnapshotInfo):
3271         * html/HTMLViewSourceDocument.cpp:
3272         (WebCore::HTMLViewSourceDocument::addRange):
3273         * html/parser/HTMLTreeBuilder.cpp:
3274         (WebCore::closestFormAncestor):
3275         * html/shadow/MediaControlElementTypes.cpp:
3276         (WebCore::toParentMediaElement):
3277         * html/shadow/TextFieldDecorationElement.h:
3278         (WebCore::toTextFieldDecorationElement):
3279         * inspector/DOMPatchSupport.cpp:
3280         (WebCore::DOMPatchSupport::createDigest):
3281         * inspector/InspectorDOMAgent.cpp:
3282         (WebCore::InspectorDOMAgent::buildObjectForNode):
3283         (WebCore::InspectorDOMAgent::didInvalidateStyleAttr):
3284         * inspector/InspectorStyleSheet.cpp:
3285         (WebCore::InspectorStyleSheet::inlineStyleSheetText):
3286         * mathml/MathMLElement.h:
3287         (WebCore::toMathMLElement):
3288         * page/ContextMenuController.cpp:
3289         (WebCore::ContextMenuController::populate):
3290         * page/DragController.cpp:
3291         (WebCore::elementUnderMouse):
3292         (WebCore::DragController::startDrag):
3293         * page/FocusController.cpp:
3294         (WebCore::FocusController::advanceFocusInDocumentOrder):
3295         * page/Frame.cpp:
3296         (WebCore::Frame::searchForLabelsBeforeElement):
3297         * page/FrameView.cpp:
3298         (WebCore::FrameView::updateWidget):
3299         * page/SpatialNavigation.cpp:
3300         (WebCore::rectToAbsoluteCoordinates):
3301         * page/animation/ImplicitAnimation.cpp:
3302         (WebCore::ImplicitAnimation::sendTransitionEvent):
3303         * page/animation/KeyframeAnimation.cpp:
3304         (WebCore::KeyframeAnimation::KeyframeAnimation):
3305         (WebCore::KeyframeAnimation::sendAnimationEvent):
3306         * platform/efl/RenderThemeEfl.cpp:
3307         (WebCore::RenderThemeEfl::paintMediaFullscreenButton):
3308         (WebCore::RenderThemeEfl::paintMediaMuteButton):
3309         * rendering/FilterEffectRenderer.cpp:
3310         (WebCore::FilterEffectRenderer::buildReferenceFilter):
3311         * rendering/svg/RenderSVGViewportContainer.cpp:
3312         (WebCore::RenderSVGViewportContainer::calcViewport):
3313         * svg/SVGSVGElement.cpp:
3314         (WebCore::SVGSVGElement::getElementById):
3315         * svg/SVGUseElement.cpp:
3316         (WebCore::isDisallowedElement):
3317         * svg/animation/SVGSMILElement.cpp:
3318         (WebCore::SVGSMILElement::buildPendingResource):
3319         * xml/XPathStep.cpp:
3320         (WebCore::XPath::nodeMatchesBasicTest):
3321         * xml/parser/XMLDocumentParserQt.cpp:
3322         (WebCore::XMLDocumentParser::XMLDocumentParser):
3323         (WebCore::XMLDocumentParser::parseEndElement):
3324
3325 2013-03-14  Pavel Feldman  <pfeldman@chromium.org>
3326
3327         Web Inspector: keep deprecated function stubs in InspectorFrontendHost.
3328         https://bugs.webkit.org/show_bug.cgi?id=112347
3329
3330         Reviewed by Vsevolod Vlasov.
3331
3332         In order to open older front-ends in newer hosts, we need to keep stubs
3333         for deprecated functions. Longer term, we need to wrap all calls to InspectorFrontendHost in the front-end.
3334
3335         * inspector/InspectorFrontendHost.cpp:
3336         (WebCore::InspectorFrontendHost::canInspectWorkers):
3337         (WebCore):
3338         (WebCore::InspectorFrontendHost::hiddenPanels):
3339         * inspector/InspectorFrontendHost.h:
3340         (InspectorFrontendHost):
3341         * inspector/InspectorFrontendHost.idl:
3342
3343 2013-03-14  Vladislav Kaznacheev  <kaznacheev@chromium.org>
3344
3345         Fixed styles pane visibility when docked to right.
3346         https://bugs.webkit.org/show_bug.cgi?id=112348
3347
3348         Reviewed by Pavel Feldman.
3349
3350         * inspector/front-end/ElementsPanel.js:
3351         (WebInspector.ElementsPanel.prototype._splitVertically):
3352         * inspector/front-end/SidebarPane.js:
3353         (WebInspector.SidebarPane.prototype.setExpandCallback):
3354         (WebInspector.SidebarPaneTitle):
3355         (WebInspector.SidebarTabbedPane.prototype.addPane):
3356
3357 2013-03-14  Alberto Garcia  <agarcia@igalia.com>
3358
3359         [BlackBerry] GraphicsContext3D: implement ImageExtractor::extractImage()
3360         https://bugs.webkit.org/show_bug.cgi?id=112242
3361
3362         Reviewed by Rob Buis.
3363
3364         In r136282 GraphicsContext3D::getImageData() was refactored in a
3365         new class called ImageExtractor.
3366
3367         This patch implements the necessary changes for the BlackBerry
3368         port, which is still using the old API.
3369
3370         * platform/graphics/GraphicsContext3D.h:
3371         (ImageExtractor):
3372         * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
3373         (WebCore::GraphicsContext3D::ImageExtractor::~ImageExtractor):
3374         (WebCore):
3375         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
3376
3377 2013-03-14  Xabier Rodriguez Calvar  <calvaris@igalia.com>
3378
3379         [GStreamer] Stopping playback of html5 media when receiving a higher priority audio event needs implementation
3380         https://bugs.webkit.org/show_bug.cgi?id=91611
3381
3382         React to REQUEST_STATE GStreamer message to stop the pipeline when
3383         a higher priority stream is played. When this happens, states are
3384         updated accordingly.
3385
3386         A method was added in the MediaPlayer class and internals to allow
3387         the the test runner to simulate an audio interruption.
3388
3389         Reviewed by Philippe Normand.
3390
3391         Test: media/media-higher-prio-audio-stream.html
3392
3393         * platform/graphics/MediaPlayer.h:
3394         * platform/graphics/MediaPlayer.cpp:
3395         (WebCore):
3396         (MediaPlayer):
3397         (WebCore::MediaPlayer::simulateAudioInterruption): New method
3398         delegating an audio interruption to the private backend to
3399         simulate the use-case where an external application needs
3400         exclusive access to the audio device.
3401         * platform/graphics/MediaPlayerPrivate.h:
3402         (MediaPlayerPrivateInterface):
3403         (WebCore::MediaPlayerPrivateInterface::simulateAudioInterruption):
3404         Added default empty method in the common private header.
3405         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3406         (WebCore):
3407         (WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
3408         (WebCore::setAudioStreamPropertiesCallback): Hooked to child-added
3409         signal on the audio sink, delegates on setAudioStreamProperties.
3410         (WebCore::MediaPlayerPrivateGStreamer::setAudioStreamProperties):
3411         Sets the audio stream properties.
3412         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
3413         Initializes the new attribute.
3414         (WebCore::MediaPlayerPrivateGStreamer::~MediaPlayerPrivateGStreamer):
3415         Disconnects autoaudiosink signal.
3416         (WebCore::MediaPlayerPrivateGStreamer::changePipelineState):
3417         Changed logging.
3418         (WebCore::MediaPlayerPrivateGStreamer::handleMessage): Reacting to
3419         the REQUEST_STATE message.
3420         (WebCore::MediaPlayerPrivateGStreamer::simulateAudioInterruption):
3421         Added. Injects the REQUEST_STATE message to the pipeline.
3422         (WebCore::MediaPlayerPrivateGStreamer::updateStates): Updating the
3423         playback state if REQUEST_STATE.
3424         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
3425         (MediaPlayerPrivateGStreamer): Added new method and attribute.
3426         * testing/Internals.h:
3427         * testing/Internals.idl:
3428         * testing/Internals.cpp:
3429         (WebCore):
3430         (WebCore::Internals::simulateAudioInterruption): Added to call the
3431         method to stop the element because of a higher prio stream at the
3432         tests.
3433
3434 2013-03-14  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3435
3436         [Qt] Add support for tiled shadow blur
3437         https://bugs.webkit.org/show_bug.cgi?id=90082
3438
3439         Reviewed by Noam Rosenthal.
3440
3441         Use the optimized ShadowBlur::drawRectShadow as long as we do not
3442         have a rotating transform. Such a transform would go through the
3443         slow path in ShadowBlur anyway, and would end up using a transformed
3444         TransparencyLayer with an alphaMap which causes scaling artifacts
3445         for us.
3446
3447         Tested by fast/canvas/canvas-scale-fillRect-shadow.html
3448         and fast/canvas/canvas-transforms-fillRect-shadow.html
3449
3450         * platform/graphics/ShadowBlur.cpp:
3451         (WebCore::ShadowBlur::drawInsetShadowWithTiling):
3452             Handle scaling transforms when shadows ignore transforms.
3453         (WebCore::ShadowBlur::drawRectShadowWithTiling):
3454             Ditto.
3455         * platform/graphics/qt/GraphicsContextQt.cpp:
3456         (WebCore::GraphicsContext::fillRect):
3457
3458 2013-03-12  Andrey Kosyakov  <caseq@chromium.org>
3459
3460         Web Inspector: do not aggregate non-main thread timeline events, handle them in a generic fashion
3461         https://bugs.webkit.org/show_bug.cgi?id=112172
3462
3463         Reviewed by Vsevolod Vlasov.
3464
3465         - build nested event trees for non-main thread events similar to how it's done on the main thread;
3466         - drop aggregation logic for Rasterize events;
3467         - extract time conversion logic so that it may be reused in TimelineTraceEventProcessor.
3468
3469         * English.lproj/localizedStrings.js: drive-by: drop duplicate line.
3470         * inspector/InspectorTimelineAgent.cpp:
3471         (WebCore::TimelineTimeConverter::reset):
3472         (WebCore):
3473         (WebCore::InspectorTimelineAgent::pushGCEventRecords):
3474         (WebCore::InspectorTimelineAgent::start):
3475         (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
3476         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
3477         (WebCore::InspectorTimelineAgent::appendRecord):
3478         (WebCore::InspectorTimelineAgent::sendEvent):
3479         (WebCore::InspectorTimelineAgent::timestamp):
3480         * inspector/InspectorTimelineAgent.h:
3481         (TimelineTimeConverter):
3482         (WebCore::TimelineTimeConverter::TimelineTimeConverter):
3483         (WebCore::TimelineTimeConverter::fromMonotonicallyIncreasingTime):
3484         (WebCore):
3485         (InspectorTimelineAgent):
3486         (WebCore::InspectorTimelineAgent::timeConverter):
3487         * inspector/TimelineRecordFactory.cpp:
3488         (WebCore::TimelineRecordFactory::createBackgroundRecord):
3489         (WebCore):
3490         * inspector/TimelineRecordFactory.h:
3491         (TimelineRecordFactory):
3492         * inspector/TimelineTraceEventProcessor.cpp:
3493         (WebCore::TimelineRecordStack::TimelineRecordStack):
3494         (WebCore):
3495         (WebCore::TimelineRecordStack::addScopedRecord):
3496         (WebCore::TimelineRecordStack::closeScopedRecord):
3497         (WebCore::TimelineRecordStack::addInstantRecord):
3498         (WebCore::TimelineRecordStack::isOpenRecordOfType):
3499         (WebCore::TimelineRecordStack::send):
3500         (WebCore::TimelineTraceEventProcessor::TimelineTraceEventProcessor):
3501         (WebCore::TimelineTraceEventProcessor::onBeginFrame):
3502         (WebCore::TimelineTraceEventProcessor::onRasterTaskBegin):
3503         (WebCore::TimelineTraceEventProcessor::onRasterTaskEnd):
3504         (WebCore::TimelineTraceEventProcessor::createRecord):
3505         * inspector/TimelineTraceEventProcessor.h:
3506         (TimelineRecordStack):
3507         (WebCore::TimelineRecordStack::Entry::Entry):
3508         (Entry):
3509         (WebCore::TimelineRecordStack::TimelineRecordStack):
3510         (WebCore):
3511         (WebCore::TimelineTraceEventProcessor::TimelineThreadState::TimelineThreadState):
3512         (TimelineThreadState):
3513         (TimelineTraceEventProcessor):
3514         (WebCore::TimelineTraceEventProcessor::TraceEvent::TraceEvent):
3515         (WebCore::TimelineTraceEventProcessor::TraceEvent::isNull):
3516         (WebCore::TimelineTraceEventProcessor::threadState):
3517
3518 2013-03-14  Xan Lopez  <xlopez@igalia.com>
3519
3520         [GTK] Wrong ASSERT in AudioDestinationGstreamer::stop
3521         https://bugs.webkit.org/show_bug.cgi?id=112344
3522
3523         Reviewed by Philippe Normand.
3524
3525         Correct erroneous ASSERT, we want both member variables to exist.
3526
3527         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
3528         (WebCore::AudioDestinationGStreamer::stop):
3529
3530 2013-03-14  Ilya Tikhonovsky  <loislo@chromium.org>
3531
3532         Web Inspector: Flame Chart. Support scroll and zoom with help of mouse wheel.
3533         https://bugs.webkit.org/show_bug.cgi?id=112337
3534
3535         Reviewed by Yury Semikhatsky.
3536
3537         New member variable _xOffset were introduced.
3538
3539         * inspector/front-end/FlameChart.js:
3540         (WebInspector.FlameChart):
3541         (WebInspector.FlameChart.prototype._onMouseMove):
3542         (WebInspector.FlameChart.prototype._adjustXOffset):
3543         (WebInspector.FlameChart.prototype._adjustXScale):
3544         (WebInspector.FlameChart.prototype._onMouseWheel):
3545         (WebInspector.FlameChart.prototype._coordinatesToNodeIndex):
3546         (WebInspector.FlameChart.prototype.onResize):
3547         (WebInspector.FlameChart.prototype.draw):
3548         (WebInspector.FlameChart.prototype._scheduleUpdate):
3549         (WebInspector.FlameChart.prototype.update):
3550
3551 2013-03-14  No'am Rosenthal  <noam@webkit.org>
3552
3553         [Texmap] Synchronize layers only if the layer has been changed.
3554         https://bugs.webkit.org/show_bug.cgi?id=112095
3555
3556         Reviewed by Allan Sandfeld Jensen.
3557
3558         A regression was introduced in r144787, causing an infinite IPC commitState/renderNextFrame 
3559         loop.
3560         This patch fixes this by making sure we only commit layer states that have actual pending 
3561         changes. 
3562
3563         No new tests, this is an optimization.
3564
3565         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
3566         (WebCore::CoordinatedGraphicsLayer::flushCompositingStateForThisLayerOnly):
3567         * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
3568         (CoordinatedGraphicsLayerState):
3569         (WebCore::CoordinatedGraphicsLayerState::hasPendingChanges):
3570
3571 2013-03-14  Simon Hausmann  <simon.hausmann@digia.com>
3572
3573         [Qt] Improve the handling of mock geolocation, device orientation and motion clients
3574
3575         Reviewed by Tor Arne Vestbø.
3576
3577         The mock versions of these web facing features should be instantiated when
3578         running in DumpRenderTree only. In order for them to work, no extra Qt modules
3579         such as QtLocation are actually needed.
3580
3581         This patch decouples enabling device orientation/motion and geolocation from
3582         the underlying Qt modules and makes them available in developer builds
3583         (!production_build) and backed by mock backends when running in drt.
3584
3585         So if the Qt 5 modules are available, they'll be used (unless drtRun). For
3586         developers the web facing features are always enabled (although requests will
3587         time out) and the mock backends are enabled inside DRT, allowing for the layout
3588         tests to run with less dependencies.
3589
3590         In addition this also enables the mock device motion client, which was
3591         previously never instantiated.
3592
3593         * Target.pri:
3594         * WebCore.pri:
3595
3596 2013-03-14  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3597
3598         [TexMap] Painting into area of composited tile not cleared
3599         https://bugs.webkit.org/show_bug.cgi?id=112268
3600
3601         Reviewed by Kenneth Rohde Christiansen.
3602
3603         Clip painting to the area that has been cleared, so we 
3604         do not accidentally overpaint other areas.
3605
3606         Can be observed in ManualTests/scrollbars/scrollbars-in-composited-layers.html.
3607
3608         * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
3609         (WebCore::BitmapTextureImageBuffer::updateContents):
3610
3611 2013-03-14  Marja Hölttä  <marja@chromium.org>
3612
3613         [V8] Store main world and non-main world templates separately.
3614         https://bugs.webkit.org/show_bug.cgi?id=111724
3615
3616         Reviewed by Jochen Eisinger.
3617
3618         This is needed for generating specialized bindings for the main
3619         world (bug 110874).
3620
3621         No new tests (updated existing bindings tests).
3622
3623         * bindings/scripts/CodeGeneratorV8.pm:
3624         (GenerateHeader):
3625         (GenerateDomainSafeFunctionGetter):
3626         (GenerateNormalAttrSetter):
3627         (GenerateParametersCheckExpression):
3628         (GenerateParametersCheck):
3629         (GenerateImplementation):
3630         (JSValueToNative):
3631         (CreateCustomSignature):
3632         * bindings/scripts/test/V8/V8Float64Array.cpp:
3633         (WebCore::Float64ArrayV8Internal::fooMethod):
3634         (WebCore::ConfigureV8Float64ArrayTemplate):
3635         (WebCore::V8Float64Array::GetTemplate):
3636         (WebCore::V8Float64Array::HasInstance):
3637         * bindings/scripts/test/V8/V8Float64Array.h:
3638         (V8Float64Array):
3639         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3640         (WebCore::TestActiveDOMObjectV8Internal::excitingFunctionMethod):
3641         (WebCore::TestActiveDOMObjectV8Internal::postMessageAttrGetter):
3642         (WebCore::ConfigureV8TestActiveDOMObjectTemplate):
3643         (WebCore::V8TestActiveDOMObject::GetTemplate):
3644         (WebCore::V8TestActiveDOMObject::HasInstance):
3645         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
3646         (V8TestActiveDOMObject):
3647         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
3648         (WebCore::V8TestCustomNamedGetter::GetTemplate):
3649         (WebCore::V8TestCustomNamedGetter::HasInstance):
3650         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
3651         (V8TestCustomNamedGetter):
3652         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
3653         (WebCore::V8TestEventConstructor::GetTemplate):
3654         (WebCore::V8TestEventConstructor::HasInstance):
3655         * bindings/scripts/test/V8/V8TestEventConstructor.h:
3656         (V8TestEventConstructor):
3657         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
3658         (WebCore::TestEventTargetV8Internal::dispatchEventMethod):
3659         (WebCore::ConfigureV8TestEventTargetTemplate):
3660         (WebCore::V8TestEventTarget::GetTemplate):
3661         (WebCore::V8TestEventTarget::HasInstance):
3662         * bindings/scripts/test/V8/V8TestEventTarget.h:
3663         (V8TestEventTarget):
3664         * bindings/scripts/test/V8/V8TestException.cpp:
3665         (WebCore::V8TestException::GetTemplate):
3666         (WebCore::V8TestException::HasInstance):
3667         * bindings/scripts/test/V8/V8TestException.h:
3668         (V8TestException):
3669         * bindings/scripts/test/V8/V8TestInterface.cpp:
3670         (WebCore::TestInterfaceV8Internal::supplementalNodeAttrSetter):
3671         (WebCore::TestInterfaceV8Internal::supplementalMethod2Method):
3672         (WebCore::ConfigureV8TestInterfaceTemplate):
3673         (WebCore::V8TestInterface::GetTemplate):
3674         (WebCore::V8TestInterface::HasInstance):
3675         * bindings/scripts/test/V8/V8TestInterface.h:
3676         (V8TestInterface):
3677         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
3678         (WebCore::V8TestMediaQueryListListener::GetTemplate):
3679         (WebCore::V8TestMediaQueryListListener::HasInstance):
3680         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
3681         (V8TestMediaQueryListListener):
3682         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
3683         (WebCore::V8TestNamedConstructor::GetTemplate):
3684         (WebCore::V8TestNamedConstructor::HasInstance):
3685         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
3686         (V8TestNamedConstructor):
3687         * bindings/scripts/test/V8/V8TestNode.cpp:
3688         (WebCore::V8TestNode::GetTemplate):
3689         (WebCore::V8TestNode::HasInstance):
3690         * bindings/scripts/test/V8/V8TestNode.h:
3691         (V8TestNode):
3692         * bindings/scripts/test/V8/V8TestObj.cpp:
3693         (WebCore::TestObjV8Internal::testObjAttrAttrSetter):
3694         (WebCore::TestObjV8Internal::XMLObjAttrAttrSetter):
3695         (WebCore::TestObjV8Internal::typedArrayAttrAttrSetter):
3696         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeAttrSetter):
3697         (WebCore::TestObjV8Internal::withScriptStateAttributeRaisesAttrSetter):
3698         (WebCore::TestObjV8Internal::withScriptExecutionContextAttributeRaisesAttrSetter):
3699         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeAttrSetter):
3700         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateAttributeRaisesAttrSetter):
3701         (WebCore::TestObjV8Internal::withScriptExecutionContextAndScriptStateWithSpacesAttributeAttrSetter):
3702         (WebCore::TestObjV8Internal::withScriptArgumentsAndCallStackAttributeAttrSetter):
3703         (WebCore::TestObjV8Internal::mutablePointAttrSetter):
3704         (WebCore::TestObjV8Internal::immutablePointAttrSetter):
3705         (WebCore::TestObjV8Internal::voidMethodWithArgsMethod):
3706         (WebCore::TestObjV8Internal::longMethodWithArgsMethod):
3707         (WebCore::TestObjV8Internal::objMethodWithArgsMethod):
3708         (WebCore::TestObjV8Internal::methodThatRequiresAllArgsAndThrowsMethod):
3709         (WebCore::TestObjV8Internal::overloadedMethod1Method):
3710         (WebCore::TestObjV8Internal::overloadedMethod2Method):
3711         (WebCore::TestObjV8Internal::overloadedMethod8Method):
3712         (WebCore::TestObjV8Internal::overloadedMethodMethod):
3713         (WebCore::TestObjV8Internal::convert1Method):
3714         (WebCore::TestObjV8Internal::convert2Method):
3715         (WebCore::TestObjV8Internal::convert4Method):
3716         (WebCore::TestObjV8Internal::convert5Method):
3717         (WebCore::TestObjV8Internal::variadicNodeMethodMethod):
3718         (WebCore::ConfigureV8TestObjTemplate):
3719         (WebCore::V8TestObj::GetTemplate):
3720         (WebCore::V8TestObj::HasInstance):
3721         * bindings/scripts/test/V8/V8TestObj.h:
3722         (V8TestObj):
3723         * bindings/scripts/test/V8/V8TestOverloadedConstructors.cpp:
3724         (WebCore::TestOverloadedConstructorsV8Internal::constructor1):
3725         (WebCore::TestOverloadedConstructorsV8Internal::constructor2):
3726         (WebCore::TestOverloadedConstructorsV8Internal::constructor3):
3727         (WebCore::TestOverloadedConstructorsV8Internal::constructor):
3728         (WebCore::V8TestOverloadedConstructors::GetTemplate):
3729         (WebCore::V8TestOverloadedConstructors::HasInstance):
3730         * bindings/scripts/test/V8/V8TestOverloadedConstructors.h:
3731         (V8TestOverloadedConstructors):
3732         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
3733         (WebCore::V8TestSerializedScriptValueInterface::GetTemplate):
3734         (WebCore::V8TestSerializedScriptValueInterface::HasInstance):
3735         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
3736         (V8TestSerializedScriptValueInterface):
3737         * bindings/scripts/test/V8/V8TestTypedefs.cpp:
3738         (WebCore::TestTypedefsV8Internal::funcMethod):
3739         (WebCore::ConfigureV8TestTypedefsTemplate):
3740         (WebCore::V8TestTypedefs::GetTemplate):
3741         (WebCore::V8TestTypedefs::HasInstance):
3742         * bindings/scripts/test/V8/V8TestTypedefs.h:
3743         (V8TestTypedefs):
3744         * bindings/v8/Dictionary.cpp:
3745         (WebCore::Dictionary::get):
3746         * bindings/v8/ScriptProfiler.cpp:
3747         (WebCore::ScriptProfiler::visitNodeWrappers):
3748         * bindings/v8/SerializedScriptValue.cpp:
3749         * bindings/v8/V8AdaptorFunction.cpp:
3750         (WebCore::V8AdaptorFunction::getTemplate):
3751         * bindings/v8/V8Binding.cpp:
3752         (WebCore::toDOMStringList):
3753         (WebCore::toXPathNSResolver):
3754         * bindings/v8/V8Binding.h:
3755         (WebCore):
3756         (WebCore::toRefPtrNativeArray):
3757         * bindings/v8/V8Collection.cpp:
3758         (WebCore::toOptionsCollectionSetter):
3759         * bindings/v8/V8GCController.cpp:
3760         * bindings/v8/V8NPObject.cpp:
3761         (WebCore::npObjectInvokeImpl):
3762         * bindings/v8/V8PerIsolateData.cpp:
3763         (WebCore::V8PerIsolateData::reportMemoryUsage):
3764         (WebCore::V8PerIsolateData::hasPrivateTemplate):
3765         (WebCore::V8PerIsolateData::privateTemplate):
3766         (WebCore::V8PerIsolateData::rawTemplate):
3767         (WebCore::V8PerIsolateData::hasInstance):
3768         * bindings/v8/V8PerIsolateData.h:
3769         (WebCore::V8PerIsolateData::rawTemplateMap):
3770         (V8PerIsolateData):
3771         (WebCore::V8PerIsolateData::templateMap):
3772         * bindings/v8/V8Utilities.cpp:
3773         (WebCore::extractTransferables):
3774         * bindings/v8/custom/V8ArrayBufferViewCustom.h:
3775         (WebCore::constructWebGLArray):
3776         (WebCore::setWebGLArrayHelper):
3777         * bindings/v8/custom/V8AudioBufferSourceNodeCustom.cpp:
3778         (WebCore::V8AudioBufferSourceNode::bufferAttrSetterCustom):
3779         * bindings/v8/custom/V8BlobCustom.cpp:
3780         (WebCore::V8Blob::constructorCustom):
3781         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
3782         (WebCore::toCanvasStyle):
3783         * bindings/v8/custom/V8ClipboardCustom.cpp:
3784         (WebCore::V8Clipboard::setDragImageMethodCustom):
3785         * bindings/v8/custom/V8CryptoCustom.cpp:
3786         (WebCore::V8Crypto::getRandomValuesMethodCustom):
3787         * bindings/v8/custom/V8DOMFormDataCustom.cpp:
3788         (WebCore::V8DOMFormData::constructorCustom):
3789         (WebCore::V8DOMFormData::appendMethodCustom):
3790         * bindings/v8/custom/V8DataViewCustom.cpp:
3791         (WebCore::V8DataView::constructorCustom):
3792         * bindings/v8/custom/V8DocumentCustom.cpp:
3793         (WebCore::V8Document::evaluateMethodCustom):
3794         * bindings/v8/custom/V8HTMLMediaElementCustom.cpp:
3795         (WebCore::V8HTMLMediaElement::controllerAttrSetterCustom):
3796         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
3797         (WebCore::V8HTMLOptionsCollection::addMethodCustom):
3798         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
3799         (WebCore::removeElement):
3800         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3801         (WebCore::V8InjectedScriptHost::isHTMLAllCollectionMethodCustom):
3802         (WebCore::V8InjectedScriptHost::typeMethodCustom):
3803         (WebCore::V8InjectedScriptHost::getEventListenersMethodCustom):
3804         * bindings/v8/custom/V8LocationCustom.cpp:
3805         (WebCore::V8Location::reloadAttrGetterCustom):
3806         (WebCore::V8Location::replaceAttrGetterCustom):
3807         (WebCore::V8Location::assignAttrGetterCustom):
3808         * bindings/v8/custom/V8NodeCustom.cpp:
3809         (WebCore::V8Node::insertBeforeMethodCustom):
3810         (WebCore::V8Node::replaceChildMethodCustom):
3811         (WebCore::V8Node::removeChildMethodCustom):
3812         (WebCore::V8Node::appendChildMethodCustom):
3813         * bindings/v8/custom/V8NodeListCustom.cpp:
3814         (WebCore::V8NodeList::opaqueRootForGC):
3815         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
3816         (WebCore::toWebGLUniformLocation):
3817         (WebCore::V8WebGLRenderingContext::getAttachedShadersMethodCustom):
3818         (WebCore::V8WebGLRenderingContext::getProgramParameterMethodCustom):
3819         (WebCore::V8WebGLRenderingContext::getShaderParameterMethodCustom):
3820         (WebCore::V8WebGLRenderingContext::getUniformMethodCustom):
3821         (WebCore::vertexAttribAndUniformHelperf):
3822         (WebCore::uniformHelperi):
3823         (WebCore::uniformMatrixHelper):
3824         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
3825         (WebCore::isDocumentType):
3826         (WebCore::V8XMLHttpRequest::sendMethodCustom):
3827
3828 2013-03-14  Mike West  <mkwst@chromium.org>
3829
3830         Explicitly send only one report via XSSAuditorDelegate.
3831         https://bugs.webkit.org/show_bug.cgi?id=111964
3832
3833         Reviewed by Adam Barth.
3834
3835         This patch pulls the XSSAuditor report generation out into a separate
3836         function in XSSAuditorDelegate::generateViolationReport, and moves the
3837         call to that function into the "have we already notified folks about
3838         violations on this page?" block. This both clarifies the flow in
3839         XSSAuditorDelegate::didBlockScript, and ensures that only one violation
3840         report will be sent per page, which regressed in r145695.
3841
3842         Existing tests verify that reports are generated and sent correctly.
3843
3844         We have no tests for the latter condition: the XSSAuditor tests
3845         currently verify that a report showed up, but they can't verify that
3846         no report appeared without sitting around for a few more than a few
3847         seconds on every run.
3848
3849         * html/parser/XSSAuditorDelegate.cpp:
3850         (WebCore::XSSAuditorDelegate::generateViolationReport):
3851             Pull the report generation logic out to this new function.
3852         (WebCore::XSSAuditorDelegate::didBlockScript):
3853             Move the report generation call into the block that ensures it only
3854             executes for the first violation.
3855
3856 2013-03-14  Sergio Villar Senin  <svillar@igalia.com>
3857
3858         Empty list items after drag&drop in contentEditable divs
3859         https://bugs.webkit.org/show_bug.cgi?id=110610
3860
3861         Reviewed by Ryosuke Niwa.
3862
3863         Perform a cleanup after moving operations. This will mainly prune
3864         extra placeholders left by the editing algorithms. Also do not
3865         leave empty <li> when moving them around inside a list element.
3866
3867         Tests: editing/pasteboard/cleanup-on-move.html
3868                editing/pasteboard/drag-list-item.html
3869
3870         * editing/MoveSelectionCommand.cpp:
3871         (WebCore::MoveSelectionCommand::doApply): perform
3872         cleanupAfterDeletion().
3873         * editing/ReplaceSelectionCommand.cpp:
3874         (WebCore::ReplaceSelectionCommand::insertAsListItems): do not
3875         insert an empty list item.
3876         * editing/MoveSelectionCommand.cpp:
3877         (WebCore::MoveSelectionCommand::doApply):
3878         * editing/ReplaceSelectionCommand.cpp:
3879         (WebCore::ReplaceSelectionCommand::insertAsListItems):
3880
3881 2013-03-14  Eric Seidel  <eric@webkit.org>
3882
3883         Threaded HTML Parser should limit speculation to avoid using too much memory
3884         https://bugs.webkit.org/show_bug.cgi?id=112069
3885
3886         Reviewed by Adam Barth.
3887
3888         This is a speculative fix for memory issues seen in:
3889         https://code.google.com/p/chromium/issues/detail?id=180819
3890
3891         This also fixed https://bugs.webkit.org/show_bug.cgi?id=110546
3892         as a side-effect of simplifying the m_currentChunk handling.
3893
3894         We now tell the background html parser every time we start
3895         a chunk on the main thread (instead of end), which greatly
3896         simplified the checkpoint cleanup code from:
3897         https://trac.webkit.org/changeset/145277
3898
3899         The cost for this is now we have more messages going to the
3900         background thread (and postTask acquires a lock to write to the
3901         message queue).  Chromium has more advanced (lock-less) primatives
3902         for message posting, which we'll hopefully add to WebKit in
3903         furture patches.
3904
3905         The outstanding chunks limit has not been tuned.  But it makes sense that
3906         we should not keeping infinite speculative tokens around for
3907         large documents with slow-to-load scripts.
3908
3909         * html/parser/BackgroundHTMLInputStream.cpp:
3910         (WebCore::BackgroundHTMLInputStream::BackgroundHTMLInputStream):
3911         (WebCore::BackgroundHTMLInputStream::invalidateCheckpointsBefore):
3912         (WebCore):
3913         (WebCore::BackgroundHTMLInputStream::rewindTo):
3914         * html/parser/BackgroundHTMLInputStream.h:
3915         (BackgroundHTMLInputStream):
3916         (WebCore::BackgroundHTMLInputStream::outstandingCheckpointCount):
3917         (Checkpoint):
3918         (WebCore::BackgroundHTMLInputStream::Checkpoint::isNull):
3919         (WebCore::BackgroundHTMLInputStream::Checkpoint::clear):
3920         * html/parser/BackgroundHTMLParser.cpp:
3921         (WebCore):
3922         (WebCore::BackgroundHTMLParser::startedChunkWithCheckpoint):
3923         (WebCore::BackgroundHTMLParser::pumpTokenizer):
3924         * html/parser/BackgroundHTMLParser.h:
3925         (BackgroundHTMLParser):
3926         * html/parser/HTMLDocumentParser.cpp:
3927         (WebCore::HTMLDocumentParser::validateSpeculations):
3928         (WebCore::HTMLDocumentParser::discardSpeculationsAndResumeFrom):
3929         (WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
3930         (WebCore::HTMLDocumentParser::pumpPendingSpeculations):
3931         (WebCore::HTMLDocumentParser::resumeParsingAfterScriptExecution):
3932         * html/parser/HTMLDocumentParser.h:
3933         (HTMLDocumentParser):
3934
3935 2013-03-14  Ilya Tikhonovsky  <loislo@chromium.org>
3936
3937         Web Inspector: Flame Chart. Minor changes for the popover.
3938         https://bugs.webkit.org/show_bug.cgi?id=112331
3939
3940         Reviewed by Yury Semikhatsky.
3941
3942         popover timeout needs to be decreased a bit.
3943         hidePopover call in onMouseMove doesn't necessary.
3944         We have to keep anchor element unmodified if the hovered item didn't changed.
3945
3946         * inspector/front-end/FlameChart.js:
3947         (WebInspector.FlameChart):
3948         (WebInspector.FlameChart.prototype._onMouseMove):
3949
3950 2013-03-14  Jonathan Liu  <net147@gmail.com>
3951
3952         Fix detection of Intel Mac OS X platform on Intel Mac 64-bit
3953         https://bugs.webkit.org/show_bug.cgi?id=112312
3954
3955         Reviewed by Simon Hausmann.
3956
3957         * platform/gtk/UserAgentGtk.cpp:
3958         (WebCore::platformVersionForUAString):
3959
3960 2013-03-13  Ilya Tikhonovsky  <loislo@chromium.org>
3961
3962         Web Inspector: Flame Chart. Rewrite drawing procedure for better performance.
3963         https://bugs.webkit.org/show_bug.cgi?id=112264
3964
3965         Reviewed by Yury Semikhatsky.
3966
3967         I traverses the profile tree in calculateTimelineData and calculates all the sizes and colors.
3968         Later in draw code we lineary pass the array and draw items.
3969         Also we could easily swap to another format of the profile.
3970
3971         * inspector/front-end/FlameChart.js:
3972         (WebInspector.FlameChart):
3973         (WebInspector.FlameChart.prototype._nodeCount):
3974         (WebInspector.FlameChart.prototype._calculateTimelineData.appendReversedArray):
3975         (WebInspector.FlameChart.prototype._calculateTimelineData):
3976         (WebInspector.FlameChart.prototype._getPopoverAnchor):
3977         (WebInspector.FlameChart.prototype._showPopover):
3978         (WebInspector.FlameChart.prototype._hidePopover):
3979         (WebInspector.FlameChart.prototype._onClick):
3980         (WebInspector.FlameChart.prototype._onMouseMove):
3981         (WebInspector.FlameChart.prototype._coordinatesToNodeIndex):
3982         (WebInspector.FlameChart.prototype.onResize):
3983         (WebInspector.FlameChart.prototype.draw):
3984
3985 2013-03-14  Alice Liu  <alice.liu@apple.com>
3986
3987         Add to HistoryItem a way to know if its underlying CachedPage has expired.
3988         https://bugs.webkit.org/show_bug.cgi?id=110652
3989
3990         Reviewed by Brady Eidson.
39