.: [GTK] Enable touch features
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-02-09  Carlos Garnacho  <carlosg@gnome.org>
2
3         [GTK] Add touch-events related code to build
4         https://bugs.webkit.org/show_bug.cgi?id=98931
5
6         Reviewed by Carlos Garcia Campos.
7
8         Tests in fast/events/touch have been enabled on GTK+ now that touch
9         support is implemented, and thus all expected bits are there.
10
11         * platform/gtk/GtkTouchContextHelper.cpp:
12         * platform/gtk/GtkTouchContextHelper.h: Add helper object to track all touchpoints, handy
13         when creating WebTouchEvents.
14         * GNUmakefile.list.am:
15         * PlatformGTK.cmake:
16         * bindings/gobject/GNUmakefile.am: Add touch related code and idls to build, those are
17         necessary now that GTK+ implements touch events.
18
19 2014-02-09  Zan Dobersek  <zdobersek@igalia.com>
20
21         Switch the rest of CSS code from OwnPtr over to std::unique_ptr
22         https://bugs.webkit.org/show_bug.cgi?id=128471
23
24         Reviewed by Andreas Kling.
25
26         Replace the remaining uses of OwnPtr in the CSS code with std::unique_ptr, covering
27         the CSSParser, CSSParserSelector and CSSSelector classes and a few additional, closely related classes.
28
29         * css/CSSGrammar.y.in:
30         * css/CSSParser.cpp:
31         (WebCore::CSSParser::parseSheet):
32         (WebCore::CSSParser::parseDeclaration):
33         (WebCore::CSSParser::parseValue):
34         (WebCore::CSSParser::markSupportsRuleHeaderStart):
35         (WebCore::CSSParser::createKeyframesRule):
36         (WebCore::CSSParser::createStyleRule):
37         (WebCore::CSSParser::rewriteSpecifiersWithElementName):
38         (WebCore::CSSParser::rewriteSpecifiers):
39         * css/CSSParser.h:
40         * css/CSSParserValues.cpp:
41         (WebCore::CSSParserSelector::CSSParserSelector):
42         (WebCore::CSSParserSelector::~CSSParserSelector):
43         (WebCore::CSSParserSelector::adoptSelectorVector):
44         (WebCore::CSSParserSelector::insertTagHistory):
45         (WebCore::CSSParserSelector::appendTagHistory):
46         (WebCore::CSSParserSelector::prependTagSelector):
47         * css/CSSParserValues.h:
48         (WebCore::CSSParserSelector::releaseSelector):
49         (WebCore::CSSParserSelector::setTagHistory):
50         (WebCore::CSSParserSelector::clearTagHistory):
51         * css/CSSSelector.cpp:
52         (WebCore::CSSSelector::setSelectorList):
53         * css/CSSSelector.h:
54         * css/CSSSelectorList.cpp:
55         (WebCore::CSSSelectorList::adoptSelectorVector):
56         * css/CSSSelectorList.h:
57         * css/CSSValueList.cpp:
58         * css/StyleRule.cpp:
59         (WebCore::StyleRuleRegion::StyleRuleRegion):
60         * css/StyleRule.h:
61         (WebCore::StyleRule::parserAdoptSelectorVector):
62         (WebCore::StyleRulePage::parserAdoptSelectorVector):
63         (WebCore::StyleRuleRegion::create):
64
65 2014-02-09  Zan Dobersek  <zdobersek@igalia.com>
66
67         Manage MutationObserverInterestGroup through std::unique_ptr
68         https://bugs.webkit.org/show_bug.cgi?id=128468
69
70         Reviewed by Andreas Kling.
71
72         Use std::unique_ptr instead of OwnPtr for managing MutationObserverInterestGroup objects.
73
74         * css/PropertySetCSSStyleDeclaration.cpp:
75         * dom/CharacterData.cpp:
76         (WebCore::CharacterData::dispatchModifiedEvent):
77         * dom/ChildListMutationScope.cpp:
78         (WebCore::ChildListMutationAccumulator::ChildListMutationAccumulator):
79         * dom/ChildListMutationScope.h:
80         (WebCore::ChildListMutationAccumulator::hasObservers):
81         * dom/Element.cpp:
82         (WebCore::Element::willModifyAttribute):
83         * dom/MutationObserverInterestGroup.cpp:
84         (WebCore::MutationObserverInterestGroup::createIfNeeded):
85         * dom/MutationObserverInterestGroup.h:
86         (WebCore::MutationObserverInterestGroup::createForChildListMutation):
87         (WebCore::MutationObserverInterestGroup::createForCharacterDataMutation):
88         (WebCore::MutationObserverInterestGroup::createForAttributesMutation):
89
90 2014-02-09  Zan Dobersek  <zdobersek@igalia.com>
91
92         Manage MessagePort, MessagePortChannel and friends through std::unique_ptr
93         https://bugs.webkit.org/show_bug.cgi?id=128467
94
95         Reviewed by Andreas Kling.
96
97         Use std::unique_ptr instead of OwnPtr to manage MessagePort, MessagePortArray, MessagePortChannel
98         and MessagePortChannelArray objects.
99
100         * bindings/js/JSMessageEventCustom.cpp:
101         (WebCore::handleInitMessageEvent):
102         * dom/MessageEvent.cpp:
103         (WebCore::MessageEvent::MessageEvent):
104         (WebCore::MessageEvent::initMessageEvent):
105         * dom/MessageEvent.h:
106         (WebCore::MessageEvent::create):
107         * dom/MessagePort.cpp:
108         (WebCore::MessagePort::postMessage):
109         (WebCore::MessagePort::disentangle):
110         (WebCore::MessagePort::entangle):
111         (WebCore::MessagePort::dispatchMessages):
112         (WebCore::MessagePort::disentanglePorts):
113         (WebCore::MessagePort::entanglePorts):
114         * dom/MessagePort.h:
115         * dom/MessagePortChannel.h:
116         * dom/default/PlatformMessagePortChannel.cpp:
117         (WebCore::PlatformMessagePortChannel::EventData::EventData):
118         (WebCore::MessagePortChannel::createChannel):
119         (WebCore::MessagePortChannel::postMessageToRemote):
120         (WebCore::MessagePortChannel::tryGetMessageFromRemote):
121         * dom/default/PlatformMessagePortChannel.h:
122         (WebCore::PlatformMessagePortChannel::EventData::channels):
123         * page/DOMWindow.cpp:
124         (WebCore::PostMessageTimer::PostMessageTimer):
125         (WebCore::PostMessageTimer::event):
126         (WebCore::DOMWindow::postMessage):
127         * workers/DedicatedWorkerGlobalScope.cpp:
128         (WebCore::DedicatedWorkerGlobalScope::postMessage):
129         * workers/DefaultSharedWorkerRepository.cpp:
130         (WebCore::SharedWorkerConnectTask::create):
131         (WebCore::SharedWorkerConnectTask::SharedWorkerConnectTask):
132         (WebCore::SharedWorkerConnectTask::performTask):
133         (WebCore::SharedWorkerScriptLoader::SharedWorkerScriptLoader):
134         (WebCore::SharedWorkerScriptLoader::notifyFinished):
135         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
136         (WebCore::DefaultSharedWorkerRepository::connectToWorker):
137         * workers/DefaultSharedWorkerRepository.h:
138         * workers/SharedWorker.cpp:
139         (WebCore::SharedWorker::create):
140         * workers/SharedWorkerGlobalScope.cpp:
141         (WebCore::createConnectEvent):
142         * workers/SharedWorkerRepository.cpp:
143         (WebCore::SharedWorkerRepository::connect):
144         * workers/SharedWorkerRepository.h:
145         * workers/Worker.cpp:
146         (WebCore::Worker::postMessage):
147         * workers/WorkerGlobalScopeProxy.h:
148         * workers/WorkerMessagingProxy.cpp:
149         (WebCore::MessageWorkerGlobalScopeTask::create):
150         (WebCore::MessageWorkerGlobalScopeTask::MessageWorkerGlobalScopeTask):
151         (WebCore::MessageWorkerGlobalScopeTask::performTask):
152         (WebCore::MessageWorkerTask::create):
153         (WebCore::MessageWorkerTask::MessageWorkerTask):
154         (WebCore::MessageWorkerTask::performTask):
155         (WebCore::WorkerMessagingProxy::postMessageToWorkerObject):
156         (WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
157         * workers/WorkerMessagingProxy.h:
158         * workers/WorkerObjectProxy.h:
159
160 2014-02-08  Ryosuke Niwa  <rniwa@webkit.org>
161
162         Cleanup the interface of FrameSelection
163         https://bugs.webkit.org/show_bug.cgi?id=128481
164
165         Reviewed by Andreas Kling.
166
167         Removed FrameSelection::end() as intended in r163232, and the stale declaration of
168         paintDragCaret() which was supposed to be removed when we extracted DragCaretController.
169
170         Renamed caretRenderer() to caretRendererWithoutUpdatingLayout() to clarify the contract
171         as the only caller of this function is RenderBlock::paintCaret. Also renamed bounds()
172         to selectionBounds() to make it more easily identifiable / grep'able.
173
174         In addition, made recomputeCaretRect() and invalidateCaretRect() private.
175
176         * WebCore.exp.in:
177         * editing/FrameSelection.cpp:
178         (WebCore::FrameSelection::caretRendererWithoutUpdatingLayout):
179         (WebCore::FrameSelection::selectionBounds):
180         (WebCore::FrameSelection::revealSelection):
181         * editing/FrameSelection.h:
182         (WebCore::FrameSelection::setCaretVisible):
183         * page/DragController.cpp:
184         (WebCore::dragLocForSelectionDrag):
185         * page/FrameSnapshotting.cpp:
186         (WebCore::snapshotSelection):
187         * page/win/FrameWin.cpp:
188         (WebCore::imageFromSelection):
189         * rendering/RenderBlock.cpp:
190         (WebCore::RenderBlock::paintCaret):
191         * testing/Internals.cpp:
192         (WebCore::Internals::selectionBounds):
193
194 2014-02-08  Dan Bernstein  <mitz@apple.com>
195
196         Reverted part of r163734, because the assertion it enabled still fails when running
197         loader/load-defer-resume-crash.html
198
199         * loader/DocumentLoader.cpp:
200         (WebCore::DocumentLoader::dataReceived):
201
202 2014-02-08  Ryosuke Niwa  <rniwa@webkit.org>
203
204         EFL build fix after r163729.
205
206         * Modules/indexeddb/IDBDatabase.cpp:
207         (WebCore::IDBDatabase::version):
208
209 2014-02-08  Dan Bernstein  <mitz@apple.com>
210
211         Remove outdated workarounds in DocumentLoader::dataReceived
212         https://bugs.webkit.org/show_bug.cgi?id=128465
213
214         Reviewed by Andreas Kling.
215
216         * loader/DocumentLoader.cpp:
217         (WebCore::DocumentLoader::dataReceived):
218
219 2014-02-08  Alexey Proskuryakov  <ap@apple.com>
220
221         Remove some unused functions from SerializedScriptValue
222         https://bugs.webkit.org/show_bug.cgi?id=128407
223
224         Reviewed by Oliver Hunt.
225
226         Removed more unused code, particularly in API helpers. Renamed one serialize()
227         function to create(), because it does the same thing as other create() functions.
228
229         * Modules/indexeddb/IDBObjectStore.cpp:
230         (WebCore::IDBObjectStore::put):
231         * bindings/js/SerializedScriptValue.cpp:
232         (WebCore::SerializedScriptValue::create):
233         (WebCore::SerializedScriptValue::deserialize):
234         * bindings/js/SerializedScriptValue.h:
235
236 2014-02-08  Brady Eidson  <beidson@apple.com>
237
238         IDB: storage/indexeddb/mozilla/versionchange-abort.html fails
239         <rdar://problem/16018887> and https://bugs.webkit.org/show_bug.cgi?id=128442
240
241         Reviewed by Dan Bernstein.
242
243         Tested by storage/indexeddb/mozilla/versionchange-abort.html (and probably others)
244
245         * Modules/indexeddb/IDBDatabase.cpp:
246         (WebCore::IDBDatabase::version): If the version is NoIntVersion, return DefaultIntVersion to script.
247
248 2014-02-08  Brady Eidson  <beidson@apple.com>
249
250         IDB: storage/indexeddb/mozilla/cursors.html fails
251         <rdar://problem/16017998> and https://bugs.webkit.org/show_bug.cgi?id=128423
252
253         Reviewed by Dan Bernstein.
254
255         Tested by storage/indexeddb/mozilla/cursors.html (And probably others)
256
257         * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
258         (WebCore::OpenCursorOperation::perform): Distinguish between an error while opening the cursor
259           and opening a cursor that points to no records.
260
261 2014-02-08  Andreas Kling  <akling@apple.com>
262
263         Remove unused ChromeClient::layoutUpdated().
264         <https://webkit.org/b/128470>
265
266         Nobody listens for this callback anymore so remove it.
267
268         Reviewed by Anders Carlsson.
269
270         * page/Chrome.cpp:
271         * page/Chrome.h:
272         * page/ChromeClient.h:
273         * page/FrameView.cpp:
274         (WebCore::FrameView::layout):
275
276 2014-02-08  Dan Bernstein  <mitz@apple.com>
277
278         Stop using PLATFORM(MAC) in WebCore except where it means “OS X but not iOS”
279         https://bugs.webkit.org/show_bug.cgi?id=128464
280
281         Reviewed by Anders Carlsson.
282
283         * Modules/webaudio/AudioContext.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
284         (WebCore::AudioContext::constructCommon):
285         * accessibility/AccessibilityNodeObject.cpp: Ditto.
286         (WebCore::AccessibilityNodeObject::visibleText):
287         * accessibility/AccessibilityObject.h: Ditto.
288         * accessibility/AccessibilityRenderObject.cpp: Ditto.
289         (WebCore::AccessibilityRenderObject::clickPoint):
290         (WebCore::AccessibilityRenderObject::visiblePositionForPoint):
291         (WebCore::AccessibilityRenderObject::addChildren):
292         * accessibility/AccessibilityRenderObject.h: Ditto.
293         * bindings/js/JSInspectorFrontendHostCustom.cpp:
294         (WebCore::JSInspectorFrontendHost::platform): Made it explicit that this function returns
295         "mac" when built for iOS.
296         * bindings/js/ScriptController.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
297         (WebCore::ScriptController::ScriptController):
298         * bindings/js/ScriptController.h: Ditto.
299         * crypto/CryptoKey.cpp: Changed PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) &&
300         !PLATFORM(GTK) when checking for whether to use CoreCrypto.
301         * crypto/keys/CryptoKeyRSA.h: Ditto.
302         * dom/Clipboard.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
303         * dom/Document.cpp: Ditto.
304         (WebCore::Document::implicitClose):
305         * dom/KeyboardEvent.h: Ditto.
306         * editing/Editor.cpp: Ditto.
307         (WebCore::Editor::cut):
308         (WebCore::Editor::copy):
309         (WebCore::Editor::copyImage):
310         * editing/Editor.h: Ditto.
311         * editing/FrameSelection.h: Ditto.
312         * editing/TypingCommand.cpp: Ditto.
313         (WebCore::TypingCommand::typingAddedToOpenCommand):
314         * history/HistoryItem.h: Ditto.
315         * html/HTMLMediaElement.cpp: Ditto.
316         (WebCore::HTMLMediaElement::parseAttribute):
317         * html/HTMLMediaElement.h: Ditto.
318         * html/HTMLPlugInElement.cpp: Ditto.
319         (WebCore::registeredPluginReplacements):
320         * html/HTMLPlugInImageElement.cpp: Ditto.
321         (WebCore::HTMLPlugInImageElement::setDisplayState):
322         * html/HTMLSelectElement.cpp: Ditto.
323         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
324         * html/shadow/MediaControlElements.cpp: Ditto.
325         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
326         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
327         * html/shadow/MediaControlElements.h: Ditto.
328         * inspector/InspectorIndexedDBAgent.cpp: Ditto.
329         * loader/CookieJar.cpp: Ditto.
330         * loader/DocumentLoader.cpp: Ditto.
331         (WebCore::DocumentLoader::dataReceived):
332         * loader/DocumentLoader.h: Ditto.
333         (WebCore::DocumentLoader::didTellClientAboutLoad):
334         * loader/EmptyClients.h: Ditto.
335         * loader/FrameLoader.cpp:
336         (WebCore::FrameLoader::loadArchive): Added !PLATFORM(IOS) around Mac-only workaround.
337         (WebCore::FrameLoader::defaultObjectContentType): Changed PLATFORM(MAC) to PLATFORM(COCOA).
338         (WebCore::FrameLoader::subresourceCachePolicy): Ditto.
339         * loader/ResourceBuffer.h: Changed PLATFORM(MAC) to USE(FOUNDATION) around functions that
340         are implemented using Foundation.
341         * loader/ResourceLoadScheduler.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
342         (WebCore::ResourceLoadScheduler::scheduleLoad):
343         * loader/ResourceLoader.cpp: Ditto.
344         (WebCore::ResourceLoader::didReceiveAuthenticationChallenge):
345         * loader/ResourceLoader.h: Ditto.
346         * loader/archive/cf/LegacyWebArchive.cpp: Ditto.
347         * loader/cache/CachedResource.cpp: Changed PLATFORM(MAC) to USE(FOUNDATION) around function
348         that is implemented using other USE(FOUNDATION)-guarded code.
349         * loader/cache/CachedResource.h: Ditto.
350         * page/Chrome.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
351         * page/ChromeClient.h: Ditto.
352         * page/ContextMenuClient.h: Ditto.
353         * page/ContextMenuController.cpp: Ditto.
354         (WebCore::ContextMenuController::contextMenuItemSelected):
355         (WebCore::ContextMenuController::createAndAppendFontSubMenu):
356         (WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
357         (WebCore::ContextMenuController::populate):
358         (WebCore::ContextMenuController::checkOrEnableIfNeeded):
359         * page/DragClient.h: Ditto.
360         * page/DragController.cpp: Ditto.
361         (WebCore::dragLocForDHTMLDrag):
362         (WebCore::dragLocForSelectionDrag):
363         (WebCore::DragController::startDrag):
364         (WebCore::DragController::doImageDrag):
365         * page/EditorClient.h: Ditto.
366         * page/EventHandler.cpp: Ditto.
367         (WebCore::EventHandler::EventHandler):
368         (WebCore::EventHandler::handleMouseDraggedEvent):
369         (WebCore::EventHandler::logicalScrollRecursively):
370         (WebCore::EventHandler::clearDragState):
371         (WebCore::EventHandler::handleWheelEvent):
372         (WebCore::EventHandler::defaultWheelEventHandler):
373         (WebCore::EventHandler::keyEvent):
374         (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
375         * page/EventHandler.h: Ditto.
376         * page/FrameView.cpp: Ditto.
377         (WebCore::FrameView::layout):
378         * page/Page.h: Ditto.
379         * page/Settings.cpp: Ditto.
380         * page/Settings.h: Ditto.
381         * page/scrolling/ScrollingCoordinator.cpp: Ditto.
382         * page/scrolling/ScrollingCoordinator.h: Ditto.
383         * page/scrolling/ScrollingStateNode.h: Removed unused #include.
384         * page/scrolling/ScrollingThread.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
385         (WebCore::ScrollingThread::createThreadIfNeeded):
386         * page/scrolling/ScrollingThread.h: Ditto.
387         * platform/network/cf/ResourceRequest.h: Added !PLATFORM(IOS) around
388         applyWebArchiveHackForMail.
389         * platform/network/cf/ResourceRequestCFNet.cpp:
390         (WebCore::ResourceRequest::applyWebArchiveHackForMail): Ditto.
391         * platform/network/mac/ResourceRequestMac.mm:
392         (WebCore::ResourceRequest::applyWebArchiveHackForMail): Ditto.
393         * plugins/PluginViewNone.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA)
394         * rendering/RenderBox.cpp: Ditto.
395         (WebCore::RenderBox::logicalScroll):
396         * rendering/RenderLayerBacking.cpp: Ditto.
397         (WebCore::RenderLayerBacking::createGraphicsLayer):
398         (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
399         * rendering/RenderMenuList.h: Ditto.
400         * rendering/RenderText.cpp: Ditto.
401         (WebCore::RenderText::previousOffsetForBackwardDeletion):
402         * rendering/break_lines.cpp: Removed unused #include.
403         * testing/js/WebCoreTestSupport.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
404         * xml/XSLStyleSheetLibxslt.cpp: Changed PLATFORM(MAC) to OS(DARWIN) && !PLATFORM(EFL) &&
405         !PLATFORM(GTK) around soft-linking libxslt.
406         * xml/XSLTExtensions.cpp: Ditto.
407         * xml/XSLTProcessorLibxslt.cpp: Ditto.
408         * xml/XSLTUnicodeSort.cpp: Ditto.
409
410 2014-02-08  Andreas Kling  <akling@apple.com>
411
412         Remove unused ChromeClient::formStateDidChange().
413         <https://webkit.org/b/128469>
414
415         Nobody listens for this callback anymore so remove it and stop
416         spamming no-op virtual dispatches in forms code.
417
418         Reviewed by Anders Carlsson.
419
420         * html/FileInputType.cpp:
421         (WebCore::FileInputType::setFiles):
422         * html/HTMLFormControlElementWithState.cpp:
423         * html/HTMLFormControlElementWithState.h:
424         * html/HTMLInputElement.cpp:
425         (WebCore::HTMLInputElement::updateType):
426         (WebCore::HTMLInputElement::setValue):
427         (WebCore::HTMLInputElement::setValueFromRenderer):
428         * html/HTMLSelectElement.cpp:
429         (WebCore::HTMLSelectElement::updateListBoxSelection):
430         (WebCore::HTMLSelectElement::selectOption):
431         * html/HTMLTextAreaElement.cpp:
432         (WebCore::HTMLTextAreaElement::updateValue):
433         (WebCore::HTMLTextAreaElement::setValueCommon):
434         * loader/EmptyClients.h:
435         * page/ChromeClient.h:
436
437 2014-02-08  Chris J. Shull  <chrisjshull@gmail.com>
438
439         Web Inspector: Find evaluates attributes in a case sensitive manner
440         https://bugs.webkit.org/show_bug.cgi?id=128405
441
442         Reviewed by Timothy Hatcher.
443
444         Changed matchesAttribute to ignore case.
445
446         Updated existing test with additional cases: 
447         inspector-protocol/dom/dom-search.html
448
449         * inspector/InspectorNodeFinder.cpp:
450         (WebCore::InspectorNodeFinder::matchesAttribute):
451
452 2014-02-08  Andreas Kling  <akling@apple.com>
453
454         Remove unused FrameLoaderClient::dispatchWillOpenSocketStream().
455         <https://webkit.org/b/128472>
456
457         Nobody listens for this callback anymore so remove it.
458
459         Reviewed by Anders Carlsson.
460
461         * Modules/websockets/WebSocketChannel.cpp:
462         (WebCore::WebSocketChannel::willOpenSocketStream):
463         * loader/FrameLoaderClient.h:
464
465 2014-02-08  Ryosuke Niwa  <rniwa@webkit.org>
466
467         Split UserTriggered into FireSelectEvent and RevealSelection for selection options
468         https://bugs.webkit.org/show_bug.cgi?id=128441
469
470         Reviewed by Darin Adler.
471
472         Split UserTriggered by FireSelectEvent and RevealSelection for selection options.
473
474         Also added defaultSetSelectionOptions() to abstract away the default options.
475
476         * editing/AlternativeTextController.cpp:
477         (WebCore::AlternativeTextController::respondToUnappliedSpellCorrection):
478         * editing/Editor.cpp:
479         (WebCore::Editor::unappliedEditing):
480         (WebCore::Editor::reappliedEditing):
481         * editing/FrameSelection.cpp:
482         (WebCore::FrameSelection::moveTo):
483         (WebCore::FrameSelection::setSelectionByMouseIfDifferent): UserTriggered | DoNotRevealSelection
484         is replaced by FireSelectEvent.
485         (WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance): Check options & FireSelectEvent
486         instead of options & UserTriggered.
487         (WebCore::FrameSelection::setSelection): Check options & RevealSelection instead of
488         options & UserTriggered && !(options & DoNotRevealSelection).
489         (WebCore::FrameSelection::prepareForDestruction):
490         (WebCore::FrameSelection::setBase):
491         (WebCore::FrameSelection::setExtent):
492         (WebCore::FrameSelection::selectAll):
493         (WebCore::FrameSelection::wordSelectionContainingCaretSelection):
494         * editing/FrameSelection.h:
495         (WebCore::FrameSelection::defaultSetSelectionOptions): Added.
496         * editing/SpellingCorrectionCommand.cpp:
497         (WebCore::SpellingCorrectionCommand::doApply):
498         * html/HTMLTextFormControlElement.cpp:
499         (WebCore::HTMLTextFormControlElement::selectionChanged): Renamed the argument.
500         * html/HTMLTextFormControlElement.h:
501
502 2014-02-08  Zan Dobersek  <zdobersek@igalia.com>
503
504         Move TreeScope, IdTargetObserverRegistry to std::unique_ptr
505         https://bugs.webkit.org/show_bug.cgi?id=127276
506
507         Reviewed by Andreas Kling.
508
509         Replace uses of OwnPtr in the TreeScope and IdTargetObserverRegistry classes with std::unique_ptr.
510
511         * dom/IdTargetObserverRegistry.cpp:
512         (WebCore::IdTargetObserverRegistry::addObserver):
513         * dom/IdTargetObserverRegistry.h:
514         (WebCore::IdTargetObserverRegistry::IdTargetObserverRegistry):
515         * dom/TreeScope.cpp:
516         (WebCore::TreeScope::TreeScope):
517         (WebCore::TreeScope::destroyTreeScopeData):
518         (WebCore::TreeScope::addElementById):
519         (WebCore::TreeScope::addElementByName):
520         (WebCore::TreeScope::addImageMap):
521         (WebCore::TreeScope::labelElementForId):
522         * dom/TreeScope.h:
523         (WebCore::TreeScope::shouldCacheLabelsByForAttribute):
524
525 2014-02-08  Anders Carlsson  <andersca@apple.com>
526
527         Slight CTTE in PingLoader
528         https://bugs.webkit.org/show_bug.cgi?id=128462
529
530         Reviewed by Dan Bernstein.
531
532         PingLoader always wants a non-null frame.
533
534         * html/HTMLAnchorElement.cpp:
535         (WebCore::HTMLAnchorElement::sendPings):
536         * html/parser/XSSAuditorDelegate.cpp:
537         (WebCore::XSSAuditorDelegate::didBlockScript):
538         * inspector/InspectorInstrumentation.h:
539         (WebCore::InspectorInstrumentation::continueAfterPingLoader):
540         * loader/PingLoader.cpp:
541         (WebCore::PingLoader::loadImage):
542         (WebCore::PingLoader::sendPing):
543         (WebCore::PingLoader::sendViolationReport):
544         (WebCore::PingLoader::createPingLoader):
545         (WebCore::PingLoader::PingLoader):
546         * loader/PingLoader.h:
547         * loader/cache/CachedResourceLoader.cpp:
548         (WebCore::CachedResourceLoader::requestImage):
549         * page/ContentSecurityPolicy.cpp:
550         (WebCore::ContentSecurityPolicy::reportViolation):
551
552 2014-02-08  Dan Bernstein  <mitz@apple.com>
553
554         Remove client-drawn highlights (-webkit-highlight, WebHTMLHighlighter)
555         https://bugs.webkit.org/show_bug.cgi?id=128456
556
557         Reviewed by Anders Carlsson.
558
559         Updated fast/css/getComputedStyle and svg/css results.
560
561         * css/CSSComputedStyleDeclaration.cpp:
562         (WebCore::ComputedStyleExtractor::propertyValue): Removed CSSPropertyWebKitHighlight case.
563         * css/CSSParser.cpp:
564         (WebCore::CSSParser::parseValue): Ditto.
565         * css/CSSPropertyNames.in: Removed -webkit-highlight.
566         * css/DeprecatedStyleBuilder.cpp:
567         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Removed
568         CSSPropertyWebKitHighlight handler.
569         * css/StyleResolver.cpp:
570         (WebCore::StyleResolver::applyProperty): Removed CSSPropertyWebKitHighlight case.
571         * page/Chrome.cpp: Removed customHighlightRect and paintCustomHighlight.
572         * page/ChromeClient.h: Ditto.
573         * rendering/InlineTextBox.cpp:
574         (WebCore::InlineTextBox::paint): Removed painting custom highlight.
575         * rendering/InlineTextBox.h:
576         * rendering/RenderBlockLineLayout.cpp:
577         (WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns): Removed adding overflow for custom
578         highlights.
579         * rendering/RenderBox.cpp: Removed paintCustomHighlight.
580         * rendering/RenderBox.h:
581         * rendering/RenderImage.cpp:
582         (WebCore::RenderImage::paintReplaced): Removed painting custom highlight.
583         * rendering/RenderListMarker.cpp:
584         (WebCore::RenderListMarker::paint): Ditto.
585         * rendering/RenderSnapshottedPlugIn.cpp:
586         (WebCore::RenderSnapshottedPlugIn::paintSnapshot): Ditto.
587         * rendering/RenderWidget.cpp:
588         (WebCore::RenderWidget::paint): Ditto.
589         * rendering/RootInlineBox.cpp:
590         (WebCore::RootInlineBox::paint): Ditto.
591         * rendering/RootInlineBox.h:
592         * rendering/style/RenderStyle.cpp:
593         (WebCore::RenderStyle::changeRequiresLayout): Removed highlight comparison.
594         * rendering/style/RenderStyle.h:
595         * rendering/style/StyleRareInheritedData.cpp:
596         (WebCore::StyleRareInheritedData::StyleRareInheritedData): Removed initializer.
597         (WebCore::StyleRareInheritedData::operator==): Removed highlight comparison.
598         * rendering/style/StyleRareInheritedData.h: Removed highlight member variable.
599
600 2014-02-08  Dan Bernstein  <mitz@apple.com>
601
602         One more build fix fix.
603
604         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
605         (-[WebAccessibilityObjectWrapper arrayOfTextForTextMarkers:attributed:]):
606
607 2014-02-08  Dan Bernstein  <mitz@apple.com>
608
609         More (and more correct) iOS build fix after r163712.
610
611         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
612         (AXAttributedStringAppendText):
613         (-[WebAccessibilityObjectWrapper arrayOfTextForTextMarkers:attributed:]):
614         * page/ios/FrameIOS.mm:
615         (WebCore::Frame::wordsInCurrentParagraph):
616
617 2014-02-08  Dan Bernstein  <mitz@apple.com>
618
619         iOS build fix after r163712.
620
621         * page/ios/FrameIOS.mm:
622         (WebCore::Frame::indexCountOfWordPrecedingSelection):
623         (WebCore::Frame::wordsInCurrentParagraph):
624
625 2014-02-08  Darin Adler  <darin@apple.com>
626
627         Change TextIterator to use StringView, preparing to wean it from deprecatedCharacters
628         https://bugs.webkit.org/show_bug.cgi?id=128233
629
630         Reviewed by Anders Carlsson.
631
632         * accessibility/AccessibilityNodeObject.cpp: Removed unneeded TextIterator.h include.
633
634         * accessibility/AccessibilityObject.cpp:
635         (WebCore::AccessibilityObject::hasMisspelling): Updated to use StringView for checkSpelling.
636
637         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
638         (AXAttributeStringSetSpelling): Changed to take a StringView.
639         (AXAttributedStringAppendText): Ditto.
640         (-[WebAccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]): Pass StringView.
641
642         * editing/Editor.cpp:
643         (WebCore::Editor::misspelledWordAtCaretOrRange): Pass StringView.
644         (WebCore::Editor::misspelledSelectionString): Ditto.
645         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges): Ditto.
646
647         * editing/TextCheckingHelper.cpp:
648         (WebCore::findGrammaticalErrors): Renamed this function. Changed to use StringView.
649         (WebCore::findMisspellings): Use StringView.
650         (WebCore::TextCheckingHelper::findFirstMisspelling): Ditto. Also separated out assertions
651         that were asserting multiple things with &&.
652         (WebCore::TextCheckingHelper::findFirstMisspellingOrBadGrammar): Ditto.
653         (WebCore::TextCheckingHelper::findFirstGrammarDetail): Ditto.
654         (WebCore::TextCheckingHelper::findFirstBadGrammar): Ditto.
655         (WebCore::TextCheckingHelper::isUngrammatical): Ditto.
656         (WebCore::TextCheckingHelper::guessesForMisspelledOrUngrammaticalRange): Ditto.
657         (WebCore::checkTextOfParagraph): Ditto.
658
659         * editing/TextCheckingHelper.h: Made TextCheckingParagraph::text public. Deleted
660         TextCheckingParagraph::textDeprecatedCharacters. Added comments about additional
661         TextCheckingParagraph refinements. Changed checkTextOfParagraph to take a client
662         reference instead of pointer and StringView instead of characters pointer with length.
663
664         * editing/TextIterator.cpp:
665         (WebCore::TextIterator::appendTextToStringBuilder): Use data members directly,
666         rather than using functions, since we already checked m_textCharacters for null.
667         (WebCore::CharacterIterator::string): Use text() instead of characters().
668         (WebCore::WordAwareIterator::WordAwareIterator): Removed initialization of
669         m_previousText now that it's a StringView rather than a pointer.
670         (WebCore::WordAwareIterator::advance): Use TextIterator::text instead of
671         TextIterator::characters. Also added a FIXME about a fundamental problem
672         with the implementation of this class!
673         (WebCore::WordAwareIterator::length): Updated for m_previousText change.
674         (WebCore::WordAwareIterator::text): Replaced WordAwareIterator::characters with this.
675         (WebCore::SearchBuffer::append): Changed to take a StringView.
676         (WebCore::SearchBuffer::prependContext): Ditto.
677         (WebCore::SearchBuffer::isWordStartMatch): Use StringView.
678         (WebCore::SearchBuffer::search): Ditto.
679         (WebCore::findPlainText): Ditto.
680
681         * editing/TextIterator.h: Added TextIterator::text that returns a StringView, and
682         renamed TextIterator::characters to TextIterator::deprecatedTextIteratorCharacters
683         (easy to search for in source code). Added SimplifiedBackwardsTextIterator::text
684         and removed SimplifiedBackwardsTextIterator::characters. Added CharacterIterator::text,
685         and removed CharacterIterator::characters. Added WordAwareIterator::text and removed
686         WorkdAwareIterator::characters. Changed WordAwareIterator data members to use StringView.
687
688         * editing/VisibleSelection.cpp:
689         (WebCore::VisibleSelection::appendTrailingWhitespace): Use TextIterator::text instead
690         of TextIterator::characters.
691
692         * editing/VisibleUnits.cpp:
693         (WebCore::previousBoundary): Updated to use StringView.
694         (WebCore::nextBoundary): Ditto.
695         (WebCore::startWordBoundary): Ditto.
696         (WebCore::startOfWord): Ditto.
697         (WebCore::endWordBoundary): Ditto.
698         (WebCore::endOfWord): Fixed formatting.
699         (WebCore::previousWordPositionBoundary): Updated to use StringView.
700         (WebCore::previousWordPosition): Fixed formatting and got rid of local variable.
701         (WebCore::nextWordPositionBoundary): Updated to use StringView.
702         (WebCore::nextWordPosition): Fixed formatting and got rid of local variable.
703         (WebCore::inSameLine): Fixed formatting.
704         (WebCore::isStartOfLine): Ditto.
705         (WebCore::isEndOfLine): Ditto.
706         (WebCore::absoluteLineDirectionPointToLocalPointInBlock): Changed to take a reference.
707         (WebCore::previousLinePosition): Fixed formatting chand changed to pass a reference.
708         (WebCore::nextLinePosition): Ditto.
709         (WebCore::startSentenceBoundary): Updated to use StringView and got rid of a local.
710         (WebCore::startOfSentence): Fixed formatting.
711         (WebCore::endSentenceBoundary): Updated to use StringView and got rid of a local.
712         (WebCore::endOfSentence): Fixed formatting.
713         (WebCore::previousSentencePositionBoundary): Updated to use StringView and got rid of
714         a local.
715         (WebCore::previousSentencePosition): Ditto.
716         (WebCore::nextSentencePositionBoundary): Ditto.
717         (WebCore::nextSentencePosition): Fixed formatting.
718         (WebCore::endOfParagraph): Ditto.
719         (WebCore::inSameParagraph): Ditto.
720         (WebCore::isStartOfParagraph): Ditto.
721         (WebCore::isEndOfParagraph): Ditto.
722         (WebCore::inSameBlock): Ditto.
723         (WebCore::isStartOfBlock): Ditto.
724         (WebCore::isEndOfBlock): Ditto.
725         (WebCore::startOfDocument): Ditto.
726         (WebCore::endOfDocument): Ditto.
727         (WebCore::inSameDocument): Ditto.
728         (WebCore::isStartOfDocument): Ditto.
729         (WebCore::isEndOfDocument): Ditto.
730         (WebCore::isEndOfEditableOrNonEditableContent): Ditto.
731
732         * loader/EmptyClients.h: Use StringView.
733
734         * platform/mac/HTMLConverter.mm:
735         (+[WebHTMLConverter editingAttributedStringFromRange:]): Use StringView.
736
737         * platform/text/TextBoundaries.cpp:
738         (WebCore::endOfFirstWordBoundaryContext): Use StringView and unsigned.
739         (WebCore::startOfLastWordBoundaryContext): Ditto.
740
741         * platform/text/TextBoundaries.h: Change interfaces to use StringView,
742         and in some cases, unsigned instead of int. All call sites were better off
743         with unsigned.
744
745         * platform/text/TextCheckerClient.h: Use StringView.
746
747         * platform/text/mac/TextBoundaries.mm: Changed conditionals to say
748         USE(APPKIT) instead of PLATFORM(IOS), since that's the real issue.
749         (WebCore::isSkipCharacter): Tweaked formatting.
750         (WebCore::isWhitespaceCharacter): Ditto.
751         (WebCore::isWordDelimitingCharacter): Ditto, also removed local variable.
752         (WebCore::isSymbolCharacter): Ditto.
753         (WebCore::tokenizerForString): Ditto.
754         (WebCore::findSimpleWordBoundary): Use StringView. Also changed to mostly
755         use unsigned instead of int.
756         (WebCore::findComplexWordBoundary): Use StringView. Also restructured to
757         be much more readable, with early returns and such.
758         (WebCore::findWordBoundary): Use StringView and unsigned.
759         (WebCore::findEndWordBoundary): Removed redudant copy of the findWordBoundary
760         function and changed this to just call findWordBoundary. The reason this
761         function exists is to optimize this case for some non-Mac, non-iOS platforms.
762         We can always do that for Mac and/or iOS later if we like.
763         (WebCore::findNextWordFromIndex): Use StringView. Also use wordBreakIterator
764         instead of using UBreakIterator directly so we get a cached iterator instead
765         of creating and destroying a new one each time this function is called.
766
767         * bindings/objc/DOMUIKitExtensions.mm: Removed unneeded includes.
768         * dom/Element.cpp: Ditto.
769         * dom/PositionIterator.cpp: Ditto.
770         * editing/ApplyBlockElementCommand.cpp: Ditto.
771         * editing/IndentOutdentCommand.cpp: Ditto.
772         * editing/InsertListCommand.cpp: Ditto.
773         * editing/markup.cpp: Ditto.
774         * html/HTMLElement.cpp: Ditto.
775         * html/HTMLTextAreaElement.cpp: Ditto.
776         * page/Frame.cpp: Ditto.
777         * rendering/RenderTextControl.cpp: Ditto.
778
779 2014-02-08  Andreas Kling  <akling@apple.com>
780
781         Remove two unused function declarations.
782
783         Scrub "highQualityRepaintTimerFired" declarations from RenderImage
784         and RenderBoxModelObject since they're not actually defined.
785
786         * rendering/RenderBoxModelObject.h:
787         * rendering/RenderImage.h:
788
789 2014-02-08  Andreas Kling  <akling@apple.com>
790
791         CTTE: SVGTRefTargetEventListener is always owned by SVGTRefElement.
792         <https://webkit.org/b/128432>
793
794         Tighten up the relationship between SVGTRefElement and its internal
795         event listener helper by storing the listener in a Ref, and making
796         the listeners backpointer to the element be a reference.
797
798         Reviewed by Anders Carlsson.
799
800         * svg/SVGTRefElement.cpp:
801         (WebCore::SVGTRefTargetEventListener::create):
802         (WebCore::SVGTRefTargetEventListener::SVGTRefTargetEventListener):
803         (WebCore::SVGTRefTargetEventListener::operator==):
804         (WebCore::SVGTRefTargetEventListener::handleEvent):
805         (WebCore::SVGTRefElement::SVGTRefElement):
806         * svg/SVGTRefElement.h:
807
808 2014-02-07  Andreas Kling  <akling@apple.com>
809
810         Devirtualize RenderBlockFlowRareData.
811         <https://webkit.org/b/128427>
812
813         This class had a virtual destructor for no reason. Removing it
814         shrinks RenderBlockFlowRareData by 8 bytes.
815
816         Reviewed by Anders Carlsson.
817
818         * rendering/RenderBlockFlow.h:
819         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::~RenderBlockFlowRareData):
820
821 2014-02-08  Andreas Kling  <akling@apple.com>
822
823         Use renderer iterators in two more places.
824         <https://webkit.org/b/128371>
825
826         Reviewed by Antti Koivisto.
827
828         * dom/Position.cpp:
829         (WebCore::Position::primaryDirection):
830
831             Use lineageOfType instead of walking the parent chain.
832
833         * rendering/RenderLayer.cpp:
834         (WebCore::RenderLayer::insertOnlyThisLayer):
835
836             Use childrenOfType instead of walking the children.
837
838 2014-02-07  David Kilzer  <ddkilzer@apple.com>
839
840         [ASan] Use new/delete in PODFreeListArena
841         <http://webkit.org/b/128437>
842
843         Reviewed by Oliver Hunt.
844
845         * platform/PODFreeListArena.h:
846         (WebCore::PODFreeListArena::allocateObject): Use new when
847         ADDRESS_SANITIZER is defined.
848         (WebCore::PODFreeListArena::freeObject): Use delete when
849         ADDRESS_SANITIZER is defined.
850
851 2014-02-07  Ryosuke Niwa  <rniwa@webkit.org>
852
853         Merge updateSelectionCachesIfSelectionIsInsideTextFormControl into setSelectionWithoutUpdatingAppearance
854         https://bugs.webkit.org/show_bug.cgi?id=128439
855
856         Reviewed by Anders Carlsson.
857
858         FrameSelection::selectAll had a superfluous call to updateSelectionCachesIfSelectionIsInsideTextFormControl
859         because it wasn't setting UserTriggered option to avoid revealing selection.
860
861         Call setSelection with UserTriggered and recently added DoNotRevealSelection option and merge
862         updateSelectionCachesIfSelectionIsInsideTextFormControl into setSelectionWithoutUpdatingAppearance.
863
864         Also rename local variables in setSelectionWithoutUpdatingAppearance, newSelection to
865         newSelectionPossiblyWithoutDirection and s to newSelection so that they're self explanatory.
866
867         In addition, we now update the input element's selection caches before calling
868         selectFrameElementInParentIfFullySelected but this should be fine because selection cannot simultaneously
869         select the entire document and be inside a text form control.
870
871         * editing/FrameSelection.cpp:
872         (WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance):
873         (WebCore::FrameSelection::selectAll):
874
875 2014-02-07  Ryosuke Niwa  <rniwa@webkit.org>
876
877         EFL build fix attempt after r163662.
878
879         * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
880         (WebCore::IDBLevelDBCoding::encodeIDBKey):
881
882 2014-02-07  Ryosuke Niwa  <rniwa@webkit.org>
883
884         FrameSelection's destructor shouldn't notify accessibility
885         https://bugs.webkit.org/show_bug.cgi?id=128421
886
887         Reviewed by Benjamin Poulain.
888
889         Extracted setSelectionWithoutUpdatingAppearance out of setSelection and called it in prepareForDestruction
890         instead of setting DoNotUpdateAppearance option. This new function doesn't reveal selection or notify
891         accessibility code in addition to not updating appearance.
892
893         Note that all implementations of notifyAccessibilityForSelectionChange in FrameSelectionAtk.cpp and
894         FrameSelectionMac.mm exit early when the selection type is not caret or either start or end is null,
895         which is already the case inside FrameSelection's destructor. In addition, revealSelection is never called
896         when selection change was not triggered by user so there should be no behavioral change from this patch.
897
898         * editing/FrameSelection.cpp:
899         (WebCore::FrameSelection::setSelectionWithoutUpdatingAppearance):
900         (WebCore::FrameSelection::setSelection):
901         (WebCore::FrameSelection::prepareForDestruction):
902         * editing/FrameSelection.h:
903         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange): Added the trivial implementation in the case
904         accessibility is disabled to tidy up call sites.
905
906 2014-02-07  Martin Robinson  <mrobinson@igalia.com>
907
908         Build fix for the GTK+ CMake build
909
910         * PlatformGTK.cmake: VTTCue.idl was unintentionally added to the list of GObject DOM bindings
911         output files. Remove it.
912
913 2014-02-07  Dirk Schulze  <krit@webkit.org>
914
915         Per CSSOM, computed rect() function values must be comma separated
916         https://bugs.webkit.org/show_bug.cgi?id=128401
917
918         Reviewed by Simon Fraser.
919
920         Updated tests.
921
922         * css/Rect.h:
923         (WebCore::Rect::generateCSSString):
924
925 2014-02-07  Gavin Barraclough  <barraclough@apple.com>
926
927         Remove isInitialState flag from Page::setViewState
928         https://bugs.webkit.org/show_bug.cgi?id=128428
929
930         Reviewed by Sam Weinig.
931
932         * WebCore.exp.in:
933             - removed isInitialState.
934         * page/Page.cpp:
935         (WebCore::Page::setViewState):
936             - removed isInitialState.
937         (WebCore::Page::setIsVisible):
938             - removed isInitialState.
939         (WebCore::Page::setIsVisibleInternal):
940             - removed isInitialState.
941         * page/Page.h:
942             - removed isInitialState.
943
944 2014-02-07  Simon Fraser  <simon.fraser@apple.com>
945
946         Encode requestedScrollPosition on ScrollingStateScrollingNodes to send to the UI process
947         https://bugs.webkit.org/show_bug.cgi?id=128416
948
949         Reviewed by Tim Horton.
950         
951         Change requestedScrollPosition() to be a FloatPoint, and export
952         ScrollingStateScrollingNode::setRequestedScrollPosition(WebCore::FloatPoint const&, bool)
953         for WK2.
954
955         * WebCore.exp.in:
956         * page/scrolling/ScrollingStateScrollingNode.cpp:
957         (WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):
958         * page/scrolling/ScrollingStateScrollingNode.h:
959
960 2014-02-07  Beth Dakin  <bdakin@apple.com>
961
962         Should get rid of TileController's CoverageForSlowScrolling mode
963         https://bugs.webkit.org/show_bug.cgi?id=128339
964
965         Reviewed by Simon Fraser.
966
967         This patch gets rid of CoverageForSlowScrolling in the TileController. It also 
968         makes sure that margin tiles are properly invalidated on pages with slow repaint 
969         objects that cause slow scrolling. 
970
971         When we invalidate because of slow scrolling, don’t clip the update rect to the 
972         layer bounds.
973         * page/FrameView.cpp:
974         (WebCore::FrameView::scrollContentsSlowPath):
975
976         Call new RenderObject paint function repaintSlowRepaintObject() instead of the 
977         more-generic repaint().
978         (WebCore::FrameView::repaintSlowRepaintObjects):
979
980         Remove CoverageForSlowScrolling.
981         * platform/graphics/TiledBacking.h:
982         * platform/graphics/ca/mac/TileController.h:
983         * platform/graphics/ca/mac/TileController.mm:
984         (WebCore::TileController::tilesWouldChangeForVisibleRect):
985         (WebCore::TileController::computeTileCoverageRect):
986         (WebCore::TileController::revalidateTiles):
987         * rendering/RenderLayerBacking.cpp:
988         (WebCore::computeTileCoverage):
989
990         Handle repainting a slow repaint object. Don’t clip when we shouldn’t, use the 
991         RenderView’s backgroundRect as a repaintRect when this is the root background 
992         since that will take the extended background rect into consideration.
993         * rendering/RenderObject.cpp:
994         (WebCore::RenderObject::repaintSlowRepaintObject):
995         * rendering/RenderObject.h:
996
997 2014-02-06  Filip Pizlo  <fpizlo@apple.com>
998
999         More FTL build scaffolding
1000         https://bugs.webkit.org/show_bug.cgi?id=128330
1001
1002         Reviewed by Geoffrey Garen.
1003
1004         The FTL already has tests.
1005
1006         * Configurations/FeatureDefines.xcconfig:
1007
1008 2014-02-07  Alexey Proskuryakov  <ap@apple.com>
1009
1010         Remove some unused functions from SerializedScriptValue
1011         https://bugs.webkit.org/show_bug.cgi?id=128407
1012
1013         Reviewed by Anders Carlsson.
1014
1015         * bindings/js/SerializedScriptValue.cpp:
1016         (WebCore::SerializedScriptValue::undefinedValue):
1017         (WebCore::SerializedScriptValue::nullValue):
1018         * bindings/js/SerializedScriptValue.h:
1019
1020 2014-02-07  Brady Eidson  <beidson@apple.com>
1021
1022         IDB: Some Mozilla cursor mutation tests fail
1023         <rdar://problem/16011680> and https://bugs.webkit.org/show_bug.cgi?id=128374
1024
1025         Reviewed by Sam Weinig.
1026
1027         Tested by:
1028         storage/indexeddb/mozilla/cursor-mutation-objectstore-only.html
1029         storage/indexeddb/mozilla/cursor-mutation.html
1030
1031         The previous comment about LevelDB was wrong.
1032         Apparently calling onSuccess() with a null SharedBuffer means the cursor reached the end.
1033         Update to distinguish between an error and reaching the end:
1034         * Modules/indexeddb/IDBCursorBackendOperations.cpp:
1035         (WebCore::CursorAdvanceOperation::perform):
1036         (WebCore::CursorIterationOperation::perform):
1037  
1038         Add a new IDBKey type - Maximum - To be used in comparisons between keys.
1039         This will allow the DatabaseProcess to operate on the range of all keys:
1040         * Modules/indexeddb/IDBKey.cpp:
1041         (WebCore::IDBKey::compare):
1042         * Modules/indexeddb/IDBKey.h:
1043
1044         * Modules/indexeddb/IDBKeyData.cpp:
1045         (WebCore::IDBKeyData::IDBKeyData):
1046         (WebCore::IDBKeyData::maybeCreateIDBKey):
1047         (WebCore::IDBKeyData::isolatedCopy):
1048         (WebCore::IDBKeyData::encode):
1049         (WebCore::IDBKeyData::decode):
1050         (WebCore::IDBKeyData::compare):
1051         (WebCore::IDBKeyData::loggingString):
1052         * Modules/indexeddb/IDBKeyData.h:
1053         (WebCore::IDBKeyData::minimum):
1054         (WebCore::IDBKeyData::maximum):
1055
1056         * bindings/js/IDBBindingUtilities.cpp:
1057         (WebCore::idbKeyToJSValue):
1058
1059         Remove an unused callback:
1060         * Modules/indexeddb/IDBCallbacks.h:
1061         * Modules/indexeddb/IDBRequest.h:
1062
1063 2014-02-07  Roger Fong  <roger_fong@apple.com>
1064
1065         CGContextGetUserSpaceToDeviceSpaceTransform returns the wrong value on Windows.
1066         https://bugs.webkit.org/show_bug.cgi?id=128395.
1067         
1068         Rubberstamped by Zalan Bujtas.
1069
1070         The call essentially returns 0 and causes an assertion failure when running many layout tests.
1071
1072         * platform/graphics/cg/GraphicsContextCG.cpp: Don't make the call on Windows. We default to 1.
1073         (WebCore::GraphicsContext::platformInit):
1074
1075 2014-02-07  Dan Bernstein  <mitz@apple.com>
1076
1077         iOS build fix.
1078
1079         * platform/PlatformKeyboardEvent.h: Fixed a typo.
1080
1081 2014-02-07  Dan Bernstein  <mitz@apple.com>
1082
1083         Stop using PLATFORM(MAC) in WebCore/platform except where it means “OS X but not iOS”
1084         https://bugs.webkit.org/show_bug.cgi?id=128404
1085
1086         Reviewed by Anders Carlsson.
1087
1088         * Configurations/WebCore.xcconfig: Removed KeyEventMac.mm from
1089         EXCLUDED_SOURCE_FILE_NAMES_iphoneos, because that file contains !PLATFORM(IOS) guards.
1090         Removed WheelEventMac.mm from the same definition, because that file no longer exists.
1091         * platform/ContentFilter.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1092         * platform/ContextMenu.h: Ditto.
1093         * platform/ContextMenuItem.h: Ditto.
1094         * platform/Cursor.cpp: Ditto.
1095         * platform/Cursor.h: Ditto.
1096         * platform/DragData.cpp: Ditto.
1097         * platform/DragImage.cpp: Ditto.
1098         * platform/Language.cpp:
1099         (WebCore::displayNameForLanguageLocale): Changed PLATFORM(MAC) to USE(CF) && !PLATFORM(WIN).
1100         * platform/LocalizedStrings.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1101         (WebCore::contextMenuItemTagSearchWeb):
1102         * platform/LocalizedStrings.h: Ditto.
1103         * platform/MIMETypeRegistry.cpp: Ditto.
1104         (WebCore::initializeSupportedImageMIMETypesForEncoding):
1105         * platform/PasteboardStrategy.h: Ditto.
1106         * platform/PlatformKeyboardEvent.h: Ditto.
1107         * platform/PlatformMenuDescription.h: Ditto.
1108         * platform/PlatformSpeechSynthesizer.h: Ditto.
1109         * platform/PlatformWheelEvent.h: Ditto.
1110         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
1111         * platform/SchemeRegistry.cpp: Ditto.
1112         (WebCore::localURLSchemes):
1113         (WebCore::SchemeRegistry::removeURLSchemeRegisteredAsLocal):
1114         (WebCore::SchemeRegistry::shouldCacheResponsesFromURLSchemeIndefinitely):
1115         * platform/ScrollAnimator.cpp: Ditto.
1116         (WebCore::ScrollAnimator::handleWheelEvent):
1117         * platform/ScrollAnimator.h: Ditto.
1118         * platform/ScrollView.cpp: Ditto.
1119         * platform/ScrollView.h: Ditto.
1120         * platform/ScrollbarThemeComposite.h: Ditto.
1121         * platform/SharedBuffer.h: Changed PLATFORM(MAC) to USE(FOUNDATION) around NSData-related
1122         code.
1123         * platform/URL.h: Changed PLATFORM(MAC) to USE(FOUNDATION) around NSURL-related code.
1124         * platform/Widget.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1125         * platform/Widget.h: Ditto.
1126         * platform/audio/AudioSession.cpp: Changed !PLATFORM(MAC) && !PLATFORM(IOS) to
1127         !PLATFORM(COCOA).
1128         * platform/audio/HRTFElevation.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1129         * platform/audio/MediaSessionManager.cpp: Ditto.
1130         * platform/audio/mac/AudioSessionMac.cpp: Updated comment.
1131         * platform/audio/mac/MediaSessionManagerMac.cpp: Removed PLATFORM(MAC) from Cocoa-only file.
1132         * platform/cf/SharedBufferCF.cpp: Changed !PLATFORM(MAC) to !USE(FOUNDATION) and updated
1133         comment.
1134         * platform/cf/URLCF.cpp: Changed !PLATFORM(MAC) to !USE(FOUNDATION).
1135         * platform/graphics/BitmapImage.h: Changed one instance of PLATFORM(MAC) to
1136         USE(CG) || USE(APPKIT), and another to PLATFORM(COCOA).
1137         * platform/graphics/DisplayRefreshMonitor.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1138         (WebCore::DisplayRefreshMonitor::DisplayRefreshMonitor):
1139         * platform/graphics/DisplayRefreshMonitor.h: Ditto.
1140         * platform/graphics/FloatPoint.h: Collapsed nested #ifs into a single #if.
1141         * platform/graphics/FloatRect.h: Ditto.
1142         * platform/graphics/FloatSize.h: Ditto.
1143         * platform/graphics/Font.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1144         * platform/graphics/Font.h: Ditto.
1145         * platform/graphics/FontCache.cpp: Ditto.
1146         (WebCore::FontCache::getFontData):
1147         * platform/graphics/FontCache.h: Ditto. Also removed redundant friend class declaration.
1148         * platform/graphics/FontGlyphs.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1149         (WebCore::FontGlyphs::glyphDataAndPageForCharacter):
1150         * platform/graphics/GlyphPage.h: Ditto.
1151         * platform/graphics/GraphicsContext3D.h: Ditto.
1152         * platform/graphics/Image.h: Changed PLATFORM(MAC) to USE(APPKIT) around use of NSImage.
1153         Changed another PLATFORM(MAC) to PLATFORM(COCOA).
1154         * platform/graphics/IntRect.h: Collapsed nested #ifs into a single #if.
1155         * platform/graphics/IntSize.h: Ditto.
1156         * platform/graphics/MediaPlayer.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1157         (WebCore::installedMediaEngines):
1158         (WebCore::MediaPlayer::supportsType):
1159         * platform/graphics/SimpleFontData.cpp: Ditto.
1160         (WebCore::SimpleFontData::nonSyntheticItalicFontData):
1161         (WebCore::SimpleFontData::DerivedFontData::~DerivedFontData):
1162         * platform/graphics/SimpleFontData.h: Ditto.
1163         * platform/graphics/TiledBacking.h: Ditto.
1164         * platform/graphics/ca/GraphicsLayerCA.cpp: Ditto.
1165         (WebCore::GraphicsLayerCA::filtersCanBeComposited):
1166         (WebCore::GraphicsLayerCA::createPlatformCALayer):
1167         * platform/graphics/ca/LayerFlushScheduler.h: Ditto.
1168         * platform/graphics/ca/PlatformCAAnimation.h: Ditto.
1169         * platform/graphics/ca/PlatformCAFilters.h: Ditto.
1170         * platform/graphics/ca/PlatformCALayer.h: Ditto.
1171         * platform/graphics/cg/BitmapImageCG.cpp: Ditto.
1172         * platform/graphics/cg/GraphicsContextCG.cpp: Ditto.
1173         (WebCore::GraphicsContext::setAllowsFontSmoothing):
1174         * platform/graphics/cg/GraphicsContextPlatformPrivateCG.h: Ditto.
1175         * platform/graphics/cg/ImageBufferCG.cpp: Ditto.
1176         * platform/graphics/cg/ImageBufferDataCG.h: Ditto.
1177         * platform/graphics/cg/ImageCG.cpp: Ditto.
1178         * platform/graphics/cg/ImageSourceCG.cpp: Ditto.
1179         (WebCore::ImageSource::setData):
1180         * platform/graphics/cg/ImageSourceCG.h: Ditto.
1181         * platform/graphics/cg/PathCG.cpp: Ditto.
1182         (WebCore::Path::platformAddPathForRoundedRect):
1183         * platform/graphics/cg/PatternCG.cpp: Ditto.
1184         * platform/graphics/gpu/DrawingBuffer.h: Ditto.
1185         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1186         (WebCore::MediaPlayerPrivateQTKit::createQTMovieView): Removed PLATFORM(MAC) guards, since
1187         this file is only used on Mac and iOS.
1188         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
1189         (WebCore::Extensions3DOpenGL::supportsExtension): Changed the GL_EXT_draw_buffers check to
1190         match the implementation.
1191         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp: Changed PLATFORM(MAC) to
1192         PLATFORM(COCOA).
1193         * platform/mac/KeyEventMac.mm: Added !PLATFORM(IOS).
1194         * platform/mac/PlatformEventFactoryMac.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1195         * platform/mac/WebCoreSystemInterface.h: Ditto. Removed redundant check for PLATFORM(MAC).
1196         * platform/mac/WebCoreSystemInterface.mm: Removed redundant check for PLATFORM(MAC).
1197         * platform/network/Credential.h: Changed PLATFORM(IOS) || PLATFORM(MAC) to PLATFORM(COCOA).
1198         * platform/network/NetworkStateNotifier.h: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1199         * platform/network/NetworkStorageSession.h: Ditto.
1200         * platform/network/NetworkingContext.h: Ditto.
1201         * platform/network/ProtectionSpace.cpp: Ditto.
1202         (WebCore::ProtectionSpace::receivesCredentialSecurely):
1203         * platform/network/ResourceHandle.cpp: Ditto.
1204         (WebCore::ResourceHandle::clearAuthentication):
1205         (WebCore::ResourceHandle::shouldContentSniffURL):
1206         * platform/network/ResourceHandle.h: Ditto.
1207         * platform/network/ResourceHandleClient.cpp: Ditto.
1208         * platform/network/ResourceHandleClient.h: Ditto.
1209         * platform/network/ResourceHandleInternal.h: Ditto.
1210         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1211         * platform/network/ResourceRequestBase.cpp: Ditto.
1212         * platform/network/cf/AuthenticationCF.h: Ditto.
1213         * platform/network/cf/CookieStorageCFNet.cpp: Ditto.
1214         * platform/network/cf/CredentialStorageCFNet.cpp: Ditto.
1215         * platform/network/cf/FormDataStreamCFNet.cpp: Ditto.
1216         * platform/network/cf/NetworkStorageSessionCFNet.cpp: Ditto.
1217         (WebCore::NetworkStorageSession::switchToNewTestingSession):
1218         (WebCore::NetworkStorageSession::createPrivateBrowsingSession):
1219         * platform/network/cf/ResourceError.h: Ditto.
1220         * platform/network/cf/ResourceHandleCFNet.cpp: Ditto.
1221         (WebCore::ResourceHandle::createCFURLConnection):
1222         * platform/network/cf/ResourceHandleCFURLConnectionDelegate.cpp:
1223         * platform/network/cf/ResourceRequest.h: Ditto.
1224         (WebCore::ResourceRequest::ResourceRequest):
1225         * platform/network/cf/ResourceRequestCFNet.cpp: Ditto.
1226         (WebCore::ResourceRequest::doUpdatePlatformRequest):
1227         (WebCore::ResourceRequest::doUpdatePlatformHTTPBody):
1228         (WebCore::ResourceRequest::setStorageSession):
1229         * platform/network/cf/ResourceResponse.h: Ditto.
1230         * platform/network/cf/SynchronousResourceHandleCFURLConnectionDelegate.cpp:
1231         (WebCore::SynchronousResourceHandleCFURLConnectionDelegate::didReceiveResponse):
1232         * platform/network/mac/ResourceResponseMac.mm: Ditto.
1233         * platform/posix/FileSystemPOSIX.cpp: Changed PLATFORM(MAC) to OS(DARWIN) &&
1234         !PLATFORM(EFL) && !PLATFORM(GTK).
1235         * platform/text/TextBoundaries.cpp: Changed PLATFORM(MAC) to PLATFORM(COCOA).
1236
1237 2014-02-07  Ryosuke Niwa  <rniwa@webkit.org>
1238
1239         Revert r154384 and r154674 as they broke selection rect computations for text with ligatures.
1240
1241         * platform/graphics/Font.cpp:
1242         (WebCore::Font::drawText):
1243         (WebCore::Font::drawEmphasisMarks):
1244         (WebCore::Font::selectionRectForText):
1245         (WebCore::Font::offsetForPosition):
1246         * platform/graphics/FontFastPath.cpp:
1247         (WebCore::Font::getGlyphsAndAdvancesForSimpleText):
1248         (WebCore::Font::selectionRectForSimpleText):
1249         (WebCore::Font::offsetForPositionForSimpleText):
1250         * platform/graphics/GlyphBuffer.h:
1251         * platform/graphics/WidthIterator.cpp:
1252         (WebCore::WidthIterator::WidthIterator):
1253         (WebCore::WidthIterator::advanceInternal):
1254         (WebCore::WidthIterator::advanceOneCharacter):
1255         * platform/graphics/WidthIterator.h:
1256
1257 2014-02-07  Benjamin Poulain  <bpoulain@apple.com>
1258
1259         [WK2] Add support for text document viewport configuration
1260         https://bugs.webkit.org/show_bug.cgi?id=128359
1261
1262         Reviewed by Simon Fraser.
1263
1264         Define a set of ViewportParameters suitable for displaying text documents.
1265         Add a documents class for text document to differentiate them from other type of documents.
1266
1267         * WebCore.exp.in:
1268         * dom/Document.h:
1269         (WebCore::Document::isTextDocument):
1270         * html/TextDocument.cpp:
1271         (WebCore::TextDocument::TextDocument):
1272         * page/ViewportConfiguration.cpp:
1273         (WebCore::ViewportConfiguration::ViewportConfiguration):
1274         (WebCore::ViewportConfiguration::webpageParameters):
1275         (WebCore::ViewportConfiguration::plainTextParameters):
1276         * page/ViewportConfiguration.h:
1277
1278 2014-02-07  Bem Jones-Bey  <bjonesbe@adobe.com>
1279
1280         FloatingObject::unsafeClone should not copy m_originatingLine
1281         https://bugs.webkit.org/show_bug.cgi?id=128381
1282
1283         Reviewed by Andreas Kling.
1284
1285         Copying the originatingLine allows to break the invariant that the
1286         floating object must only contain lines that are owned by the renderer
1287         it is attached to.
1288
1289         * rendering/FloatingObjects.cpp:
1290         (WebCore::FloatingObject::unsafeClone):
1291
1292 2014-02-07  Brendan Long  <b.long@cablelabs.com>
1293
1294         Update TextTrack API to current spec
1295         https://bugs.webkit.org/show_bug.cgi?id=122218
1296
1297         Refactoring VTTCue out of TextTrackCue.
1298
1299         Reviewed by Eric Carlson.
1300
1301         Test: media/track/track-vttcue.html
1302
1303         * CMakeLists.txt: Add VTTCue and rename RenderTextTrackCue to RenderVTTCue.
1304         * DerivedSources.cpp: Same.
1305         * DerivedSources.make: Same.
1306         * GNUmakefile.list.am: Same.
1307         * PlatformGTK.cmake:  Same.
1308         * WebCore.vcxproj/WebCore.vcxproj: Same.
1309         * WebCore.vcxproj/WebCore.vcxproj.filters: Same.
1310         * WebCore.xcodeproj/project.pbxproj: Same.
1311         * bindings/js/JSTextTrackCueCustom.cpp:
1312         (WebCore::toJS): Use VTTCue DOM wrapper for VTTCue and its subclasses.
1313         * html/HTMLMediaElement.cpp:
1314         (WebCore::HTMLMediaElement::updateActiveTextTrackCues): Convert to VTTCue as needed.
1315         (WebCore::HTMLMediaElement::textTrackRemoveCue): Same.
1316         * html/HTMLMediaElement.h: Only print cue.text in debug output if the cue type has a .text attribute
1317         * html/shadow/MediaControlElements.cpp:
1318         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Convert to VTTCue as needed, and fix TextTrackCueBox to VTTCueBox.
1319         (WebCore::MediaControlTextTrackContainerElement::updateTimerFired): Convert to VTTCue as needed.
1320         * html/track/InbandGenericTextTrack.cpp:
1321         (WebCore::InbandGenericTextTrack::addGenericCue): Use refactored VTTCue attributes.
1322         * html/track/InbandWebVTTTextTrack.cpp:
1323         (WebCore::InbandWebVTTTextTrack::newCuesParsed): Use VTTCue's constructor instead of deprecated TextTrackCue constructor.
1324         * html/track/TextTrack.cpp:
1325         (WebCore::TextTrack::setMode): Convert to VTTCue as needed.
1326         (WebCore::TextTrack::hasCue): Make this function only accept VTTCues, since it's only used for them anyway, and convert existing cues to VTTCues as needed.
1327         * html/track/TextTrack.h: Same as hasCue above.
1328         * html/track/TextTrackCue.cpp: Refactor a lot of code out. Everything that was removed went to VTTCue.cpp.
1329         (WebCore::TextTrackCue::create): For backwards compatibility, just call VTTCue::create().
1330         (WebCore::TextTrackCue::TextTrackCue): Refactor a lot of code out.
1331         (WebCore::TextTrackCue::~TextTrackCue): Same.
1332         (WebCore::TextTrackCue::didChange): Same.
1333         (WebCore::TextTrackCue::setIsActive): Same.
1334         * html/track/TextTrackCue.h: Same.
1335         * html/track/TextTrackCue.idl: Remove VTTCue attributes and add custom toJS function.
1336         * html/track/TextTrackCueGeneric.cpp: Use VTTCue instead of TextTrackCue.
1337         * html/track/TextTrackCueGeneric.h: Same.
1338         * html/track/VTTCue.cpp: Copied from Source/WebCore/html/track/TextTrackCue.cpp.
1339         * html/track/VTTCue.h: Copied from Source/WebCore/html/track/TextTrackCue.h.
1340         * html/track/VTTCue.idl: Copied from Source/WebCore/html/track/TextTrackCue.idl.
1341         * loader/TextTrackLoader.cpp:
1342         (WebCore::TextTrackLoader::getNewCues): Use VTTCue instead of TextTrackCue.
1343         * page/CaptionUserPreferencesMediaAF.cpp:
1344         (WebCore::CaptionUserPreferencesMediaAF::captionsStyleSheetOverride): Use VTTCueBox instead of TextTrackCueBox.
1345         * rendering/RenderVTTCue.cpp: Renamed from Source/WebCore/rendering/RenderTextTrackCue.cpp. Changed to use VTTCue instead of TextTrackCue.
1346         * rendering/RenderVTTCue.h: Renamed from Source/WebCore/rendering/RenderTextTrackCue.h. Changed to use VTTCue instead of TextTrackCue.
1347         * rendering/RenderingAllInOne.cpp: Rename RenderTextTrackCue to RenderVTTCue.
1348
1349 2014-02-07  Gavin Barraclough  <barraclough@apple.com>
1350
1351         Should report user input to PageThrottler
1352         https://bugs.webkit.org/show_bug.cgi?id=128398
1353
1354         Reviewed by Tim Horton.
1355
1356         Make sure we wake from AppNap if there is user interaction.
1357
1358         * page/PageThrottler.h:
1359         (WebCore::PageThrottler::didReceiveUserInput):
1360         (WebCore::PageThrottler::pluginDidEvaluate):
1361             - added, these call reportInterestingEvent()
1362
1363 2014-02-07  Jer Noble  <jer.noble@apple.com>
1364
1365         Unreviewed build fix for 32-bit iOS.
1366
1367         Use magic ? values to allow the exported symbol to be different on 32- and 64-bit builds.
1368
1369         * WebCore.exp.in:
1370
1371 2014-02-07  Anders Carlsson  <andersca@apple.com>
1372
1373         Convert ProgressTracker to std::chrono
1374         https://bugs.webkit.org/show_bug.cgi?id=128377
1375
1376         Reviewed by Andreas Kling.
1377
1378         * loader/ProgressTracker.cpp:
1379         (WebCore::ProgressTracker::ProgressTracker):
1380         (WebCore::ProgressTracker::reset):
1381         (WebCore::ProgressTracker::progressStarted):
1382         (WebCore::ProgressTracker::finalProgressComplete):
1383         (WebCore::ProgressTracker::incrementProgress):
1384         * loader/ProgressTracker.h:
1385
1386 2014-02-07  Alexey Proskuryakov  <ap@apple.com>
1387
1388         32-bit build fix.
1389
1390         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1391         (accessibilitySelectTextCriteriaForCriteriaParameterizedAttribute):
1392
1393 2014-02-07  Mihai Tica  <mitica@adobe.com>
1394
1395         [CSS Background Blending] Unprefix the -webkit-background-blend-mode property
1396
1397         https://bugs.webkit.org/show_bug.cgi?id=128270
1398
1399         Reviewed by Dean Jackson.
1400
1401         This patch consist of unprefixing the -webkit-background-blend-mode.
1402         The property now changes to background-blend-mode.
1403
1404         * css/CSSComputedStyleDeclaration.cpp:
1405         (WebCore::ComputedStyleExtractor::propertyValue):
1406         * css/CSSParser.cpp:
1407         (WebCore::CSSParser::parseValue):
1408         (WebCore::CSSParser::parseFillProperty):
1409         * css/CSSPropertyNames.in:
1410         * css/DeprecatedStyleBuilder.cpp:
1411         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1412
1413 2014-02-07  Samuel White  <samuel_white@apple.com>
1414
1415         AX: Find and select text with respect to insertion point using accessibility API.
1416         https://bugs.webkit.org/show_bug.cgi?id=128026
1417
1418         Reviewed by Chris Fleizach.
1419
1420         Added facilities to support semi-ambiguous text selection through the accessibility API. All
1421         requests are handled with respect to the current selection. The requests are disambiguated in
1422         WebCore using passed parameters such as: SelectStringAfterSelection , ..Before.., ..ClosestTo...,
1423         etc. Callers can also supply an array of strings to select and the closest that matches the
1424         disambiguation criteria will be used.
1425
1426         Test: platform/mac/accessibility/select-text.html
1427
1428         * accessibility/AccessibilityObject.cpp:
1429         (WebCore::AccessibilityObject::rangeClosestToRange):
1430         (WebCore::AccessibilityObject::rangeOfStringClosestToRangeInDirection):
1431         (WebCore::AccessibilityObject::selectionRange):
1432         (WebCore::AccessibilityObject::selectText):
1433         (WebCore::AccessibilityObject::frame):
1434         * accessibility/AccessibilityObject.h:
1435         (WebCore::AccessibilitySelectTextCriteria::AccessibilitySelectTextCriteria):
1436         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1437         (accessibilitySelectTextCriteriaForCriteriaParameterizedAttribute):
1438         (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
1439         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1440         * dom/Position.cpp:
1441         (WebCore::Position::positionCountBetweenPositions):
1442         * dom/Position.h:
1443
1444 2014-02-07  Bem Jones-Bey  <bjonesbe@adobe.com>
1445
1446         FloatingObject m_paginationStrut should be LayoutUnit
1447         https://bugs.webkit.org/show_bug.cgi?id=119808
1448
1449         Reviewed by Andreas Kling.
1450
1451         Make the paginationStrut in FloatingObject have the same type as all
1452         of the other paginationStruts in the code.
1453
1454         * rendering/FloatingObjects.h:
1455         (WebCore::FloatingObject::paginationStrut):
1456         (WebCore::FloatingObject::setPaginationStrut):
1457         * rendering/RenderBlockLineLayout.cpp:
1458         (WebCore::RenderBlockFlow::positionNewFloatOnLine):
1459
1460 2014-02-06  Brady Eidson  <beidson@apple.com>
1461
1462         IDB: storage/indexeddb/create-index-with-integer-keys.html fails
1463         <rdar://problem/16002857> and https://bugs.webkit.org/show_bug.cgi?id=128316
1464
1465         Reviewed by Geoff Garen.
1466
1467         Tested by storage/indexeddb/create-index-with-integer-keys.html (and probably some others)
1468
1469         * Modules/indexeddb/IDBCursor.cpp:
1470         (WebCore::IDBCursor::update): Update createIDBKeyFromScriptValueAndKeyPath usage.
1471         (WebCore::IDBCursor::setValueReady): Update createIDBKeyFromScriptValueAndKeyPath usage.
1472
1473         * Modules/indexeddb/IDBObjectStore.cpp:
1474         (WebCore::IDBObjectStore::put): Update usage of binding utilities.
1475
1476         * Modules/indexeddb/IDBRequest.cpp:
1477         (WebCore::IDBRequest::onSuccess): Update createIDBKeyFromScriptValueAndKeyPath usage.
1478
1479         * bindings/js/IDBBindingUtilities.cpp:
1480         (WebCore::internalCreateIDBKeyFromScriptValueAndKeyPath):
1481         (WebCore::createIDBKeyFromScriptValueAndKeyPath): Changed to take an ExecState*.
1482         (WebCore::deserializeIDBValueBuffer): Added new version that starts with ExecState* and Vector<uint8_t>
1483           instead of RequestState and SharedBuffer.
1484         (WebCore::generateIndexKeysForValue): Moved from IDBObjectStore.cpp and changed to take an ExecState*
1485         * bindings/js/IDBBindingUtilities.h:
1486
1487         Added new blob fetcher that works with uint8_t buffers:
1488         * platform/sql/SQLiteStatement.cpp:
1489         (WebCore::SQLiteStatement::getColumnBlobAsVector):
1490         * platform/sql/SQLiteStatement.h:
1491
1492         * WebCore.exp.in:
1493
1494 2014-02-07  Frédéric Wang  <fred.wang@free.fr>
1495
1496         childShouldCreateRenderer should return false for the mspace element
1497         https://bugs.webkit.org/show_bug.cgi?id=128325
1498
1499         Reviewed by Chris Fleizach.
1500
1501         The mspace element can not have children so this makes its
1502         childShouldCreateRenderer always return false.
1503
1504         Test: mathml/presentation/mspace-children.html
1505
1506         * mathml/MathMLTextElement.cpp:
1507         (WebCore::MathMLTextElement::childShouldCreateRenderer):
1508
1509 2014-02-07  Javier Fernandez  <jfernandez@igalia.com>
1510
1511         [CSS Grid Layout] Rename grid-definition-{columns|rows} to match the new syntax
1512         https://bugs.webkit.org/show_bug.cgi?id=127989
1513
1514         Reviewed by Andreas Kling.
1515
1516         In the latest WD, grid-definition-{columns|rows} were renamed to grid-template-{columns|rows}.
1517
1518         * css/CSSComputedStyleDeclaration.cpp:
1519         (WebCore::isLayoutDependent):
1520         (WebCore::ComputedStyleExtractor::propertyValue):
1521         * css/CSSParser.cpp:
1522         (WebCore::CSSParser::parseValue):
1523         * css/CSSPropertyNames.in:
1524         * css/StyleResolver.cpp:
1525         (WebCore::StyleResolver::applyProperty):
1526
1527 2014-02-07  Andreas Kling  <akling@apple.com>
1528
1529         CTTE: DocumentThreadableLoader always has a Document.
1530         <https://webkit.org/b/128364>
1531
1532         DocumentThreadableLoader always has an "owner" Document, so store
1533         that as a reference instead of a pointer. Removed some unnecessary
1534         assertions exposed by this change.
1535
1536         Reviewed by Antti Koivisto.
1537
1538         * loader/DocumentThreadableLoader.cpp:
1539         (WebCore::DocumentThreadableLoader::loadResourceSynchronously):
1540         (WebCore::DocumentThreadableLoader::create):
1541         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
1542         (WebCore::DocumentThreadableLoader::didReceiveResponse):
1543         (WebCore::DocumentThreadableLoader::didReceiveData):
1544         (WebCore::DocumentThreadableLoader::didFinishLoading):
1545         (WebCore::DocumentThreadableLoader::didFail):
1546         (WebCore::DocumentThreadableLoader::preflightFailure):
1547         (WebCore::DocumentThreadableLoader::loadRequest):
1548         (WebCore::DocumentThreadableLoader::securityOrigin):
1549         * loader/DocumentThreadableLoader.h:
1550         * loader/ThreadableLoader.cpp:
1551         (WebCore::ThreadableLoader::create):
1552         (WebCore::ThreadableLoader::loadResourceSynchronously):
1553         * loader/WorkerThreadableLoader.cpp:
1554         (WebCore::WorkerThreadableLoader::MainThreadBridge::mainThreadCreateLoader):
1555
1556 2014-02-07  Peter Molnar  <pmolnar.u-szeged@partner.samsung.com>
1557
1558         Vector-effect updates require a re-layout
1559         https://bugs.webkit.org/show_bug.cgi?id=127553
1560
1561         Reviewed by Andreas Kling.
1562
1563         As noted in the stale SVGRenderStyle::diff() comment, now that layout() observes vector-effect
1564         we need to trigger a re-layout on attribute changes.
1565
1566         Merged from Blink: https://src.chromium.org/viewvc/blink?revision=152570&view=revision
1567
1568         Tests: svg/custom/non-scaling-stroke-update-expected.svg
1569                svg/custom/non-scaling-stroke-update.svg
1570
1571         * rendering/style/SVGRenderStyle.cpp:
1572         (WebCore::SVGRenderStyle::diff):
1573
1574 2014-02-07  Laszlo Vidacs  <lvidacs.u-szeged@partner.samsung.com>
1575
1576         Renaming isTableElement() to isRenderedTable() as per the FIXME comment
1577         https://bugs.webkit.org/show_bug.cgi?id=127769
1578
1579         Reviewed by Andreas Kling.
1580
1581         Rename method and use IsTable() instead of local type checking.
1582
1583         * dom/Position.cpp:
1584         (WebCore::Position::parentAnchoredEquivalent):
1585         (WebCore::Position::upstream):
1586         (WebCore::Position::downstream):
1587         (WebCore::Position::isCandidate):
1588         * dom/PositionIterator.cpp:
1589         (WebCore::PositionIterator::isCandidate):
1590         * editing/CompositeEditCommand.cpp:
1591         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement):
1592         (WebCore::CompositeEditCommand::moveParagraphWithClones):
1593         * editing/FrameSelection.cpp:
1594         (WebCore::caretRendersInsideNode):
1595         * editing/VisibleUnits.cpp:
1596         (WebCore::startOfParagraph):
1597         (WebCore::endOfParagraph):
1598         * editing/htmlediting.cpp:
1599         (WebCore::firstInSpecialElement):
1600         (WebCore::lastInSpecialElement):
1601         (WebCore::isRenderedTable):
1602         * editing/htmlediting.h:
1603         * rendering/RenderBox.cpp:
1604         (WebCore::RenderBox::localCaretRect):
1605
1606 2014-02-06  Brady Eidson  <beidson@apple.com>
1607
1608         IDB: Remove the entirely unnecessary "Value Key" concept
1609         https://bugs.webkit.org/show_bug.cgi?id=128360
1610
1611         Reviewed by Dan Bernstein.
1612
1613         No new tests (No change in behavior)
1614
1615         All cursor operations were set up to pass a value key parameter around, but it was:
1616         1 - Entirely unused
1617         2 - The same thing that the primary key is supposed to be
1618
1619         * Modules/indexeddb/IDBCallbacks.h:
1620
1621         * Modules/indexeddb/IDBCursorBackend.cpp:
1622         (WebCore::IDBCursorBackend::updateCursorData):
1623         (WebCore::IDBCursorBackend::clear):
1624         * Modules/indexeddb/IDBCursorBackend.h:
1625
1626         * Modules/indexeddb/IDBCursorBackendOperations.cpp:
1627         (WebCore::CursorAdvanceOperation::perform):
1628         (WebCore::CursorIterationOperation::perform):
1629
1630         * Modules/indexeddb/IDBRequest.cpp:
1631         (WebCore::IDBRequest::onSuccess):
1632         * Modules/indexeddb/IDBRequest.h:
1633
1634         * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
1635         (WebCore::OpenCursorOperation::perform):
1636
1637         * Modules/indexeddb/IDBServerConnection.h:
1638         * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
1639         (WebCore::IDBServerConnectionLevelDB::openCursor):
1640         (WebCore::IDBServerConnectionLevelDB::cursorAdvance):
1641         (WebCore::IDBServerConnectionLevelDB::cursorIterate):
1642         * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.h:
1643
1644 2014-02-06  Jeremy Jones  <jeremyj@apple.com>
1645
1646         Add support for AVKit fullscreen to WebKit2
1647         https://bugs.webkit.org/show_bug.cgi?id=128143
1648
1649         Reviewed by Simon Fraser.
1650
1651         Rename overloaded functions to prevent ambiguous template parameter
1652         compile error in generated code.
1653
1654         Rename overloaded exitFullscreen to exitFullscreenWithCompletionHandler.
1655         Rename overloaded enterFullscreen to enterFullscreenWithCompletionHandler.
1656
1657         * WebCore.exp.in:
1658         * WebCore.xcodeproj/project.pbxproj:
1659         * platform/ios/WebVideoFullscreenControllerAVKit.mm:
1660         (-[WebVideoFullscreenController exitFullscreen]):
1661         * platform/ios/WebVideoFullscreenInterfaceAVKit.h:
1662         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
1663         (WebVideoFullscreenInterfaceAVKit::enterFullscreenWithCompletionHandler):
1664         (WebVideoFullscreenInterfaceAVKit::enterFullscreen):
1665         (WebVideoFullscreenInterfaceAVKit::exitFullscreenWithCompletionHandler):
1666         (WebVideoFullscreenInterfaceAVKit::exitFullscreen):
1667         * platform/ios/WebVideoFullscreenModelMediaElement.h:
1668
1669 2014-02-06  Jeffrey Pfau  <jpfau@apple.com>
1670
1671         loadSubframe can return null in SubframeLoader::loadOrRedirectSubframe
1672         https://bugs.webkit.org/show_bug.cgi?id=128344
1673
1674         Reviewed by Ryosuke Niwa.
1675
1676         * loader/SubframeLoader.cpp:
1677         (WebCore::SubframeLoader::loadOrRedirectSubframe):
1678
1679 2014-02-06  Andreas Kling  <akling@apple.com>
1680
1681         Use child iterator in HTMLDetailsElement::findMainSummary().
1682         <https://webkit.org/b/128335>
1683
1684         Reviewed by Antti Koivisto.
1685
1686         * html/HTMLDetailsElement.h:
1687         * html/HTMLDetailsElement.cpp:
1688         (WebCore::HTMLDetailsElement::findMainSummary):
1689
1690 2014-02-06  Antti Koivisto  <antti@apple.com>
1691
1692         Add missing &.
1693
1694         * css/StyleInvalidationAnalysis.cpp:
1695         (WebCore::shouldDirtyAllStyle):
1696
1697 2014-02-06  Antti Koivisto  <antti@apple.com>
1698
1699         Check selectors exactly when invalidating style
1700         https://bugs.webkit.org/show_bug.cgi?id=128321
1701
1702         Reviewed by Andreas Kling.
1703         
1704         Selectors are now really fast to match with the JIT. Take advantage of this by invalidating
1705         the document style exactly when a new stylesheet arrives (instead of using heuristics).
1706         
1707         This reduces need for large style recalculations in some common cases.
1708
1709         * css/ElementRuleCollector.cpp:
1710         (WebCore::ElementRuleCollector::clearMatchedRules):
1711         (WebCore::ElementRuleCollector::collectMatchingRulesForList):
1712         * css/ElementRuleCollector.h:
1713         (WebCore::ElementRuleCollector::hasMatchedRules):
1714         * css/RuleSet.h:
1715         (WebCore::RuleSet::hasShadowPseudoElementRules):
1716         * css/SelectorChecker.cpp:
1717         (WebCore::SelectorChecker::matchRecursively):
1718         * css/SelectorChecker.h:
1719         
1720             Add new mode where all pseudo elements match so we can invalidate their element.
1721
1722         * css/StyleInvalidationAnalysis.cpp:
1723         (WebCore::shouldDirtyAllStyle):
1724         (WebCore::StyleInvalidationAnalysis::StyleInvalidationAnalysis):
1725         (WebCore::invalidateStyleRecursively):
1726         (WebCore::StyleInvalidationAnalysis::invalidateStyle):
1727         
1728             Switch to real selector checker.
1729
1730         * css/StyleInvalidationAnalysis.h:
1731         * css/StyleResolver.cpp:
1732         (WebCore::StyleResolver::MatchedProperties::~MatchedProperties):
1733         * css/StyleResolver.h:
1734         (WebCore::StyleResolver::mediaQueryEvaluator):
1735         * dom/DocumentStyleSheetCollection.cpp:
1736         (WebCore::DocumentStyleSheetCollection::analyzeStyleSheetChange):
1737
1738 2014-02-06  Gavin Barraclough  <barraclough@apple.com>
1739
1740         Remove ChildProcess::m_activeTasks
1741         https://bugs.webkit.org/show_bug.cgi?id=128342
1742
1743         Reviewed by Anders Carlson.
1744
1745         Currently we funnel a number of different user activities
1746         to a single UserActivity object, which requires a call down
1747         from WebCore to WebKit2. Split these out so we can track
1748         them separately.
1749
1750         * page/ChromeClient.h:
1751             - removed [inc|dec]rementActivePageCount
1752         * page/PageThrottler.cpp:
1753         (WebCore::PageThrottler::PageThrottler):
1754             - incrementActivePageCount -> beginActivity
1755         (WebCore::PageThrottler::~PageThrottler):
1756             - decrementActivePageCount -> endActivity
1757         (WebCore::PageThrottler::throttlePage):
1758             - decrementActivePageCount -> endActivity
1759         (WebCore::PageThrottler::unthrottlePage):
1760             - incrementActivePageCount -> beginActivity
1761         * page/PageThrottler.h:
1762             - Added m_pageActivity.
1763
1764 2014-02-06  Commit Queue  <commit-queue@webkit.org>
1765
1766         Unreviewed, rolling out r163558.
1767         http://trac.webkit.org/changeset/163558
1768         https://bugs.webkit.org/show_bug.cgi?id=128350
1769
1770         Breaks scrolling on certain websites (Requested by bfulgham on
1771         #webkit).
1772
1773         * page/EventHandler.cpp:
1774         (WebCore::EventHandler::handleWheelEvent):
1775         * page/WheelEventDeltaTracker.h:
1776
1777 2014-02-06  Chris Fleizach  <cfleizach@apple.com>
1778
1779         AX: Crash in WebCore::AXObjectCache::computedObjectAttributeCache
1780         https://bugs.webkit.org/show_bug.cgi?id=128310
1781
1782         Reviewed by Alexey Proskuryakov.
1783
1784         Be more careful about using axObjectCache() directly since it can return null.
1785         I audited the usage cases of this method and ensured the ptr was not null in cases
1786         where I thought we might get hit by this.
1787
1788         * accessibility/AccessibilityNodeObject.cpp:
1789         (WebCore::AccessibilityNodeObject::parentObject):
1790         (WebCore::AccessibilityNodeObject::menuForMenuButton):
1791         (WebCore::AccessibilityNodeObject::menuButtonForMenu):
1792         * accessibility/AccessibilityObject.cpp:
1793         (WebCore::AccessibilityObject::firstAccessibleObjectFromNode):
1794         (WebCore::AccessibilityObject::findMatchingObjects):
1795         (WebCore::AccessibilityObject::elementAccessibilityHitTest):
1796         (WebCore::AccessibilityObject::axObjectCache):
1797         (WebCore::AccessibilityObject::notifyIfIgnoredValueChanged):
1798         (WebCore::AccessibilityObject::accessibilityIsIgnored):
1799         * accessibility/AccessibilityRenderObject.cpp:
1800         (WebCore::AccessibilityRenderObject::parentObjectIfExists):
1801         (WebCore::AccessibilityRenderObject::parentObject):
1802         (WebCore::AccessibilityRenderObject::anchorElement):
1803         (WebCore::AccessibilityRenderObject::isTabItemSelected):
1804         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
1805         (WebCore::AccessibilityRenderObject::nodeIsTextControl):
1806         (WebCore::AccessibilityRenderObject::activeDescendant):
1807         (WebCore::AccessibilityRenderObject::handleAriaExpandedChanged):
1808         (WebCore::AccessibilityRenderObject::observableObject):
1809         (WebCore::AccessibilityRenderObject::textChanged):
1810         * accessibility/AccessibilityScrollView.cpp:
1811         (WebCore::AccessibilityScrollView::addChildScrollbar):
1812         (WebCore::AccessibilityScrollView::webAreaObject):
1813         (WebCore::AccessibilityScrollView::parentObject):
1814         (WebCore::AccessibilityScrollView::parentObjectIfExists):
1815
1816 2014-02-06  Zoltan Horvath  <zoltan@webkit.org>
1817
1818         [CSS Shapes] Rounded Insets Let Content Overlap Shape
1819         https://bugs.webkit.org/show_bug.cgi?id=127852
1820
1821         Reviewed by Bem Jones-Bey.
1822
1823         Using LengthSize to FloatSize conversion from LengthSize.h lead to miscalculated
1824         inset border radius, when the border radius was defined by percentages. This patch
1825         fixes the behavior and removes the incorrect conversion.
1826
1827         Test: fast/shapes/shape-outside-floats/shape-outside-rounded-inset.html
1828
1829         * css/LengthFunctions.cpp:
1830         (WebCore::floatSizeForLengthSize): Add new helper function for LengthSize to FloatSize conversion.
1831         * css/LengthFunctions.h:
1832         * platform/LengthSize.h: Remove floatSize conversion.
1833         * rendering/shapes/Shape.cpp:
1834         (WebCore::Shape::createShape): Use new helper function to calculate the right with for the inset border radius.
1835
1836 2014-02-06  Joseph Pecoraro  <pecoraro@apple.com>
1837
1838         Regenerate JSTestObj now that ScriptArguments moved. Generator knows what to do.
1839
1840         Rubber-stamped by Zalan Bujtas.
1841
1842         * bindings/scripts/test/JS/JSTestObj.cpp:
1843         (WebCore::jsTestObjPrototypeFunctionWithScriptArgumentsAndCallStack):
1844
1845 2014-02-04  Jeffrey Pfau  <jpfau@apple.com>
1846
1847         Make adoption agency use the task queue
1848         https://bugs.webkit.org/show_bug.cgi?id=109445
1849
1850         Reviewed by Ryosuke Niwa.
1851
1852         Tests: fast/parser/adoption-agency-crash-01.html
1853                fast/parser/adoption-agency-crash-02.html
1854                fast/parser/adoption-agency-crash-03.html
1855
1856         * html/parser/HTMLConstructionSite.cpp:
1857         (WebCore::insert):
1858         (WebCore::executeInsertTask):
1859         (WebCore::executeReparentTask):
1860         (WebCore::executeInsertAlreadyParsedChildTask):
1861         (WebCore::executeTakeAllChildrenTask):
1862         (WebCore::executeTask):
1863         (WebCore::HTMLConstructionSite::attachLater):
1864         (WebCore::HTMLConstructionSite::executeQueuedTasks):
1865         (WebCore::HTMLConstructionSite::insertTextNode):
1866         (WebCore::HTMLConstructionSite::reparent):
1867         (WebCore::HTMLConstructionSite::insertAlreadyParsedChild):
1868         (WebCore::HTMLConstructionSite::takeAllChildren):
1869         (WebCore::HTMLConstructionSite::fosterParent):
1870         * html/parser/HTMLConstructionSite.h:
1871         (WebCore::HTMLConstructionSiteTask::HTMLConstructionSiteTask):
1872         (WebCore::HTMLConstructionSiteTask::oldParent):
1873         * html/parser/HTMLTreeBuilder.cpp:
1874         (WebCore::HTMLTreeBuilder::callTheAdoptionAgency):
1875
1876 2014-02-06  Mark Hahnenberg  <mhahnenberg@apple.com>
1877
1878         Heap::writeBarrier shouldn't be static
1879         https://bugs.webkit.org/show_bug.cgi?id=127807
1880
1881         Reviewed by Geoffrey Garen.
1882
1883         Currently it looks up the Heap in which to fire the write barrier by using 
1884         the cell passed to it. Almost every call site already has a reference to the 
1885         VM or the Heap itself. It seems wasteful to look it up all over again.
1886
1887         * bindings/js/JSEventListener.cpp:
1888         (WebCore::JSEventListener::JSEventListener):
1889         * bindings/js/JSEventListener.h:
1890         (WebCore::JSEventListener::jsFunction):
1891
1892 2014-02-06  Jaehun Lim  <ljaehun.lim@samsung.com>
1893
1894         Unreviewed, fix build error on 64bit debug build
1895
1896         Apply static_cast<long long> to int64_t variable when '%lli' is used.
1897
1898         * Modules/indexeddb/IDBDatabaseBackend.cpp:
1899         (WebCore::IDBDatabaseBackend::clearObjectStore):
1900         * Modules/indexeddb/IDBTransaction.cpp:
1901         (WebCore::IDBTransaction::setActive):
1902
1903 2014-02-06  Joseph Pecoraro  <pecoraro@apple.com>
1904
1905         Web Inspector: Add Console support to JSContext Inspection
1906         https://bugs.webkit.org/show_bug.cgi?id=127941
1907
1908         Reviewed by Geoffrey Garen.
1909
1910           - Move InspectorConsoleAgent and dependencies to JavaScriptCore
1911             and into the Inspector namespace.
1912           - Update Console Message enum types to enum classes and update
1913             all users to the new, simpler names.
1914           - Since we are updating addConsoleMessage callsites anyways, add
1915             ASCIILiteral where appropriate.
1916           - Add WebConsoleAgent base of Page/Worker ConsoleAgent to implement
1917             what could not be pushed into JavaScriptCore.
1918
1919         * CMakeLists.txt:
1920         * DerivedSources.make:
1921         * ForwardingHeaders/inspector/ConsoleMessage.h: Added.
1922         * ForwardingHeaders/inspector/ConsoleTypes.h: Added.
1923         * ForwardingHeaders/inspector/IdentifiersFactory.h: Added.
1924         * ForwardingHeaders/inspector/ScriptArguments.h: Added.
1925         * ForwardingHeaders/inspector/ScriptCallFrame.h: Added.
1926         * ForwardingHeaders/inspector/ScriptCallStack.h: Added.
1927         * ForwardingHeaders/inspector/ScriptCallStackFactory.h: Added.
1928         * ForwardingHeaders/inspector/agents/InspectorConsoleAgent.h: Added.
1929         * GNUmakefile.am:
1930         * GNUmakefile.list.am:
1931         Add / remove files from builds.
1932
1933         * inspector/WebConsoleAgent.h:
1934         * inspector/WebConsoleAgent.cpp: Added.
1935         (WebCore::WebConsoleAgent::WebConsoleAgent):
1936         (WebCore::WebConsoleAgent::setMonitoringXHREnabled):
1937         (WebCore::WebConsoleAgent::frameWindowDiscarded):
1938         (WebCore::WebConsoleAgent::didFinishXHRLoading):
1939         (WebCore::WebConsoleAgent::didReceiveResponse):
1940         (WebCore::WebConsoleAgent::didFailLoading):
1941         (WebCore::WebConsoleAgent::addInspectedHeapObject):
1942         Implement what could not be pushed down into JavaScriptCore.
1943
1944         * inspector/InstrumentingAgents.h:
1945         (WebCore::InstrumentingAgents::webConsoleAgent):
1946         (WebCore::InstrumentingAgents::setWebConsoleAgent):
1947         Hold a WebConsoleAgent instead of InspectorConsoleAgent.
1948
1949         * Modules/indexeddb/IDBCursor.cpp:
1950         * Modules/indexeddb/IDBDatabase.cpp:
1951         * Modules/indexeddb/IDBTransaction.cpp:
1952         * Modules/quota/DOMWindowQuota.cpp:
1953         (WebCore::DOMWindowQuota::webkitStorageInfo):
1954         * Modules/webaudio/AudioBufferSourceNode.cpp:
1955         (WebCore::AudioBufferSourceNode::looping):
1956         (WebCore::AudioBufferSourceNode::setLooping):
1957         * Modules/webaudio/AudioContext.cpp:
1958         * Modules/webaudio/PannerNode.cpp:
1959         (WebCore::PannerNode::setPanningModel):
1960         * Modules/webdatabase/DatabaseBase.cpp:
1961         (WebCore::DatabaseBase::logErrorMessage):
1962         * Modules/webdatabase/DatabaseManager.cpp:
1963         (WebCore::DatabaseManager::logErrorMessage):
1964         * Modules/websockets/WebSocket.cpp:
1965         (WebCore::WebSocket::connect):
1966         (WebCore::WebSocket::send):
1967         (WebCore::WebSocket::close):
1968         (WebCore::WebSocket::setBinaryType):
1969         * Modules/websockets/WebSocketChannel.cpp:
1970         (WebCore::WebSocketChannel::fail):
1971         (WebCore::WebSocketChannel::didFailSocketStream):
1972         * Modules/websockets/WebSocketHandshake.cpp:
1973         * WebCore.exp.in:
1974         * WebCore.vcxproj/WebCore.vcxproj:
1975         * WebCore.vcxproj/WebCore.vcxproj.filters:
1976         * WebCore.xcodeproj/project.pbxproj:
1977         * bindings/js/JSAudioContextCustom.cpp:
1978         (WebCore::JSAudioContextConstructor::constructJSAudioContext):
1979         * bindings/js/JSCustomXPathNSResolver.cpp:
1980         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1981         * bindings/js/JSDOMBinding.cpp:
1982         * bindings/js/JSSubtleCryptoCustom.cpp:
1983         (WebCore::JSSubtleCrypto::encrypt):
1984         (WebCore::JSSubtleCrypto::decrypt):
1985         (WebCore::JSSubtleCrypto::sign):
1986         (WebCore::JSSubtleCrypto::verify):
1987         (WebCore::JSSubtleCrypto::wrapKey):
1988         (WebCore::JSSubtleCrypto::unwrapKey):
1989         * bindings/js/ScriptController.cpp:
1990         (WebCore::ScriptController::canExecuteScripts):
1991         * bindings/scripts/CodeGeneratorJS.pm:
1992         (GenerateCallWith):
1993         * bindings/scripts/test/JS/JSTestObj.cpp:
1994         * css/CSSParser.cpp:
1995         (WebCore::CSSParser::logError):
1996         * css/MediaList.cpp:
1997         (WebCore::addResolutionWarningMessageToConsole):
1998         * dom/Document.cpp:
1999         (WebCore::Document::logExceptionToConsole):
2000         (WebCore::Document::processHttpEquiv):
2001         (WebCore::Document::addMessage):
2002         * dom/Document.h:
2003         * dom/ScriptElement.cpp:
2004         (WebCore::ScriptElement::executeScript):
2005         (WebCore::ScriptElement::notifyFinished):
2006         * dom/ScriptExecutionContext.cpp:
2007         * dom/ScriptExecutionContext.h:
2008         * dom/ViewportArguments.cpp:
2009         (WebCore::viewportErrorMessageLevel):
2010         (WebCore::reportViewportWarning):
2011         * fileapi/Blob.cpp:
2012         * fileapi/WebKitBlobBuilder.cpp:
2013         * html/HTMLFormControlElement.cpp:
2014         (WebCore::shouldAutofocus):
2015         * html/HTMLFormElement.cpp:
2016         (WebCore::HTMLFormElement::validateInteractively):
2017         * html/HTMLIFrameElement.cpp:
2018         (WebCore::HTMLIFrameElement::parseAttribute):
2019         * html/HTMLMediaElement.cpp:
2020         (WebCore::HTMLMediaElement::parseAttribute):
2021         * html/canvas/CanvasRenderingContext2D.cpp:
2022         (WebCore::CanvasRenderingContext2D::getImageData):
2023         * html/canvas/WebGLRenderingContext.cpp:
2024         (WebCore::WebGLRenderingContext::printWarningToConsole):
2025         * html/parser/XSSAuditor.cpp:
2026         (WebCore::XSSAuditor::init):
2027         * html/parser/XSSAuditorDelegate.cpp:
2028         (WebCore::XSSAuditorDelegate::didBlockScript):
2029         * inspector/CommandLineAPIHost.cpp:
2030         * inspector/CommandLineAPIHost.h:
2031         (WebCore::CommandLineAPIHost::init):
2032         * inspector/InspectorAllInOne.cpp:
2033         * inspector/InspectorConsoleAgent.h: Removed.
2034         * inspector/InspectorConsoleInstrumentation.h:
2035         (WebCore::InspectorInstrumentation::addMessageToConsole):
2036         (WebCore::InspectorInstrumentation::consoleCount):
2037         (WebCore::InspectorInstrumentation::stopConsoleTiming):
2038         (WebCore::InspectorInstrumentation::consoleTimeStamp):
2039         (WebCore::InspectorInstrumentation::addProfile):
2040         * inspector/InspectorController.cpp:
2041         (WebCore::InspectorController::InspectorController):
2042         * inspector/InspectorDOMAgent.cpp:
2043         * inspector/InspectorFrontendHost.h:
2044         * inspector/InspectorInstrumentation.cpp:
2045         (WebCore::InspectorInstrumentation::frameWindowDiscardedImpl):
2046         (WebCore::InspectorInstrumentation::didReceiveResourceResponseImpl):
2047         (WebCore::InspectorInstrumentation::didFailLoadingImpl):
2048         (WebCore::InspectorInstrumentation::didFinishXHRLoadingImpl):
2049         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2050         (WebCore::isConsoleAssertMessage):
2051         (WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
2052         (WebCore::InspectorInstrumentation::consoleCountImpl):
2053         (WebCore::InspectorInstrumentation::startConsoleTimingImpl):
2054         (WebCore::InspectorInstrumentation::stopConsoleTimingImpl):
2055         (WebCore::InspectorInstrumentation::consoleAgentEnabled):
2056         * inspector/InspectorInstrumentation.h:
2057         * inspector/InspectorLayerTreeAgent.cpp:
2058         * inspector/InspectorPageAgent.cpp:
2059         * inspector/InspectorProfilerAgent.cpp:
2060         (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
2061         (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
2062         * inspector/InspectorProfilerAgent.h:
2063         * inspector/InspectorResourceAgent.cpp:
2064         (WebCore::InspectorResourceAgent::buildInitiatorObject):
2065         * inspector/InspectorTimelineAgent.cpp:
2066         * inspector/InstrumentingAgents.cpp:
2067         (WebCore::InstrumentingAgents::InstrumentingAgents):
2068         (WebCore::InstrumentingAgents::reset):
2069         * inspector/PageConsoleAgent.cpp:
2070         (WebCore::PageConsoleAgent::PageConsoleAgent):
2071         (WebCore::PageConsoleAgent::clearMessages):
2072         (WebCore::PageConsoleAgent::addInspectedNode):
2073         * inspector/PageConsoleAgent.h:
2074         * inspector/PageDebuggerAgent.cpp:
2075         (WebCore::PageDebuggerAgent::breakpointActionLog):
2076         * inspector/PageInjectedScriptHost.h:
2077         * inspector/PageInjectedScriptManager.h:
2078         * inspector/TimelineRecordFactory.cpp:
2079         (WebCore::TimelineRecordFactory::createGenericRecord):
2080         (WebCore::WebConsoleAgent::~WebConsoleAgent):
2081         * inspector/WorkerConsoleAgent.cpp:
2082         (WebCore::WorkerConsoleAgent::WorkerConsoleAgent):
2083         (WebCore::WorkerConsoleAgent::addInspectedNode):
2084         * inspector/WorkerConsoleAgent.h:
2085         * inspector/WorkerDebuggerAgent.cpp:
2086         (WebCore::WorkerDebuggerAgent::breakpointActionLog):
2087         * inspector/WorkerInspectorController.cpp:
2088         (WebCore::WorkerInspectorController::WorkerInspectorController):
2089         * loader/DocumentLoader.cpp:
2090         (WebCore::DocumentLoader::responseReceived):
2091         * loader/FrameLoader.cpp:
2092         (WebCore::FrameLoader::submitForm):
2093         (WebCore::FrameLoader::reportLocalLoadFailed):
2094         (WebCore::FrameLoader::handleBeforeUnloadEvent):
2095         (WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions):
2096         (WebCore::createWindow):
2097         * loader/ImageLoader.cpp:
2098         (WebCore::ImageLoader::notifyFinished):
2099         * loader/MixedContentChecker.cpp:
2100         (WebCore::MixedContentChecker::logWarning):
2101         * loader/TextTrackLoader.cpp:
2102         (WebCore::TextTrackLoader::corsPolicyPreventedLoad):
2103         * loader/appcache/ApplicationCacheGroup.cpp:
2104         (WebCore::ApplicationCacheGroup::abort):
2105         (WebCore::ApplicationCacheGroup::didReceiveResponse):
2106         (WebCore::ApplicationCacheGroup::didFinishLoading):
2107         (WebCore::ApplicationCacheGroup::didFail):
2108         (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
2109         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
2110         (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
2111         * loader/cache/CachedResourceLoader.cpp:
2112         (WebCore::CachedResourceLoader::printAccessDeniedMessage):
2113         * page/ChromeClient.h:
2114         * page/Console.cpp:
2115         (WebCore::internalAddMessage):
2116         (WebCore::Console::debug):
2117         (WebCore::Console::error):
2118         (WebCore::Console::log):
2119         (WebCore::Console::warn):
2120         (WebCore::Console::dir):
2121         (WebCore::Console::dirxml):
2122         (WebCore::Console::table):
2123         (WebCore::Console::clear):
2124         (WebCore::Console::trace):
2125         (WebCore::Console::assertCondition):
2126         (WebCore::Console::group):
2127         (WebCore::Console::groupCollapsed):
2128         (WebCore::Console::groupEnd):
2129         * page/Console.h:
2130         * page/ConsoleTypes.h: Removed.
2131         * page/ContentSecurityPolicy.cpp:
2132         (WebCore::ContentSecurityPolicy::reportViolation):
2133         (WebCore::ContentSecurityPolicy::logToConsole):
2134         * page/DOMSecurityPolicy.cpp:
2135         * page/DOMWindow.cpp:
2136         (WebCore::DOMWindow::postMessage):
2137         (WebCore::DOMWindow::dispatchMessageEventWithOriginCheck):
2138         (WebCore::DOMWindow::close):
2139         (WebCore::DOMWindow::printErrorMessage):
2140         * page/DOMWindow.h:
2141         * page/EventSource.cpp:
2142         (WebCore::EventSource::didReceiveResponse):
2143         (WebCore::EventSource::didFailAccessControlCheck):
2144         * page/PageConsole.cpp:
2145         (WebCore::PageConsole::printMessageSourceAndLevelPrefix):
2146         (WebCore::PageConsole::addMessage):
2147         * page/PageConsole.h:
2148         * page/PointerLockController.cpp:
2149         (WebCore::PointerLockController::requestPointerLock):
2150         * platform/CrossThreadCopier.h:
2151         * rendering/shapes/ShapeInfo.cpp:
2152         (WebCore::checkShapeImageOrigin):
2153         * svg/SVGDocumentExtensions.cpp:
2154         (WebCore::reportMessage):
2155         (WebCore::SVGDocumentExtensions::reportWarning):
2156         (WebCore::SVGDocumentExtensions::reportError):
2157         * testing/Internals.cpp:
2158         (WebCore::Internals::consoleMessageArgumentCounts):
2159         * workers/DefaultSharedWorkerRepository.cpp:
2160         * workers/SharedWorkerGlobalScope.cpp:
2161         (WebCore::SharedWorkerGlobalScope::logExceptionToConsole):
2162         * workers/SharedWorkerGlobalScope.h:
2163         * workers/WorkerGlobalScope.cpp:
2164         (WebCore::WorkerGlobalScope::addMessageToWorkerConsole):
2165         * workers/WorkerGlobalScope.h:
2166         * workers/WorkerMessagingProxy.cpp:
2167         * workers/WorkerReportingProxy.h:
2168         * xml/XMLHttpRequest.cpp:
2169         (WebCore::logConsoleError):
2170         (WebCore::XMLHttpRequest::send):
2171         * xml/XSLTProcessorLibxslt.cpp:
2172         (WebCore::XSLTProcessor::parseErrorFunc):
2173
2174 2014-02-06  Joseph Pecoraro  <pecoraro@apple.com>
2175
2176         Convert a parameter to PassRefPtr
2177         https://bugs.webkit.org/show_bug.cgi?id=128327
2178
2179         Reviewed by Timothy Hatcher.
2180
2181         * inspector/InspectorConsoleInstrumentation.h:
2182         (WebCore::InspectorInstrumentation::addProfile):
2183         * inspector/InspectorInstrumentation.h:
2184
2185 2014-01-30  Oliver Hunt  <oliver@apple.com>
2186
2187         Push DOM attributes into the prototype chain
2188         https://bugs.webkit.org/show_bug.cgi?id=127969
2189
2190         Reviewed by Mark Lam.
2191
2192         This patch does the actual work of moving dom attributes up the
2193         prototype chain. There are still a few class and edge cases
2194         where we can't do this without impacting existing behaviour,
2195         but they can be fixed separately in later patches.
2196
2197         * bindings/js/JSDOMBinding.h:
2198         (WebCore::getStaticPropertySlotEntryWithoutCaching):
2199         (WebCore::getStaticPropertySlotEntryWithoutCaching<JSDOMWrapper>):
2200         * bindings/scripts/CodeGeneratorJS.pm:
2201         (GenerateGetOwnPropertySlotBody):
2202         (HasComplexGetOwnProperty):
2203         (ConstructorShouldBeOnInstance):
2204         (AttributeShouldBeOnInstance):
2205         (InstanceAttributeCount):
2206         (PrototypeAttributeCount):
2207         (InstanceOverridesGetOwnPropertySlot):
2208         (PrototypeOverridesGetOwnPropertySlot):
2209         (GenerateAttributesHashTable):
2210         (GenerateImplementation):
2211
2212 2014-02-06  Andreas Kling  <akling@apple.com>
2213
2214         Remove display:run-in support.
2215         <https://webkit.org/b/127874>
2216         <rdar://problem/15926949>
2217
2218         Remove support for the "run-in" display type. Blink recently removed
2219         this and Gecko never supported in the first place.
2220
2221         Rubber-stamped by Anders Carlsson.
2222
2223         * css/CSSParser.cpp:
2224         (WebCore::isValidKeywordPropertyAndValue):
2225         * css/CSSPrimitiveValueMappings.h:
2226         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2227         * css/CSSValueKeywords.in:
2228         * css/StyleResolver.cpp:
2229         (WebCore::equivalentBlockDisplay):
2230         (WebCore::doesNotInheritTextDecoration):
2231         * rendering/RenderBlock.cpp:
2232         (WebCore::RenderBlock::willBeDestroyed):
2233         (WebCore::RenderBlock::addChildIgnoringAnonymousColumnBlocks):
2234         (WebCore::RenderBlock::makeChildrenNonInline):
2235         (WebCore::canMergeContiguousAnonymousBlocks):
2236         (WebCore::RenderBlock::renderName):
2237         * rendering/RenderBlock.h:
2238         * rendering/RenderBlockFlow.cpp:
2239         (WebCore::RenderBlockFlow::willBeDestroyed):
2240         (WebCore::shouldCheckLines):
2241         (WebCore::getHeightForLineCount):
2242         * rendering/RenderElement.cpp:
2243         (WebCore::RenderElement::createFor):
2244         (WebCore::RenderElement::destroyLeftoverChildren):
2245         * rendering/RenderFileUploadControl.cpp:
2246         * rendering/RenderFileUploadControl.h:
2247         * rendering/RenderInline.cpp:
2248         (WebCore::RenderInline::updateFromStyle):
2249         (WebCore::RenderInline::renderName):
2250         (WebCore::RenderInline::clippedOverflowRectForRepaint):
2251         * rendering/RenderListBox.cpp:
2252         * rendering/RenderListBox.h:
2253         * rendering/RenderMenuList.cpp:
2254         * rendering/RenderMenuList.h:
2255         * rendering/RenderObject.cpp:
2256         * rendering/RenderObject.h:
2257         * rendering/RenderProgress.cpp:
2258         * rendering/RenderProgress.h:
2259         * rendering/RenderSlider.cpp:
2260         * rendering/RenderSlider.h:
2261         * rendering/RenderTextControl.cpp:
2262         * rendering/RenderTextControl.h:
2263         * rendering/RenderTheme.cpp:
2264         (WebCore::RenderTheme::adjustStyle):
2265         * rendering/style/RenderStyleConstants.h:
2266
2267 2014-02-06  Andreas Kling  <akling@apple.com>
2268
2269         Remove leftover cruft from scoped stylesheet implementation.
2270         <https://webkit.org/b/128139>
2271
2272         Kill some pointless non-null checks that were left behind by the
2273         removed <style scoped> code. Also pruned outdated comments and
2274         FIXME's about such scopes.
2275
2276         Reviewed by Antti Koivisto.
2277
2278         * css/ElementRuleCollector.cpp:
2279         (WebCore::ElementRuleCollector::collectMatchingRules):
2280         * css/RuleSet.cpp:
2281         (WebCore::RuleSet::addChildRules):
2282         (WebCore::RuleSet::addRulesFromSheet):
2283         * css/RuleSet.h:
2284         * css/StyleResolver.cpp:
2285         (WebCore::StyleResolver::checkRegionStyle):
2286
2287 2014-02-05  Brent Fulgham  <bfulgham@apple.com>
2288
2289         Wheel events don't latch to inner scrollable elements 
2290         https://bugs.webkit.org/show_bug.cgi?id=128225
2291
2292         Reviewed by Beth Dakin.
2293
2294         * page/EventHandler.cpp:
2295         (WebCore::EventHandler::handleWheelEvent): Identify the case
2296         where we have hit the end of a scroll, and treat that as a
2297         valid 'handled' case. If the scroll event is just starting,
2298         treat end-of-scroll as unhandled so the parent element can
2299         handle things.
2300         * page/WheelEventDeltaTracker.h:
2301         (WebCore::WheelEventDeltaTracker::isFirstWheelEvent): Added.
2302
2303 2014-02-06  Commit Queue  <commit-queue@webkit.org>
2304
2305         Unreviewed, rolling out r163542.
2306         http://trac.webkit.org/changeset/163542
2307         https://bugs.webkit.org/show_bug.cgi?id=128324
2308
2309         Caused many assertion failures (Requested by ap on #webkit).
2310
2311         * bindings/js/JSEventListener.cpp:
2312         (WebCore::JSEventListener::JSEventListener):
2313         * bindings/js/JSEventListener.h:
2314         (WebCore::JSEventListener::jsFunction):
2315
2316 2014-02-06  Frédéric Wang  <fred.wang@free.fr>
2317
2318         Do not draw multi-characters <mi> in italic.
2319         https://bugs.webkit.org/show_bug.cgi?id=44208
2320
2321         Reviewed by Chris Fleizach.
2322
2323         This test prevents multi-char <mi> to be drawn in italic and prepare
2324         further improvements to MathML token and mfenced elements (bugs 124838
2325         and bug 99620).
2326
2327         Test: mathml/presentation/tokenElements-dynamic.html
2328
2329         * CMakeLists.txt:
2330         * GNUmakefile.list.am:
2331         * WebCore.vcxproj/WebCore.vcxproj:
2332         * WebCore.vcxproj/WebCore.vcxproj.filters:
2333         * WebCore.xcodeproj/project.pbxproj:
2334         * css/mathml.css:
2335         (mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose):
2336         * mathml/MathMLTextElement.cpp:
2337         (WebCore::MathMLTextElement::didAttachRenderers):
2338         (WebCore::MathMLTextElement::childrenChanged):
2339         (WebCore::MathMLTextElement::createElementRenderer):
2340         * rendering/RenderObject.h:
2341         (WebCore::RenderObject::isRenderMathMLToken):
2342         * rendering/mathml/RenderMathMLToken.cpp: Added.
2343         (WebCore::RenderMathMLToken::RenderMathMLToken):
2344         (WebCore::RenderMathMLToken::addChild):
2345         (WebCore::RenderMathMLToken::createWrapperIfNeeded):
2346         (WebCore::RenderMathMLToken::updateTokenContent):
2347         (WebCore::RenderMathMLToken::updateStyle):
2348         (WebCore::RenderMathMLToken::styleDidChange):
2349         (WebCore::RenderMathMLToken::updateFromElement):
2350         * rendering/mathml/RenderMathMLToken.h: Added.
2351         (WebCore::RenderMathMLToken::element):
2352         (WebCore::RenderMathMLToken>):
2353
2354 2014-02-06  Zoltan Horvath  <zoltan@webkit.org>
2355
2356         [CSS Shapes] Simplify BasicShapeInset creation
2357         https://bugs.webkit.org/show_bug.cgi?id=128314
2358
2359         Reviewed by David Hyatt.
2360
2361         Introduce convertToLengthSize helper function in order to simplify and make BasicShapeInset more readable.
2362
2363         No new tests, no behavior change.
2364
2365         * css/BasicShapeFunctions.cpp:
2366         (WebCore::convertToLengthSize):
2367         (WebCore::basicShapeForValue):
2368
2369 2014-02-06  Anders Carlsson  <andersca@apple.com>
2370
2371         Try to fix the Windows build.
2372
2373         * loader/DocumentThreadableLoader.cpp:
2374         (WebCore::DocumentThreadableLoader::didReceiveResponse):
2375
2376 2014-01-29  Sergio Villar Senin  <svillar@igalia.com>
2377
2378         [CSS Grid Layout] getComputedStyle() is wrong for grid-definition-{columns|rows}
2379         https://bugs.webkit.org/show_bug.cgi?id=127033
2380
2381         Reviewed by Andreas Kling.
2382
2383         Tests: fast/css-grid-layout/non-grid-columns-rows-get-set-multiple.html
2384                fast/css-grid-layout/non-grid-columns-rows-get-set.html
2385                fast/css-grid-layout/non-grid-element-repeat-get-set.html
2386                fast/css-grid-layout/non-named-grid-line-get-set.html
2387
2388         According to the specs getComputedStyle() should return the used
2389         values instead of the resolved values for compatibility with early
2390         implementations. This means that grid-definition-{columns|rows}
2391         are now layout dependent as we need to compute the used values for
2392         grid track sizes.
2393
2394         Updated the outcome of existing tests and added a bunch of new
2395         ones that check the behavior of the different properties outside
2396         grid containers.
2397
2398         * css/CSSComputedStyleDeclaration.cpp:
2399         (WebCore::specifiedValueForGridTrackSize):
2400         (WebCore::valueForGridTrackList):
2401         (WebCore::isLayoutDependent):
2402         (WebCore::ComputedStyleExtractor::propertyValue):
2403         * rendering/RenderGrid.cpp:
2404         (WebCore::RenderGrid::GridIterator::GridIterator):
2405         (WebCore::RenderGrid::computedUsedBreadthOfGridTracks):
2406         (WebCore::RenderGrid::computeUsedBreadthOfMinLength):
2407         (WebCore::RenderGrid::computeUsedBreadthOfMaxLength):
2408         (WebCore::RenderGrid::computeUsedBreadthOfSpecifiedLength):
2409         (WebCore::RenderGrid::computeNormalizedFractionBreadth):
2410         (WebCore::RenderGrid::gridTrackSize):
2411         (WebCore::RenderGrid::minContentForChild):
2412         (WebCore::RenderGrid::maxContentForChild):
2413         (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctions):
2414         (WebCore::RenderGrid::resolveContentBasedTrackSizingFunctionsForItems):
2415         (WebCore::RenderGrid::tracksAreWiderThanMinTrackBreadth):
2416         (WebCore::RenderGrid::growGrid):
2417         (WebCore::RenderGrid::autoPlacementMajorAxisDirection):
2418         (WebCore::RenderGrid::autoPlacementMinorAxisDirection):
2419         (WebCore::RenderGrid::layoutGridItems):
2420         (WebCore::RenderGrid::resolveGridPositionsFromAutoPlacementPosition):
2421         (WebCore::RenderGrid::resolveGridPositionsFromStyle):
2422         (WebCore::RenderGrid::gridAreaBreadthForChild):
2423         (WebCore::RenderGrid::populateGridPositions):
2424         (WebCore::RenderGrid::findChildLogicalPosition):
2425         * rendering/RenderGrid.h:
2426
2427 2014-02-06  Anders Carlsson  <andersca@apple.com>
2428
2429         Modernize CrossOriginPreflightResultCache
2430         https://bugs.webkit.org/show_bug.cgi?id=128309
2431
2432         Reviewed by Antti Koivisto.
2433
2434         Use std::chrono::steady_clock instead of currentTime() for determining when
2435         cache items expire, Use std::unique_ptr instead of OwnPtr, use NeverDestroyed,
2436         get rid of unnecessary container typedefs now that we have auto. Finally,
2437         de-indent the entire class declaration.
2438
2439         * loader/CrossOriginPreflightResultCache.cpp:
2440         (WebCore::CrossOriginPreflightResultCache::CrossOriginPreflightResultCache):
2441         (WebCore::parseAccessControlMaxAge):
2442         (WebCore::CrossOriginPreflightResultCacheItem::parse):
2443         (WebCore::CrossOriginPreflightResultCacheItem::allowsRequest):
2444         (WebCore::CrossOriginPreflightResultCache::shared):
2445         (WebCore::CrossOriginPreflightResultCache::appendEntry):
2446         (WebCore::CrossOriginPreflightResultCache::canSkipPreflight):
2447         * loader/CrossOriginPreflightResultCache.h:
2448         (WebCore::CrossOriginPreflightResultCacheItem::CrossOriginPreflightResultCacheItem):
2449         * loader/DocumentThreadableLoader.cpp:
2450         (WebCore::DocumentThreadableLoader::didReceiveResponse):
2451
2452 2014-02-06  Gurpreet Kaur  <k.gurpreet@samsung.com>
2453
2454         Menclose with no notation attribute does not display anything.
2455         https://bugs.webkit.org/show_bug.cgi?id=127889
2456
2457         Reviewed by Chris Fleizach.
2458
2459         Menclose with no notation attribute should behave same as menclose with
2460         notation attribute with value as longdiv. By default the division
2461         symbol should be displayed. For empty and invalid notation attribute
2462         nothing should be displayed.
2463
2464         Tests: mathml/presentation/menclose-notation-default-longdiv.html
2465                mathml/presentation/menclose-notation-invalid-empty.html
2466
2467         * mathml/MathMLMencloseElement.h:
2468         * rendering/mathml/RenderMathMLMenclose.cpp:
2469         (WebCore::RenderMathMLMenclose::computePreferredLogicalWidths):
2470         (WebCore::RenderMathMLMenclose::paint):
2471         Added style for menclose with no notation attribute and handled this
2472         condition in paint also where for longdiv we are explicitly drawing
2473         the division symbol.
2474
2475 2014-02-05  Mark Hahnenberg  <mhahnenberg@apple.com>
2476
2477         Heap::writeBarrier shouldn't be static
2478         https://bugs.webkit.org/show_bug.cgi?id=127807
2479
2480         Reviewed by Geoffrey Garen.
2481
2482         Currently it looks up the Heap in which to fire the write barrier by using 
2483         the cell passed to it. Almost every call site already has a reference to the 
2484         VM or the Heap itself. It seems wasteful to look it up all over again.
2485
2486         * bindings/js/JSEventListener.cpp:
2487         (WebCore::JSEventListener::JSEventListener):
2488         * bindings/js/JSEventListener.h:
2489         (WebCore::JSEventListener::jsFunction):
2490
2491 2014-02-06  Brady Eidson  <beidson@apple.com>
2492
2493         IDB: storage/indexeddb/mozilla/clear.html fails
2494         <rdar://problem/15997155> and https://bugs.webkit.org/show_bug.cgi?id=128282
2495
2496         Reviewed by David Kilzer.
2497
2498         Covered by storage/indexeddb/mozilla/clear.html (and probably others)
2499
2500         Update the value deserializer to take into account whether or not there was an IDBKey:
2501         * bindings/js/IDBBindingUtilities.cpp:
2502         (WebCore::deserializeIDBValueBuffer):
2503         * bindings/js/IDBBindingUtilities.h:
2504
2505         * Modules/indexeddb/IDBRequest.cpp:
2506         (WebCore::IDBRequest::onSuccess): Call the new form of deserializeIDBValueBuffer.
2507
2508         * Modules/indexeddb/IDBDatabaseBackend.cpp:
2509         (WebCore::IDBDatabaseBackend::clearObjectStore): Update logging.
2510
2511         * Modules/indexeddb/IDBTransaction.cpp:
2512         (WebCore::IDBTransaction::setActive): Update logging.
2513
2514         * Modules/indexeddb/IDBTransactionBackend.cpp:
2515         (WebCore::IDBTransactionBackend::commit): Fix ASSERTs to reflect multi-process worlds.
2516
2517 2014-02-06  Csaba Osztrogonác  <ossy@webkit.org>
2518
2519         Re-enable simple line layout on non-Mac platforms
2520         https://bugs.webkit.org/show_bug.cgi?id=123338
2521
2522         Reviewed by Anders Carlsson.
2523
2524         * rendering/SimpleLineLayout.cpp:
2525         (WebCore::SimpleLineLayout::canUseFor):
2526
2527 2014-02-06  Koop Mast <kwm@FreeBSD.org>
2528
2529         Use system default compiler instead of gcc, as final fall through.
2530         https://bugs.webkit.org/show_bug.cgi?id=126773
2531
2532         Reviewed by Alexey Proskuryakov.
2533
2534         * dom/make_names.pl:
2535
2536 2014-02-06  Eric Carlson  <eric.carlson@apple.com>
2537
2538         No need to enterFullscreen() when already in fullscreen
2539         https://bugs.webkit.org/show_bug.cgi?id=128276
2540
2541         Reviewed by Jer Noble.
2542
2543         No new tests, this is just cleanup.
2544
2545         * html/HTMLMediaElement.cpp:
2546         (WebCore::HTMLMediaElement::updatePlayState): Don't call enterFullscreen() if already there.
2547         (WebCore::HTMLMediaElement::enterFullscreen): Return early if m_isFullscreen is already true.
2548
2549 2014-02-06  Radu Stavila  <stavila@adobe.com>
2550
2551         [CSS Regions] Null dereference applying animation with CSS regions
2552         https://bugs.webkit.org/show_bug.cgi?id=128218
2553
2554         Reviewed by Andrei Bucur.
2555
2556         The first issue (the null dereference) was caused by the checkForZoomChange method
2557         not guarding against a null parentStyle parameter, as the checkForGenericFamilyChange 
2558         method does, which in the crashing scenario is called just before the faulty
2559         checkForZoomChange method.
2560         The second issue was an assert which was caused by the fact that detaching is performed
2561         in a certain situation if the element has a renderer or if it's inside a named flow.
2562         However, when reattaching and asserting the element has no renderer, the 
2563         "inside named flow" condition was no longer considered.
2564
2565         Test: fast/regions/animation-element-in-region-flowed-to-other-thread.html
2566
2567         * css/StyleResolver.cpp:
2568         (WebCore::StyleResolver::checkForZoomChange):
2569         * style/StyleResolveTree.cpp:
2570         (WebCore::Style::attachChildren):
2571
2572 2014-02-06  László Langó  <llango.u-szeged@partner.samsung.com>
2573
2574         Create a HTMLUnknownElement when using createElement('image')
2575         https://bugs.webkit.org/show_bug.cgi?id=125896
2576
2577         Reviewed by Antti Koivisto.
2578
2579         Backported from Blink: https://chromium.googlesource.com/chromium/blink/+/fd8a7b65f3300fb9245db24d5ed240c80b7f76ad
2580
2581         * html/HTMLTagNames.in:
2582
2583 2014-02-06  Youenn Fablet  <youennf@gmail.com>
2584
2585         [XHR] Ensure response return null when error flag is set for blob and arraybuffer
2586         https://bugs.webkit.org/show_bug.cgi?id=127050
2587
2588         Reviewed by Alexey Proskuryakov.
2589
2590         Added a check in JSXMLHttpRequest::response to ensure response return null when error flag is set for blob and arraybuffer
2591         This check also applies to document and json response types (no change in behavior for those types but code path change)
2592         Added assertions in the related XMLHttpRequest blob and array buffer getters
2593         Minor code clean-up.
2594         The test cases check all four response types in case of timeout and abort
2595
2596         Tests: http/tests/xmlhttprequest/onabort-response-getters.html
2597                http/tests/xmlhttprequest/ontimeout-response-getters.html
2598
2599         * bindings/js/JSXMLHttpRequestCustom.cpp:
2600         (WebCore::JSXMLHttpRequest::response):
2601         * xml/XMLHttpRequest.cpp:
2602         (WebCore::XMLHttpRequest::didCacheResponseJSON):
2603         (WebCore::XMLHttpRequest::responseXML):
2604         (WebCore::XMLHttpRequest::responseBlob):
2605         (WebCore::XMLHttpRequest::responseArrayBuffer):
2606
2607 2014-02-05  Gavin Barraclough  <barraclough@apple.com>
2608
2609         Change Page, FocusController to use ViewState
2610         https://bugs.webkit.org/show_bug.cgi?id=126533
2611
2612         Reviewed by Tim Horton.
2613
2614         These classes currently maintain a set of separate fields to represent the view state;
2615         combine these into a single field, and allow WebPage to send the combined update rather
2616         than individual changes.
2617
2618         Maintain existing interface for WebKit1 clients.
2619
2620         * WebCore.exp.in:
2621             - Added WebCore::setViewState, removed WebCore::setIsVisuallyIdle.
2622         * page/FocusController.cpp:
2623         (WebCore::FocusController::FocusController):
2624             - Initialize combined m_viewState.
2625         (WebCore::FocusController::setFocused):
2626             - Calls setViewState.
2627         (WebCore::FocusController::setFocusedInternal):
2628             - setFocused -> setFocusedInternal.
2629         (WebCore::FocusController::setViewState):
2630             - Added, update all ViewState flags.
2631         (WebCore::FocusController::setActive):
2632             - Calls setViewState.
2633         (WebCore::FocusController::setActiveInternal):
2634             - setActive -> setActiveInternal.
2635         (WebCore::FocusController::setContentIsVisible):
2636             - Calls setViewState.
2637         (WebCore::FocusController::setContentIsVisibleInternal):
2638             - setContentIsVisible -> setContentIsVisibleInternal.
2639         * page/FocusController.h:
2640         (WebCore::FocusController::isActive):
2641         (WebCore::FocusController::isFocused):
2642         (WebCore::FocusController::contentIsVisible):
2643             - Implemented in terms of ViewState.
2644         * page/Page.cpp:
2645         (WebCore::Page::Page):
2646             - Initialize using PageInitialViewState.
2647         (WebCore::Page::setIsInWindow):
2648             - Calls setViewState.
2649         (WebCore::Page::setIsInWindowInternal):
2650             - setIsInWindow -> setIsInWindowInternal.
2651         (WebCore::Page::setIsVisuallyIdleInternal):
2652             - setIsVisuallyIdle -> setIsVisuallyIdleInternal.
2653         (WebCore::Page::setViewState):
2654             - Added, update all ViewState flags, including FocusController.
2655         (WebCore::Page::setIsVisible):
2656             - Calls setViewState.
2657         (WebCore::Page::setIsVisibleInternal):
2658             - setIsVisible -> setIsVisibleInternal.
2659         (WebCore::Page::visibilityState):
2660             - m_isVisible -> isVisible()
2661         (WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):
2662             - m_isVisible -> isVisible()
2663         * page/Page.h:
2664         (WebCore::Page::isVisible):
2665         (WebCore::Page::isInWindow):
2666             - Implemented in terms of ViewState.
2667         (WebCore::Page::scriptedAnimationsSuspended):
2668             - Combined member fields into ViewState::Flags.
2669
2670 2014-02-05  Simon Fraser  <simon.fraser@apple.com>
2671
2672         Transfer the non-fast-scrollable region to the UI process for iOS
2673         https://bugs.webkit.org/show_bug.cgi?id=128293
2674
2675         Reviewed by Benjamin Poulain.
2676
2677         Two main changes to support sending the non-fast scrollable region
2678         to the UI process for iOS:
2679         
2680         1. Add ScrollingCoordinator::frameViewNonFastScrollableRegionChanged(),
2681         which is called when we've updated the touch event region (this can happen
2682         independenly of layout). When called we just scheduled a scrolling tree
2683         commit with the new region.
2684         
2685         2. Avoid thinking that we have a new root node with every remote scrolling
2686         transaction. This was a side-effect of reconstructing the scrolling state
2687         tree in the UI process, and caused us to try to grab a nonFastScrollableRegion
2688         from a node which never had one set.
2689
2690         * WebCore.exp.in:
2691         * page/scrolling/AsyncScrollingCoordinator.cpp:
2692         (WebCore::AsyncScrollingCoordinator::frameViewNonFastScrollableRegionChanged):
2693         * page/scrolling/AsyncScrollingCoordinator.h:
2694         * page/scrolling/ScrollingCoordinator.cpp:
2695         (WebCore::ScrollingCoordinator::computeNonFastScrollableRegion):
2696         * page/scrolling/ScrollingCoordinator.h:
2697         (WebCore::ScrollingCoordinator::frameViewNonFastScrollableRegionChanged):
2698         * page/scrolling/ScrollingStateTree.h:
2699         (WebCore::ScrollingStateTree::setHasNewRootStateNode):
2700         * page/scrolling/ScrollingTree.cpp:
2701         (WebCore::ScrollingTree::commitNewTreeState):
2702         (WebCore::ScrollingTree::isPointInNonFastScrollableRegion):
2703         * page/scrolling/ScrollingTree.h:
2704
2705 2014-02-05  Benjamin Poulain  <benjamin@webkit.org>
2706
2707         [iOS] Synchronize the WKContentView and UIScrollView updates with the tiles being commited
2708         https://bugs.webkit.org/show_bug.cgi?id=127886
2709
2710         Reviewed by Simon Fraser.
2711
2712         The updates of the views on the UIProcess side was completely disconnected
2713         from the tiles updates from the DrawingArea. There is a non-negligible time
2714         between the size/scale update and the new tiles coming, which causes
2715         visual glitches.
2716
2717         There are three main cases where the tiles and content would be out of sync
2718         with the UIViews:
2719         -When loading a new page with different content width of a different viewport.
2720         -When a page changes its viewport.
2721         -When the viewport-constrainted viewport size changes.
2722
2723         To fix the issue, WKView is modified to maintain the old state of WKContentView
2724         and UIScrollView until the new tiles are available.
2725
2726         Geometry/scale update are split in two phases:
2727         1) A source (the page or the user) changes parameters of the geometry. The WebProcess updates
2728            its layout accordingly.
2729            At this point, the UIViews are unchanged and are left with the old parameters.
2730         2) Eventually, new tiles come and commitLayerTree() is called on the drawing area proxy.
2731            At that point, WKContentView and its UIScrollView are updated to match the committed
2732            size and scale for the page.
2733
2734         * WebCore.exp.in:
2735         * WebCore.xcodeproj/project.pbxproj:
2736         * page/ViewportConfiguration.cpp: Added.
2737         (WebCore::constraintsAreAllRelative):
2738         (WebCore::ViewportConfiguration::ViewportConfiguration):
2739         (WebCore::ViewportConfiguration::setDefaultConfiguration):
2740         (WebCore::ViewportConfiguration::setContentsSize):
2741         (WebCore::ViewportConfiguration::setMinimumLayoutSize):
2742         (WebCore::ViewportConfiguration::setViewportArguments):
2743         (WebCore::ViewportConfiguration::layoutSize):
2744         (WebCore::ViewportConfiguration::initialScale):
2745         (WebCore::ViewportConfiguration::minimumScale):
2746         (WebCore::ViewportConfiguration::maximumScale):
2747         (WebCore::ViewportConfiguration::allowsUserScaling):
2748         (WebCore::viewportArgumentValueIsValid):
2749         (WebCore::applyViewportArgument):
2750         (WebCore::ViewportConfiguration::updateConfiguration):
2751         (WebCore::ViewportConfiguration::layoutWidth):
2752         (WebCore::ViewportConfiguration::layoutHeight):
2753         * page/ViewportConfiguration.h: Added.
2754         (WebCore::ViewportConfigurationConfiguration::ViewportConfigurationConfiguration):
2755         (WebCore::ViewportConfiguration::defaultConfiguration):
2756         (WebCore::ViewportConfiguration::contentsSize):
2757         (WebCore::ViewportConfiguration::minimumLayoutSize):
2758         (WebCore::ViewportConfiguration::viewportArguments):
2759
2760 2014-02-05  Benjamin Poulain  <benjamin@webkit.org>
2761
2762         SelectorCodeGenerator::generateElementHasTagName should match the local name before the namespace
2763         https://bugs.webkit.org/show_bug.cgi?id=128167
2764
2765         Reviewed by Sam Weinig.
2766
2767         The local name is a stricter filter than the namespace, it should always run first.
2768
2769         * cssjit/SelectorCompiler.cpp:
2770         (WebCore::SelectorCompiler::SelectorCodeGenerator::generateElementHasTagName):
2771
2772 2014-02-05  Benjamin Poulain  <benjamin@webkit.org>
2773
2774         Add HTMLNames::classAttr as a regular name in SVGElement::isAnimatableAttribute
2775         https://bugs.webkit.org/show_bug.cgi?id=128166
2776
2777         Reviewed by Sam Weinig.
2778
2779         For historical reasons, classAttr was treated separately. There is no reasons for that anymore.
2780
2781         * svg/SVGElement.cpp:
2782         (WebCore::SVGElement::isAnimatableAttribute):
2783
2784 2014-02-05  Simon Fraser  <simon.fraser@apple.com>
2785
2786         Support encoding and decoding of Regions
2787         https://bugs.webkit.org/show_bug.cgi?id=128284
2788
2789         Reviewed by Anders Carlsson.
2790
2791         Region changes to make it encodable:
2792         
2793         Make Region::Span public and give it a default constructor.
2794         Allow getting and setting of Shape internals, and a way to update
2795         the Region bounds after changing the shape. Also add a way to test
2796         for valid spans and segments.
2797
2798         * platform/graphics/Region.cpp:
2799         (WebCore::Region::Shape::isValid):
2800         (WebCore::Region::updateBoundsFromShape):
2801         * platform/graphics/Region.h:
2802         (WebCore::Region::isValid):
2803         (WebCore::Region::Span::Span):
2804         (WebCore::Region::shapeSegments):
2805         (WebCore::Region::shapeSpans):
2806         (WebCore::Region::setShapeSegments):
2807         (WebCore::Region::setShapeSpans):
2808         (WebCore::Region::Shape::segments):
2809         (WebCore::Region::Shape::spans):
2810         (WebCore::Region::Shape::setSegments):
2811         (WebCore::Region::Shape::setSpans):
2812
2813 2014-02-05  Andreas Kling  <akling@apple.com>
2814
2815         Rebaseline the bindings tests after Oliver's hackery.
2816
2817         * bindings/scripts/test/JS/:
2818
2819 2014-02-05  Ryuan Choi  <ryuan.choi@samsung.com>
2820
2821         [EFL][GTK] Share plugin's implementation between EFL and Gtk ports.
2822         https://bugs.webkit.org/show_bug.cgi?id=70592
2823
2824         Reviewed by Gyuyoung Kim.
2825
2826         Merge common logics of PluginViewGtk.cpp and PluginViewEfl.cpp to PluginViewX11.cpp.
2827         So, this patch improves the windowless plugin support for the EFL port.
2828
2829         * GNUmakefile.am: Add include path for gtk2xtbin.h header file.
2830         * GNUmakefile.list.am: Added PluginViewX11.cpp into source lists.
2831         * PlatformEfl.cmake: Ditto.
2832         * PlatformGTK.cmake: Ditto.
2833         * plugins/PluginView.h: Added getRootWindow and getPluginDisply which implement platform specific code.
2834         * plugins/efl/PluginViewEfl.cpp:
2835         (WebCore::PluginView::getRootWindow):
2836         (WebCore::PluginView::platformGetValueStatic): Turn on NPNVSupportsWindowless support.
2837         (WebCore::PluginView::getPluginDisplay):
2838         (WebCore::PluginView::platformStart):
2839         * plugins/gtk/PluginViewGtk.cpp:
2840         (WebCore::PluginView::getRootWindow):
2841         (WebCore::setXButtonEventSpecificFields):
2842         (WebCore::setXMotionEventSpecificFields):
2843         (WebCore::setXCrossingEventSpecificFields):
2844         (WebCore::PluginView::getPluginDisplay):
2845         (WebCore::PluginView::platformStart):
2846         * plugins/x11/PluginViewX11.cpp: Moved common logics from PluginViewGtk.cpp
2847         (WebCore::PluginView::dispatchNPEvent):
2848         (WebCore::PluginView::updatePluginWidget):
2849         (WebCore::PluginView::handleFocusInEvent):
2850         (WebCore::PluginView::invalidateRect):
2851         (WebCore::PluginView::invalidateRegion):
2852         (WebCore::PluginView::handleFocusOutEvent):
2853         (WebCore::PluginView::initXEvent):
2854         (WebCore::PluginView::paint):
2855         (WebCore::PluginView::setParent):
2856         (WebCore::PluginView::setNPWindowRect):
2857         (WebCore::PluginView::setNPWindowIfNeeded):
2858
2859 2014-02-05  Anders Carlsson  <andersca@apple.com>
2860
2861         Fix a warning.
2862
2863         * platform/mac/ContentFilterMac.mm:
2864         (WebCore::ContentFilter::ContentFilter):
2865         Remove an unnecessary comparison.
2866
2867 2014-02-05  Csaba Osztrogonác  <ossy@webkit.org>
2868
2869         Fix the !ENABLE(PAGE_VISIBILITY_API) build
2870         https://bugs.webkit.org/show_bug.cgi?id=127907
2871
2872         Reviewed by Brent Fulgham.
2873
2874         * page/Page.cpp:
2875         (WebCore::Page::setIsVisible):
2876
2877 2014-02-05  Oliver Hunt  <oliver@apple.com>
2878
2879         Change custom getter signature to make the base reference an object pointer
2880         https://bugs.webkit.org/show_bug.cgi?id=128279
2881
2882         Reviewed by Geoffrey Garen.
2883
2884         Update everything to the new calling convention.
2885
2886         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
2887         (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
2888         (WebCore::cssPropertyGetterCallback):
2889         * bindings/js/JSDOMBinding.cpp:
2890         (WebCore::objectToStringFunctionGetter):
2891         * bindings/js/JSDOMBinding.h:
2892         * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
2893         (WebCore::JSDOMMimeTypeArray::nameGetter):
2894         * bindings/js/JSDOMPluginArrayCustom.cpp:
2895         (WebCore::JSDOMPluginArray::nameGetter):
2896         * bindings/js/JSDOMPluginCustom.cpp:
2897         (WebCore::JSDOMPlugin::nameGetter):
2898         * bindings/js/JSDOMWindowCustom.cpp:
2899         (WebCore::nonCachingStaticFunctionGetter):
2900         (WebCore::childFrameGetter):
2901         (WebCore::indexGetter):
2902         (WebCore::namedItemGetter):
2903         * bindings/js/JSHTMLAllCollectionCustom.cpp:
2904         (WebCore::JSHTMLAllCollection::nameGetter):
2905         * bindings/js/JSHTMLCollectionCustom.cpp:
2906         (WebCore::JSHTMLCollection::nameGetter):
2907         * bindings/js/JSHTMLDocumentCustom.cpp:
2908         (WebCore::JSHTMLDocument::nameGetter):
2909         * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
2910         (WebCore::JSHTMLFormControlsCollection::nameGetter):
2911         * bindings/js/JSHTMLFormElementCustom.cpp:
2912         (WebCore::JSHTMLFormElement::nameGetter):
2913         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
2914         (WebCore::JSHTMLFrameSetElement::nameGetter):
2915         * bindings/js/JSHistoryCustom.cpp:
2916         (WebCore::nonCachingStaticBackFunctionGetter):
2917         (WebCore::nonCachingStaticForwardFunctionGetter):
2918         (WebCore::nonCachingStaticGoFunctionGetter):
2919         * bindings/js/JSLocationCustom.cpp:
2920         (WebCore::nonCachingStaticReplaceFunctionGetter):
2921         (WebCore::nonCachingStaticReloadFunctionGetter):
2922         (WebCore::nonCachingStaticAssignFunctionGetter):
2923         * bindings/js/JSNamedNodeMapCustom.cpp:
2924         (WebCore::JSNamedNodeMap::nameGetter):
2925         * bindings/js/JSPluginElementFunctions.cpp:
2926         (WebCore::pluginElementPropertyGetter):
2927         * bindings/js/JSPluginElementFunctions.h:
2928         * bindings/js/JSRTCStatsResponseCustom.cpp:
2929         (WebCore::JSRTCStatsResponse::nameGetter):
2930         * bindings/js/JSStorageCustom.cpp:
2931         (WebCore::JSStorage::nameGetter):
2932         * bindings/js/JSStyleSheetListCustom.cpp:
2933         (WebCore::JSStyleSheetList::nameGetter):
2934         * bindings/scripts/CodeGeneratorJS.pm:
2935         (GenerateHeader):
2936         (GenerateImplementation):
2937         * bridge/runtime_array.cpp:
2938         (JSC::RuntimeArray::lengthGetter):
2939         (JSC::RuntimeArray::indexGetter):
2940         * bridge/runtime_array.h:
2941         * bridge/runtime_method.cpp:
2942         (JSC::RuntimeMethod::lengthGetter):
2943         * bridge/runtime_method.h:
2944         * bridge/runtime_object.cpp:
2945         (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
2946         (JSC::Bindings::RuntimeObject::fieldGetter):
2947         (JSC::Bindings::RuntimeObject::methodGetter):
2948         * bridge/runtime_object.h:
2949
2950 2014-02-04  Andy Estes  <aestes@apple.com>
2951
2952         Buffer incoming data in ContentFilter when using NEFilterSource
2953         https://bugs.webkit.org/show_bug.cgi?id=127979
2954
2955         Reviewed by Sam Weinig.
2956
2957         WebFilterEvaluator buffers incoming data and returns it to us as
2958         replacement data if the load is allowed. NEFilterSource doesn't do
2959         this, so we need to do our own buffering.
2960
2961         * platform/ContentFilter.h: Forward-declared NSMutableData and added
2962         m_originalData.
2963         * platform/mac/ContentFilterMac.mm:
2964         (WebCore::ContentFilter::ContentFilter): Constructed m_originalData
2965         with an initial capacity (if we know the expected content size).
2966         (WebCore::ContentFilter::addData): Buffered incoming data if we are
2967         using NEFilterSource.
2968         (WebCore::ContentFilter::finishedAddingData):
2969         (WebCore::ContentFilter::getReplacementData): Returned m_originalData
2970         if the load wasn't blocked.
2971
2972 2014-02-05  Andreas Kling  <akling@apple.com>
2973
2974         Remove ENABLE(DIRECTORY_UPLOAD).
2975         <https://webkit.org/b/128275>
2976
2977         This is a non-standard Chrome extension that none of the WebKit
2978         ports have even been building.
2979
2980         Rubber-stamped by Ryosuke Niwa.
2981
2982         * Configurations/FeatureDefines.xcconfig:
2983         * fileapi/File.cpp:
2984         * fileapi/File.h:
2985         * fileapi/File.idl:
2986         * html/FileInputType.cpp:
2987         (WebCore::FileInputType::handleDOMActivateEvent):
2988         (WebCore::FileInputType::createFileList):
2989         (WebCore::FileInputType::receiveDroppedFiles):
2990         * html/FileInputType.h:
2991         * html/HTMLAttributeNames.in:
2992         * html/HTMLInputElement.cpp:
2993         (WebCore::HTMLInputElement::parseAttribute):
2994         * html/HTMLInputElement.idl:
2995         * loader/EmptyClients.h:
2996         * page/Chrome.cpp:
2997         * page/Chrome.h:
2998         * page/ChromeClient.h:
2999         * platform/FileChooser.h:
3000         * platform/network/FormData.cpp:
3001         (WebCore::FormData::appendKeyValuePairItems):
3002
3003 2014-02-05  Brady Eidson  <beidson@apple.com>
3004
3005         IDB: storage/indexeddb/mozilla/autoincrement-indexes.html fails
3006         https://bugs.webkit.org/show_bug.cgi?id=128257
3007
3008         Reviewed by Sam Weinig.
3009
3010         Tests: storage/indexeddb/mozilla/autoincrement-indexes.html
3011
3012         Add some IDBKeyData utility methods for WK2 to use:
3013         * Modules/indexeddb/IDBKeyData.cpp:
3014         (WebCore::IDBKeyData::setArrayValue):
3015         (WebCore::IDBKeyData::setStringValue):
3016         (WebCore::IDBKeyData::setDateValue):
3017         (WebCore::IDBKeyData::setNumberValue):
3018         * Modules/indexeddb/IDBKeyData.h:
3019
3020         * WebCore.exp.in:
3021
3022 2014-02-05  Andreas Kling  <akling@apple.com>
3023
3024         Turn on ENABLE(8BIT_TEXTRUN) for everyone.
3025         <https://webkit.org/b/128273>
3026
3027         Reviewed by Anders Carlsson.
3028
3029         * platform/graphics/TextRun.h:
3030         (WebCore::TextRun::TextRun):
3031         (WebCore::TextRun::subRun):
3032         * rendering/RenderBlock.cpp:
3033         (WebCore::RenderBlock::constructTextRun):
3034         * rendering/RenderBlock.h:
3035
3036 2014-02-05  Enrica Casucci  <enrica@apple.com>
3037
3038         WK2: Caret, selections and autocorrection bubbles are incorrectly positioned when inside an iframe.
3039         https://bugs.webkit.org/show_bug.cgi?id=128264
3040         <rdar://problem/15986954>
3041
3042         Reviewed by Simon Fraser.
3043
3044         Adding new exported function.
3045
3046         * WebCore.exp.in:
3047
3048 2014-02-05  Antti Koivisto  <antti@apple.com>
3049
3050         ElementRuleCollector should not use StyleResolver::State
3051         https://bugs.webkit.org/show_bug.cgi?id=128247
3052
3053         Reviewed by Andreas Kling.
3054         
3055         Make ElementRuleCollector more reusable.
3056
3057         * css/ElementRuleCollector.cpp:
3058         (WebCore::ElementRuleCollector::collectMatchingRules):
3059         (WebCore::ElementRuleCollector::sortAndTransferMatchedRules):
3060         (WebCore::ElementRuleCollector::matchAuthorRules):
3061         (WebCore::ElementRuleCollector::matchUARules):
3062         (WebCore::ElementRuleCollector::ruleMatches):
3063         (WebCore::ElementRuleCollector::collectMatchingRulesForList):
3064         (WebCore::ElementRuleCollector::matchAllRules):
3065         * css/ElementRuleCollector.h:
3066         (WebCore::ElementRuleCollector::ElementRuleCollector):
3067         
3068             Pass the objects that are actually needed rather than the entire State.
3069
3070 2014-02-05  Brent Fulgham  <bfulgham@apple.com>
3071
3072         [Mac] Correct copy/paste error in scrolling code.
3073         https://bugs.webkit.org/show_bug.cgi?id=128258
3074
3075         Reviewed by Anders Carlsson.
3076
3077         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
3078         (WebCore::ScrollingTreeScrollingNodeMac::pinnedInDirection): Use
3079         'setWidth' when dealing with width metrics.
3080
3081 2014-02-05  Yuki Sekiguchi  <yuki.sekiguchi@access-company.com>
3082
3083         Ruby base oddly justify its text when the text is ideograph and it contains <br> on Mac.
3084         https://bugs.webkit.org/show_bug.cgi?id=106417
3085
3086         Reviewed by David Hyatt.
3087
3088         Ruby base always justify even if a line have hard break.
3089         Even if next leaf child is line break, InlineTextBox allow trailing expansion.
3090         This make <br> expanded, and there is odd space at the end of the line.
3091
3092         Test: fast/text/ruby-justification-br.html
3093
3094         * rendering/InlineTextBox.h:
3095         (WebCore::InlineTextBox::expansionBehavior):
3096          - If next leaf child is line break, we should forbid trailing expansion.
3097
3098 2014-02-05  Andreas Kling  <akling@apple.com>
3099
3100         FrameLoader::stateMachine() should return a reference.
3101         <https://webkit.org/b/128263>
3102
3103         There is always a FrameLoaderStateMatchine, so return it by
3104         reference since it can never be null.
3105
3106         Reviewed by Anders Carlsson.
3107
3108         * history/PageCache.cpp:
3109         (WebCore::logCanCachePageDecision):
3110         * loader/DocumentLoader.cpp:
3111         (WebCore::DocumentLoader::finishedLoading):
3112         (WebCore::DocumentLoader::commitData):
3113         (WebCore::DocumentLoader::maybeLoadEmpty):
3114         * loader/DocumentWriter.cpp:
3115         (WebCore::DocumentWriter::createDocument):
3116         (WebCore::DocumentWriter::begin):
3117         * loader/FrameLoader.cpp:
3118         (WebCore::FrameLoader::prepareForHistoryNavigation):
3119         * loader/FrameLoader.h:
3120         (WebCore::FrameLoader::stateMachine):
3121         * loader/HistoryController.cpp:
3122         (WebCore::HistoryController::restoreScrollPositionAndViewState):
3123         (WebCore::HistoryController::saveDocumentState):
3124         * loader/NavigationScheduler.cpp:
3125         (WebCore::NavigationScheduler::scheduleLocationChange):
3126         (WebCore::NavigationScheduler::scheduleFormSubmission):
3127         * loader/ProgressTracker.cpp:
3128         (WebCore::ProgressTracker::incrementProgress):
3129         * loader/cache/CachedResourceLoader.cpp:
3130         (WebCore::CachedResourceLoader::storeResourceTimingInitiatorInformation):
3131         * page/Frame.cpp:
3132         (WebCore::Frame::injectUserScripts):
3133         * page/FrameView.cpp:
3134         (WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
3135
3136 2014-02-04  Myles C. Maxfield  <mmaxfield@apple.com>
3137
3138         Move characterAt index checks from InlineIterator to RenderText
3139         https://bugs.webkit.org/show_bug.cgi?id=128224
3140
3141         Reviewed by Simon Fraser.
3142
3143         Move characterAt index checks from InlineIterator to RenderText
3144         so that all RenderText calls are covered. Few safe instances are
3145         now covered with uncheckedCharacterAt.
3146
3147         Merged from Blink:
3148         http://src.chromium.org/viewvc/blink?view=revision&revision=150830
3149
3150         Test: fast/text/character-at-crash.html
3151
3152         * rendering/InlineIterator.h:
3153         (WebCore::InlineIterator::characterAt):
3154         * rendering/RenderText.cpp:
3155         (WebCore::RenderText::computePreferredLogicalWidths):
3156         * rendering/RenderText.h:
3157         (WebCore::RenderText::operator[]):
3158         (WebCore::RenderText::uncheckedCharacterAt):
3159         (WebCore::RenderText::characterAt):
3160
3161 2014-02-05  Andreas Kling  <akling@apple.com>
3162
3163         Remove leftover seamless iframe logic from containerForRepaint().
3164         <https://webkit.org/b/128235>
3165
3166         The parent-flow-thread-in-different-document case is no longer
3167         relevant after <iframe seamless> was removed.
3168
3169         Reviewed by David Hyatt.
3170
3171         * rendering/RenderObject.cpp:
3172         (WebCore::RenderObject::containerForRepaint):
3173
3174 2014-02-05  Hans Muller  <hmuller@adobe.com>
3175
3176         [CSS Shapes] Dynamically created element with image valued shape-outside doesn't update automatically
3177         https://bugs.webkit.org/show_bug.cgi?id=128187
3178
3179         Reviewed by Dean Jackson.
3180
3181         Corrected the way shape-outside handles the completion of an image load. Move
3182         the shape-outside imageChanged() logic from RenderBlock to RenderBox and call
3183         markShapeOutsideDependentsForLayout() instead of parent()->setNeedsLayoutAndPrefWidthsRecalc().
3184         The latter did not deal with descendants of the shape element's siblings correctly and it
3185         failed when the shape element was inserted dynamically. The markShapeOutsideDependentsForLayout()
3186         method can't be called during layout, so the imageChanged() code checks for that. The only
3187         scenario where imageChanged() can be called during layout (that I've discovered so far anyway)
3188         is when an SVG Image is renderered  with drawImage(). The Shape::createRasterShape() does this,
3189         and the corresponding imageChanged() notification can be safely ignored.
3190
3191         Test: fast/shapes/shape-outside-floats/shape-outside-insert-svg-shape.html
3192
3193         * rendering/RenderBlock.cpp:
3194         (WebCore::RenderBlock::imageChanged):
3195         * rendering/RenderBox.cpp:
3196         (WebCore::RenderBox::imageChanged):
3197
3198 2014-02-05  Andreas Kling  <akling@apple.com>
3199
3200         CTTE: ImageLoader is always owned by an Element.
3201         <https://webkit.org/b/128254>
3202
3203         - Codify this by making the constructor take Element& or better.
3204         - Make element() return Element&.
3205         - Marked HTMLImageLoader and SVGImageLoader final.
3206         - Made the ImageLoader constructor protected.
3207
3208         Reviewed by Sam Weinig.
3209
3210         * html/HTMLEmbedElement.cpp:
3211         (WebCore::HTMLEmbedElement::parseAttribute):
3212         * html/HTMLImageElement.cpp:
3213         (WebCore::HTMLImageElement::HTMLImageElement):
3214         * html/HTMLImageLoader.cpp:
3215         (WebCore::HTMLImageLoader::HTMLImageLoader):
3216         (WebCore::HTMLImageLoader::dispatchLoadEvent):
3217         (WebCore::HTMLImageLoader::sourceURI):
3218         (WebCore::HTMLImageLoader::notifyFinished):
3219         * html/HTMLImageLoader.h:
3220         * html/HTMLInputElement.cpp:
3221         (WebCore::HTMLInputElement::imageLoader):
3222         * html/HTMLObjectElement.cpp:
3223         (WebCore::HTMLObjectElement::parseAttribute):
3224         * html/HTMLPlugInImageElement.cpp:
3225         (WebCore::HTMLPlugInImageElement::startLoadingImage):
3226         * html/HTMLVideoElement.cpp:
3227         (WebCore::HTMLVideoElement::didAttachRenderers):
3228         (WebCore::HTMLVideoElement::parseAttribute):
3229         * loader/ImageLoader.cpp:
3230         (WebCore::ImageLoader::ImageLoader):
3231         (WebCore::ImageLoader::~ImageLoader):
3232         (WebCore::ImageLoader::updateFromElement):
3233         (WebCore::ImageLoader::notifyFinished):
3234         (WebCore::ImageLoader::renderImageResource):
3235         (WebCore::ImageLoader::updatedHasPendingEvent):
3236         (WebCore::ImageLoader::timerFired):
3237         (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
3238         (WebCore::ImageLoader::dispatchPendingLoadEvent):
3239         (WebCore::ImageLoader::dispatchPendingErrorEvent):
3240         * loader/ImageLoader.h:
3241         (WebCore::ImageLoader::element):
3242         * svg/SVGImageElement.cpp:
3243         (WebCore::SVGImageElement::SVGImageElement):
3244         * svg/SVGImageLoader.cpp:
3245         (WebCore::SVGImageLoader::SVGImageLoader):
3246         (WebCore::SVGImageLoader::~SVGImageLoader):
3247         (WebCore::SVGImageLoader::dispatchLoadEvent):
3248         (WebCore::SVGImageLoader::sourceURI):
3249         * svg/SVGImageLoader.h:
3250
3251 2014-02-05  Sergio Correia  <sergio.correia@openbossa.org>
3252
3253         SVG preserveAspectRatio=none is not honored.
3254         https://bugs.webkit.org/show_bug.cgi?id=111402
3255
3256         Reviewed by Andreas Kling.
3257
3258         Previously, preserveAspectRatio=none had no effect on SVG images. This change fixes this so
3259         we follow the special handling of preserveAspectRatio on images as defined in the spec:
3260         http://www.w3.org/TR/SVG/single-page.html, 7.8 The ‘preserveAspectRatio’ attribute.
3261
3262         Images that depend on a container size (such as SVG images) require a call to
3263         setContainerSizeForRenderer(...) to set this size. By passing the image's intrinsic size
3264         as the container size, the non-uniform scaling defined in the spec will be achieved.
3265
3266         Merged from Blink: https://chromiumcodereview.appspot.com/14964004
3267
3268         Test: svg/custom/image-with-preserveAspectRatio-none.html
3269
3270         * rendering/svg/RenderSVGImage.cpp:
3271         (WebCore::RenderSVGImage::updateImageViewport):
3272
3273 2014-02-05  Zoltan Horvath  <zoltan@webkit.org>
3274
3275         [CSS Shapes] Simplify CSSBasicShapeInset::cssText
3276         https://bugs.webkit.org/show_bug.cgi?id=127841
3277
3278         Reviewed by David Hyatt.
3279
3280         I introduced the updateCornerRadiusWidthAndHeight helper function, which makes the code of cssText method clearer.
3281
3282         No new tests, no behavior change.
3283
3284         * css/CSSBasicShapes.cpp:
3285         (WebCore::updateCornerRadiusWidthAndHeight): Add helper function.
3286         (WebCore::CSSBasicShapeInset::cssText):
3287
3288 2014-02-05  Zoltan Horvath  <zoltan@webkit.org>
3289
3290         [CSS Shapes] Simplify BasicShapeInset::path
3291         https://bugs.webkit.org/show_bug.cgi?id=127920
3292
3293         Reviewed by David Hyatt.
3294
3295         I introduced a new static helper function called floatSizeForLengthSize
3296         in order to simplify BasicShapeInset::path method.
3297
3298         No new tests, no behavior change.
3299
3300         * rendering/style/BasicShapes.cpp:
3301         (WebCore::floatSizeForLengthSize): New helper function.
3302         (WebCore::BasicShapeInset::path):
3303
3304 2014-02-05  Wojciech Bielawski  <w.bielawski@samsung.com>
3305
3306         XMLHttpRequest performs too many copies for ArrayBuffer results
3307         https://bugs.webkit.org/show_bug.cgi?id=117458
3308
3309         Reviewed by Alexey Proskuryakov.
3310
3311         Based on blink change: https://chromium.googlesource.com/chromium/blink/+/bed266aa5a43f7c080c87e527bd35e2b80ecc7b7
3312
3313         Add SharedBuffer::createArrayBuffer() and use it to create XMLHttpRequest's response in ArrayBuffer
3314         This cuts
3315             - two memsets (in ArrayBuffer::create and SharedBuffer::m_buffer::resize)
3316             - one copy (SharedBuffer::m_buffer to ArrayBufferContents::m_data)
3317             - one allocation (SharedBuffer::m_buffer)
3318
3319         No new tests. WebKit desn't provide test mechanism similar to blink's one.
3320
3321         * platform/SharedBuffer.cpp:
3322         (WebCore::SharedBuffer::createArrayBuffer):
3323         * platform/SharedBuffer.h:
3324         * xml/XMLHttpRequest.cpp:
3325         (WebCore::XMLHttpRequest::responseArrayBuffer):
3326
3327 2014-02-05  Csaba Osztrogonác  <ossy@webkit.org>
3328
3329         Remove ENABLE(SVG) guards
3330         https://bugs.webkit.org/show_bug.cgi?id=127991
3331
3332         Reviewed by Sam Weinig.
3333
3334         * CMakeLists.txt:
3335         * Configurations/FeatureDefines.xcconfig:
3336         * DerivedSources.make:
3337         * GNUmakefile.am:
3338         * UseJSC.cmake:
3339         * WebCore.exp.in:
3340         * accessibility/AXObjectCache.cpp:
3341         (WebCore::createFromRenderer):
3342         * accessibility/AccessibilityNodeObject.cpp:
3343         (WebCore::AccessibilityNodeObject::alternativeText):
3344         (WebCore::AccessibilityNodeObject::accessibilityDescription):
3345         * accessibility/AccessibilityRenderObject.cpp:
3346         (WebCore::AccessibilityRenderObject::boundingBoxRect):
3347         (WebCore::AccessibilityRenderObject::supportsPath):
3348         (WebCore::AccessibilityRenderObject::elementPath):
3349         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
3350         (WebCore::AccessibilityRenderObject::remoteSVGRootElement):
3351         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
3352         (-[WebAccessibilityObjectWrapper isSVGGroupElement]):
3353         * bindings/gobject/GNUmakefile.am:
3354         * bindings/js/JSCSSValueCustom.cpp:
3355         (WebCore::toJS):
3356         * bindings/js/JSDocumentCustom.cpp:
3357         (WebCore::toJS):
3358         * bindings/js/JSElementCustom.cpp:
3359         (WebCore::toJSNewlyCreated):
3360         * bindings/js/JSExceptionBase.cpp:
3361         (WebCore::toExceptionBase):
3362         * bindings/js/JSNodeCustom.cpp:
3363         (WebCore::createWrapperInline):
3364         * bindings/js/JSSVGElementInstanceCustom.cpp:
3365         * bindings/js/JSSVGLengthCustom.cpp:
3366         * bindings/js/JSSVGPathSegCustom.cpp:
3367         * css/CSSComputedStyleDeclaration.cpp:
3368         (WebCore::ComputedStyleExtractor::propertyValue):
3369         * css/CSSComputedStyleDeclaration.h:
3370         * css/CSSCursorImageValue.cpp:
3371         (WebCore::resourceReferencedByCursorElement):
3372         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
3373         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
3374         (WebCore::CSSCursorImageValue::cachedImage):
3375         (WebCore::CSSCursorImageValue::removeReferencedElement):
3376         * css/CSSCursorImageValue.h:
3377         * css/CSSDefaultStyleSheets.cpp:
3378         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
3379         * css/CSSFontSelector.cpp:
3380         * css/CSSParser.cpp:
3381         (WebCore::CSSParser::parseValue):
3382         (WebCore::CSSParser::parseClipPath):
3383         (WebCore::CSSParser::parseShadow):
3384         (WebCore::CSSParser::parseFilter):
3385         (WebCore::CSSParser::realLex):
3386         * css/CSSParser.h:
3387         * css/CSSPrimitiveValueMappings.h:
3388         * css/CSSStyleSheet.cpp:
3389         (WebCore::isAcceptableCSSStyleSheetParent):
3390         * css/CSSValue.cpp:
3391         (WebCore::CSSValue::equals):
3392         (WebCore::CSSValue::cssText):
3393         (WebCore::CSSValue::destroy):
3394         (WebCore::CSSValue::cloneForCSSOM):
3395         * css/CSSValue.h:
3396         (WebCore::CSSValue::isSubtypeExposedToCSSOM):
3397         * css/CSSValueKeywords.in:
3398         * css/DeprecatedStyleBuilder.cpp:
3399         (WebCore::ApplyPropertyDisplay::isValidDisplayValue):
3400         (WebCore::ApplyPropertyClipPath::applyValue):
3401         * css/ElementRuleCollector.cpp:
3402         (WebCore::ElementRuleCollector::matchAllRules):
3403         * css/SVGCSSComputedStyleDeclaration.cpp:
3404         * css/SVGCSSParser.cpp:
3405         * css/SVGCSSPropertyNames.in:
3406         * css/SVGCSSStyleSelector.cpp:
3407         * css/StyleProperties.cpp:
3408         (WebCore::StyleProperties::getPropertyValue):
3409         * css/StylePropertyShorthand.cpp:
3410         (WebCore::markerShorthand):
3411         (WebCore::shorthandForProperty):
3412         (WebCore::matchingShorthandsForLonghand):
3413         * css/StylePropertyShorthand.h:
3414         * css/StyleResolver.cpp:
3415         (WebCore::StyleResolver::State::clear):
3416         (WebCore::StyleResolver::locateCousinList):
3417         (WebCore::StyleResolver::sharingCandidateHasIdenticalStyleAffectingAttributes):
3418         (WebCore::StyleResolver::canShareStyleWithElement):
3419         (WebCore::StyleResolver::locateSharedStyle):
3420         (WebCore::StyleResolver::adjustRenderStyle):
3421         (WebCore::isValidVisitedLinkProperty):
3422         (WebCore::StyleResolver::applyProperty):
3423         (WebCore::StyleResolver::loadPendingSVGDocuments):
3424         (WebCore::StyleResolver::createFilterOperations):
3425         (WebCore::StyleResolver::loadPendingResources):
3426         * css/StyleResolver.h:
3427         * dom/DOMExceptions.in:
3428         * dom/DOMImplementation.cpp:
3429         (WebCore::addString):
3430         (WebCore::isSupportedSVG11Feature):
3431         (WebCore::DOMImplementation::hasFeature):
3432         (WebCore::DOMImplementation::createDocument):
3433         * dom/Document.cpp:
3434         (WebCore::Document::commonTeardown):
3435         (WebCore::Document::createElement):
3436         (WebCore::Document::implicitClose):
3437         (WebCore::Document::hasSVGRootNode):
3438         * dom/Document.h:
3439         * dom/DocumentStyleSheetCollection.cpp:
3440         (WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
3441         * dom/Element.cpp:
3442         (WebCore::Element::~Element):
3443         (WebCore::Element::synchronizeAllAttributes):
3444         (WebCore::Element::synchronizeAttribute):
3445         (WebCore::Element::boundsInRootViewSpace):
3446         (WebCore::Element::getBoundingClientRect):
3447         (WebCore::Element::removedFrom):
3448         (WebCore::Element::childShouldCreateRenderer):
3449         (WebCore::Element::fastAttributeLookupAllowed):
3450         (WebCore::Element::clearHasPendingResources):
3451         * dom/Element.h:
3452         * dom/ElementData.h:
3453         * dom/ElementRareData.h:
3454         (WebCore::ElementRareData::ElementRareData):
3455         * dom/EventDispatcher.cpp:
3456         (WebCore::eventTargetRespectingTargetRules):
3457         * dom/EventListenerMap.cpp:
3458         * dom/EventListenerMap.h:
3459         * dom/EventNames.in:
3460         * dom/EventTargetFactory.in:
3461         * dom/QualifiedName.cpp:
3462         * dom/ScriptElement.cpp:
3463         (WebCore::toScriptElementIfPossible):
3464         * dom/Text.cpp:
3465         (WebCore::isSVGText):
3466         (WebCore::Text::createTextRenderer):
3467         * history/CachedFrame.cpp:
3468         (WebCore::CachedFrameBase::restore):
3469         * html/HTMLAnchorElement.cpp: