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