Add interfaces and stubs for audio and video tracks
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-04-19  Brendan Long  <b.long@cablelabs.com>
2
3         Add interfaces and stubs for audio and video tracks
4         https://bugs.webkit.org/show_bug.cgi?id=113965
5
6         Reviewed by Jer Noble.
7
8         No new tests because there's no implementations, so there's nothing
9         interesting to test.
10
11         * CMakeLists.txt: Add AudioTrack, VideoTrack, AudioTrackList and VideoTrackList.
12         * DerivedSources.cpp: Same.
13         * DerivedSources.make: Same.
14         * DerivedSources.pri: Same.
15         * GNUmakefile.list.am: Same.
16         * Target.pri: Same.
17         * UseJSC.cmake: Same.
18         * WebCore.vcproj/WebCore.vcproj: Same.
19         * WebCore.xcodeproj/project.pbxproj: Same.
20         * bindings/gobject/GNUmakefile.am: Same.
21         * bindings/js/JSAudioTrackCustom.cpp: Added, based on JSTestTrackCustom
22         * bindings/js/JSAudioTrackListCustom.cpp: Same.
23         * bindings/js/JSBindingsAllInOne.cpp: Add AudioTrack, VideoTrack, AudioTrackList and VideoTrackList.
24         * bindings/js/JSVideoTrackCustom.cpp: Added, based on JSTestTrackCustom
25         * bindings/js/JSVideoTrackListCustom.cpp: Same.
26         * dom/EventTarget.h: Make AudioTrackList and VideoTrackList event targets.
27         * dom/EventTargetFactory.in: Same.
28         * html/HTMLMediaElement.cpp:
29         (WebCore::HTMLMediaElement::HTMLMediaElement): Add m_audioTracks and m_videoTracks
30         (WebCore::HTMLMediaElement::~HTMLMediaElement): Clear clients for audio and video tracks
31         (WebCore::HTMLMediaElement::audioTrackEnabledChanged): Added.
32         (WebCore::HTMLMediaElement::videoTrackSelectedChanged): Added.
33         (WebCore::HTMLMediaElement::mediaPlayerDidAddAudioTrack): Added, based on mediaPlayerDidAddTextTrack
34         (WebCore::HTMLMediaElement::mediaPlayerDidAddVideoTrack): Same.
35         (WebCore::HTMLMediaElement::mediaPlayerDidRemoveAudioTrack): Added, based on mediaPlayerDidRemoveTextTrack
36         (WebCore::HTMLMediaElement::mediaPlayerDidRemoveVideoTrack): Same.
37         (WebCore::HTMLMediaElement::addAudioTrack): Added, based on addTextTrack
38         (WebCore::HTMLMediaElement::addVideoTrack): Same.
39         (WebCore::HTMLMediaElement::removeAudioTrack): Added, based on removeTextTrack
40         (WebCore::HTMLMediaElement::removeVideoTrack): Added, based on removeTextTrack
41         (WebCore::HTMLMediaElement::removeAllInbandTracks): Remove audio and video tracks too
42         (WebCore::HTMLMediaElement::audioTracks): Added, based on textTracks
43         (WebCore::HTMLMediaElement::videoTracks): Added, based on textTracks
44         (WebCore::HTMLMediaElement::reportMemoryUsage): Add audio and video tracks
45         * html/HTMLMediaElement.h: Add audioTracks and videoTracks and related functions
46         * html/HTMLMediaElement.idl: Add audioTracks and videoTracks
47         * html/track/AudioTrack.cpp: Added, based on TextTrack and InbandTextTrack.
48         * html/track/AudioTrack.h: Same.
49         * html/track/AudioTrack.idl: Added.
50         * html/track/AudioTrackList.cpp: Added, based on TextTrackList
51         * html/track/AudioTrackList.h: Same.
52         * html/track/AudioTrackList.idl: Added.
53         * html/track/TextTrackList.h: Add missing OVERRIDE on interfaceName()
54         * html/track/VideoTrack.cpp: Added, based on TextTrack and InbandTextTrack.
55         * html/track/VideoTrack.h: Same.
56         * html/track/VideoTrack.idl: Added.
57         * html/track/VideoTrackList.cpp: Added, based on TextTrackList
58         * html/track/VideoTrackList.h: Same.
59         * html/track/VideoTrackList.idl: Added.
60         * platform/graphics/AudioTrackPrivate.h: Added, based on InbandTextTrackPrivate.h
61         * platform/graphics/MediaPlayer.cpp:
62         (WebCore::MediaPlayer::addAudioTrack): Added, based on addTextTrack
63         (WebCore::MediaPlayer::removeAudioTrack): Added, based on removeTextTrack
64         (WebCore::MediaPlayer::addVideoTrack): Added, based on addTextTrack
65         (WebCore::MediaPlayer::removeVideoTrack): Added, based on removeTextTrack
66         * platform/graphics/MediaPlayer.h:
67         (WebCore::MediaPlayerClient::mediaPlayerDidAddAudioTrack): Added, based on mediaPlayerDidAddTextTrack
68         (WebCore::MediaPlayerClient::mediaPlayerDidAddVideoTrack): Same
69         (WebCore::MediaPlayerClient::mediaPlayerDidRemoveAudioTrack): Added, based on mediaPlayerDidRemoveTextTrack
70         (WebCore::MediaPlayerClient::mediaPlayerDidRemoveVideoTrack): Same
71         * platform/graphics/VideoTrackPrivate.h: Added, based on InbandTextTrackPrivate.h
72
73 2013-04-19  Bear Travis  <betravis@adobe.com>
74
75         [CSS Exclusions] Implement empty segments for multiple-segment shape-insides
76         https://bugs.webkit.org/show_bug.cgi?id=100049
77
78         Reviewed by David Hyatt.
79
80         Content should not overflow a shape-inside segment, even if that means no content
81         will be placed in that segment. Overflow may be pushed to outside the shape. This
82         patch removes the restriction that every line must consume at least some text
83         input while inside a shape-inside. Content that does not fit is pushed down until
84         it does, either inside the shape or just below it.
85
86         Test: fast/exclusions/shape-inside/shape-inside-empty-segments.html
87
88         * rendering/RenderBlockLineLayout.cpp:
89         (WebCore::constructBidiRunsForSegment): Do not include empty segments for
90         consideration, as the actual BidiRuns construction expects to consume at
91         least one character.
92         (WebCore::constructBidiRunsForLine): Ditto.
93         (WebCore::firstPositiveWidth): Find the first positive word measurement width,
94         as there may be some empty word break measurements inserted.
95         (WebCore::adjustLogicalLineTop): Move the current line down, if necessary, to
96         fit it within the shape inside.
97         (WebCore::RenderBlock::layoutRunsAndFloatsInRange): If nothing fit in the
98         current segment, find the first available position for the smallest item
99         at the beginning of the text.
100         (WebCore::RenderBlock::LineBreaker::nextLineBreak): Return an empty segment
101         for a line that is inside the shape, but has no segments.
102         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak): Do not consume
103         input to meet minimum size requirements if you are inside a shape.
104
105 2013-04-19  Ryosuke Niwa  <rniwa@webkit.org>
106
107         Add a missing null pointer check after r148759.
108
109         * rendering/RenderObject.cpp:
110         (WebCore::RenderObject::containingBlock):
111
112 2013-04-19  Benjamin Poulain  <benjamin@webkit.org>
113
114         Use Vector instead of StringBuilder for CSSPreloadScanner's buffers
115         https://bugs.webkit.org/show_bug.cgi?id=114794
116
117         Reviewed by Ryosuke Niwa.
118
119         Cleanup for other String changes.
120
121         CSSPreloadScanner only handles UChar, StringBuilder was a little
122         overkill.
123
124         * html/parser/CSSPreloadScanner.cpp:
125         (WebCore):
126         (WebCore::ruleEqualIgnoringCase):
127         (WebCore::CSSPreloadScanner::emitRule):
128         * html/parser/CSSPreloadScanner.h:
129
130 2013-04-19  Benjamin Poulain  <benjamin@webkit.org>
131
132         StyledMarkupAccumulator::appendText() should not allocate an intermediary StringBuilder
133         https://bugs.webkit.org/show_bug.cgi?id=114847
134
135         Reviewed by Geoffrey Garen.
136
137         For some reason StyledMarkupAccumulator::appendText() was allocating a separate buffer
138         for invoking appendStyleNodeOpenTag. This is a bad idea.
139
140         * editing/markup.cpp:
141         (WebCore::StyledMarkupAccumulator::appendStyleNodeOpenTag):
142         (WebCore::StyledMarkupAccumulator::appendText):
143
144 2013-04-19  Joseph Pecoraro  <pecoraro@apple.com>
145
146         Web Inspector: Support the SourceMap header, X-SourceMap was deprecated
147         https://bugs.webkit.org/show_bug.cgi?id=114888
148
149         Check first for SourceMap, then fallback to X-SourceMap. Leaving in
150         support for the deprecated header because most tools and articles
151         online mention that version and have not yet updated.
152
153         Reviewed by Timothy Hatcher.
154
155         * inspector/InspectorDebuggerAgent.cpp:
156         (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
157         * inspector/InspectorPageAgent.cpp:
158         (WebCore::InspectorPageAgent::sourceMapURLForResource):
159
160 2013-04-19  Joseph Pecoraro  <pecoraro@apple.com>
161
162         Web Inspector: Backend should detect sourceMappingURLs in CSS Resources
163         https://bugs.webkit.org/show_bug.cgi?id=114854
164
165         Reviewed by Timothy Hatcher.
166
167         Test: http/tests/inspector/network/css-source-mapping-url.html
168
169         * inspector/Inspector.json:
170         - Page.getResourceTree - add sourceMapURL to resource payloads
171         - Network.loadingFinished and Network.requestServedFromMemoryCache,
172           include the sourceMapURL in the results.
173
174         * inspector/ContentSearchUtils.h:
175         * inspector/ContentSearchUtils.cpp:
176         (WebCore::ContentSearchUtils::scriptCommentPattern):
177         (WebCore::ContentSearchUtils::stylesheetCommentPattern):
178         (WebCore::ContentSearchUtils::findMagicComment):
179         (WebCore::ContentSearchUtils::findScriptSourceURL):
180         (WebCore::ContentSearchUtils::findScriptSourceMapURL):
181         (WebCore::ContentSearchUtils::findStylesheetSourceMapURL):
182         Separate Script and Stylesheet regex pattern creation, but
183         share the search function using the pattern.
184
185         * inspector/InspectorDebuggerAgent.cpp:
186         (WebCore::InspectorDebuggerAgent::sourceMapURLForScript):
187         (WebCore::InspectorDebuggerAgent::didParseSource):
188         Update function names. Check for the SourceMap header before
189         checking for a sourceMappingURL comment.
190
191         * inspector/InspectorPageAgent.h:
192         * inspector/InspectorPageAgent.cpp:
193         (WebCore::InspectorPageAgent::sourceMapURLForResource):
194         (WebCore::InspectorPageAgent::buildObjectForFrameTree):
195         Provide the sourceMapURL for Page.getResourceTree.
196
197         * inspector/InspectorResourceAgent.cpp:
198         (WebCore::buildObjectForCachedResource):
199         (WebCore::InspectorResourceAgent::didFinishLoading):
200         (WebCore::InspectorResourceAgent::didLoadResourceFromMemoryCache):
201         Include sourceMapURLs in finish loading and request served from cache.
202
203 2013-04-19  Shawn Singh  <shawnsingh@chromium.org>
204
205         Remove non-overlap testing code in RenderLayerCompositor
206         https://bugs.webkit.org/show_bug.cgi?id=85521
207
208         Reviewed by Simon Fraser.
209
210         m_compositingConsultsOverlap is always true in the current
211         code. This patch removes this flag, and removes dead code that is
212         never executed because it was never false.
213
214         No new tests, no change in behavior.  The cleanup is covered by
215         existing tests.
216
217         * rendering/RenderLayer.cpp:
218         (WebCore::RenderLayer::updateCompositingLayersAfterScroll):
219         removed if-statement that is always true.
220         
221         * rendering/RenderLayerBacking.cpp:
222         (WebCore::RenderLayerBacking::shouldClipCompositedBounds):
223         removed if-statement that would never get triggered.
224
225         * rendering/RenderLayerCompositor.cpp:
226         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
227         (WebCore::RenderLayerCompositor::updateCompositingLayers):
228         removed m_compositingConsultsOverlap, and retained the code as if the flag were "true".
229         
230         * rendering/RenderLayerCompositor.h:
231         (RenderLayerCompositor):
232
233 2013-04-19  Roger Fong  <roger_fong@apple.com>
234
235         Unreviewed. WebKit_Source is incorrectly set.
236
237         * WebCore.vcxproj/WebCore.make:
238
239 2013-04-18  Ryosuke Niwa  <rniwa@webkit.org>
240
241         Make loops in RenderObject::containingBlock homogeneous in their forms to simplify
242         https://bugs.webkit.org/show_bug.cgi?id=114853
243
244         Reviewed by David Hyatt.
245
246         This patch prepares us to avoid computing containing blocks during a depth-first traversal of the render tree.
247
248         Extracted inline functions out of RenderBlock::containingBlock to make the code simpler. Also moved the code
249         to obtain the nearest containing block out of the loop for a relatively positioned inline.
250
251         * rendering/RenderObject.cpp:
252         (WebCore::isNonReplacedInlineInFlowPosition): Extracted.
253         (WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject): Extracted.
254         (WebCore::isNonRenderBlockInline): Extracted.
255         (WebCore::RenderObject::containingBlock): Refactored as stated above.
256
257 2013-04-19  Tim Horton  <timothy_horton@apple.com>
258
259         WebKit should not decode or support PDF favicons
260         https://bugs.webkit.org/show_bug.cgi?id=114650
261         <rdar://problem/10133914>
262
263         Reviewed by Dan Bernstein.
264
265         Drop the image data on the floor if it begins with the PDF magic number.
266         No other browser I can find on OS X supports PDF favicons (by experimentation),
267         and we do not properly display them.
268
269         * loader/icon/IconLoader.cpp:
270         (WebCore::IconLoader::notifyFinished):
271
272 2013-04-19  Martin Robinson  <mrobinson@igalia.com>
273
274         Remove the OpenVG backend
275         https://bugs.webkit.org/show_bug.cgi?id=114881
276
277         Reviewed by Tim Horton.
278
279         * platform/graphics/FloatRect.h:
280         (FloatRect): Remove #ifdefs for OpenVG backend.
281         * platform/graphics/GraphicsContext.cpp:
282         (WebCore): Ditto.
283         * platform/graphics/GraphicsContext.h:
284         * platform/graphics/NativeImagePtr.h:
285         (WebCore): Ditto.
286         * platform/graphics/Path.cpp:
287         (WebCore): Ditto.
288         * platform/graphics/Path.h:
289         * platform/graphics/openvg/EGLDisplayOpenVG.cpp: Removed.
290         * platform/graphics/openvg/EGLDisplayOpenVG.h: Removed.
291         * platform/graphics/openvg/EGLUtils.h: Removed.
292         * platform/graphics/openvg/GraphicsContextOpenVG.cpp: Removed.
293         * platform/graphics/openvg/ImageOpenVG.cpp: Removed.
294         * platform/graphics/openvg/PainterOpenVG.cpp: Removed.
295         * platform/graphics/openvg/PainterOpenVG.h: Removed.
296         * platform/graphics/openvg/PathOpenVG.cpp: Removed.
297         * platform/graphics/openvg/PlatformPathOpenVG.h: Removed.
298         * platform/graphics/openvg/SharedResourceOpenVG.cpp: Removed.
299         * platform/graphics/openvg/SharedResourceOpenVG.h: Removed.
300         * platform/graphics/openvg/SurfaceOpenVG.cpp: Removed.
301         * platform/graphics/openvg/SurfaceOpenVG.h: Removed.
302         * platform/graphics/openvg/TiledImageOpenVG.cpp: Removed.
303         * platform/graphics/openvg/TiledImageOpenVG.h: Removed.
304         * platform/graphics/openvg/VGUtils.cpp: Removed.
305         * platform/graphics/openvg/VGUtils.h: Removed.
306         * platform/graphics/transforms/AffineTransform.h:
307         (AffineTransform): Ditto.
308         * platform/graphics/transforms/TransformationMatrix.h:
309         (TransformationMatrix): Ditto.
310         * platform/image-decoders/openvg/ImageDecoderOpenVG.cpp: Removed.
311
312 2013-04-19  Andrei Bucur  <abucur@adobe.com>
313
314         ContainerNode::removeChildren should first detach the children then remove them
315         https://bugs.webkit.org/show_bug.cgi?id=113433
316
317         Reviewed by Ryosuke Niwa.
318
319         Currently, ContainerNode::removeChildren initially removes the nodes from the DOM tree and then
320         calls detach() on each of them. This is anti-intuitive and can lead to subtle bugs because the
321         detached renderers are not backed by a valid DOM tree any more. With the patch, the nodes are first
322         detached and then removed from the DOM.
323         The patch also lets the tree in a consistent state after each node removal by clearing the previous
324         sibling pointer of the node following the one removed.
325         I haven't found any proof the performance will get worse if the detachment happens when the children
326         are still in the DOM tree.
327
328         Tests: No changed visible functionality.
329
330         * dom/ContainerNode.cpp:
331         (WebCore::ContainerNode::removeChildren):
332
333 2013-04-19  Dirk Schulze  <krit@webkit.org>
334
335         Refactor transform code in StyleResolver
336         https://bugs.webkit.org/show_bug.cgi?id=114874
337
338         Reviewed by Andreas Kling.
339
340         Move transform code frome StyleResolver into own files.
341
342         Refactoring, no changes in functionality.
343
344         * CMakeLists.txt:
345         * GNUmakefile.list.am:
346         * Target.pri:
347         * WebCore.vcproj/WebCore.vcproj:
348         * WebCore.vcxproj/WebCore.vcxproj:
349         * WebCore.vcxproj/WebCore.vcxproj.filters:
350         * WebCore.xcodeproj/project.pbxproj:
351         * css/StyleResolver.cpp:
352         (WebCore::StyleResolver::applyProperty):
353         (WebCore::StyleResolver::parseCustomFilterTransformParameter):
354         * css/StyleResolver.h:
355         * css/TransformFunctions.cpp: Added.
356         (WebCore):
357         (WebCore::transformOperationType):
358         (WebCore::convertToFloatLength):
359         (WebCore::transformsForValue):
360         * css/TransformFunctions.h: Added.
361         (WebCore):
362         * css/WebKitCSSMatrix.cpp:
363         (WebCore::WebKitCSSMatrix::setMatrixValue):
364
365 2013-04-19  Erik Arvidsson  <arv@chromium.org>
366
367         Rename TextTrackList owner to element for consistency
368         https://bugs.webkit.org/show_bug.cgi?id=79822
369
370         Reviewed by Eric Carlson.
371
372         No new tests. Covered by existing tests.
373
374         * bindings/js/JSTextTrackListCustom.cpp:
375         (WebCore::JSTextTrackListOwner::isReachableFromOpaqueRoots):
376         (WebCore::JSTextTrackList::visitChildren):
377         * html/HTMLMediaElement.cpp:
378         (WebCore::HTMLMediaElement::~HTMLMediaElement):
379         * html/track/TextTrackList.cpp:
380         (TextTrackList::append):
381         (TextTrackList::remove):
382         * html/track/TextTrackList.h:
383         (WebCore::TextTrackList::create):
384         * html/track/TrackListBase.cpp:
385         (TrackListBase::TrackListBase):
386         (TrackListBase::remove):
387         * html/track/TrackListBase.h:
388         (WebCore::TrackListBase::clearElement):
389         (WebCore::TrackListBase::element):
390         (TrackListBase):
391
392 2013-04-19  Andreas Kling  <akling@apple.com>
393
394         [Mac] ComplexTextController is slow with large numbers of text runs.
395         <http://webkit.org/b/114875>
396         <rdar://problem/13337036>
397
398         Reviewed by Dan Bernstein.
399
400         Instead of iterating over the text runs in indexOfCurrentRun() to figure out the leftmost glyph,
401         create a lookup table of [run# -> distance in glyphs] at ComplexTextController construction time.
402
403         This avoids O(n^2) behavior in indexOfCurrentRun().
404
405         * platform/graphics/mac/ComplexTextController.cpp:
406         (WebCore::ComplexTextController::ComplexTextController):
407         (WebCore::ComplexTextController::indexOfCurrentRun):
408         * platform/graphics/mac/ComplexTextController.h:
409         (ComplexTextController):
410
411 2013-04-19  Mario Sanchez Prada  <mario.prada@samsung.com>
412
413         [GTK] Minimize calls to GailTextUtil in AtkText implementation
414         https://bugs.webkit.org/show_bug.cgi?id=114868
415
416         Reviewed by Martin Robinson.
417
418         Create a new helper function to concentrate inside of it the calls to
419         gail_text_util_get_text(), so we can get rid of it later more easily.
420
421         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
422         (webkitAccessibleTextGetTextForOffset): New helper function.
423         (webkitAccessibleTextGetTextAfterOffset): Rely on the new function.
424         (webkitAccessibleTextGetTextAtOffset): Ditto.
425         (webkitAccessibleTextGetTextBeforeOffset): Ditto.
426
427 2013-04-19  Noam Rosenthal  <noam@webkit.org>
428
429         [Texmap] Implementation for pattern compositing
430         https://bugs.webkit.org/show_bug.cgi?id=109588
431
432         Reviewed by Allan Sandfeld Jensen.
433
434         Enable pattern compositing (background images) for CoordinatedGraphics/TextureMapperGL.
435         Use the existing patternTransform shader uniform, multiplying it by a matrix calculated
436         using the contentsRect, tileSize and tilePhase.
437
438         Covered by existing tests in compositing/patterns.
439
440         * platform/graphics/GraphicsLayer.h:
441         (GraphicsLayer):
442             Conditionally enable pattern compositing for coordinated graphics.
443
444         * platform/graphics/texmap/TextureMapper.cpp:
445         (WebCore::TextureMapper::TextureMapper):
446         * platform/graphics/texmap/TextureMapper.h:
447         (WebCore::TextureMapper::setPatternTransform):
448         (WebCore::TextureMapper::setWrapMode):
449         (WebCore::TextureMapper::wrapMode):
450         (WebCore::TextureMapper::patternTransform):
451             Add wrapMode and patternTransform properties to the TextureMapper state.
452
453         * platform/graphics/texmap/TextureMapperGL.cpp:
454         (WebCore::TextureMapperGL::drawTexturedQuadWithProgram):
455             Paint with GL_REPEAT and a pattern transform when needed.
456
457         * platform/graphics/texmap/TextureMapperLayer.cpp:
458         (WebCore::TextureMapperLayer::computePatternTransformIfNeeded):
459         (WebCore):
460         (WebCore::TextureMapperLayer::paintSelf):
461         (WebCore::TextureMapperLayer::setContentsRect):
462         (WebCore::TextureMapperLayer::setContentsTileSize):
463         (WebCore::TextureMapperLayer::setContentsTilePhase):
464             Apply the patternTransform from the tile size/phase.
465
466         * platform/graphics/texmap/TextureMapperLayer.h:
467         (WebCore::TextureMapperLayer::TextureMapperLayer):
468         (TextureMapperLayer):
469         (WebCore::TextureMapperLayer::setShouldMapBackingStoreToContentsRect):
470         (State):
471         (WebCore::TextureMapperLayer::State::State):
472             Allow the client to configure whether a layer uses its bounds or its
473             contents rect to paint the backing store.
474             This is needed now since layers with background images, unlike layers
475             with regular images, may have bounds that are greater than the contents
476             rect.
477
478         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
479         (WebCore::CoordinatedGraphicsLayer::setContentsTileSize):
480         (WebCore):
481         (WebCore::CoordinatedGraphicsLayer::setContentsTilePhase):
482         (WebCore::CoordinatedGraphicsLayer::setShouldSupportContentsTiling):
483         (WebCore::GraphicsLayer::supportsContentsTiling):
484         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
485         (CoordinatedGraphicsLayer):
486         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
487         (WebCore::CoordinatedGraphicsScene::setLayerState):
488         (WebCore::CoordinatedGraphicsScene::assignImageBackingToLayer):
489         * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
490         (CoordinatedGraphicsLayerState):
491             Logic to pass the tileSize/tilePhase from CoordinatedGraphicsLayer
492             to TextureMapperLayer.
493
494         * rendering/RenderLayerBacking.cpp:
495         (WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage):
496             Don't reset the layer's image contents when this is a directly composited image.
497
498 2013-04-19  ChangSeok Oh  <changseok.oh@collabora.com>
499
500         [GTK][AC] Manage actor's children by using clutter's own way.
501         https://bugs.webkit.org/show_bug.cgi?id=114257
502
503         Reviewed by Gustavo Noronha Silva.
504
505         I believe we don't need to maintain a children list of GList. We can do it
506         by using clutter APIs like clutter_actor_get_children, clutter_actor_get_first_child, etc.
507
508         No new tests since no functionality changed.
509
510         * platform/graphics/clutter/GraphicsLayerActor.cpp:
511         (graphics_layer_actor_init):
512         (graphicsLayerActorAllocate):
513         (graphicsLayerActorPaint):
514         (graphicsLayerActorRemoveAll):
515         (graphicsLayerActorGetnChildren):
516         (graphicsLayerActorReplaceSublayer):
517         (graphicsLayerActorInsertSublayer):
518         * platform/graphics/clutter/GraphicsLayerActor.h:
519         (_GraphicsLayerActor):
520
521 2013-04-19  ChangSeok Oh  <changseok.oh@collabora.com>
522
523         [GTK][AC] Support masksToBounds for clutter AC backend.
524         https://bugs.webkit.org/show_bug.cgi?id=114113
525
526         Reviewed by Gustavo Noronha Silva.
527
528         We can support the masksToBounds property by using clutter_actor_set_clip simply.
529
530         Covered by existing AC tests.
531
532         * platform/graphics/clutter/GraphicsLayerActor.cpp:
533         (graphicsLayerActorSetMasksToBounds):
534         * platform/graphics/clutter/GraphicsLayerActor.h:
535         * platform/graphics/clutter/GraphicsLayerClutter.cpp:
536         (WebCore::GraphicsLayerClutter::setMasksToBounds):
537         (WebCore):
538         (WebCore::GraphicsLayerClutter::commitLayerChangesBeforeSublayers):
539         (WebCore::GraphicsLayerClutter::setupContentsLayer):
540         (WebCore::GraphicsLayerClutter::updateMasksToBounds):
541         * platform/graphics/clutter/GraphicsLayerClutter.h:
542         (GraphicsLayerClutter):
543
544 2013-04-19  Dan Beam  <dbeam@chromium.org>
545
546         Remove unmaintained feature REQUEST_AUTOCOMPLETE
547         https://bugs.webkit.org/show_bug.cgi?id=114846
548
549         Reviewed by Kent Tamura.
550
551         * GNUmakefile.list.am: Remove AutocompleteErrorEvent.h include.
552         * bindings/generic/RuntimeEnabledFeatures.cpp:
553         (WebCore): Remove requestAutocomplete() runtime feature.
554         * bindings/generic/RuntimeEnabledFeatures.h:
555         (RuntimeEnabledFeatures): Remove requestAutocomplete() runtime feature.
556         * dom/AutocompleteErrorEvent.h: Removed.
557         * dom/AutocompleteErrorEvent.idl: Removed.
558         * dom/EventNames.h: Remove `autocomplete` and `autocompleteerror` event names.
559         (WebCore):
560         * dom/EventNames.in: Remove `autocomplete` and `autocompleteerror` event names.
561         * html/HTMLAttributeNames.in: Remove `onautocomplete` and `onautocompleteerror` form attributes.
562         * html/HTMLFormElement.cpp: Remove requestAutocomplete() related code.
563         (WebCore::HTMLFormElement::HTMLFormElement): Remove timer and event queue for requestAutocomplete() related events.
564         (WebCore::HTMLFormElement::parseAttribute): Remove parsing of `onautocomplete` and `onautocompleterror`.
565         * html/HTMLFormElement.h: Remove requestAutocomplete() related members.
566         (HTMLFormElement):
567         * html/HTMLFormElement.idl: Remove public requestAutocomplete() API method.
568         * loader/EmptyClients.cpp: Remove stub implementation.
569         (WebCore):
570         * loader/EmptyClients.h: Remove stub interface.
571         (EmptyFrameLoaderClient):
572         * loader/FrameLoaderClient.h: Remove didRequestAutocomplete() from interface.
573         (FrameLoaderClient):
574         * page/DOMWindow.idl: Remove `AutocompleteErrorEvent` from window DOM interface.
575
576 2013-04-18  Timothy Hatcher  <timothy@apple.com>
577
578         Add CSS.setStyleText to the Web Inspector protocol.
579
580         This provides a direct path for the Safari Web Inspector to live edit whole style rules.
581
582         https://webkit.org/b/109340
583         rdar://problem/13337211
584
585         Reviewed by Joseph Pecoraro.
586
587         * inspector/Inspector.json:
588         (CSS.setStyleText): Added.
589         * inspector/InspectorCSSAgent.cpp:
590         (InspectorCSSAgent::SetStyleTextAction):
591         (WebCore::InspectorCSSAgent::SetStyleTextAction::SetStyleTextAction): Added.
592         (WebCore::InspectorCSSAgent::SetStyleTextAction::perform): Added.
593         (WebCore::InspectorCSSAgent::SetStyleTextAction::undo): Added.
594         (WebCore::InspectorCSSAgent::SetStyleTextAction::redo): Added.
595         (WebCore::InspectorCSSAgent::SetStyleTextAction::mergeId): Added.
596         (WebCore::InspectorCSSAgent::SetStyleTextAction::merge): Added.
597         (WebCore::InspectorCSSAgent::SetPropertyTextAction::redo):
598         (WebCore::InspectorCSSAgent::setStyleText): Added.
599         * inspector/InspectorCSSAgent.h:
600         * inspector/InspectorStyleSheet.cpp:
601         (WebCore::InspectorStyle::getText): Added.
602         (WebCore::InspectorStyle::setText): Added.
603         (WebCore::InspectorStyleSheet::setStyleText):
604         (WebCore::InspectorStyleSheetForInlineStyle::setStyleText):
605         * inspector/InspectorStyleSheet.h:
606         (WebCore::InspectorStyle::styleText): Added as an alias to getText.
607         (WebCore::InspectorStyle::applyStyleText): Added as an alias to setText.
608
609 2013-04-18  Jer Noble  <jer.noble@apple.com>
610
611         Unreviewed gardening; fix bindings tests after r148700.
612
613         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
614         (WebCore::JSTestEventTargetOwner::isReachableFromOpaqueRoots):
615
616 2013-04-18  Andy Estes  <aestes@apple.com>
617
618         REGRESSION (r116645): Versions app's UI is munged in HiDPI due to background-size being reset to 'auto' when background short-hand is also specified
619         https://bugs.webkit.org/show_bug.cgi?id=114833
620
621         Reviewed by David Kilzer.
622
623         Added applicationIsVersions() to RuntimeApplicationChecks.
624
625         * WebCore.exp.in:
626         * platform/RuntimeApplicationChecks.cpp:
627         (WebCore::applicationIsVersions):
628         (WebCore):
629         * platform/RuntimeApplicationChecks.h:
630         (WebCore):
631
632 2013-04-18  Sam Weinig  <sam@webkit.org>
633
634         Network Process crashing trying to read in IDNScriptWhiteList.txt
635         https://bugs.webkit.org/show_bug.cgi?id=114827
636
637         Reviewed by Anders Carlsson.
638
639         Move IDNScriptWhiteList.txt from WebKit to WebCore, so that the NetworkProcess does not have to link against
640         WebKit. It was a layering violation for WebCore to be trying to access WebKit resources anyway.
641
642         * Resources/IDNScriptWhiteList.txt: Copied from Source/WebKit/mac/Resources/IDNScriptWhiteList.txt.
643         * WebCore.xcodeproj/project.pbxproj:
644         * platform/mac/WebCoreNSURLExtras.mm:
645         (WebCore::readIDNScriptWhiteList):
646
647 2013-04-18  Simon Fraser  <simon.fraser@apple.com>
648
649         Remove GraphicsLayerCA::constrainedSize() now that we can manage large layer memory use ourselves in TileController
650         https://bugs.webkit.org/show_bug.cgi?id=114834
651
652         Reviewed by Tim Horton.
653
654         GraphicsLayerCA::constrainedSize() was added to handle poor CATiledLayer behavior when layer sizes
655         got extremely large. Now that we no longer use CATiledLayer, remove this code. We can later add
656         tile memory bounding to TileController if that becomes necessary.
657
658         * platform/graphics/ca/GraphicsLayerCA.cpp:
659         (WebCore::GraphicsLayerCA::updateGeometry):
660         * platform/graphics/ca/GraphicsLayerCA.h:
661         (GraphicsLayerCA):
662
663 2013-04-18  Alberto Garcia  <agarcia@igalia.com>
664
665         Remove obsolete macros from libpng
666         https://bugs.webkit.org/show_bug.cgi?id=114817
667
668         Reviewed by Benjamin Poulain.
669
670         libpng 1.4 removes the png_voidp_NULL and png_error_ptr_NULL
671         macros. Null pointers must be used directly instead.
672
673         * platform/image-encoders/PNGImageEncoder.cpp:
674         (WebCore::compressRGBABigEndianToPNG):
675
676 2013-04-18  Jer Noble  <jer.noble@apple.com>
677
678         CodeGeneratorJS.pm should generate "isFiringEventListeners()" check in isReachableFromOpaqueRoots()
679         https://bugs.webkit.org/show_bug.cgi?id=114784
680
681         Reviewed by Geoffrey Garen.
682
683         EventTarget subclasses shouldn't have to use CustomIsReachable directives
684         in order to keep their wrappers alive while firing event listeners.
685
686         * bindings/scripts/CodeGeneratorJS.pm:
687         (GenerateImplementation):
688
689 2013-04-17  Geoffrey Garen  <ggaren@apple.com>
690
691         Renamed JSGlobalData to VM
692         https://bugs.webkit.org/show_bug.cgi?id=114777
693
694         Reviewed by Phil Pizlo.
695
696         * ForwardingHeaders/runtime/JSGlobalData.h: Removed.
697         * ForwardingHeaders/runtime/VM.h: Copied from Source/WebCore/ForwardingHeaders/runtime/JSGlobalData.h.
698         * WebCore.exp.in:
699         * WebCore.order:
700         * WebCore.vcxproj/WebCore.vcxproj:
701         * WebCore.vcxproj/WebCore.vcxproj.filters:
702         * bindings/js/DOMObjectHashTableMap.cpp:
703         (WebCore::DOMObjectHashTableMap::mapFor):
704         * bindings/js/DOMObjectHashTableMap.h:
705         (JSC):
706         (DOMObjectHashTableMap):
707         * bindings/js/DOMWrapperWorld.cpp:
708         (WebCore::DOMWrapperWorld::DOMWrapperWorld):
709         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
710         (WebCore::normalWorld):
711         (WebCore::mainThreadNormalWorld):
712         * bindings/js/DOMWrapperWorld.h:
713         (WebCore::DOMWrapperWorld::create):
714         (WebCore::DOMWrapperWorld::vm):
715         (DOMWrapperWorld):
716         (WebCore):
717         * bindings/js/GCController.cpp:
718         (WebCore::collect):
719         (WebCore::GCController::garbageCollectSoon):
720         (WebCore::GCController::garbageCollectNow):
721         (WebCore::GCController::setJavaScriptGarbageCollectorTimerEnabled):
722         (WebCore::GCController::discardAllCompiledCode):
723         * bindings/js/IDBBindingUtilities.cpp:
724         (WebCore::get):
725         (WebCore::set):
726         (WebCore::deserializeIDBValue):
727         (WebCore::deserializeIDBValueBuffer):
728         (WebCore::idbKeyToScriptValue):
729         * bindings/js/JSCallbackData.h:
730         (WebCore::JSCallbackData::JSCallbackData):
731         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
732         (WebCore::JSSQLStatementErrorCallback::handleEvent):
733         * bindings/js/JSCustomXPathNSResolver.cpp:
734         (WebCore::JSCustomXPathNSResolver::JSCustomXPathNSResolver):
735         (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
736         * bindings/js/JSDOMBinding.cpp:
737         (WebCore::getHashTableForGlobalData):
738         (WebCore::reportException):
739         (WebCore::cacheDOMStructure):
740         * bindings/js/JSDOMBinding.h:
741         (WebCore::DOMConstructorObject::createStructure):
742         (WebCore::DOMConstructorWithDocument::finishCreation):
743         (WebCore::getDOMStructure):
744         (WebCore::setInlineCachedWrapper):
745         (WebCore):
746         (WebCore::jsStringWithCache):
747         * bindings/js/JSDOMGlobalObject.cpp:
748         (WebCore::JSDOMGlobalObject::JSDOMGlobalObject):
749         (WebCore::JSDOMGlobalObject::finishCreation):
750         * bindings/js/JSDOMGlobalObject.h:
751         (JSDOMGlobalObject):
752         (WebCore::JSDOMGlobalObject::createStructure):
753         (WebCore::getDOMConstructor):
754         * bindings/js/JSDOMWindowBase.cpp:
755         (WebCore::JSDOMWindowBase::JSDOMWindowBase):
756         (WebCore::JSDOMWindowBase::finishCreation):
757         (WebCore::JSDOMWindowBase::updateDocument):
758         (WebCore::JSDOMWindowBase::commonVM):
759         * bindings/js/JSDOMWindowBase.h:
760         (JSDOMWindowBase):
761         (WebCore::JSDOMWindowBase::createStructure):
762         * bindings/js/JSDOMWindowCustom.cpp:
763         (WebCore::JSDOMWindow::setLocation):
764         (WebCore::DialogHandler::dialogCreated):
765         (WebCore::DialogHandler::returnValue):
766         * bindings/js/JSDOMWindowShell.cpp:
767         (WebCore::JSDOMWindowShell::JSDOMWindowShell):
768         (WebCore::JSDOMWindowShell::finishCreation):
769         (WebCore::JSDOMWindowShell::setWindow):
770         * bindings/js/JSDOMWindowShell.h:
771         (JSDOMWindowShell):
772         (WebCore::JSDOMWindowShell::create):
773         (WebCore::JSDOMWindowShell::createStructure):
774         * bindings/js/JSDOMWrapper.h:
775         (WebCore::JSDOMWrapper::JSDOMWrapper):
776         * bindings/js/JSDeviceMotionEventCustom.cpp:
777         (WebCore::createAccelerationObject):
778         (WebCore::createRotationRateObject):
779         * bindings/js/JSDictionary.cpp:
780         (WebCore::JSDictionary::convertValue):
781         * bindings/js/JSDictionary.h:
782         (WebCore::JSDictionary::JSDictionary):
783         * bindings/js/JSErrorHandler.cpp:
784         (WebCore::JSErrorHandler::handleEvent):
785         * bindings/js/JSEventListener.cpp:
786         (WebCore::JSEventListener::handleEvent):
787         * bindings/js/JSEventListener.h:
788         (WebCore::JSEventListener::setWrapper):
789         (WebCore::JSEventListener::jsFunction):
790         * bindings/js/JSHTMLDocumentCustom.cpp:
791         (WebCore::JSHTMLDocument::all):
792         (WebCore::JSHTMLDocument::setAll):
793         * bindings/js/JSHTMLTemplateElementCustom.cpp:
794         (WebCore::JSHTMLTemplateElement::content):
795         * bindings/js/JSHistoryCustom.cpp:
796         (WebCore::JSHistory::state):
797         * bindings/js/JSImageConstructor.cpp:
798         (WebCore::JSImageConstructor::finishCreation):
799         * bindings/js/JSImageConstructor.h:
800         (WebCore::JSImageConstructor::createStructure):
801         * bindings/js/JSImageDataCustom.cpp:
802         (WebCore::toJS):
803         * bindings/js/JSInjectedScriptHostCustom.cpp:
804         (WebCore::InjectedScriptHost::nodeAsScriptValue):
805         (WebCore::JSInjectedScriptHost::functionDetails):
806         (WebCore::getJSListenerFunctions):
807         (WebCore::JSInjectedScriptHost::getEventListeners):
808         (WebCore::JSInjectedScriptHost::inspect):
809         * bindings/js/JSLazyEventListener.cpp:
810         (WebCore::JSLazyEventListener::initializeJSFunction):
811         * bindings/js/JSMessageEventCustom.cpp:
812         (WebCore::JSMessageEvent::data):
813         (WebCore::handleInitMessageEvent):
814         * bindings/js/JSMutationCallback.cpp:
815         (WebCore::JSMutationCallback::call):
816         * bindings/js/JSMutationObserverCustom.cpp:
817         (WebCore::JSMutationObserverConstructor::constructJSMutationObserver):
818         * bindings/js/JSNodeFilterCondition.cpp:
819         (WebCore::JSNodeFilterCondition::JSNodeFilterCondition):
820         * bindings/js/JSNodeFilterCondition.h:
821         (WebCore::JSNodeFilterCondition::create):
822         (JSNodeFilterCondition):
823         * bindings/js/JSNodeFilterCustom.cpp:
824         (WebCore::toNodeFilter):
825         * bindings/js/JSPopStateEventCustom.cpp:
826         (WebCore::cacheState):
827         * bindings/js/JSRequestAnimationFrameCallbackCustom.cpp:
828         (WebCore::JSRequestAnimationFrameCallback::handleEvent):
829         * bindings/js/JSSQLResultSetRowListCustom.cpp:
830         (WebCore::JSSQLResultSetRowList::item):
831         * bindings/js/JSWorkerContextBase.cpp:
832         (WebCore::JSWorkerContextBase::JSWorkerContextBase):
833         (WebCore::JSWorkerContextBase::finishCreation):
834         * bindings/js/JSWorkerContextBase.h:
835         (WebCore::JSWorkerContextBase::createStructure):
836         (JSWorkerContextBase):
837         * bindings/js/PageScriptDebugServer.cpp:
838         (WebCore::PageScriptDebugServer::recompileAllJSFunctions):
839         * bindings/js/ScheduledAction.cpp:
840         (WebCore::ScheduledAction::ScheduledAction):
841         (WebCore::ScheduledAction::executeFunctionInContext):
842         * bindings/js/ScheduledAction.h:
843         (WebCore::ScheduledAction::ScheduledAction):
844         * bindings/js/ScriptCachedFrameData.cpp:
845         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
846         (WebCore::ScriptCachedFrameData::restore):
847         (WebCore::ScriptCachedFrameData::clear):
848         * bindings/js/ScriptCallStackFactory.cpp:
849         (WebCore::createScriptCallStack):
850         (WebCore::createScriptArguments):
851         * bindings/js/ScriptController.cpp:
852         (WebCore::ScriptController::createWindowShell):
853         (WebCore::ScriptController::evaluateInWorld):
854         (WebCore::ScriptController::createWorld):
855         (WebCore::ScriptController::getAllWorlds):
856         (WebCore::ScriptController::clearWindowShell):
857         (WebCore::ScriptController::initScript):
858         (WebCore::ScriptController::updateDocument):
859         (WebCore::ScriptController::cacheableBindingRootObject):
860         (WebCore::ScriptController::bindingRootObject):
861         (WebCore::ScriptController::clearScriptObjects):
862         (WebCore::ScriptController::shouldBypassMainWorldContentSecurityPolicy):
863         * bindings/js/ScriptControllerMac.mm:
864         (WebCore::ScriptController::windowScriptObject):
865         * bindings/js/ScriptDebugServer.cpp:
866         (WebCore::ScriptDebugServer::dispatchDidPause):
867         * bindings/js/ScriptEventListener.cpp:
868         (WebCore::eventListenerHandlerBody):
869         (WebCore::eventListenerHandler):
870         (WebCore::eventListenerHandlerLocation):
871         * bindings/js/ScriptFunctionCall.cpp:
872         (WebCore::ScriptFunctionCall::call):
873         (WebCore::ScriptCallback::call):
874         * bindings/js/ScriptGCEvent.cpp:
875         (WebCore::ScriptGCEvent::getHeapSize):
876         * bindings/js/ScriptObject.cpp:
877         (WebCore::ScriptObject::ScriptObject):
878         (WebCore::ScriptGlobalObject::set):
879         * bindings/js/ScriptState.h:
880         (WebCore):
881         * bindings/js/ScriptValue.cpp:
882         (WebCore::ScriptValue::deserialize):
883         * bindings/js/ScriptValue.h:
884         (WebCore::ScriptValue::ScriptValue):
885         * bindings/js/ScriptWrappable.h:
886         (JSC):
887         (ScriptWrappable):
888         * bindings/js/ScriptWrappableInlines.h:
889         (WebCore::ScriptWrappable::setWrapper):
890         * bindings/js/SerializedScriptValue.cpp:
891         (WebCore::CloneDeserializer::readTerminal):
892         (WebCore::SerializedScriptValue::deserializeForInspector):
893         (WebCore::SerializedScriptValue::maybeThrowExceptionIfSerializationFailed):
894         * bindings/js/WebCoreJSClientData.h:
895         (WebCoreJSClientData):
896         (WebCore::initNormalWorldClientData):
897         * bindings/js/WorkerScriptController.cpp:
898         (WebCore::WorkerScriptController::WorkerScriptController):
899         (WebCore::WorkerScriptController::~WorkerScriptController):
900         (WebCore::WorkerScriptController::initScript):
901         (WebCore::WorkerScriptController::evaluate):
902         (WebCore::WorkerScriptController::scheduleExecutionTermination):
903         (WebCore::WorkerScriptController::isExecutionTerminating):
904         (WebCore::WorkerScriptController::disableEval):
905         * bindings/js/WorkerScriptController.h:
906         (JSC):
907         (WebCore::WorkerScriptController::vm):
908         (WorkerScriptController):
909         * bindings/js/WorkerScriptDebugServer.cpp:
910         (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
911         * bindings/objc/WebScriptObject.mm:
912         (+[WebScriptObject _convertValueToObjcValue:JSC::originRootObject:rootObject:]):
913         * bindings/scripts/CodeGeneratorJS.pm:
914         (GenerateHeader):
915         (GenerateImplementation):
916         (GenerateCallbackImplementation):
917         (JSValueToNative):
918         (GenerateConstructorDeclaration):
919         (GenerateConstructorHelperMethods):
920         * bindings/scripts/test/JS/JSFloat64Array.cpp:
921         (WebCore::getJSFloat64ArrayConstructorTable):
922         (WebCore::JSFloat64ArrayConstructor::finishCreation):
923         (WebCore::getJSFloat64ArrayPrototypeTable):
924         (WebCore::getJSFloat64ArrayTable):
925         (WebCore::JSFloat64Array::finishCreation):
926         (WebCore::JSFloat64Array::createPrototype):
927         * bindings/scripts/test/JS/JSFloat64Array.h:
928         (WebCore::JSFloat64Array::create):
929         (WebCore::JSFloat64Array::createStructure):
930         (JSFloat64Array):
931         (WebCore::JSFloat64ArrayPrototype::create):
932         (WebCore::JSFloat64ArrayPrototype::createStructure):
933         (WebCore::JSFloat64ArrayPrototype::JSFloat64ArrayPrototype):
934         (WebCore::JSFloat64ArrayConstructor::createStructure):
935         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
936         (WebCore::JSTestActiveDOMObjectConstructor::finishCreation):
937         (WebCore::JSTestActiveDOMObject::finishCreation):
938         (WebCore::JSTestActiveDOMObject::createPrototype):
939         * bindings/scripts/test/JS/JSTestActiveDOMObject.h:
940         (WebCore::JSTestActiveDOMObject::create):
941         (WebCore::JSTestActiveDOMObject::createStructure):
942         (JSTestActiveDOMObject):
943         (WebCore::JSTestActiveDOMObjectPrototype::create):
944         (WebCore::JSTestActiveDOMObjectPrototype::createStructure):
945         (WebCore::JSTestActiveDOMObjectPrototype::JSTestActiveDOMObjectPrototype):
946         (WebCore::JSTestActiveDOMObjectConstructor::createStructure):
947         * bindings/scripts/test/JS/JSTestCallback.cpp:
948         (WebCore::JSTestCallback::callbackWithNoParam):
949         (WebCore::JSTestCallback::callbackWithClass1Param):
950         (WebCore::JSTestCallback::callbackWithClass2Param):
951         (WebCore::JSTestCallback::callbackWithStringList):
952         (WebCore::JSTestCallback::callbackWithBoolean):
953         (WebCore::JSTestCallback::callbackRequiresThisToPass):
954         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
955         (WebCore::JSTestCustomNamedGetterConstructor::finishCreation):
956         (WebCore::JSTestCustomNamedGetter::finishCreation):
957         (WebCore::JSTestCustomNamedGetter::createPrototype):
958         * bindings/scripts/test/JS/JSTestCustomNamedGetter.h:
959         (WebCore::JSTestCustomNamedGetter::create):
960         (WebCore::JSTestCustomNamedGetter::createStructure):
961         (JSTestCustomNamedGetter):
962         (WebCore::JSTestCustomNamedGetterPrototype::create):
963         (WebCore::JSTestCustomNamedGetterPrototype::createStructure):
964         (WebCore::JSTestCustomNamedGetterPrototype::JSTestCustomNamedGetterPrototype):
965         (WebCore::JSTestCustomNamedGetterConstructor::createStructure):
966         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
967         (WebCore::JSTestEventConstructorConstructor::finishCreation):
968         (WebCore::JSTestEventConstructor::finishCreation):
969         (WebCore::JSTestEventConstructor::createPrototype):
970         * bindings/scripts/test/JS/JSTestEventConstructor.h:
971         (WebCore::JSTestEventConstructor::create):
972         (WebCore::JSTestEventConstructor::createStructure):
973         (JSTestEventConstructor):
974         (WebCore::JSTestEventConstructorPrototype::create):
975         (WebCore::JSTestEventConstructorPrototype::createStructure):
976         (WebCore::JSTestEventConstructorPrototype::JSTestEventConstructorPrototype):
977         (WebCore::JSTestEventConstructorConstructor::createStructure):
978         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
979         (WebCore::JSTestEventTargetConstructor::finishCreation):
980         (WebCore::JSTestEventTarget::finishCreation):
981         (WebCore::JSTestEventTarget::createPrototype):
982         * bindings/scripts/test/JS/JSTestEventTarget.h:
983         (WebCore::JSTestEventTarget::create):
984         (WebCore::JSTestEventTarget::createStructure):
985         (JSTestEventTarget):
986         (WebCore::JSTestEventTargetPrototype::create):
987         (WebCore::JSTestEventTargetPrototype::createStructure):
988         (WebCore::JSTestEventTargetPrototype::JSTestEventTargetPrototype):
989         (WebCore::JSTestEventTargetConstructor::createStructure):
990         * bindings/scripts/test/JS/JSTestException.cpp:
991         (WebCore::JSTestExceptionConstructor::finishCreation):
992         (WebCore::JSTestException::finishCreation):
993         (WebCore::JSTestException::createPrototype):
994         * bindings/scripts/test/JS/JSTestException.h:
995         (WebCore::JSTestException::create):
996         (WebCore::JSTestException::createStructure):
997         (JSTestException):
998         (WebCore::JSTestExceptionPrototype::create):
999         (WebCore::JSTestExceptionPrototype::createStructure):
1000         (WebCore::JSTestExceptionPrototype::JSTestExceptionPrototype):
1001         (WebCore::JSTestExceptionConstructor::createStructure):
1002         * bindings/scripts/test/JS/JSTestInterface.cpp:
1003         (WebCore::JSTestInterfaceConstructor::finishCreation):
1004         (WebCore::JSTestInterface::finishCreation):
1005         (WebCore::JSTestInterface::createPrototype):
1006         * bindings/scripts/test/JS/JSTestInterface.h:
1007         (WebCore::JSTestInterface::create):
1008         (WebCore::JSTestInterface::createStructure):
1009         (JSTestInterface):
1010         (WebCore::JSTestInterfacePrototype::create):
1011         (WebCore::JSTestInterfacePrototype::createStructure):
1012         (WebCore::JSTestInterfacePrototype::JSTestInterfacePrototype):
1013         (WebCore::JSTestInterfaceConstructor::createStructure):
1014         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1015         (WebCore::JSTestMediaQueryListListenerConstructor::finishCreation):
1016         (WebCore::JSTestMediaQueryListListener::finishCreation):
1017         (WebCore::JSTestMediaQueryListListener::createPrototype):
1018         (WebCore::jsTestMediaQueryListListenerPrototypeFunctionMethod):
1019         * bindings/scripts/test/JS/JSTestMediaQueryListListener.h:
1020         (WebCore::JSTestMediaQueryListListener::create):
1021         (WebCore::JSTestMediaQueryListListener::createStructure):
1022         (JSTestMediaQueryListListener):
1023         (WebCore::JSTestMediaQueryListListenerPrototype::create):
1024         (WebCore::JSTestMediaQueryListListenerPrototype::createStructure):
1025         (WebCore::JSTestMediaQueryListListenerPrototype::JSTestMediaQueryListListenerPrototype):
1026         (WebCore::JSTestMediaQueryListListenerConstructor::createStructure):
1027         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1028         (WebCore::JSTestNamedConstructorConstructor::finishCreation):
1029         (WebCore::JSTestNamedConstructorNamedConstructor::finishCreation):
1030         (WebCore::JSTestNamedConstructor::finishCreation):
1031         (WebCore::JSTestNamedConstructor::createPrototype):
1032         * bindings/scripts/test/JS/JSTestNamedConstructor.h:
1033         (WebCore::JSTestNamedConstructor::create):
1034         (WebCore::JSTestNamedConstructor::createStructure):
1035         (JSTestNamedConstructor):
1036         (WebCore::JSTestNamedConstructorPrototype::create):
1037         (WebCore::JSTestNamedConstructorPrototype::createStructure):
1038         (WebCore::JSTestNamedConstructorPrototype::JSTestNamedConstructorPrototype):
1039         (WebCore::JSTestNamedConstructorConstructor::createStructure):
1040         (WebCore::JSTestNamedConstructorNamedConstructor::createStructure):
1041         * bindings/scripts/test/JS/JSTestNode.cpp:
1042         (WebCore::JSTestNodeConstructor::finishCreation):
1043         (WebCore::JSTestNode::finishCreation):
1044         (WebCore::JSTestNode::createPrototype):
1045         * bindings/scripts/test/JS/JSTestNode.h:
1046         (WebCore::JSTestNode::create):
1047         (WebCore::JSTestNode::createStructure):
1048         (JSTestNode):
1049         (WebCore::JSTestNodePrototype::create):
1050         (WebCore::JSTestNodePrototype::createStructure):
1051         (WebCore::JSTestNodePrototype::JSTestNodePrototype):
1052         (WebCore::JSTestNodeConstructor::createStructure):
1053         * bindings/scripts/test/JS/JSTestObj.cpp:
1054         (WebCore::JSTestObjConstructor::finishCreation):
1055         (WebCore::JSTestObj::finishCreation):
1056         (WebCore::JSTestObj::createPrototype):
1057         (WebCore::jsTestObjCachedAttribute1):
1058         (WebCore::jsTestObjCachedAttribute2):
1059         (WebCore::setJSTestObjConditionalAttr4Constructor):
1060         (WebCore::setJSTestObjConditionalAttr5Constructor):
1061         (WebCore::setJSTestObjConditionalAttr6Constructor):
1062         (WebCore::setJSTestObjAnyAttribute):
1063         (WebCore::setJSTestObjReplaceableAttribute):
1064         * bindings/scripts/test/JS/JSTestObj.h:
1065         (WebCore::JSTestObj::create):
1066         (WebCore::JSTestObj::createStructure):
1067         (JSTestObj):
1068         (WebCore::JSTestObjPrototype::create):
1069         (WebCore::JSTestObjPrototype::createStructure):
1070         (WebCore::JSTestObjPrototype::JSTestObjPrototype):
1071         (WebCore::JSTestObjConstructor::createStructure):
1072         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1073         (WebCore::JSTestOverloadedConstructorsConstructor::finishCreation):
1074         (WebCore::JSTestOverloadedConstructors::finishCreation):
1075         (WebCore::JSTestOverloadedConstructors::createPrototype):
1076         * bindings/scripts/test/JS/JSTestOverloadedConstructors.h:
1077         (WebCore::JSTestOverloadedConstructors::create):
1078         (WebCore::JSTestOverloadedConstructors::createStructure):
1079         (JSTestOverloadedConstructors):
1080         (WebCore::JSTestOverloadedConstructorsPrototype::create):
1081         (WebCore::JSTestOverloadedConstructorsPrototype::createStructure):
1082         (WebCore::JSTestOverloadedConstructorsPrototype::JSTestOverloadedConstructorsPrototype):
1083         (WebCore::JSTestOverloadedConstructorsConstructor::createStructure):
1084         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1085         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::finishCreation):
1086         (WebCore::JSTestSerializedScriptValueInterface::finishCreation):
1087         (WebCore::JSTestSerializedScriptValueInterface::createPrototype):
1088         (WebCore::jsTestSerializedScriptValueInterfaceCachedValue):
1089         (WebCore::jsTestSerializedScriptValueInterfaceCachedReadonlyValue):
1090         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.h:
1091         (WebCore::JSTestSerializedScriptValueInterface::create):
1092         (WebCore::JSTestSerializedScriptValueInterface::createStructure):
1093         (JSTestSerializedScriptValueInterface):
1094         (WebCore::JSTestSerializedScriptValueInterfacePrototype::create):
1095         (WebCore::JSTestSerializedScriptValueInterfacePrototype::createStructure):
1096         (WebCore::JSTestSerializedScriptValueInterfacePrototype::JSTestSerializedScriptValueInterfacePrototype):
1097         (WebCore::JSTestSerializedScriptValueInterfaceConstructor::createStructure):
1098         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1099         (WebCore::JSTestTypedefsConstructor::finishCreation):
1100         (WebCore::JSTestTypedefs::finishCreation):
1101         (WebCore::JSTestTypedefs::createPrototype):
1102         * bindings/scripts/test/JS/JSTestTypedefs.h:
1103         (WebCore::JSTestTypedefs::create):
1104         (WebCore::JSTestTypedefs::createStructure):
1105         (JSTestTypedefs):
1106         (WebCore::JSTestTypedefsPrototype::create):
1107         (WebCore::JSTestTypedefsPrototype::createStructure):
1108         (WebCore::JSTestTypedefsPrototype::JSTestTypedefsPrototype):
1109         (WebCore::JSTestTypedefsConstructor::createStructure):
1110         * bridge/c/CRuntimeObject.h:
1111         (JSC::Bindings::CRuntimeObject::createStructure):
1112         * bridge/c/c_instance.cpp:
1113         (JSC::Bindings::CRuntimeMethod::create):
1114         (JSC::Bindings::CRuntimeMethod::createStructure):
1115         (JSC::Bindings::CRuntimeMethod::finishCreation):
1116         * bridge/jsc/BridgeJSC.cpp:
1117         (JSC::Bindings::Instance::createRuntimeObject):
1118         * bridge/objc/ObjCRuntimeObject.h:
1119         (JSC::Bindings::ObjCRuntimeObject::createStructure):
1120         * bridge/objc/objc_instance.mm:
1121         (ObjCRuntimeMethod::create):
1122         (ObjCRuntimeMethod::createStructure):
1123         (ObjCRuntimeMethod::finishCreation):
1124         * bridge/objc/objc_runtime.h:
1125         (JSC::Bindings::ObjcFallbackObjectImp::createStructure):
1126         * bridge/objc/objc_runtime.mm:
1127         (JSC::Bindings::ObjcFallbackObjectImp::ObjcFallbackObjectImp):
1128         (JSC::Bindings::ObjcFallbackObjectImp::finishCreation):
1129         * bridge/qt/qt_instance.cpp:
1130         (JSC::Bindings::QtRuntimeObject::createStructure):
1131         (JSC::Bindings::QtInstance::~QtInstance):
1132         (JSC::Bindings::QtInstance::getQtInstance):
1133         * bridge/runtime_array.cpp:
1134         (JSC::RuntimeArray::RuntimeArray):
1135         (JSC::RuntimeArray::finishCreation):
1136         * bridge/runtime_array.h:
1137         (JSC::RuntimeArray::create):
1138         (JSC::RuntimeArray::createStructure):
1139         (RuntimeArray):
1140         * bridge/runtime_method.cpp:
1141         (JSC::RuntimeMethod::finishCreation):
1142         * bridge/runtime_method.h:
1143         (JSC::RuntimeMethod::create):
1144         (JSC::RuntimeMethod::createStructure):
1145         (RuntimeMethod):
1146         * bridge/runtime_object.cpp:
1147         (JSC::Bindings::RuntimeObject::RuntimeObject):
1148         (JSC::Bindings::RuntimeObject::finishCreation):
1149         * bridge/runtime_object.h:
1150         (JSC::Bindings::RuntimeObject::createStructure):
1151         * bridge/runtime_root.cpp:
1152         (JSC::Bindings::RootObject::RootObject):
1153         (JSC::Bindings::RootObject::gcProtect):
1154         (JSC::Bindings::RootObject::gcUnprotect):
1155         (JSC::Bindings::RootObject::updateGlobalObject):
1156         (JSC::Bindings::RootObject::addRuntimeObject):
1157         * bridge/runtime_root.h:
1158         (RootObject):
1159         * dom/Node.cpp:
1160         * dom/Node.h:
1161         (JSC):
1162         * dom/ScriptExecutionContext.cpp:
1163         (WebCore::ScriptExecutionContext::vm):
1164         * dom/ScriptExecutionContext.h:
1165         (JSC):
1166         (ScriptExecutionContext):
1167         * html/HTMLCanvasElement.cpp:
1168         (WebCore::HTMLCanvasElement::createImageBuffer):
1169         * html/HTMLImageLoader.cpp:
1170         (WebCore::HTMLImageLoader::notifyFinished):
1171         * inspector/ScriptArguments.cpp:
1172         (WebCore::ScriptArguments::ScriptArguments):
1173         * loader/icon/IconDatabaseBase.cpp:
1174         (WebCore):
1175         (WebCore::iconDatabase):
1176         (WebCore::setGlobalIconDatabase):
1177         * platform/qt/MemoryUsageSupportQt.cpp:
1178         (WebCore::memoryUsageKB):
1179         (WebCore::actualMemoryUsageKB):
1180         * platform/win/ClipboardUtilitiesWin.cpp:
1181         (WebCore::createGlobalData):
1182         * plugins/PluginView.cpp:
1183         (WebCore::PluginView::start):
1184         (WebCore::PluginView::stop):
1185         (WebCore::PluginView::performRequest):
1186         (WebCore::PluginView::npObject):
1187         (WebCore::PluginView::privateBrowsingStateChanged):
1188         * plugins/blackberry/PluginViewBlackBerry.cpp:
1189         (WebCore::PluginView::dispatchNPEvent):
1190         (WebCore::PluginView::setNPWindowIfNeeded):
1191         (WebCore::PluginView::platformStart):
1192         (WebCore::PluginView::getWindowInfo):
1193         * plugins/efl/PluginViewEfl.cpp:
1194         (WebCore::PluginView::dispatchNPEvent):
1195         * plugins/gtk/PluginViewGtk.cpp:
1196         (WebCore::PluginView::dispatchNPEvent):
1197         (WebCore::PluginView::handleKeyboardEvent):
1198         (WebCore::PluginView::handleMouseEvent):
1199         (WebCore::PluginView::setNPWindowIfNeeded):
1200         (WebCore::PluginView::platformStart):
1201         * plugins/mac/PluginViewMac.mm:
1202         (WebCore::PluginView::platformStart):
1203         * plugins/qt/PluginViewQt.cpp:
1204         (WebCore::PluginView::dispatchNPEvent):
1205         (WebCore::PluginView::setNPWindowIfNeeded):
1206         * plugins/win/PluginViewWin.cpp:
1207         (WebCore::PluginView::dispatchNPEvent):
1208         (WebCore::PluginView::handleKeyboardEvent):
1209         (WebCore::PluginView::handleMouseEvent):
1210         (WebCore::PluginView::setNPWindowRect):
1211         * testing/js/WebCoreTestSupport.cpp:
1212         (WebCoreTestSupport::injectInternalsObject):
1213         * xml/XMLHttpRequest.cpp:
1214         (WebCore::XMLHttpRequest::dropProtection):
1215
1216 2013-04-18  Oliver Hunt  <oliver@apple.com>
1217
1218         Fix windows build by moving template definition to JSDOMBinding.h
1219
1220         * bindings/js/JSDOMBinding.h:
1221         (WebCore):
1222         * bindings/scripts/CodeGeneratorJS.pm:
1223         (GenerateImplementation):
1224         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1225         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
1226         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1227         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1228         * bindings/scripts/test/JS/JSTestException.cpp:
1229         * bindings/scripts/test/JS/JSTestInterface.cpp:
1230         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1231         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1232         * bindings/scripts/test/JS/JSTestObj.cpp:
1233         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1234         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1235         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1236
1237 2013-04-18  Eric Carlson  <eric.carlson@apple.com>
1238
1239         Forced subtitles never rendered
1240         https://bugs.webkit.org/show_bug.cgi?id=114818
1241
1242         Reviewed by Jer Noble.
1243
1244         No new tests, media/track/track-forced-subtitles-in-band.html was updated to test this change.
1245
1246         * html/track/TextTrack.cpp:
1247         (WebCore::TextTrack::isRendered): "forced" tracks are rendered.
1248
1249 2013-04-17  Anders Carlsson  <andersca@apple.com>
1250
1251         Change storage factory functions to take a PageGroup and Page respectively
1252         https://bugs.webkit.org/show_bug.cgi?id=114776
1253
1254         Reviewed by Beth Dakin.
1255
1256         Change StorageNamespace::localStorageNamespace to take a PageGroup since WebKit2 needs
1257         to know which local storage namespace belongs to which page group. Also remove the quota parameter from
1258         the sessionStorageNamespace function since that's trivial to get from the Page.
1259
1260         * WebCore.exp.in:
1261         * page/Page.cpp:
1262         (WebCore::Page::sessionStorage):
1263         * page/PageGroup.cpp:
1264         (WebCore::PageGroup::localStorage):
1265         * storage/StorageNamespace.cpp:
1266         (WebCore::StorageNamespace::localStorageNamespace):
1267         (WebCore::StorageNamespace::sessionStorageNamespace):
1268         * storage/StorageNamespace.h:
1269         * storage/StorageNamespaceImpl.cpp:
1270         (WebCore::StorageNamespaceImpl::localStorageNamespace):
1271         (WebCore::StorageNamespaceImpl::sessionStorageNamespace):
1272         * storage/StorageNamespaceImpl.h:
1273         * storage/StorageStrategy.cpp:
1274         (WebCore::StorageStrategy::localStorageNamespace):
1275         (WebCore::StorageStrategy::sessionStorageNamespace):
1276         * storage/StorageStrategy.h:
1277
1278 2013-04-18  Martin Robinson  <mrobinson@igalia.com>
1279
1280         [GTK] fast/canvas/DrawImageSinglePixelStretch.html fails
1281         https://bugs.webkit.org/show_bug.cgi?id=58309
1282
1283         Reviewed by Alejandro G. Castro.
1284
1285         No new tests. This patch unskips a test.
1286
1287         Prevent sampling outside source boundaries, by creating subsurfaces from source surfaces.
1288         This also requires careful handling of negative and floating source rectangles.
1289
1290         * platform/graphics/cairo/PlatformContextCairo.cpp:
1291         (WebCore::PlatformContextCairo::drawSurfaceToContext): Use a subsurface to prevent sampling
1292         outside rectangle boundaries.
1293
1294 2013-04-18  Jonathan Feldstein  <jfeldstein@blackberry.com>
1295
1296         [BlackBerry] Improper initialization of ANGLEResources (resubmission)
1297         https://bugs.webkit.org/show_bug.cgi?id=114814
1298
1299         Reviewed by Yong Li, Rob Buis
1300         Internally reviewed by Maxim Mogilnitsky
1301
1302         MaxDrawBuffers, OES_standard_derivatives, OES_EGL_image_external and ARB_texture_rectangle
1303         are initialized through the ShBuiltInResources function so these fields do not need to be
1304         set again in GraphicsContext3DBlackBerry.cpp. In addition, the extension flags should not
1305         be set to true without getExtension being called (Khronos WebGL specs, section 5.14.14.).
1306         In fact, as a direct result of these extensions being enabled prior to calling
1307         getExtension, a WebGL conformance suite test for GL_OES_standard_derivatives was failing.
1308
1309         * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
1310         (WebCore::GraphicsContext3D::GraphicsContext3D):
1311
1312 2013-04-18  Xuefei Ren  <xren@blackberry.com>
1313
1314         remove build warning(unused parameter)
1315         https://bugs.webkit.org/show_bug.cgi?id=114670
1316
1317         Reviewed by Rob Buis.
1318
1319         remove warning(unused parameter) in
1320         Source/WebCore/html/shadow/MediaControlsBlackBerry.cpp
1321         Source/WebCore/loader/blackberry/CookieJarBlackBerry.cpp
1322         Source/WebCore/platform/blackberry/AuthenticationChallengeManager.cpp
1323         Source/WebCore/platform/blackberry/RenderThemeBlackBerry.cpp
1324         Source/WebCore/platform/network/blackberry/ResourceResponseBlackBerry.cpp
1325         Source/WebCore/platform/network/blackberry/SocketStreamHandleBlackBerry.cpp
1326         Source/WebCore/plugins/blackberry/PluginViewBlackBerry.cpp
1327
1328
1329         * html/shadow/MediaControlsBlackBerry.cpp:
1330         (WebCore::MediaControlFullscreenFullscreenButtonElement::setIsFullscreen):
1331         * loader/blackberry/CookieJarBlackBerry.cpp:
1332         (WebCore::getRawCookies):
1333         (WebCore::deleteCookie):
1334         * platform/blackberry/AuthenticationChallengeManager.cpp:
1335         (WebCore::AuthenticationChallengeManager::notifyChallengeResult):
1336         * platform/blackberry/RenderThemeBlackBerry.cpp:
1337         (WebCore::RenderTheme::themeForPage):
1338         * platform/network/blackberry/ResourceResponseBlackBerry.cpp:
1339         (WebCore::ResourceResponse::doPlatformAdopt):
1340         * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
1341         (WebCore::SocketStreamHandle::notifyStatusReceived):
1342         * plugins/blackberry/PluginViewBlackBerry.cpp:
1343         (WebCore::PluginView::invalidateRegion):
1344
1345 2013-04-18  Xuefei Ren  <xren@blackberry.com>
1346
1347
1348         remove build warning(unused parameter)
1349         https://bugs.webkit.org/show_bug.cgi?id=114670
1350
1351         Reviewed by Rob Buis.
1352
1353         remove builde warning (unused parameter) in
1354         Source/WebCore/platform/blackberry/CursorBlackBerry.cpp
1355
1356         * platform/blackberry/CursorBlackBerry.cpp:
1357         (WebCore::Cursor::Cursor):
1358
1359 2013-04-18  Andreas Kling  <akling@apple.com>
1360
1361         EditingStyle: Avoid some unnecessary CSSStyleDeclaration wrappers.
1362         <http://webkit.org/b/114763>
1363
1364         Reviewed by Antti Koivisto.
1365
1366         removeEquivalentProperties(CSSStyleDeclaration) and removeEquivalentProperties(StylePropertySet)
1367         only have different behavior if the CSSStyleDeclaration is computed style (they differ in handling
1368         of the 'font-size' property.)
1369
1370         Avoid creating a CSSStyleDeclaration for StylePropertySets where we can just pass them in directly.
1371
1372         * editing/EditingStyle.cpp:
1373         (WebCore::EditingStyle::removeStyleAddedByNode):
1374         (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
1375
1376 2013-04-18  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1377
1378         Unset :hover in inner documents
1379         https://bugs.webkit.org/show_bug.cgi?id=114446
1380
1381         Reviewed by Antonio Gomes.
1382
1383         Fixes a regression from r145126 where hover nodes in inner documents was sometimes
1384         not unset. Additionally it uses the new api from r145126 to avoid an unnecessary
1385         hit test in touch-event handling.
1386
1387         Test: fast/events/touch/frame-hover-update.html
1388
1389         * dom/Document.cpp:
1390         (WebCore::Document::updateHoverActiveState):
1391         * page/EventHandler.cpp:
1392         (WebCore::shouldGesturesTriggerActive):
1393         (WebCore::EventHandler::handleTouchEvent):
1394
1395 2013-04-18  Seokju Kwon  <seokju.kwon@gmail.com>
1396
1397         Web Inspector: Toolbar icons are displayed incorrectly
1398         https://bugs.webkit.org/show_bug.cgi?id=114792
1399
1400         Reviewed by Timothy Hatcher.
1401
1402         Inspector uses small toolbar icons when docking the inspector.
1403         So icons should have different x position.
1404
1405         No tests because no behavior change is expected.
1406
1407         * inspector/front-end/inspector.css: Add missing 'background-position-x' values.
1408         (body.dock-to-bottom .toolbar-item.profiles .toolbar-icon):
1409         (body.dock-to-bottom .toolbar-item.cpu-profiler .toolbar-icon):
1410         (body.dock-to-bottom .toolbar-item.css-profiler .toolbar-icon):
1411         (body.dock-to-bottom .toolbar-item.heap-profiler .toolbar-icon):
1412         (body.dock-to-bottom .toolbar-item.canvas-profiler .toolbar-icon):
1413         (body.dock-to-bottom .toolbar-item.memory-chart-profiler .toolbar-icon):
1414         (body.dock-to-bottom .toolbar-item.memory-snapshot-profiler .toolbar-icon):
1415
1416 2013-04-17  Jaehun Lim  <ljaehun.lim@samsung.com>
1417
1418         [css3-text] Rendering -webkit-hanging value for text-indent from css3-text
1419         https://bugs.webkit.org/show_bug.cgi?id=114663
1420
1421         Reviewed by Beth Dakin.
1422
1423         This patch is the rendering part to support hanging value for text-indent.
1424         "hanging" means "Inverts which lines are affected."
1425         It's prefixed and guarded by CSS3_TEXT flag.
1426
1427         Spec: http://dev.w3.org/csswg/css-text/#text-indent
1428
1429         Test: fast/css3-text/css3-text-indent/text-indent-each-line-hanging.html
1430
1431         * rendering/RenderBlockLineLayout.cpp:
1432         (WebCore::requiresIndent): Inverted the return value when "-webkit-hanging" is applied.
1433
1434 2013-04-17  James Craig  <james@cookiecrook.com>
1435
1436         AX: aria-level does not override implicit level on h1, h2, etc
1437         https://bugs.webkit.org/show_bug.cgi?id=114692
1438
1439         Reviewed by Chris Fleizach.
1440
1441         aria-level now works on headings without an explicit role="heading" defined. Updated existing test coverage.
1442
1443         * accessibility/AccessibilityNodeObject.cpp:
1444         (WebCore::AccessibilityNodeObject::headingLevel):
1445
1446 2013-04-17  Chris Fleizach  <cfleizach@apple.com>
1447
1448         AX: VoiceOver says everything that isn't a link is a "clickable" in Safari reader?
1449         https://bugs.webkit.org/show_bug.cgi?id=114687
1450
1451         Reviewed by Tim Horton.
1452
1453         VoiceOver is saying all text is clickable, because AXPress is exposed as an action on static text.
1454         That is happening, because there's a click handler on the body element in this case.
1455
1456         I think the best plan to keep existing functionality, but fix this case is not to expose
1457         the press action for static text when the handler is on the body element.
1458
1459         Test: platform/mac/accessibility/press-action-not-exposed-when-body-is-click-handler.html
1460
1461         * accessibility/AccessibilityNodeObject.cpp:
1462         (WebCore::AccessibilityNodeObject::mouseButtonListener):
1463            Change from checking getAttributeEventListener to hasEventListeners. The former only
1464            checks if "onclick" is installed on the element and does not work with addEventListener!
1465
1466         * accessibility/AccessibilityObject.cpp:
1467         (WebCore::AccessibilityObject::isAccessibilityObjectSearchMatchAtIndex):
1468         * accessibility/AccessibilityObject.h:
1469         (WebCore::AccessibilityObject::isStaticText):
1470
1471 2013-04-17  Simon Fraser  <simon.fraser@apple.com>
1472
1473         Fix GraphicsLayerCA::recursiveVisibleRectChangeRequiresFlush() to do predictive visible rect expansion
1474         https://bugs.webkit.org/show_bug.cgi?id=114775
1475
1476         Reviewed by Tim Horton.
1477
1478         GraphicsLayerCA::recursiveVisibleRectChangeRequiresFlush() is intended to answer the question
1479         "if your visible rect is changed to X, would any tiles be created or destroyed?".
1480         
1481         However, for compositing layer tiled layers, we do some predictive visible rect expansion based on how
1482         the visible rect is changing when we actually commit visible rect changes. recursiveVisibleRectChangeRequiresFlush()
1483         was not doing that, causing it to give confusing answers, so fix it to do so.
1484         
1485         Both now call adjustTiledLayerVisibleRect(), and it's cleaner to make this a static function.
1486         
1487         A somewhat unrelated change is to take the layer bounds origin into account
1488         in GraphicsLayerCA::computeVisibleRect(). Desktop WebKit never sets this, but it's used
1489         on other platforms for composited scrolling, so needs to be taken into account
1490         when computing visible rects.
1491
1492         * platform/graphics/ca/GraphicsLayerCA.cpp:
1493         (WebCore::GraphicsLayerCA::recursiveVisibleRectChangeRequiresFlush):
1494         (WebCore::GraphicsLayerCA::computeVisibleRect):
1495         (WebCore::GraphicsLayerCA::adjustTiledLayerVisibleRect):
1496         (WebCore::GraphicsLayerCA::updateVisibleRect):
1497         * platform/graphics/ca/GraphicsLayerCA.h:
1498         (GraphicsLayerCA):
1499
1500 2013-04-17  Oliver Hunt  <oliver@apple.com>
1501
1502         Automate generation of toJS function for classes that need to report extra memory usage
1503         https://bugs.webkit.org/show_bug.cgi?id=114768
1504
1505         Reviewed by Geoff Garen.
1506
1507         Only really used by AudioBuffer for now.  The other classes that need it can be
1508         trivially refactored at a later date.
1509
1510         * Modules/webaudio/AudioBuffer.idl:
1511         * bindings/js/JSAudioBufferCustom.cpp:
1512         * bindings/js/JSDOMBinding.h:
1513         (WebCore):
1514         (HasMemoryCost):
1515         (NoType):
1516         (BaseMixin):
1517         * bindings/scripts/CodeGeneratorJS.pm:
1518         (GenerateImplementation):
1519
1520 2013-04-17  Dirk Schulze  <krit@webkit.org>
1521
1522         BasicShapeFunctions should use RenderStyle instead of StyleResolver
1523         https://bugs.webkit.org/show_bug.cgi?id=114743
1524
1525         Reviewed by Antti Koivisto.
1526
1527         BasicShapeFunctions does include RenderStyle instead of StyleResolver now.
1528         This is a simple refactoring patch, no new tests.
1529
1530         * css/BasicShapeFunctions.cpp:
1531         (WebCore::convertToLength): Use style and rootElementStyle directly.
1532         (WebCore::basicShapeForValue): Ditto.
1533         * css/BasicShapeFunctions.h:
1534         (WebCore):
1535         * css/DeprecatedStyleBuilder.cpp:
1536         (WebCore::ApplyPropertyClipPath::applyValue):
1537         (WebCore::ApplyPropertyExclusionShape::applyValue):
1538
1539 2013-04-17  Beth Dakin  <bdakin@apple.com>
1540
1541         Content inside frames and scrollbars in overflow areas hit-tests incorrectly when 
1542         the WKView has a header
1543         https://bugs.webkit.org/show_bug.cgi?id=114769
1544
1545         Reviewed by Simon Fraser.
1546
1547         convertToRenderer() and convertFromRenderer() need to factor in the headerHeight, 
1548         much like all of the conversion functions on ScrollView. 
1549         * page/FrameView.cpp:
1550         (WebCore::FrameView::convertFromRenderer):
1551         (WebCore::FrameView::convertToRenderer):
1552
1553         The scrollPosition equivalent of the existing scrollOffsetRelativeToDocument() 
1554         function. 
1555         * platform/ScrollView.cpp:
1556         (WebCore::ScrollView::scrollPositionRelativeToDocument):
1557         * platform/ScrollView.h:
1558         (ScrollView):
1559
1560 2013-04-17  Andreas Kling  <akling@apple.com>
1561
1562         Remove FragmentScriptingPermission.h include from Element.h.
1563         <http://webkit.org/b/114757>
1564
1565         Rubber-stamped by Anders Carlsson.
1566
1567         * dom/Element.h:
1568
1569 2013-04-17  Mark Lam  <mark.lam@apple.com>
1570
1571         Add LLINT and baseline JIT support for timing out scripts.
1572         https://bugs.webkit.org/show_bug.cgi?id=114577.
1573
1574         Reviewed by Geoffrey Garen.
1575
1576         Replaced use of the obsolete JSGlobalData.terminator methods with the
1577         JSGlobalData.watchdog equivalents.
1578
1579         * bindings/js/JSEventListener.cpp:
1580         (WebCore::JSEventListener::handleEvent):
1581         * bindings/js/SerializedScriptValue.cpp:
1582         (WebCore::SerializedScriptValue::maybeThrowExceptionIfSerializationFailed):
1583         * bindings/js/WorkerScriptController.cpp:
1584         (WebCore::WorkerScriptController::evaluate):
1585         (WebCore::WorkerScriptController::scheduleExecutionTermination):
1586         (WebCore::WorkerScriptController::isExecutionTerminating):
1587
1588 2013-04-16  Jer Noble <jer.noble@apple.com>
1589
1590         Crash in WebCore::HTMLMediaElement::~HTMLMediaElement.
1591         https://bugs.webkit.org/show_bug.cgi?id=113531
1592
1593         Reviewed by Eric Carlson.
1594
1595         No new tests, though this is intermittently reproducible with
1596         http/tests/misc/delete-frame-during-readystatechange.html under ASAN.
1597
1598         * html/HTMLMediaElement.cpp:
1599         (WebCore::HTMLMediaElement::~HTMLMediaElement): Clear the media player manually
1600             before the destructor exits. Clearing the media player may cancel a resource load,
1601             which can trigger a readystatechange event. It's possible for the HTMLMediaElement
1602             to attempt to fire an abort event within the readystatechange event, even though it is
1603             now in an inconsistent state. Clearling the media player before finishing the destructor
1604             ensures that the HTMLMediaElement will at least still be alive if this case is triggered.
1605             Set m_completelyLoaded to true to ensure that if userCancelledLoad() is called, it doesn't
1606             attempt to fire events while destructing.
1607
1608 2013-04-17  Sergio Correia  <sergio.correia@openbossa.org>
1609
1610         Web Inspector: make generate-inspector-protocol-version work with python3 
1611         https://bugs.webkit.org/show_bug.cgi?id=114717
1612
1613         Revision r146765 added print() calls that made the script complain about 
1614         invalid syntax when using python3.
1615
1616         This commit replaces such calls with calls to sys.stdout.write(), analogous
1617         to the sys.stderr.write() ones already used throughout the file.
1618
1619         Reviewed by Timothy Hatcher.
1620
1621         No new tests. No user visible behavior changed.
1622
1623         * inspector/generate-inspector-protocol-version:
1624         (main):
1625
1626 2013-04-17  Seokju Kwon  <seokju.kwon@gmail.com>
1627
1628         Web Inspector: Fix Localized string warngs
1629         https://bugs.webkit.org/show_bug.cgi?id=114718
1630
1631         Reviewed by Timothy Hatcher.
1632
1633         No tests because no behavior change is expected.
1634
1635         * English.lproj/localizedStrings.js:
1636
1637 2013-04-17  Csaba Osztrogon√°c  <ossy@webkit.org>
1638
1639         [Qt] Unreviewed Windows buildfix.
1640
1641         * platform/qt/DragDataQt.cpp: Add a missing include.
1642
1643 2013-04-17  ChangSeok Oh  <shivamidow@gmail.com>
1644
1645         Breaking Float: floated block level element following inline element in floated container breaks to next line
1646         https://bugs.webkit.org/show_bug.cgi?id=45274
1647
1648         Reviewed by David Hyatt.
1649
1650         Fix position issue of floating element in floating element.
1651         Inner floating element has placed at next line when outer floating element has text,
1652         even though previous line has spaces enough to fit it.
1653         To solve this, the width of a space added temporarily for prohibiting duplication more than 2 empty spaces
1654         is subtracted when floating element is checked whether it fits on a line.
1655
1656         Tests: css2.1/20110323/floats-001.html
1657                css2.1/20110323/floats-102.html
1658                fast/inline-block/float-both-whitespace.html
1659                fast/inline-block/float-leading-whitespace.html
1660                fast/inline-block/float-no-whitespace.html
1661                fast/inline-block/float-trailing-whitespace.html
1662                fast/inline-block/multiple-floats-with-whitespace.html
1663
1664         * rendering/RenderBlockLineLayout.cpp:
1665         (WebCore::LineWidth::LineWidth):
1666         (WebCore::LineWidth::fitsOnLine):
1667         (WebCore::LineWidth::trailingWhitespaceWidth):
1668         (WebCore::LineWidth::setTrailingWhitespaceWidth):
1669         (LineWidth):
1670         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
1671
1672 2013-04-17  Leo Yang  <leoyang@rim.com>
1673
1674         Lots of unused parameter warnings in filesystem code
1675         https://bugs.webkit.org/show_bug.cgi?id=114747
1676
1677         Reviewed by Carlos Garcia Campos.
1678
1679         Comment out or remove unused parameter identifiers.
1680
1681         No functionalities changed, no new tests.
1682
1683         * Modules/filesystem/DOMFileSystem.cpp: Comment out |snapshot| because
1684         it is referred in the comments inside the function.
1685         (WebCore):
1686         * Modules/filesystem/DOMFileSystemSync.cpp: Ditto.
1687         (WebCore):
1688         * Modules/filesystem/FileWriter.cpp: Remove unused |ec|.
1689         (WebCore::FileWriter::abort):
1690         * Modules/filesystem/FileWriterSync.cpp:
1691         (WebCore::FileWriterSync::didWrite): Remove unused |bytes|.
1692         * platform/AsyncFileSystemCallbacks.h:
1693         (WebCore::AsyncFileSystemCallbacks::didOpenFileSystem): Comment out unused parameters
1694         because the function is inlined.
1695         (WebCore::AsyncFileSystemCallbacks::didCreateSnapshotFile): Ditto.
1696         (WebCore::AsyncFileSystemCallbacks::didReadDirectoryEntry): Ditto.
1697         (WebCore::AsyncFileSystemCallbacks::didReadDirectoryEntries): Ditto.
1698         (WebCore::AsyncFileSystemCallbacks::didCreateFileWriter): Ditto.
1699         * platform/blackberry/WorkerAsyncFileSystemBlackBerry.cpp:
1700         (WebCore::WorkerAsyncFileSystemBlackBerry::createWriterOnMainThread): Remove unused |client|.
1701
1702 2013-04-17  Brent Fulgham  <bfulgham@webkit.org>
1703
1704         [Windows, WinCairo] Stop individually building WTF files in WebCore
1705         https://bugs.webkit.org/show_bug.cgi?id=114705
1706
1707         Reviewed by Anders Carlsson.
1708
1709         * WebCore.vcproj/WebCore.vcproj: Remove references to WTF objects.
1710         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
1711         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
1712
1713 2013-04-17  Dirk Schulze  <krit@webkit.org>
1714
1715         Make lengthConversion methods and arguments const
1716         https://bugs.webkit.org/show_bug.cgi?id=114749
1717
1718         Reviewed by Andreas Kling.
1719
1720         Refactoring, no new tests.
1721
1722         * css/CSSCalculationValue.cpp:
1723         (WebCore::CSSCalcValue::computeLengthPx):
1724         (WebCore::CSSCalcPrimitiveValue::toCalcValue):
1725         (WebCore::CSSCalcPrimitiveValue::computeLengthPx):
1726         (WebCore::CSSCalcBinaryOperation::toCalcValue):
1727         (WebCore::CSSCalcBinaryOperation::computeLengthPx):
1728         * css/CSSCalculationValue.h:
1729         (WebCore::CSSCalcValue::toCalcValue):
1730         (CSSCalcValue):
1731         * css/CSSPrimitiveValue.cpp:
1732         (WebCore::CSSPrimitiveValue::computeLength):
1733         (WebCore::CSSPrimitiveValue::computeLengthDouble):
1734         (WebCore::CSSPrimitiveValue::viewportPercentageLength):
1735         * css/CSSPrimitiveValue.h:
1736         (CSSPrimitiveValue):
1737         * css/CSSPrimitiveValueMappings.h:
1738         (WebCore::CSSPrimitiveValue::convertToLength):
1739         * css/StyleResolver.cpp:
1740         (WebCore::StyleResolver::convertToIntLength):
1741         (WebCore::StyleResolver::convertToFloatLength):
1742         * css/StyleResolver.h:
1743         (StyleResolver):
1744
1745 2013-04-17  Bruno de Oliveira Abinader  <bruno.abinader@basyskom.com>
1746
1747         [refactor] Moved ScriptedAnimationController common code to inline function
1748         https://bugs.webkit.org/show_bug.cgi?id=114681
1749
1750         Reviewed by Daniel Bates.
1751
1752         Avoided duplicated code by moving ScriptedAnimationController clearance
1753         code to a common function used by both Document::dispose() and
1754         Document::detach().
1755
1756         No new tests, no behavior changes.
1757
1758         * dom/Document.cpp:
1759         (WebCore::Document::dispose):
1760         (WebCore::Document::detach):
1761         (WebCore::Document::clearScriptedAnimationController): Added.
1762         * dom/Document.h:
1763         (Document):
1764
1765 2013-04-17  Chris Fleizach  <cfleizach@apple.com>
1766
1767         AX: When img@alt is undefined, WebKit should use @title as accessibility label if available
1768         https://bugs.webkit.org/show_bug.cgi?id=114535
1769
1770         Reviewed by Tim Horton.
1771
1772         Don't hide images from Accessibility that have the title attribute on them.
1773
1774         Test: accessibility/empty-image-with-title.html
1775
1776         * accessibility/AccessibilityRenderObject.cpp:
1777         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
1778
1779 2013-04-17  Arpita Bahuguna  <a.bah@samsung.com>
1780
1781         getAttribute does not behave correctly for mixed-case attributes on HTML elements
1782         https://bugs.webkit.org/show_bug.cgi?id=105713
1783
1784         Reviewed by Andreas Kling.
1785
1786         getAttribute() and getAttributeNode() APIs do not convert the
1787         passed attribute name to lowercase before comparing against the
1788         existing attributes.
1789         The specification however states that the passed name should
1790         be converted to ASCII lowercase before checking for the existence
1791         of the given attribute. [www.w3.org/TR/domcore/#dom-element-getattribute]
1792
1793         Test: fast/dom/Element/getAttribute-case-insensitivity.html
1794
1795         * dom/Element.h:
1796         (WebCore::ElementData::getAttributeItemIndex):
1797         getAttributeItemIndex() accepts a bool param 'shouldIgnoreAttributeCase'
1798         which specifies whether or not the attribute's case should be ignored
1799         before comparison but we don't really convert the passed name to lowercase
1800         before carrying out the comparison.
1801
1802         Thus, when called from APIs such as getAttribute() and getAttributeNode()
1803         which do not explicitally convert the attribute name to lowercase
1804         before calling on this method, it fails to carry out a case-insensitive
1805         search.
1806
1807         Have thus made changes to convert the passed attribute's name to
1808         lowercase if 'shouldIgnoreAttributeCase' is true.
1809
1810 2013-04-17  John Griggs  <jgriggs@blackberry.com>
1811
1812         [BlackBerry] Add support for filesystem: URLs to BlackBerry Media Player.
1813         https://bugs.webkit.org/show_bug.cgi?id=114686
1814         https://przilla.ott.qnx.com/bugzilla/show_bug.cgi?id=314865
1815
1816         Reviewed by Rob Buis.
1817
1818         Translate filesystem: URLs to file:// URLs for use by the media player, but only after the filesystem: URL has been checked for security, etc.
1819
1820         * platform/graphics/blackberry/MediaPlayerPrivateBlackBerry.cpp:
1821         (WebCore::MediaPlayerPrivate::load):
1822         (WebCore::MediaPlayerPrivate::onError):
1823         (WebCore::MediaPlayerPrivate::onDurationChanged):
1824         (WebCore::MediaPlayerPrivate::notifyChallengeResult):
1825
1826 2013-04-17  Brendan Long  <b.long@cablelabs.com>
1827
1828         [GStreamer] Eclipse warnings in MediaPlayerPrivateGStreamer
1829         https://bugs.webkit.org/show_bug.cgi?id=114654
1830
1831         Reviewed by Philippe Normand.
1832
1833         No new tests (nothing added).
1834
1835         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1836         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
1837         Initialize m_volumeAndMuteInitialized
1838         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
1839         (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
1840         Initialize signal handlers to 0.
1841
1842 2013-04-17  Andrei Bucur  <abucur@adobe.com>
1843
1844         [CSS Regions] Remove m_flowThread from NodeRenderingContext
1845         https://bugs.webkit.org/show_bug.cgi?id=114732
1846
1847         Reviewed by Antti Koivisto.
1848
1849         Cleanup NodeRenderingContext. Remove unused member m_flowThread.
1850
1851         Tests: None needed.
1852
1853         * dom/NodeRenderingContext.cpp:
1854         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
1855         * dom/NodeRenderingContext.h: Removed m_flowThread.
1856
1857 2013-04-17  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1858
1859         [Qt] MediaPlayerPrivateQt.cpp doesn't build in debug
1860
1861         Unreviewed build fix.
1862
1863         We need to include Logging.h to get the LOG definitions.
1864
1865         * platform/graphics/qt/MediaPlayerPrivateQt.cpp:
1866
1867 2013-04-17  Claudio Saavedra  <csaavedra@igalia.com>
1868
1869         execCommand("RemoveFormat") might remove format after the selection
1870         https://bugs.webkit.org/show_bug.cgi?id=112240
1871
1872         Reviewed by Ryosuke Niwa.
1873
1874         Tests: editing/execCommand/remove-format-multiple-elements-mac.html
1875
1876         This bug is hit when ApplyStyleCommand is used to change the
1877         style and the current selection ends in the beginning of a new node.
1878         The bug is actually a two-fold thing:
1879
1880         1. There was no check as to whether the end node is really
1881         selected or not, and format was always removed from it with
1882         pushDownInlineStyleAroundNode(). An equivalent check for the start
1883         node was already in place, so fix it analogously.
1884
1885         2. Previous stage might change the dom tree, resulting in a render
1886         tree that is not up-to-date. Position::upstream() is later used
1887         and, in order to be able to find a visually equivalent position in
1888         a text node, this method needs the render tree to be up-to-date,
1889         therefore, a call to updateLayoutIgnorePendingStylesheets() is
1890         necessary.
1891
1892         * editing/ApplyStyleCommand.cpp:
1893         (WebCore::ApplyStyleCommand::removeInlineStyle): Make sure that no
1894         format is removed from the end node if it's not fully selected.
1895         (WebCore::ApplyStyleCommand::nodeFullySelected): Call updateLayoutIgnorePendingStylesheets()
1896
1897 2013-04-17  Alberto Garcia  <agarcia@igalia.com>
1898
1899         [BlackBerry] GraphicsContext3D: don't initialize m_extensions in the constructor
1900         https://bugs.webkit.org/show_bug.cgi?id=114726
1901
1902         Reviewed by Carlos Garcia Campos.
1903
1904         m_extensions is now initialized on demand by
1905         GraphicsContext3D::getExtensions().
1906
1907         Doing it in the constructor produces a crash, because
1908         Extensions3DOpenGLES() calls glGetString before the WebGL context
1909         is current.
1910
1911         * platform/graphics/blackberry/GraphicsContext3DBlackBerry.cpp:
1912         (WebCore::GraphicsContext3D::GraphicsContext3D):
1913
1914 2013-04-16  Maciej Stachowiak  <mjs@apple.com>
1915
1916         Replace JSC-specific IDL extended attributes with generic (JSC+V8) ones, now that the distinction no longer matters
1917         https://bugs.webkit.org/show_bug.cgi?id=114712
1918
1919         Reviewed by Dan Bernstein.
1920
1921         No behavior change expected.
1922
1923         * bindings/scripts/IDLAttributes.txt: Remove the JSFoo attributes
1924         that have bare Foo equivalents.
1925         * bindings/scripts/CodeGeneratorJS.pm: Remove support for JSFoo
1926         aliases.
1927         (GetGenerateIsReachable):
1928         (GetCustomIsReachable):
1929         (ShouldGenerateToJSDeclaration):
1930         (ShouldGenerateToJSImplementation):
1931         (HasCustomConstructor):
1932         (HasCustomGetter):
1933         (HasCustomSetter):
1934         (HasCustomMethod):
1935
1936         Replace JSFoo attributes with equivalen Foo attributs in all files
1937         below:
1938         
1939         * Modules/geolocation/Geolocation.idl:
1940         * Modules/indexeddb/IDBDatabase.idl:
1941         * Modules/indexeddb/IDBObjectStore.idl:
1942         * Modules/webaudio/DOMWindowWebAudio.idl:
1943         * Modules/websockets/DOMWindowWebSocket.idl:
1944         * Modules/websockets/WorkerContextWebSocket.idl:
1945         * css/CSSRule.idl:
1946         * css/CSSRuleList.idl:
1947         * css/CSSStyleDeclaration.idl:
1948         * css/CSSValue.idl:
1949         * css/MediaList.idl:
1950         * css/StyleMedia.idl:
1951         * css/StyleSheet.idl:
1952         * dom/MessagePort.idl:
1953         * dom/MutationObserver.idl:
1954         * dom/Node.idl:
1955         * fileapi/Blob.idl:
1956         * html/HTMLDocument.idl:
1957         * html/HTMLTemplateElement.idl:
1958         * html/canvas/ArrayBuffer.idl:
1959         * html/canvas/CanvasRenderingContext.idl:
1960         * html/canvas/DataView.idl:
1961         * html/canvas/EXTDrawBuffers.idl:
1962         * html/canvas/EXTTextureFilterAnisotropic.idl:
1963         * html/canvas/OESElementIndexUint.idl:
1964         * html/canvas/OESStandardDerivatives.idl:
1965         * html/canvas/OESTextureFloat.idl:
1966         * html/canvas/OESTextureHalfFloat.idl:
1967         * html/canvas/OESVertexArrayObject.idl:
1968         * html/canvas/WebGLCompressedTextureATC.idl:
1969         * html/canvas/WebGLCompressedTexturePVRTC.idl:
1970         * html/canvas/WebGLCompressedTextureS3TC.idl:
1971         * html/canvas/WebGLDebugRendererInfo.idl:
1972         * html/canvas/WebGLDebugShaders.idl:
1973         * html/canvas/WebGLDepthTexture.idl:
1974         * html/canvas/WebGLLoseContext.idl:
1975         * html/track/TextTrack.idl:
1976         * html/track/TextTrackCue.idl:
1977         * html/track/TextTrackList.idl:
1978         * loader/appcache/DOMApplicationCache.idl:
1979         * page/BarInfo.idl:
1980         * page/Console.idl:
1981         * page/DOMSelection.idl:
1982         * page/DOMWindow.idl:
1983         * page/History.idl:
1984         * page/Location.idl:
1985         * page/MemoryInfo.idl:
1986         * page/Navigator.idl:
1987         * page/Screen.idl:
1988         * page/WorkerNavigator.idl:
1989         * plugins/DOMMimeTypeArray.idl:
1990         * plugins/DOMPluginArray.idl:
1991         * storage/Storage.idl:
1992         * workers/AbstractWorker.idl:
1993         * workers/SharedWorker.idl:
1994         * workers/Worker.idl:
1995         * workers/WorkerContext.idl:
1996         * workers/WorkerLocation.idl:
1997         * xml/XMLHttpRequestUpload.idl:
1998
1999 2013-04-16  Beth Dakin  <bdakin@apple.com>
2000
2001         Re-name Page::layoutMilestones() to Page::requestedLayoutMilestones()
2002         https://bugs.webkit.org/show_bug.cgi?id=114713
2003
2004         Reviewed by Simon Fraser.
2005
2006         * page/FrameView.cpp:
2007         (WebCore::FrameView::performPostLayoutTasks):
2008         * page/Page.cpp:
2009         (WebCore::Page::Page):
2010         (WebCore::Page::addLayoutMilestones):
2011         (WebCore::Page::removeLayoutMilestones):
2012         (WebCore::Page::isCountingRelevantRepaintedObjects):
2013         * page/Page.h:
2014         (WebCore::Page::requestedLayoutMilestones):
2015         (Page):
2016         * rendering/RenderLayerCompositor.cpp:
2017         (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
2018
2019 2013-04-16  Patrick Gansterer  <paroga@webkit.org>
2020
2021         [CMake] Fix dependecy calculation for generated inspector files
2022         https://bugs.webkit.org/show_bug.cgi?id=114092
2023
2024         Reviewed by Brent Fulgham.
2025
2026         At least in a generated Visual Studio solution the files generated via
2027         CodeGeneratorInspector.py are considered outdated all the time because
2028         the code generator only touches the file when the content changed.
2029         Add an --write_always parameter to the script to touch the file always.
2030
2031         * CMakeLists.txt:
2032         * inspector/CodeGeneratorInspector.py:
2033
2034 2013-04-16  Anders Carlsson  <andersca@apple.com>
2035
2036         Clone storage namespaces for window.open
2037         https://bugs.webkit.org/show_bug.cgi?id=114703
2038
2039         Reviewed by Sam Weinig.
2040
2041         Pass the new page to StorageNamespace::copy.
2042
2043         * page/Chrome.cpp:
2044         (WebCore::Chrome::createWindow):
2045         * storage/StorageNamespace.h:
2046         (StorageNamespace):
2047         * storage/StorageNamespaceImpl.cpp:
2048         (WebCore::StorageNamespaceImpl::copy):
2049         * storage/StorageNamespaceImpl.h:
2050         (WebCore):
2051         (StorageNamespaceImpl):
2052
2053 2013-04-16  Sam Weinig  <sam@webkit.org>
2054
2055         Fix fallout after r148545.
2056
2057         * platform/text/TextChecking.h:
2058         Move Platform defines that were incorrectly in WebCore, into Platform.h
2059
2060 2013-04-16  Hans Muller  <hmuller@adobe.com>
2061
2062         [CSS Exclusions] polygon shape-inside layout fails
2063         https://bugs.webkit.org/show_bug.cgi?id=114402
2064
2065         Reviewed by Dirk Schulze.
2066
2067         The firstIncludedIntervalLogicalTop() method's implementation relied on optimistic
2068         assumptions about floating point accuracy which, in rare cases, caused it to discard
2069         first-fit locations based on the intersection of the minLogicalIntervalTop offset edge
2070         and a polygon offset edge. Now: we do not verify that first-fit locations based on the
2071         intersection of an offset edge and the minLogicalIntervalTop offset edge are below
2072         the horizontal minLogicalIntervalTop line. They're essentially below the line "by definition".
2073
2074         Test: fast/exclusions/shape-inside/shape-inside-polygon-layout.html
2075
2076         * rendering/ExclusionPolygon.cpp:
2077         (WebCore::ExclusionPolygon::firstIncludedIntervalLogicalTop): Avoid floating point problems
2078             when checking intersections with the offset edge based on minLogicalIntervalTop.
2079         * rendering/ExclusionPolygon.h:
2080         (WebCore::OffsetPolygonEdge::OffsetPolygonEdge): Initialize the basis field.
2081         (WebCore::OffsetPolygonEdge::basis): Report what the offset edge is "based on": a polygon
2082             edge, the top of the line, or a (reflex) vertex.
2083         (OffsetPolygonEdge): Added the Basis enum to enable tracking what the geometry of
2084             an offset edge is based on.
2085
2086 2013-04-16  Jer Noble  <jer.noble@apple.com>
2087
2088         Further unreviewed build fix: protect JSAudioBufferCustom with a ENABLE(WEB_AUDIO) check.
2089
2090         * bindings/js/JSAudioBufferCustom.cpp:
2091
2092 2013-04-16  Jer Noble  <jer.noble@apple.com>
2093
2094         Unreviewed build fix; add new JSAudioBuffer.cpp file to more build systems.
2095
2096         * GNUmakefile.list.am:
2097         * Target.pri:
2098         * UseJSC.cmake:
2099
2100 2013-04-16  Jer Noble  <jer.noble@apple.com>
2101
2102         Repeated use of decodeAudioData() causes leak
2103         https://bugs.webkit.org/show_bug.cgi?id=114709
2104
2105         Reviewed by Geoffrey Garen.
2106
2107         Report the correct size of the AudioBuffer to the garbage collector so that creating
2108         these large buffers will trigger garbage collection.
2109
2110         * Modules/webaudio/AudioBuffer.cpp:
2111         (WebCore::AudioBuffer::memoryCost): Added; simple sum of the buffer sizes in m_channels;
2112         * Modules/webaudio/AudioBuffer.h:
2113         * Modules/webaudio/AudioBuffer.idl: Add the CustomToJSObject flag.
2114         * WebCore.xcodeproj/project.pbxproj:
2115         * bindings/js/JSAudioBufferCustom.cpp: Added.
2116         (WebCore::toJS): Added; report the extra size of an AudioBuffer when the wrapper
2117             is created.
2118
2119 2013-04-16  Beth Dakin  <bdakin@apple.com>
2120
2121         Need a new layout milestone to notify bundle clients when the header has been 
2122         flushed
2123         https://bugs.webkit.org/show_bug.cgi?id=114706
2124         -and corresponding-
2125         <rdar://problem/13657284>
2126
2127         Reviewed by Simon Fraser.
2128
2129         New LayoutMilestone is DidFirstFlushForHeaderLayer.
2130         * page/LayoutMilestones.h:
2131         
2132         New API to allow removing a LayoutMilestone.
2133         * WebCore.exp.in:
2134         * page/Page.cpp:
2135         (WebCore::Page::removeLayoutMilestones):
2136         * page/Page.h:
2137         (Page):
2138
2139         New boolean member variable m_headerLayerAwaitingFirstFlush keeps track of whether 
2140         we need to send the DidFirstFlushForHeaderLayer milestone.
2141         * rendering/RenderLayerCompositor.h:
2142         (RenderLayerCompositor):
2143         * rendering/RenderLayerCompositor.cpp:
2144         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
2145
2146         Send the milestone if appropriate.
2147         (WebCore::RenderLayerCompositor::flushPendingLayerChanges):
2148
2149          Set m_headerLayerAwaitingFirstFlush to true for a newly created layer.
2150         (WebCore::RenderLayerCompositor::updateLayerForHeader):
2151
2152 2013-04-16  Tim Horton  <timothy_horton@apple.com>
2153
2154         PlugIn Snapshotting: Crashes refreshing non-main-frame PDFPlugins
2155         https://bugs.webkit.org/show_bug.cgi?id=114702
2156         <rdar://problem/13542020>
2157
2158         Reviewed by Dean Jackson.
2159
2160         If:
2161
2162             a) a plugin fails all the tests in willCreatePlugIn, so it is WaitingForSnapshot there
2163             b) primary plugin detection attempts to restart a plugin between the
2164                time that willCreatePlugIn and didCreatePlugIn fire
2165             c) when didCreatePlugIn fires, shouldAlwaysAutoStart() returns true,
2166                because the plug-in is whitelisted,
2167
2168         we end up reattach()ing and going to Restarted state, and then going straight
2169         to Playing state in didCreatePlugIn.
2170
2171         Instead, primary plugin promotion should be deferred until after the plugin is created,
2172         so that we can take that one last bit of information (shouldAlwaysAutoStart) into account
2173         before restarting and reattaching the plug-in.
2174
2175         * html/HTMLPlugInImageElement.cpp:
2176         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
2177         (WebCore::HTMLPlugInImageElement::setIsPrimarySnapshottedPlugIn):
2178         (WebCore::HTMLPlugInImageElement::restartSnapshottedPlugIn):
2179         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
2180         (WebCore::HTMLPlugInImageElement::subframeLoaderDidCreatePlugIn):
2181         * html/HTMLPlugInImageElement.h:
2182
2183 2013-04-16  Wei James  <james.wei@intel.com>
2184
2185         ASSERTION FAILED: i < size(), UNKNOWN in WebCore::ChannelMergerNode::process
2186         https://bugs.webkit.org/show_bug.cgi?id=112657
2187
2188         Avoid to access input bus in checkNumberOfChannelsForInput() before the
2189         bus is updated with AudioNode::checkNumberOfChannelsForInput().
2190
2191         Reviewed by Chris Rogers.
2192
2193         * Modules/webaudio/ChannelMergerNode.cpp:
2194         (WebCore::ChannelMergerNode::checkNumberOfChannelsForInput):
2195
2196 2013-04-16  Ryosuke Niwa  <rniwa@webkit.org>
2197
2198         Even more Windows build fix and a Qt minimal build fix attempt.
2199
2200         * html/parser/XSSAuditorDelegate.cpp:
2201         * page/win/FrameCGWin.cpp:
2202
2203 2013-04-16  Ryosuke Niwa  <rniwa@webkit.org>
2204
2205         More Windows build fixes.
2206
2207         * platform/win/DragDataWin.cpp:
2208         * platform/win/PasteboardWin.cpp:
2209
2210 2013-04-16  Sam Weinig  <sam@webkit.org>
2211
2212         Windows build fix.
2213
2214         * page/win/FrameWin.cpp:
2215
2216 2013-04-16  Dean Jackson  <dino@apple.com>
2217
2218         PlugIns that resize in user gestures should be immune to snapshotting
2219         https://bugs.webkit.org/show_bug.cgi?id=114697
2220         <rdar://problem/13666258>
2221
2222         Reviewed by Tim Horton.
2223
2224         Now that we snapshot plugins if they resize above the snapshotting threshold,
2225         we need to make sure that we don't do it in response to a user gesture
2226         such as a click.
2227
2228         Due to the complexities of real-world content and the way they often do
2229         things using timeout, I copied the code from the generic user gesture
2230         timeout, which gives a 5 second grace period after clicks.
2231
2232         * html/HTMLPlugInImageElement.cpp:
2233         (WebCore::documentHadRecentUserGesture): New static function to share the code for
2234             checking the time since the last click (or whatever).
2235         (WebCore::HTMLPlugInImageElement::checkSizeChangeForSnapshotting): Make sure
2236             to test for a user gesture.
2237         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Move the
2238             code into the new function.
2239
2240 2013-04-15  Sam Weinig  <sam@webkit.org>
2241
2242         Remove more #includes from Frame.h
2243         https://bugs.webkit.org/show_bug.cgi?id=114642
2244
2245         Reviewed by Anders Carlsson.
2246
2247         Convert Editor, FrameSelection, EventHandler and AnimationController into
2248         OwnPtrs, to avoid inclusion.
2249
2250         * accessibility/AXObjectCache.cpp:
2251         * accessibility/AccessibilityObject.cpp:
2252         * accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp:
2253         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2254         * bindings/objc/DOM.mm:
2255         * dom/CharacterData.cpp:
2256         * dom/ContainerNode.cpp:
2257         * dom/Element.cpp:
2258         * editing/AlternativeTextController.cpp:
2259         * editing/CompositeEditCommand.cpp:
2260         * editing/DeleteButtonController.h:
2261         * editing/EditingStyle.cpp:
2262         * editing/InsertLineBreakCommand.cpp:
2263         * editing/SpellChecker.cpp:
2264         * editing/SpellingCorrectionCommand.cpp:
2265         * editing/TextInsertionBaseCommand.cpp:
2266         * history/CachedFrame.cpp:
2267         * html/HTMLAnchorElement.cpp:
2268         * html/HTMLInputElement.cpp:
2269         * html/HTMLPlugInElement.cpp:
2270         * html/HTMLSelectElement.cpp:
2271         * html/HTMLTextAreaElement.cpp:
2272         * html/HTMLTextFormControlElement.cpp:
2273         * html/TextFieldInputType.cpp:
2274         * html/shadow/ClearButtonElement.cpp:
2275         * html/shadow/MediaControlElements.cpp:
2276         * html/shadow/SliderThumbElement.cpp:
2277         * inspector/InspectorPageAgent.h:
2278         * loader/FrameLoader.cpp:
2279         * page/DOMWindow.cpp:
2280         * page/Frame.cpp:
2281         * page/Frame.h:
2282         * page/FrameView.cpp:
2283         * page/FrameView.h:
2284         * page/Page.cpp:
2285         * page/TouchAdjustment.cpp:
2286         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
2287         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2288         * platform/gtk/PasteboardGtk.cpp:
2289         * platform/qt/ClipboardQt.cpp:
2290         * rendering/HitTestResult.cpp:
2291         * rendering/RenderBlock.cpp:
2292         * rendering/RenderEmbeddedObject.cpp:
2293         * rendering/RenderLayer.cpp:
2294         * rendering/RenderNamedFlowThread.cpp:
2295         * rendering/RenderObject.cpp:
2296         * rendering/RenderSnapshottedPlugIn.cpp:
2297         * svg/graphics/SVGImage.cpp:
2298         * testing/Internals.cpp:
2299
2300 2013-04-16  Jessie Berlin  <jberlin@apple.com>
2301
2302         Speculative Windows build fix.
2303
2304         * platform/win/ContextMenuWin.cpp:
2305
2306 2013-04-16  Eric Carlson  <eric.carlson@apple.com>
2307
2308         [Mac] in-band cues sometimes displayed late
2309         https://bugs.webkit.org/show_bug.cgi?id=114629
2310
2311         Reviewed by Jer Noble.
2312
2313         No new tests, this deals with a platform-specific issue that is extremely timing dependent.
2314
2315         * html/track/InbandTextTrack.cpp:
2316         (WebCore::TextTrackCueMap::add): New, two way cue data <-> cue map.
2317         (WebCore::TextTrackCueMap::find): 
2318         (WebCore::TextTrackCueMap::remove):
2319         (WebCore::InbandTextTrack::updateCueFromCueData): New, update an existing cue. Set cue end time
2320             to video duration if it is unknown.
2321         (WebCore::InbandTextTrack::addGenericCue): Look for existing cues without considering duration
2322             so we can match incomplete cues.
2323         (WebCore::InbandTextTrack::updateGenericCue): New, update an existing cue. This allows us to 
2324             add in-band cues as soon as we get them from the media engine and update them as more
2325             information becomes available.
2326         (WebCore::InbandTextTrack::removeGenericCue): New, remove an existing cue. This is necessary
2327             because we never want to keep an incomplete cue when a seek happens.
2328         (WebCore::InbandTextTrack::removeCue): New, base class override so we can keep the two way
2329             map up to date.
2330         * html/track/InbandTextTrack.h:
2331
2332         * html/track/TextTrack.cpp:
2333         (WebCore::TextTrack::addCue): TextTrack::removeCue takes a RefPtr.
2334         (WebCore::TextTrack::removeCue): Take a RefPtr.
2335         (WebCore::TextTrack::hasCue): Allow caller to request match without considering end time.
2336         * html/track/TextTrack.h:
2337
2338         * html/track/TextTrackCue.cpp:
2339         (WebCore::TextTrackCue::TextTrackCue): Initialize m_processingCueChanges.
2340         (WebCore::TextTrackCue::willChange): Renamed from cueWillChange. Use m_processingCueChanges
2341             to avoid thrashing the track when many cue properties will change.
2342         (WebCore::TextTrackCue::didChange): Renamed from cueDidChange. Use m_processingCueChanges
2343             to avoid thrashing the track when many cue properties will change.
2344         (WebCore::TextTrackCue::setId): cueWillChange -> willChange. cueDidChange -> didChange. 
2345         (WebCore::TextTrackCue::setStartTime): Ditto.
2346         (WebCore::TextTrackCue::setEndTime): Ditto.
2347         (WebCore::TextTrackCue::setPauseOnExit): Ditto.
2348         (WebCore::TextTrackCue::setVertical): Ditto.
2349         (WebCore::TextTrackCue::setSnapToLines): Ditto.
2350         (WebCore::TextTrackCue::setLine): Ditto.
2351         (WebCore::TextTrackCue::setPosition): Ditto.
2352         (WebCore::TextTrackCue::setSize): Ditto.
2353         (WebCore::TextTrackCue::setAlign): Ditto.
2354         (WebCore::TextTrackCue::setText): Ditto.
2355         (WebCore::TextTrackCue::setRegionId): Ditto.
2356         (WebCore::TextTrackCue::isEqual): Renamed from operator==, take match rules param.
2357         * html/track/TextTrackCue.h:
2358
2359         * html/track/TextTrackCueGeneric.cpp:
2360         (WebCore::TextTrackCueGeneric::isEqual): Renamed from operator==, take match rules param.
2361         * html/track/TextTrackCueGeneric.h:
2362
2363         * platform/graphics/InbandTextTrackPrivateClient.h: Make GenericCueData refcounted.
2364         (WebCore::GenericCueData::create): New.
2365         (WebCore::GenericCueData::status): Ditto.
2366         (WebCore::GenericCueData::setStatus): Ditto.
2367         (WebCore::GenericCueData::GenericCueData):
2368
2369         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.cpp:
2370         (WebCore::InbandTextTrackPrivateAVF::processCue): Add cues as soon as we get them from the media
2371             engine, update duration once we know it.
2372         (WebCore::InbandTextTrackPrivateAVF::resetCueValues): Tell the client to remove all incomplete
2373             cues we have delivered.
2374         * platform/graphics/avfoundation/InbandTextTrackPrivateAVF.h:
2375
2376         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2377         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted): Do not flush cues when seek completes,
2378             we did that when the seek started and cues can be delivered before we get the the 
2379             seek completed  notification.
2380
2381 2013-04-16  James Craig  <james@cookiecrook.com>
2382
2383         dfn element should be exposed as AXGroup:AXDefinition
2384         https://bugs.webkit.org/show_bug.cgi?id=108980
2385
2386         Reviewed by Chris Fleizach.
2387
2388         dfn element now exposed as AXGroup:AXDefinition. Updated existing tests.
2389
2390         * accessibility/AccessibilityRenderObject.cpp:
2391         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2392         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2393
2394 2013-04-16  Anders Carlsson  <andersca@apple.com>
2395
2396         Begin chipping away at ScriptState
2397         https://bugs.webkit.org/show_bug.cgi?id=114695
2398
2399         Reviewed by Geoffrey Garen.
2400
2401         Remove ScriptStateProtectedPtr as well as evalEnabled and setEvalEnabled.
2402
2403         * bindings/js/ScriptState.cpp:
2404         * bindings/js/ScriptState.h:
2405         * inspector/InjectedScriptBase.cpp:
2406         (WebCore::InjectedScriptBase::callFunctionWithEvalEnabled):
2407         * inspector/ScriptArguments.cpp:
2408         (WebCore::ScriptArguments::ScriptArguments):
2409         (WebCore::ScriptArguments::globalState):
2410         * inspector/ScriptArguments.h:
2411
2412 2013-04-15  Anders Carlsson  <andersca@apple.com>
2413
2414         Remove unneeded headers from ScriptExecutionContext.h
2415         https://bugs.webkit.org/show_bug.cgi?id=114631
2416
2417         Reviewed by Alexey Proskuryakov.
2418
2419         This shaves another minute off WebCore build time on my MacBook Pro.
2420
2421         * dom/ScriptExecutionContext.cpp:
2422         * dom/ScriptExecutionContext.h:
2423         * fileapi/Blob.cpp:
2424         * rendering/RenderBlock.cpp:
2425         * rendering/RenderBox.cpp:
2426         * rendering/RenderFlowThread.cpp:
2427         * rendering/RenderFrameSet.cpp:
2428         * rendering/RenderIFrame.cpp:
2429         * rendering/RenderImage.cpp:
2430         * rendering/RenderListBox.cpp:
2431         * rendering/RenderListItem.cpp:
2432         * rendering/RenderListMarker.cpp:
2433         * rendering/RenderMedia.cpp:
2434         * rendering/RenderObject.cpp:
2435         * rendering/RenderRegion.cpp:
2436         * rendering/RenderReplaced.cpp:
2437         * rendering/RenderReplica.cpp:
2438         * rendering/RenderRubyRun.cpp:
2439         * rendering/RenderScrollbarPart.cpp:
2440         * rendering/RenderSlider.cpp:
2441         * rendering/RenderTable.cpp:
2442         * rendering/RenderTableCell.cpp:
2443         * rendering/RenderTableRow.cpp:
2444         * rendering/RenderTableSection.cpp:
2445         * rendering/RenderTextControlSingleLine.cpp:
2446         * rendering/RenderTextTrackCue.cpp:
2447         * rendering/RenderVideo.cpp:
2448         * rendering/RenderView.cpp:
2449         * rendering/RenderWidget.cpp:
2450         * rendering/svg/RenderSVGContainer.cpp:
2451         * rendering/svg/RenderSVGForeignObject.cpp:
2452         * rendering/svg/RenderSVGGradientStop.cpp:
2453         * rendering/svg/RenderSVGHiddenContainer.cpp:
2454         * rendering/svg/RenderSVGImage.cpp:
2455         * rendering/svg/RenderSVGResourceContainer.cpp:
2456         * rendering/svg/RenderSVGResourceMarker.cpp:
2457         * rendering/svg/RenderSVGRoot.cpp:
2458         * rendering/svg/RenderSVGShape.cpp:
2459         * rendering/svg/RenderSVGText.cpp:
2460
2461 2013-04-16  Maciej Stachowiak  <mjs@apple.com>
2462
2463         Remove even yet still more traces of v8
2464         https://bugs.webkit.org/show_bug.cgi?id=114693
2465
2466         Reviewed by Anders Carlsson.
2467
2468         No behavior change.
2469
2470         * bindings/generic/ActiveDOMCallback.h:
2471         (WebCore::ActiveDOMCallback::isScriptControllerTerminating): Remove a V8-specific
2472         method and the comment referencing it.
2473         * bindings/generic/ActiveDOMCallback.cpp:
2474         (WebCore::ActiveDOMCallback::isScriptControllerTerminating): ditto
2475         * fileapi/File.cpp:
2476         (WebCore::File::File): Remove a comment referencing v8
2477         * inspector/InjectedScriptExterns.js: ditto
2478
2479 2013-04-16  Alexey Proskuryakov  <ap@apple.com>
2480
2481         Remove unused AlternativeTextClient::dismissDictationAlternativeUI
2482         https://bugs.webkit.org/show_bug.cgi?id=114598
2483
2484         Reviewed by Ryosuke Niwa.
2485
2486         Removing dead code.
2487
2488         * WebCore.exp.in:
2489         * editing/mac/AlternativeTextUIController.h: Made dismissAlternatives() private.
2490         * page/AlternativeTextClient.h:
2491
2492 2013-04-16  Robert Hogan  <robert@webkit.org>
2493
2494         Float at exact multiple of line-height affects too many lines
2495         https://bugs.webkit.org/show_bug.cgi?id=112744
2496
2497         Reviewed by David Hyatt.
2498
2499         Tests: fast/block/float/float-with-fractional-height-vertical-lr.html
2500                fast/block/float/float-with-fractional-height.html
2501
2502         When adding floats to the interval tree used for testing floats' overlap with lineboxes
2503         truncate the dimensions of the float rather than rounding them. This matches the
2504         treatment of linebox dimensions so ensures the test for overlap is comparing like
2505         with like.
2506
2507         * rendering/RenderBlock.cpp:
2508         (WebCore::::collectIfNeeded):
2509         (WebCore::RenderBlock::FloatingObjects::intervalForFloatingObject):
2510         (WebCore::::string):
2511
2512 2013-04-16  Chris Fleizach  <cfleizach@apple.com>
2513
2514         AX: aria-valuetext is not exposed on OS X.
2515         https://bugs.webkit.org/show_bug.cgi?id=114628
2516
2517         Reviewed by Tim Horton.
2518
2519         aria-valuetext is only being exposed on ARIA controls. That's because there were
2520         checks in place so that ONLY ARIA defined controls would return anything related to valuetext.
2521         We should allow this to work on native controls as well.
2522
2523         Test: platform/mac/accessibility/aria-valuetext-on-native-slider.html
2524
2525         * accessibility/AccessibilityNodeObject.cpp:
2526         (WebCore::AccessibilityNodeObject::valueDescription):
2527         (WebCore):
2528         (WebCore::AccessibilityNodeObject::valueForRange):
2529         (WebCore::AccessibilityNodeObject::maxValueForRange):
2530         (WebCore::AccessibilityNodeObject::minValueForRange):
2531         * accessibility/AccessibilityNodeObject.h:
2532         (AccessibilityNodeObject):
2533         * accessibility/AccessibilityObject.cpp:
2534         (WebCore::AccessibilityObject::isRangeControl):
2535              Rename isARIAControl to isRangeControl and make it apply to all elements.
2536         * accessibility/AccessibilityObject.h:
2537
2538 2013-04-15  Jon Lee  <jonlee@apple.com>
2539
2540         RenderView should bail out of paintBoxDecorations() when painting with a different renderer
2541         https://bugs.webkit.org/show_bug.cgi?id=114665
2542         <rdar://problem/13434884>
2543
2544         Reviewed by Simon Fraser.
2545
2546         * rendering/RenderView.cpp:
2547         (WebCore::RenderView::paintBoxDecorations): Add a check to see if we should paint within the renderer.
2548         This check exists in all other implementations of paintBoxDecorations(), and correctly avoids painting the
2549         decorations if the root provided is not the RenderView.
2550
2551 2013-04-16  Max Vujovic  <mvujovic@adobe.com>
2552
2553         [CSS Shaders] Remove the cache of validated programs
2554         https://bugs.webkit.org/show_bug.cgi?id=112844
2555
2556         Reviewed by Dean Jackson.
2557
2558         Since we're caching CustomFilterProgram(s) now, we don't need another cache for
2559         CustomFilterValidatedProgram(s). With this patch, CustomFilterProgram stores a reference
2560         to a lazily created CustomFilterValidatedProgram, and CustomFilterGlobalContext no longer
2561         has a validated program cache.
2562
2563         Also, this patch removes the CustomFilterValidatedProgram's stored reference to
2564         CustomFilterGlobalContext. The removal of the validated program cache would cause
2565         this reference to become weak. Validated programs only needed to keep the global context
2566         reference in order to create a CustomFilterCompiledProgram. In this patch, we create
2567         CustomFilterCompiledProgram(s) in FECustomFilter instead of in CustomFilterValidatedProgram,
2568         so validated programs don't need to store the global context reference anymore.
2569
2570         No new tests. Just Refactoring.
2571
2572         * platform/graphics/filters/CustomFilterCompiledProgram.cpp:
2573         (WebCore::CustomFilterCompiledProgram::CustomFilterCompiledProgram):
2574         * platform/graphics/filters/CustomFilterGlobalContext.cpp:
2575         (WebCore::CustomFilterGlobalContext::~CustomFilterGlobalContext):
2576         * platform/graphics/filters/CustomFilterGlobalContext.h:
2577         (CustomFilterGlobalContext):
2578         * platform/graphics/filters/CustomFilterProgram.cpp:
2579         (WebCore::CustomFilterProgram::validatedProgram):
2580         (WebCore::CustomFilterProgram::setValidatedProgram):
2581         * platform/graphics/filters/CustomFilterProgram.h:
2582         * platform/graphics/filters/CustomFilterValidatedProgram.cpp:
2583         (WebCore::CustomFilterValidatedProgram::CustomFilterValidatedProgram):
2584         (WebCore::CustomFilterValidatedProgram::compiledProgram):
2585         (WebCore::CustomFilterValidatedProgram::setCompiledProgram):
2586         (WebCore::CustomFilterValidatedProgram::~CustomFilterValidatedProgram):
2587         * platform/graphics/filters/CustomFilterValidatedProgram.h:
2588         (CustomFilterValidatedProgram):
2589         * platform/graphics/filters/FECustomFilter.cpp:
2590         (WebCore::FECustomFilter::prepareForDrawing):
2591         * rendering/FilterEffectRenderer.cpp:
2592         * rendering/RenderLayer.cpp:
2593         (WebCore::RenderLayer::computeFilterOperations):
2594
2595 2013-04-16  Anthony Scian  <ascian@blackberry.com>
2596
2597         [BlackBerry] LayerTexture: check if the graphics context is NULL
2598         https://bugs.webkit.org/show_bug.cgi?id=114674
2599
2600         Reviewed by Rob Buis.
2601
2602         Internal PR: 256522
2603
2604         * platform/graphics/blackberry/LayerTexture.cpp:
2605         (WebCore::LayerTexture::setContentsToColor):
2606
2607 2013-04-13  Andreas Kling  <akling@apple.com>
2608
2609         REGRESSION(r148128): window.resizeTo doesn't work from Safari address bar.
2610         <rdar://problem/13635894>
2611         <http://webkit.org/b/114561>
2612
2613         Reviewed by Sam Weinig.
2614
2615         Suppressing window geometry changes while any user gesture is active was a bit too restrictive,
2616         and broke legitimate use-cases. Narrow it down to checking EventHandler::mousePressed().
2617
2618         No test yet, adding one is tracked by <http://webkit.org/b/114561>.
2619
2620         * page/DOMWindow.cpp:
2621         (WebCore::DOMWindow::allowedToChangeWindowGeometry):
2622
2623             Added to share code between all DOMWindow functions that alter window geometry.
2624
2625         (WebCore::DOMWindow::moveBy):
2626         (WebCore::DOMWindow::moveTo):
2627         (WebCore::DOMWindow::resizeBy):
2628         (WebCore::DOMWindow::resizeTo):
2629
2630 2013-04-16  Manuel Rego Casasnovas  <rego@igalia.com>
2631
2632         [GTK][EFL] Remove deprecated libsoup API usage
2633         https://bugs.webkit.org/show_bug.cgi?id=104894
2634
2635         Reviewed by Philippe Normand.
2636
2637         Based on a patch by Claudio Saavedra <csaavedra@igalia.com>.
2638         Remove LIBSOUP_USE_UNSTABLE_REQUEST_API and only include
2639         libsoup/soup.h.
2640
2641         * platform/network/ResourceHandleInternal.h:
2642         * platform/network/soup/GOwnPtrSoup.cpp:
2643         * platform/network/soup/ProxyResolverSoup.h:
2644         * platform/network/soup/ResourceErrorSoup.cpp:
2645         * platform/network/soup/ResourceHandleSoup.cpp:
2646         (WebCore::ensureSessionIsInitialized): No need to add the requester
2647         feature.
2648         (WebCore::createSoupRequestAndMessageForHandle): SoupSession has a
2649         requester API, use it.
2650
2651 2013-04-15  Maciej Stachowiak  <mjs@apple.com>
2652
2653         Remove more traces of the now-obsolete support for V8
2654         https://bugs.webkit.org/show_bug.cgi?id=114657
2655
2656         Reviewed by Ryosuke Niwa.
2657
2658         In addition to passing existing tests, I verified that the ElementFactory
2659         and ElementWrapperFactory files were all textually identical before and after.
2660
2661         * dom/CustomEvent.cpp:
2662         (WebCore): Remove Use(V8) bock.
2663         * dom/CustomEvent.h:
2664         (CustomEvent): ditto
2665         * dom/MessageEvent.cpp:
2666         (WebCore::MessageEvent::MessageEvent): ditto
2667         (WebCore::MessageEvent::initMessageEvent): ditto
2668         * dom/Node.h:
2669         (Node): ditto
2670         * dom/make_event_factory.pl:
2671         (generateImplementation): Remove V8 support.
2672         * dom/make_names.pl: Remove gobs of V8 support and simplify.
2673         (printJSElementIncludes): 
2674         (printConditionalElementIncludes):
2675         (printFactoryCppFile):
2676         (printWrapperFunctions):
2677         (printWrapperFactoryCppFile):
2678         (printWrapperFactoryHeaderFile):
2679         * inspector/InjectedScriptCanvasModuleSource.js: Remove V8 stack
2680         trace code.
2681         * platform/qt/PlatformSupport.h: Remove a macro only used for V8 
2682         bindings.
2683         * svg/SVGZoomAndPan.h:
2684         (SVGZoomAndPan): Remove mention of V8 from comment.
2685
2686 2013-04-15  Ryosuke Niwa  <rniwa@webkit.org>
2687
2688         Potential use after free in ApplyStyleCommand::splitAncestorsWithUnicodeBidi
2689         https://bugs.webkit.org/show_bug.cgi?id=114664
2690
2691         Reviewed by Oliver Hunt.
2692
2693         Use RefPtr as needed.
2694
2695         No new tests since this bug was discovered by code inspection.
2696
2697         * editing/ApplyStyleCommand.cpp:
2698         (WebCore::ApplyStyleCommand::splitAncestorsWithUnicodeBidi):
2699
2700 2013-04-15  Timothy Hatcher  <timothy@apple.com>
2701
2702         Web Inspector: Make var and function declarations work again in the Console.
2703
2704         https://webkit.org/b/114534
2705         rdar://problem/13614477
2706
2707         Reviewed by Oliver Hunt.
2708
2709         * inspector/InjectedScriptSource.js:
2710         (InjectedScript.prototype._evaluateOn): Use 'with' when not evaluating
2711         on a call frame.
2712
2713 2013-04-15  Seokju Kwon  <seokju.kwon@gmail.com>
2714
2715         Web Inspector: Add missing Localized strings
2716         https://bugs.webkit.org/show_bug.cgi?id=114656
2717
2718         Reviewed by Timothy Hatcher.
2719
2720         No tests because no behavior change is expected.
2721
2722         * English.lproj/localizedStrings.js:
2723
2724 2013-04-15  Dean Jackson  <dino@apple.com>
2725
2726         Rename restartedPlugin to isRestartedPlugin. This was
2727         review feedback from r148038 that I thought I fixed
2728         everywhere but failed.
2729         https://bugs.webkit.org/show_bug.cgi?id=114233
2730
2731         * html/HTMLPlugInElement.h:
2732         (WebCore::HTMLPlugInElement::isRestartedPlugin): Prefix with "is".
2733         * html/HTMLPlugInImageElement.cpp:
2734         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement):
2735         (WebCore::HTMLPlugInImageElement::setDisplayState):
2736         (WebCore::HTMLPlugInImageElement::removeSnapshotTimerFired):
2737         * html/HTMLPlugInImageElement.h:
2738         * rendering/RenderEmbeddedObject.cpp:
2739         (WebCore::RenderEmbeddedObject::paintContents):
2740         * rendering/RenderLayerBacking.cpp:
2741         (WebCore::isRestartedPlugin):
2742
2743 2013-04-15  Maciej Stachowiak  <mjs@apple.com>
2744
2745         Remove V8 attribtues from IDLAttributes.txt
2746         https://bugs.webkit.org/show_bug.cgi?id=114651
2747
2748         Reviewed by Sam Weinig.
2749
2750         No tests because no behavior change is expected.
2751
2752         * bindings/scripts/IDLAttributes.txt: Remove V8 attribtues.
2753         * html/track/TextTrackList.idl: Remove a stray V8-specific attribute
2754         (so I guess this change is not useless)
2755
2756 2013-04-15  James Craig  <james@cookiecrook.com>
2757
2758         WebKit should not expose AXSubrole:AXDescriptionList on Mountain Lion as it causes a regression in VoiceOver behavior
2759         https://bugs.webkit.org/show_bug.cgi?id=113975
2760
2761         Reviewed by Chris Fleizach.
2762
2763         Serve NSAccessibilityDescriptionListSubrole or NSAccessibilityDefinitionListSubrole
2764         depending on platform. Updated existing test coverage.
2765
2766         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2767         (-[WebAccessibilityObjectWrapper subrole]):
2768
2769 2013-04-15  Dean Jackson  <dino@apple.com>
2770
2771         Plugins that resize might need to be snapshotted.
2772         https://bugs.webkit.org/show_bug.cgi?id=102157
2773         <rdar://problem/12696259>
2774
2775         Reviewed by Tim Horton.
2776
2777         A plugin could avoid snapshotting if it started very
2778         small (below the threshold where we autostart), and then
2779         resized to be large (above the threshold). Detect this
2780         case and tell the plugin to snapshot.
2781
2782         There unfortunately is a bit of state to track when doing
2783         this. We have to start the snapshotting in a post-layout
2784         task, so we carry a flag to say we're checking size but
2785         not wanting the plugin to update (which would restart it).
2786         We also might be a plugin that would have already restarted
2787         due to a similar plugin being clicked or detected as dominant.
2788         So this patch introduces a member variable that tracks what
2789         decision has been made on snapshotting.
2790
2791         I also added some more logging to be more clear about what is
2792         happening to plugins going through the snapshot process, and
2793         changed the order of the tests in the algorithm so that domain
2794         detection comes before examining the size.
2795
2796         * html/HTMLPlugInImageElement.cpp:
2797         (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): Initialise
2798             the two new member variables.
2799         (WebCore::HTMLPlugInImageElement::setDisplayState): Mark a restarted
2800             plugin as NeverSnapshot. This means that if it later resizes above the
2801             threshold, it won't trigger the snapshot detection.
2802         (WebCore::HTMLPlugInImageElement::checkSnapshotStatus): Renamed from
2803             updateSnapshotInfo. This now updates the snapshot, but also runs
2804             the check for size changes.
2805         (WebCore::addPlugInsFromNodeListMatchingPlugInOrigin): Gather all plugins
2806             that look like a restarting plugin, not just those snapshotted. That
2807             way they can all be marked as NeverSnapshot.
2808         (WebCore::HTMLPlugInImageElement::restartSimilarPlugIns): Bless every
2809             plugin that looks similar, whether or not it is snapshotted.
2810         (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): More logging.
2811         (WebCore::HTMLPlugInImageElement::setIsPrimarySnapshottedPlugIn): Ditto.
2812         (WebCore::HTMLPlugInImageElement::checkSizeChangeForSnapshotting): New
2813             method. If the plugin was below the threshold and is now above it,
2814             begin the snapshotting process.
2815         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn): Plugins
2816             that were marked as NeverSnapshot should start immediately. Move the origin
2817             test earlier in the method. If a plugin avoided snapshotting due to size,
2818             remember the size.
2819         (WebCore::HTMLPlugInImageElement::subframeLoaderDidCreatePlugIn): Mark the
2820             plugin as NeverSnapshot.
2821
2822         * html/HTMLPlugInImageElement.h:
2823         (HTMLPlugInImageElement): Four new member variables:
2824             - the decision we made regarding snapshotting (or not), uses the SnapshotDecision enum
2825             - the size when it avoided snapshotting
2826             - a flag to indicate the post layout update was triggered due to
2827               a size change
2828         (WebCore::HTMLPlugInImageElement::needsCheckForSizeChange): New method.
2829         (WebCore::HTMLPlugInImageElement::setNeedsCheckForSizeChange): New method.
2830         (WebCore::HTMLPlugInImageElement::snapshotDecision): Return the decision
2831             regarding snapshotting or not snapshotting.
2832
2833         * page/FrameView.cpp:
2834         (WebCore::FrameView::addWidgetToUpdate): Guard updating the widget. We don't
2835             want to do it when we're checking for a size change in the plugin.
2836         (WebCore::FrameView::updateWidget): Call new name.
2837
2838         * plugins/PluginViewBase.h:
2839         (WebCore::PluginViewBase::beginSnapshottingRunningPlugin): Empty virtual
2840             method to snapshot a running plugin.
2841
2842         * rendering/RenderEmbeddedObject.cpp:
2843         (WebCore::RenderEmbeddedObject::layout): If the plugin has increased in
2844             size add it to the post layout list so that it will be checked.
2845
2846 2013-04-15  Chris Fleizach  <cfleizach@apple.com>
2847
2848         activating a focused link to an in-page fragment ID should transfer focus to the target of the link when possible
2849         https://bugs.webkit.org/show_bug.cgi?id=17450
2850
2851         Reviewed by Maciej Stachowiak.
2852
2853         When a fragment is scrolled to due to an activation event or on load, focus should attempt to 
2854         move to the fragment if possible.
2855
2856         Test: fast/dom/fragment-activation-focuses-target.html
2857
2858         * page/FrameView.cpp:
2859         (WebCore::FrameView::scrollToAnchor):
2860
2861 2013-04-12  Maciej Stachowiak  <mjs@apple.com>
2862
2863         Remove V8-specific extended attributes from IDL files
2864         https://bugs.webkit.org/show_bug.cgi?id=114523
2865
2866         Reviewed by Geoffrey Garen.
2867
2868         No tests because no behavior change is expected.
2869
2870         * Modules/encryptedmedia/MediaKeyMessageEvent.idl:
2871         * Modules/encryptedmedia/MediaKeyNeededEvent.idl:
2872         * Modules/encryptedmedia/MediaKeySession.idl:
2873         * Modules/encryptedmedia/MediaKeys.idl:
2874         * Modules/filesystem/HTMLInputElementFileSystem.idl:
2875         * Modules/indexeddb/IDBAny.idl:
2876         * Modules/mediasource/MediaSource.idl:
2877         * Modules/mediasource/SourceBuffer.idl:
2878         * Modules/mediasource/SourceBufferList.idl:
2879         * Modules/mediastream/MediaStream.idl:
2880         * Modules/webaudio/AudioDestinationNode.idl:
2881         * html/track/TextTrackCue.idl:
2882         * html/track/TextTrackCueList.idl:
2883         * html/track/TextTrackList.idl:
2884         * html/track/TextTrackRegion.idl:
2885         * html/track/TextTrackRegionList.idl:
2886         * html/track/TrackEvent.idl:
2887         * storage/Storage.idl:
2888         * svg/SVGDocument.idl:
2889         * svg/SVGElement.idl:
2890         * workers/WorkerContext.idl:
2891         * xml/XMLHttpRequest.idl:
2892         * xml/XPathNSResolver.idl:
2893
2894 2013-04-15  Anders Carlsson  <andersca@apple.com>
2895
2896         ScriptWrappable subclasses shouldn't have to include WeakInlines.h
2897         https://bugs.webkit.org/show_bug.cgi?id=114641
2898
2899         Reviewed by Alexey Proskuryakov.
2900
2901         Remove ScriptWrappableInlines.h includes, they're not needed anymore.
2902
2903         * css/WebKitCSSMatrix.cpp:
2904         * dom/ClientRect.cpp:
2905         * dom/ClientRectList.cpp:
2906         * dom/Clipboard.cpp:
2907         * dom/DOMStringMap.cpp:
2908         * dom/Event.cpp:
2909         * dom/MutationRecord.cpp:
2910         * fileapi/FileList.cpp:
2911         * page/BarInfo.cpp:
2912         * plugins/DOMMimeTypeArray.cpp:
2913         * plugins/DOMPlugin.cpp:
2914         * plugins/DOMPluginArray.cpp:
2915         * storage/Storage.cpp:
2916
2917 2013-04-15  Igor Oliveira  <igor.o@sisa.samsung.com>
2918
2919         Call directly RenderBlock::deleteLineBoxTree
2920         https://bugs.webkit.org/show_bug.cgi?id=102761
2921
2922         Reviewed by Darin Adler.
2923
2924         Instead of implementing RenderLineBoxList::deleteLineBoxTree logic inside 
2925         RenderBlock::determineStartPosition, we can reuse the code. The commentaries added
2926         in the changeset #86628 are not valid anymore, nextRootBox is casting m_nextLineBox 
2927         and nextLineBox is returning m_nextLineBox.
2928
2929         * rendering/RenderBlockLineLayout.cpp:
2930         (WebCore::RenderBlock::determineStartPosition):
2931
2932 2013-04-15  Anders Carlsson  <andersca@apple.com>
2933
2934         Remove files related to quota and proximity events from the Xcode project
2935         https://bugs.webkit.org/show_bug.cgi?id=114635
2936
2937         Reviewed by Benjamin Poulain.
2938
2939         * WebCore.xcodeproj/project.pbxproj:
2940         * history/PageCache.cpp:
2941         * page/DOMWindow.cpp:
2942
2943 2013-04-15  Patrick Gansterer  <paroga@webkit.org>
2944
2945         [CMake] Add WTF_USE_*_UNICODE variables
2946         https://bugs.webkit.org/show_bug.cgi?id=114556
2947
2948         Reviewed by Brent Fulgham.
2949
2950         WTF_USE_ICU_UNICODE and WTF_USE_WCHAR_UNICODE are used to
2951         reduce duplication in the platform specific CMake files.
2952
2953         * CMakeLists.txt:
2954         * PlatformBlackBerry.cmake:
2955         * PlatformEfl.cmake:
2956         * PlatformWinCE.cmake:
2957
2958 2013-04-15  Eric Carlson  <eric.carlson@apple.com>
2959
2960         HTMLMediaElement::removeTextTrack should clear track client
2961         https://bugs.webkit.org/show_bug.cgi?id=114630
2962
2963         Reviewed by Jer Noble.
2964
2965         No new tests, this is clean-up that prevents a potential crash.
2966
2967         * html/HTMLMediaElement.cpp:
2968         (WebCore::HTMLMediaElement::removeTextTrack): Clear the track client.
2969
2970 2013-04-15  Robert Hogan  <robert@webkit.org>
2971
2972         An inline element with an absolutely positioned child does not correctly calculate/render padding and margin
2973         https://bugs.webkit.org/show_bug.cgi?id=47554
2974
2975         Reviewed by David Hyatt.
2976
2977         When looking for padding/margin to add from the start of a child's parent skip past any leading positioned siblings as 
2978         we don't add the padding/margin of the common parent when skipping past them in |skipLeadingWhitespace|. We
2979         don't need to worry about the case of trailing positioned objects as we will account for their parent's
2980         border/margin/padding when we encounter them in |nextSegmentBreak|.
2981
2982         Test: fast/inline/padding-before-leading-positioned-element-contributes-width.html
2983
2984         * rendering/RenderBlockLineLayout.cpp:
2985         (WebCore::previousInFlowSibling):
2986         (WebCore):
2987         (WebCore::inlineLogicalWidth):
2988
2989 2013-04-15  peavo@outlook.com  <peavo@outlook.com>
2990
2991         [WinCairo] Compile fix.
2992         https://bugs.webkit.org/show_bug.cgi?id=114623
2993
2994         Reviewed by Brent Fulgham.
2995
2996         * platform/network/curl/CookieJarCurl.cpp: Added required header files.
2997
2998 2013-04-15  Rob Buis  <rbuis@rim.com>
2999
3000         Fix some compiler warnings (miscellaneous)
3001         https://bugs.webkit.org/show_bug.cgi?id=80790
3002
3003         Reviewed by Darin Adler.
3004
3005         It does not seem needed to initialize jpeg_create_compress struct to zero,
3006         all that is needed is set the err field. See for instance SkImageDecoder_libjpeg.cpp.
3007
3008         * platform/image-encoders/JPEGImageEncoder.cpp:
3009         (WebCore::compressRGBABigEndianToJPEG):
3010
3011 2013-04-15  Patrick Gansterer  <paroga@webkit.org>
3012
3013         [GTK] Remove platform specific implementation of KURL::fileSystemPath()
3014         https://bugs.webkit.org/show_bug.cgi?id=114133
3015
3016         Reviewed by Martin Robinson.
3017
3018         r147883 added a generic implementation of this function,
3019         which can be used by all ports to share the code.
3020
3021         * GNUmakefile.list.am:
3022         * platform/KURL.cpp:
3023         (WebCore):
3024         * platform/gtk/KURLGtk.cpp: Removed.
3025
3026 2013-04-15  Csaba Osztrogon√°c  <ossy@webkit.org>
3027
3028         Debug buildfix after r148433.
3029         https://bugs.webkit.org/show_bug.cgi?id=108295
3030
3031         Reviewed by Allan Sandfeld Jensen.
3032
3033         * platform/graphics/texmap/TextureMapperLayer.h:
3034         (WebCore::TextureMapperLayer::children): Added.
3035
3036 2013-04-15  Noam Rosenthal  <noam@webkit.org>
3037
3038         Coordinated Graphics: Remove GraphicsLayerTextureMapper dependency from CoordinatedGraphicsScene.
3039         https://bugs.webkit.org/show_bug.cgi?id=108295
3040
3041         Since all the changes to the TextureMapperLayer tree now come in a single IPC message via
3042         CoordinatedGraphicsState, we don't need the additional buffering done in GraphicsLayerTextureMapper.
3043
3044         This reduces unnecessary function calls, and also streamlines GraphicsLayerTextureMapper to be used
3045         only in WebKit1 (without CoordinatedGraphics).
3046
3047         Reviewed by Allan Sandfeld Jensen.
3048
3049         No new tests, refactor only.
3050
3051         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
3052         (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
3053         (WebCore::GraphicsLayerTextureMapper::setNeedsDisplay):
3054         (WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
3055         (WebCore::GraphicsLayerTextureMapper::setDrawsContent):
3056         (WebCore::GraphicsLayerTextureMapper::prepareBackingStoreIfNeeded):
3057         (WebCore::GraphicsLayerTextureMapper::updateDebugBorderAndRepaintCount):
3058         (WebCore::GraphicsLayerTextureMapper::updateBackingStoreIfNeeded):
3059         (WebCore):
3060         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
3061         (GraphicsLayerTextureMapper):
3062             Removed references to m_hasOwnBackingStore, which was done to separate the CoordinatedGraphics
3063             path from the WK1 path.
3064
3065         * platform/graphics/texmap/TextureMapperLayer.h:
3066         (WebCore::TextureMapperLayer::drawsContent):
3067         (WebCore::TextureMapperLayer::contentsAreVisible):
3068         (WebCore::TextureMapperLayer::size):
3069         (WebCore::TextureMapperLayer::opacity):
3070         (WebCore::TextureMapperLayer::transform):
3071         (WebCore::TextureMapperLayer::isShowingRepaintCounter):
3072         (WebCore::TextureMapperLayer::fixedToViewport):
3073         (TextureMapperLayer):
3074             Added a few public functions needed by CoordinatedGraphicsScene.
3075
3076         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
3077         (WebCore::layerShouldHaveBackingStore):
3078         (WebCore::CoordinatedGraphicsScene::paintToCurrentGLContext):
3079         (WebCore::CoordinatedGraphicsScene::paintToGraphicsContext):
3080         (WebCore::CoordinatedGraphicsScene::adjustPositionForFixedLayers):
3081         (WebCore::CoordinatedGraphicsScene::createCanvasIfNeeded):
3082         (WebCore::CoordinatedGraphicsScene::syncCanvasIfNeeded):
3083         (WebCore::CoordinatedGraphicsScene::destroyCanvasIfNeeded):
3084         (WebCore::CoordinatedGraphicsScene::setLayerRepaintCountIfNeeded):
3085         (WebCore::CoordinatedGraphicsScene::setLayerChildrenIfNeeded):
3086         (WebCore::CoordinatedGraphicsScene::setLayerFiltersIfNeeded):
3087         (WebCore::CoordinatedGraphicsScene::setLayerState):
3088         (WebCore::CoordinatedGraphicsScene::getLayerByIDIfExists):
3089         (WebCore::CoordinatedGraphicsScene::createLayer):
3090         (WebCore::CoordinatedGraphicsScene::deleteLayer):
3091         (WebCore::CoordinatedGraphicsScene::setRootLayerID):
3092         (WebCore::CoordinatedGraphicsScene::prepareContentBackingStore):
3093         (WebCore::CoordinatedGraphicsScene::createBackingStoreIfNeeded):
3094         (WebCore::CoordinatedGraphicsScene::removeBackingStoreIfNeeded):
3095         (WebCore::CoordinatedGraphicsScene::resetBackingStoreSizeToLayerSize):
3096         (WebCore::CoordinatedGraphicsScene::createTilesIfNeeded):
3097         (WebCore::CoordinatedGraphicsScene::removeTilesIfNeeded):
3098         (WebCore::CoordinatedGraphicsScene::updateTilesIfNeeded):
3099         (WebCore::CoordinatedGraphicsScene::assignImageBackingToLayer):
3100         (WebCore::CoordinatedGraphicsScene::commitSceneState):
3101         (WebCore::CoordinatedGraphicsScene::ensureRootLayer):
3102         (WebCore::CoordinatedGraphicsScene::setLayerAnimationsIfNeeded):
3103         (WebCore::CoordinatedGraphicsScene::findScrollableContentsLayerAt):
3104         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.h:
3105         (CoordinatedGraphicsScene):
3106         (WebCore::CoordinatedGraphicsScene::layerByID):
3107         (WebCore::CoordinatedGraphicsScene::rootLayer):
3108             Use TextureMapperLayer instead of GraphicsLayer and GraphicsLayerTextureMapper.
3109
3110 2013-04-15  Antti Koivisto  <antti@apple.com>
3111
3112         Dynamically triggered subframe loads are causing tile churn
3113         https://bugs.webkit.org/show_bug.cgi?id=114440
3114         
3115         Reviewed by Andreas Kling.
3116         
3117         In some cases we switch in and out of minimal tiles multiple times during page loading. This
3118         creates tile churn where we create speculative tiles and then throw them out. This can be
3119         caused by various reasons including dynamically created subframes.
3120
3121         * page/FrameView.cpp:
3122         (WebCore::FrameView::setIsVisuallyNonEmpty):
3123         
3124             Stay in minimal tiles modes until there is some visual contents. This avoids switching out from minimal
3125             tiles while awaiting response for the initial requests.
3126
3127         * page/FrameView.h:
3128         * rendering/RenderLayerBacking.cpp:
3129         (WebCore::RenderLayerBacking::RenderLayerBacking):
3130         (WebCore::computeTileCoverage):
3131         * rendering/RenderLayerBacking.h:
3132         (WebCore::RenderLayerBacking::didSwitchToFullTileCoverageDuringLoading):
3133         (WebCore::RenderLayerBacking::setDidSwitchToFullTileCoverageDuringLoading):
3134         
3135             Only switch into minimal coverage mode once per page load.
3136
3137         (RenderLayerBacking):
3138
3139 2013-04-15  Rune Lillesveen  <rune@opera.com>
3140
3141         color-index media feature not supported
3142         https://bugs.webkit.org/show_bug.cgi?id=114468
3143
3144         Reviewed by Kenneth Rohde Christiansen.
3145
3146         Support the color-index media feature. Currently assumes that no WebKit
3147         browser will have an output device that uses a color lookup table.
3148
3149         Tests: fast/media/mq-color-index-01.html
3150                fast/media/mq-color-index-02.html
3151
3152         * css/MediaFeatureNames.h:
3153         (MediaFeatureNames):
3154         * css/MediaQueryEvaluator.cpp:
3155         (WebCore::color_indexMediaFeatureEval):
3156         (WebCore):
3157         (WebCore::min_color_indexMediaFeatureEval):
3158         (WebCore::max_color_indexMediaFeatureEval):
3159         * css/MediaQueryExp.cpp:
3160         (WebCore::featureWithPositiveInteger):
3161         (WebCore::featureWithoutValue):
3162
3163 2013-04-15  Balazs Kelemen  <kbalazs@webkit.org>
3164
3165         [CoordGfx] Background color should not be part of GraphicsLayerState
3166         https://bugs.webkit.org/show_bug.cgi?id=113785
3167
3168         Page background is independent from layer state, send it to the UI
3169         as soon as possible.
3170
3171         Should not cause observable change in behavior so no new tests.
3172
3173         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
3174         (WebCore::CoordinatedGraphicsScene::commitSceneState):
3175         * platform/graphics/texmap/coordinated/CoordinatedGraphicsState.h:
3176
3177 2013-04-15  Carlos Garcia Campos  <cgarcia@igalia.com>
3178
3179         [BlackBerry] Filesystem callback notifyCreateSnapshotFileAndReadMetadata can be called on the wring thread
3180         https://bugs.webkit.org/show_bug.cgi?id=114610
3181
3182         Reviewed by Xan Lopez.
3183
3184         Override notifyCreateSnapshotFileAndReadMetadata to make sure the
3185         callback is called on the right thread.
3186
3187         Fixes a crash in several fast/filesystem test in debug builds.
3188
3189         * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.cpp:
3190         (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyCreateSnapshotFileAndReadMetadata):
3191         (WebCore::WorkerPlatformAsyncFileSystemCallbacks::notifyCreateSnapshotFileAndReadMetadataOnWorkerThread):
3192         * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.h:
3193
3194 2013-04-15  Arvid Nilsson  <anilsson@rim.com>
3195
3196         [BlackBerry][CSS Filters] Non-image content disappears when filter applied
3197         https://bugs.webkit.org/show_bug.cgi?id=114498
3198
3199         Reviewed by Carlos Garcia Campos.
3200
3201         Applying a filter to a div with simple text content caused the div to
3202         disappear.
3203
3204         In https://bugs.webkit.org/show_bug.cgi?id=114276, we added some GL
3205         state save/restore code for vertex attributes to make sure the state
3206         changes done by BlackBerry::Platform::Graphics don't interfere with
3207         GL code executing in WebKit. However, saving and restoring vertex
3208         attribute state won't do much good if those attributes were never
3209         enabled to begin with. Fixed by enabling vertex attributes
3210         appropriately when setting them, so that state can be saved and
3211         restored.
3212
3213         All the CSS Filters layout tests apply the filters to simple rectangles
3214         or images, there's nothing sufficiently complex that we manage to
3215         trigger this GL state conflict in the BlackBerry port. This suggests
3216         adding a new platform-specific layout test would be appropriate, but
3217         since we don't use pixel tests yet, such a test would not help detect
3218         regressions. Ultimately we decided against adding a layout test for
3219         this bug at this time.
3220
3221         * platform/graphics/blackberry/LayerFilterRenderer.cpp:
3222         (WebCore::LayerFilterRenderer::applyActions):
3223
3224 2013-04-14  Jaehun Lim  <ljaehun.lim@samsung.com>
3225
3226         [css3-text] Parsing -webkit-hanging value for text-indent from css3-text
3227         https://bugs.webkit.org/show_bug.cgi?id=113680
3228
3229         Reviewed by Andreas Kling.
3230
3231         This patch is the parsing part to support hanging value for text-indent.
3232         "hanging" means "Inverts which lines are affected."
3233         It's prefixed and guarded by CSS3_TEXT flag.
3234
3235         No new tests, this patch updates existing tests.
3236
3237         * css/CSSComputedStyleDeclaration.cpp:
3238         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3239         * css/CSSParser.cpp:
3240         (WebCore::CSSParser::parseTextIndent): Parsed "-webkit-hanging" with "-webkit-each-line".
3241         * css/CSSValueKeywords.in: Added "-webkit-hanging" keyword.
3242         * css/DeprecatedStyleBuilder.cpp:
3243         (WebCore::ApplyPropertyTextIndent::applyInheritValue):
3244         (WebCore::ApplyPropertyTextIndent::applyInitialValue):
3245         (WebCore::ApplyPropertyTextIndent::applyValue):
3246         * rendering/style/RenderStyle.h:
3247         * rendering/style/RenderStyleConstants.h: Added enum TextIndentType.
3248         * rendering/style/StyleRareInheritedData.cpp:
3249         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
3250         (WebCore::StyleRareInheritedData::operator==):
3251         * rendering/style/StyleRareInheritedData.h: Added m_textIndentType.
3252         (StyleRareInheritedData):
3253             Added the usual getter / setter / initial methods for m_textIndentType.
3254
3255 2013-04-14  Sam Weinig  <sam@webkit.org>
3256
3257         Move Mac specific snapshotting code into its own file
3258         https://bugs.webkit.org/show_bug.cgi?id=114597
3259
3260         Reviewed by Andreas Kling.
3261
3262         * WebCore.exp.in:
3263         * WebCore.xcodeproj/project.pbxproj:
3264         * bindings/objc/DOM.mm:
3265         (-[DOMRange renderedImageForcingBlackText:]):
3266         * page/Frame.h:
3267         * page/mac/FrameMac.mm:
3268         (WebCore::Frame::nodeImage):
3269         (WebCore::Frame::dragImageForSelection):
3270         * page/mac/FrameSnapshottingMac.h: Added.
3271         * page/mac/FrameSnapshottingMac.mm: Added.
3272         (WebCore::imageFromRect):
3273         (WebCore::selectionImage):
3274         (WebCore::rangeImage):
3275         (WebCore::snapshotDragImage):
3276         * platform/mac/ClipboardMac.mm:
3277         (WebCore::ClipboardMac::dragNSImage):
3278         Move the four Mac specific snapshotting functions in Frame.h into FrameSnapshottingMac.h/mm and turn
3279         them into free standing functions.
3280
3281 2013-04-14  Andreas Kling  <akling@apple.com>
3282
3283         Hawtfix Mac build.
3284
3285         * WebCore.exp.in:
3286
3287 2013-04-14  Andreas Kling  <akling@apple.com>
3288
3289         Only MutableStylePropertySets should be able to have CSSOM wrappers.
3290         <http://webkit.org/b/114595>
3291
3292         Reviewed by Antti Koivisto.
3293
3294         Tighten typing so that only MutableStylePropertySets can have CSSOM wrappers associated.
3295         This allows us to get rid of the out-of-line base class destructor.
3296
3297         * WebCore.exp.in:
3298         * css/StylePropertySet.cpp:
3299         (WebCore::MutableStylePropertySet::~MutableStylePropertySet):
3300         (WebCore::MutableStylePropertySet::cssStyleDeclaration):
3301         (WebCore::MutableStylePropertySet::ensureInlineCSSStyleDeclaration):
3302         * css/StylePropertySet.h:
3303         (StylePropertySet):
3304         (MutableStylePropertySet):
3305         * dom/StyledElement.cpp:
3306         (WebCore::StyledElement::inlineStyleCSSOMWrapper):
3307
3308 2013-04-14  Andreas Kling  <akling@apple.com>
3309
3310         Remove unused function declaration StylePropertySet::setNeedsStyleRecalc().
3311
3312         Rubber-stamped by Antti Koivisto.
3313
3314         * css/StylePropertySet.h:
3315         (StylePropertySet):
3316
3317 2013-04-14  Andreas Kling  <akling@apple.com>
3318
3319         Move StylePropertySet internal storage access helpers to subclass.
3320         <http://webkit.org/b/114592>
3321
3322         Reviewed by Antti Koivisto.
3323
3324         Removed mutablePropertyVector() since most call sites are inside MutableStylePropertySet
3325         and can access m_propertyVector directly. The few ones that aren't can just cast.
3326
3327         For ImmutableStylePropertySet, moved value/metadata array accessors to the subclass
3328         and remove "immutable" from their names.
3329
3330         * css/StylePropertySet.cpp:
3331         (WebCore::StylePropertySet::immutableCopyIfNeeded):
3332         (WebCore::ImmutableStylePropertySet::ImmutableStylePropertySet):
3333         (WebCore::ImmutableStylePropertySet::~ImmutableStylePropertySet):
3334         (WebCore::MutableStylePropertySet::MutableStylePropertySet):
3335         (WebCore::MutableStylePropertySet::removeProperty):
3336         (WebCore::MutableStylePropertySet::removePrefixedOrUnprefixedProperty):
3337         (WebCore::MutableStylePropertySet::setProperty):
3338         (WebCore::MutableStylePropertySet::appendPrefixingVariantProperty):
3339         (WebCore::MutableStylePropertySet::parseDeclaration):
3340         (WebCore::MutableStylePropertySet::addParsedProperties):
3341         (WebCore::MutableStylePropertySet::clear):
3342         (WebCore::MutableStylePropertySet::removePropertiesInSet):
3343         (WebCore::MutableStylePropertySet::findCSSPropertyWithID):
3344         (WebCore::MutableStylePropertySet::removeEquivalentProperties):
3345         (WebCore::StylePropertySet::reportMemoryUsage):
3346         * css/StylePropertySet.h:
3347         (PropertyReference):
3348         (StylePropertySet):
3349         (ImmutableStylePropertySet):
3350         (WebCore::ImmutableStylePropertySet::valueArray):
3351         (WebCore::ImmutableStylePropertySet::metadataArray):
3352         (WebCore::StylePropertySet::PropertyReference::propertyMetadata):
3353         (WebCore::StylePropertySet::PropertyReference::propertyValue):
3354         (WebCore::StylePropertySet::propertyCount):
3355
3356 2013-04-14  Andreas Kling  <akling@apple.com>
3357
3358         Specialize propertyCount() in StylePropertySet subclasses.
3359         <http://webkit.org/b/114590>
3360
3361         Reviewed by Antti Koivisto.
3362
3363         Avoid branching on m_isMutable in code that already knows which type of set it is.
3364
3365         * css/StylePropertySet.h:
3366         (WebCore::ImmutableStylePropertySet::propertyCount):
3367         (ImmutableStylePropertySet):
3368         (WebCore::MutableStylePropertySet::propertyCount):
3369         (MutableStylePropertySet):
3370
3371 2013-04-14  Andreas Kling  <akling@apple.com>
3372
3373         Move property setting/removing functions to MutableStylePropertySet.
3374         <http://webkit.org/b/114589>
3375
3376         Reviewed by Antti Koivisto.
3377
3378         Move all functions for setting/removing properties from StylePropertySet to MutableStylePropertySet.
3379         Had to change SVGElement::animatedSMILStyleProperties() & friends to hand out MutableStylePropertySet*
3380         which was always the internal type anyway.
3381
3382         * css/StylePropertySet.cpp:
3383         (WebCore::MutableStylePropertySet::removeShorthandProperty):
3384         (WebCore::MutableStylePropertySet::removeProperty):
3385         (WebCore::MutableStylePropertySet::removePrefixedOrUnprefixedProperty):
3386         (WebCore::MutableStylePropertySet::setProperty):
3387         (WebCore::MutableStylePropertySet::appendPrefixingVariantProperty):
3388         (WebCore::MutableStylePropertySet::setPrefixingVariantProperty):
3389         (WebCore::MutableStylePropertySet::mergeAndOverrideOnConflict):
3390         (WebCore::MutableStylePropertySet::removeBlockProperties):
3391         (WebCore::MutableStylePropertySet::removePropertiesInSet):
3392         (WebCore::MutableStylePropertySet::findCSSPropertyWithID):
3393         (WebCore::MutableStylePropertySet::removeEquivalentProperties):
3394         * css/StylePropertySet.h:
3395         (StylePropertySet):
3396         (MutableStylePropertySet):
3397         * editing/ApplyStyleCommand.cpp:
3398         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
3399         (WebCore::ApplyStyleCommand::removeEmbeddingUpToEnclosingBlock):
3400         (WebCore::ApplyStyleCommand::applyInlineStyleToNodeRange):
3401         * editing/EditingStyle.cpp:
3402         (WebCore::EditingStyle::triStateOfStyle):
3403         (WebCore::removePropertiesInStyle):
3404         (WebCore::reconcileTextDecorationProperties):
3405         * svg/SVGAnimateElement.cpp:
3406         (WebCore::applyCSSPropertyToTarget):
3407         * svg/SVGElement.cpp:
3408         (WebCore::SVGElement::animatedSMILStyleProperties):
3409         (WebCore::SVGElement::ensureAnimatedSMILStyleProperties):
3410         * svg/SVGElement.h:
3411         (SVGElement):
3412         * svg/SVGElementRareData.h:
3413         (WebCore::SVGElementRareData::animatedSMILStyleProperties):
3414         (WebCore::SVGElementRareData::ensureAnimatedSMILStyleProperties):
3415         (SVGElementRareData):
3416
3417 2013-04-14  Andreas Kling  <akling@apple.com>
3418
3419         EditingStyle should have a MutableStylePropertySet internally.
3420         <http://webkit.org/b/114588>
3421
3422         Reviewed by Anders Carlsson.
3423
3424         Switch EditingStyle::m_mutableStyle to a RefPtr<MutableStylePropertySet>.
3425
3426         * css/StylePropertySet.cpp:
3427         (WebCore::StylePropertySet::copyBlockProperties):
3428         * css/StylePropertySet.h:
3429         (StylePropertySet):
3430         * editing/EditingStyle.cpp:
3431         (WebCore::EditingStyle::setStyle):
3432         (WebCore::EditingStyle::mergeStyleFromRules):
3433         (WebCore::StyleChange::StyleChange):
3434         (WebCore::setTextDecorationProperty):
3435         (WebCore::StyleChange::extractTextStyles):
3436         (WebCore::diffTextDecorations):
3437         (WebCore::getPropertiesNotIn):
3438         * editing/EditingStyle.h:
3439         (WebCore::EditingStyle::style):
3440         (EditingStyle):
3441         (StyleChange):
3442
3443 2013-04-14  Andreas Kling  <akling@apple.com>
3444
3445         Move addParsedProperty/addParsedProperties to MutableStylePropertySet.
3446         <http://webkit.org/b/114587>
3447
3448         Reviewed by Antti Koivisto.
3449
3450         All CSSParser methods that mutate an existing StylePropertySet now take a MutableStylePropertySet*
3451         instead of a StylePropertySet*.
3452
3453         * css/CSSParser.cpp:
3454         (WebCore::parseColorValue):
3455         (WebCore::parseSimpleLengthValue):
3456         (WebCore::parseKeywordValue):
3457         (WebCore::parseTranslateTransformValue):
3458         (WebCore::CSSParser::parseValue):
3459         (WebCore::CSSParser::parseDeclaration):
3460         * css/CSSParser.h:
3461         (CSSParser):
3462         * css/StylePropertySet.cpp:
3463         (WebCore::StylePropertySet::setProperty):
3464         (WebCore::MutableStylePropertySet::addParsedProperties):
3465         (WebCore::MutableStylePropertySet::addParsedProperty):
3466         * css/StylePropertySet.h:
3467         (StylePropertySet):