<https://webkit.org/b/119917> Pasting multiple lines into a textarea can introduce...
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-08-18  Ryosuke Niwa  <rniwa@webkit.org>
2
3         <https://webkit.org/b/119917> Pasting multiple lines into a textarea can introduce extra new lines
4
5         Reviewed by Darin Adler.
6
7         Inspired by https://chromium.googlesource.com/chromium/blink/+/6152a12f7ace27beea4d284ff8416631e8aa5217.
8
9         The bug was caused by createFragmentFromText's falsely assuming that the newline were not preserved
10         if the first node's renderer didn't exist.
11
12         Fixed the bug by obtaining the renderer of the container of the first visible position in the context.
13
14         Test: editing/pasteboard/paste-into-textarea-with-new-line.html
15
16         * editing/markup.cpp:
17         (WebCore::contextPreservesNewline):
18         (WebCore::createFragmentFromText):
19
20 2013-08-18  Andreas Kling  <akling@apple.com>
21
22         <https://webkit.org/b/119983> Add two missing RefPtr::release() in HTMLLinkElement.
23
24         Reviewed by Antti Koivisto.
25
26         * html/HTMLLinkElement.cpp:
27         (WebCore::HTMLLinkElement::setCSSStyleSheet):
28
29 2013-08-18  Andreas Kling  <akling@apple.com>
30
31         <https://webkit.org/b/119981> Move ElementData & co to their own files.
32
33         Reviewed by Antti Koivisto.
34
35         I like to move it move it.
36
37 2013-08-18  David Kilzer  <ddkilzer@apple.com>
38
39         BUILD FIX (r153990): Add UNUSED_PARAM for heightChanged when CSS_SHAPES is disabled
40
41         Fixes the following build failure:
42
43             WebCore/rendering/RenderBlock.cpp:1529:53: error: unused parameter 'heightChanged' [-Werror,-Wunused-parameter]
44             void RenderBlock::updateShapesAfterBlockLayout(bool heightChanged)
45                                                                 ^
46             1 error generated.
47
48         * rendering/RenderBlock.cpp:
49         (WebCore::RenderBlock::updateShapesAfterBlockLayout): Add
50         UNUSED_PARAM(heightChanged) when CSS_SHAPES is disabled.
51
52 2013-08-18  Danilo Cesar Lemes de Paula  <danilo.cesar@collabora.co.uk>
53
54         [EFL] minor method name fix for the textTrackOffMenuItemText method
55         https://bugs.webkit.org/show_bug.cgi?id=119978
56
57         the method textTrackOffMenuItemText was renamed in
58         https://bugs.webkit.org/show_bug.cgi?id=113822
59
60         Reviewed by Christophe Dumez.
61
62         * platform/efl/LocalizedStringsEfl.cpp:
63         (WebCore::textTrackOffMenuItemText):
64
65 2013-08-17  Antti Koivisto  <antti@apple.com>
66
67         <https://webkit.org/b/119963> Use TextNodeTraversal for getting sheet text in StyleElement
68
69         Reviewed by Andreas Kling.
70
71         * dom/StyleElement.cpp:
72         (WebCore::StyleElement::process):
73         
74             Use TextNodeTraversal::contentsAsString for the sheet text. The overflow check is removed as StringBuilder 
75             (which is used by contentsAsString) does that itself. The behavior in case of overflow changes from empty
76             sheet to CRASH(). Thats what we do elsewhere in similar situations too (scripts for example). Continuing
77             with > 4GB of style sheet text nodes is probably not going to go well anyway.
78
79 2013-08-17  Antti Koivisto  <antti@apple.com>
80
81         <https://webkit.org/b/119960> Remove some optimizations made obsolete by use of StringBuilder
82
83         Reviewed by Andreas Kling.
84
85         * dom/ScriptElement.cpp:
86         (WebCore::ScriptElement::scriptContent):
87         
88             StringBuilder already optimizes for the single string case. If there is only one the original string is returned.
89
90         * dom/Text.cpp:
91         (WebCore::Text::wholeText):
92         
93             No need to traverse twice to compute the capacity. StringBuilder handles this efficiently. 
94             Also in the common case there is only one string and the optimization here is actually hurting by disabling the StringBuilder one.
95
96 2013-08-17  Antti Koivisto  <antti@apple.com>
97
98         <https://webkit.org/b/119959> Add TextNodeTraversal
99
100         Reviewed by Andreas Kling.
101
102         Add TextNodeTraversal for cleaner and more compact traversal of Text nodes.
103         
104         Use it where appropriate.
105
106         * WebCore.xcodeproj/project.pbxproj:
107         * dom/Attr.cpp:
108         (WebCore::Attr::childrenChanged):
109         * dom/NodeTraversal.h:
110         (WebCore::NodeTraversal::next):
111         * dom/ScriptElement.cpp:
112         (WebCore::ScriptElement::scriptContent):
113         * dom/Text.cpp:
114         (WebCore::Text::wholeText):
115         * dom/Text.h:
116         (WebCore::toText):
117         * dom/TextNodeTraversal.cpp: Added.
118         (WebCore::TextNodeTraversal::appendContents):
119         (WebCore::TextNodeTraversal::contentsAsString):
120         
121             Helpers for getting text content of a subtree.
122
123         * dom/TextNodeTraversal.h: Added.
124         (WebCore::TextNodeTraversal::firstTextChildTemplate):
125         (WebCore::TextNodeTraversal::firstChild):
126         (WebCore::TextNodeTraversal::firstTextWithinTemplate):
127         (WebCore::TextNodeTraversal::firstWithin):
128         (WebCore::TextNodeTraversal::traverseNextTextTemplate):
129         (WebCore::TextNodeTraversal::next):
130         (WebCore::TextNodeTraversal::nextSibling):
131         * editing/ApplyStyleCommand.cpp:
132         (WebCore::ApplyStyleCommand::joinChildTextNodes):
133         * html/HTMLTextAreaElement.cpp:
134         (WebCore::HTMLTextAreaElement::defaultValue):
135         (WebCore::HTMLTextAreaElement::setDefaultValue):
136         * html/HTMLTitleElement.cpp:
137         (WebCore::HTMLTitleElement::text):
138         * html/track/TextTrackCue.cpp:
139         (WebCore::TextTrackCue::determineTextDirection):
140         * page/Frame.cpp:
141         (WebCore::Frame::searchForLabelsAboveCell):
142         * xml/XPathUtil.cpp:
143         (WebCore::XPath::stringValue):
144
145 2013-08-17  Andreas Kling  <akling@apple.com>
146
147         <https://webkit.org/b/119957> Page::contextMenuController() should return a reference.
148
149         Reviewed by Antti Koivisto.
150
151         Page::m_contextMenuController is never null.
152
153         * page/Page.h:
154         (WebCore::Page::contextMenuController):
155
156 2013-08-17  Andreas Kling  <akling@apple.com>
157
158         <https://webkit.org/b/119954> Page::dragCaretController() should return a reference.
159
160         Reviewed by Antti Koivisto.
161
162         Page::m_dragCaretController is never null.
163
164         * dom/Document.cpp:
165         (WebCore::Document::nodeChildrenWillBeRemoved):
166         (WebCore::Document::nodeWillBeRemoved):
167         * page/DragController.cpp:
168         (WebCore::DragController::cancelDrag):
169         (WebCore::DragController::dragEnded):
170         (WebCore::DragController::tryDocumentDrag):
171         (WebCore::DragController::dispatchTextInputEventFor):
172         (WebCore::DragController::concludeEditDrag):
173         (WebCore::DragController::placeDragCaret):
174         * page/Page.h:
175         (WebCore::Page::dragCaretController):
176         * rendering/RenderBlock.cpp:
177         (WebCore::RenderBlock::paintCaret):
178
179 2013-08-17  Andreas Kling  <akling@apple.com>
180
181         <https://webkit.org/b/119952> Simplify Editor's back-pointer to the Frame.
182
183         Reviewed by Antti Koivisto.
184
185         Remove Editor's inheritance from FrameDestructionObserver. Editor is owned by Frame and
186         has no interest in observing frame destruction since its own destruction will soon follow.
187
188         Editor::m_frame is now a reference instead of a pointer. Removed some null checking.
189
190 2013-08-17  Andreas Kling  <akling@apple.com>
191
192         <https://webkit.org/b/119950> Remove unused EditorClient::frameWillDetachPage() callback.
193
194         Reviewed by Antti Koivisto.
195
196         This callback was only used by the Chromium port.
197
198         * editing/Editor.h:
199         * editing/Editor.cpp:
200
201             Remove override of FrameDestructionObserver::willDetachPage().
202
203         * page/EditorClient.h:
204
205             Remove frameWillDetachPage(). This is repeated in every EditorClient subclass.
206
207 2013-08-16  Antti Koivisto  <antti@apple.com>
208
209         <https://webkit.org/b/119886> PseudoElement is abusing parent node pointer
210
211         Reviewed by Darin Adler.
212
213         PseudoElement sets its host node as its parent. This is confusing and wrong as it breaks
214         the basic tree consistency (a node is a child node of its parent node).
215         
216         This patch adds an explicit host pointer PseudoElement and switches the call sites over. Memory
217         impact is negligible as there are not that many ::befores and ::afters.
218
219         * dom/ComposedShadowTreeWalker.cpp:
220         (WebCore::ComposedShadowTreeWalker::traverseParent):
221         * dom/EventPathWalker.cpp:
222         (WebCore::EventPathWalker::moveToParent):
223         * dom/EventRetargeter.h:
224         (WebCore::EventRetargeter::eventTargetRespectingTargetRules):
225         * dom/Node.cpp:
226         (WebCore::Node::~Node):
227         
228             Add consistency assertions. Remove unnecessary clearing of sibling pointers. They should be cleared already.
229
230         (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):
231         * dom/PseudoElement.cpp:
232         (WebCore::PseudoElement::PseudoElement):
233         (WebCore::PseudoElement::customStyleForRenderer):
234         * dom/PseudoElement.h:
235         (WebCore::toPseudoElement):
236         
237             Add casting functions.
238
239         * inspector/InspectorLayerTreeAgent.cpp:
240         (WebCore::InspectorLayerTreeAgent::buildObjectForLayer):
241         * rendering/HitTestResult.cpp:
242         (WebCore::HitTestResult::setInnerNode):
243         (WebCore::HitTestResult::setInnerNonSharedNode):
244
245 2013-08-17  Darin Adler  <darin@apple.com>
246
247         <https://webkit.org/b/119948> Change drag-specific clipboard writing in DragController to go straight to Pasteboard, not forward through Clipboard
248
249         Reviewed by Andreas Kling.
250
251         * dom/Clipboard.cpp: Removed writeRange, writePlainText, and writeURL functions.
252         All three are just unneeded forwarding to pasteboard.
253         * dom/Clipboard.h: Ditto.
254
255         * page/DragController.cpp:
256         (WebCore::DragController::startDrag): Move the logic in here. Later we might
257         want to straighten this out a bit, perhaps using functions in Editor, but it's
258         not much code so fine to just have it here for now.
259
260 2013-08-17  Darin Adler  <darin@apple.com>
261
262         <https://webkit.org/b/119947> Remove LEGACY_STYLE_ABSTRACT_CLIPBOARD_CLASS
263
264         Reviewed by Andreas Kling.
265
266         * dom/Clipboard.cpp:
267         (WebCore::Clipboard::Clipboard):
268         (WebCore::Clipboard::~Clipboard):
269         * dom/Clipboard.h:
270         Remove LEGACY_STYLE_ABSTRACT_CLIPBOARD_CLASS, LEGACY_VIRTUAL, and LEGACY_PURE.
271         Keep only the !USE(LEGACY_STYLE_ABSTRACT_CLIPBOARD_CLASS) side of all conditionals.
272
273 2013-08-17  Darin Adler  <darin@apple.com>
274
275         <https://webkit.org/b/119946> Move some code used only by EventHandler from Clipboard to EventHandler
276
277         Reviewed by Andreas Kling.
278
279         Later it would be good to move this all to DragController, but there is no reason to have
280         these functions as member functions of the DOM-exposed Clipboard class.
281
282         * dom/Clipboard.cpp: Deleted hasFileOfType, hasStringOfType, convertDropZoneOperationToDragOperation,
283         convertDragOperationToDropZoneOperation.
284         * dom/Clipboard.h: Ditto.
285
286         * page/EventHandler.cpp:
287         (WebCore::convertDropZoneOperationToDragOperation): Moved here.
288         (WebCore::convertDragOperationToDropZoneOperation): Moved here. Also changed to use ASCIILiteral.
289         (WebCore::hasFileOfType): Moved here and made a free function instead of a member function. Removed
290         canReadTypes check because Clipboard::files already takes care of that.
291         (WebCore::hasStringOfType): Moved here and made a free function instead of a member function.
292         Added a check for the null string because HashSet::contains will not work on a null string.
293         (WebCore::hasDropZoneType): Moved here and made a free function instead of a member function.
294         (WebCore::findDropZone): Call the hasDropZoneType function instead of Clipboard::hasDropZoneType.
295
296 2013-08-17  Darin Adler  <darin@apple.com>
297
298         <https://webkit.org/b/119943> Clean up the Document class a bit
299
300         Reviewed by Antti Koivisto.
301
302         * dom/Document.cpp:
303         (WebCore::Document::~Document): Fixed typo in comment.
304         (WebCore::Document::suggestedMIMEType): Use ASCIILiteral for literals.
305         Also name local variable just loader rather than documentLoader.
306         (WebCore::Document::updateTitle): Call loader rather than going indirectly
307         through frame to get to the loader.
308         (WebCore::Document::setTitleElement): Fixed formatting (add braces).
309         (WebCore::Document::removeTitle): Iterate elements instead of nodes.
310         (WebCore::Document::isPageBoxVisible): Use ensureStyleResolver to call
311         styleForPage to avoid the need for a simple forwarding function. Also
312         eliminated local variable to increase clarity.
313         (WebCore::Document::pageSizeAndMarginsInPixels): Use ensureStyleResolver
314         to call styleForPage to avoid the need for a simple forwarding function.
315         (WebCore::Document::setIsViewSource): Renamed a local variable.
316
317         * dom/Document.h: Removed unneeded childNeedsAndNotInStyleRecalc and
318         styleForPage functions.
319
320         * loader/FrameLoader.cpp: Removed unnneeded setTitle function.
321         * loader/FrameLoader.h: Ditto.
322
323         * page/PrintContext.cpp:
324         (WebCore::PrintContext::pageProperty): Use ensureStyleResolver to call
325         styleForPage to avoid the need for a simple forwarding function.
326
327 2013-08-17  Darin Adler  <darin@apple.com>
328
329         <https://webkit.org/b/119939> Remove some unused clipboard and pasteboard code
330
331         Reviewed by Andreas Kling.
332
333         * PlatformWinCE.cmake: Removed EditorWin.cpp.
334         * WebCore.vcxproj/WebCore.vcxproj: Removed EditorWin.cpp.
335         * WebCore.vcxproj/WebCore.vcxproj.filters: Removed EditorWin.cpp.
336         * WebCore.xcodeproj/project.pbxproj: Removed ClipboardIOS.h and
337         ClipboardIOS.mm, and also let Xcode edit/reorder this file.
338
339         * editing/Editor.cpp:
340         (WebCore::Editor::dispatchCPPEvent): Removed some LEGACY_STYLE_ABSTRACT_CLIPBOARD
341         class code. Will remove the rest later.
342
343         * editing/Editor.h: Removed declaration of newGeneralClipboard.
344
345         * platform/Pasteboard.h: Removed declaration of writeClipboard. Also updated a
346         comment to make it clearer.
347
348         * platform/blackberry/PasteboardBlackBerry.cpp: Removed Pasteboard::writeClipboard.
349         * platform/efl/PasteboardEfl.cpp: Ditto.
350         * platform/ios/PasteboardIOS.mm: Ditto.
351         * platform/win/PasteboardWin.cpp: Ditto.
352
353         * platform/ios/ClipboardIOS.h: Removed. Was an empty file.
354         * platform/ios/ClipboardIOS.mm: Removed. Was an empty file.
355         * platform/win/EditorWin.cpp: Removed. Had only newGeneralClipboard in the file,
356         a function that is never called.
357
358 2013-08-17  Darin Adler  <darin@apple.com>
359
360         <https://webkit.org/b/119940> Rename Clipboard::m_dragLoc to m_dragLocation
361
362         Reviewed by Andreas Kling.
363
364         * dom/Clipboard.h: Removed unused dragLocation member function.
365         Renamed m_dragLoc to m_dragLocation.
366
367         * dom/Clipboard.cpp:
368         (WebCore::Clipboard::setDragImage):
369         * platform/gtk/ClipboardGtk.cpp:
370         (WebCore::Clipboard::createDragImage):
371         * platform/mac/ClipboardMac.mm:
372         (WebCore::Clipboard::createDragImage):
373         * platform/qt/ClipboardQt.cpp:
374         (WebCore::Clipboard::createDragImage):
375         * platform/win/ClipboardWin.cpp:
376         (WebCore::Clipboard::createDragImage):
377         Updated for new name.
378
379 2013-08-17  Darin Adler  <darin@apple.com>
380
381         <https://webkit.org/b/119942> Remove unnecessary uses of Element::ownerDocument
382
383         Reviewed by Andreas Kling.
384
385         The Element::document is a simpler faster alternative to Element::ownerDocument.
386         The only behavior difference between the two is that ownerDocument returns 0 when
387         called on a Document.
388
389         * html/HTMLMediaElement.cpp:
390         (WebCore::HTMLMediaElement::supportsFocus): Call document instead of ownerDocument.
391         (WebCore::HTMLMediaElement::mediaPlayerOwningDocument): Removed null checking of
392         document and call to ownerDocument, since ownerDocument will never return non-null
393         if document returns null.
394         (WebCore::HTMLMediaElement::mediaPlayerSawUnsupportedTracks): Call document instead
395         of ownerDocument.
396
397         * inspector/DOMEditor.cpp:
398         (WebCore::DOMEditor::SetOuterHTMLAction::perform): Call document instead of ownerDocument.
399
400         * inspector/InspectorCSSAgent.cpp:
401         (WebCore::InspectorCSSAgent::getMatchedStylesForNode): Call document instead of ownerDocument.
402         (WebCore::InspectorCSSAgent::forcePseudoState): Call document instead of ownerDocument.
403         (WebCore::InspectorCSSAgent::resetPseudoStates): Call document instead of ownerDocument.
404
405         * inspector/InspectorDOMAgent.cpp:
406         (WebCore::InspectorDOMAgent::setOuterHTML): Call document instead of expression that
407         does the same thing in a roundabout way.
408         (WebCore::InspectorDOMAgent::focusNode): Call document instead of ownerDocument.
409         (WebCore::InspectorDOMAgent::resolveNode): Call document instead of expression that
410         does the same thing in a roundabout way.
411
412         * page/DragController.cpp:
413         (WebCore::DragController::concludeEditDrag): Call document instead of ownerDocument.
414
415         * svg/SVGElementInstance.cpp:
416         (WebCore::SVGElementInstance::ownerDocument): Call document instead of ownerDocument.
417
418 2013-08-17  Darin Adler  <darin@apple.com>
419
420         <https://webkit.org/b/119941> Make Page::dragController return a reference
421
422         Reviewed by Andreas Kling.
423
424         * page/Page.h:
425         (WebCore::Page::dragController): Return a reference instead of a pointer.
426
427         * page/DragController.cpp:
428         (WebCore::DragController::concludeEditDrag):
429         * page/EventHandler.cpp:
430         (WebCore::EventHandler::eventMayStartDrag):
431         (WebCore::EventHandler::updateDragSourceActionsAllowed):
432         (WebCore::EventHandler::handleDrag):
433         * page/mac/EventHandlerMac.mm:
434         (WebCore::EventHandler::passSubframeEventToSubframe):
435         Updated call sites.
436
437 2013-08-17  Morten Stenshorne  <mstensho@opera.com>
438
439         <https://webkit.org/b/119795> Propagate writing-mode from the first region to the flow thread
440
441         Reviewed by Darin Adler.
442
443         Since the flow thread is a direct child of RenderView, it doesn't inherit
444         proper writing-mode automatically. It should be mentioned that if the thread's
445         contents' writing-mode differs from that of the first region, things are
446         typically going to look useless (although perhaps that's how it should be),
447         but as long as writing-mode is only specified on a common parent of the
448         thread's contents and the regions, things look fine, and also, we're now
449         following what the spec has to say on the matter:
450
451         http://www.w3.org/TR/2013/WD-css3-regions-20130528/#the-flow-into-property
452
453             "The first region defines the principal writing mode for the entire flow.
454              The writing mode on subsequent regions is ignored."
455
456         This is a back-port of the fix for Blink bug 257965.
457         Reviewed by esprehn and mihnea there.
458         Blink review URL: https://chromiumcodereview.appspot.com/18374008
459
460         Tests: fast/regions/changing-writing-mode-2.html
461                fast/regions/changing-writing-mode-3.html
462                fast/regions/changing-writing-mode-4.html
463                fast/regions/changing-writing-mode-5.html
464                fast/regions/changing-writing-mode.html
465                fast/regions/invalid-first-region-with-writing-mode-2.html
466                fast/regions/invalid-first-region-with-writing-mode.html
467                fast/regions/subtree-with-horiz-bt.html
468                fast/regions/subtree-with-horiz-tb.html
469                fast/regions/subtree-with-vert-lr.html
470                fast/regions/subtree-with-vert-rl.html
471
472         * rendering/RenderFlowThread.cpp:
473         (WebCore::RenderFlowThread::styleDidChange):
474         * rendering/RenderFlowThread.h:
475         * rendering/RenderNamedFlowThread.cpp:
476         (WebCore::RenderNamedFlowThread::updateWritingMode):
477         (WebCore::RenderNamedFlowThread::addRegionToNamedFlowThread):
478         (WebCore::RenderNamedFlowThread::removeRegionFromThread):
479         (WebCore::RenderNamedFlowThread::regionChangedWritingMode):
480         * rendering/RenderNamedFlowThread.h:
481         * rendering/RenderRegion.cpp:
482         (WebCore::RenderRegion::styleDidChange):
483
484 2013-08-16  Andreas Kling  <akling@apple.com>
485
486         <https://webkit.org/b/119903> Make Settings ref-counted (and let Frame keep a ref!)
487
488         Reviewed by Geoff Garen.
489
490         Let Frame hold a RefPtr<Settings> so Frame::settings() isn't forced to go through Page.
491         It now also returns a reference, as it can never be null.
492
493         Removed 8.8 million lines of null-checking as a result.
494
495 2013-08-16  Ryosuke Niwa  <rniwa@webkit.org>
496
497         <https://webkit.org/b/119536> Refactor highestEditableRoot to avoid a redundant call to rendererIsEditable
498
499         Reviewed by Benjamin Poulain.
500
501         Refactor highestEditableRoot to avoid an extra tree walk. We now walk up the ancestor chain up to
502         the first root editable element exactly once.
503
504         * dom/Node.cpp:
505         (WebCore::Node::rendererIsEditable): Change the order of conditions to make the evaluation faster
506         when we don't have to check RenderStyle's value.
507         * editing/htmlediting.cpp:
508         (WebCore::highestEditableRoot):
509
510 2013-08-16  Benjamin Poulain  <benjamin@webkit.org>
511
512         Remove a useless #include of SelectorChecker.h
513
514         Rubber-stamped by Ryosuke Niwa.
515
516         * dom/DocumentStyleSheetCollection.cpp:
517
518 2013-08-16  Brent Fulgham  <bfulgham@apple.com>
519
520         [Windows] Update RenderMediaControls for new API
521         https://bugs.webkit.org/show_bug.cgi?id=119910
522
523         Reviewed by Eric Carlson.
524
525         * rendering/RenderMediaControls.cpp: Update calls to WebKitSystemInterface for
526         the changed API.
527
528 2013-08-16  Arunprasad Rajkumar  <arurajku@cisco.com>
529
530         <https://webkit.org/b/119912> Fix WebKit build error when SVG is disabled(broken since r154174)
531
532         Reviewed by Simon Fraser.
533
534         No new tests required, just a build fix.
535
536         Since r154174 CSS keywords alpha and luminance used by -webkit-mask-source-type. Move those
537         keywords from SVGCSSValueKeywords.in to CSSValueKeywords.in.
538
539         * css/CSSValueKeywords.in:
540         * css/SVGCSSValueKeywords.in:
541
542 2013-08-16  Arunprasad Rajkumar  <arurajku@cisco.com>
543
544         <https://webkit.org/b/119785> Replace currentTime() with monotonicallyIncreasingTime() in WebCore
545
546         Reviewed by Alexey Proskuryakov.
547
548         WTF::currentTime() is prone to DST changes and NTP adjustments, so use
549         WTF::monotonicallyIncreasingTime() to measure elapsed time.
550         
551         * Modules/filesystem/FileWriter.cpp:
552         (WebCore::FileWriter::didWrite):
553         * dom/Document.cpp:
554         (WebCore::Document::Document):
555         (WebCore::Document::elapsedTime):
556         (WebCore::Document::resetLastHandledUserGestureTimestamp):
557         * dom/Element.cpp:
558         (WebCore::Element::setActive):
559         * fileapi/FileReader.cpp:
560         (WebCore::FileReader::didReceiveData):
561         * html/HTMLMediaElement.cpp:
562         (WebCore::HTMLMediaElement::HTMLMediaElement):
563         (WebCore::HTMLMediaElement::startProgressEventTimer):
564         (WebCore::HTMLMediaElement::progressEventTimerFired):
565         (WebCore::HTMLMediaElement::refreshCachedTime):
566         (WebCore::HTMLMediaElement::invalidateCachedTime):
567         (WebCore::HTMLMediaElement::currentTime):
568         (WebCore::HTMLMediaElement::startPlaybackProgressTimer):
569         (WebCore::HTMLMediaElement::scheduleTimeupdateEvent):
570         * html/HTMLMediaElement.h:
571         * html/HTMLPlugInImageElement.cpp:
572         (WebCore::documentHadRecentUserGesture):
573         * html/MediaController.cpp:
574         (MediaController::scheduleTimeupdateEvent):
575         * html/parser/HTMLDocumentParser.cpp:
576         (WebCore::HTMLDocumentParser::pumpPendingSpeculations):
577         * html/parser/HTMLParserScheduler.h:
578         (WebCore::HTMLParserScheduler::checkForYieldBeforeToken):
579         * inspector/InspectorCSSAgent.cpp:
580         (WebCore::SelectorProfile::SelectorProfile):
581         (WebCore::SelectorProfile::totalMatchingTimeMs):
582         (WebCore::SelectorProfile::startSelector):
583         (WebCore::SelectorProfile::commitSelector):
584         (WebCore::SelectorProfile::commitSelectorTime):
585         * inspector/InspectorProfilerAgent.cpp:
586         (WebCore::InspectorProfilerAgent::willProcessTask):
587         (WebCore::InspectorProfilerAgent::didProcessTask):
588         * inspector/InspectorTimelineAgent.cpp:
589         (WebCore::InspectorTimelineAgent::timestamp):
590         * inspector/TimelineTraceEventProcessor.cpp:
591         (WebCore::TimelineTraceEventProcessor::processEventOnAnyThread):
592         * page/FrameView.cpp:
593         (WebCore::FrameView::adjustedDeferredRepaintDelay):
594         (WebCore::FrameView::paintContents):
595         * platform/ClockGeneric.cpp:
596         (ClockGeneric::now):
597         * platform/ScrollAnimatorNone.cpp:
598         (WebCore::ScrollAnimatorNone::scroll):
599         (WebCore::ScrollAnimatorNone::animationTimerFired):
600         * platform/graphics/cg/ImageBufferCG.cpp:
601         (WebCore::ImageBuffer::ImageBuffer):
602         (WebCore::ImageBuffer::flushContextIfNecessary):
603         (WebCore::ImageBuffer::flushContext):
604         (WebCore::ImageBuffer::copyNativeImage):
605
606 2013-08-16  peavo@outlook.com  <peavo@outlook.com>
607
608         <https://webkit.org/b/119891> [WinCairo] Compile error.
609
610         Reviewed by Brent Fulgham.
611
612         * rendering/FlowThreadController.cpp: Need USE(ACCELERATED_COMPOSITING) guard.
613         * rendering/FlowThreadController.h: Need USE(ACCELERATED_COMPOSITING) guard.
614
615 2013-08-16  Zan Dobersek  <zdobersek@igalia.com>
616
617         <https://webkit.org/b/119887> [Soup] The testing NetworkStorageSession should have a proper SoupSession
618
619         Reviewed by Martin Robinson.
620
621         After r154144, a testing NetworkStorageSession is enforced when running the layout tests
622         through WebKitTestRunner. Ports using the Soup networking backend don't assign any SoupSession
623         objects to such NetworkStorageSession objects as it's usually the case. This is causing problems
624         as the ResourceHandleInternal uses the SoupSession that's provided by the NetworkingContext's
625         NetworkStorageSession, which ends up being null if the testing-specific NetworkStorageSession is used.
626         As a result, all the layout tests are crashing under WKTR.
627
628         * platform/network/NetworkStorageSession.h: Make the SoupSession member a GRefPtr.
629         (WebCore::NetworkStorageSession::soupSession): Return the GRefPtr's pointer.
630         * platform/network/ResourceHandle.h: Declare the new createTestingSession method.
631         * platform/network/soup/CookieJarSoup.cpp: 
632         (WebCore::cookieJarForSession): Instead of returning the default SoupCookieJar when there's no SoupSession
633         provided by the NetworkStorageSession, assert that there now always is one, and return the session's cookie
634         jar. For testing NetworkStorageSession objects, their SoupSession objects will always use the default cookie jar.
635         * platform/network/soup/NetworkStorageSessionSoup.cpp:
636         (WebCore::NetworkStorageSession::NetworkStorageSession): Adopt the given SoupSession reference pointer.
637         (WebCore::NetworkStorageSession::switchToNewTestingSession): Use a newly-created, testing-specific SoupSession.
638         * platform/network/soup/ResourceHandleSoup.cpp:
639         (WebCore::ResourceHandle::createTestingSession): Define the new createTestingSession method. It creates a new
640         SoupSession through createSoupSession, but uses the default SoupCookieJar, as provided by WebCore::soupCookieJar.
641
642 2013-08-16  Pratik Solanki  <psolanki@apple.com>
643
644         <https://webkit.org/b/119852> Frame::scriptController() should return a reference
645
646         Reviewed by Andreas Kling.
647
648         m_script is never NULL so we can just return a reference. Also remove some pointless null
649         checks as a result of doing this.
650
651         * Modules/websockets/WebSocket.cpp:
652         (WebCore::WebSocket::connect):
653         * bindings/js/JSDOMWindowBase.cpp:
654         (WebCore::toJS):
655         (WebCore::toJSDOMWindow):
656         * bindings/js/JSDOMWindowShell.cpp:
657         (WebCore::toJS):
658         (WebCore::toJSDOMWindowShell):
659         * bindings/js/JSEventListener.cpp:
660         (WebCore::JSEventListener::handleEvent):
661         * bindings/js/JSLazyEventListener.cpp:
662         (WebCore::JSLazyEventListener::initializeJSFunction):
663         * bindings/js/PageScriptDebugServer.cpp:
664         (WebCore::PageScriptDebugServer::setJavaScriptPaused):
665         * bindings/js/ScheduledAction.cpp:
666         (WebCore::ScheduledAction::execute):
667         * bindings/js/ScriptCachedFrameData.cpp:
668         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
669         (WebCore::ScriptCachedFrameData::restore):
670         * bindings/js/ScriptEventListener.cpp:
671         (WebCore::createAttributeEventListener):
672         (WebCore::eventListenerHandlerScriptState):
673         * bindings/js/ScriptState.cpp:
674         (WebCore::mainWorldScriptState):
675         (WebCore::scriptStateFromNode):
676         (WebCore::scriptStateFromPage):
677         * bindings/objc/DOM.mm:
678         (-[DOMNode JSC::Bindings::]):
679         * bindings/objc/DOMInternal.mm:
680         (-[WebScriptObject _initializeScriptDOMNodeImp]):
681         * dom/Document.cpp:
682         (WebCore::Document::disableEval):
683         (WebCore::Document::ensurePlugInsInjectedScript):
684         * dom/ScriptElement.cpp:
685         (WebCore::ScriptElement::prepareScript):
686         (WebCore::ScriptElement::executeScript):
687         * history/CachedFrame.cpp:
688         (WebCore::CachedFrameBase::restore):
689         * html/HTMLCanvasElement.cpp:
690         (WebCore::HTMLCanvasElement::createRenderer):
691         * html/HTMLElement.cpp:
692         (WebCore::HTMLElement::rendererIsNeeded):
693         * html/HTMLMediaElement.cpp:
694         (WebCore::HTMLMediaElement::controls):
695         * html/HTMLPlugInElement.cpp:
696         (WebCore::HTMLPlugInElement::getInstance):
697         (WebCore::HTMLPlugInElement::getNPObject):
698         * html/HTMLPlugInImageElement.cpp:
699         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
700         * html/parser/HTMLParserOptions.cpp:
701         (WebCore::HTMLParserOptions::HTMLParserOptions):
702         * inspector/InspectorAgent.cpp:
703         (WebCore::InspectorAgent::didClearWindowObjectInWorld):
704         * inspector/InspectorClient.cpp:
705         (WebCore::InspectorClient::doDispatchMessageOnFrontendPage):
706         * inspector/InspectorFrontendClientLocal.cpp:
707         (WebCore::InspectorFrontendClientLocal::evaluateAsBoolean):
708         (WebCore::InspectorFrontendClientLocal::evaluateOnLoad):
709         * inspector/InspectorOverlay.cpp:
710         (WebCore::InspectorOverlay::evaluateInOverlay):
711         * inspector/InspectorPageAgent.cpp:
712         (WebCore::InspectorPageAgent::getScriptExecutionStatus):
713         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
714         * inspector/PageRuntimeAgent.cpp:
715         (WebCore::PageRuntimeAgent::reportExecutionContextCreation):
716         * loader/DocumentWriter.cpp:
717         (WebCore::DocumentWriter::begin):
718         * loader/FrameLoader.cpp:
719         (WebCore::FrameLoader::urlSelected):
720         (WebCore::FrameLoader::submitForm):
721         (WebCore::FrameLoader::cancelAndClear):
722         (WebCore::FrameLoader::clear):
723         (WebCore::FrameLoader::prepareForCachedPageRestore):
724         (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds):
725         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld):
726         * loader/SubframeLoader.cpp:
727         (WebCore::SubframeLoader::requestFrame):
728         * loader/cache/CachedResourceLoader.cpp:
729         (WebCore::CachedResourceLoader::canRequest):
730         * page/EventSource.cpp:
731         (WebCore::EventSource::create):
732         * page/Frame.cpp:
733         (WebCore::Frame::willDetachPage):
734         * page/Frame.h:
735         (WebCore::Frame::script):
736         * page/Navigator.cpp:
737         (WebCore::shouldHideFourDot):
738         * page/Page.cpp:
739         (WebCore::Page::setDebugger):
740         * platform/graphics/wince/MediaPlayerProxy.cpp:
741         (WebCore::WebMediaPlayerProxy::pluginInstance):
742         (WebCore::WebMediaPlayerProxy::invokeMethod):
743         * plugins/PluginView.cpp:
744         (WebCore::PluginView::~PluginView):
745         (WebCore::PluginView::performRequest):
746         (WebCore::PluginView::load):
747         (WebCore::PluginView::bindingInstance):
748         (WebCore::PluginView::getValue):
749         * plugins/efl/PluginViewEfl.cpp:
750         (WebCore::PluginView::platformGetValue):
751         * xml/XMLHttpRequest.cpp:
752         (WebCore::XMLHttpRequest::open):
753         * xml/XMLTreeViewer.cpp:
754         (WebCore::XMLTreeViewer::transformDocumentToTreeView):
755
756 2013-08-16  Andreas Kling  <akling@apple.com>
757
758         Attempt to fix the Qt/MountainLion build after r154142.
759
760         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
761         (WebCore::MediaPlayerPrivateQt::commitLoad):
762
763 2013-08-16  Allan Sandfeld Jensen  <allan.jensen@digia.com>
764
765         [Qt] Kerning in fast font path breaks letter-spacing
766         https://bugs.webkit.org/show_bug.cgi?id=119838
767
768         Reviewed by Jocelyn Turcotte.
769
770         Mark fonts with both kerning and letter-spacing as unsupported by the simple font-path.
771
772         Test: fast/text/letter-spacing-kerned.html
773
774         * platform/graphics/WidthIterator.h:
775         (WebCore::WidthIterator::supportsTypesettingFeatures):
776
777 2013-08-16  Andreas Kling  <akling@apple.com>
778
779         <https://webkit.org/b/119893> FrameView::frame() should return a reference.
780
781         Reviewed by Antti Koivisto.
782
783         FrameView::m_frame was only ever null for a brief moment during CachedFrame teardown.
784         Leave it alone instead, and update the assertion that depended on this behavior.
785         This enables us to make FrameView::frame() return a Frame&, exposing a ton of
786         unnecessary null checks.
787
788         * history/CachedFrame.cpp:
789         (WebCore::CachedFrame::destroy):
790
791             Remove call to FrameView::clearFrame() that was the only way to get a null
792             FrameView::m_frame. Immediately followed by a call to CachedFrame::clear() where
793             the FrameView would get destroyed anyway.
794
795         (WebCore::CachedFrame::clear):
796
797             Update an assertion to support the case where the Document's Frame pointer has
798             been cleared out and CachedFrame is still clinging to the FrameView.
799
800         * history/CachedPage.h:
801
802             Made CachedPage::destroy() private as it was only called by ~CachedPage().
803
804         * /:
805
806             Frame* FrameView::frame() => Frame& FrameView::frame()
807
808 2013-08-16  Brady Eidson  <beidson@apple.com>
809
810         (NetworkProcess)  Sync XHRs should load using async ResourceHandles, not ResourceHandle::loadResourceSynchronously
811         https://bugs.webkit.org/show_bug.cgi?id=119493
812
813         Reviewed by Alexey Proskuryakov.
814
815         No new tests (Covered by plenty of existing tests).
816
817         * WebCore.exp.in:
818         * WebCore.xcodeproj/project.pbxproj:
819
820         * platform/network/SynchronousLoaderClient.h: Make platformBadResponseError public
821
822         * platform/network/mac/ResourceHandleMac.mm:
823         (WebCore::ResourceHandle::platformLoadResourceSynchronously): Add comments/FIXMEs spelling out how wrong this code is.
824
825 2013-08-16  peavo@outlook.com  <peavo@outlook.com>
826
827         <https://webkit.org/b/119889> [WinCairo] Compile error.
828
829         Reviewed by Brent Fulgham.
830
831         * platform/network/curl/ResourceHandleManager.cpp:
832         (WebCore::certificatePath): Use correct function name.
833
834 2013-08-16  Brent Fulgham  <bfulgham@apple.com>
835
836         [Windows] Unreviewed build correction after r154165.
837
838         * WebCore.vcxproj/copyForwardingHeaders.cmd: Copy html/shadow header files
839         to WebKit include location.
840
841 2013-08-15  Brent Fulgham  <bfulgham@apple.com>
842
843         [Windows] Prevent dangling CACFLayer when switching to/from Tiled backing.
844         https://bugs.webkit.org/show_bug.cgi?id=119818
845
846         Reviewed by Darin Adler.
847
848         Covered by existing: compositing/tiling/empty-to-tiled.html
849
850         * platform/graphics/ca/win/PlatformCALayerWin.cpp:
851         (PlatformCALayer::~PlatformCALayer): Remove deleted layer from its
852         parent layer 
853
854 2013-08-16  Andreas Kling  <akling@apple.com>
855
856         <https://webkit.org/b/119866> Frame::eventHandler() should return a reference.
857
858         Reviewed by Anders Carlsson.
859
860         Frame::m_eventHandler is never null.
861
862 2013-08-16  Commit Queue  <commit-queue@webkit.org>
863
864         Unreviewed, rolling out r153749.
865         http://trac.webkit.org/changeset/153749
866         https://bugs.webkit.org/show_bug.cgi?id=119892
867
868         The bison generation of the glslang* files has now been fixed. (Requested by zdobersek on #webkit).
869
870         * GNUmakefile.am:
871
872 2013-08-16  Danilo Cesar Lemes de Paula  <danilo.cesar@collabora.co.uk>
873
874         [GTK] fixing localizedString method name
875         https://bugs.webkit.org/show_bug.cgi?id=119884
876
877         The method name defined in LocalizedStringsGtk.cpp doesn't not match
878         the one used in LocalizedStrings.h
879
880         Reviewed by Gustavo Noronha Silva.
881
882         * platform/gtk/LocalizedStringsGtk.cpp:
883         (WebCore::textTrackOffMenuItemText):
884
885 2013-08-16  Andrei Parvu  <parvu@adobe.com>
886
887         [CSS Masking] Add -webkit-mask-source-type property, with auto, alpha and luminance values
888         https://bugs.webkit.org/show_bug.cgi?id=119614
889
890         Added the -webkit-mask-source-type property, which can have a value of auto, alpha or
891         luminance. The default value is auto. This patch contains only the parsing of the property,
892         not the actual implementation of the types of masks. The parsing of mask-source-type in the
893         -webkit-mask property will be handled in a separate patch.
894
895         Reviewed by Dirk Schulze.
896
897         Test: fast/masking/parsing-mask-source-type.html
898
899         * css/CSSComputedStyleDeclaration.cpp: Added case for CSSPropertyWebkitMaskType.
900         (WebCore::ComputedStyleExtractor::propertyValue):
901         * css/CSSParser.cpp: Parsed the values for CSSPropertyWebkitMaskType.
902         (WebCore::CSSParser::parseValue):
903         (WebCore::CSSParser::parseFillProperty):
904         * css/CSSProperty.cpp:
905         (WebCore::CSSProperty::isInheritedProperty):
906         * css/CSSPropertyNames.in: Added -webkit-mask-type property.
907         * css/CSSToStyleMap.cpp: map the provided mask type to the FillLayer class.
908         (WebCore::CSSToStyleMap::mapFillMaskType):
909         * css/CSSToStyleMap.h:
910         * css/DeprecatedStyleBuilder.cpp:
911         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
912         * css/StyleResolver.cpp:
913         (WebCore::StyleResolver::applyProperty):
914         * rendering/style/FillLayer.cpp: Added the m_maskType property to the FillLayer class.
915         (WebCore::FillLayer::FillLayer):
916         (WebCore::FillLayer::operator=):
917         (WebCore::FillLayer::operator==):
918         * rendering/style/FillLayer.h: Added methods for working with m_maskType.
919         (WebCore::FillLayer::maskType):
920         (WebCore::FillLayer::isMaskTypeSet):
921         (WebCore::FillLayer::setMaskType):
922         (WebCore::FillLayer::clearMaskType):
923         (WebCore::FillLayer::initialMaskType):
924         * rendering/style/RenderStyleConstants.h: Added the EMaskSourceType enum.
925
926 2013-08-16  Raphael Kubo da Costa  <raphael.kubo.da.costa@intel.com>
927
928         <https://webkit.org/b/119885> [CMake] Always build our generated versions of ANGLE's glslang.cpp and glslang_tab.cpp
929
930         Reviewed by Gyuyoung Kim.
931
932         Now that r154109 has landed, all Bison versions (at least from 2.3 up
933         to the latest 3.0) should be able to generate versions of glslang* that
934         build correctly.
935
936         Since the idea is to remove the prebuilt files from future imports of
937         ANGLE, always building our own versions is a good idea, and allows us
938         to get rid of some very ugly CMake checks.
939
940         * CMakeLists.txt: Always build glslang.cpp and glslang_tab.cpp from
941         DERIVED_SOURCES_WEBCORE_DIR.
942
943 2013-08-16  Julien Brianceau  <jbrianceau@nds.com>
944
945         <https://webkit.org/b/119880> [Qt] Build fix (broken since r154142).
946
947         Reviewed by Gyuyoung Kim.
948
949         Since r154142, Frame::loader() is a reference (and not a pointer anymore).
950
951         * xml/parser/XMLDocumentParserQt.cpp:
952         (WebCore::XMLDocumentParser::parseStartElement):
953
954 2013-08-16  Przemyslaw Szymanski  <p.szymanski3@samsung.com>
955
956         [WebGL] Vertex attribute binding validation method
957         https://bugs.webkit.org/show_bug.cgi?id=119515
958
959         This patch refactors WebGLRenderingContext code by moving the vertex
960         attribute binding validation to a separate method. It is now
961         possible to use that validation in other parts of the code. The
962         code is more clear now. 
963
964         Reviewed by Christophe Dumez.
965
966         No new tests. Covered by existing tests. No behaviour changed.
967         LayoutTests/webgl/resources/webgl_test_files/conformance/rendering/gl-drawelements.html
968         LayoutTests/webgl/resources/webgl_test_files/conformance/rendering/draw-elements-out-of-bounds.html
969         LayoutTests/webgl/resources/webgl_test_files/conformance/rendering/draw-arrays-out-of-bounds.html
970
971         * html/canvas/WebGLRenderingContext.cpp:
972         (WebCore::WebGLRenderingContext::validateVertexAttributes):
973         * html/canvas/WebGLVertexArrayObjectOES.h:
974         (WebCore::WebGLVertexArrayObjectOES::VertexAttribState::isBound):
975         (WebCore::WebGLVertexArrayObjectOES::VertexAttribState::validateBinding):
976
977 2013-08-15  Antti Koivisto  <antti@apple.com>
978
979         <https://webkit.org/b/119865> Parent pointer and shadow root host pointer should not be shared
980
981         Reviewed by Andreas Kling.
982
983         Node::m_parentOrShadowHostNode is currently used both as the parent pointer for regular nodes and as the host
984         pointer for ShadowRoots. This is confusing. It is also slow as it introduces a branch to all code paths that 
985         want to traverse ancestors normally, without leaving the shadow trees. This is much more popular than
986         traversing through.
987         
988         This patch makes the Node have a pure parent pointer only and adds the host element pointer as a separate
989         member in ShadowRoot. This eliminates the ShadowRoot test branch from Node::parentNode() as the pointer is
990         now always null in the root node.
991         
992         ShadowRoot grows by a pointer. This is not significant as there are few ShadowRoots compared to Nodes.
993
994         * css/StyleResolver.cpp:
995         (WebCore::StyleResolver::pushParentShadowRoot):
996         (WebCore::StyleResolver::popParentShadowRoot):
997         * dom/Attr.cpp:
998         (WebCore::Attr::createTextChild):
999         * dom/ComposedShadowTreeWalker.cpp:
1000         (WebCore::ComposedShadowTreeWalker::traverseParentBackToShadowRootOrHost):
1001         * dom/ContainerNode.cpp:
1002         (WebCore::ContainerNode::insertBeforeCommon):
1003         (WebCore::ContainerNode::removeBetween):
1004         * dom/ContainerNodeAlgorithms.cpp:
1005         (WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):
1006         (WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument):
1007         * dom/ContainerNodeAlgorithms.h:
1008         (WebCore::appendChildToContainer):
1009         (WebCore::Private::addChildNodesToDeletionQueue):
1010         * dom/Document.h:
1011         (WebCore::Node::Node):
1012         * dom/Element.cpp:
1013         (WebCore::Element::addShadowRoot):
1014         (WebCore::Element::removeShadowRoot):
1015         * dom/ElementRareData.h:
1016         (WebCore::ElementRareData::releasePseudoElement):
1017         * dom/EventPathWalker.cpp:
1018         (WebCore::EventPathWalker::moveToParent):
1019         * dom/EventRetargeter.cpp:
1020         (WebCore::determineDispatchBehavior):
1021         * dom/EventRetargeter.h:
1022         (WebCore::EventRetargeter::eventTargetRespectingTargetRules):
1023         * dom/Node.cpp:
1024         (WebCore::Node::shadowHost):
1025         (WebCore::Node::deprecatedShadowAncestorNode):
1026         (WebCore::Node::parentOrShadowHostElement):
1027         * dom/Node.h:
1028         (WebCore::Node::hasTreeSharedParent):
1029         
1030             Shadow host elements refs the ShadowRoot. There is no reason to use TreeShared to keep it alive.
1031
1032         (WebCore::Node::setParentNode):
1033         (WebCore::Node::parentNode):
1034         (WebCore::Node::parentNodeGuaranteedHostFree):
1035         * dom/PseudoElement.cpp:
1036         (WebCore::PseudoElement::PseudoElement):
1037         * dom/ShadowRoot.cpp:
1038         (WebCore::ShadowRoot::ShadowRoot):
1039         (WebCore::ShadowRoot::setInnerHTML):
1040         (WebCore::ShadowRoot::setApplyAuthorStyles):
1041         (WebCore::ShadowRoot::setResetStyleInheritance):
1042         * dom/ShadowRoot.h:
1043         
1044             Rename host() -> hostElement() for clarity.
1045
1046         (WebCore::Node::parentOrShadowHostNode):
1047         * dom/Text.cpp:
1048         (WebCore::isSVGShadowText):
1049         * dom/TreeScope.cpp:
1050         (WebCore::TreeScope::focusedElement):
1051         * html/shadow/ContentDistributor.cpp:
1052         (WebCore::ContentDistributor::ensureDistribution):
1053         * html/shadow/InsertionPoint.cpp:
1054         (WebCore::InsertionPoint::insertedInto):
1055         (WebCore::InsertionPoint::removedFrom):
1056         (WebCore::InsertionPoint::parseAttribute):
1057         * page/DragController.cpp:
1058         (WebCore::asFileInput):
1059         * page/EventHandler.cpp:
1060         (WebCore::EventHandler::handleMousePressEvent):
1061         (WebCore::instanceAssociatedWithShadowTreeElement):
1062         * page/FocusController.cpp:
1063         (WebCore::FocusNavigationScope::owner):
1064         * rendering/RenderBlock.cpp:
1065         (WebCore::RenderBlock::hasLineIfEmpty):
1066         * rendering/RenderLayer.cpp:
1067         (WebCore::rendererForScrollbar):
1068         * svg/SVGElementInstance.h:
1069         (WebCore::SVGElementInstance::setParentNode):
1070             
1071             Renamed so it works with appendChildToContainer template.
1072
1073         * svg/SVGStyledElement.cpp:
1074         (WebCore::SVGStyledElement::title):
1075
1076 2013-08-13  Darin Adler  <darin@apple.com>
1077
1078         [iOS] Get iOS port off legacy clipboard
1079         https://bugs.webkit.org/show_bug.cgi?id=116412
1080
1081         Reviewed by Daniel Bates.
1082
1083         * dom/Clipboard.h: Turn off legacy style clipboard for iOS.
1084         Next patch will be able to remove legacy style entirely!
1085
1086         * editing/Editor.cpp:
1087         (WebCore::Editor::dispatchCPPEvent): Attach the frame to the
1088         pasteboard directly explicitly. This is a layering violation, but
1089         is needed until we change how iOS pasteboard communicates with the
1090         host to use platform strategies instead of the editor client.
1091
1092         * editing/ios/EditorIOS.mm: Removed Editor::newGeneralClipboard and
1093         the include of ClipboardIOS.h.
1094
1095         * platform/Pasteboard.h: Added the setFrame function (iOS-only) and
1096         frame and change count data members.
1097
1098         * platform/ios/ClipboardIOS.h: Emptied out. Later we can remove this.
1099         * platform/ios/ClipboardIOS.mm: Ditto.
1100
1101         * platform/ios/PasteboardIOS.mm:
1102         (WebCore::Pasteboard::Pasteboard): Initialize m_frame to zero.
1103         (WebCore::Pasteboard::createForCopyAndPaste): Added.
1104         (WebCore::Pasteboard::createPrivate): Added.
1105         (WebCore::Pasteboard::writePasteboard): Added. Empty function, like
1106         writeClipboard. Eventually need to remove or implement this.
1107         (WebCore::Pasteboard::setFrame): Added. Sets frame and change count.
1108         (WebCore::Pasteboard::hasData): Moved here from ClipboardIOS.
1109         (WebCore::utiTypeFromCocoaType): Ditto.
1110         (WebCore::cocoaTypeFromHTMLClipboardType): Ditto.
1111         (WebCore::Pasteboard::clear): Ditto.
1112         (WebCore::Pasteboard::readString): Ditto.
1113         (WebCore::addHTMLClipboardTypesForCocoaType): Ditto.
1114         (WebCore::Pasteboard::writeString): Ditto.
1115         (WebCore::Pasteboard::types): Ditto.
1116         (WebCore::Pasteboard::readFilenames): Ditto.
1117
1118         * WebCore.exp.in: Move Clipboard destructor from Mac-only section to
1119         common section shared by Mac and iOS.
1120
1121 2013-08-15  Ryuan Choi  <ryuan.choi@samsung.com>
1122
1123         [EFL] Unreviewed build fix after r154142 and r154144.
1124
1125         * platform/efl/ErrorsEfl.cpp: Follow the changes of r154142.
1126         (WebCore::printError):
1127         (WebCore::printerNotFoundError):
1128         (WebCore::invalidPageRangeToPrint):
1129
1130 2013-08-15  Hans Muller  <hmuller@adobe.com>
1131
1132         [CSS Shapes] Add support for shape-outside image values
1133         https://bugs.webkit.org/show_bug.cgi?id=119809
1134
1135         Added minimal support for shape-outside image values. A new method that computes
1136         the excluded intervals for a horizontal line segment was added to the RasterIntervals
1137         class. The stub RasterShape getExcludedIntervals() method has been replaced by
1138         one that uses the new method.
1139
1140         Image shapes are represented by a RasterIntervals object, which just encapsulates a
1141         Region object. The new getExcludedIntervals() method computes the excluded intervals
1142         for a horizontal line segment between y1 and y2. To find the excluded intervals we
1143         vertically expand each of the image shape Region's rectangles that fall within the line
1144         segment, so that they begin at y1 and have height = y2 - y1. The union of the expanded
1145         rectangles produces a new Region whose horizontal projection defines the excluded intervals.
1146
1147         Reviewed by Alexandru Chiculita.
1148
1149         Tests: fast/shapes/shape-outside-floats/shape-outside-floats-image-001.html
1150                fast/shapes/shape-outside-floats/shape-outside-floats-image-002.html
1151
1152         * rendering/shapes/RasterShape.cpp:
1153         (WebCore::RasterShapeIntervals::getExcludedIntervals): See above.
1154         (WebCore::RasterShape::getExcludedIntervals): Stub method has been replaced by one that uses RasterShapeIntervals::getExcludedIntervals().
1155         * rendering/shapes/RasterShape.h:
1156         * rendering/shapes/ShapeOutsideInfo.cpp:
1157         (WebCore::ShapeOutsideInfo::isEnabledFor): Enable Image valued shapes.
1158
1159 2013-08-15  Simon Fraser  <simon.fraser@apple.com>
1160
1161         <https://webkit.org/b/119871> Flash of garbage pixels when playing a show on Hulu
1162
1163         Reviewed by Tim Horton.
1164         
1165         When starting a show on Hulu, there's a layer that gets marked as
1166         opaque because it has a child RenderLayer whose background fills the
1167         compositing layer. That child RenderLayer was recently position:fixed
1168         but outside the viewport, so its viewportConstrainedNotCompositedReason
1169         was set to a non-zero value.
1170         
1171         However, we failed to clear the viewportConstrainedNotCompositedReason
1172         when the layer became non-fixed. This caused painting the opaque
1173         layer to bail in RenderLayer::paintLayer(), leaving garbage.
1174
1175         Test: compositing/contents-opaque/fixed-to-nonfixed.html
1176
1177         * rendering/RenderLayer.cpp:
1178         (WebCore::RenderLayer::paintLayer): Add an assertion to catch this error in future.
1179         * rendering/RenderLayerCompositor.cpp:
1180         (WebCore::RenderLayerCompositor::updateBacking): Make sure we clear the
1181         ViewportConstrainedNotCompositedReason if the layer is no longer fixed.
1182
1183 2013-08-15  Brent Fulgham  <bfulgham@apple.com>
1184
1185         [Windows] Consolidate WebKit Bundle Handling
1186         https://bugs.webkit.org/show_bug.cgi?id=119869
1187
1188         Reviewed by Tim Horton.
1189
1190         * WebCore.vcxproj/WebCore.vcxproj: Add new WebCoreBundleWin files.
1191         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1192         * platform/network/curl/ResourceHandleManager.cpp:
1193         (WebCore::certificatePath): Use correct bundle handling logic.
1194         * platform/win/LocalizedStringsWin.cpp: Move bundle implementation to
1195         new WebCoreBundleWin.cpp file.
1196         * platform/win/WebCoreBundleWin.cpp: Added.
1197         (WebCore::createWebKitBundle):
1198         (WebCore::webKitBundle):
1199         * platform/win/WebCoreBundleWin.h: Added.
1200
1201 2013-08-15  Anders Carlsson  <andersca@apple.com>
1202
1203         <https://webkit.org/b/119859> Frame::loader() should return a reference
1204
1205         Reviewed by Andreas Kling.
1206
1207         * Modules/websockets/WebSocketChannel.cpp:
1208         (WebCore::WebSocketChannel::willOpenSocketStream):
1209         * WebCore.xcodeproj/project.pbxproj:
1210         * accessibility/AccessibilityObject.cpp:
1211         (WebCore::AccessibilityObject::press):
1212         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1213         (-[WebAccessibilityObjectWrapper remoteAccessibilityParentObject]):
1214         * bindings/ScriptControllerBase.cpp:
1215         (WebCore::ScriptController::canExecuteScripts):
1216         * bindings/js/ScriptController.cpp:
1217         (WebCore::ScriptController::initScript):
1218         * css/CSSFontSelector.cpp:
1219         (WebCore::CSSFontSelector::beginLoadTimerFired):
1220         * dom/DOMImplementation.cpp:
1221         (WebCore::DOMImplementation::createDocument):
1222         * dom/Document.cpp:
1223         (WebCore::Document::Document):
1224         (WebCore::Document::setVisualUpdatesAllowed):
1225         (WebCore::Document::updateTitle):
1226         (WebCore::Document::open):
1227         (WebCore::Document::explicitClose):
1228         (WebCore::Document::implicitClose):
1229         (WebCore::Document::userAgent):
1230         (WebCore::Document::canNavigate):
1231         (WebCore::Document::processHttpEquiv):
1232         (WebCore::Document::referrer):
1233         (WebCore::Document::documentDidResumeFromPageCache):
1234         (WebCore::Document::openSearchDescriptionURL):
1235         (WebCore::Document::finishedParsing):
1236         (WebCore::Document::addIconURL):
1237         (WebCore::Document::initSecurityContext):
1238         (WebCore::Document::updateURLForPushOrReplaceState):
1239         (WebCore::Document::loadEventDelayTimerFired):
1240         (WebCore::Document::loader):
1241         (WebCore::Document::decrementActiveParserCount):
1242         * history/CachedFrame.cpp:
1243         (WebCore::CachedFrameBase::CachedFrameBase):
1244         (WebCore::CachedFrameBase::restore):
1245         (WebCore::CachedFrame::CachedFrame):
1246         (WebCore::CachedFrame::open):
1247         (WebCore::CachedFrame::destroy):
1248         * history/PageCache.cpp:
1249         (WebCore::logCanCacheFrameDecision):
1250         (WebCore::logCanCachePageDecision):
1251         (WebCore::PageCache::canCachePageContainingThisFrame):
1252         (WebCore::PageCache::canCache):
1253         * html/HTMLAnchorElement.cpp:
1254         (WebCore::HTMLAnchorElement::handleClick):
1255         * html/HTMLAppletElement.cpp:
1256         (WebCore::HTMLAppletElement::updateWidget):
1257         * html/HTMLElement.cpp:
1258         (WebCore::HTMLElement::rendererIsNeeded):
1259         * html/HTMLEmbedElement.cpp:
1260         (WebCore::HTMLEmbedElement::updateWidget):
1261         * html/HTMLFormElement.cpp:
1262         (WebCore::HTMLFormElement::prepareForSubmission):
1263         (WebCore::HTMLFormElement::submit):
1264         * html/HTMLFrameElementBase.cpp:
1265         (WebCore::HTMLFrameElementBase::openURL):
1266         * html/HTMLFrameOwnerElement.cpp:
1267         (WebCore::HTMLFrameOwnerElement::disconnectContentFrame):
1268         * html/HTMLFrameSetElement.cpp:
1269         (WebCore::HTMLFrameSetElement::insertedInto):
1270         (WebCore::HTMLFrameSetElement::removedFrom):
1271         * html/HTMLHtmlElement.cpp:
1272         (WebCore::HTMLHtmlElement::insertedByParser):
1273         * html/HTMLMediaElement.cpp:
1274         (WebCore::HTMLMediaElement::createRenderer):
1275         (WebCore::HTMLMediaElement::attach):
1276         (WebCore::HTMLMediaElement::loadResource):
1277         (WebCore::HTMLMediaElement::getPluginProxyParams):
1278         (WebCore::HTMLMediaElement::createMediaPlayerProxy):
1279         (WebCore::HTMLMediaElement::updateWidget):
1280         (WebCore::HTMLMediaElement::mediaPlayerReferrer):
1281         (WebCore::HTMLMediaElement::mediaPlayerUserAgent):
1282         * html/HTMLObjectElement.cpp:
1283         (WebCore::HTMLObjectElement::parametersForPlugin):
1284         (WebCore::HTMLObjectElement::updateWidget):
1285         * html/HTMLPlugInImageElement.cpp:
1286         (WebCore::HTMLPlugInImageElement::isImageType):
1287         (WebCore::HTMLPlugInImageElement::wouldLoadAsNetscapePlugin):
1288         (WebCore::HTMLPlugInImageElement::restartSimilarPlugIns):
1289         * html/HTMLVideoElement.cpp:
1290         (WebCore::HTMLVideoElement::setDisplayMode):
1291         * html/ImageDocument.cpp:
1292         (WebCore::ImageDocumentParser::appendBytes):
1293         (WebCore::ImageDocumentParser::finish):
1294         (WebCore::ImageDocument::createDocumentStructure):
1295         * html/MediaDocument.cpp:
1296         (WebCore::MediaDocumentParser::createDocumentStructure):
1297         * html/PluginDocument.cpp:
1298         (WebCore::PluginDocumentParser::createDocumentStructure):
1299         (WebCore::PluginDocumentParser::appendBytes):
1300         (WebCore::PluginDocument::detach):
1301         (WebCore::PluginDocument::cancelManualPluginLoad):
1302         * html/canvas/WebGLRenderingContext.cpp:
1303         (WebCore::WebGLRenderingContext::create):
1304         (WebCore::WebGLRenderingContext::loseContextImpl):
1305         (WebCore::WebGLRenderingContext::maybeRestoreContext):
1306         * html/parser/HTMLConstructionSite.cpp:
1307         (WebCore::HTMLConstructionSite::dispatchDocumentElementAvailableIfNeeded):
1308         (WebCore::HTMLConstructionSite::insertHTMLBodyElement):
1309         * html/parser/HTMLParserOptions.cpp:
1310         (WebCore::HTMLParserOptions::HTMLParserOptions):
1311         * html/parser/XSSAuditor.cpp:
1312         (WebCore::XSSAuditor::init):
1313         * html/parser/XSSAuditorDelegate.cpp:
1314         (WebCore::XSSAuditorDelegate::generateViolationReport):
1315         (WebCore::XSSAuditorDelegate::didBlockScript):
1316         * inspector/InspectorApplicationCacheAgent.cpp:
1317         (WebCore::InspectorApplicationCacheAgent::updateApplicationCacheStatus):
1318         (WebCore::InspectorApplicationCacheAgent::getFramesWithManifests):
1319         * inspector/InspectorFrontendClientLocal.cpp:
1320         (WebCore::InspectorFrontendClientLocal::openInNewTab):
1321         * inspector/InspectorFrontendHost.cpp:
1322         (WebCore::InspectorFrontendHost::loadResourceSynchronously):
1323         * inspector/InspectorOverlay.cpp:
1324         (WebCore::InspectorOverlay::overlayPage):
1325         * inspector/InspectorPageAgent.cpp:
1326         (WebCore::InspectorPageAgent::mainResourceContent):
1327         (WebCore::InspectorPageAgent::reload):
1328         (WebCore::InspectorPageAgent::navigate):
1329         (WebCore::allResourcesURLsForFrame):
1330         (WebCore::InspectorPageAgent::searchInResource):
1331         (WebCore::InspectorPageAgent::assertDocumentLoader):
1332         (WebCore::InspectorPageAgent::buildObjectForFrame):
1333         * inspector/InspectorResourceAgent.cpp:
1334         (WebCore::InspectorResourceAgent::didFailLoading):
1335         * loader/CookieJar.cpp:
1336         (WebCore::networkingContext):
1337         * loader/DocumentLoader.cpp:
1338         (WebCore::DocumentLoader::frameLoader):
1339         (WebCore::DocumentLoader::document):
1340         (WebCore::DocumentLoader::stopLoading):
1341         (WebCore::DocumentLoader::removeSubresourceLoader):
1342         (WebCore::DocumentLoader::subresourceLoaderFinishedLoadingOnePart):
1343         (WebCore::DocumentLoader::iconLoadDecisionAvailable):
1344         (WebCore::DocumentLoader::continueIconLoadWithDecision):
1345         * loader/DocumentThreadableLoader.cpp:
1346         (WebCore::DocumentThreadableLoader::didReceiveResponse):
1347         (WebCore::DocumentThreadableLoader::didFinishLoading):
1348         (WebCore::DocumentThreadableLoader::didFail):
1349         (WebCore::DocumentThreadableLoader::preflightFailure):
1350         (WebCore::DocumentThreadableLoader::loadRequest):
1351         * loader/DocumentWriter.cpp:
1352         (WebCore::DocumentWriter::replaceDocument):
1353         (WebCore::DocumentWriter::createDocument):
1354         (WebCore::DocumentWriter::begin):
1355         * loader/FrameLoader.cpp:
1356         (WebCore::FrameLoader::~FrameLoader):
1357         (WebCore::FrameLoader::allChildrenAreComplete):
1358         (WebCore::FrameLoader::allAncestorsAreComplete):
1359         (WebCore::FrameLoader::loadURLIntoChildFrame):
1360         (WebCore::FrameLoader::outgoingReferrer):
1361         (WebCore::FrameLoader::setOpener):
1362         (WebCore::FrameLoader::completed):
1363         (WebCore::FrameLoader::started):
1364         (WebCore::FrameLoader::loadFrameRequest):
1365         (WebCore::FrameLoader::loadURL):
1366         (WebCore::FrameLoader::load):
1367         (WebCore::FrameLoader::loadWithDocumentLoader):
1368         (WebCore::FrameLoader::stopAllLoaders):
1369         (WebCore::FrameLoader::closeOldDataSources):
1370         (WebCore::FrameLoader::subframeIsLoading):
1371         (WebCore::FrameLoader::subresourceCachePolicy):
1372         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1373         (WebCore::FrameLoader::detachChildren):
1374         (WebCore::FrameLoader::checkLoadComplete):
1375         (WebCore::FrameLoader::detachFromParent):
1376         (WebCore::FrameLoader::loadPostRequest):
1377         (WebCore::FrameLoader::loadResourceSynchronously):
1378         (WebCore::FrameLoader::shouldClose):
1379         (WebCore::FrameLoader::handleBeforeUnloadEvent):
1380         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1381         (WebCore::FrameLoader::continueLoadAfterNewWindowPolicy):
1382         (WebCore::createWindow):
1383         * loader/HistoryController.cpp:
1384         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
1385         (WebCore::HistoryController::restoreScrollPositionAndViewState):
1386         (WebCore::HistoryController::saveDocumentState):
1387         (WebCore::HistoryController::saveDocumentAndScrollState):
1388         (WebCore::isAssociatedToRequestedHistoryItem):
1389         (WebCore::HistoryController::restoreDocumentState):
1390         (WebCore::HistoryController::shouldStopLoadingForHistoryItem):
1391         (WebCore::HistoryController::goToItem):
1392         (WebCore::HistoryController::updateForBackForwardNavigation):
1393         (WebCore::HistoryController::updateForReload):
1394         (WebCore::HistoryController::updateForStandardLoad):
1395         (WebCore::HistoryController::updateForRedirectWithLockedBackForwardList):
1396         (WebCore::HistoryController::updateForClientRedirect):
1397         (WebCore::HistoryController::updateForCommit):
1398         (WebCore::HistoryController::recursiveUpdateForCommit):
1399         (WebCore::HistoryController::updateForSameDocumentNavigation):
1400         (WebCore::HistoryController::recursiveUpdateForSameDocumentNavigation):
1401         (WebCore::HistoryController::initializeItem):
1402         (WebCore::HistoryController::createItemTree):
1403         (WebCore::HistoryController::recursiveSetProvisionalItem):
1404         (WebCore::HistoryController::recursiveGoToItem):
1405         (WebCore::HistoryController::updateBackForwardListClippedAtTarget):
1406         (WebCore::HistoryController::updateCurrentItem):
1407         (WebCore::HistoryController::pushState):
1408         (WebCore::HistoryController::replaceState):
1409         * loader/ImageLoader.cpp:
1410         (WebCore::pageIsBeingDismissed):
1411         * loader/MixedContentChecker.cpp:
1412         (WebCore::MixedContentChecker::client):
1413         * loader/NavigationScheduler.cpp:
1414         (WebCore::ScheduledURLNavigation::fire):
1415         (WebCore::ScheduledURLNavigation::didStartTimer):
1416         (WebCore::ScheduledURLNavigation::didStopTimer):
1417         (WebCore::ScheduledRedirect::shouldStartTimer):
1418         (WebCore::ScheduledRedirect::fire):
1419         (WebCore::ScheduledRefresh::fire):
1420         (WebCore::ScheduledHistoryNavigation::fire):
1421         (WebCore::ScheduledFormSubmission::fire):
1422         (WebCore::ScheduledFormSubmission::didStartTimer):
1423         (WebCore::ScheduledFormSubmission::didStopTimer):
1424         (WebCore::NavigationScheduler::mustLockBackForwardList):
1425         (WebCore::NavigationScheduler::scheduleLocationChange):
1426         (WebCore::NavigationScheduler::scheduleFormSubmission):
1427         (WebCore::NavigationScheduler::scheduleRefresh):
1428         (WebCore::NavigationScheduler::schedule):
1429         * loader/PingLoader.cpp:
1430         (WebCore::PingLoader::loadImage):
1431         (WebCore::PingLoader::sendPing):
1432         (WebCore::PingLoader::sendViolationReport):
1433         (WebCore::PingLoader::PingLoader):
1434         * loader/PolicyChecker.cpp:
1435         (WebCore::PolicyChecker::checkNavigationPolicy):
1436         (WebCore::PolicyChecker::checkNewWindowPolicy):
1437         (WebCore::PolicyChecker::checkContentPolicy):
1438         (WebCore::PolicyChecker::cancelCheck):
1439         (WebCore::PolicyChecker::stopCheck):
1440         (WebCore::PolicyChecker::cannotShowMIMEType):
1441         (WebCore::PolicyChecker::continueLoadAfterWillSubmitForm):
1442         (WebCore::PolicyChecker::continueAfterNavigationPolicy):
1443         (WebCore::PolicyChecker::continueAfterNewWindowPolicy):
1444         (WebCore::PolicyChecker::handleUnimplementablePolicy):
1445         * loader/ProgressTracker.cpp:
1446         (WebCore::ProgressTracker::progressStarted):
1447         (WebCore::ProgressTracker::progressCompleted):
1448         (WebCore::ProgressTracker::finalProgressComplete):
1449         (WebCore::ProgressTracker::incrementProgress):
1450         (WebCore::ProgressTracker::progressHeartbeatTimerFired):
1451         * loader/ResourceLoadNotifier.cpp:
1452         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
1453         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
1454         (WebCore::ResourceLoadNotifier::willSendRequest):
1455         (WebCore::ResourceLoadNotifier::didFailToLoad):
1456         (WebCore::ResourceLoadNotifier::assignIdentifierToInitialRequest):
1457         (WebCore::ResourceLoadNotifier::dispatchWillSendRequest):
1458         (WebCore::ResourceLoadNotifier::dispatchDidReceiveResponse):
1459         (WebCore::ResourceLoadNotifier::dispatchDidReceiveData):
1460         (WebCore::ResourceLoadNotifier::dispatchDidFinishLoading):
1461         (WebCore::ResourceLoadNotifier::dispatchDidFailLoading):
1462         * loader/ResourceLoader.cpp:
1463         (WebCore::ResourceLoader::ResourceLoader):
1464         (WebCore::ResourceLoader::start):
1465         (WebCore::ResourceLoader::frameLoader):
1466         (WebCore::ResourceLoader::willSendRequest):
1467         * loader/SubframeLoader.cpp:
1468         (WebCore::SubframeLoader::pluginIsLoadable):
1469         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
1470         (WebCore::SubframeLoader::createJavaAppletWidget):
1471         (WebCore::SubframeLoader::loadOrRedirectSubframe):
1472         (WebCore::SubframeLoader::loadSubframe):
1473         (WebCore::SubframeLoader::allowPlugins):
1474         (WebCore::SubframeLoader::shouldUsePlugin):
1475         (WebCore::SubframeLoader::loadPlugin):
1476         * loader/appcache/ApplicationCacheGroup.cpp:
1477         (WebCore::ApplicationCacheGroup::selectCache):
1478         (WebCore::ApplicationCacheGroup::selectCacheWithoutManifestURL):
1479         (WebCore::ApplicationCacheGroup::update):
1480         (WebCore::ApplicationCacheGroup::createResourceHandle):
1481         (WebCore::ApplicationCacheGroup::didReceiveResponse):
1482         (WebCore::ApplicationCacheGroup::didFinishLoading):
1483         (WebCore::ApplicationCacheGroup::didFail):
1484         (WebCore::ApplicationCacheGroup::addEntry):
1485         (WebCore::CallCacheListenerTask::performTask):
1486         (WebCore::ApplicationCacheGroup::postListenerTask):
1487         * loader/appcache/DOMApplicationCache.cpp:
1488         (WebCore::DOMApplicationCache::applicationCacheHost):
1489         * loader/archive/cf/LegacyWebArchive.cpp:
1490         (WebCore::LegacyWebArchive::create):
1491         (WebCore::LegacyWebArchive::createFromSelection):
1492         * loader/cache/CachedResource.cpp:
1493         (WebCore::CachedResource::addAdditionalRequestHeaders):
1494         (WebCore::CachedResource::load):
1495         * loader/cache/CachedResourceLoader.cpp:
1496         (WebCore::CachedResourceLoader::requestImage):
1497         (WebCore::CachedResourceLoader::checkInsecureContent):
1498         (WebCore::CachedResourceLoader::canRequest):
1499         (WebCore::CachedResourceLoader::shouldContinueAfterNotifyingLoadedFromMemoryCache):
1500         (WebCore::CachedResourceLoader::requestResource):
1501         (WebCore::CachedResourceLoader::clientDefersImage):
1502         (WebCore::CachedResourceLoader::cachePolicy):
1503         (WebCore::CachedResourceLoader::loadDone):
1504         * loader/icon/IconController.cpp:
1505         (WebCore::IconController::commitToDatabase):
1506         (WebCore::IconController::startLoader):
1507         (WebCore::IconController::continueLoadWithDecision):
1508         * loader/icon/IconLoader.cpp:
1509         (WebCore::IconLoader::startLoading):
1510         (WebCore::IconLoader::notifyFinished):
1511         * page/Chrome.cpp:
1512         (WebCore::canRunModalIfDuringPageDismissal):
1513         * page/ContextMenuController.cpp:
1514         (WebCore::openNewWindow):
1515         (WebCore::ContextMenuController::contextMenuItemSelected):
1516         (WebCore::ContextMenuController::populate):
1517         (WebCore::ContextMenuController::checkOrEnableIfNeeded):
1518         * page/DOMWindow.cpp:
1519         (WebCore::DOMWindow::dispatchAllPendingBeforeUnloadEvents):
1520         (WebCore::DOMWindow::postMessageTimerFired):
1521         (WebCore::DOMWindow::close):
1522         (WebCore::DOMWindow::print):
1523         (WebCore::DOMWindow::stop):
1524         (WebCore::DOMWindow::setName):
1525         (WebCore::DOMWindow::opener):
1526         (WebCore::DOMWindow::dispatchLoadEvent):
1527         (WebCore::DOMWindow::setLocation):
1528         (WebCore::DOMWindow::createWindow):
1529         (WebCore::DOMWindow::open):
1530         * page/DOMWindowExtension.cpp:
1531         (WebCore::DOMWindowExtension::disconnectFrameForPageCache):
1532         (WebCore::DOMWindowExtension::reconnectFrameFromPageCache):
1533         (WebCore::DOMWindowExtension::willDestroyGlobalObjectInCachedFrame):
1534         (WebCore::DOMWindowExtension::willDestroyGlobalObjectInFrame):
1535         (WebCore::DOMWindowExtension::willDetachGlobalObjectFromFrame):
1536         * page/DragController.cpp:
1537         (WebCore::DragController::performDrag):
1538         * page/EventHandler.cpp:
1539         (WebCore::EventHandler::handleMousePressEvent):
1540         (WebCore::EventHandler::keyEvent):
1541         * page/Frame.cpp:
1542         (WebCore::Frame::~Frame):
1543         (WebCore::Frame::setView):
1544         (WebCore::Frame::injectUserScripts):
1545         (WebCore::Frame::willDetachPage):
1546         * page/Frame.h:
1547         (WebCore::Frame::loader):
1548         * page/FrameView.cpp:
1549         (WebCore::FrameView::mediaType):
1550         (WebCore::FrameView::setFixedVisibleContentRect):
1551         (WebCore::FrameView::shouldUseLoadTimeDeferredRepaintDelay):
1552         (WebCore::FrameView::performPostLayoutTasks):
1553         (WebCore::FrameView::autoSizeIfEnabled):
1554         (WebCore::FrameView::scrollTo):
1555         (WebCore::FrameView::shouldSuspendScrollAnimations):
1556         (WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
1557         (WebCore::FrameView::wheelEvent):
1558         (WebCore::FrameView::firePaintRelatedMilestones):
1559         * page/History.cpp:
1560         (WebCore::History::stateInternal):
1561         (WebCore::History::stateObjectAdded):
1562         * page/Location.cpp:
1563         (WebCore::Location::setLocation):
1564         * page/Navigator.cpp:
1565         (WebCore::Navigator::userAgent):
1566         * page/Page.cpp:
1567         (WebCore::Page::goToItem):
1568         (WebCore::Page::refreshPlugins):
1569         (WebCore::Page::setDefersLoading):
1570         (WebCore::Page::setMemoryCacheClientCallsEnabled):
1571         (WebCore::Page::addRelevantRepaintedObject):
1572         * page/Performance.cpp:
1573         (WebCore::Performance::now):
1574         * page/PerformanceNavigation.cpp:
1575         (WebCore::PerformanceNavigation::type):
1576         (WebCore::PerformanceNavigation::redirectCount):
1577         * page/PerformanceResourceTiming.cpp:
1578         (WebCore::monotonicTimeToDocumentMilliseconds):
1579         * page/mac/PageMac.cpp:
1580         (WebCore::Page::addSchedulePair):
1581         (WebCore::Page::removeSchedulePair):
1582         * platform/ios/PasteboardIOS.mm:
1583         (WebCore::documentFragmentWithImageResource):
1584         (WebCore::documentFragmentWithRTF):
1585         (WebCore::Pasteboard::documentFragmentForPasteboardItemAtIndex):
1586         * platform/mac/HTMLConverter.mm:
1587         (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
1588         (-[WebHTMLConverter _loadFromDOMRange]):
1589         * platform/mac/PasteboardMac.mm:
1590         (WebCore::documentFragmentWithImageResource):
1591         (WebCore::documentFragmentWithRTF):
1592         (WebCore::fragmentFromWebArchive):
1593         * plugins/DOMMimeType.cpp:
1594         (WebCore::DOMMimeType::enabledPlugin):
1595         * rendering/RenderLayer.cpp:
1596         (WebCore::RenderLayer::scrollTo):
1597         * svg/SVGAElement.cpp:
1598         (WebCore::SVGAElement::defaultEventHandler):
1599         * svg/graphics/SVGImage.cpp:
1600         (WebCore::SVGImage::~SVGImage):
1601         (WebCore::SVGImage::dataChanged):
1602         * testing/Internals.cpp:
1603         (WebCore::Internals::formControlStateOfPreviousHistoryItem):
1604         (WebCore::Internals::setFormControlStateOfPreviousHistoryItem):
1605         (WebCore::Internals::getReferencedFilePaths):
1606         (WebCore::Internals::forceReload):
1607         * xml/XSLTProcessorLibxslt.cpp:
1608         (WebCore::docLoaderFunc):
1609         * xml/parser/XMLDocumentParserLibxml2.cpp:
1610         (WebCore::openFunc):
1611         (WebCore::XMLDocumentParser::startElementNs):
1612
1613 2013-08-15  Daniel Bates  <dabates@apple.com>
1614
1615         <https://webkit.org/b/119863> [iOS] Upstream WebCore/editing/ios
1616
1617         Reviewed by David Kilzer.
1618
1619         Use the same UUIDs for EditorIOS.mm and the group ios as in the iOS tree
1620         so as to make it straightforward to merge changes to the WebCore Xcode
1621         project file on WebKit.org with changes to the same file in the iOS tree.
1622
1623         * WebCore.xcodeproj/project.pbxproj:
1624
1625 2013-08-15  Brent Fulgham  <bfulgham@apple.com>
1626
1627         [Windows] Unreviewed build fix after r15417.
1628
1629         * DerivedSources.cpp: Remove classes that now live in JSC.
1630         * WebCore.vcxproj/WebCore.vcxproj: Remove classes no longer included in WebCore.
1631         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1632         * bindings/js/WebCoreTypedArrayController.cpp: Add explicit namespace to avoid conflict
1633         with Windows 'Unknown' type.
1634         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots):
1635         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):
1636
1637 2013-08-15  Daniel Bates  <dabates@apple.com>
1638
1639         <https://webkit.org/b/119863> [iOS] Upstream WebCore/editing/ios
1640
1641         Reviewed by David Kilzer.
1642
1643         * WebCore.xcodeproj/project.pbxproj:
1644         * editing/ios/EditorIOS.mm: Added.
1645         (WebCore::Editor::newGeneralClipboard):
1646         (WebCore::Editor::showFontPanel):
1647         (WebCore::Editor::showStylesPanel):
1648         (WebCore::Editor::showColorPanel):
1649         (WebCore::Editor::setTextAlignmentForChangedBaseWritingDirection):
1650         (WebCore::Editor::insertParagraphSeparatorInQuotedContent):
1651         (WebCore::styleForSelectionStart):
1652         (WebCore::Editor::fontForSelection):
1653         (WebCore::Editor::fontAttributesForSelectionStart):
1654         (WebCore::Editor::removeUnchangeableStyles):
1655
1656 2013-08-15  Dirk Schulze  <krit@webkit.org>
1657
1658         Implement CSS Image filter() function
1659         https://bugs.webkit.org/show_bug.cgi?id=119845
1660
1661         Reviewed by Dean Jackson.
1662
1663         The Filter Effects specification defines a new CSS Image function called
1664         filter(). This function takes another CSS Image as well as a filter function
1665         list as input and can be used by various CSS properties.
1666
1667         Example:
1668
1669             background-image: -webkit-filter(url(image.png), brightness(0.5))
1670
1671         This patch implements the current definition of filter() based on other
1672         image generation classes like CSSCrossfadeValue.
1673         A new class called CSSFilterImageValue was added together with an
1674         image observer.
1675
1676         The function is implemented prefixed and behind the compiler flag CSS_FILTERS.
1677
1678         Tests: fast/filter-image/filter-image.html
1679                fast/filter-image/parse-filter-image.html
1680
1681         * CMakeLists.txt: Added new files to build systems.
1682         * GNUmakefile.list.am:
1683         * Target.pri:
1684         * WebCore.vcxproj/WebCore.vcxproj:
1685         * WebCore.xcodeproj/project.pbxproj:
1686         * css/CSSAllInOne.cpp:
1687         * css/CSSCrossfadeValue.cpp: Share code together with CSSFilterImageValue
1688             in CSSImageGeneratorValue.cpp.
1689         (WebCore::CSSCrossfadeValue::isPending):
1690         (WebCore::CSSCrossfadeValue::loadSubimages):
1691         * css/CSSFilterImageValue.cpp: Added.
1692         (WebCore::CSSFilterImageValue::~CSSFilterImageValue):
1693         (WebCore::CSSFilterImageValue::customCssText):
1694         (WebCore::CSSFilterImageValue::fixedSize):
1695         (WebCore::CSSFilterImageValue::isPending):
1696         (WebCore::CSSFilterImageValue::knownToBeOpaque):
1697         (WebCore::CSSFilterImageValue::loadSubimages):
1698         (WebCore::CSSFilterImageValue::image):
1699         (WebCore::CSSFilterImageValue::filterImageChanged):
1700         (WebCore::CSSFilterImageValue::createFilterOperations):
1701         (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::imageChanged):
1702         (WebCore::CSSFilterImageValue::hasFailedOrCanceledSubresources):
1703         (WebCore::CSSFilterImageValue::equals):
1704         * css/CSSFilterImageValue.h: Added.
1705         (WebCore::CSSFilterImageValue::create):
1706         (WebCore::CSSFilterImageValue::isFixedSize):
1707         (WebCore::CSSFilterImageValue::CSSFilterImageValue):
1708         (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::FilterSubimageObserverProxy):
1709         (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::~FilterSubimageObserverProxy):
1710         (WebCore::CSSFilterImageValue::FilterSubimageObserverProxy::setReady):
1711         * css/CSSImageGeneratorValue.cpp: Shared code between CSSCrossfadeValue and
1712             CSSFilterImageValue.
1713         (WebCore::CSSImageGeneratorValue::image):
1714         (WebCore::CSSImageGeneratorValue::isFixedSize):
1715         (WebCore::CSSImageGeneratorValue::fixedSize):
1716         (WebCore::CSSImageGeneratorValue::isPending):
1717         (WebCore::CSSImageGeneratorValue::knownToBeOpaque):
1718         (WebCore::CSSImageGeneratorValue::loadSubimages):
1719         (WebCore::CSSImageGeneratorValue::subimageIsPending):
1720         (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
1721         * css/CSSImageGeneratorValue.h:
1722         * css/CSSParser.cpp: Added parsing information for new image function.
1723         (WebCore::CSSParser::parseValue):
1724         (WebCore::CSSParser::isGeneratedImageValue):
1725         (WebCore::CSSParser::parseGeneratedImage):
1726         (WebCore::CSSParser::parseFilterImage):
1727         (WebCore::CSSParser::parseFilter):
1728         * css/CSSParser.h:
1729         * css/CSSValue.cpp:
1730         (WebCore::CSSValue::hasFailedOrCanceledSubresources):
1731         (WebCore::CSSValue::equals):
1732         (WebCore::CSSValue::cssText):
1733         (WebCore::CSSValue::destroy):
1734         * css/CSSValue.h:
1735         (WebCore::CSSValue::isFilterImageValue):
1736         * css/StyleResolver.cpp:
1737         (WebCore::StyleResolver::applyProperty):
1738         (WebCore::StyleResolver::generatedOrPendingFromValue):
1739         (WebCore::StyleResolver::createFilterOperations):
1740         * css/StyleResolver.h: StyleResolver needs to be passed to
1741             CSSFilterImageValue in order to resolve blur() and
1742             drop-shadow() function. Both needs to be resolved together
1743             with all other properties and can't be done earlier or later.
1744         * rendering/FilterEffectRenderer.cpp:
1745         (WebCore::FilterEffectRenderer::build): Pass an argument whether the
1746             intermediate filter results should be clipped or not. The filter
1747             property for instance doesn't clip but scales the intermediate
1748             image sizes.
1749         * rendering/FilterEffectRenderer.h:
1750
1751 2013-08-15  Filip Pizlo  <fpizlo@apple.com>
1752
1753         Unreviewed, fix bindings tests after http://trac.webkit.org/changeset/154127
1754
1755         * bindings/scripts/test/JS/JSTestCallback.cpp:
1756         (WebCore::JSTestCallback::callbackWithArrayParam):
1757         * bindings/scripts/test/JS/JSTestCallback.h:
1758         * bindings/scripts/test/JS/JSTestObj.cpp:
1759         (WebCore::setJSTestObjTypedArrayAttr):
1760         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1761         (WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors2):
1762         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1763         (WebCore::jsTestTypedefsPrototypeFunctionFunc):
1764         * bindings/scripts/test/ObjC/DOMFloat64Array.mm:
1765         * bindings/scripts/test/ObjC/DOMTestCallback.mm:
1766         * bindings/scripts/test/TestTypedArray.idl: Removed.
1767
1768 2013-08-15  Ryosuke Niwa  <rniwa@webkit.org>
1769
1770         Qt minimum build fix after r154116.
1771
1772         * page/FrameView.cpp:
1773         (WebCore::FrameView::sendResizeEventIfNeeded):
1774
1775 2013-08-14  Filip Pizlo  <fpizlo@apple.com>
1776
1777         Typed arrays should be rewritten
1778         https://bugs.webkit.org/show_bug.cgi?id=119064
1779
1780         Reviewed by Oliver Hunt.
1781
1782         Typed arrays are now implemented in JavaScriptCore, and WebCore is merely a
1783         client of them. There is only one layering violation: WebCore installs a
1784         WebCoreTypedArrayController on VM, which makes the
1785         ArrayBuffer<->JSArrayBuffer relationship resemble DOM wrappers. By default,
1786         JSC makes the ownership go one way; the JSArrayBuffer keeps the ArrayBuffer
1787         alive but if ArrayBuffer is kept alive from native code then the
1788         JSArrayByffer may die. WebCoreTypedArrayController will keep the
1789         JSArrayBuffer alive if the ArrayBuffer is in the opaque root set.
1790         
1791         To make non-JSDOMWrappers behave like DOM wrappers, a bunch of code is
1792         changed to make most references to wrappers refer to JSObject* rather than
1793         JSDOMWrapper*.
1794         
1795         Array buffer views are now transient; the JS array buffer view wrappers
1796         don't own them or keep them alive. This required a bunch of changes to make
1797         bindings code use RefPtr<ArrayBufferView> to hold onto their views.
1798         
1799         Also there is a bunch of new code to make JSC-provided array buffers and
1800         views obey the toJS/to<ClassName> idiom for wrapping and unwrapping.
1801         
1802         Finally, the DataView API is now completely different: the JSDataView
1803         provides the same user-visible JS API but using its own internal magic; the
1804         C++ code that uses DataView now uses a rather different API that is not
1805         aware of usual DOM semantics, since it's in JSC and not WebCore. It's
1806         equally useful for all of WebCore's purposes, but some code had to change
1807         to adapt the new conventions.
1808         
1809         Some tests have been changed or rebased due to changes in behavior, that
1810         bring us into conformance with where the standards are going and allow us to
1811         match Firefox behavior.
1812
1813         Automake work and some additional GTK changes courtesy of
1814         Zan Dobersek <zdobersek@igalia.com>.
1815         
1816         Additional Qt changes courtesy of Arunprasad Rajkumar <arurajku@cisco.com>.
1817
1818         * CMakeLists.txt:
1819         * DerivedSources.make:
1820         * ForwardingHeaders/runtime/DataView.h: Added.
1821         * ForwardingHeaders/runtime/JSArrayBuffer.h: Added.
1822         * ForwardingHeaders/runtime/JSArrayBufferView.h: Added.
1823         * ForwardingHeaders/runtime/JSDataView.h: Added.
1824         * ForwardingHeaders/runtime/JSTypedArrays.h: Added.
1825         * ForwardingHeaders/runtime/TypedArrayController.h: Added.
1826         * ForwardingHeaders/runtime/TypedArrayInlines.h: Added.
1827         * ForwardingHeaders/runtime/TypedArrays.h: Added.
1828         * GNUmakefile.list.am:
1829         * Modules/webaudio/RealtimeAnalyser.h:
1830         * Target.pri:
1831         * UseJSC.cmake:
1832         * WebCore.exp.in:
1833         * WebCore.vcxproj/WebCore.vcxproj:
1834         * WebCore.xcodeproj/project.pbxproj:
1835         * bindings/js/DOMWrapperWorld.h:
1836         * bindings/js/JSArrayBufferCustom.cpp: Removed.
1837         * bindings/js/JSArrayBufferViewHelper.h: Removed.
1838         * bindings/js/JSAudioContextCustom.cpp:
1839         * bindings/js/JSBindingsAllInOne.cpp:
1840         * bindings/js/JSBlobCustom.cpp:
1841         * bindings/js/JSCSSRuleCustom.cpp:
1842         (WebCore::toJS):
1843         * bindings/js/JSCSSValueCustom.cpp:
1844         (WebCore::toJS):
1845         * bindings/js/JSCryptoCustom.cpp:
1846         (WebCore::JSCrypto::getRandomValues):
1847         * bindings/js/JSDOMBinding.h:
1848         (WebCore::wrapperOwner):
1849         (WebCore::wrapperContext):
1850         (WebCore::getInlineCachedWrapper):
1851         (WebCore::setInlineCachedWrapper):
1852         (WebCore::clearInlineCachedWrapper):
1853         (WebCore::getCachedWrapper):
1854         (WebCore::cacheWrapper):
1855         (WebCore::uncacheWrapper):
1856         (WebCore::wrap):
1857         (WebCore::toJS):
1858         (WebCore::toArrayBufferView):
1859         (WebCore::toInt8Array):
1860         (WebCore::toInt16Array):
1861         (WebCore::toInt32Array):
1862         (WebCore::toUint8Array):
1863         (WebCore::toUint8ClampedArray):
1864         (WebCore::toUint16Array):
1865         (WebCore::toUint32Array):
1866         (WebCore::toFloat32Array):
1867         (WebCore::toFloat64Array):
1868         (WebCore::toDataView):
1869         * bindings/js/JSDataViewCustom.cpp: Removed.
1870         * bindings/js/JSDictionary.cpp:
1871         * bindings/js/JSDictionary.h:
1872         * bindings/js/JSDocumentCustom.cpp:
1873         (WebCore::JSDocument::location):
1874         (WebCore::toJS):
1875         * bindings/js/JSEventCustom.cpp:
1876         (WebCore::toJS):
1877         * bindings/js/JSFileReaderCustom.cpp:
1878         * bindings/js/JSHTMLCollectionCustom.cpp:
1879         (WebCore::toJS):
1880         * bindings/js/JSHTMLTemplateElementCustom.cpp:
1881         (WebCore::JSHTMLTemplateElement::content):
1882         * bindings/js/JSImageDataCustom.cpp:
1883         (WebCore::toJS):
1884         * bindings/js/JSInjectedScriptHostCustom.cpp:
1885         * bindings/js/JSMessageEventCustom.cpp:
1886         * bindings/js/JSMessagePortCustom.cpp:
1887         * bindings/js/JSSVGPathSegCustom.cpp:
1888         (WebCore::toJS):
1889         * bindings/js/JSStyleSheetCustom.cpp:
1890         (WebCore::toJS):
1891         * bindings/js/JSTrackCustom.cpp:
1892         (WebCore::toJS):
1893         * bindings/js/JSWebGLRenderingContextCustom.cpp:
1894         * bindings/js/JSXMLHttpRequestCustom.cpp:
1895         (WebCore::JSXMLHttpRequest::send):
1896         * bindings/js/SerializedScriptValue.cpp:
1897         (WebCore::SerializedScriptValue::transferArrayBuffers):
1898         * bindings/js/WebCoreJSClientData.h:
1899         (WebCore::initNormalWorldClientData):
1900         * bindings/js/WebCoreTypedArrayController.cpp: Added.
1901         (WebCore::WebCoreTypedArrayController::WebCoreTypedArrayController):
1902         (WebCore::WebCoreTypedArrayController::~WebCoreTypedArrayController):
1903         (WebCore::WebCoreTypedArrayController::toJS):
1904         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots):
1905         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize):
1906         * bindings/js/WebCoreTypedArrayController.h: Added.
1907         (WebCore::WebCoreTypedArrayController::wrapperOwner):
1908         * bindings/scripts/CodeGenerator.pm:
1909         (ForAllParents):
1910         (ParseInterface):
1911         (SkipIncludeHeader):
1912         (IsTypedArrayType):
1913         (IsWrapperType):
1914         * bindings/scripts/CodeGeneratorJS.pm:
1915         (AddIncludesForType):
1916         (GenerateHeader):
1917         (GenerateImplementation):
1918         (GenerateParametersCheck):
1919         (GetNativeType):
1920         (JSValueToNative):
1921         (NativeToJSValue):
1922         (GenerateConstructorDefinition):
1923         (GenerateConstructorHelperMethods):
1924         * fileapi/WebKitBlobBuilder.cpp:
1925         (WebCore::BlobBuilder::append):
1926         * fileapi/WebKitBlobBuilder.h:
1927         * html/canvas/ArrayBuffer.idl: Removed.
1928         * html/canvas/ArrayBufferView.idl: Removed.
1929         * html/canvas/DataView.cpp: Removed.
1930         * html/canvas/DataView.h: Removed.
1931         * html/canvas/DataView.idl: Removed.
1932         * html/canvas/Float32Array.idl: Removed.
1933         * html/canvas/Float64Array.idl: Removed.
1934         * html/canvas/Int16Array.idl: Removed.
1935         * html/canvas/Int32Array.idl: Removed.
1936         * html/canvas/Int8Array.idl: Removed.
1937         * html/canvas/Uint16Array.idl: Removed.
1938         * html/canvas/Uint32Array.idl: Removed.
1939         * html/canvas/Uint8Array.idl: Removed.
1940         * html/canvas/Uint8ClampedArray.idl: Removed.
1941         * html/canvas/WebGLRenderingContext.cpp:
1942         (WebCore::WebGLRenderingContext::readPixels):
1943         (WebCore::WebGLRenderingContext::validateTexFuncData):
1944         * page/Crypto.cpp:
1945         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1946         (WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForLoadingOfResource):
1947         (WebCore::MediaPlayerPrivateAVFoundationObjC::extractKeyURIKeyIDAndCertificateFromInitData):
1948         * platform/graphics/filters/FECustomFilter.h:
1949         * platform/graphics/filters/FEGaussianBlur.cpp:
1950         * platform/graphics/filters/FilterEffect.cpp:
1951         * testing/MockCDM.cpp:
1952
1953 2013-08-15  Chris Fleizach  <cfleizach@apple.com>
1954
1955         <https://webkit.org/b/119824> AX: WKView does not become first responder when the voiceover cursor lands on it
1956
1957         Reviewed by Darin Adler.
1958
1959         Incorporate review feedback from Darin.
1960
1961         * accessibility/AccessibilityScrollView.cpp:
1962         (WebCore::AccessibilityScrollView::canSetFocusAttribute):
1963         (WebCore::AccessibilityScrollView::isFocused):
1964         * accessibility/AccessibilityScrollView.h:
1965
1966 2013-08-15  Andreas Kling  <akling@apple.com>
1967
1968         <https://webkit.org/b/119826> Page::focusController() should return a reference.
1969
1970         Reviewed by Anders Carlsson.
1971
1972         Page::focusController() is never null so make it return a reference.
1973         Some unnecessary checks were removed as a result.
1974
1975 2013-08-15  Rob Buis  <rwlbuis@webkit.org>
1976
1977         ASSERTION FAILED: !m_adoptionIsRequired in void WebCore::TreeShared<NodeType>::ref()
1978         https://bugs.webkit.org/show_bug.cgi?id=116979
1979
1980         Reviewed by Alexey Proskuryakov.
1981
1982         Make constructors private since only ::create should use them.
1983
1984         * html/shadow/MeterShadowElement.h:
1985         * html/shadow/ProgressShadowElement.h:
1986
1987 2013-08-15  Tim Horton  <timothy_horton@apple.com>
1988
1989         FrameView should have an isMainFrameView()
1990         https://bugs.webkit.org/show_bug.cgi?id=119435
1991
1992         Reviewed by Simon Fraser.
1993
1994         No new tests, just refactoring.
1995
1996         * page/FrameView.cpp:
1997         (WebCore::FrameView::FrameView):
1998         (WebCore::FrameView::isMainFrameView):
1999         (WebCore::FrameView::setFrameRect):
2000         (WebCore::FrameView::createScrollbar):
2001         (WebCore::FrameView::applyOverflowToViewport):
2002         (WebCore::FrameView::setHeaderHeight):
2003         (WebCore::FrameView::setFooterHeight):
2004         (WebCore::FrameView::minimumScrollPosition):
2005         (WebCore::FrameView::maximumScrollPosition):
2006         (WebCore::FrameView::performPostLayoutTasks):
2007         (WebCore::FrameView::sendResizeEventIfNeeded):
2008         (WebCore::FrameView::pagination):
2009         (WebCore::FrameView::visibleContentScaleFactor):
2010         (WebCore::FrameView::setVisibleScrollerThumbRect):
2011         (WebCore::FrameView::scrollbarStyleChanged):
2012         (WebCore::FrameView::paintScrollCorner):
2013         (WebCore::FrameView::paintScrollbar):
2014         (WebCore::FrameView::paintOverhangAreas):
2015         * page/FrameView.h:
2016         Add isMainFrameView and adopt it wherever we were previously checking if
2017         the FrameView's frame was the same as its page's main frame.
2018
2019 2013-08-15  Andy Estes  <aestes@apple.com>
2020
2021         <https://webkit.org/b/119853> REGRESSION (r139343): WebKit crashes when canceling a load inside webView:resource:didFinishLoadingFromDataSource:
2022
2023         Reviewed by Brady Eidson.
2024
2025         A client implementing webView:resource:didFinishLoadingFromDataSource:
2026         might decide to call stopLoading: for the identifier that just finished
2027         loading. If this happens we re-enter the loader and attempt to cancel a
2028         load that has already finished and been removed from the set of active
2029         loaders. Prevent this by clearing DocumentLoader's
2030         m_identifierForLoadWithoutResourceLoader before calling
2031         dispatchDidFinishLoading().
2032
2033         New API test: WebKit1.StopLoadingFromDidFinishLoading.
2034
2035         * loader/DocumentLoader.cpp:
2036         (WebCore::DocumentLoader::finishedLoading): Set
2037         m_identifierForLoadWithoutResourceLoader to 0 before calling
2038         dispatchDidFinishLoading().
2039
2040 2013-08-15  Eric Carlson  <eric.carlson@apple.com>
2041
2042         [Mac] Remove "legacy" media UI
2043         https://bugs.webkit.org/show_bug.cgi?id=119752
2044
2045         Reviewed by Jer Noble.
2046
2047         * WebCore.exp.in: Remove _wkMediaControllerThemeAvailable.
2048
2049         * platform/mac/WebCoreSystemInterface.h: Update for API change.
2050         * platform/mac/WebCoreSystemInterface.mm: Ditto.
2051
2052         * rendering/RenderThemeMac.h: Don't override hasOwnDisabledStateHandlingFor.
2053         * rendering/RenderThemeMac.mm:
2054         (WebCore::RenderThemeMac::adjustMediaSliderThumbSize): Remove code to deal with legacy theme.
2055         (WebCore::getUnzoomedRectAndAdjustCurrentContext): Ditto.
2056         (WebCore::RenderThemeMac::paintMediaFullscreenButton): wkDrawMediaUIPart doesn't need to know
2057             the current theme.
2058         (WebCore::RenderThemeMac::paintMediaMuteButton): Ditto.
2059         (WebCore::RenderThemeMac::paintMediaPlayButton): Ditto.
2060         (WebCore::RenderThemeMac::paintMediaSeekBackButton): Ditto.
2061         (WebCore::RenderThemeMac::paintMediaSeekForwardButton): Ditto.
2062         (WebCore::RenderThemeMac::paintMediaSliderTrack): Ditto.
2063         (WebCore::RenderThemeMac::paintMediaSliderThumb): Ditto.
2064         (WebCore::RenderThemeMac::paintMediaRewindButton): Ditto.
2065         (WebCore::RenderThemeMac::paintMediaReturnToRealtimeButton): Ditto.
2066         (WebCore::RenderThemeMac::paintMediaControlsBackground): Ditto.
2067         (WebCore::RenderThemeMac::paintMediaCurrentTime): Ditto.
2068         (WebCore::RenderThemeMac::paintMediaTimeRemaining): Ditto.
2069         (WebCore::RenderThemeMac::paintMediaVolumeSliderContainer): Ditto.
2070         (WebCore::RenderThemeMac::paintMediaVolumeSliderTrack): Ditto.
2071         (WebCore::RenderThemeMac::paintMediaVolumeSliderThumb): Ditto.
2072         (WebCore::RenderThemeMac::paintMediaFullScreenVolumeSliderTrack): Ditto.
2073         (WebCore::RenderThemeMac::paintMediaFullScreenVolumeSliderThumb): Ditto.
2074         (WebCore::RenderThemeMac::extraMediaControlsStyleSheet): We only have one theme.
2075         (WebCore::RenderThemeMac::extraFullScreenStyleSheet): Ditto.
2076         (WebCore::RenderThemeMac::usesMediaControlStatusDisplay): Ditto.
2077
2078 2013-08-15  Antti Koivisto  <antti@apple.com>
2079
2080         <https://webkit.org/b/119834> Remove ElementShadow
2081
2082         Reviewed by Anders Carlsson.
2083
2084         It is 1:1 with ShadowRoot and has virtually no functionality. What little there is can be moved to ShadowRoot or Element.
2085
2086         * CMakeLists.txt:
2087         * GNUmakefile.list.am:
2088         * Target.pri:
2089         * WebCore.exp.in:
2090         * WebCore.xcodeproj/project.pbxproj:
2091         * css/StyleResolver.cpp:
2092         (WebCore::StyleResolver::locateCousinList):
2093         * css/StyleScopeResolver.cpp:
2094         (WebCore::StyleScopeResolver::styleSharingCandidateMatchesHostRules):
2095         (WebCore::StyleScopeResolver::matchHostRules):
2096         * dom/ComposedShadowTreeWalker.cpp:
2097         (WebCore::nodeCanBeDistributed):
2098         (WebCore::ComposedShadowTreeWalker::traverseChild):
2099         * dom/ContainerNode.cpp:
2100         (WebCore::childAttachedAllowedWhenAttachingChildren):
2101         * dom/ContainerNodeAlgorithms.cpp:
2102         (WebCore::ChildNodeInsertionNotifier::notifyDescendantInsertedIntoDocument):
2103         (WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromDocument):
2104         (WebCore::ChildNodeRemovalNotifier::notifyDescendantRemovedFromTree):
2105         (WebCore::assertConnectedSubrameCountIsConsistent):
2106         * dom/ContainerNodeAlgorithms.h:
2107         (WebCore::ChildFrameDisconnector::collectFrameOwners):
2108         * dom/DOMAllInOne.cpp:
2109         * dom/Document.cpp:
2110         * dom/Element.cpp:
2111         (WebCore::Element::~Element):
2112         (WebCore::Element::attach):
2113         (WebCore::Element::detach):
2114         (WebCore::Element::shadowRoot):
2115         (WebCore::Element::didAffectSelector):
2116         (WebCore::Element::addShadowRoot):
2117         (WebCore::Element::removeShadowRoot):
2118         
2119             Move addShadowRoot and removeShadowRoot here from ElementShadow.
2120
2121         (WebCore::Element::createShadowRoot):
2122         (WebCore::Element::authorShadowRoot):
2123         (WebCore::Element::userAgentShadowRoot):
2124         (WebCore::Element::ensureUserAgentShadowRoot):
2125         (WebCore::Element::childrenChanged):
2126         (WebCore::Element::removeAllEventListeners):
2127         * dom/Element.h:
2128         (WebCore::isShadowHost):
2129         * dom/ElementRareData.h:
2130         (WebCore::ElementRareData::clearShadowRoot):
2131         (WebCore::ElementRareData::shadowRoot):
2132         (WebCore::ElementRareData::setShadowRoot):
2133         (WebCore::ElementRareData::~ElementRareData):
2134         * dom/ElementShadow.cpp: Removed.
2135         * dom/ElementShadow.h: Removed.
2136         * dom/EventDispatcher.cpp:
2137         * dom/EventPathWalker.cpp:
2138         (WebCore::EventPathWalker::moveToParent):
2139         * dom/Node.cpp:
2140         (WebCore::Node::needsShadowTreeWalkerSlow):
2141         * dom/NodeRenderingContext.cpp:
2142         * dom/NodeRenderingContext.h:
2143         * dom/ShadowRoot.cpp:
2144         (WebCore::ShadowRoot::attach):
2145         (WebCore::ShadowRoot::detach):
2146         
2147             Move attached() tests from ElementShadow.
2148
2149         (WebCore::ShadowRoot::childrenChanged):
2150         (WebCore::ShadowRoot::removeAllEventListeners):
2151         
2152             Move here from ElementShadow.
2153
2154         * dom/ShadowRoot.h:
2155         (WebCore::Node::shadowRoot):
2156         * dom/TreeScopeAdopter.cpp:
2157         * html/ColorInputType.cpp:
2158         (WebCore::ColorInputType::createShadowSubtree):
2159         * html/FileInputType.cpp:
2160         (WebCore::FileInputType::createShadowSubtree):
2161         (WebCore::FileInputType::disabledAttributeChanged):
2162         (WebCore::FileInputType::multipleAttributeChanged):
2163         * html/HTMLFormControlElement.cpp:
2164         * html/HTMLImageElement.cpp:
2165         (WebCore::HTMLImageElement::canStartSelection):
2166         * html/HTMLInputElement.cpp:
2167         (WebCore::HTMLInputElement::updateType):
2168         * html/HTMLKeygenElement.cpp:
2169         * html/HTMLMediaElement.cpp:
2170         * html/HTMLTextAreaElement.cpp:
2171         * html/InputType.cpp:
2172         * html/RangeInputType.cpp:
2173         (WebCore::RangeInputType::handleMouseDownEvent):
2174         (WebCore::RangeInputType::createShadowSubtree):
2175         * html/TextFieldInputType.cpp:
2176         (WebCore::TextFieldInputType::createShadowSubtree):
2177         * html/ValidationMessage.cpp:
2178         * html/shadow/ContentDistributor.cpp:
2179         (WebCore::ContentDistributor::distribute):
2180         (WebCore::ContentDistributor::ensureDistribution):
2181         * html/shadow/ContentDistributor.h:
2182         (WebCore::ContentDistributor::isValid):
2183         * html/shadow/InsertionPoint.cpp:
2184         (WebCore::InsertionPoint::childrenChanged):
2185         (WebCore::InsertionPoint::insertedInto):
2186         (WebCore::InsertionPoint::removedFrom):
2187         (WebCore::resolveReprojection):
2188         * html/shadow/InsertionPoint.h:
2189         (WebCore::shadowRootOfParentForDistribution):
2190         * html/shadow/SliderThumbElement.cpp:
2191         * inspector/InspectorDOMAgent.cpp:
2192         (WebCore::InspectorDOMAgent::unbind):
2193         (WebCore::InspectorDOMAgent::buildObjectForNode):
2194         * page/FocusController.cpp:
2195         (WebCore::FocusNavigationScope::focusNavigationScopeOwnedByShadowHost):
2196         * rendering/RenderFileUploadControl.cpp:
2197         (WebCore::RenderFileUploadControl::uploadButton):
2198         * rendering/RenderTheme.cpp:
2199         * style/StyleResolveTree.cpp:
2200         (WebCore::Style::resolveTree):
2201         * svg/SVGTRefElement.cpp:
2202         (WebCore::SVGTRefElement::updateReferencedText):
2203         (WebCore::SVGTRefElement::detachTarget):
2204         * svg/SVGUseElement.cpp:
2205         (WebCore::SVGUseElement::clearResourceReferences):
2206         (WebCore::SVGUseElement::buildShadowAndInstanceTree):
2207         (WebCore::SVGUseElement::buildShadowTree):
2208         * testing/Internals.cpp:
2209         (WebCore::Internals::ensureShadowRoot):
2210         (WebCore::Internals::shadowRoot):
2211
2212 2013-08-15  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2213
2214         [Qt] memory leak in WebCore::FontCache::getLastResortFallbackFont
2215         https://bugs.webkit.org/show_bug.cgi?id=118532
2216
2217         Reviewed by Jocelyn Turcotte.
2218
2219         We don't need to allocate FontPlatformData on the heap
2220         since getCachedFontData makes a deep copy anyway.
2221
2222         * platform/graphics/qt/FontCacheQt.cpp:
2223         (WebCore::FontCache::getLastResortFallbackFont):
2224
2225 2013-08-15  Rob Buis  <rwlbuis@webkit.org>
2226
2227         ASSERTION FAILED: !m_adoptionIsRequired in void WebCore::TreeShared<NodeType>::ref()
2228         https://bugs.webkit.org/show_bug.cgi?id=116979
2229
2230         Reviewed by Antti Koivisto.
2231
2232         Make sure adoptRef is called before calling setPseudo, for all progress shadow elements.
2233
2234         * html/shadow/ProgressShadowElement.cpp:
2235         (WebCore::ProgressInnerElement::ProgressInnerElement):
2236         (WebCore::ProgressBarElement::ProgressBarElement):
2237         (WebCore::ProgressValueElement::ProgressValueElement):
2238         * html/shadow/ProgressShadowElement.h:
2239         (WebCore::ProgressInnerElement::create):
2240         (WebCore::ProgressBarElement::create):
2241         (WebCore::ProgressValueElement::create):
2242
2243 2013-08-14  Ryuan Choi  <ryuan.choi@samsung.com>
2244
2245         <https://webkit.org/b/119786> [EFL] decoration of search type is different from other platforms
2246
2247         Reviewed by Gyuyoung Kim.
2248
2249         Other platforms except EFL port draw a magnifying icon for
2250         -webkit-search-results-button and -webkit-search-results-decoration in search field,
2251         but Efl port draws it for -webkit-search-decoration.
2252
2253         This patch makes Efl port draw icon in first two cases like other ports.
2254
2255         Tests: fast/css/input-search-padding.html
2256            fast/css/text-input-with-webkit-border-radius.html
2257            fast/css/text-overflow-input.html
2258            fast/forms/box-shadow-override.html
2259            fast/forms/control-restrict-line-height.html
2260            fast/forms/input-appearance-height.html
2261            fast/forms/placeholder-position.html
2262            fast/forms/placeholder-pseudo-style.html
2263            fast/forms/search-cancel-button-style-sharing.html
2264            fast/forms/search-display-none-cancel-button.html
2265            fast/forms/search-rtl.html
2266            fast/forms/search-vertical-alignment.html
2267            fast/forms/searchfield-heights.html
2268            fast/repaint/search-field-cancel.html
2269
2270         * platform/efl/DefaultTheme/widget/search/cancel/search_cancel.edc:
2271         Moved results_button alias to search_decoration.edc
2272         * platform/efl/DefaultTheme/widget/search/decoration/search_decoration.edc:
2273         * platform/efl/RenderThemeEfl.cpp:
2274         Updated size of ResultsButtonStyle and ResultsDecorationStyle to show icon.
2275         In addition, removed adjustSearchFieldResultsButtonStyle and paintSearchFieldDecoration.
2276         (WebCore::toEdjeGroup): Removed decoration group.
2277         (WebCore::RenderThemeEfl::adjustSearchFieldResultsButtonStyle):
2278         (WebCore::RenderThemeEfl::adjustSearchFieldResultsDecorationStyle):
2279         * platform/efl/RenderThemeEfl.h:
2280
2281 2013-08-14  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2282
2283         [CSS] Introduce new structure to pass image orientation values.
2284         https://bugs.webkit.org/show_bug.cgi?id=119418
2285
2286         Reviewed by Beth Dakin.
2287
2288         Add a ImageOrientationDescription struct in order to reduce count of argument for
2289         image orientation.
2290
2291         No new tests, no behavior change.
2292
2293         * html/HTMLCanvasElement.cpp:
2294         (WebCore::HTMLCanvasElement::paint):
2295         * page/DragController.cpp:
2296         (WebCore::DragController::doImageDrag):
2297         * page/Frame.cpp:
2298         (WebCore::Frame::nodeImage):
2299         (WebCore::Frame::dragImageForSelection):
2300         * platform/DragImage.h:
2301         * platform/blackberry/DragImageBlackBerry.cpp:
2302         (WebCore::createDragImageFromImage):
2303         * platform/efl/DragImageEfl.cpp:
2304         (WebCore::createDragImageFromImage):
2305         * platform/graphics/BitmapImage.cpp:
2306         (WebCore::BitmapImage::updateSize):
2307         * platform/graphics/BitmapImage.h:
2308         * platform/graphics/GraphicsContext.cpp:
2309         (WebCore::GraphicsContext::drawImage):
2310         * platform/graphics/GraphicsContext.h:
2311         * platform/graphics/Image.cpp:
2312         (WebCore::Image::draw):
2313         * platform/graphics/Image.h:
2314         * platform/graphics/ImageOrientation.h:
2315         (WebCore::ImageOrientationDescription::ImageOrientationDescription):
2316         (WebCore::ImageOrientationDescription::respectImageOrientation):
2317         (WebCore::ImageOrientationDescription::imageOrientation):
2318         * platform/graphics/ImageSource.cpp:
2319         (WebCore::ImageSource::size):
2320         (WebCore::ImageSource::frameSizeAtIndex):
2321         * platform/graphics/ImageSource.h:
2322         * platform/graphics/blackberry/ImageBlackBerry.cpp:
2323         (WebCore::BitmapImage::draw):
2324         * platform/graphics/cairo/BitmapImageCairo.cpp:
2325         (WebCore::BitmapImage::draw):
2326         * platform/graphics/cairo/ImageBufferCairo.cpp:
2327         (WebCore::ImageBuffer::draw):
2328         * platform/graphics/cg/BitmapImageCG.cpp:
2329         (WebCore::BitmapImage::draw):
2330         * platform/graphics/cg/ImageSourceCG.cpp:
2331         (WebCore::ImageSource::frameSizeAtIndex):
2332         (WebCore::ImageSource::size):
2333         (WebCore::ImageSource::frameBytesAtIndex):
2334         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2335         (WebCore::MediaPlayerPrivateGStreamerBase::paint):
2336         * platform/graphics/qt/ImageBufferQt.cpp:
2337         (WebCore::ImageBuffer::draw):
2338         * platform/graphics/wince/ImageBufferWinCE.cpp:
2339         (WebCore::ImageBuffer::draw):
2340         * platform/gtk/ClipboardGtk.cpp:
2341         (WebCore::Clipboard::createDragImage):
2342         * platform/gtk/DragImageGtk.cpp:
2343         (WebCore::createDragImageFromImage):
2344         * platform/mac/DragImageMac.mm:
2345         (WebCore::createDragImageFromImage):
2346         * platform/qt/ClipboardQt.cpp:
2347         (WebCore::Clipboard::createDragImage):
2348         * platform/qt/DragImageQt.cpp:
2349         (WebCore::createDragImageFromImage):
2350         * platform/win/ClipboardWin.cpp:
2351         (WebCore::Clipboard::createDragImage):
2352         * platform/win/DragImageCGWin.cpp:
2353         (WebCore::createDragImageFromImage):
2354         * platform/win/DragImageCairoWin.cpp:
2355         (WebCore::createDragImageFromImage):
2356         * rendering/RenderEmbeddedObject.cpp:
2357         (WebCore::RenderEmbeddedObject::paintSnapshotImage):
2358         * rendering/RenderImage.cpp:
2359         (WebCore::RenderImage::paintReplaced):
2360         (WebCore::RenderImage::paintIntoRect):
2361         * rendering/RenderSnapshottedPlugIn.cpp:
2362         (WebCore::RenderSnapshottedPlugIn::paintSnapshot):
2363
2364 2013-08-14  Sam Weinig  <sam@webkit.org>
2365
2366         Update binding test results.  Follow up fix for <https://webkit.org/b/119664>
2367
2368         * bindings/scripts/test/JS/JSTestCallback.cpp:
2369         (WebCore::JSTestCallback::JSTestCallback):
2370         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
2371         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
2372
2373 2013-08-14  Joseph Pecoraro  <pecoraro@apple.com>
2374
2375         <https://webkit.org/b/119810> [Mac] No AutoreleasePool leaks when dragging image out of WebView
2376
2377         Reviewed by Dan Bernstein.
2378
2379         This code was just running a block of code asynchronously using a
2380         pthread. Convert this to use a dispatch block, which does provide
2381         an autorelease pool so there are no leaks and ends up much simpler.
2382
2383         * platform/mac/FileSystemMac.mm:
2384         (WebCore::setMetadataURL):
2385
2386 2013-08-14  Tim Horton  <timothy_horton@apple.com>
2387
2388         Un-inline dataLog dumpers for IntSize and IntPoint
2389         https://bugs.webkit.org/show_bug.cgi?id=119697
2390
2391         Reviewed by Sam Weinig.
2392
2393         Avoid regressing build performance by moving IntSize::dump and IntPoint::dump elsewhere.
2394
2395         * CMakeLists.txt:
2396         * GNUmakefile.list.am:
2397         * Target.pri:
2398         * WebCore.vcxproj/WebCore.vcxproj:
2399         * WebCore.vcxproj/WebCore.vcxproj.filters:
2400         * WebCore.xcodeproj/project.pbxproj:
2401         * platform/graphics/IntPoint.cpp: Added.
2402         (WebCore::IntPoint::dump):
2403         * platform/graphics/IntPoint.h:
2404         * platform/graphics/IntSize.cpp: Added.
2405         (WebCore::IntSize::dump):
2406         * platform/graphics/IntSize.h:
2407
2408 2013-08-14  Chris Fleizach  <cfleizach@apple.com>
2409
2410         <https://webkit.org/b/119824> AX: WKView does not become first responder when the voiceover cursor lands on it
2411
2412         Reviewed by Tim Horton.
2413
2414         VoiceOver lands on Scroll views by default. It expects that the scroll view will be able to handle the focus calls. 
2415         We should forward scroll view focus requests to the web area to handle, which will trigger a becomeFirstResponder on WKView.
2416
2417         There's not a great way to test this unfortunately, since it requires having focus comes from outside the webview into the webview.
2418
2419         * accessibility/AccessibilityScrollView.cpp:
2420         (WebCore::AccessibilityScrollView::canSetFocusAttribute):
2421         (WebCore::AccessibilityScrollView::isFocused):
2422         (WebCore::AccessibilityScrollView::setFocused):
2423         * accessibility/AccessibilityScrollView.h:
2424
2425 2013-08-14  Hans Muller  <hmuller@adobe.com>
2426
2427         [CSS Exclusions] Minimal support for using an image to define a shape
2428         https://bugs.webkit.org/show_bug.cgi?id=116643
2429
2430         Reviewed by Alexandru Chiculita.
2431
2432         This is a first small step towards supporting CSS shapes defined by an
2433         image URL and a alpha channel threshold. To keep the patch as small as
2434         possible, there are many limitations and remaining work items. For
2435         example images are currently restricted to same-origin, although CORS
2436         should be supported. See https://bugs.webkit.org/show_bug.cgi?id=116348
2437         for the current list.
2438
2439         Test: fast/exclusions/shape-inside/shape-inside-image-001.html
2440         Test: fast/exclusions/shape-inside/shape-inside-image-002.html
2441
2442         * CMakeLists.txt:
2443         * GNUmakefile.list.am:
2444         * Target.pri:
2445         * WebCore.vcxproj/WebCore.vcxproj:
2446         * WebCore.xcodeproj/project.pbxproj:
2447         * rendering/RenderBlock.cpp:
2448         (WebCore::RenderBlock::imageChanged): When the image has finished loading, request a layout.
2449         * rendering/RenderBlock.h:
2450         * rendering/RenderObject.cpp:
2451         (WebCore::RenderObject::setStyle): Add notify clients for shape images.
2452         (WebCore::RenderObject::updateShapeImage):
2453         (WebCore::removeShapeImageClient):
2454         (WebCore::RenderObject::arenaDelete): Remove notify clients for shape images.
2455         * rendering/RenderObject.h:
2456         * rendering/shapes/RasterShape.cpp: Added. A Shape defined by thresholding an image's alpha channel.
2457         (WebCore::RasterShapeIntervals::bounds):
2458         (WebCore::RasterShapeIntervals::addInterval): Add a single run to the shape.
2459         (WebCore::alignedRect):
2460         (WebCore::RasterShapeIntervals::getIntervals): Return the shape's runs that fall within a horizonal box.
2461         (WebCore::RasterShape::marginIntervals): Internal representation of the shape with shape-margin factored in.  Currently only a stub.
2462         (WebCore::RasterShape::paddingIntervals): Internal representation of the shape with shape-padding factored in.  Currently only a stub.
2463         (WebCore::RasterShape::getExcludedIntervals):
2464         (WebCore::RasterShape::getIncludedIntervals):
2465         (WebCore::RasterShape::firstIncludedIntervalLogicalTop):
2466         * rendering/shapes/RasterShape.h:
2467         (WebCore::RasterShapeIntervals::RasterShapeIntervals): Internal run length encoded representation of a RasterShape.
2468         (WebCore::RasterShapeIntervals::isEmpty):
2469         (WebCore::RasterShape::RasterShape):
2470         * rendering/shapes/Shape.cpp:
2471         (WebCore::Shape::createShape): Support for creating a Shape based on a RasterShapeIntervals object.
2472         * rendering/shapes/Shape.h:
2473         * rendering/shapes/ShapeInfo.cpp:
2474         (WebCore::::computedShape): Added support for the Image ShapeValue type.
2475         * rendering/shapes/ShapeInsideInfo.cpp:
2476         (WebCore::ShapeInsideInfo::isEnabledFor): Added support for the Image ShapeValue type.
2477         * rendering/shapes/ShapeOutsideInfo.cpp:
2478         (WebCore::ShapeOutsideInfo::isEnabledFor): Added support for the Image ShapeValue type.
2479         * rendering/style/ShapeValue.h:
2480         (WebCore::ShapeValue::isImageValid): True if the shape's image is ready to be be processed.
2481
2482 2013-08-14  Alexandru Chiculita  <achicu@adobe.com>
2483
2484         [CSS Regions] RenderRegions should have a RenderLayer+Backing when they contain a Composited RenderLayer
2485         https://bugs.webkit.org/show_bug.cgi?id=117365
2486
2487         Reviewed by David Hyatt.
2488
2489         After the RenderFlowThread has a new layout we need to check if any of the children layers
2490         had been moved to a new render region. We are only checking for the first level of layers,
2491         as they are the only ones supported right now. Also, added code to make Regions require a layer
2492         based on the layers that fit in their clipping area.
2493
2494         Tests: fast/regions/layers/dynamic-layer-added-with-no-layout.html
2495                fast/regions/layers/dynamic-layer-removed-with-no-layout.html
2496                fast/regions/layers/float-region-promoted-to-layer.html
2497                fast/regions/layers/regions-promoted-to-layers-horizontal-bt.html
2498                fast/regions/layers/regions-promoted-to-layers-vertical-lr.html
2499                fast/regions/layers/regions-promoted-to-layers-vertical-rl.html
2500                fast/regions/layers/regions-promoted-to-layers.html
2501
2502         * rendering/FlowThreadController.cpp:
2503         (WebCore::FlowThreadController::updateRenderFlowThreadLayersIfNeeded): Iterate on all the flow threads and updateLayerToRegionMappings if needed. 
2504         * rendering/FlowThreadController.h:
2505         * rendering/RenderBlock.cpp:
2506         (WebCore::RenderBlock::updateLocalFloatingObjectsForPaintingContainer): Checks if the FloatingObject
2507         needs to be painted by the current block or not.
2508         (WebCore::RenderBlock::updateFloatingObjectsPaintingContainer): Helper function to lookup what is the right
2509         container that would need to paint a FloatingObject.
2510         (WebCore::RenderBlock::updateAllDescendantsFloatingObjectsPaintingContainer):
2511         * rendering/RenderBlock.h:
2512         * rendering/RenderBox.cpp:
2513         (WebCore::RenderBox::outermostBlockContainingFloatingObject): Looks up the ancestor RenderBlock that contains all
2514         the FloatingObjects of a float.
2515         (WebCore::RenderBox::removeFloatingOrPositionedChildFromBlockLists): Extracted the code for outermostBlockContainingFloatingObject
2516         into its own method.
2517         (WebCore::RenderBox::updatePaintingContainerForFloatingObject): Helper method to update the "m_shouldPaint" flag
2518         of all the FloatingObjects created for a floating RenderObject. Normally, that flag is maintained during layout,
2519         but we need to patch it for the floating RenderRegions after the layout is already finished.
2520         (WebCore::RenderBox::updateLayerIfNeeded): Overwrite of the RenderLayerModelObject::updateLayerIfNeeded that is also
2521         calling updatePaintingContainerForFloatingObject if a new layer was created or destroyed.
2522         * rendering/RenderBox.h:
2523         * rendering/RenderFlowThread.cpp:
2524         (WebCore::RenderFlowThread::layout): Added code to call updateLayerToRegionMappings when needed.
2525         (WebCore::RenderFlowThread::regionForCompositedLayer): Looks up the first RenderRegion to display a specific layer.
2526         It only cares about the top most point of the element and ignores transforms.
2527         (WebCore::RenderFlowThread::updateRegionForRenderLayer): Helper method to update the mapped region of a layer.
2528         (WebCore::RenderFlowThread::updateLayerToRegionMappings): Iterates all the first level layers of the flow thread
2529         and updates the region. Will return true if there was any change.
2530         * rendering/RenderFlowThread.h:
2531         * rendering/RenderLayer.cpp:
2532         (WebCore::RenderLayer::dirtyZOrderLists): When new layers are added or removed we need to update the layer map in the flow thread.
2533         (WebCore::RenderLayer::dirtyNormalFlowList):
2534         (WebCore::RenderLayer::shouldBeNormalFlowOnly): CSS Regions might become layers because they contain RenderLayers,
2535         but they should not become stacking contexts for that reason. This will prevent the RenderRegions from rendering
2536         in front of other layers.
2537         (WebCore::RenderLayer::shouldBeSelfPaintingLayer):
2538         * rendering/RenderLayerCompositor.cpp:
2539         (WebCore::RenderLayerCompositor::updateCompositingLayers): Call updateRenderFlowThreadLayersIfNeeded when there's a layer hierarchy update.
2540         (WebCore::RenderLayerCompositor::updateRenderFlowThreadLayersIfNeeded): Update the render flow thread layer maps when they are dirty.
2541         * rendering/RenderLayerCompositor.h:
2542         * rendering/RenderLayer.h:
2543         (WebCore::RenderLayer::isDirtyRenderFlowThread): Used to check if the RenderLayers had changed their order,
2544         so that we can update the list of layers associated with a region. In a following patch we will need to 
2545         rebuild the composited layers.
2546         * rendering/RenderLayerModelObject.cpp:
2547         (WebCore::RenderLayerModelObject::updateLayerIfNeeded): Adds or removes a layer when the "requiresLayer" changes
2548         after the styleDidChange already happened. This is needed for Regions as we only know if they still require a layer,
2549         only after the content of the flow thread is computed.
2550         * rendering/RenderLayerModelObject.h:
2551         * rendering/RenderRegion.cpp:
2552         (WebCore::RenderRegion::RenderRegion):
2553         (WebCore::RenderRegion::setRequiresLayerForCompositing):
2554         * rendering/RenderRegion.h:
2555         (WebCore::RenderRegion::requiresLayer):
2556         * rendering/RenderTreeAsText.cpp:
2557         (WebCore::writeRenderRegionList): Updated the output to print the fact that the layer has a layer.
2558
2559 2013-08-14  Bem Jones-Bey  <bjonesbe@adobe.com>
2560
2561         Finish making FloatingObject a real class with private members
2562         https://bugs.webkit.org/show_bug.cgi?id=119807
2563
2564         This is a port from Blink of
2565         http://src.chromium.org/viewvc/blink?view=revision&revision=155964
2566         Original patch by Eric Seidel.
2567
2568         From his comments on the Blink change:
2569
2570         Previously FloatingObject was in a half-done state where it had
2571         accessors for many members, but also many members were public.
2572
2573         This CL makes all members private and adds the necessary remaining
2574         accessors.
2575
2576         Reviewed by David Hyatt.
2577
2578         No new tests, no behavior change.
2579
2580         * rendering/RenderBlock.cpp:
2581         (WebCore::RenderBlock::deleteLineBoxTree):
2582         (WebCore::RenderBlock::addOverflowFromFloats):
2583         (WebCore::RenderBlock::repaintOverhangingFloats):
2584         (WebCore::RenderBlock::paintFloats):
2585         (WebCore::RenderBlock::selectionGaps):
2586         (WebCore::RenderBlock::insertFloatingObject):
2587         (WebCore::RenderBlock::removeFloatingObject):
2588         (WebCore::RenderBlock::removeFloatingObjectsBelow):
2589         (WebCore::RenderBlock::positionNewFloats):
2590         (WebCore::RenderBlock::clearFloats):
2591         (WebCore::RenderBlock::addOverhangingFloats):
2592         (WebCore::RenderBlock::addIntrudingFloats):
2593         (WebCore::RenderBlock::hitTestFloats):
2594         (WebCore::RenderBlock::adjustForBorderFit):
2595         * rendering/RenderBlock.h:
2596         (WebCore::RenderBlock::FloatingObject::paginationStrut):
2597         (WebCore::RenderBlock::FloatingObject::setPaginationStrut):
2598         (WebCore::RenderBlock::FloatingObject::setRenderer):
2599         (WebCore::RenderBlock::FloatingObject::originatingLine):
2600         (WebCore::RenderBlock::FloatingObject::setOriginatingLine):
2601         (WebCore::RenderBlock::FloatingObjectHashFunctions::hash):
2602         (WebCore::RenderBlock::FloatingObjectHashFunctions::equal):
2603         (WebCore::RenderBlock::FloatingObjectHashTranslator::equal):
2604         * rendering/RenderBlockLineLayout.cpp:
2605         (WebCore::RenderBlock::appendFloatingObjectToLastLine):
2606         (WebCore::RenderBlock::layoutRunsAndFloatsInRange):
2607         (WebCore::RenderBlock::linkToEndLineIfNeeded):
2608         (WebCore::RenderBlock::determineStartPosition):
2609         (WebCore::RenderBlock::positionNewFloatOnLine):
2610
2611 2013-08-14  Rob Buis  <rwlbuis@webkit.org>
2612
2613         Assertion failure in RenderObject::drawLineForBoxSide
2614         https://bugs.webkit.org/show_bug.cgi?id=108187
2615
2616         Reviewed by David Hyatt.
2617
2618         Don't draw the outline if the rectangle to draw is empty.
2619
2620         Test: fast/css/outline-negative.html
2621
2622         * rendering/RenderInline.cpp:
2623         (WebCore::RenderInline::paintOutlineForLine):
2624
2625 2013-08-13  Chris Fleizach  <cfleizach@apple.com>
2626
2627         AX: Headings not longer have an AXTitle if they have a link as the only child
2628         https://bugs.webkit.org/show_bug.cgi?id=119699
2629
2630         Reviewed by Anders Carlsson.
2631
2632         Normally, focusable content is not incuded when looking at the visible text of an element.
2633         One case where we need an exception is with headings, where there is usually link content inside the heading
2634         that we want to be used as the visible text.
2635
2636         Test: accessibility/heading-title-includes-links.html
2637
2638         * accessibility/AccessibilityNodeObject.cpp:
2639         (WebCore::AccessibilityNodeObject::visibleText):
2640         (WebCore::shouldUseAccessiblityObjectInnerText):
2641         (WebCore::AccessibilityNodeObject::title):
2642         * accessibility/AccessibilityNodeObject.h:
2643         * accessibility/AccessibilityObject.h:
2644         (WebCore::AccessibilityTextUnderElementMode::AccessibilityTextUnderElementMode):
2645         (WebCore::AccessibilityObject::textUnderElement):
2646         * accessibility/AccessibilityRenderObject.cpp:
2647         (WebCore::AccessibilityRenderObject::textUnderElement):
2648         * accessibility/AccessibilityRenderObject.h:
2649
2650 2013-08-14  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2651
2652         Move id attribute to parent Element interface
2653         https://bugs.webkit.org/show_bug.cgi?id=119706
2654
2655         Reviewed by Ryosuke Niwa.
2656
2657         Move id attribute from SVGElement / HTMLElement to their Element parent
2658         interface to match the latest DOM specification and avoid duplication:
2659         http://dom.spec.whatwg.org/#dom-element-id
2660
2661         There is no web-exposed behavior change because we haven't moved
2662         properties from instances to their prototype, as per the Web IDL
2663         specification (http://dev.w3.org/2006/webapi/WebIDL/#es-attributes).
2664
2665         Firefox already exposes the id property of Element's prototype.
2666
2667         This patch also drops the comment about returning the empty string when
2668         no id is present (introduced in http://trac.webkit.org/changeset/4417).
2669         This comment is redundant since the id property is already marked to
2670         "reflect" the id attribute. Returning the empty string when the
2671         attribute is not present is the normal behavior when reflecting:
2672         http://www.whatwg.org/specs/web-apps/current-work/multipage/common-dom-interfaces.html#reflect
2673
2674         No new test, no web-exposed behavior change.
2675
2676         * dom/Element.idl:
2677         * html/HTMLElement.idl:
2678         * svg/SVGElement.idl:
2679
2680 2013-08-14  Arpita Bahuguna  <a.bah@samsung.com>
2681
2682         createAttribute/setAttributeNode does not properly normalize case
2683         https://bugs.webkit.org/show_bug.cgi?id=90341
2684
2685         Reviewed by Darin Adler.
2686
2687         setAttributeNode() verifies for existing attributes in a case sensitive
2688         manner. Thus, it would add another attribute if specified in a case
2689         different from the existing one. Instead, like setAttribute(), it too
2690         should modify the existing attribute's value.
2691
2692         Tests: fast/dom/Element/setAttributeNode-case-insensitivity-xhtml.xhtml
2693                fast/dom/Element/setAttributeNode-case-insensitivity.html
2694
2695         * dom/Element.cpp:
2696         (WebCore::Element::setAttributeNode):
2697         Passing the second param (shouldIgnoreAttributeCase) to
2698         findAttributeIndexByNameForAttributeNode() method. We are now letting
2699         findAttributeIndexByNameForAttributeNode() handle the case-sensitive/insensitive
2700         checking.
2701
2702         (WebCore::ElementData::findAttributeIndexByNameForAttributeNode):
2703         * dom/Element.h:
2704         Added shouldIgnoreAttributeCase boolean param to the method. It passes
2705         this on to QualifiedName::matchesIgnoringCaseForLocalName() method.
2706
2707         * dom/QualifiedName.h:
2708         (WebCore::QualifiedName::matchesIgnoringCaseForLocalName):
2709         New method added for doing a case-insensitive comparison based on the
2710         shouldIgnoreCase param passed to this method.
2711
2712 2013-08-14  Gabor Abraham  <abrhm@inf.u-szeged.hu>
2713
2714         [CMake] Fix building with bison-3.0.
2715         https://bugs.webkit.org/show_bug.cgi?id=119788
2716
2717         Reviewed by Zoltan Herczeg.
2718
2719         No new tests, just build fix.
2720
2721         * CMakeLists.txt:
2722
2723 2013-08-14  Rob Buis  <rwlbuis@webkit.org>
2724
2725         ASSERTION FAILED: resultAnimationElement->m_animatedType in WebCore::SVGAnimateElement::calculateAnimatedValue
2726         https://bugs.webkit.org/show_bug.cgi?id=119748
2727
2728         Reviewed by Dirk Schulze.
2729
2730         Avoid animation when attributeType="CSS" is used on an animateTransform.
2731
2732         Tests: svg/animations/animateTransform-translate-attributetype-auto.html
2733                svg/animations/animateTransform-translate-invalid-attributetype.html
2734
2735         * svg/SVGAnimateTransformElement.cpp:
2736         (WebCore::SVGAnimateTransformElement::hasValidAttributeType):
2737
2738 2013-08-14  Antti Koivisto  <antti@apple.com>
2739
2740         Try to fix Qt build.
2741         
2742         Not reviewed.
2743
2744         * xml/parser/XMLDocumentParserQt.cpp:
2745         (WebCore::XMLDocumentParser::parseProcessingInstruction):
2746         (WebCore::XMLDocumentParser::parseCdata):
2747         (WebCore::XMLDocumentParser::parseComment):
2748
2749 2013-08-13  Antti Koivisto  <antti@apple.com>
2750
2751         Remove Node::attach() and ContainerNode::attach()
2752         https://bugs.webkit.org/show_bug.cgi?id=119698
2753
2754         Reviewed by Andreas Kling.
2755
2756         Currently attach() is a virtual function on Node. However only Elements have style and so a corresponding 
2757         independent render object. Attaching should be made Element level concept.
2758         
2759         This patch merges Node::attach() and ContainerNode::attach() to Element::attach(). Other related functions
2760         (detach(), reattach(), etc) move similarly.
2761         
2762         Next step here is to make attach non-virtual in common case and move it out from the DOM tree.
2763
2764         * dom/ContainerNode.cpp:
2765         (WebCore::attachChild):
2766         (WebCore::detachChild):
2767         
2768             Temporary helpers. Further refactoring should get rid of these.
2769
2770         (WebCore::ContainerNode::takeAllChildrenFrom):
2771         (WebCore::ContainerNode::removeBetween):
2772         (WebCore::updateTreeAfterInsertion):
2773         * dom/ContainerNode.h:
2774         * dom/Document.cpp:
2775         (WebCore::Document::attach):
2776         (WebCore::Document::detach):
2777         
2778             Copy the relevant parts of the code from base class attach/detach here. It is not much.
2779
2780         * dom/Document.h:
2781         * dom/Element.cpp:
2782         (WebCore::Element::~Element):
2783         
2784             Node destructor no longer detaches.
2785
2786         (WebCore::Element::attachChildren):
2787         (WebCore::Element::attach):
2788         
2789             Combine Node::attach(), ContainerNode::attach() and Element::attach().
2790
2791         (WebCore::Element::detachChildren):
2792         (WebCore::Element::detach):
2793         
2794             Combine Node::detach(), ContainerNode::detach() and Element::detach().
2795
2796         (WebCore::Element::reattach):
2797         (WebCore::Element::reattachIfAttached):
2798         (WebCore::Element::lazyReattach):
2799         (WebCore::Element::lazyAttach):
2800         
2801             This stuff moves from ContainerNode/Node.
2802
2803         * dom/Element.h:
2804         (WebCore::Element::AttachContext::AttachContext):
2805         * dom/ElementShadow.cpp:
2806         (WebCore::ElementShadow::removeShadowRoot):
2807         (WebCore::ElementShadow::attach):
2808         (WebCore::ElementShadow::detach):
2809         * dom/ElementShadow.h:
2810         * dom/Node.cpp:
2811         (WebCore::Node::~Node):
2812         
2813             Assert that we are not attached at this point.
2814
2815         (WebCore::Node::markAncestorsWithChildNeedsStyleRecalc):
2816         * dom/Node.h:
2817         (WebCore::Node::setAttached):
2818         (WebCore::Node::setStyleChange):
2819         
2820             Make available.
2821
2822         * dom/NodeRenderingContext.cpp:
2823         (WebCore::NodeRenderingContext::NodeRenderingContext):
2824         * dom/NodeRenderingContext.h:
2825         * dom/ShadowRoot.cpp:
2826         (WebCore::ShadowRoot::attach):
2827         (WebCore::ShadowRoot::detach):
2828         * dom/ShadowRoot.h:
2829         * dom/Text.cpp:
2830         (WebCore::Text::~Text):
2831         
2832             Node destructor no longer detaches. Add destructor.
2833
2834         (WebCore::Text::createTextRenderersForSiblingsAfterAttachIfNeeded):
2835         
2836             Factor the code that updates sibling text renderers after attach into a function.
2837
2838         (WebCore::Text::attachText):
2839         (WebCore::Text::detachText):
2840         
2841             Text::attachText/detachText replace virtual Node::attach/detach. They do the part of the work text nodes actually ended up doing.
2842
2843         (WebCore::Text::updateTextRenderer):
2844         * dom/Text.h:
2845         * html/HTMLViewSourceDocument.cpp:
2846         (WebCore::HTMLViewSourceDocument::addText):
2847         * html/PluginDocument.cpp:
2848         (WebCore::PluginDocument::detach):
2849         * html/PluginDocument.h:
2850         * html/parser/HTMLConstructionSite.cpp:
2851         (WebCore::executeTask):
2852         * html/shadow/ContentDistributor.cpp:
2853         (WebCore::ContentDistributor::invalidateDistribution):
2854         * html/shadow/InsertionPoint.cpp:
2855         (WebCore::InsertionPoint::attach):
2856         (WebCore::InsertionPoint::detach):
2857         * loader/PlaceholderDocument.cpp:
2858         (WebCore::PlaceholderDocument::attach):
2859         * loader/PlaceholderDocument.h:
2860         * style/StyleResolveTree.cpp:
2861         (WebCore::Style::resolveLocal):
2862         (WebCore::Style::updateTextStyle):
2863         * xml/parser/XMLDocumentParser.cpp:
2864         (WebCore::XMLDocumentParser::exitText):
2865         * xml/parser/XMLDocumentParserLibxml2.cpp:
2866         (WebCore::XMLDocumentParser::processingInstruction):
2867         (WebCore::XMLDocumentParser::cdataBlock):
2868         (WebCore::XMLDocumentParser::comment):
2869         
2870             No need to attach non-rendered nodes.
2871
2872 2013-08-14  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2873
2874         ASSERT(m_frame->view() == this) fails
2875         https://bugs.webkit.org/show_bug.cgi?id=119015
2876
2877         Reviewed by Simon Fraser.
2878
2879         Introduced the method fixedLayoutSizeChanged and made it chack if the view
2880         is attached to the frame before issuing contentsResized.
2881
2882         * page/FrameView.cpp:
2883         (WebCore::FrameView::fixedLayoutSizeChanged):
2884         * page/FrameView.h:
2885         * platform/ScrollView.cpp:
2886         (WebCore::ScrollView::setFixedLayoutSize):
2887         (WebCore::ScrollView::setUseFixedLayout):
2888         (WebCore::ScrollView::fixedLayoutSizeChanged):
2889         * platform/ScrollView.h:
2890
2891 2013-08-13  Sergio Villar Senin  <svillar@igalia.com>
2892
2893         [CSS Grid Layout] Align our grid-line handling with the updated specification
2894         https://bugs.webkit.org/show_bug.cgi?id=113546
2895
2896         Reviewed by Andreas Kling.
2897
2898         From Blink r148091 by <jchaffraix@chromium.org>
2899
2900         This change makes us match the updated specification by making
2901         grid line numbers to always resolve against the
2902         grid-{column|row}-start edge (the previous code would resolve
2903         grid-{column|row}-end grid lines against the grid-{column|row}-end
2904         edge).
2905
2906         To keep feature parity, negative numbers resolve against the
2907         grid-{column|row}-end edge of the 'explicit grid'.
2908
2909         Test: fast/css-grid-layout/grid-item-negative-integer-explicit-grid-resolution.html
2910
2911         * rendering/RenderGrid.cpp:
2912         (WebCore::estimatedGridSizeForPosition):
2913         (WebCore::RenderGrid::explicitGridColumnCount): New utility function.
2914         (WebCore::RenderGrid::explicitGridRowCount): Ditto.
2915         (WebCore::RenderGrid::maximumIndexInDirection): Use explicitGridXXXCount().
2916         (WebCore::RenderGrid::resolveGridPositionsFromStyle): Check that row-end > row-start.
2917         (WebCore::RenderGrid::resolveGridPositionFromStyle): Clamp negative values to the first line.
2918         * rendering/RenderGrid.h:
2919         * rendering/style/GridPosition.h:
2920
2921 2013-08-14  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2922
2923         Add toSVGTextPathElement(), and use it
2924         https://bugs.webkit.org/show_bug.cgi?id=119783
2925
2926         Reviewed by Ryosuke Niwa.
2927
2928         As a step to clean-up static_cast<SVGXXX>, static_cast<SVGTextPathElement*> can
2929         be changed with toSVGTextPathElement().
2930
2931         * rendering/svg/RenderSVGTextPath.cpp:
2932         (WebCore::RenderSVGTextPath::layoutPath):
2933         (WebCore::RenderSVGTextPath::startOffset):
2934         (WebCore::RenderSVGTextPath::exactAlignment):
2935         (WebCore::RenderSVGTextPath::stretchMethod):
2936         * svg/SVGTextPathElement.h:
2937         (WebCore::toSVGTextPathElement):
2938
2939 2013-08-14  Jinwoo Jeong  <jw00.jeong@samsung.com>
2940
2941         FEComponentTransfer could be faster.
2942         https://bugs.webkit.org/show_bug.cgi?id=119671
2943
2944         Reviewed by Christophe Dumez.
2945
2946         Use direct writing to target data instead of calling Uint8ClampedArray::set() function.
2947         This change reduces at least 80% time in the loop of that function.
2948
2949         The Uint8ClampedArray::set() function has index checking code, value checking code and value casting code.
2950         But the index is managed by for loop condition, the value is generated by transferFunction.
2951         And the value is already defined as unsigned char.
2952         Thus all works in Uint8ClampedArray::set() function is redundant.
2953         Removing the call to Uint8ClampedArray::set() function does not reduce stability but improves performance.
2954
2955         * platform/graphics/filters/FEComponentTransfer.cpp:
2956         (WebCore::FEComponentTransfer::platformApplySoftware):
2957
2958 2013-08-13  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2959
2960         The length of scheme is at least five characters even when the scheme has 'web+' prefix
2961         https://bugs.webkit.org/show_bug.cgi?id=119779
2962
2963         Reviewed by Ryosuke Niwa.
2964
2965         The content-scheme handler specification requires that it is SecurityError if the length of
2966         scheme isn't five characters at least, including 'web+' prefix. Thus, we need to check the length
2967         of scheme on the 'web+' scheme.
2968
2969         Spec: http://www.whatwg.org/specs/web-apps/current-work/#custom-handlers
2970
2971         No new tests, just modify existing tests.
2972
2973         * Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
2974         (WebCore::verifyProtocolHandlerScheme):
2975
2976 2013-08-13  Filip Pizlo  <fpizlo@apple.com>
2977
2978         Foo::s_info should be Foo::info(), so that you can change how the s_info is actually linked
2979         https://bugs.webkit.org/show_bug.cgi?id=119770
2980
2981         Reviewed by Mark Hahnenberg.
2982
2983         No new tests because no new behavior.
2984
2985         * bindings/js/IDBBindingUtilities.cpp:
2986         (WebCore::createIDBKeyFromValue):
2987         * bindings/js/JSAttrCustom.cpp:
2988         (WebCore::JSAttr::visitChildren):
2989         * bindings/js/JSAudioTrackCustom.cpp:
2990         (WebCore::JSAudioTrack::visitChildren):
2991         * bindings/js/JSAudioTrackListCustom.cpp:
2992         (WebCore::JSAudioTrackList::visitChildren):
2993         * bindings/js/JSBlobCustom.cpp:
2994         (WebCore::JSBlobConstructor::constructJSBlob):
2995         * bindings/js/JSCSSRuleCustom.cpp:
2996         (WebCore::JSCSSRule::visitChildren):
2997         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2998         (WebCore::JSCSSStyleDeclaration::visitChildren):
2999         (WebCore::JSCSSStyleDeclaration::getOwnPropertyNames):
3000         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
3001         (WebCore::toHTMLCanvasStyle):
3002         * bindings/js/JSCanvasRenderingContextCustom.cpp:
3003         (WebCore::JSCanvasRenderingContext::visitChildren):
3004         * bindings/js/JSDOMBinding.cpp:
3005         (WebCore::valueToDate):
3006         * bindings/js/JSDOMBinding.h:
3007         (WebCore::DOMConstructorObject::createStructure):
3008         (WebCore::getDOMStructure):
3009         (WebCore::toRefPtrNativeArray):
3010         (WebCore::getStaticValueSlotEntryWithoutCaching):
3011         * bindings/js/JSDOMFormDataCustom.cpp:
3012         (WebCore::toHTMLFormElement):
3013         (WebCore::JSDOMFormData::append):
3014         * bindings/js/JSDOMGlobalObject.cpp:
3015         (WebCore::JSDOMGlobalObject::finishCreation):
3016         (WebCore::JSDOMGlobalObject::scriptExecutionContext):
3017         (WebCore::JSDOMGlobalObject::visitChildren):
3018         * bindings/js/JSDOMGlobalObject.h:
3019         (WebCore::JSDOMGlobalObject::info):
3020         (WebCore::JSDOMGlobalObject::createStructure):
3021         (WebCore::getDOMConstructor):
3022         * bindings/js/JSDOMStringListCustom.cpp:
3023         (WebCore::toDOMStringList):
3024         * bindings/js/JSDOMWindowBase.cpp:
3025         (WebCore::JSDOMWindowBase::finishCreation):
3026         (WebCore::toJSDOMWindow):
3027         * bindings/js/JSDOMWindowBase.h:
3028         (WebCore::JSDOMWindowBase::createStructure):
3029         * bindings/js/JSDOMWindowCustom.cpp:
3030         (WebCore::JSDOMWindow::visitChildren):
3031         (WebCore::JSDOMWindow::getOwnPropertySlot):
3032         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
3033         (WebCore::toDOMWindow):
3034         * bindings/js/JSDOMWindowShell.cpp:
3035         (WebCore::JSDOMWindowShell::finishCreation):
3036         * bindings/js/JSDOMWindowShell.h:
3037         (WebCore::JSDOMWindowShell::createStructure):
3038         * bindings/js/JSEventTargetCustom.cpp:
3039         (WebCore::toEventTarget):
3040         * bindings/js/JSHistoryCustom.cpp:
3041         (WebCore::JSHistory::getOwnPropertySlotDelegate):
3042         (WebCore::JSHistory::getOwnPropertyDescriptorDelegate):
3043         * bindings/js/JSImageConstructor.cpp:
3044         (WebCore::JSImageConstructor::finishCreation):
3045         * bindings/js/JSImageConstructor.h:
3046         (WebCore::JSImageConstructor::createStructure):
3047         * bindings/js/JSInjectedScriptHostCustom.cpp:
3048         (WebCore::JSInjectedScriptHost::isHTMLAllCollection):
3049         (WebCore::JSInjectedScriptHost::type):
3050         (WebCore::JSInjectedScriptHost::functionDetails):
3051         * bindings/js/JSInspectorFrontendHostCustom.cpp:
3052         (WebCore::populateContextMenuItems):
3053         * bindings/js/JSLocationCustom.cpp:
3054         (WebCore::JSLocation::getOwnPropertySlotDelegate):
3055         (WebCore::JSLocation::getOwnPropertyDescriptorDelegate):
3056         (WebCore::JSLocation::putDelegate):
3057         * bindings/js/JSMessageChannelCustom.cpp:
3058         (WebCore::JSMessageChannel::visitChildren):
3059         * bindings/js/JSMessagePortCustom.cpp:
3060         (WebCore::JSMessagePort::visitChildren):
3061         * bindings/js/JSNodeCustom.cpp:
3062         (WebCore::JSNode::pushEventHandlerScope):
3063         (WebCore::JSNode::visitChildren):
3064         * bindings/js/JSNodeFilterCustom.cpp:
3065         (WebCore::JSNodeFilter::visitChildren):
3066         (WebCore::toNodeFilter):
3067         * bindings/js/JSNodeIteratorCustom.cpp:
3068         (WebCore::JSNodeIterator::visitChildren):
3069         * bindings/js/JSPluginElementFunctions.h:
3070         (WebCore::pluginElementCustomGetOwnPropertySlot):
3071         (WebCore::pluginElementCustomGetOwnPropertyDescriptor):
3072         * bindings/js/JSSVGElementInstanceCustom.cpp:
3073         (WebCore::JSSVGElementInstance::visitChildren):
3074         * bindings/js/JSSharedWorkerCustom.cpp:
3075         (WebCore::JSSharedWorker::visitChildren):
3076         * bindings/js/JSStyleSheetCustom.cpp:
3077         (WebCore::JSStyleSheet::visitChildren):
3078         * bindings/js/JSTextTrackCueCustom.cpp:
3079         (WebCore::JSTextTrackCue::visitChildren):
3080         * bindings/js/JSTextTrackCustom.cpp:
3081         (WebCore::JSTextTrack::visitChildren):
3082         * bindings/js/JSTextTrackListCustom.cpp:
3083         (WebCore::JSTextTrackList::visitChildren):
3084         * bindings/js/JSTrackCustom.cpp:
3085         (WebCore::toTrack):
3086         * bindings/js/JSTreeWalkerCustom.cpp:
3087         (WebCore::JSTreeWalker::visitChildren):
3088         * bindings/js/JSVideoTrackCustom.cpp:
3089         (WebCore::JSVideoTrack::visitChildren):
3090         * bindings/js/JSVideoTrackListCustom.cpp:
3091         (WebCore::JSVideoTrackList::visitChildren):
3092         * bindings/js/JSWebGLRenderingContextCustom.cpp:
3093         (WebCore::JSWebGLRenderingContext::visitChildren):
3094         (WebCore::JSWebGLRenderingContext::getAttachedShaders):
3095         (WebCore::JSWebGLRenderingContext::getProgramParameter):
3096         (WebCore::JSWebGLRenderingContext::getShaderParameter):
3097         (WebCore::JSWebGLRenderingContext::getUniform):
3098         (WebCore::dataFunctionf):
3099         (WebCore::dataFunctioni):
3100         (WebCore::dataFunctionMatrix):
3101         * bindings/js/JSWorkerGlobalScopeBase.cpp:
3102         (WebCore::JSWorkerGlobalScopeBase::finishCreation):
3103         (WebCore::toJSDedicatedWorkerGlobalScope):
3104         (WebCore::toJSSharedWorkerGlobalScope):
3105         * bindings/js/JSWorkerGlobalScopeBase.h:
3106         (WebCore::JSWorkerGlobalScopeBase::createStructure):
3107         * bindings/js/JSWorkerGlobalScopeCustom.cpp:
3108         (WebCore::JSWorkerGlobalScope::visitChildren):
3109         * bindings/js/JSXMLHttpRequestCustom.cpp:
3110         (WebCore::JSXMLHttpRequest::visitChildren):
3111         (WebCore::JSXMLHttpRequest::send):
3112         * bindings/js/JSXPathResultCustom.cpp:
3113         (WebCore::JSXPathResult::visitChildren):
3114         * bindings/js/ScriptDebugServer.cpp:
3115         (WebCore::ScriptDebugServer::dispatchDidPause):
3116         * bindings/js/ScriptState.cpp:
3117         (WebCore::domWindowFromScriptState):
3118         (WebCore::scriptExecutionContextFromScriptState):
3119         * bindings/js/SerializedScriptValue.cpp:
3120         (WebCore::CloneSerializer::isArray):
3121         (WebCore::CloneSerializer::dumpArrayBufferView):
3122         (WebCore::CloneSerializer::dumpIfTerminal):
3123         (WebCore::CloneSerializer::serialize):
3124         (WebCore::CloneDeserializer::CloneDeserializer):
3125         (WebCore::CloneDeserializer::readArrayBufferView):
3126         * bindings/objc/DOM.mm:
3127         (+[DOMNode _nodeFromJSWrapper:]):
3128         * bindings/objc/DOMUtility.mm:
3129         (JSC::createDOMWrapper):
3130         * bindings/objc/WebScriptObject.mm:
3131         (+[WebScriptObject _convertValueToObjcValue:JSC::originRootObject:rootObject:]):
3132         * bindings/scripts/CodeGeneratorJS.pm:
3133         (GenerateGetOwnPropertySlotBody):
3134         (GenerateGetOwnPropertyDescriptorBody):
3135         (GenerateHeader):
3136         (GenerateParametersCheckExpression):
3137         (GenerateImplementation):
3138         (GenerateParametersCheck):
3139         (GenerateConstructorDeclaration):
3140         (GenerateConstructorHelperMethods):
3141         * bindings/scripts/test/JS/JSFloat64Array.cpp:
3142         (WebCore::JSFloat64ArrayConstructor::finishCreation):
3143         (WebCore::JSFloat64Array::finishCreation):
3144         (WebCore::JSFloat64Array::getOwnPropertySlot):
3145         (WebCore::JSFloat64Array::getOwnPropertyDescriptor):
3146         (WebCore::JSFloat64Array::getOwnPropertySlotByIndex):
3147         (WebCore::JSFloat64Array::put):
3148         (WebCore::JSFloat64Array::putByIndex):
3149         (WebCore::JSFloat64Array::getOwnPropertyNames):
3150         (WebCore::jsFloat64ArrayPrototypeFunctionFoo):
3151         (WebCore::jsFloat64ArrayPrototypeFunctionSet):
3152         (WebCore::JSFloat64Array::getByIndex):
3153         (WebCore::toFloat64Array):
3154         * bindings/scripts/test/JS/JSFloat64Array.h:
3155         (WebCore::JSFloat64Array::createStructure):
3156         (WebCore::JSFloat64ArrayPrototype::createStructure):
3157         (WebCore::JSFloat64ArrayConstructor::createStructure):
3158         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
3159         (WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
3160         (WebCore::JSTestActiveDOMObject::finishCreation):
3161         (WebCore::JSTestActiveDOMObject::getOwnPropertySlot):
3162         (WebCore::JSTestActiveDOMObject::getOwnPropertyDescriptor):
3163         (WebCore::jsTestActiveDOMObjectPrototypeFunctionExcitingFunction):
3164         (WebCore::jsTestActiveDOMObjectPrototypeFunctionPostMessage):
3165         (WebCore::toTestActiveDOMObject):
3166         * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
3167         (WebCore::JSTestActiveDOMObject::createStructure):
3168         (WebCore::JSTestActiveDOMObjectPrototype::createStructure):
3169         (WebCore::JSTestActiveDOMObjectConstructor::createStructure):
3170         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
3171         (WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
3172         (WebCore::JSTestCustomNamedGetter::finishCreation):
3173         (WebCore::JSTestCustomNamedGetter::getOwnPropertySlot):
3174         (WebCore::JSTestCustomNamedGetter::getOwnPropertyDescriptor):
3175         (WebCore::JSTestCustomNamedGetter::getOwnPropertySlotByIndex):
3176         (WebCore::jsTestCustomNamedGetterPrototypeFunctionAnotherFunction):
3177         (WebCore::toTestCustomNamedGetter):
3178         * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
3179         (WebCore::JSTestCustomNamedGetter::createStructure):
3180         (WebCore::JSTestCustomNamedGetterPrototype::createStructure):
3181         (WebCore::JSTestCustomNamedGetterConstructor::createStructure):
3182         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
3183         (WebCore::JSTestEventConstructorConstructor::finishCreation):
3184         (WebCore::JSTestEventConstructor::finishCreation):
3185         (WebCore::JSTestEventConstructor::getOwnPropertySlot):
3186         (WebCore::JSTestEventConstructor::getOwnPropertyDescriptor):
3187         (WebCore::toTestEventConstructor):
3188         * bindings/scripts/test/JS/JSTestEventConstructor.h:
3189         (WebCore::JSTestEventConstructor::createStructure):
3190         (WebCore::JSTestEventConstructorPrototype::createStructure):
3191         (WebCore::JSTestEventConstructorConstructor::createStructure):
3192         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
3193         (WebCore::JSTestEventTargetConstructor::finishCreation):
3194         (WebCore::JSTestEventTarget::finishCreation):
3195         (WebCore::JSTestEventTarget::getOwnPropertySlot):
3196         (WebCore::JSTestEventTarget::getOwnPropertyDescriptor):
3197         (WebCore::JSTestEventTarget::getOwnPropertySlotByIndex):
3198         (WebCore::JSTestEventTarget::getOwnPropertyNames):
3199         (WebCore::jsTestEventTargetPrototypeFunctionItem):
3200         (WebCore::jsTestEventTargetPrototypeFunctionAddEventListener):
3201         (WebCore::jsTestEventTargetPrototypeFunctionRemoveEventListener):
3202         (WebCore::jsTestEventTargetPrototypeFunctionDispatchEvent):
3203         (WebCore::JSTestEventTarget::visitChildren):
3204         (WebCore::JSTestEventTarget::indexGetter):
3205         (WebCore::toTestEventTarget):
3206         * bindings/scripts/test/JS/JSTestEventTarget.h:
3207         (WebCore::JSTestEventTarget::createStructure):
3208         (WebCore::JSTestEventTargetPrototype::createStructure):
3209         (WebCore::JSTestEventTargetConstructor::createStructure):
3210         * bindings/scripts/test/JS/JSTestException.cpp:
3211         (WebCore::JSTestExceptionConstructor::finishCreation):
3212         (WebCore::JSTestException::finishCreation):
3213         (WebCore::JSTestException::getOwnPropertySlot):
3214         (WebCore::JSTestException::getOwnPropertyDescriptor):
3215         (WebCore::toTestException):
3216         * bindings/scripts/test/JS/JSTestException.h:
3217         (WebCore::JSTestException::createStructure):
3218         (WebCore::JSTestExceptionPrototype::createStructure):
3219         (WebCore::JSTestExceptionConstructor::createStructure):
3220         * bindings/scripts/test/JS/JSTestInterface.cpp:
3221         (WebCore::JSTestInterfaceConstructor::finishCreation):
3222         (WebCore::JSTestInterface::finishCreation):
3223         (WebCore::JSTestInterface::getOwnPropertySlot):
3224         (WebCore::JSTestInterface::getOwnPropertyDescriptor):
3225         (WebCore::JSTestInterface::put):
3226         (WebCore::JSTestInterface::putByIndex):
3227         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod1):
3228         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
3229         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod3):
3230         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1):
3231         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
3232         (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):
3233         (WebCore::toTestInterface):
3234         * bindings/scripts/test/JS/JSTestInterface.h:
3235         (WebCore::JSTestInterface::createStructure):
3236         (WebCore::JSTestInterfacePrototype::createStructure):
3237         (WebCore::JSTestInterfaceConstructor::createStructure):
3238         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
3239         (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
3240         (WebCore::JSTestMediaQueryListListener::finishCreation):
3241         (WebCore::JSTestMediaQueryListListener::getOwnPropertySlot):
3242         (WebCore::JSTestMediaQueryListListener::getOwnPropertyDescriptor):
3243         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
3244         (WebCore::toTestMediaQueryListListener):
3245         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
3246         (WebCore::JSTestMediaQueryListListener::createStructure):
3247         (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
3248         (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
3249         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
3250         (WebCore::JSTestNamedConstructorConstructor::finishCreation):
3251         (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
3252         (WebCore::JSTestNamedConstructor::finishCreation):
3253         (WebCore::JSTestNamedConstructor::getOwnPropertySlot):
3254         (WebCore::JSTestNamedConstructor::getOwnPropertyDescriptor):
3255         (WebCore::toTestNamedConstructor):
3256         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
3257         (WebCore::JSTestNamedConstructor::createStructure):
3258         (WebCore::JSTestNamedConstructorPrototype::createStructure):
3259         (WebCore::JSTestNamedConstructorConstructor::createStructure):
3260         (WebCore::JSTestNamedConstructorNamedConstructor::createStructure):
3261         * bindings/scripts/test/JS/JSTestNode.cpp:
3262         (WebCore::JSTestNodeConstructor::finishCreation):
3263         (WebCore::JSTestNode::finishCreation):
3264         (WebCore::JSTestNode::getOwnPropertySlot):
3265         (WebCore::JSTestNode::getOwnPropertyDescriptor):
3266         (WebCore::JSTestNode::visitChildren):
3267         * bindings/scripts/test/JS/JSTestNode.h:
3268         (WebCore::JSTestNode::createStructure):
3269         (WebCore::JSTestNodePrototype::createStructure):
3270         (WebCore::JSTestNodeConstructor::createStructure):
3271         * bindings/scripts/test/JS/JSTestObj.cpp:
3272         (WebCore::JSTestObjConstructor::finishCreation):
3273         (WebCore::JSTestObj::finishCreation):
3274         (WebCore::JSTestObj::getOwnPropertySlot):
3275         (WebCore::JSTestObj::getOwnPropertyDescriptor):
3276         (WebCore::JSTestObj::put):
3277         (WebCore::jsTestObjPrototypeFunctionVoidMethod):
3278         (WebCore::jsTestObjPrototypeFunctionVoidMethodWithArgs):
3279         (WebCore::jsTestObjPrototypeFunctionByteMethod):
3280         (WebCore::jsTestObjPrototypeFunctionByteMethodWithArgs):
3281         (WebCore::jsTestObjPrototypeFunctionOctetMethod):
3282         (WebCore::jsTestObjPrototypeFunctionOctetMethodWithArgs):
3283         (WebCore::jsTestObjPrototypeFunctionLongMethod):
3284         (WebCore::jsTestObjPrototypeFunctionLongMethodWithArgs):
3285         (WebCore::jsTestObjPrototypeFunctionObjMethod):
3286         (WebCore::jsTestObjPrototypeFunctionObjMethodWithArgs):
3287         (WebCore::jsTestObjPrototypeFunctionMethodWithSequenceArg):
3288         (WebCore::jsTestObjPrototypeFunctionMethodReturningSequence):
3289         (WebCore::jsTestObjPrototypeFunctionMethodWithEnumArg):
3290         (WebCore::jsTestObjPrototypeFunctionMethodThatRequiresAllArgsAndThrows):
3291         (WebCore::jsTestObjPrototypeFunctionSerializedValue):
3292         (WebCore::jsTestObjPrototypeFunctionOptionsObject):
3293         (WebCore::jsTestObjPrototypeFunctionMethodWithException):
3294         (WebCore::jsTestObjPrototypeFunctionCustomMethod):
3295         (WebCore::jsTestObjPrototypeFunctionCustomMethodWithArgs):
3296         (WebCore::jsTestObjPrototypeFunctionAddEventListener):
3297         (WebCore::jsTestObjPrototypeFunctionRemoveEventListener):
3298         (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoid):
3299         (WebCore::jsTestObjPrototypeFunctionWithScriptStateObj):
3300         (WebCore::jsTestObjPrototypeFunctionWithScriptStateVoidException):
3301         (WebCore::jsTestObjPrototypeFunctionWithScriptStateObjException):
3302         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContext):
3303         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptState):
3304         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateObjException):
3305         (WebCore::jsTestObjPrototypeFunctionWithScriptExecutionContextAndScriptStateWithSpaces):
3306         (WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
3307         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalArg):
3308         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndOptionalArg):
3309         (WebCore::jsTestObjPrototypeFunctionMethodWithNonOptionalArgAndTwoOptionalArgs):
3310         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalString):
3311         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsUndefined):
3312         (WebCore::jsTestObjPrototypeFunctionMethodWithOptionalStringIsNullString):
3313         (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackArg):
3314         (WebCore::jsTestObjPrototypeFunctionMethodWithNonCallbackArgAndCallbackArg):
3315         (WebCore::jsTestObjPrototypeFunctionMethodWithCallbackAndOptionalArg):
3316         (WebCore::jsTestObjPrototypeFunctionConditionalMethod1):
3317         (WebCore::jsTestObjPrototypeFunctionConditionalMethod2):
3318         (WebCore::jsTestObjPrototypeFunctionConditionalMethod3):
3319         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod1):
3320         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod2):
3321         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod3):
3322         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod4):
3323         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod5):
3324         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod6):
3325         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod7):
3326         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod8):
3327         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod9):
3328         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod10):
3329         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod11):
3330         (WebCore::jsTestObjPrototypeFunctionOverloadedMethod):
3331         (WebCore::jsTestObjPrototypeFunctionClassMethodWithClamp):
3332         (WebCore::jsTestObjPrototypeFunctionMethodWithUnsignedLongSequence):
3333         (WebCore::jsTestObjPrototypeFunctionStringArrayFunction):
3334         (WebCore::jsTestObjPrototypeFunctionDomStringListFunction):
3335         (WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
3336         (WebCore::jsTestObjPrototypeFunctionConvert1):
3337         (WebCore::jsTestObjPrototypeFunctionConvert2):
3338         (WebCore::jsTestObjPrototypeFunctionConvert4):
3339         (WebCore::jsTestObjPrototypeFunctionConvert5):
3340         (WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
3341         (WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
3342         (WebCore::jsTestObjPrototypeFunctionOrange):
3343         (WebCore::jsTestObjPrototypeFunctionStrictFunction):
3344         (WebCore::jsTestObjPrototypeFunctionVariadicStringMethod):
3345         (WebCore::jsTestObjPrototypeFunctionVariadicDoubleMethod):
3346         (WebCore::jsTestObjPrototypeFunctionVariadicNodeMethod):
3347         (WebCore::JSTestObj::visitChildren):
3348         (WebCore::toTestObj):
3349         * bindings/scripts/test/JS/JSTestObj.h:
3350         (WebCore::JSTestObj::createStructure):
3351         (WebCore::JSTestObjPrototype::createStructure):
3352         (WebCore::JSTestObjConstructor::createStructure):
3353         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
3354         (WebCore::JSTestOverloadedConstructorsConstructor::constructJSTestOverloadedConstructors):
3355         (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
3356         (WebCore::JSTestOverloadedConstructors::finishCreation):
3357         (WebCore::JSTestOverloadedConstructors::getOwnPropertySlot):
3358         (WebCore::JSTestOverloadedConstructors::getOwnPropertyDescriptor):
3359         (WebCore::toTestOverloadedConstructors):
3360         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
3361         (WebCore::JSTestOverloadedConstructors::createStructure):
3362         (WebCore::JSTestOverloadedConstructorsPrototype::createStructure):
3363         (WebCore::JSTestOverloadedConstructorsConstructor::createStructure):
3364         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
3365         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
3366         (WebCore::JSTestSerializedScriptValueInterface::finishCreation):
3367         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertySlot):
3368         (WebCore::JSTestSerializedScriptValueInterface::getOwnPropertyDescriptor):
3369         (WebCore::JSTestSerializedScriptValueInterface::put):
3370         (WebCore::JSTestSerializedScriptValueInterface::visitChildren):
3371         (WebCore::toTestSerializedScriptValueInterface):
3372         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
3373         (WebCore::JSTestSerializedScriptValueInterface::createStructure):
3374         (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
3375         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
3376         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
3377         (WebCore::JSTestTypedefsConstructor::finishCreation):
3378         (WebCore::JSTestTypedefs::finishCreation):
3379         (WebCore::JSTestTypedefs::getOwnPropertySlot):
3380         (WebCore::JSTestTypedefs::getOwnPropertyDescriptor):
3381         (WebCore::JSTestTypedefs::put):
3382         (WebCore::jsTestTypedefsPrototypeFunctionFunc):
3383         (WebCore::jsTestTypedefsPrototypeFunctionSetShadow):
3384         (WebCore::jsTestTypedefsPrototypeFunctionMethodWithSequenceArg):
3385         (WebCore::jsTestTypedefsPrototypeFunctionNullableArrayArg):
3386         (WebCore::jsTestTypedefsPrototypeFunctionFuncWithClamp):
3387         (WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):
3388         (WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction):
3389         (WebCore::jsTestTypedefsPrototypeFunctionStringArrayFunction2):
3390         (WebCore::jsTestTypedefsPrototypeFunctionMethodWithException):
3391         (WebCore::toTestTypedefs):
3392         * bindings/scripts/test/JS/JSTestTypedefs.h:
3393         (WebCore::JSTestTypedefs::createStructure):
3394         (WebCore::JSTestTypedefsPrototype::createStructure):
3395         (WebCore::JSTestTypedefsConstructor::createStructure):
3396         * bridge/c/CRuntimeObject.cpp:
3397         (JSC::Bindings::CRuntimeObject::finishCreation):
3398         * bridge/c/CRuntimeObject.h:
3399         (JSC::Bindings::CRuntimeObject::createStructure):
3400         * bridge/c/c_instance.cpp:
3401         (JSC::Bindings::CRuntimeMethod::createStructure):
3402         (JSC::Bindings::CRuntimeMethod::finishCreation):
3403         (JSC::Bindings::CInstance::invokeMethod):
3404         * bridge/c/c_utility.cpp:
3405         (JSC::Bindings::convertValueToNPVariant):
3406         * bridge/objc/ObjCRuntimeObject.h:
3407         (JSC::Bindings::ObjCRuntimeObject::createStructure):
3408         * bridge/objc/objc_instance.mm:
3409         (ObjCRuntimeMethod::finishCreation):
3410         (ObjcInstance::invokeMethod):
3411         * bridge/objc/objc_runtime.h:
3412         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
3413         * bridge/objc/objc_runtime.mm:
3414         (JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
3415         (JSC::Bindings::callObjCFallbackObject):
3416         * bridge/qt/qt_instance.cpp:
3417         (JSC::Bindings::QtRuntimeObject::createStructure):
3418         (JSC::Bindings::QtInstance::getInstance):
3419         * bridge/qt/qt_pixmapruntime.cpp:
3420         (JSC::Bindings::assignToHTMLImageElement):
3421         (JSC::Bindings::QtPixmapRuntime::toQt):