Convert PageGroup to using std::unique_ptr
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-10-01  Sam Weinig  <sam@webkit.org>
2
3         Convert PageGroup to using std::unique_ptr
4         https://bugs.webkit.org/show_bug.cgi?id=122184
5
6         Reviewed by Anders Carlsson.
7
8         * page/CaptionUserPreferences.cpp:
9         * page/CaptionUserPreferences.h:
10         * page/CaptionUserPreferencesMediaAF.cpp:
11         * page/CaptionUserPreferencesMediaAF.h:
12         * page/Frame.cpp:
13         * page/GroupSettings.h:
14         * page/Page.cpp:
15         * page/PageGroup.cpp:
16         * page/PageGroup.h:
17         * page/UserScriptTypes.h:
18         * page/UserStyleSheetTypes.h:
19         * workers/DedicatedWorkerGlobalScope.h:
20         * workers/DedicatedWorkerThread.cpp:
21         * workers/DedicatedWorkerThread.h:
22         * workers/SharedWorkerGlobalScope.cpp:
23         * workers/SharedWorkerGlobalScope.h:
24         * workers/SharedWorkerThread.cpp:
25         * workers/SharedWorkerThread.h:
26         * workers/WorkerGlobalScope.cpp:
27         * workers/WorkerGlobalScope.h:
28         * workers/WorkerThread.cpp:
29         * workers/WorkerThread.h:
30
31 2013-10-01  Tim Horton  <timothy_horton@apple.com>
32
33         Tiled drawing GraphicsLayer tree dumps should match non-tiled more closely
34         https://bugs.webkit.org/show_bug.cgi?id=122172
35
36         Reviewed by Anders Carlsson.
37
38         No new tests, but will be tested by all of the compositing tests after bug 121859 lands.
39
40         * platform/graphics/GraphicsLayer.cpp:
41         (WebCore::GraphicsLayer::dumpProperties):
42         Only dump drawsContent and backgroundColor if the client says we should.
43         Provide the ability to skip over a layer in the dump, making it appear as if that layer's
44         children are direct decendents of that layer's parent.
45
46         * platform/graphics/GraphicsLayerClient.h:
47         (WebCore::GraphicsLayerClient::shouldSkipLayerInDump): Added.
48         (WebCore::GraphicsLayerClient::shouldDumpPropertyForLayer): Added.
49
50         * rendering/RenderLayerBacking.cpp:
51         (WebCore::RenderLayerBacking::shouldSkipLayerInDump):
52         Added. Always skip the root tile cache's flattening layer, as it is
53         uninteresting and does not exist in the non-tiled-drawing compositing case.
54
55         (WebCore::RenderLayerBacking::shouldDumpPropertyForLayer):
56         Don't dump drawsContent on the root tile cache.
57         Don't dump backgroundcolor on the root tile cache, unless it is non-white.
58         This may require some WebKit2-specific rebaselines, but they will occur later.
59
60         * rendering/RenderLayerBacking.h:
61         * rendering/RenderLayerCompositor.cpp:
62         (WebCore::RenderLayerCompositor::updateBacking):
63         (WebCore::RenderLayerCompositor::layerTreeAsText):
64         If the root tile cache has no composited children, don't dump anything,
65         to match the traditional case where we drop out of compositing when
66         we have no reason to be compositing. Except, do dump the root tile cache's
67         layers if we're specifically being asked to dump tile caches.
68
69 2013-10-01  Joone Hur  <joone.hur@intel.com>
70
71         Quirksmode: CSS1: WebKit fails dynamic :first-letter test
72         https://bugs.webkit.org/show_bug.cgi?id=15602
73
74         Reviewed by David Hyatt.
75
76         CSS first-letter property does not work properly when the first letter is changed 
77         by DOM scripting. 
78         This patch allows to check if the existing first-letter is no longer the
79         first-letter. In this case, it deletes the old first-letter object and creates 
80         a new one. For the remaining text, the oldRemainingText object is used 
81         again for containing the full text(first letter + remaining text). 
82
83         Test: fast/css/first-letter-block-change.html
84
85         * rendering/RenderBlock.cpp:
86         (WebCore::RenderBlock::updateFirstLetter):
87
88 2013-10-01  Antti Koivisto  <antti@apple.com>
89
90         Make tests for renderer base types non-virtual
91         https://bugs.webkit.org/show_bug.cgi?id=122185
92
93         Reviewed by Dave Hyatt.
94
95         Make isRenderFoo() functions for commonly tested base types use bit flags instead of virtual calls.
96         This is faster and we have space in RenderElement.
97         
98         These bits are not mutully exclusive. For testing leaf types we can add an enum.
99
100 2013-10-01  Ryosuke Niwa  <rniwa@webkit.org>
101
102         Cleanup Document::dispatchFullScreenChangeOrErrorEvent
103         https://bugs.webkit.org/show_bug.cgi?id=122143
104
105         Reviewed by Antti Koivisto.
106
107         Reduce the code duplication by extracting dispatchFullScreenChangeOrErrorEvent.
108
109         * dom/Document.cpp:
110         (WebCore::Document::fullScreenChangeDelayTimerFired):
111         (WebCore::Document::dispatchFullScreenChangeOrErrorEvent): Extracted.
112         * dom/Document.h:
113
114 2013-10-01  Brent Fulgham  <bfulgham@apple.com>
115
116         [Win] Implement the media controls in JavaScript 
117         https://bugs.webkit.org/show_bug.cgi?id=122166
118
119         Reviewed by Jer Noble.
120
121         * DerivedSources.make: Uncomment feature flag test.
122         * WebCore.vcxproj/WebCore.vcxproj: Add new media control implementation files.
123         Also cleaned up some misplaced files in the project tree.
124         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
125         * WebCore.vcxproj/WebCoreCommon.props: Add missing include path for the
126         mediacontrols path.
127         * WebCore.vcxproj/copyForwardingHeaders.cmd: Add Modules/mediacontrols to copied headers.
128         * rendering/RenderThemeWin.cpp: Add missing include for UserAgentScripts.
129
130 2013-10-01  Alex Christensen  <achristensen@webkit.org>
131
132         Added adoptCOM to COMPtr on Windows.
133         https://bugs.webkit.org/show_bug.cgi?id=122069
134
135         Reviewed by Brent Fulgham.
136
137         * platform/win/COMPtr.h:
138         (adoptCOM): Added.
139
140 2013-10-01  Jer Noble  <jer.noble@apple.com>
141
142         Unreviewed build fix; The addedFunction and removedFunction arguments to determineChangedTracksFromNewTracksAndOldItems
143         were reversed, exposing an underlying, existing bug in AudioTrackPrivate and VideoTrack private. Give a default (null)
144         value to AudioTrackPrivate::m_client and VideoTrackPrivate::m_client and fix the ordering of arguments in
145         determineChangedTracksFromNewTracksAndOldItems.
146
147         * platform/graphics/AudioTrackPrivate.h:
148         (WebCore::AudioTrackPrivate::AudioTrackPrivate):
149         * platform/graphics/VideoTrackPrivate.h:
150         (WebCore::VideoTrackPrivate::VideoTrackPrivate):
151         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
152         (WebCore::determineChangedTracksFromNewTracksAndOldItems):
153
154 2013-09-30  Jer Noble  <jer.noble@apple.com>
155
156         [Mac] Add support for VideoTrack to MediaPlayerPrivateAVFObjC
157         https://bugs.webkit.org/show_bug.cgi?id=122122
158
159         Reviewed by Eric Carlson.
160
161         Test: media/track/video-track.html
162
163         Refactor the methods which query AVAssetTrack and AVPlayerItemTrack into an Impl class, and
164         use that class to reset the properties of both AudioTrackAVFObjC and the new VideoTrackAVFObjC.
165
166         Add new files to project:
167         * WebCore.xcodeproj/project.pbxproj:
168
169         Add the new implementation class, shared by AudioTrackAVFObjC and VideoTrackAVFObjC:
170         * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.h: Added.
171         (WebCore::AVTrackPrivateAVFObjCImpl::create): Simple factory.
172         (WebCore::AVTrackPrivateAVFObjCImpl::playerItemTrack): Simple getter.
173         * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm: Added.
174         (WebCore::AVTrackPrivateAVFObjCImpl::AVTrackPrivateAVFObjCImpl): Simple constructor.
175         (WebCore::AVTrackPrivateAVFObjCImpl::enabled): Pass to AVPlayerItemTrack.
176         (WebCore::AVTrackPrivateAVFObjCImpl::setEnabled): Ditto.
177         (WebCore::AVTrackPrivateAVFObjCImpl::audioKind): Distinguish between Alternative and Main content.
178         (WebCore::AVTrackPrivateAVFObjCImpl::videoKind): Distinguish between Alternative, Main, Caption,
179             and Description content.
180         (WebCore::AVTrackPrivateAVFObjCImpl::id): Pass to AVAssetTrack.
181         (WebCore::AVTrackPrivateAVFObjCImpl::label): Retrieve the Title metadata in the user's preferred
182             language.
183         (WebCore::AVTrackPrivateAVFObjCImpl::language): Pass to languageForAVAssetTrack.
184         (WebCore::AVTrackPrivateAVFObjCImpl::languageForAVAssetTrack): Moved from AudioTrackPrivateAVFObjC.
185         * platform/graphics/avfoundation/VideoTrackPrivateAVF.h: Copied from Source/WebCore/platform/graphics/avfoundation/AudioTrackPrivateAVF.h.
186         (WebCore::VideoTrackPrivateAVF::kind): Simple getter.
187         (WebCore::VideoTrackPrivateAVF::id): Ditto.
188         (WebCore::VideoTrackPrivateAVF::label): Ditto.
189         (WebCore::VideoTrackPrivateAVF::language): Ditto.
190         (WebCore::VideoTrackPrivateAVF::setKind): Simple setter.
191         (WebCore::VideoTrackPrivateAVF::setId): Ditto.
192         (WebCore::VideoTrackPrivateAVF::setLabel): Ditto.
193         (WebCore::VideoTrackPrivateAVF::setLanguage): Ditto.
194         (WebCore::VideoTrackPrivateAVF::VideoTrackPrivateAVF): Simple constructor.
195         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h:
196         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
197         (WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC): Create a AVTrackPrivateAVFObjCImpl.
198         (WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack): Retrieve properties from m_impl.
199         (WebCore::AudioTrackPrivateAVFObjC::setPlayerItemTrack): Create a new AVTrackPrivateAVFObjCImpl.
200         (WebCore::AudioTrackPrivateAVFObjC::playerItemTrack): Pass to m_impl.
201         (WebCore::AudioTrackPrivateAVFObjC::setEnabled): Ditto.
202         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
203         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
204         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Refactor implementation into
205             template method determineChangedTracksFromNewTracksAndOldItems().
206         (WebCore::determineChangedTracksFromNewTracksAndOldItems): Refactored.
207         (WebCore::MediaPlayerPrivateAVFoundationObjC::updateAudioTracks): Pass to determineChangedTracksFromNewTracksAndOldItems.
208         (WebCore::MediaPlayerPrivateAVFoundationObjC::updateVideoTracks): Ditto.
209         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Changed class hosting
210             languageForAVAssetTrack.
211         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.cpp: Added.
212         (WebCore::VideoTrackPrivateAVFObjC::VideoTrackPrivateAVFObjC): Create a AVTrackPrivateAVFObjCImpl.
213         (WebCore::VideoTrackPrivateAVFObjC::resetPropertiesFromTrack): Retrieve properties from m_impl.
214         (WebCore::VideoTrackPrivateAVFObjC::setPlayerItemTrack): Create a new AVTrackPrivateAVFObjCImpl.
215         (WebCore::VideoTrackPrivateAVFObjC::playerItemTrack): Pass to m_impl.
216         (WebCore::VideoTrackPrivateAVFObjC::setSelected): Ditto.
217         * platform/graphics/avfoundation/objc/VideoTrackPrivateAVFObjC.h: Added.
218         (WebCore::VideoTrackPrivateAVFObjC::create): Simple factory.
219
220 2013-10-01  Andreas Kling  <akling@apple.com>
221
222         Leaf EventTarget subclasses should be FINAL.
223         <https://webkit.org/b/122141>
224
225         Reviewed by Darin Adler.
226
227         Clear out a slew of FIXMEs now that HasMemoryCostMemberFunction
228         works on classes marked FINAL (fixed in bug 121747.)
229
230 2013-10-01  Szabolcs D├ívid  <davidsz@inf.u-szeged.hu>
231
232         Rename URL type variables in Curl network backend.
233         https://bugs.webkit.org/show_bug.cgi?id=122158
234
235         Reviewed by Darin Adler.
236
237         I changed the name of the URL objects to match with the new class name.
238
239         * platform/network/curl/ResourceHandleManager.cpp:
240         (WebCore::getProtectionSpace):
241         (WebCore::ResourceHandleManager::initializeHandle):
242
243 2013-10-01  Myles C. Maxfield  <mmaxfield@apple.com>
244
245         Center misspelling dots across width of word
246         https://bugs.webkit.org/show_bug.cgi?id=122046
247
248         Reviewed by Darin Adler.
249
250         Test: editing/spelling/spelling.html
251
252         * platform/graphics/GraphicsContext.h:
253         * platform/graphics/mac/GraphicsContextMac.mm:
254         (WebCore::GraphicsContext::drawLineForDocumentMarker):
255
256 2013-10-01  Daniel Bates  <dabates@apple.com>
257
258         [iOS] WebCore fails to build with newer versions of clang
259         https://bugs.webkit.org/show_bug.cgi?id=122161
260
261         Reviewed by Darin Adler.
262
263         * editing/FrameSelection.cpp: Add ENABLE(TEXT_CARET)-guard around shouldStopBlinkingDueToTypingCommand().
264         * page/EventHandler.cpp: Add !PLATFORM(IOS)-guard around constants cursorUpdateInterval and maximumCursorSize;
265         also add touch event/gesture event guard around shouldGesturesTriggerActive().
266         * platform/network/cf/ResourceResponseCFNet.cpp: Remove unused function filenameHasSaneExtension.
267         * platform/network/mac/ResourceResponseMac.mm: Only define static variables commonHeaderFields when building
268         without CFNetwork; also remove variable numCommonHeaderFields, instead use WTF_ARRAY_LENGTH(commonHeaderFields)
269         to compute the size of the fixed-sized array commonHeaderFields.
270
271 2013-10-01  Brendan Long  <b.long@cablelabs.com>
272
273         [GStreamer] Support "chapter" text tracks
274         https://bugs.webkit.org/show_bug.cgi?id=122000
275
276         Reviewed by Eric Carlson.
277
278         Test: media/track/in-band/track-in-band-mkv-chapters.html
279
280         * platform/graphics/gstreamer/InbandMetadataTextTrackPrivateGStreamer.h: New class, needed for cues that aren't associated with GstPads.
281         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
282         (WebCore::MediaPlayerPrivateGStreamer::handleMessage): Check for table of contents messages.
283         (WebCore::MediaPlayerPrivateGStreamer::processTableOfContents): Parse table of contents messages into text tracks.
284         (WebCore::MediaPlayerPrivateGStreamer::processTableOfContentsEntry): Recursive method for parsing all of the TOC entries.
285         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h: Add the processTableOfContents functions.
286
287 2013-10-01  Allan Sandfeld Jensen  <allan.jensen@digia.com>
288
289         [Texmap] CSS filter not working on software composited layers
290         https://bugs.webkit.org/show_bug.cgi?id=122159
291
292         Reviewed by Noam Rosenthal.
293
294         Tell the rendering layer we do not support CSS filters when we do not. This
295         will make RenderLayer fall back to using its own software implementation.
296
297         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
298         (WebCore::GraphicsLayerTextureMapper::setFilters):
299         * platform/graphics/texmap/TextureMapperImageBuffer.cpp:
300         (WebCore::BitmapTextureImageBuffer::applyFilters):
301
302 2013-10-01  Darin Adler  <darin@apple.com>
303
304         Try to fix assertion failures seem on bots.
305
306         * css/StyleResolver.cpp:
307         (WebCore::StyleResolver::createFilterOperations): Rearrange code so this
308         won't try ot call toCSSPrimitiveValue on a non-primitive-value in the
309         DROP_SHADOW case.
310
311 2013-10-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
312
313         Generate toCSSFooValue for CSSPrimitiveValue
314         https://bugs.webkit.org/show_bug.cgi?id=122101
315
316         Reviewed by Antti Koivisto.
317
318         As a step of clean-up static_cast<> in CSSValues, this patch generates
319         toCSSFooPrimitiveValue() in order to detect bad casts as well as improves
320         code readability.
321
322         No new tests, no behavior changes.
323
324         * css/CSSFontSelector.cpp:
325         (WebCore::CSSFontSelector::addFontFaceRule):
326         * css/CSSImageGeneratorValue.cpp:
327         (WebCore::CSSImageGeneratorValue::subimageIsPending):
328         (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
329         * css/CSSImageSetValue.cpp:
330         (WebCore::CSSImageSetValue::fillImageSet):
331         * css/CSSParser.cpp:
332         (WebCore::CSSParser::parseColor):
333         (WebCore::CSSParser::addProperty):
334         (WebCore::CSSParser::parse3ValuesFillPosition):
335         (WebCore::CSSParser::parseFillPosition):
336         (WebCore::CSSParser::parseFillRepeat):
337         (WebCore::CSSParser::parseDeprecatedRadialGradient):
338         (WebCore::CSSParser::parseRadialGradient):
339         * css/CSSPrimitiveValue.h:
340         * css/CSSToStyleMap.cpp:
341         (WebCore::CSSToStyleMap::mapFillAttachment):
342         (WebCore::CSSToStyleMap::mapFillClip):
343         (WebCore::CSSToStyleMap::mapFillComposite):
344         (WebCore::CSSToStyleMap::mapFillBlendMode):
345         (WebCore::CSSToStyleMap::mapFillOrigin):
346         (WebCore::CSSToStyleMap::mapFillRepeatX):
347         (WebCore::CSSToStyleMap::mapFillRepeatY):
348         (WebCore::CSSToStyleMap::mapFillSize):
349         (WebCore::CSSToStyleMap::mapFillXPosition):
350         (WebCore::CSSToStyleMap::mapFillYPosition):
351         (WebCore::CSSToStyleMap::mapFillMaskSourceType):
352         (WebCore::CSSToStyleMap::mapAnimationDelay):
353         (WebCore::CSSToStyleMap::mapAnimationDirection):
354         (WebCore::CSSToStyleMap::mapAnimationDuration):
355         (WebCore::CSSToStyleMap::mapAnimationFillMode):
356         (WebCore::CSSToStyleMap::mapAnimationIterationCount):
357         (WebCore::CSSToStyleMap::mapAnimationName):
358         (WebCore::CSSToStyleMap::mapAnimationPlayState):
359         (WebCore::CSSToStyleMap::mapAnimationProperty):
360         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
361         (WebCore::CSSToStyleMap::mapNinePieceImageQuad):
362         (WebCore::CSSToStyleMap::mapNinePieceImageRepeat):
363         * css/CSSValue.cpp:
364         (WebCore::CSSValue::destroy):
365         * css/DeprecatedStyleBuilder.cpp:
366         (WebCore::ApplyPropertyDefault::applyValue):
367         (WebCore::ApplyPropertyNumber::applyValue):
368         (WebCore::ApplyPropertyAuto::applyValue):
369         (WebCore::ApplyPropertyClip::applyValue):
370         (WebCore::ApplyPropertyColor::applyValue):
371         (WebCore::ApplyPropertyLength::applyValue):
372         (WebCore::ApplyPropertyString::applyValue):
373         (WebCore::ApplyPropertyBorderRadius::applyValue):
374         (WebCore::ApplyPropertyComputeLength::applyValue):
375         (WebCore::ApplyPropertyFont::applyValue):
376         (WebCore::ApplyPropertyFontFamily::applyValue):
377         (WebCore::ApplyPropertyFontSize::applyValue):
378         (WebCore::ApplyPropertyFontWeight::applyValue):
379         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
380         (WebCore::ApplyPropertyCounter::applyValue):
381         (WebCore::ApplyPropertyCursor::applyValue):
382         (WebCore::ApplyPropertyTextAlign::applyValue):
383         (WebCore::ApplyPropertyTextDecoration::applyValue):
384         (WebCore::ApplyPropertyMarqueeIncrement::applyValue):
385         (WebCore::ApplyPropertyMarqueeRepetition::applyValue):
386         (WebCore::ApplyPropertyMarqueeSpeed::applyValue):
387         (WebCore::ApplyPropertyTextUnderlinePosition::applyValue):
388         (WebCore::ApplyPropertyLineHeight::applyValue):
389         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue):
390         (WebCore::ApplyPropertyPageSize::applyValue):
391         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
392         (WebCore::ApplyPropertyResize::applyValue):
393         (WebCore::ApplyPropertyVerticalAlign::applyValue):
394         (WebCore::ApplyPropertyZoom::applyValue):
395         (WebCore::ApplyPropertyDisplay::applyValue):
396         (WebCore::ApplyPropertyClipPath::applyValue):
397         (WebCore::ApplyPropertyShape::applyValue):
398         (WebCore::ApplyPropertyImageResolution::applyValue):
399         (WebCore::ApplyPropertyTextIndent::applyValue):
400         * css/MediaList.cpp:
401         (WebCore::reportMediaQueryWarningIfNeeded):
402         * css/MediaQueryEvaluator.cpp:
403         (WebCore::numberValue):
404         (WebCore::orientationMediaFeatureEval):
405         (WebCore::evalResolution):
406         (WebCore::device_pixel_ratioMediaFeatureEval):
407         (WebCore::resolutionMediaFeatureEval):
408         (WebCore::computeLength):
409         (WebCore::view_modeMediaFeatureEval):
410         (WebCore::pointerMediaFeatureEval):
411         * css/SVGCSSStyleSelector.cpp:
412         (WebCore::StyleResolver::applySVGProperty):
413         * css/StylePropertySet.cpp:
414         (WebCore::StylePropertySet::getLayeredShorthandValue):
415         * css/StyleResolver.cpp:
416         (WebCore::createGridTrackSize):
417         (WebCore::createGridTrackList):
418         (WebCore::createGridPosition):
419         (WebCore::hasVariableReference):
420         (WebCore::StyleResolver::applyProperty):
421         (WebCore::StyleResolver::parseCustomFilterArrayParameter):
422         (WebCore::StyleResolver::parseCustomFilterColorParameter):
423         (WebCore::StyleResolver::parseCustomFilterNumberParameter):
424         (WebCore::StyleResolver::parseCustomFilterParameter):
425         (WebCore::StyleResolver::parseCustomFilterParameterList):
426         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
427         (WebCore::StyleResolver::createFilterOperations):
428         * css/TransformFunctions.cpp:
429         (WebCore::transformsForValue):
430         * css/ViewportStyleResolver.cpp:
431         (WebCore::ViewportStyleResolver::getViewportArgumentValue):
432         * css/WebKitCSSMatrix.cpp:
433         (WebCore::WebKitCSSMatrix::setMatrixValue):
434         * editing/ApplyStyleCommand.cpp:
435         (WebCore::ApplyStyleCommand::computedFontSize):
436         * editing/EditingStyle.cpp:
437         (WebCore::identifierForStyleProperty):
438         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
439         (WebCore::cssValueToRGBA):
440         (WebCore::EditingStyle::extractFontSizeDelta):
441         (WebCore::EditingStyle::textDirection):
442         (WebCore::EditingStyle::prepareToApplyAt):
443         (WebCore::EditingStyle::mergeStyleFromRulesForSerialization):
444         (WebCore::EditingStyle::legacyFontSize):
445         (WebCore::EditingStyle::textDirectionForSelection):
446         (WebCore::StyleChange::extractTextStyles):
447         (WebCore::fontWeightIsBold):
448         (WebCore::isTransparentColorValue):
449         * editing/markup.cpp:
450         (WebCore::propertyMissingOrEqualToNone):
451
452 2013-10-01  Darin Adler  <darin@apple.com>
453
454         Try to fix AVFoundation crashes seen on Lion bot.
455
456         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
457         Four AVFoundation string constants used in this file were new to 10.8.
458         For older versions of OS X, use hard-coded string constants instead.
459
460 2013-10-01  Zan Dobersek  <zdobersek@igalia.com>
461
462         [IndexedDB] Interfaces inheriting from EventTarget should generate JSC (un)wrapping functions
463         https://bugs.webkit.org/show_bug.cgi?id=122114
464
465         Reviewed by Darin Adler.
466
467         After r156590, four IndexedDB interfaces are inheriting from the EventTarget interface. Because of that,
468         they're now required to have interface-specific JSC wrapping and unwrapping functions generated since the
469         JSC wrapping and unwrapping functions for the EventTarget interface delegate these operations to these
470         interface-specific functions. If the functions are not generated and accessible, the EventTarget functions
471         end up recursively calling themselves.
472
473         * Modules/indexeddb/IDBDatabase.idl:
474         * Modules/indexeddb/IDBOpenDBRequest.idl:
475         * Modules/indexeddb/IDBRequest.idl:
476         * Modules/indexeddb/IDBTransaction.idl:
477
478 2013-09-30  Ryuan Choi  <ryuan.choi@samsung.com>
479
480         Build fix for EFL, Qt, Gtk port after r156688
481         https://bugs.webkit.org/show_bug.cgi?id=122139
482
483         Reviewed by Anders Carlsson.
484
485         Get rid of more uses of OwnPtr and PassOwnPtr.
486
487         * platform/graphics/surfaces/GraphicsSurface.cpp:
488         (WebCore::GraphicsSurface::beginPaint):
489         * platform/graphics/surfaces/GraphicsSurface.h:
490         * platform/graphics/surfaces/efl/GraphicsSurfaceCommon.cpp:
491         (WebCore::GraphicsSurface::platformBeginPaint):
492         * platform/graphics/surfaces/glx/GraphicsSurfaceGLX.cpp:
493         (WebCore::GraphicsSurface::platformBeginPaint):
494         * platform/graphics/surfaces/qt/GraphicsSurfaceQt.cpp:
495         (WebCore::GraphicsSurface::platformBeginPaint):
496
497 2013-09-30  Sam White  <samuel_white@apple.com>
498
499         AX: Expose ARIA Busy Notifications
500         https://bugs.webkit.org/show_bug.cgi?id=121451
501
502         Reviewed by Chris Fleizach.
503
504         Added AXElementBusyChanged notification that posts when aria-busy is toggled. This
505         enables screen readers to detect busy states without polling the focused element.
506
507         Test: platform/mac/accessibility/element-busy-changed.html
508
509         * accessibility/AXObjectCache.cpp:
510         (WebCore::AXObjectCache::handleAttributeChanged):
511         * accessibility/AXObjectCache.h:
512         * accessibility/mac/AXObjectCacheMac.mm:
513         (WebCore::AXObjectCache::postPlatformNotification):
514
515 2013-09-30  Sam Weinig  <sam@webkit.org>
516
517         Fixing the build.
518
519         * GNUmakefile.list.am:
520
521 2013-09-30  Sam Weinig  <sam@webkit.org>
522
523         More build fixing.
524
525         * GNUmakefile.list.am:
526         * WebCore.vcxproj/WebCore.vcxproj.filters:
527         * inspector/InspectorAllInOne.cpp:
528         * inspector/InstrumentingAgents.h:
529
530 2013-09-30  Sam Weinig  <sam@webkit.org>
531
532         Fix the Efl and Gtk builds.
533
534         * GNUmakefile.list.am:
535         * PlatformEfl.cmake:
536         * PlatformGTK.cmake:
537
538 2013-09-30  Sam Weinig  <sam@webkit.org>
539
540         Remove support for DOMFileSystem
541         https://bugs.webkit.org/show_bug.cgi?id=122137
542
543         Reviewed by Anders Carlsson.
544
545         * Files elided *
546
547 2013-09-30  Brent Fulgham  <bfulgham@apple.com>
548
549         [Windows] Build fix afer r156688.
550
551         * fileapi/ThreadableBlobRegistry.cpp:
552         (WebCore::ThreadableBlobRegistry::registerBlobURL): Switch to std::unique_ptr in
553         method implementation.
554
555 2013-09-30  Anders Carlsson  <andersca@apple.com>
556
557         Get rid of more uses of OwnPtr and PassOwnPtr
558         https://bugs.webkit.org/show_bug.cgi?id=122136
559
560         Reviewed by Antti Koivisto.
561
562         * Modules/websockets/WebSocket.cpp:
563         (WebCore::WebSocket::didReceiveBinaryData):
564         * WebCore.exp.in:
565         * fileapi/Blob.cpp:
566         (WebCore::Blob::Blob):
567         (WebCore::Blob::slice):
568         * fileapi/Blob.h:
569         (WebCore::Blob::create):
570         * fileapi/File.cpp:
571         (WebCore::createBlobDataForFileWithType):
572         (WebCore::createBlobDataForFile):
573         (WebCore::createBlobDataForFileWithName):
574         * fileapi/ThreadableBlobRegistry.cpp:
575         (WebCore::BlobRegistryContext::BlobRegistryContext):
576         (WebCore::registerBlobURLTask):
577         (WebCore::ThreadableBlobRegistry::registerBlobURL):
578         * fileapi/ThreadableBlobRegistry.h:
579         * fileapi/WebKitBlobBuilder.cpp:
580         (WebCore::BlobBuilder::getBlob):
581         * platform/network/BlobData.cpp:
582         (WebCore::BlobDataHandle::BlobDataHandle):
583         * platform/network/BlobData.h:
584         (WebCore::BlobData::BlobData):
585         (WebCore::BlobDataHandle::create):
586         * platform/network/BlobRegistry.h:
587         * platform/network/BlobRegistryImpl.cpp:
588         (WebCore::BlobRegistryImpl::registerBlobURL):
589         * platform/network/BlobRegistryImpl.h:
590         * xml/XMLHttpRequest.cpp:
591         (WebCore::XMLHttpRequest::responseBlob):
592
593 2013-09-30  Benjamin Poulain  <benjamin@webkit.org>
594
595         Remove the code guarded by STYLE_SCOPED
596         https://bugs.webkit.org/show_bug.cgi?id=122123
597
598         Reviewed by Anders Carlsson.
599
600         Start cleaning the code related to <style scoped>. This patch
601         only removes the code with #ifdef guards.
602
603         * Configurations/FeatureDefines.xcconfig:
604         * WebCore.exp.in:
605         * bindings/generic/RuntimeEnabledFeatures.cpp:
606         (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
607         * bindings/generic/RuntimeEnabledFeatures.h:
608         * css/DocumentRuleSets.cpp:
609         (WebCore::DocumentRuleSets::appendAuthorStyleSheets):
610         * css/ElementRuleCollector.cpp:
611         (WebCore::ElementRuleCollector::matchScopedAuthorRules):
612         * css/StyleResolver.cpp:
613         (WebCore::StyleResolver::locateCousinList):
614         (WebCore::StyleResolver::canShareStyleWithElement):
615         (WebCore::StyleResolver::locateSharedStyle):
616         * css/StyleResolver.h:
617         (WebCore::StyleResolver::ensureScopeResolver):
618         * css/StyleScopeResolver.cpp:
619         * css/StyleScopeResolver.h:
620         * dom/Node.cpp:
621         * dom/Node.h:
622         * dom/ShadowRoot.cpp:
623         (WebCore::ShadowRoot::ShadowRoot):
624         * dom/ShadowRoot.h:
625         * html/HTMLStyleElement.cpp:
626         (WebCore::HTMLStyleElement::HTMLStyleElement):
627         (WebCore::HTMLStyleElement::parseAttribute):
628         (WebCore::HTMLStyleElement::insertedInto):
629         (WebCore::HTMLStyleElement::removedFrom):
630         * html/HTMLStyleElement.h:
631         * html/HTMLStyleElement.idl:
632         * testing/InternalSettings.cpp:
633         (WebCore::InternalSettings::Backup::Backup):
634         (WebCore::InternalSettings::Backup::restoreTo):
635         * testing/InternalSettings.h:
636         * testing/InternalSettings.idl:
637         * testing/Internals.cpp:
638         * testing/Internals.h:
639         * testing/Internals.idl:
640
641 2013-09-30  Drew Yao  <ayao@apple.com>
642
643         ASSERT(!m_hasBadParent) in InlineBox::parent() should be ASSERT_WITH_SECURITY_IMPLICATION
644         https://bugs.webkit.org/show_bug.cgi?id=122032
645
646         Reviewed by Andreas Kling.
647
648         Convert assertion to ASSERT_WITH_SECURITY_IMPLICATION to help catch use after free bugs.
649
650         No new tests needed.
651
652         * rendering/InlineBox.h:
653         (WebCore::InlineBox::parent):
654
655 2013-09-30  Yongjun Zhang  <yongjun_zhang@apple.com>
656
657         Don't attempt to destroy decoded frame if a BitmapImage doesn't have encoded raw data.
658         https://bugs.webkit.org/show_bug.cgi?id=122115
659
660         Reviewed by Daniel Bates.
661
662         With BitmapImage::create(PassNativeImagePtr, ImageObserver*), a BitmapImage could be created by
663         passing a native image.  If this image is added to memory cache, we shouldn't attempt to destroy
664         its decoded frames since there is no encoded raw data and we won't be able to reconstruct the image again.
665
666         No new tests for now. Currently there isn't a code path to add to the memory cache a BitmapImage
667         that was created by adopting a native image. We'll add such a code path in a subsequent patch.
668
669         * platform/graphics/BitmapImage.cpp:
670         (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
671
672 2013-09-30  Brady Eidson  <beidson@apple.com>
673
674         Remove IDBTracing.h.
675         https://bugs.webkit.org/show_bug.cgi?id=122118
676
677         Reviewed by Alexey Proskuryakov.
678
679         Global replace of "IDB_TRACE" with "LOG(StorageAPI)", and remove all notions of this header.
680
681         * GNUmakefile.list.am:
682
683         * Modules/indexeddb/IDBCursor.cpp:
684         * Modules/indexeddb/IDBDatabase.cpp:
685         * Modules/indexeddb/IDBDatabaseBackendInterface.h:
686         * Modules/indexeddb/IDBFactory.cpp:
687         * Modules/indexeddb/IDBIndex.cpp:
688         * Modules/indexeddb/IDBObjectStore.cpp:
689         * Modules/indexeddb/IDBOpenDBRequest.cpp:
690         * Modules/indexeddb/IDBRequest.cpp:
691         * Modules/indexeddb/IDBTracing.h: Removed.
692         * Modules/indexeddb/IDBTransaction.cpp:
693         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
694         * Modules/indexeddb/leveldb/IDBCursorBackendLevelDB.cpp:
695         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
696         * Modules/indexeddb/leveldb/IDBFactoryBackendLevelDB.cpp:
697         * Modules/indexeddb/leveldb/IDBObjectStoreBackendLevelDB.cpp:
698         * Modules/indexeddb/leveldb/IDBTransactionBackendLevelDB.cpp:
699         * WebCore.xcodeproj/project.pbxproj:
700         * bindings/js/IDBBindingUtilities.cpp:
701
702 2013-09-30  Brent Fulgham  <bfulgham@apple.com>
703
704         [Windows] Build fix after r156622. Build RenderLayerModelObject.cpp in a separate compilation unit
705         from the RenderLayerAllnOne file so that the scalar and vector destructors are visible to other
706         elements of WebCore during the build.
707
708         * WebCore.vcxproj/WebCore.vcxproj: Compile RenderLayerModelObject outside of the all-in-one file.
709         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
710         * rendering/RenderingAllInOne.cpp: Remove RenderLayerModelObject.cpp.
711
712 2013-09-30  Mark Rowe  <mrowe@apple.com>
713
714         Fix the build when building against an SDK.
715
716         Xcode helpfully prepends $(SDKROOT) to the paths in FRAMEWORK_SEARCH_PATHS when generating
717         the compiler command lines. It can't know to do this for the system framework search paths
718         we add manually via OTHER_CFLAGS though, so we need to prefix them with $(SDKROOT) ourself.
719
720         * Configurations/WebCore.xcconfig:
721
722 2013-09-30  Brent Fulgham  <bfulgham@apple.com>
723
724         [Windows] Unreviewed build fix.
725
726         * WebCore.vcxproj/WebCore.vcxproj.filters: Correct malformed XML in project files.
727
728 2013-09-30  Jer Noble  <jer.noble@apple.com>
729
730         Unreviewed, roll back in r156546 with rebaselined tests.
731         https://bugs.webkit.org/show_bug.cgi?id=122111
732
733         * Modules/mediacontrols/mediaControlsApple.js:
734         (Controller):
735         (Controller.prototype.addVideoListeners):
736         (Controller.prototype.removeVideoListeners):
737         (Controller.prototype.updateHasAudio):
738
739 2013-09-30  Commit Queue  <commit-queue@webkit.org>
740
741         Unreviewed, rolling out r156656.
742         http://trac.webkit.org/changeset/156656
743         https://bugs.webkit.org/show_bug.cgi?id=122111
744
745         Broke several media tests (Requested by ap on #webkit).
746
747         * Modules/mediacontrols/mediaControlsApple.js:
748         (Controller):
749         (Controller.prototype.addVideoListeners):
750         (Controller.prototype.removeVideoListeners):
751
752 2013-09-29  Sam Weinig  <sam@webkit.org>
753
754         Convert a bunch of OwnPtrs on Page to std::unique_ptrs
755         https://bugs.webkit.org/show_bug.cgi?id=122086
756
757         Reviewed by Darin Adler.
758
759         * loader/ProgressTracker.cpp:
760         * loader/ProgressTracker.h:
761         * page/Page.cpp:
762         (WebCore::Page::Page):
763         (WebCore::Page::setGroupName):
764         (WebCore::Page::initGroup):
765         * page/Page.h:
766         * page/PageGroup.cpp:
767         (WebCore::PageGroup::PageGroup):
768         * page/PageGroup.h:
769
770 2013-09-30  Antti Koivisto  <antti@apple.com>
771
772         Remove FontTranscoder
773         https://bugs.webkit.org/show_bug.cgi?id=122088
774
775         Reviewed by Andreas Kling.
776
777         This overly generic class just implements mapping of backslash to yen symbol for some legacy Japanese fonts.
778
779         * CMakeLists.txt:
780         * GNUmakefile.am:
781         * GNUmakefile.list.am:
782         * Target.pri:
783         * WebCore.pri:
784         * WebCore.vcxproj/WebCore.vcxproj:
785         * WebCore.xcodeproj/project.pbxproj:
786         * platform/graphics/Font.cpp:
787         (WebCore::useBackslashAsYenSignForFamily):
788         
789             Move the family set to Font.cpp.
790
791         (WebCore::Font::Font):
792         (WebCore::Font::operator=):
793         (WebCore::Font::update):
794         
795             Keep the cached boolean up to date.
796
797         * platform/graphics/Font.h:
798         (WebCore::Font::useBackslashAsYenSymbol):
799         
800             Use descriptive name instead of talking about "transcoding".
801
802         * platform/text/transcoder: Removed.
803         * platform/text/transcoder/FontTranscoder.cpp: Removed.
804         * platform/text/transcoder/FontTranscoder.h: Removed.
805         * rendering/RenderText.cpp:
806         (WebCore::RenderText::RenderText):
807         (WebCore::RenderText::computeUseBackslashAsYenSymbol):
808         
809             Rename for clarity. 
810             Avoid unnecessary hash lookup, just check the cached bit in Font.
811
812         (WebCore::RenderText::styleDidChange):
813         (WebCore::RenderText::setTextInternal):
814         
815             "Transcoding" here was just a simple character replacement.
816
817         (WebCore::RenderText::textWithoutConvertingBackslashToYenSymbol):
818         
819             Renamed.
820
821         * rendering/RenderText.h:
822
823 2013-09-27  Jer Noble  <jer.noble@apple.com>
824
825         REGRESSION(r156546): media/video-no-audio.html broken
826         https://bugs.webkit.org/show_bug.cgi?id=122049
827
828         Reviewed by Eric Carlson.
829
830         Now that our video elements have audio tracks, use their presence or
831         absense to show or hide the volume controls.
832
833         * Modules/mediacontrols/mediaControlsApple.js:
834         (Controller):
835         (Controller.prototype.addVideoListeners): Listen for audioTrack changes.
836         (Controller.prototype.removeVideoListeners): Stop listening to same.
837         (Controller.prototype.handleAudioTrackChange): Call this.updateHasAudio()
838         (Controller.prototype.handleAudioTrackAdd): Ditto.
839         (Controller.prototype.handleAudioTrackRemove): Ditto.
840         (Controller.prototype.updateHasAudio): Hide the volume controls if no
841             audioTracks are present, and vice versa.
842
843 2013-09-30  Jer Noble  <jer.noble@apple.com>
844
845         Unreviewed Mac-Lion build fix.
846
847         Use metadataItemsFromArray:withLocale: instead of
848         metadataItemsFromArray:filteredAndSortedAccordingToPreferredLanguages:
849         on Lion and earlier.
850
851         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm:
852         (WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack):
853
854 2013-09-27  Jer Noble  <jer.noble@apple.com>
855
856         [Mac] Add AudioTrack support to MediaPlayerPrivateAVFObC.
857         https://bugs.webkit.org/show_bug.cgi?id=122043
858
859         Reviewed by Eric Carlson.
860
861         Test: media/track/audio-track.html
862
863         Add a new class AudioTrackPrivateAVF and subclass AudioTrackPrivateAVFObjC
864         which are backed by a AVPlayerItemTrack. Create one of these tracks when
865         we are notified that the list of available tracks has changed.
866
867         * WebCore.xcodeproj/project.pbxproj:
868         * html/track/AudioTrack.cpp:
869         (WebCore::AudioTrack::setEnabled): Pass through to the AudioTrackPrivate
870             so that the underlying media track can be (dis|en)abled.
871         * platform/graphics/avfoundation/AudioTrackPrivateAVF.h: Added.
872         (WebCore::AudioTrackPrivateAVF::kind): Simple getter.
873         (WebCore::AudioTrackPrivateAVF::id): Ditto.
874         (WebCore::AudioTrackPrivateAVF::label): Ditto.
875         (WebCore::AudioTrackPrivateAVF::language): Ditto.
876         (WebCore::AudioTrackPrivateAVF::setKind): Simple Setter.
877         (WebCore::AudioTrackPrivateAVF::setId): Ditto.
878         (WebCore::AudioTrackPrivateAVF::setLabel): Ditto.
879         (WebCore::AudioTrackPrivateAVF::setLanguage): Ditto.
880         (WebCore::AudioTrackPrivateAVF::AudioTrackPrivateAVF): Simple constructor.
881         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.h: Added.
882         (WebCore::AudioTrackPrivateAVFObjC::create): Simple factory.
883         (WebCore::AudioTrackPrivateAVFObjC::playerItemTrack): Simple getter.
884         * platform/graphics/avfoundation/objc/AudioTrackPrivateAVFObjC.mm: Added.
885         (WebCore::AudioTrackPrivateAVFObjC::AudioTrackPrivateAVFObjC): Call resetPropertiesFromTrack.
886         (WebCore::AudioTrackPrivateAVFObjC::resetPropertiesFromTrack): Fill out the values from 
887             the associated AVPlayerItemTrack and its AVAssetTrack.
888         (WebCore::AudioTrackPrivateAVFObjC::setPlayerItemTrack): Call resetPropertiesFromTrack.
889         (WebCore::AudioTrackPrivateAVFObjC::setEnabled): (En|Dis)able the AVPlayerItemTrack.
890         (WebCore::AudioTrackPrivateAVFObjC::languageForAVAssetTrack): Refactored from
891             MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack.
892         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
893         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
894         (WebCore::MediaPlayerPrivateAVFoundationObjC::tracksChanged): Determine which tracks
895             have been added or removed and notify the clients accordingly.
896         (WebCore::MediaPlayerPrivateAVFoundationObjC::languageOfPrimaryAudioTrack): Refactor into
897             AudioTrackPrivateAVFObjC::languageForAVAssetTrack.
898
899 2013-09-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
900
901         Generate toCSSCalcValue instead of using manual cast function
902         https://bugs.webkit.org/show_bug.cgi?id=122055
903
904         Reviewed by Antti Koivisto.
905
906         Generated type cast function supports more plenty functions rather than manual functions.
907         To use CSS_VALUE_TYPE_CAST, isCalculationValue() needs to be changed with isCalcValue().
908
909         No new tests, no behavior changes.
910
911         * css/CSSCalculationValue.h:
912         * css/CSSValue.cpp:
913         (WebCore::CSSValue::destroy):
914         * css/CSSValue.h:
915         (WebCore::CSSValue::isCalcValue):
916         * css/StyleResolver.cpp:
917         (WebCore::hasVariableReference):
918
919 2013-09-30  Antti Koivisto  <antti@apple.com>
920
921         Get rid of static map for marking ancestor line boxes dirty
922         https://bugs.webkit.org/show_bug.cgi?id=122080
923
924         Reviewed by Andreas Kling.
925         
926         This is ugly and shows up in profiles too. Use a bit in RenderElement instead.
927
928         * rendering/RenderBlock.h:
929         * rendering/RenderBlockFlow.h:
930         
931             Move dirtyLinesFromChangedChild down to RenderBlockFlow. It wouldn't do anything on other RenderBlocks.
932
933         * rendering/RenderElement.cpp:
934         (WebCore::RenderElement::RenderElement):
935         * rendering/RenderElement.h:
936         
937             Add m_ancestorLineBoxDirty bit. We have 32 unused bits here on 64bit systems.
938
939         (WebCore::RenderElement::dirtyLinesFromChangedChild):
940         (WebCore::RenderElement::ancestorLineBoxDirty):
941         (WebCore::RenderElement::setAncestorLineBoxDirty):
942         (WebCore::RenderObject::setNeedsLayout):
943         * rendering/RenderInline.h:
944         * rendering/RenderLineBoxList.cpp:
945         (WebCore::RenderLineBoxList::dirtyLinesFromChangedChild):
946             
947             Tighten the interface.
948
949         * rendering/RenderLineBoxList.h:
950         * rendering/RenderObject.cpp:
951         (WebCore::RenderObject::willBeDestroyed):
952         * rendering/RenderObject.h:
953         
954             Remove the static map.
955
956 2013-09-18  Sergio Villar Senin  <svillar@igalia.com>
957
958         [CSS Grid Layout] Implement the grid-area shorthand
959         https://bugs.webkit.org/show_bug.cgi?id=103334
960
961         Reviewed by Andreas Kling.
962
963         Based on Blink r151684 by <jchaffraix@chromium.org>
964
965         Test: fast/css-grid-layout/grid-item-area-get-set.html
966
967         Added support to specify grid positions using the
968         '-webkit-grid-area' shorthand. Named grid areas are still not
969         allowed, to be done in a follow up patch as it likely requires
970         '-webkit-grid-template' support.
971
972         * css/CSSComputedStyleDeclaration.cpp:
973         (WebCore::ComputedStyleExtractor::propertyValue):
974         * css/CSSParser.cpp:
975         (WebCore::CSSParser::parseValue):
976         (WebCore::CSSParser::parseGridItemPositionShorthand):
977         * css/CSSPropertyNames.in:
978         * css/StylePropertySet.cpp:
979         (WebCore::StylePropertySet::getPropertyValue):
980         * css/StylePropertyShorthand.cpp:
981         (WebCore::webkitGridAreaShorthand):
982         (WebCore::shorthandForProperty):
983         * css/StylePropertyShorthand.h:
984         * css/StyleResolver.cpp:
985         (WebCore::StyleResolver::applyProperty):
986
987 2013-09-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
988
989         Generate toCSSFooValue for CSSGradientValue, CSSLinearGradientValue and CSSRadialGradient
990         https://bugs.webkit.org/show_bug.cgi?id=122060
991
992         Reviewed by Antti Koivisto.
993
994         As a step to generate toCSSFooValue, toCSSGradientValuem toCSSLinearGradientValue and
995         toCSSRadialGradient are generated. isLinearGradient() and isRadialGradient() are moved
996         from each class to CSSValue in order to generate toCSSFooValue.
997
998         No new tests, no behavior change.
999
1000         * css/CSSGradientValue.cpp:
1001         (WebCore::CSSGradientValue::image):
1002         (WebCore::CSSGradientValue::gradientWithStylesResolved):
1003         * css/CSSGradientValue.h:
1004         * css/CSSImageGeneratorValue.cpp:
1005         (WebCore::CSSImageGeneratorValue::image):
1006         (WebCore::CSSImageGeneratorValue::fixedSize):
1007         (WebCore::CSSImageGeneratorValue::loadSubimages):
1008         * css/CSSParser.cpp:
1009         (WebCore::CSSParser::parseDeprecatedGradient):
1010         * css/CSSValue.cpp:
1011         (WebCore::CSSValue::destroy):
1012         * css/CSSValue.h:
1013         (WebCore::CSSValue::isLinearGradient):
1014         (WebCore::CSSValue::isRadialGradient):
1015         * css/StyleResolver.cpp:
1016         (WebCore::StyleResolver::applyProperty):
1017         (WebCore::StyleResolver::styleImage):
1018
1019 2013-09-30  Vani Hegde  <vani.hegde@samsung.com>
1020
1021         user-select: none cursor turns to I-beam on mouse dragging
1022         https://bugs.webkit.org/show_bug.cgi?id=90159
1023
1024         Reviewed by Ryosuke Niwa.
1025
1026         When tried to select some text in an area that has style
1027         cursor:default set, cursor type changes to text cursor ignoring
1028         the cursor style that is explicitly set.
1029
1030         When the cursor style is explicitly set as default (or something else),
1031         we should not change it to text cursor no matter what we are over
1032         or what operation we are performing (be it hovering over the text
1033         or selecting the text).
1034
1035         During text selection, changing the cursor type to text only when
1036         there is no explicit cursor type set fixes the issue.
1037
1038         Test: editing/caret/selection-with-caret-type-progress.html
1039
1040         * page/EventHandler.cpp:
1041         (WebCore::EventHandler::selectCursor):
1042         During selection, set the cursor style to text only if there is no
1043         explicit cursor style set.
1044
1045 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1046
1047         Generate toCSSFooValue() for CSSCanvasValue
1048         https://bugs.webkit.org/show_bug.cgi?id=122058
1049
1050         Reviewed by Antti Koivisto.
1051
1052         Generate toCSSFooValue() for CSSCanvasValue, and use it.
1053         This type cast function will help to detect bad-casts.
1054         isCanvasValue() is added in order to generate toCSSCanvasValue.
1055
1056         No new tests, no behavior change.
1057
1058         * css/CSSCanvasValue.h:
1059         * css/CSSImageGeneratorValue.cpp:
1060         (WebCore::CSSImageGeneratorValue::image):
1061         (WebCore::CSSImageGeneratorValue::fixedSize):
1062         (WebCore::CSSImageGeneratorValue::loadSubimages):
1063         * css/CSSValue.cpp:
1064         (WebCore::CSSValue::destroy):
1065         * css/CSSValue.h:
1066         (WebCore::CSSValue::isCanvasValue):
1067
1068 2013-09-29  Mark Rowe  <mrowe@apple.com>
1069
1070         Fix the Lion build.
1071
1072         Ensure that C++ and Objective-C++ files build with the right compiler flags.
1073
1074         * Configurations/WebCore.xcconfig:
1075
1076 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1077
1078         Generate toCSSFooValue() for CSSLineBoxContainValue
1079         https://bugs.webkit.org/show_bug.cgi?id=122054
1080
1081         Reviewed by Darin Adler.
1082
1083         As a step to use toCSSFooValue, toCSSLineBoxContainValue is generated by using
1084         CSS_VALUE_TYPE_CASTS. To use it, isCSSLineBoxContainValue() is changed to
1085         isLineBoxContatinValue(). Unnecessary local variable is removed by this patch.
1086
1087         No new tests, no behavior changes.
1088
1089         * css/CSSLineBoxContainValue.h:
1090         * css/CSSValue.cpp:
1091         (WebCore::CSSValue::destroy):
1092         * css/CSSValue.h:
1093         (WebCore::CSSValue::isLineBoxContainValue):
1094         * css/StyleResolver.cpp:
1095         (WebCore::StyleResolver::applyProperty):
1096
1097 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1098
1099         Generate toCSSCrossfadeValue() instead of using manual function
1100         https://bugs.webkit.org/show_bug.cgi?id=122057
1101
1102         Reviewed by Antti Koivisto.
1103
1104         Generated toCSSFooValue() supports more plenty functions rather than
1105         to use manual cast function.
1106
1107         No new tests, no behavior changes.
1108
1109         * css/CSSCrossfadeValue.h:
1110         * css/CSSImageGeneratorValue.cpp:
1111         (WebCore::CSSImageGeneratorValue::image):
1112         (WebCore::CSSImageGeneratorValue::fixedSize):
1113         (WebCore::CSSImageGeneratorValue::loadSubimages):
1114         * css/CSSValue.cpp:
1115         (WebCore::CSSValue::destroy):
1116
1117 2013-09-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1118
1119         Generate toCSSFooValue() for CSSFilterImageValue and CSSInitialValue
1120         https://bugs.webkit.org/show_bug.cgi?id=122056
1121
1122         Reviewed by Antti Koivisto.
1123
1124         Generate toCSSFooValue() for CSSFilterImageValue and CSSInitialValue, and use it.
1125         This type cast function will help to detect bad-casts.
1126
1127         No new tests, no behavior changes.
1128
1129         * css/CSSFilterImageValue.h:
1130         * css/CSSImageGeneratorValue.cpp:
1131         (WebCore::CSSImageGeneratorValue::image):
1132         (WebCore::CSSImageGeneratorValue::fixedSize):
1133         (WebCore::CSSImageGeneratorValue::loadSubimages):
1134         * css/CSSInitialValue.h:
1135         * css/CSSValue.cpp:
1136         (WebCore::CSSValue::destroy):
1137         * css/StyleResolver.cpp:
1138         (WebCore::StyleResolver::generatedOrPendingFromValue):
1139
1140 2013-09-29  Darin Adler  <darin@apple.com>
1141
1142         Fix crashes caused by my recent attempt at a Windows build fix.
1143
1144         * bindings/js/WebCoreTypedArrayController.cpp:
1145         (WebCore::WebCoreTypedArrayController::toJS): Added back the prefix for the call to
1146         WebCore::toJS, otherwise this function just calls itself infinitely recursively.
1147
1148 2013-09-29  Sam Weinig  <sam@webkit.org>
1149
1150         Cleanup PageThrottler and PageConsole a bit
1151         https://bugs.webkit.org/show_bug.cgi?id=122085
1152
1153         Reviewed by Anders Carlsson.
1154
1155         * html/HTMLMediaElement.h:
1156         * loader/FrameLoader.cpp:
1157         (WebCore::FrameLoader::completed):
1158         * loader/FrameLoader.h:
1159         * loader/SubresourceLoader.cpp:
1160         (WebCore::SubresourceLoader::checkForHTTPStatusCodeError):
1161         (WebCore::SubresourceLoader::didFinishLoading):
1162         (WebCore::SubresourceLoader::didFail):
1163         (WebCore::SubresourceLoader::willCancel):
1164         * loader/SubresourceLoader.h:
1165         Store the PageActivityAssertionToken as a std::unique_ptr.
1166
1167         * page/Page.cpp:
1168         (WebCore::Page::Page):
1169         Use createOwned and pass this by reference for the PageThrottler and PageConsole.
1170         (WebCore::Page::~Page):
1171         Remove unnecessary clearing of an OwnPtr that is about to be destroyed.
1172         * page/Page.h:
1173         Make m_pageThrottler const and return it as a reference.
1174
1175         * page/PageActivityAssertionToken.cpp:
1176         (WebCore::PageActivityAssertionToken::PageActivityAssertionToken):
1177         (WebCore::PageActivityAssertionToken::~PageActivityAssertionToken):
1178         * page/PageActivityAssertionToken.h:
1179         Take the PageThrottler by reference in the constructor. It is never null.
1180
1181         * page/PageConsole.cpp:
1182         (WebCore::PageConsole::PageConsole):
1183         (WebCore::PageConsole::~PageConsole):
1184         (WebCore::PageConsole::addMessage):
1185         * page/PageConsole.h:
1186         Pass and store the Page as a reference and remove an extraneous null check. Remove
1187         the create function.
1188
1189         * page/PageThrottler.cpp:
1190         (WebCore::PageThrottler::PageThrottler):
1191         (WebCore::PageThrottler::~PageThrottler):
1192         (WebCore::PageThrottler::createActivityToken):
1193         (WebCore::PageThrottler::throttlePage):
1194         (WebCore::PageThrottler::unthrottlePage):
1195         (WebCore::PageThrottler::addActivityToken):
1196         (WebCore::PageThrottler::removeActivityToken):
1197         * page/PageThrottler.h:
1198         Pass and store the Page as a reference. Move the creation of PageActivityAssertionToken here
1199         to aid encapsulation.
1200
1201 2013-09-29  Darin Adler  <darin@apple.com>
1202
1203         Try to fix Windows build.
1204
1205         * bindings/js/WebCoreTypedArrayController.cpp: Windows has a symbol named Handle, so we need
1206         to call JSC::Handle out by name. To fix that, I removed "using namespace JSC" entirely. And
1207         just for fun, sort of "rewrote" this file.
1208         (WebCore::WebCoreTypedArrayController::WebCoreTypedArrayController): Removed unneeded explicit
1209         initialization of m_owner.
1210         (WebCore::WebCoreTypedArrayController::~WebCoreTypedArrayController): Fixed formatting.
1211         (WebCore::WebCoreTypedArrayController::toJS): Added lots of explicit JSC and got rid of local.
1212         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::isReachableFromOpaqueRoots): Cut
1213         down on locals, used auto& for type, and called it "wrapper" since that's what JSArrayBuffer is.
1214         (WebCore::WebCoreTypedArrayController::JSArrayBufferOwner::finalize): More of the same.
1215
1216 2013-09-29  Darin Adler  <darin@apple.com>
1217
1218         Use RenderElement instead of RenderObject in many places
1219         https://bugs.webkit.org/show_bug.cgi?id=122078
1220
1221         Reviewed by Andreas Kling.
1222
1223         * WebCore.exp.in: Updated for name changes.
1224
1225         * dom/ContainerNode.h: Moved renderer() here from Element.
1226         * dom/Element.h: Moved renderer() from here to ContainerNode.
1227         * render/RenderElement.h: Moved renderer() from Element to ContainerNode.
1228
1229         * accessibility/AccessibilityImageMapLink.cpp:
1230         (WebCore::AccessibilityImageMapLink::imageMapLinkRenderer):
1231         (WebCore::AccessibilityImageMapLink::detachFromParent):
1232         (WebCore::AccessibilityImageMapLink::elementPath):
1233         (WebCore::AccessibilityImageMapLink::elementRect):
1234         * accessibility/AccessibilityImageMapLink.h:
1235         * accessibility/AccessibilityRenderObject.cpp:
1236         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
1237         * bindings/objc/DOM.mm:
1238         (-[DOMElement image]):
1239         (-[DOMElement _font]):
1240         (-[DOMElement _imageTIFFRepresentation]):
1241         * css/CSSCanvasValue.cpp:
1242         (WebCore::CSSCanvasValue::canvasChanged):
1243         (WebCore::CSSCanvasValue::canvasResized):
1244         (WebCore::CSSCanvasValue::canvasDestroyed):
1245         (WebCore::CSSCanvasValue::fixedSize):
1246         (WebCore::CSSCanvasValue::image):
1247         * css/CSSCanvasValue.h:
1248         * css/CSSComputedStyleDeclaration.cpp:
1249         (WebCore::computeRenderStyleForProperty):
1250         * css/CSSCrossfadeValue.cpp:
1251         (WebCore::subimageKnownToBeOpaque):
1252         (WebCore::CSSCrossfadeValue::fixedSize):
1253         (WebCore::CSSCrossfadeValue::knownToBeOpaque):
1254         (WebCore::CSSCrossfadeValue::image):
1255         (WebCore::CSSCrossfadeValue::crossfadeChanged):
1256         * css/CSSCrossfadeValue.h:
1257         * css/CSSFilterImageValue.cpp:
1258         (WebCore::CSSFilterImageValue::fixedSize):
1259         (WebCore::CSSFilterImageValue::knownToBeOpaque):
1260         (WebCore::CSSFilterImageValue::image):
1261         (WebCore::CSSFilterImageValue::filterImageChanged):
1262         * css/CSSFilterImageValue.h:
1263         * css/CSSFontSelector.cpp:
1264         * css/CSSGradientValue.cpp:
1265         (WebCore::CSSGradientValue::image):
1266         (WebCore::CSSGradientValue::addStops):
1267         (WebCore::CSSGradientValue::knownToBeOpaque):
1268         (WebCore::CSSLinearGradientValue::createGradient):
1269         (WebCore::CSSRadialGradientValue::createGradient):
1270         * css/CSSGradientValue.h:
1271         (WebCore::CSSGradientValue::fixedSize):
1272         * css/CSSImageGeneratorValue.cpp:
1273         (WebCore::CSSImageGeneratorValue::addClient):
1274         (WebCore::CSSImageGeneratorValue::removeClient):
1275         (WebCore::CSSImageGeneratorValue::image):
1276         (WebCore::CSSImageGeneratorValue::fixedSize):
1277         (WebCore::CSSImageGeneratorValue::knownToBeOpaque):
1278         * css/CSSImageGeneratorValue.h:
1279         (WebCore::CSSImageGeneratorValue::clients):
1280         * css/CSSImageValue.cpp:
1281         (WebCore::CSSImageValue::knownToBeOpaque):
1282         * css/CSSImageValue.h:
1283         * css/DeprecatedStyleBuilder.cpp:
1284         * dom/DocumentMarkerController.cpp:
1285         (WebCore::DocumentMarkerController::removeMarkersFromList):
1286         (WebCore::DocumentMarkerController::repaintMarkers):
1287         * dom/Element.cpp:
1288         (WebCore::localZoomForRenderer):
1289         (WebCore::adjustForLocalZoom):
1290         (WebCore::Element::offsetParent):
1291         (WebCore::Element::updateExistingPseudoElement):
1292         * dom/ElementRareData.h:
1293         (WebCore::ElementRareData::create):
1294         (WebCore::ElementRareData::ElementRareData):
1295         * dom/Node.cpp:
1296         (WebCore::Node::ensureRareData):
1297         * editing/DeleteButtonController.cpp:
1298         (WebCore::isDeletableElement):
1299         * editing/Editor.cpp:
1300         (WebCore::Editor::hasBidiSelection):
1301         (WebCore::Editor::baseWritingDirectionForSelectionStart):
1302         * editing/EditorCommand.cpp:
1303         (WebCore::verticalScrollDistance):
1304         * editing/htmlediting.cpp:
1305         (WebCore::directionOfEnclosingBlock):
1306         * editing/ios/EditorIOS.mm:
1307         (WebCore::Editor::fontForSelection):
1308         (WebCore::getImage):
1309         * editing/mac/EditorMac.mm:
1310         (WebCore::Editor::fontForSelection):
1311         (WebCore::getImage):
1312         * editing/markup.cpp:
1313         * html/HTMLAreaElement.cpp:
1314         (WebCore::HTMLAreaElement::computePath):
1315         (WebCore::HTMLAreaElement::computeRect):
1316         (WebCore::HTMLAreaElement::setFocus):
1317         * html/HTMLAreaElement.h:
1318         * html/HTMLCanvasElement.cpp:
1319         (WebCore::HTMLCanvasElement::reset):
1320         * html/HTMLElement.cpp:
1321         (WebCore::HTMLElement::setInnerText):
1322         * html/HTMLFormControlElement.cpp:
1323         (WebCore::updateFromElementCallback):
1324         * html/HTMLFormElement.cpp:
1325         (WebCore::HTMLFormElement::rendererIsNeeded):
1326         * html/HTMLFrameOwnerElement.h:
1327         * html/HTMLImageElement.cpp:
1328         (WebCore::HTMLImageElement::x):
1329         (WebCore::HTMLImageElement::y):
1330         (WebCore::HTMLImageElement::willRespondToMouseClickEvents):
1331         * html/HTMLMapElement.cpp:
1332         * html/HTMLMediaElement.cpp:
1333         (WebCore::HTMLMediaElement::defaultEventHandler):
1334         * html/HTMLMeterElement.cpp:
1335         (WebCore::HTMLMeterElement::renderMeter):
1336         * html/HTMLOptionElement.cpp:
1337         (WebCore::HTMLOptionElement::didRecalcStyle):
1338         * html/HTMLPlugInElement.cpp:
1339         (WebCore::HTMLPlugInElement::willRespondToMouseClickEvents):
1340         (WebCore::HTMLPlugInElement::defaultEventHandler):
1341         (WebCore::HTMLPlugInElement::isKeyboardFocusable):
1342         * html/HTMLPlugInImageElement.cpp:
1343         (WebCore::HTMLPlugInImageElement::defaultEventHandler):
1344         * html/HTMLProgressElement.cpp:
1345         (WebCore::HTMLProgressElement::renderProgress):
1346         * html/HTMLSelectElement.cpp:
1347         (WebCore::HTMLSelectElement::scrollToSelection):
1348         (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
1349         (WebCore::HTMLSelectElement::selectOption):
1350         * html/HTMLTableCellElement.cpp:
1351         (WebCore::HTMLTableCellElement::cellAbove):
1352         * html/HTMLTextFormControlElement.cpp:
1353         (WebCore::hasVisibleTextArea):
1354         (WebCore::HTMLTextFormControlElement::setSelectionRange):
1355         * html/InputType.h:
1356         * html/parser/HTMLResourcePreloader.cpp:
1357         * html/shadow/MediaControlElementTypes.cpp:
1358         (WebCore::MediaControlElement::setDisplayType):
1359         * html/shadow/MediaControlElements.cpp:
1360         (WebCore::MediaControlPanelElement::startDrag):
1361         (WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
1362         * html/shadow/MeterShadowElement.cpp:
1363         (WebCore::MeterShadowElement::rendererIsNeeded):
1364         (WebCore::MeterInnerElement::rendererIsNeeded):
1365         * inspector/InspectorOverlay.cpp:
1366         * inspector/InspectorTimelineAgent.cpp:
1367         * inspector/InspectorTimelineAgent.h:
1368         * loader/ImageLoader.cpp:
1369         (WebCore::ImageLoader::renderImageResource):
1370         * loader/cache/CachedImage.cpp:
1371         (WebCore::CachedImage::currentFrameKnownToBeOpaque):
1372         * loader/cache/CachedImage.h:
1373         * mathml/MathMLElement.cpp:
1374         * page/ContextMenuController.cpp:
1375         * page/DragController.cpp:
1376         (WebCore::DragController::draggableElement):
1377         * page/EventHandler.cpp:
1378         (WebCore::EventHandler::EventHandler):
1379         (WebCore::EventHandler::clear):
1380         (WebCore::EventHandler::startPanScrolling):
1381         (WebCore::EventHandler::autoscrollRenderer):
1382         (WebCore::EventHandler::scrollOverflow):
1383         (WebCore::EventHandler::logicalScrollOverflow):
1384         (WebCore::EventHandler::subframeForTargetNode):
1385         (WebCore::EventHandler::selectCursor):
1386         (WebCore::layerForNode):
1387         (WebCore::EventHandler::handleWheelEvent):
1388         (WebCore::EventHandler::clearGestureScrollNodes):
1389         * page/EventHandler.h:
1390         * page/FocusController.cpp:
1391         * page/Frame.cpp:
1392         (WebCore::Frame::ownerRenderer):
1393         (WebCore::Frame::visiblePositionForPoint):
1394         (WebCore::Frame::nodeImage):
1395         * page/FrameView.cpp:
1396         (WebCore::FrameView::applyOverflowToViewport):
1397         (WebCore::FrameView::applyPaginationToViewport):
1398         (WebCore::FrameView::calculateScrollbarModesForLayout):
1399         (WebCore::FrameView::isEnclosedInCompositingLayer):
1400         (WebCore::FrameView::embeddedContentBox):
1401         (WebCore::FrameView::addSlowRepaintObject):
1402         (WebCore::FrameView::removeSlowRepaintObject):
1403         (WebCore::FrameView::addViewportConstrainedObject):
1404         (WebCore::FrameView::removeViewportConstrainedObject):
1405         (WebCore::FrameView::scrollContentsFastPath):
1406         (WebCore::FrameView::repaintSlowRepaintObjects):
1407         (WebCore::FrameView::setViewportConstrainedObjectsNeedLayout):
1408         (WebCore::FrameView::updateOverflowStatus):
1409         (WebCore::FrameView::updateScrollCorner):
1410         (WebCore::FrameView::paintContents):
1411         (WebCore::FrameView::convertFromRenderer):
1412         (WebCore::FrameView::convertToRenderer):
1413         * page/FrameView.h:
1414         * page/PageSerializer.cpp:
1415         (WebCore::PageSerializer::addImageToResources):
1416         * page/PageSerializer.h:
1417         * page/animation/AnimationBase.cpp:
1418         (WebCore::AnimationBase::AnimationBase):
1419         (WebCore::AnimationBase::updateStateMachine):
1420         * page/animation/AnimationBase.h:
1421         (WebCore::AnimationBase::renderer):
1422         * page/animation/AnimationController.cpp:
1423         (WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
1424         (WebCore::AnimationControllerPrivate::clear):
1425         (WebCore::AnimationControllerPrivate::updateAnimations):
1426         (WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
1427         (WebCore::AnimationControllerPrivate::isRunningAnimationOnRenderer):
1428         (WebCore::AnimationControllerPrivate::isRunningAcceleratedAnimationOnRenderer):
1429         (WebCore::AnimationControllerPrivate::suspendAnimationsForDocument):
1430         (WebCore::AnimationControllerPrivate::resumeAnimationsForDocument):
1431         (WebCore::AnimationControllerPrivate::pauseAnimationAtTime):
1432         (WebCore::AnimationControllerPrivate::pauseTransitionAtTime):
1433         (WebCore::AnimationControllerPrivate::getAnimatedStyleForRenderer):
1434         (WebCore::AnimationControllerPrivate::numberOfActiveAnimations):
1435         (WebCore::AnimationController::cancelAnimations):
1436         (WebCore::AnimationController::updateAnimations):
1437         (WebCore::AnimationController::getAnimatedStyleForRenderer):
1438         (WebCore::AnimationController::notifyAnimationStarted):
1439         (WebCore::AnimationController::pauseAnimationAtTime):
1440         (WebCore::AnimationController::pauseTransitionAtTime):
1441         (WebCore::AnimationController::isRunningAnimationOnRenderer):
1442         (WebCore::AnimationController::isRunningAcceleratedAnimationOnRenderer):
1443         * page/animation/AnimationController.h:
1444         * page/animation/AnimationControllerPrivate.h:
1445         * page/animation/CSSPropertyAnimation.cpp:
1446         (WebCore::crossfadeBlend):
1447         * page/animation/CompositeAnimation.cpp:
1448         (WebCore::CompositeAnimation::updateTransitions):
1449         (WebCore::CompositeAnimation::updateKeyframeAnimations):
1450         (WebCore::CompositeAnimation::animate):
1451         * page/animation/CompositeAnimation.h:
1452         * page/animation/ImplicitAnimation.cpp:
1453         (WebCore::ImplicitAnimation::ImplicitAnimation):
1454         (WebCore::ImplicitAnimation::animate):
1455         (WebCore::ImplicitAnimation::pauseAnimation):
1456         (WebCore::ImplicitAnimation::sendTransitionEvent):
1457         * page/animation/ImplicitAnimation.h:
1458         (WebCore::ImplicitAnimation::create):
1459         * page/animation/KeyframeAnimation.cpp:
1460         (WebCore::KeyframeAnimation::KeyframeAnimation):
1461         (WebCore::KeyframeAnimation::animate):
1462         (WebCore::KeyframeAnimation::pauseAnimation):
1463         (WebCore::KeyframeAnimation::endAnimation):
1464         (WebCore::KeyframeAnimation::sendAnimationEvent):
1465         * page/animation/KeyframeAnimation.h:
1466         * page/mac/EventHandlerMac.mm:
1467         (WebCore::EventHandler::passWidgetMouseDownEventToWidget):
1468         (WebCore::EventHandler::passSubframeEventToSubframe):
1469         * page/mac/FrameSnapshottingMac.mm:
1470         (WebCore::snapshotDragImage):
1471         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1472         (WebCore::MediaPlayerPrivateQTKit::paint):
1473         * rendering/CounterNode.cpp:
1474         (WebCore::CounterNode::CounterNode):
1475         (WebCore::CounterNode::create):
1476         * rendering/CounterNode.h:
1477         (WebCore::CounterNode::owner):
1478         * rendering/FilterEffectRenderer.cpp:
1479         (WebCore::FilterEffectRenderer::buildReferenceFilter):
1480         (WebCore::FilterEffectRenderer::build):
1481         * rendering/FilterEffectRenderer.h:
1482         * rendering/HitTestResult.cpp:
1483         (WebCore::HitTestResult::spellingToolTip):
1484         (WebCore::HitTestResult::title):
1485         (WebCore::HitTestResult::innerTextIfTruncated):
1486         (WebCore::HitTestResult::image):
1487         * rendering/LayoutRepainter.cpp:
1488         (WebCore::LayoutRepainter::LayoutRepainter):
1489         * rendering/LayoutRepainter.h:
1490         * rendering/LayoutState.h:
1491         (WebCore::LayoutState::LayoutState):
1492         * rendering/LineWidth.h:
1493         * rendering/LogicalSelectionOffsetCaches.h:
1494         (WebCore::isContainingBlockCandidateForAbsolutelyPositionedObject):
1495         (WebCore::isNonRenderBlockInline):
1496         (WebCore::containingBlockForFixedPosition):
1497         (WebCore::containingBlockForAbsolutePosition):
1498         (WebCore::containingBlockForObjectInFlow):
1499         (WebCore::LogicalSelectionOffsetCaches::LogicalSelectionOffsetCaches):
1500         * rendering/PaintInfo.h:
1501         (WebCore::PaintInfo::PaintInfo):
1502         (WebCore::PaintInfo::updateSubtreePaintRootForChildren):
1503         * rendering/RenderBox.cpp:
1504         (WebCore::RenderBox::paintFillLayers):
1505         (WebCore::RenderBox::paintFillLayer):
1506         * rendering/RenderBox.h:
1507         * rendering/RenderBoxModelObject.cpp:
1508         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
1509         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry):
1510         * rendering/RenderBoxModelObject.h:
1511         * rendering/RenderCounter.cpp:
1512         (WebCore::nextInPreOrder):
1513         (WebCore::planCounter):
1514         (WebCore::makeCounterNode):
1515         (WebCore::RenderCounter::originalText):
1516         * rendering/RenderElement.cpp:
1517         (WebCore::RenderElement::~RenderElement):
1518         (WebCore::RenderElement::insertChildInternal):
1519         (WebCore::RenderElement::removeChildInternal):
1520         (WebCore::RenderElement::willBeDestroyed):
1521         (WebCore::RenderElement::rendererForRootBackground):
1522         * rendering/RenderImageResource.cpp:
1523         (WebCore::RenderImageResource::initialize):
1524         * rendering/RenderImageResource.h:
1525         * rendering/RenderImageResourceStyleImage.cpp:
1526         (WebCore::RenderImageResourceStyleImage::initialize):
1527         * rendering/RenderImageResourceStyleImage.h:
1528         (WebCore::RenderImageResourceStyleImage::create):
1529         * rendering/RenderLayerCompositor.cpp:
1530         (WebCore::RenderLayerCompositor::shouldPropagateCompositingToEnclosingFrame):
1531         (WebCore::RenderLayerCompositor::requiresCompositingLayer):
1532         (WebCore::RenderLayerCompositor::canBeComposited):
1533         (WebCore::RenderLayerCompositor::requiresOwnBackingStore):
1534         (WebCore::RenderLayerCompositor::reasonsForCompositing):
1535         (WebCore::RenderLayerCompositor::requiresCompositingForTransform):
1536         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
1537         (WebCore::RenderLayerCompositor::requiresCompositingForCanvas):
1538         (WebCore::RenderLayerCompositor::requiresCompositingForPlugin):
1539         (WebCore::RenderLayerCompositor::requiresCompositingForFrame):
1540         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation):
1541         (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason):
1542         (WebCore::RenderLayerCompositor::requiresCompositingForFilters):
1543         (WebCore::RenderLayerCompositor::requiresCompositingForBlending):
1544         (WebCore::RenderLayerCompositor::requiresCompositingForPosition):
1545         (WebCore::RenderLayerCompositor::isRunningAcceleratedTransformAnimation):
1546         * rendering/RenderLayerCompositor.h:
1547         * rendering/RenderObject.cpp:
1548         (WebCore::RenderObject::containingBlock):
1549         (WebCore::mustRepaintFillLayers):
1550         (WebCore::RenderObject::borderImageIsLoadedAndCanBeRendered):
1551         (WebCore::RenderObject::willBeDestroyed):
1552         * rendering/RenderScrollbarPart.cpp:
1553         (WebCore::RenderScrollbarPart::rendererOwningScrollbar):
1554         * rendering/RenderScrollbarPart.h:
1555         * rendering/RenderTableCell.cpp:
1556         (WebCore::RenderTableCell::paintBackgroundsBehindCell):
1557         * rendering/RenderTableCell.h:
1558         * rendering/RenderView.cpp:
1559         (WebCore::RenderView::RenderView):
1560         * rendering/style/FillLayer.cpp:
1561         (WebCore::FillLayer::hasOpaqueImage):
1562         * rendering/style/FillLayer.h:
1563         * rendering/style/KeyframeList.h:
1564         (WebCore::KeyframeList::KeyframeList):
1565         * rendering/style/StyleCachedImage.cpp:
1566         (WebCore::StyleCachedImage::imageSize):
1567         (WebCore::StyleCachedImage::computeIntrinsicDimensions):
1568         (WebCore::StyleCachedImage::setContainerSizeForRenderer):
1569         (WebCore::StyleCachedImage::addClient):
1570         (WebCore::StyleCachedImage::removeClient):
1571         (WebCore::StyleCachedImage::image):
1572         (WebCore::StyleCachedImage::knownToBeOpaque):
1573         * rendering/style/StyleCachedImage.h:
1574         * rendering/style/StyleCachedImageSet.cpp:
1575         (WebCore::StyleCachedImageSet::imageSize):
1576         (WebCore::StyleCachedImageSet::computeIntrinsicDimensions):
1577         (WebCore::StyleCachedImageSet::setContainerSizeForRenderer):
1578         (WebCore::StyleCachedImageSet::addClient):
1579         (WebCore::StyleCachedImageSet::removeClient):
1580         (WebCore::StyleCachedImageSet::image):
1581         (WebCore::StyleCachedImageSet::knownToBeOpaque):
1582         * rendering/style/StyleCachedImageSet.h:
1583         * rendering/style/StyleGeneratedImage.cpp:
1584         (WebCore::StyleGeneratedImage::imageSize):
1585         (WebCore::StyleGeneratedImage::computeIntrinsicDimensions):
1586         (WebCore::StyleGeneratedImage::addClient):
1587         (WebCore::StyleGeneratedImage::removeClient):
1588         (WebCore::StyleGeneratedImage::image):
1589         (WebCore::StyleGeneratedImage::knownToBeOpaque):
1590         * rendering/style/StyleGeneratedImage.h:
1591         * rendering/style/StyleImage.h:
1592         (WebCore::StyleImage::imagesEquivalent):
1593         * rendering/style/StylePendingImage.h:
1594         (WebCore::StylePendingImage::cssImageValue):
1595         (WebCore::StylePendingImage::cssImageGeneratorValue):
1596         (WebCore::StylePendingImage::cssCursorImageValue):
1597         (WebCore::StylePendingImage::cssImageSetValue):
1598         (WebCore::StylePendingImage::computeIntrinsicDimensions):
1599         * testing/Internals.cpp:
1600         (WebCore::Internals::boundingBox):
1601         (WebCore::Internals::isSelectPopupVisible):
1602         (WebCore::Internals::isPluginUnavailabilityIndicatorObscured):
1603         Use RenderElement instead of RenderObject where it was easy to do so.
1604         For local variables holding the return value of renderer() functions,
1605         use auto instead, so the most-specific possible type will be used,
1606         without having to figure out what that is in each case. Also use some
1607         more OVERRIDE and FINAL and use nullptr instead of 0. And replace some
1608         cryptic short local variable names with words.
1609
1610 2013-09-29  Philip Rogers  <pdr@google.com>
1611
1612         Repaint borders and outlines on pseudo content changes
1613         https://bugs.webkit.org/show_bug.cgi?id=122070
1614
1615         Reviewed by Andreas Kling.
1616
1617         This patch fixes a regression from wkrev.com/150259 where pseudo content with
1618         borders or outlines would fail to repaint if the color property changed.
1619         The root bug is that border-color and outline-color properties use 'color' if
1620         no explicit border-color or outline-color are given, and changing color should
1621         repaint borders and outlines even if the text content is empty.
1622
1623         Relevant spec sections:
1624         border: http://www.w3.org/TR/CSS1/#border-color
1625         outline: http://www.w3.org/TR/CSS2/ui.html#propdef-outline-color
1626
1627         This patch also renames StyleDifferenceRepaintIfText to
1628         StyleDifferenceRepaintIfTextOrBorderOrOutline and updates the relevant functions.
1629
1630         Test: fast/repaint/hover-pseudo-borders.html
1631
1632         * rendering/RenderElement.cpp:
1633         (WebCore::RenderElement::hasImmediateNonWhitespaceTextChildOrBorderOrOutline):
1634
1635             This function has been renamed to reflect that it returns true for borders
1636             or outlines as well.
1637
1638         (WebCore::RenderElement::shouldRepaintForStyleDifference):
1639         * rendering/RenderElement.h:
1640         * rendering/style/RenderStyle.cpp:
1641         (WebCore::RenderStyle::changeRequiresRepaintIfTextOrBorderOrOutline):
1642         (WebCore::RenderStyle::diff):
1643         * rendering/style/RenderStyle.h:
1644         * rendering/style/RenderStyleConstants.h:
1645         * rendering/svg/SVGResourcesCache.cpp:
1646         (WebCore::SVGResourcesCache::clientStyleChanged):
1647             These have also been renamed to reflect the new borders and outlines check.
1648
1649 2013-09-29  Antti Koivisto  <antti@apple.com>
1650
1651         Tighten typing in inline rendering
1652         https://bugs.webkit.org/show_bug.cgi?id=122076
1653
1654         Reviewed by Andreas Kling.
1655         
1656         More RenderElement, const, &, etc.
1657
1658         * dom/Position.cpp:
1659         (WebCore::Position::hasRenderedNonAnonymousDescendantsWithHeight):
1660         * rendering/InlineFlowBox.cpp:
1661         (WebCore::isLastChildForRenderer):
1662         (WebCore::isAncestorAndWithinBlock):
1663         (WebCore::InlineFlowBox::determineSpacingForFlowBoxes):
1664         (WebCore::InlineFlowBox::nodeAtPoint):
1665         * rendering/InlineIterator.h:
1666         (WebCore::InlineIterator::InlineIterator):
1667         (WebCore::InlineIterator::root):
1668         (WebCore::isEmptyInline):
1669         (WebCore::bidiNextShared):
1670         (WebCore::bidiNextSkippingEmptyInlines):
1671         (WebCore::bidiNextIncludingEmptyInlines):
1672         (WebCore::bidiFirstSkippingEmptyInlines):
1673         * rendering/RenderBlockLineLayout.cpp:
1674         (WebCore::inlineLogicalWidth):
1675         (WebCore::alwaysRequiresLineBox):
1676         (WebCore::requiresLineBox):
1677         (WebCore::canBreakAtThisPosition):
1678         (WebCore::LineBreaker::nextSegmentBreak):
1679         * rendering/shapes/ShapeInsideInfo.h:
1680         (WebCore::LineSegmentIterator::LineSegmentIterator):
1681
1682 2013-09-28  Sam Weinig  <sam@webkit.org>
1683
1684         Merge ScriptControllerBase into ScriptController
1685         https://bugs.webkit.org/show_bug.cgi?id=122071
1686
1687         Reviewed by Antti Koivisto.
1688
1689         There is no need for ScriptControllerBase. Remove it.
1690
1691         * CMakeLists.txt:
1692         * GNUmakefile.list.am:
1693         * Target.pri:
1694         * WebCore.vcxproj/WebCore.vcxproj:
1695         * WebCore.vcxproj/WebCore.vcxproj.filters:
1696         * WebCore.xcodeproj/project.pbxproj:
1697         * bindings/ScriptControllerBase.cpp: Removed.
1698         * bindings/ScriptControllerBase.h: Removed.
1699         * bindings/js/ScriptController.cpp:
1700         (WebCore::ScriptController::canExecuteScripts):
1701         (WebCore::ScriptController::executeScript):
1702         (WebCore::ScriptController::executeIfJavaScriptURL):
1703         * bindings/js/ScriptController.h:
1704
1705 2013-09-28  Zan Dobersek  <zdobersek@igalia.com>
1706
1707         Unreviewed build fix after r156613 for ports enabling CSS3_TEXT.
1708
1709         * rendering/RenderBlockLineLayout.cpp:
1710         (WebCore::requiresIndent): Use the RenderStyle reference.
1711
1712 2013-09-28  Antti Koivisto  <antti@apple.com>
1713
1714         Switch inline boxes to use const RenderStyle&
1715         https://bugs.webkit.org/show_bug.cgi?id=122068
1716
1717         Reviewed by Sam Weinig.
1718
1719 2013-09-28  Antti Koivisto  <antti@apple.com>
1720
1721         Add first()/last() to ElementIteratorAdapters
1722         https://bugs.webkit.org/show_bug.cgi?id=122067
1723
1724         Reviewed by Darin Adler.
1725
1726         Add a convenient way for getting the first and last element if it exists.
1727         
1728         Use it in some places.
1729
1730         * accessibility/AccessibilityNodeObject.cpp:
1731         (WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
1732         * css/CSSFontFaceSource.cpp:
1733         (WebCore::CSSFontFaceSource::getFontData):
1734         * dom/Document.cpp:
1735         (WebCore::Document::childrenChanged):
1736         (WebCore::Document::removeTitle):
1737         * dom/ElementChildIterator.h:
1738         (WebCore::::first):
1739         (WebCore::::last):
1740         * dom/ElementDescendantIterator.h:
1741         (WebCore::::first):
1742         (WebCore::::last):
1743         * html/HTMLFieldSetElement.cpp:
1744         (WebCore::HTMLFieldSetElement::legend):
1745         * html/HTMLLegendElement.cpp:
1746         (WebCore::HTMLLegendElement::associatedControl):
1747         * html/HTMLMediaElement.cpp:
1748         (WebCore::HTMLMediaElement::finishParsingChildren):
1749         (WebCore::HTMLMediaElement::selectMediaResource):
1750         * svg/SVGElement.cpp:
1751         (WebCore::SVGElement::title):
1752         * svg/SVGFontFaceElement.cpp:
1753         (WebCore::SVGFontFaceElement::rebuildFontFace):
1754         * svg/graphics/SVGImage.cpp:
1755         (WebCore::SVGImage::hasSingleSecurityOrigin):
1756
1757 2013-09-28  Mark Rowe  <mrowe@apple.com>
1758
1759         Fix some failures with newer versions of clang.
1760
1761         Some CoreGraphics headers generate warnings under newer versions of clang. Since they're system headers the warnings would
1762         usually be suppressed, but we're adding the frameworks to the non-system framework search path so they're no longer treated
1763         as system headers. We address this by removing the system paths from FRAMEWORK_SEARCH_PATHS and using the -iframework compiler
1764         flag in OTHER_CFLAGS to add the paths to the system framework search path. We have to set OTHER_CFLAGS at the target level
1765         in order for it to coexist with the ASAN-related OTHER_CFLAGS that's set in DebugRelease.xcconfig.
1766
1767         Reviewed by Dan Bernstein.
1768
1769         * Configurations/WebCore.xcconfig:
1770
1771 2013-09-28  Mark Rowe  <mrowe@apple.com>
1772
1773         Take Xcode's advice and enable some extra warnings.
1774
1775         Reviewed by Sam Weinig.
1776
1777         * Configurations/Base.xcconfig:
1778         * WebCore.xcodeproj/project.pbxproj:
1779         * dom/NamedNodeMap.cpp:
1780         (WebCore::NamedNodeMap::removeNamedItemNS): Use the correct constant.
1781
1782 2013-09-28  Sam Weinig  <sam@webkit.org>
1783
1784         CTTE: VisitedLinkState should hold a Document&
1785         https://bugs.webkit.org/show_bug.cgi?id=122066
1786
1787         Reviewed by Antti Koivisto.
1788
1789         The Document can never be null, so use a reference.
1790
1791 2013-09-27  Antti Koivisto  <antti@apple.com>
1792
1793         Clean up code for getting first line style
1794         https://bugs.webkit.org/show_bug.cgi?id=122037
1795
1796         Reviewed by Andreas Kling.
1797
1798         We have confusing RenderObject::style(bool firstLine). Get rid of it in favour of 
1799         just using RenderObject::firstLineStyle() where appropriate.
1800         
1801         Also switch to RenderStyle references in many places and move first line style caching
1802         code down to RenderElement.
1803
1804 2013-09-28  Darin Adler  <darin@apple.com>
1805
1806         Add Frame::mainFrame and Frame::isMainFrame
1807         https://bugs.webkit.org/show_bug.cgi?id=122064
1808
1809         Reviewed by Andreas Kling.
1810
1811         * WebCore.exp.in: Removed exports of FrameView::isMainFrameView and
1812         Page::frameIsMainFrame. Since the new isMainFrame function is inline, it
1813         does not need to be exported.
1814
1815         * history/PageCache.cpp:
1816         (WebCore::PageCache::markPagesForFullStyleRecalc):
1817         (WebCore::PageCache::markPagesForDeviceScaleChanged):
1818         These two were the only functions I found that really wanted the equivalent
1819         of Page::frameIsMainFrame, so wrote it out here instead of using a function
1820         call.
1821
1822         * inspector/InspectorAgent.cpp: Removed the unused isMainResourceLoader function.
1823         * inspector/InspectorAgent.h: Removed declarations of a few nonexistent or
1824         unused private member functions. Also removed the InjectedScriptForOriginMap
1825         typedef: It's mor readable to use the type directly
1826
1827         * loader/FrameLoader.h: Removed isLoadingMainFrame. It's not better than
1828         calling frame().isMainFrame() directly.
1829
1830         * page/Frame.cpp:
1831         (WebCore::Frame::Frame): Initialize m_mainFrame and call selfOnlyRef, keeping
1832         the MainFrame alive as long as any of its subframes is alive.
1833         (WebCore::Frame::~Frame): Call selfOnlyDeref.
1834         (WebCore::Frame::createView): Use isMainFrame.
1835         (WebCore::Frame::setPageAndTextZoomFactors): Ditto.
1836
1837         * page/Frame.h: Added Frame::mainFrame, Frame::isMainFrame, and Frame::m_mainFrame.
1838
1839         * page/FrameView.h: Removed the isMainFrameView function. It's not better than
1840         calling frame().isMainFrame() directly.
1841
1842         * page/MainFrame.cpp:
1843         (WebCore::MainFrame::MainFrame): Initialize m_selfOnlyRefCount to 0.
1844         (WebCore::MainFrame::selfOnlyRef): Added.
1845         (WebCore::MainFrame::selfOnlyDeref): Added.
1846         (WebCore::MainFrame::dropChildren): Added. Called when the self-only reference
1847         count reaches 0 to avoid a reference cycle with subframes.
1848
1849         * page/MainFrame.h: Added new data members as mentioned above. Also, the
1850         definition of the Frame::isMainFrame inline function goes here, since it can't
1851         compile without the MainFrame class definition. This means that callers of
1852         isMainFrame need to include MainFrame.h, which seems reasonable and is easy
1853         to do.
1854
1855         * page/Page.cpp:
1856         * page/Page.h: Added assertion to Page::mainFrame since it returns a reference.
1857         Removed Page::frameIsMainFrame since it's not better than calling isMainFrame
1858         on the frame.
1859
1860         * dom/Document.cpp:
1861         (WebCore::Document::setVisualUpdatesAllowed):
1862         (WebCore::Document::didBecomeCurrentDocumentInFrame):
1863         (WebCore::Document::updateViewportArguments):
1864         (WebCore::Document::setInPageCache):
1865         (WebCore::Document::ensurePlugInsInjectedScript):
1866         * history/CachedFrame.cpp:
1867         (WebCore::CachedFrame::CachedFrame):
1868         * history/CachedPage.cpp:
1869         (WebCore::CachedPage::restore):
1870         * html/HTMLPlugInImageElement.cpp:
1871         (WebCore::HTMLPlugInImageElement::subframeLoaderWillCreatePlugIn):
1872         * html/ImageDocument.cpp:
1873         (WebCore::ImageDocument::shouldShrinkToFit):
1874         * inspector/InspectorController.cpp:
1875         (WebCore::InspectorController::didClearWindowObjectInWorld):
1876         * inspector/InspectorInstrumentation.cpp:
1877         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
1878         * inspector/InspectorPageAgent.cpp:
1879         (WebCore::InspectorPageAgent::didClearWindowObjectInWorld):
1880         (WebCore::InspectorPageAgent::frameNavigated):
1881         * loader/DocumentLoader.cpp:
1882         (WebCore::DocumentLoader::willSendRequest):
1883         * loader/FrameLoader.cpp:
1884         (WebCore::FrameLoader::transitionToCommitted):
1885         (WebCore::FrameLoader::prepareForCachedPageRestore):
1886         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1887         (WebCore::FrameLoader::didLayout):
1888         (WebCore::FrameLoader::checkLoadComplete):
1889         (WebCore::FrameLoader::addExtraFieldsToRequest):
1890         (WebCore::FrameLoader::loadResourceSynchronously):
1891         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1892         (WebCore::FrameLoader::dispatchDidCommitLoad):
1893         (WebCore::FrameLoader::loadProgressingStatusChanged):
1894         * loader/HistoryController.cpp:
1895         (WebCore::HistoryController::saveScrollPositionAndViewStateToItem):
1896         (WebCore::HistoryController::restoreScrollPositionAndViewState):
1897         (WebCore::HistoryController::updateForCommit):
1898         (WebCore::HistoryController::updateForSameDocumentNavigation):
1899         (WebCore::HistoryController::updateBackForwardListClippedAtTarget):
1900         (WebCore::HistoryController::pushState):
1901         * loader/icon/IconController.cpp:
1902         (WebCore::IconController::startLoader):
1903         * page/AutoscrollController.cpp:
1904         (WebCore::AutoscrollController::stopAutoscrollTimer):
1905         * page/ContextMenuController.cpp:
1906         (WebCore::ContextMenuController::populate):
1907         * page/DOMWindow.cpp:
1908         (WebCore::allowsBeforeUnloadListeners):
1909         (WebCore::DOMWindow::focus):
1910         (WebCore::DOMWindow::blur):
1911         (WebCore::DOMWindow::close):
1912         (WebCore::DOMWindow::allowedToChangeWindowGeometry):
1913         * page/EventHandler.cpp:
1914         (WebCore::EventHandler::hitTestResultAtPoint):
1915         (WebCore::EventHandler::selectCursor):
1916         (WebCore::EventHandler::handleMousePressEvent):
1917         (WebCore::EventHandler::keyEvent):
1918         * page/FrameTree.cpp:
1919         (WebCore::FrameTree::find):
1920         (WebCore::FrameTree::traverseNextWithWrap):
1921         * page/FrameView.cpp:
1922         (WebCore::FrameView::FrameView):
1923         (WebCore::FrameView::setFrameRect):
1924         (WebCore::FrameView::createScrollbar):
1925         (WebCore::FrameView::applyOverflowToViewport):
1926         (WebCore::FrameView::setHeaderHeight):
1927         (WebCore::FrameView::setFooterHeight):
1928         (WebCore::FrameView::minimumScrollPosition):
1929         (WebCore::FrameView::maximumScrollPosition):
1930         (WebCore::FrameView::shouldUpdateFixedElementsAfterScrolling):
1931         (WebCore::FrameView::beginDeferredRepaints):
1932         (WebCore::FrameView::endDeferredRepaints):
1933         (WebCore::FrameView::performPostLayoutTasks):
1934         (WebCore::FrameView::sendResizeEventIfNeeded):
1935         (WebCore::FrameView::pagination):
1936         (WebCore::FrameView::visibleContentScaleFactor):
1937         (WebCore::FrameView::setVisibleScrollerThumbRect):
1938         (WebCore::FrameView::scrollbarStyleChanged):
1939         (WebCore::FrameView::paintScrollCorner):
1940         (WebCore::FrameView::paintScrollbar):
1941         (WebCore::FrameView::paintOverhangAreas):
1942         * page/scrolling/ScrollingCoordinator.cpp:
1943         (WebCore::ScrollingCoordinator::coordinatesScrollingForFrameView):
1944         * rendering/RenderLayerBacking.cpp:
1945         (WebCore::RenderLayerBacking::RenderLayerBacking):
1946         Use the new functions where possible instead of Page::frameIsMainFrame,
1947         Page::mainFrame, FrameLoader::isLoadingMainFrame, and FrameView::isMainFrameView.
1948
1949 2013-09-28  Gurpreet Kaur  <k.gurpreet@samsung.com>
1950
1951         filter: drop-shadow doesnot support viewport units
1952         https://bugs.webkit.org/show_bug.cgi?id=122053
1953
1954         Reviewed by Darin Adler.
1955
1956         drop-shadow properties were not applied incase its values
1957         were given in vh, vw, vmax, vmin units.
1958
1959         Tests: fast/css/drop-shadow-viewport-height.html
1960                fast/css/drop-shadow-viewport-vmax.html
1961                fast/css/drop-shadow-viewport-vmin.html
1962                fast/css/drop-shadow-viewport-width.html
1963
1964         * css/StyleResolver.cpp:
1965         (WebCore::StyleResolver::createFilterOperations):
1966         Calculating the drop-shadow values which has been specified in viewport
1967         units.The vh/vw units are calcultated as percent of viewport height and
1968         viewport width respectively. 1vmax: 1vw or 1vh, whatever is largest.
1969         1vmin: 1vw or 1vh, whatever is smallest.
1970
1971 2013-09-28  Gurpreet Kaur  <k.gurpreet@samsung.com>
1972
1973         REGRESSION (r154614): Setting the document scroll position isn't symmetric; can successfully set document.body.scrollTop, but can only read from document.documentElement.scrollTop
1974         https://bugs.webkit.org/show_bug.cgi?id=121876
1975
1976         Reviewed by Darin Adler.
1977
1978         Non-Quirks mode should set/get scrolltop/scrollleft through
1979         document.documentElement.scrollTop/document.documentElement.scrollLeft
1980         Quirks mode should set/get scrolltop/scrollleft through
1981         document.body.scrollTop/document.body.scrollLeft.
1982
1983         Tests: fast/dom/Element/body-scrollLeft-Quirks.html
1984                fast/dom/Element/body-scrollLeft.html
1985                fast/dom/Element/body-scrollTop-Quirks.html
1986                fast/dom/Element/body-scrollTop.html
1987                fast/dom/Element/documentElement-scrollLeft-Quirks.html
1988                fast/dom/Element/documentElement-scrollLeft.html
1989                fast/dom/Element/documentElement-scrollTop-Quirks.html
1990                fast/dom/Element/documentElement-scrollTop.html
1991
1992         * dom/Element.cpp:
1993         (WebCore::Element::setScrollLeft):
1994         (WebCore::Element::setScrollTop):
1995         * html/HTMLBodyElement.cpp:
1996         (WebCore::HTMLBodyElement::setScrollLeft):
1997         (WebCore::HTMLBodyElement::setScrollTop):
1998         Need to set the scrollTop and scrollLeft after checking if document
1999         is in quirks or non-quirks mode. Incase it is body.scrollLeft/
2000         body.scrollTop set only if document is in quirks mode. If document is
2001         non-quirks mode set documentElement.scrollLeft/documentElement.scrollTop.
2002
2003 2013-09-28  Andreas Kling  <akling@apple.com>
2004
2005         Pass VM instead of ExecState to JSFunction constructors.
2006         <https://webkit.org/b/122014>
2007
2008         Reviewed by Geoffrey Garen.
2009
2010         Updated for new JSFunction::create() signature.
2011
2012 2013-09-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2013
2014         Generate toCSSFooValue() for CSSImageValue 
2015         https://bugs.webkit.org/show_bug.cgi?id=122051
2016
2017         Reviewed by Andreas Kling.
2018
2019         Clean up static_cast<CSSImageValue*> type casts. It will help to
2020         detect bad cast as well as improve code readability.
2021
2022         Removed unnecessary local variables as well.
2023
2024         No new tests, no behavior changes.
2025
2026         * css/CSSCrossfadeValue.cpp:
2027         (WebCore::subimageKnownToBeOpaque):
2028         * css/CSSCursorImageValue.cpp:
2029         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
2030         (WebCore::CSSCursorImageValue::updateIfSVGCursorIsUsed):
2031         (WebCore::CSSCursorImageValue::cachedImage):
2032         (WebCore::CSSCursorImageValue::isSVGCursor):
2033         * css/CSSImageGeneratorValue.cpp:
2034         (WebCore::CSSImageGeneratorValue::subimageIsPending):
2035         (WebCore::CSSImageGeneratorValue::cachedImageForCSSValue):
2036         * css/CSSImageSetValue.cpp:
2037         (WebCore::CSSImageSetValue::fillImageSet):
2038         * css/CSSImageValue.h:
2039         * css/CSSValue.cpp:
2040         (WebCore::CSSValue::destroy):
2041         * css/StyleResolver.cpp:
2042         (WebCore::StyleResolver::applyProperty):
2043         (WebCore::StyleResolver::styleImage):
2044         * page/PageSerializer.cpp:
2045         (WebCore::PageSerializer::retrieveResourcesForProperties):
2046         * rendering/style/StylePendingImage.h:
2047         (WebCore::StylePendingImage::data):
2048         (WebCore::StylePendingImage::cssImageValue):
2049
2050 2013-09-28  Mark Rowe  <mrowe@apple.com>
2051
2052         WebCore fails to build with newer versions of clang.
2053
2054         Reviewed by Sam Weinig.
2055
2056         * Modules/indexeddb/IDBIndex.cpp: Remove an unused constant.
2057         * Modules/indexeddb/IDBObjectStore.cpp: Ditto.
2058         * Modules/webaudio/AudioContext.cpp: Ditto.
2059         * Modules/webaudio/ScriptProcessorNode.cpp: Ditto.
2060         * Modules/webdatabase/SQLResultSet.cpp: Ditto.
2061         * Modules/webdatabase/SQLTransactionBackend.cpp: Ditto.
2062         * Modules/websockets/WebSocketHandshake.cpp: Ditto.
2063         * bindings/objc/DOM.mm: Disable a warning about overriding a protocol method in a cateogry around the one
2064         place we do it. I don't understand why this generates a warning, nor can I see a different approach that
2065         would not result in the warning being emitted.
2066         * css/CSSGrammar.y.in: #if a function that's only used inside an #if.
2067         * html/track/TextTrackCue.cpp: Remove an unused constant.
2068         * loader/TextResourceDecoder.cpp: Remove two unused functions.
2069         * page/ContentSecurityPolicy.cpp: Add #if's around constants and functions that are only used when CSP_NEXT is enabled.
2070         (WebCore::CSPDirectiveList::checkSourceAndReportViolation): Reorder the ifs slightly to make the #if'ing easier.
2071         * page/ContentSecurityPolicy.h: Add #if's around functions that are only used when CSP_NEXT is enabled.
2072         * page/DOMSecurityPolicy.cpp: Ditto.
2073         * page/DOMSecurityPolicy.h: Ditto.
2074         * page/animation/CSSPropertyAnimation.cpp: Remove an unused function.
2075         * platform/mac/DisplaySleepDisabler.cpp: Add an #if around a constant that's only used on iOS.
2076         * platform/mac/WebCoreFullScreenWarningView.mm: Remove three unused constants.
2077         * rendering/RenderLayer.cpp: Remove two unused constants.
2078         * rendering/RenderLayerCompositor.cpp:
2079         (WebCore::compositingLogEnabled): Move the #if around the function definition.
2080         * svg/SVGAnimatedAngle.cpp: Remove an unused function.
2081         * svg/SVGUseElement.cpp: #if a function that's only used inside an ASSERT.
2082         * xml/XPathStep.cpp: Ditto.
2083
2084 2013-09-27  Brady Eidson  <beidson@apple.com>
2085
2086         IndexedDB IDL Refactoring.
2087         https://bugs.webkit.org/show_bug.cgi?id=121996
2088
2089         Reviewed by Alexey Proskuryakov.
2090
2091         This includes:
2092         1 - Leveraging EventTarget.idl inheritance
2093         2 - Removing comments
2094         3 - Reordering to match the spec's IDLs
2095         4 - Removing nonstandard, WebKit-specific methods
2096         5 - Updating interfaces to match the spec (versions are only uint64_t's now...)
2097         6 - Updating implementation code as needed (versions are only uint64_t's now...)
2098
2099         IDL changes:
2100         * Modules/indexeddb/IDBCursor.idl:
2101         * Modules/indexeddb/IDBDatabase.idl:
2102         * Modules/indexeddb/IDBFactory.idl:
2103         * Modules/indexeddb/IDBIndex.idl:
2104         * Modules/indexeddb/IDBKeyRange.idl:
2105         * Modules/indexeddb/IDBObjectStore.idl:
2106         * Modules/indexeddb/IDBRequest.idl:
2107         * Modules/indexeddb/IDBTransaction.idl:
2108         * Modules/indexeddb/IDBVersionChangeEvent.idl:
2109
2110         * Modules/indexeddb/IndexedDB.h: Add new enum to represent version nullness.
2111
2112         Adapt to new IDLs, and also refactor representation of initial, null versioning:
2113         * Modules/indexeddb/IDBCallbacks.h:
2114         (WebCore::IDBCallbacks::onBlocked):
2115         (WebCore::IDBCallbacks::onUpgradeNeeded):
2116
2117         * Modules/indexeddb/IDBDatabase.cpp:
2118         (WebCore::IDBDatabase::version):
2119         (WebCore::IDBDatabase::onVersionChange):
2120         * Modules/indexeddb/IDBDatabase.h:
2121
2122         * Modules/indexeddb/IDBDatabaseCallbacks.h:
2123         * Modules/indexeddb/IDBDatabaseCallbacksImpl.cpp:
2124         (WebCore::IDBDatabaseCallbacksImpl::onVersionChange):
2125         * Modules/indexeddb/IDBDatabaseCallbacksImpl.h:
2126
2127         * Modules/indexeddb/IDBFactory.cpp:
2128         (WebCore::IDBFactory::open):
2129         (WebCore::IDBFactory::openInternal):
2130         (WebCore::IDBFactory::deleteDatabase):
2131         * Modules/indexeddb/IDBFactory.h:
2132
2133         * Modules/indexeddb/IDBMetadata.h:
2134         (WebCore::IDBDatabaseMetadata::IDBDatabaseMetadata):
2135
2136         * Modules/indexeddb/IDBOpenDBRequest.cpp:
2137         (WebCore::IDBOpenDBRequest::create):
2138         (WebCore::IDBOpenDBRequest::IDBOpenDBRequest):
2139         (WebCore::IDBOpenDBRequest::onBlocked):
2140         (WebCore::IDBOpenDBRequest::onUpgradeNeeded):
2141         * Modules/indexeddb/IDBOpenDBRequest.h:
2142
2143         * Modules/indexeddb/IDBRequest.cpp:
2144         * Modules/indexeddb/IDBRequest.h:
2145
2146         * Modules/indexeddb/IDBTransaction.cpp:
2147         * Modules/indexeddb/IDBTransaction.h:
2148
2149         * Modules/indexeddb/IDBVersionChangeEvent.cpp:
2150         (WebCore::IDBVersionChangeEvent::IDBVersionChangeEvent):
2151         * Modules/indexeddb/IDBVersionChangeEvent.h:
2152         (WebCore::IDBVersionChangeEvent::create):
2153         (WebCore::IDBVersionChangeEvent::oldVersion):
2154         (WebCore::IDBVersionChangeEvent::newVersion):
2155
2156         Keep leveldb building with minimal adaptations to the new IDLs,
2157         but note that the LevelDB implementation is now incompatible with the spec:
2158         * Modules/indexeddb/leveldb/IDBBackingStoreLevelDB.cpp:
2159         (WebCore::IDBBackingStore::getIDBDatabaseMetaData):
2160         (WebCore::objectStoreCursorOptions):
2161         (WebCore::indexCursorOptions):
2162
2163         * Modules/indexeddb/leveldb/IDBDatabaseBackendLevelDB.cpp:
2164         (WebCore::IDBDatabaseBackendLevelDB::IDBDatabaseBackendLevelDB):
2165         (WebCore::IDBDatabaseBackendLevelDB::openInternal):
2166         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeOperation::perform):
2167         (WebCore::IDBDatabaseBackendLevelDB::processPendingCalls):
2168         (WebCore::IDBDatabaseBackendLevelDB::openConnection):
2169         (WebCore::IDBDatabaseBackendLevelDB::runIntVersionChangeTransaction):
2170         (WebCore::IDBDatabaseBackendLevelDB::deleteDatabase):
2171         (WebCore::IDBDatabaseBackendLevelDB::deleteDatabaseFinal):
2172         (WebCore::IDBDatabaseBackendLevelDB::VersionChangeAbortOperation::perform):
2173
2174         * Modules/indexeddb/leveldb/IDBLevelDBCoding.cpp:
2175         (WebCore::IDBLevelDBCoding::compareEncodedIDBKeys):
2176
2177         * inspector/InspectorIndexedDBAgent.cpp: Update for metadata change.
2178
2179 2013-09-27  Enrica Casucci  <enrica@apple.com>
2180
2181         Upstream changes to Pasteboard implementation for iOS.
2182         https://bugs.webkit.org/show_bug.cgi?id=121818
2183
2184         Reviewed by Benjamin Poulain.
2185
2186         * WebCore.exp.in:
2187         * editing/Editor.cpp:
2188         (WebCore::Editor::dispatchCPPEvent):
2189         * editing/ios/EditorIOS.mm:
2190         (WebCore::Editor::WebContentReader::addFragment):
2191         (WebCore::Editor::WebContentReader::readWebArchive):
2192         (WebCore::Editor::WebContentReader::readFilenames):
2193         (WebCore::Editor::WebContentReader::readHTML):
2194         (WebCore::Editor::WebContentReader::readRTFD):
2195         (WebCore::Editor::WebContentReader::readRTF):
2196         (WebCore::uniqueURLWithRelativePart):
2197         (WebCore::Editor::WebContentReader::readImage):
2198         (WebCore::Editor::WebContentReader::readURL):
2199         (WebCore::Editor::WebContentReader::readPlainText):
2200         (WebCore::Editor::webContentFromPasteboard):
2201         (WebCore::Editor::pasteWithPasteboard):
2202         (WebCore::Editor::createFragmentAndAddResources):
2203         (WebCore::Editor::createFragmentForImageResourceAndAddResource):
2204         * platform/Pasteboard.h:
2205         * platform/PasteboardStrategy.h:
2206         * platform/PlatformPasteboard.h:
2207         * platform/ios/PasteboardIOS.mm:
2208         (WebCore::PasteboardWebContent::PasteboardWebContent):
2209         (WebCore::PasteboardWebContent::~PasteboardWebContent):
2210         (WebCore::PasteboardImage::PasteboardImage):
2211         (WebCore::PasteboardImage::~PasteboardImage):
2212         (WebCore::Pasteboard::Pasteboard):
2213         (WebCore::Pasteboard::clear):
2214         (WebCore::Pasteboard::readString):
2215         (WebCore::Pasteboard::writeString):
2216         (WebCore::Pasteboard::types):
2217         * platform/ios/PlatformPasteboardIOS.mm:
2218         (WebCore::PlatformPasteboard::changeCount):
2219         (WebCore::PlatformPasteboard::write):
2220         (WebCore::PlatformPasteboard::count):
2221         (WebCore::PlatformPasteboard::readBuffer):
2222         (WebCore::PlatformPasteboard::readString):
2223         (WebCore::PlatformPasteboard::readURL):
2224         * platform/mac/PasteboardMac.mm:
2225         (WebCore::PasteboardWebContent::PasteboardWebContent):
2226         (WebCore::PasteboardWebContent::~PasteboardWebContent):
2227         (WebCore::PasteboardImage::PasteboardImage):
2228         (WebCore::PasteboardImage::~PasteboardImage):
2229         * platform/mac/PlatformPasteboardMac.mm:
2230
2231 2013-09-27  Hans Muller  <hmuller@adobe.com>
2232
2233         Crash on shape-outside when using calc()
2234         https://bugs.webkit.org/show_bug.cgi?id=121020
2235
2236         Reviewed by Dirk Schulze.
2237
2238         This change prevents a crash caused by specifying a CSS Shape geometry
2239         Length attribute with a calc() expression. It adds support for converting
2240         Lengths to CSSPrimitive Values, in large part by migrating Blink changes
2241         made to the calc classes since the split. Doing so required a few supporting
2242         changes in some related classes, notably CSSPrimitiveValue.
2243
2244         Tests: fast/shapes/shape-inside/shape-inside-calc-crash.html
2245                css3/calc/simplification.html
2246
2247         * css/BasicShapeFunctions.cpp:
2248         (WebCore::convertToCSSPrimitiveValue): Effectively use the new CSSPrimtiveValue(length,style) constructor to convert Lengths to CSSValues.
2249         (WebCore::valueForBasicShape): Use the convertToCSSPrimitiveValue() function.
2250         (WebCore::convertToLength): Added the CalculatedConversion convertToLength() flag to enable support for calc() valued Length Shape attributes.
2251         * css/BasicShapeFunctions.h:
2252         * css/CSSCalculationValue.cpp:
2253         (WebCore::hasDoubleValue):
2254         (WebCore::buildCssText):
2255         (WebCore::CSSCalcValue::clampToPermittedRange):
2256         (WebCore::CSSCalcValue::doubleValue):
2257         (WebCore::CSSCalcExpressionNode::~CSSCalcExpressionNode):
2258         (WebCore::CSSCalcPrimitiveValue::create):
2259         (WebCore::CSSCalcPrimitiveValue::toCalcValue):
2260         (WebCore::CSSCalcPrimitiveValue::doubleValue):
2261         (WebCore::CSSCalcPrimitiveValue::computeLengthPx):
2262         (WebCore::CSSCalcPrimitiveValue::primitiveType):
2263         (WebCore::CSSCalcPrimitiveValue::CSSCalcPrimitiveValue):
2264         (WebCore::determineCategory):
2265         (WebCore::isIntegerResult):
2266         (WebCore::CSSCalcBinaryOperation::create):
2267         (WebCore::CSSCalcBinaryOperation::createSimplified):
2268         (WebCore::CSSCalcBinaryOperation::doubleValue):
2269         (WebCore::CSSCalcBinaryOperation::buildCssText):
2270         (WebCore::CSSCalcBinaryOperation::primitiveType):
2271         (WebCore::CSSCalcBinaryOperation::CSSCalcBinaryOperation):
2272         (WebCore::CSSCalcBinaryOperation::getNumberSide):
2273         (WebCore::CSSCalcBinaryOperation::evaluate):
2274         (WebCore::CSSCalcBinaryOperation::evaluateOperator):
2275         (WebCore::CSSCalcExpressionNodeParser::parseValue):
2276         (WebCore::CSSCalcExpressionNodeParser::parseValueTerm):
2277         (WebCore::CSSCalcExpressionNodeParser::parseValueMultiplicativeExpression):
2278         (WebCore::CSSCalcExpressionNodeParser::parseAdditiveValueExpression):
2279         (WebCore::CSSCalcValue::createExpressionNode):
2280         (WebCore::CSSCalcValue::create):
2281         * css/CSSCalculationValue.h:
2282         (WebCore::CSSCalcExpressionNode::category):
2283         (WebCore::CSSCalcValue::create):
2284         (WebCore::CSSCalcValue::isInt):
2285         (WebCore::CSSCalcValue::permittedValueRange):
2286         (WebCore::CSSCalcValue::expressionNode):
2287         (WebCore::CSSCalcValue::CSSCalcValue):
2288         (WebCore::toCSSCalcValue):
2289         * css/CSSComputedStyleDeclaration.cpp:
2290         (WebCore::ComputedStyleExtractor::propertyValue): Pass the style along to the new valueForBasicShape() function.
2291         * css/CSSPrimitiveValue.cpp:
2292         (WebCore::CSSPrimitiveValue::unitCategory): Made this function public so that CSSCalculationValue could use it.
2293         (WebCore::CSSPrimitiveValue::conversionToCanonicalUnitsScaleFactor): Ditto.
2294         (WebCore::CSSPrimitiveValue::primitiveType): Cleared trailing whitespace.
2295         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Construct a CSSPrimitiveValue from a Length and a RenderStyle*.
2296         (WebCore::CSSPrimitiveValue::init): The common part of the two Length CSSPrimitiveValue constructors.
2297         (WebCore::CSSPrimitiveValue::computeLengthDouble): Moved the case labels to the left per check-webkit-style.
2298         (WebCore::CSSPrimitiveValue::getStringValue): Ditto.
2299         (WebCore::CSSPrimitiveValue::getDoubleValue): Removed trailing whitespace.
2300         * css/CSSPrimitiveValue.h:
2301         (WebCore::CSSPrimitiveValue::create): Construct a CSSPrimitiveValue from a Length and a RenderStyle*.
2302         (WebCore::toCSSPrimitiveValue): Check the CSSValue*'s validity with ASSERT_WITH_SECURITY_IMPLICATION before casting to CSSPrimitiveValue*.
2303         * css/CSSValuePool.h:
2304         (WebCore::CSSValuePool::createValue): A new overload that delegates to the new CSSPrimitiveValue(length,style) constructor.
2305         * platform/CalculationValue.h:
2306         (WebCore::CalculationValue::operator==):
2307         (WebCore::CalculationValue::isNonNegative):
2308         (WebCore::CalculationValue::expression):
2309         (WebCore::CalcExpressionNumber::value):
2310         (WebCore::toCalcExpressionNumber):
2311         (WebCore::CalcExpressionLength::CalcExpressionLength):
2312         (WebCore::CalcExpressionLength::length):
2313         (WebCore::toCalcExpressionLength):
2314         (WebCore::CalcExpressionBinaryOperation::leftSide):
2315         (WebCore::CalcExpressionBinaryOperation::rightSide):
2316         (WebCore::CalcExpressionBinaryOperation::getOperator):
2317         (WebCore::toCalcExpressionBinaryOperation):
2318         (WebCore::CalcExpressionBlendLength::CalcExpressionBlendLength):
2319         (WebCore::CalcExpressionBlendLength::from):
2320         (WebCore::CalcExpressionBlendLength::to):
2321         (WebCore::CalcExpressionBlendLength::progress):
2322         (WebCore::toCalcExpressionBlendLength):
2323
2324 2013-09-27  Andreas Kling  <akling@apple.com>
2325
2326         REGRESSION(r154219): 30% more malloc memory used on html5-full-render.
2327         <https://webkit.org/b/122034>
2328
2329         Reviewed by Antti Koivisto.
2330
2331         canExecuteScripts() used to rely on Frame::settings() returning null
2332         when the Frame was disconnected from its Page, and giving Frame its
2333         own handle on the Settings broke this mechanism.
2334
2335         This caused us to hold on for some objects for a bit longer than we
2336         needed to in the run-perf-tests harness, showing up as a massive 30%
2337         regression in malloc memory use.
2338
2339         Fixed it by added an explicit null check of Frame::page().
2340
2341 2013-09-27  Alexey Proskuryakov  <ap@apple.com>
2342
2343         Updating bindings test results after KURL->URL rename.
2344
2345         Includes were now in the wrong order.
2346
2347         * bindings/scripts/test/CPP/WebDOMTestActiveDOMObject.cpp:
2348         * bindings/scripts/test/CPP/WebDOMTestCustomNamedGetter.cpp:
2349         * bindings/scripts/test/CPP/WebDOMTestEventConstructor.cpp:
2350         * bindings/scripts/test/CPP/WebDOMTestEventTarget.cpp:
2351         * bindings/scripts/test/CPP/WebDOMTestException.cpp:
2352         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
2353         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2354         * bindings/scripts/test/CPP/WebDOMTestTypedefs.cpp:
2355         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
2356         * bindings/scripts/test/JS/JSTestException.cpp:
2357         * bindings/scripts/test/JS/JSTestObj.cpp:
2358         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
2359         * bindings/scripts/test/ObjC/DOMTestActiveDOMObject.mm:
2360         * bindings/scripts/test/ObjC/DOMTestCallback.mm:
2361         * bindings/scripts/test/ObjC/DOMTestCustomNamedGetter.mm:
2362         * bindings/scripts/test/ObjC/DOMTestEventConstructor.mm:
2363         * bindings/scripts/test/ObjC/DOMTestEventTarget.mm:
2364         * bindings/scripts/test/ObjC/DOMTestException.mm:
2365         * bindings/scripts/test/ObjC/DOMTestInterface.mm:
2366         * bindings/scripts/test/ObjC/DOMTestObj.mm:
2367         * bindings/scripts/test/ObjC/DOMTestTypedefs.mm:
2368
2369 2013-09-27  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2370
2371         Get MediaStreamCenterGStreamer compiling again
2372         https://bugs.webkit.org/show_bug.cgi?id=122029
2373
2374         After MediaStream cleanup commit, it was not building anymore.
2375
2376         Reviewed by Eric Carlson.
2377
2378         No new tests needed.
2379
2380         * platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:
2381
2382 2013-09-27  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2383
2384         Storing a reference to MediaStreamTrack in RTCStatsRequest
2385         https://bugs.webkit.org/show_bug.cgi?id=122030
2386
2387         Reviewed by Eric Carlson.
2388
2389         The spec[1] says that the stats is related to a MediaStreamTrack object.
2390         It also says: "Evaluate the need for other selectors than MediaStreamTrack".
2391         So a MediaStreamTrack object is more suitable in this case.
2392
2393         [1]http://dev.w3.org/2011/webrtc/editor/webrtc.html#stats-selector
2394
2395         No new tests needed.
2396
2397         * Modules/mediastream/RTCStatsRequestImpl.cpp:
2398         (WebCore::RTCStatsRequestImpl::RTCStatsRequestImpl):
2399         (WebCore::RTCStatsRequestImpl::hasSelector):
2400         (WebCore::RTCStatsRequestImpl::track):
2401         * Modules/mediastream/RTCStatsRequestImpl.h:
2402         * platform/mediastream/RTCStatsRequest.h:
2403
2404 2013-09-27  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2405
2406         [Nix] Updating Nix trunk files
2407         https://bugs.webkit.org/show_bug.cgi?id=121752
2408
2409         Reviewed by Benjamin Poulain.
2410
2411         No new tests needed.
2412
2413         * page/nix/EventHandlerNix.cpp:
2414         (WebCore::EventHandler::focusDocumentView):
2415         (WebCore::EventHandler::passWheelEventToWidget):
2416         (WebCore::EventHandler::passMousePressEventToSubframe):
2417         (WebCore::EventHandler::passMouseMoveEventToSubframe):
2418         (WebCore::EventHandler::passMouseReleaseEventToSubframe):
2419         * platform/DragImage.h:
2420         * platform/graphics/GraphicsContext3D.h:
2421         * platform/nix/DragImageNix.cpp:
2422         (WebCore::createDragImageFromImage):
2423         * platform/nix/GamepadsNix.cpp:
2424         (WebCore::sampleGamepads):
2425         * platform/nix/LanguageNix.cpp:
2426         (WebCore::platformLanguage):
2427         * platform/nix/LocalizedStringsNix.cpp:
2428         (WebCore::unacceptableTLSCertificate):
2429         * platform/nix/PasteboardNix.cpp:
2430         (WebCore::Pasteboard::types):
2431         * platform/nix/RenderThemeNix.cpp:
2432         (WebCore::toColor):
2433         (WebCore::themeEngine):
2434         (WebCore::webCanvas):
2435         (WebCore::getWebThemeState):
2436         (WebCore::RenderThemeNix::paintButton):
2437         (WebCore::RenderThemeNix::paintTextField):
2438         (WebCore::RenderThemeNix::paintCheckbox):
2439         (WebCore::RenderThemeNix::paintRadio):
2440         (WebCore::RenderThemeNix::paintMenuList):
2441         (WebCore::RenderThemeNix::paintProgressBar):
2442         (WebCore::RenderThemeNix::paintInnerSpinButton):
2443         (WebCore::RenderThemeNix::paintMeter):
2444
2445 2013-09-27  Anders Carlsson  <andersca@apple.com>
2446
2447         Use std::unique_ptr for GraphicsLayer creation
2448         https://bugs.webkit.org/show_bug.cgi?id=122020
2449
2450         Reviewed by Antti Koivisto.
2451
2452         * platform/graphics/GraphicsLayer.h:
2453         * platform/graphics/GraphicsLayerFactory.h:
2454         * platform/graphics/ca/GraphicsLayerCA.cpp:
2455         (WebCore::GraphicsLayer::create):
2456         * platform/graphics/ca/GraphicsLayerCA.h:
2457         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
2458         (WebCore::CompositingCoordinator::createGraphicsLayer):
2459         * platform/graphics/texmap/coordinated/CompositingCoordinator.h:
2460         * rendering/RenderLayerBacking.cpp:
2461         (WebCore::RenderLayerBacking::createGraphicsLayer):
2462         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
2463         (WebCore::RenderLayerBacking::paintIntoLayer):
2464         * rendering/RenderLayerBacking.h:
2465         (WebCore::RenderLayerBacking::hasScrollingLayer):
2466         * rendering/RenderLayerCompositor.cpp:
2467         (WebCore::RenderLayerCompositor::updateRootLayerPosition):
2468         * rendering/RenderLayerCompositor.h:
2469
2470 2013-09-27  Beth Dakin  <bdakin@apple.com>
2471
2472         ScrollbarPainterController should adopt the api to lock overlay scrollbar state
2473         https://bugs.webkit.org/show_bug.cgi?id=121928
2474
2475         Reviewed by Sam Weinig.
2476
2477         ScrollbarPainterController should adopt the api to lock overlay scrollbar state. 
2478         This will allow the ScrollbarPainterController and ScrollAnimatorMac to have 
2479         control over knowing whether or not the scrollbars are currently active, which 
2480         will allow us to remove a bunch of functions previously implemented in 
2481         ScrollableArea subclasses to answer that question.
2482
2483         ScrollableArea::scrollbarsCanBeActive() is not longer virtual. It used to 
2484         implemented on ScrollableArea subclasses, but now ScrollableArea can just get the 
2485         information from the ScrollAnimator.
2486         * WebCore.exp.in:
2487
2488         When ScrollableArea subclasses implemented scrollbarsCanBeActive(), they would 
2489         check to see if the document was in the page cache. Instead of that model, this 
2490         patch adopts a model where ScrollbarPainterController is told directly whether or 
2491         not it is active via shouldLockOverlayScrollbarsToHidden(bool).
2492         * dom/Document.cpp:
2493         (WebCore::Document::setInPageCache):
2494
2495         setAnimatorsAreActive() is no longer necessary. The functionality can be bundled 
2496         into shouldLockOverlayScrollbarsToHidden(bool).
2497         (WebCore::Document::documentDidResumeFromPageCache):
2498
2499         Remove implementations of scrollbarsCanBeActive(), setAnimatorsAreActive(), and 
2500         scrollbarAnimationsAreSuppressed(). 
2501         * page/FrameView.cpp:
2502         (WebCore::FrameView::notifyPageThatContentAreaWillPaint):
2503         * page/FrameView.h:
2504
2505         setShouldSuppressScrollbarAnimations(bool) now calls 
2506         setShouldLockOverlayScrollbars(bool). 
2507         * page/Page.cpp:
2508         (WebCore::Page::setShouldSuppressScrollbarAnimations):
2509         (WebCore::Page::setShouldLockOverlayScrollbars):
2510         * page/Page.h:
2511
2512         setIsActive() is now implemented in the ScrollAnimator instead of ScrollableArea 
2513         subclasses. finishCurrentScrollAnimations() is replaced by 
2514         lockOverlayScrollbarStateToHidden(bool).
2515         * platform/ScrollAnimator.h:
2516         (WebCore::ScrollAnimator::lockOverlayScrollbarStateToHidden):
2517         (WebCore::ScrollAnimator::scrollbarsCanBeActive):
2518
2519         New enum ScrollbarOverlayState.
2520         * platform/ScrollTypes.h:
2521
2522         Go to the animator for both of these functions.
2523         * platform/ScrollableArea.cpp:
2524         (WebCore::ScrollableArea::lockOverlayScrollbarStateToHidden):
2525         (WebCore::ScrollableArea::scrollbarsCanBeActive):
2526         * platform/ScrollableArea.h:
2527         (WebCore::ScrollableArea::setVisibleScrollerThumbRect):
2528
2529         Three new pieces of ScrollbarPainterController api.
2530         * platform/mac/NSScrollerImpDetails.h:
2531
2532         Instead of asking the ScrollableArea if scrollbars can be active, just find out if 
2533         the ScrollbarPaintController has been locked.
2534         * platform/mac/ScrollAnimatorMac.h:
2535         * platform/mac/ScrollAnimatorMac.mm:
2536         (-[WebScrollbarPainterControllerDelegate scrollerImpPair:setContentAreaNeedsDisplayInRect:]):
2537         (-[WebScrollbarPainterDelegate scrollerImp:animateKnobAlphaTo:duration:]):
2538         (WebCore::ScrollAnimatorMac::contentAreaWillPaint):
2539         (WebCore::ScrollAnimatorMac::mouseEnteredContentArea):
2540         (WebCore::ScrollAnimatorMac::mouseExitedContentArea):
2541         (WebCore::ScrollAnimatorMac::mouseMovedInContentArea):
2542         (WebCore::ScrollAnimatorMac::mouseEnteredScrollbar):
2543         (WebCore::ScrollAnimatorMac::mouseExitedScrollbar):
2544         (WebCore::ScrollAnimatorMac::willStartLiveResize):
2545         (WebCore::ScrollAnimatorMac::contentsResized):
2546         (WebCore::ScrollAnimatorMac::willEndLiveResize):
2547         (WebCore::ScrollAnimatorMac::contentAreaDidShow):
2548         (WebCore::ScrollAnimatorMac::contentAreaDidHide):
2549         (WebCore::ScrollAnimatorMac::didBeginScrollGesture):
2550         (WebCore::ScrollAnimatorMac::didEndScrollGesture):
2551         (WebCore::ScrollAnimatorMac::mayBeginScrollGesture):
2552         (WebCore::ScrollAnimatorMac::lockOverlayScrollbarStateToHidden):
2553         (WebCore::ScrollAnimatorMac::scrollbarsCanBeActive):
2554         (WebCore::ScrollAnimatorMac::notifyContentAreaScrolled):
2555         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
2556
2557         Remove implementations of scrollbarsCanBeActive() and 
2558         scrollbarAnimationsAreSuppressed().
2559         * rendering/RenderLayer.cpp:
2560         * rendering/RenderLayer.h:
2561         * rendering/RenderListBox.cpp:
2562         * rendering/RenderListBox.h:
2563
2564 2013-09-27  David Hyatt  <hyatt@apple.com>
2565
2566         Move line grid functionality from RenderBlock into RenderBlockFlow.
2567         https://bugs.webkit.org/show_bug.cgi?id=121502
2568
2569         Reviewed by Dean Jackson.
2570
2571         * rendering/LayoutState.cpp:
2572         (WebCore::LayoutState::LayoutState):
2573         (WebCore::LayoutState::establishLineGrid):
2574         * rendering/LayoutState.h:
2575         (WebCore::LayoutState::lineGrid):
2576         * rendering/RenderBlock.cpp:
2577         (WebCore::RenderBlock::willBeDestroyed):
2578         * rendering/RenderBlock.h:
2579         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
2580         * rendering/RenderBlockFlow.cpp:
2581         (WebCore::RenderBlockFlow::willBeDestroyed):
2582         (WebCore::RenderBlockFlow::layoutLineGridBox):
2583         * rendering/RenderBlockFlow.h:
2584         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
2585         (WebCore::RenderBlockFlow::lineGridBox):
2586         (WebCore::RenderBlockFlow::setLineGridBox):
2587         * rendering/RenderBlockLineLayout.cpp:
2588         * rendering/RootInlineBox.cpp:
2589         (WebCore::RootInlineBox::lineSnapAdjustment):
2590
2591 2013-09-27  Andreas Kling  <akling@apple.com>
2592
2593         Re-indent Settings.h
2594
2595         Rubber-stamped by Anders Carlsson.
2596
2597 2013-09-27  Eric Carlson  <eric.carlson@apple.com>
2598
2599         [MediaStream API] update SourceInfo object to match spec
2600         https://bugs.webkit.org/show_bug.cgi?id=121941
2601
2602         Reviewed by Dean Jackson.
2603
2604         No new tests, existing test updated.
2605
2606         * Modules/mediastream/SourceInfo.cpp:
2607         (WebCore::SourceInfo::kind): Get rid of "none".
2608         * Modules/mediastream/SourceInfo.h:
2609         (WebCore::SourceInfo::sourceId): Renamed from "id".
2610         * Modules/mediastream/SourceInfo.idl:
2611
2612         * platform/mediastream/MediaStreamTrackSourcesRequestClient.h:
2613         (WebCore::TrackSourceInfo::create):
2614         (WebCore::TrackSourceInfo::kind):
2615         (WebCore::TrackSourceInfo::TrackSourceInfo):
2616
2617         * platform/mock/MockMediaStreamCenter.cpp:
2618         (WebCore::MockMediaStreamCenter::getMediaStreamTrackSources): "facing" isn't a part of sourceInfo.
2619             Return a non-NULL ID because a source must always have one.
2620
2621 2013-09-26  Dean Jackson  <dino@apple.com>
2622
2623         Provide 2D Matrix decomposition for animation
2624         https://bugs.webkit.org/show_bug.cgi?id=112824
2625         <rdar://problem/15091882>
2626
2627         Reviewed by Eric Carlson (and Ian Henderson offline).
2628
2629         Implement a new 2d matrix blend, which is triggered
2630         when animating between two affine 3d matrices. This
2631         is intended to be the official algorithm that gets
2632         put into the W3C Transforms specification.
2633
2634         The old code is renamed with a 4 prefix (indicating
2635         it is a blend between 3d matrices using quaternions),
2636         and new methods and structures for 2d blending were added.
2637
2638         I also took the opportunity to clean up a lot of
2639         bad WebKit style.
2640
2641         * platform/graphics/ca/GraphicsLayerCA.cpp:
2642         (WebCore::maxScaleFromTransform): Use 3d decomposition.
2643         * platform/graphics/transforms/PerspectiveTransformOperation.cpp:
2644         (WebCore::PerspectiveTransformOperation::blend): Ditto.
2645         * platform/graphics/transforms/RotateTransformOperation.cpp:
2646         (WebCore::RotateTransformOperation::blend): Ditto.
2647
2648         * platform/graphics/transforms/TransformationMatrix.cpp:
2649         (WebCore::decompose2): New method to decompose an affine 3d matrix
2650         into X/Y scale + translate, a rotation angle, plus some extracted
2651         a,b,c,d fields from the affine section.
2652         (WebCore::decompose4): New name for the old function.
2653         (WebCore::TransformationMatrix::blend2): Perform linear interpolation
2654         between two 2d decompositions.
2655         (WebCore::TransformationMatrix::blend4): New name for the old function.
2656         (WebCore::TransformationMatrix::blend): Call blend2 or blend4 depending
2657         on the type of matrix.
2658         (WebCore::TransformationMatrix::decompose2): Calls into the decompose2
2659         method above.
2660         (WebCore::TransformationMatrix::decompose4): New name.
2661         (WebCore::TransformationMatrix::recompose2): Recomposes a 3d matrix from
2662         a 2d decomposition.
2663         (WebCore::TransformationMatrix::recompose4): New name.
2664         * platform/graphics/transforms/TransformationMatrix.h: All the changes
2665         for the new methods above.
2666
2667 2013-09-26  Darin Adler  <darin@apple.com>
2668
2669         rename KURL to URL
2670         https://bugs.webkit.org/show_bug.cgi?id=16214
2671
2672         Reviewed by Andreas Kling.
2673
2674         * many files: Renamed, using script.
2675
2676 2013-09-06  Jer Noble  <jer.noble@apple.com>
2677
2678         [Mac] Implement the media controls in JavaScript.
2679         https://bugs.webkit.org/show_bug.cgi?id=120895
2680
2681         Reviewed by Dean Jackson.
2682
2683         Re-implement the existing MediaControls constellation of classes in JavaScript
2684         and CSS. This will allow different ports to configure their controls without
2685         dependencies on the layout requirements of any other port's controls.
2686
2687         Define and turn on ENABLE_MEDIA_CONTROLS_SCRIPT:
2688         * Configurations/FeatureDefines.xcconfig:
2689
2690         Add new source files to the project:
2691         * DerivedSources.cpp:
2692         * DerivedSources.make:
2693         * WebCore.vcxproj/WebCore.vcxproj:
2694         * WebCore.vcxproj/WebCore.vcxproj.filters:
2695         * WebCore.xcodeproj/project.pbxproj:
2696
2697         Add a new class MediaControlsHost which the script controls can use to
2698         communicate with the HTMLMediaElement without exposing private interfaces
2699         to web facing scripts:
2700         * Modules/mediacontrols/MediaControlsHost.cpp: Added.
2701         (WebCore::MediaControlsHost::automaticKeyword): Static method.
2702         (WebCore::MediaControlsHost::forcedOnlyKeyword): Ditto.
2703         (WebCore::MediaControlsHost::alwaysOnKeyword): Ditto.
2704         (WebCore::MediaControlsHost::create): Simple factory.
2705         (WebCore::MediaControlsHost::MediaControlsHost): Simple constructor.
2706         (WebCore::MediaControlsHost::~MediaControlsHost): Simple destructor.
2707         (WebCore::MediaControlsHost::sortedTrackListForMenu): Pass through to CaptionUserPreferences.
2708         (WebCore::MediaControlsHost::displayNameForTrack): Ditto.
2709         (WebCore::MediaControlsHost::captionMenuOffItem): Pass through to TextTrack.
2710         (WebCore::MediaControlsHost::captionMenuAutomaticItem): Ditto.
2711         (WebCore::MediaControlsHost::captionDisplayMode): Pass through to CaptionUserPreferences.
2712         (WebCore::MediaControlsHost::setSelectedTextTrack): Pass through to HTMLMediaElement.
2713         (WebCore::MediaControlsHost::textTrackContainer): Lazily create a MediaControlTextTrackContainerElement.
2714         (WebCore::MediaControlsHost::updateTextTrackContainer): Pass through to MediaControlTextTrackContainerElement.
2715         * Modules/mediacontrols/MediaControlsHost.h: Added.
2716         * Modules/mediacontrols/MediaControlsHost.idl: Added.
2717         * Modules/mediacontrols/mediaControlsApple.css: Added.
2718
2719         Add convenience methods for adding a MediaControlsHost to a VM.
2720         * bindings/js/ScriptObject.cpp:
2721         (WebCore::ScriptGlobalObject::set):
2722         * bindings/js/ScriptObject.h:
2723
2724         Add the new controller .js implementation:
2725         * Modules/mediacontrols/mediaControlsApple.js: Added.
2726         (createControls): Global method to create a new Controller object.
2727         (Controller): Constructor. Create and configure the default set of controls.
2728         (Controller.prototype.addListeners): Adds event listeners to the this.video object.
2729         (Controller.prototype.removeListeners): Removes listeners from same.
2730         (Controller.prototype.handleEvent): Makes Controller an EventHandler, making registration and
2731                 deregistration simpler.
2732         (Controller.prototype.createBase): Creates the base controls object and the text track container.
2733         (Controller.prototype.createControls): Creates the controls panel object and controller UI.
2734         (Controller.prototype.setControlsType): Switches between Full Screen and Inline style of controller.
2735         (Controller.prototype.disconnectControls): Disconnects all UI elements from the DOM.
2736         (Controller.prototype.configureInlineControls): Configures existing controls for Inline mode.
2737         (Controller.prototype.configureFullScreenControls): Ditto, for Full Screen Mode.
2738
2739         Add listeners for HTMLMediaElement events:
2740         (Controller.prototype.onloadstart): Update the status display.
2741         (Controller.prototype.onerror): Ditto.
2742         (Controller.prototype.onabort): Ditto.
2743         (Controller.prototype.onsuspend): Ditto.
2744         (Controller.prototype.onprogress): Ditto.
2745         (Controller.prototype.onstalled): Ditto.
2746         (Controller.prototype.onwaiting): Ditto.
2747         (Controller.prototype.onreadystatechange): Ditto.
2748         (Controller.prototype.ontimeupdate): Update the timeline and time displays.
2749         (Controller.prototype.ondurationchange): Ditto.
2750         (Controller.prototype.onplaying): Update the play button.
2751         (Controller.prototype.onplay): Ditto.
2752         (Controller.prototype.onpause): Ditto.
2753         (Controller.prototype.onratechange): Ditto.
2754         (Controller.prototype.onvolumechange): Update the volume and mute UI.
2755         (Controller.prototype.ontexttrackchange): Update the text track container and captions button.
2756         (Controller.prototype.ontexttrackadd): Ditto.
2757         (Controller.prototype.ontexttrackremove): Ditto.
2758         (Controller.prototype.ontexttrackcuechange): Ditto.
2759         (Controller.prototype.onfullscreenchange): Reconfigure the controls.
2760
2761         Add listeners for UI element events:
2762         (Controller.prototype.onwrappermousemove): Show the controls and start the hide timer.
2763         (Controller.prototype.onwrappermouseout): Hide the controls and stop the hide timer.
2764         (Controller.prototype.onrewindbuttonclicked): Rewind.
2765         (Controller.prototype.onplaybuttonclicked): Toggle pause.
2766         (Controller.prototype.ontimelinechange): Update the currentTime.
2767         (Controller.prototype.ontimelinedown):
2768         (Controller.prototype.ontimelineup):
2769         (Controller.prototype.ontimelinemouseover): Show the thumbnail view if available.
2770         (Controller.prototype.ontimelinemouseout): Hide same.
2771         (Controller.prototype.ontimelinemousemove): Move the thumbnail view.
2772         (Controller.prototype.onmutebuttonclicked): Mute audio.
2773         (Controller.prototype.onminbuttonclicked): Increase volume to max.
2774         (Controller.prototype.onmaxbuttonclicked): Decrease volume to min.
2775         (Controller.prototype.onvolumesliderchange): Update the current volume.
2776         (Controller.prototype.oncaptionbuttonclicked): Show or hide the track menu.
2777         (Controller.prototype.onfullscreenbuttonclicked): Enter or exit fullscreen.
2778         (Controller.prototype.oncontrolschange): Show or hide the controls panel.
2779         (Controller.prototype.onseekbackmousedown): Start seeking and enable the seek timer.
2780         (Controller.prototype.onseekbackmouseup): Stop seeking and disable the seek timer.
2781         (Controller.prototype.onseekforwardmousedown): Start seekind and enable the seek timer.
2782         (Controller.prototype.onseekforwardmouseup): Stop seekind and disable the seek timer.
2783
2784         Add action methods (which are mostly self explanatory):
2785         (Controller.prototype.updateDuration):
2786         (Controller.prototype.updatePlaying):
2787         (Controller.prototype.showControls): 
2788         (Controller.prototype.hideControls):
2789         (Controller.prototype.removeControls):
2790         (Controller.prototype.addControls):
2791         (Controller.prototype.updateTime):
2792         (Controller.prototype.updateReadyState):
2793         (Controller.prototype.setStatusHidden):        
2794         (Controller.prototype.updateThumbnailTrack):
2795         (Controller.prototype.updateCaptionButton):
2796         (Controller.prototype.updateCaptionContainer):
2797         (Controller.prototype.buildCaptionMenu):
2798         (Controller.prototype.captionItemSelected):
2799         (Controller.prototype.destroyCaptionMenu):
2800         (Controller.prototype.updateVolume):
2801
2802         Add utility methods:
2803         (Controller.prototype.isFullScreen):
2804         (Controller.prototype.canPlay):
2805         (Controller.prototype.nextRate):
2806         (Controller.prototype.seekBackFaster):
2807         (Controller.prototype.seekForwardFaster):
2808         (Controller.prototype.formatTime):
2809         (Controller.prototype.trackHasThumbnails):
2810
2811         Add the stylesheet for the javascript controls (which are mostly) copied from
2812         the (deleted) mediaControlsQuickTime.css and fullscreenQuickTime.css files:
2813         * Modules/mediacontrols/mediaControlsApple.css: Added.
2814         * css/fullscreenQuickTime.css: Removed.
2815         * css/mediaControlsQuickTime.css: Removed.
2816
2817         Inject new stylesheets into UA sheets:
2818         * css/CSSDefaultStyleSheets.cpp:
2819         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
2820
2821         Use the new javascript controls rather than MediaControls:
2822         * html/HTMLMediaElement.cpp:
2823         (WebCore::HTMLMediaElement::childShouldCreateRenderer): Use the javascript controls if available.
2824         (WebCore::HTMLMediaElement::updateTextTrackDisplay): Ditto.
2825         (WebCore::HTMLMediaElement::mediaControls): Ditto.
2826         (WebCore::HTMLMediaElement::hasMediaControls): Ditto.
2827         (WebCore::HTMLMediaElement::createMediaControls): Ditto.
2828         (WebCore::HTMLMediaElement::configureMediaControls): Ditto.
2829         (WebCore::HTMLMediaElement::configureTextTrackDisplay): Ditto.
2830         (WebCore::HTMLMediaElement::ensureIsolatedWorld): Create a new VM for the controls script.
2831         (WebCore::HTMLMediaElement::ensureMediaControlsInjectedScript): Inject the media controls script into the VM.
2832         (WebCore::HTMLMediaElement::didAddUserAgentShadowRoot): Inject the MediaControlsHost into the VM and call
2833                 the scripts global factory function.
2834         * html/HTMLMediaElement.h:
2835
2836         Remove most of the drawing code from RenderThemeMac and RenderThemeWin and
2837         add accessors for the new .js and .css file data:
2838         * rendering/RenderTheme.h:
2839         (WebCore::RenderTheme::mediaControlsStyleSheet): Empty virtual method.
2840         (WebCore::RenderTheme::mediaControlsScript): Ditto.
2841         * rendering/RenderThemeMac.h:
2842         * rendering/RenderThemeMac.mm:
2843         (WebCore::RenderThemeMac::mediaControlsStyleSheet): Add accessor for mediaControlsApple.css.
2844         (WebCore::RenderThemeMac::mediaControlsScript): Add accessor for mediaControlsApple.js.
2845         (WebCore::RenderThemeMac::adjustSliderThumbSize): Remove the call to adjustMediaSliderThumbSize.
2846         * rendering/RenderThemeWin.cpp:
2847         (WebCore::RenderThemeWin::mediaControlsStyleSheet):
2848         (WebCore::RenderThemeWin::mediaControlsScript):
2849         * rendering/RenderThemeWin.h:
2850
2851 2013-09-27  Bem Jones-Bey  <bjonesbe@adobe.com>
2852
2853         [css-shapes] Shapes are not resolved the same way in shape-inside and clip-path
2854         https://bugs.webkit.org/show_bug.cgi?id=121922
2855
2856         Reviewed by Andreas Kling.
2857
2858         Fix computation of a percentage radius for circle shape-outside to
2859         match the CSS Shapes spec.
2860
2861         Test: csswg/contributors/adobe/submitted/shapes/shape-outside/shape-outside-floats-circle-001.html
2862
2863         * rendering/shapes/Shape.cpp:
2864         (WebCore::Shape::createShape):
2865
2866 2013-09-27  Darin Adler  <darin@apple.com>
2867
2868         Add empty MainFrame class
2869         https://bugs.webkit.org/show_bug.cgi?id=121770
2870
2871         Reviewed by Andreas Kling.
2872
2873         For now, MainFrame simply derives from Frame and adds nothing.
2874         Next, we will make each Frame point back to its MainFrame.
2875
2876         * CMakeLists.txt: Added MainFrame.cpp/h.
2877         * GNUmakefile.list.am: Ditto.
2878         * Target.pri: Ditto.
2879         * WebCore.exp.in: Ditto.
2880         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
2881         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
2882         * WebCore.xcodeproj/project.pbxproj: Ditto.
2883
2884         * page/Frame.cpp:
2885         (WebCore::Frame::Frame): Use references instead of pointers for constructor.
2886         (WebCore::Frame::create): Pass references instead of pointers to constructor.
2887         * page/Frame.h: Made constructor protected instead of private, and marked
2888         destructor virtual explicitly. Also marked virtual functions OVERRIDE and FINAL.
2889
2890         * page/MainFrame.cpp: Added.
2891         * page/MainFrame.h: Added.
2892
2893         * page/Page.cpp:
2894         (WebCore::Page::Page): Use MainFrame::create instead of Frame::create.
2895         (WebCore::Page::frameIsMainFrame): Moved here, no longer inline.
2896         (WebCore::Page::renderTreeSize): Use const Frame* instead of Frame*.
2897         (WebCore::Page::checkSubframeCountConsistency): Ditto.
2898         * page/Page.h: Changed mainFrame() to return MainFrame& and m_mainFrame to
2899         be a RefPtr<MainFrame>.
2900
2901         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2902         * bindings/js/PageScriptDebugServer.cpp:
2903         * bindings/js/ScriptProfiler.cpp:
2904         * bindings/js/ScriptState.cpp:
2905         * css/MediaQueryEvaluator.cpp:
2906         * dom/Document.cpp:
2907         * history/CachedFrame.cpp:
2908         * history/CachedPage.cpp:
2909         * history/PageCache.cpp:
2910         * html/HTMLPlugInImageElement.cpp:
2911         * inspector/InspectorAgent.cpp:
2912         * inspector/InspectorCanvasAgent.cpp:
2913         * inspector/InspectorClient.cpp:
2914         * inspector/InspectorDOMAgent.cpp:
2915         * inspector/InspectorFrontendClientLocal.cpp:
2916         * inspector/InspectorFrontendHost.cpp:
2917         * inspector/InspectorInputAgent.cpp:
2918         * inspector/InspectorInstrumentation.cpp:
2919         * inspector/InspectorOverlay.cpp:
2920         * inspector/InspectorPageAgent.cpp:
2921         * inspector/PageRuntimeAgent.cpp:
2922         * loader/FrameLoader.cpp:
2923         * loader/HistoryController.cpp:
2924         * loader/archive/mhtml/MHTMLArchive.cpp:
2925         * page/AutoscrollController.cpp:
2926         * page/Chrome.cpp:
2927         * page/ContextMenuController.cpp:
2928         * page/DOMWindow.cpp:
2929         * page/DragController.cpp:
2930         * page/EventHandler.cpp:
2931         * page/FocusController.cpp:
2932         * page/FrameTree.cpp:
2933         * page/FrameView.cpp:
2934         * page/GestureTapHighlighter.cpp:
2935         * page/PageGroup.cpp:
2936         * page/PageGroupLoadDeferrer.cpp:
2937         * page/PageSerializer.cpp:
2938         * page/PageThrottler.cpp:
2939         * page/Settings.cpp:
2940         * page/SpatialNavigation.cpp:
2941         * page/mac/DragControllerMac.mm:
2942         * page/mac/PageMac.cpp:
2943         * page/scrolling/ScrollingCoordinator.cpp:
2944         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2945         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
2946         * plugins/DOMMimeType.cpp:
2947         * storage/StorageEventDispatcher.cpp:
2948         * svg/graphics/SVGImage.cpp:
2949         * testing/InternalSettings.cpp:
2950         * testing/Internals.cpp:
2951         Include MainFrame.h instead of Frame.h as needed.
2952
2953 2013-09-27  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2954
2955         Add toWebKitCSS*Value functions to cast from CSSValue
2956         https://bugs.webkit.org/show_bug.cgi?id=121776
2957
2958         Reviewed by Andreas Kling.
2959
2960         CSS_VALUE_TYPE_CASTS can't cover WebKitCSS*Value classes. So, this patch adds toWebKitCSS*Value manually.
2961
2962         No new tests, no behavior change.
2963
2964         * css/CSSValue.cpp:
2965         (WebCore::CSSValue::destroy):
2966         * css/StyleResolver.cpp:
2967         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
2968         (WebCore::StyleResolver::createFilterOperations):
2969         * css/TransformFunctions.cpp:
2970         (WebCore::transformsForValue):
2971         * css/WebKitCSSArrayFunctionValue.h:
2972         (WebCore::toWebKitCSSArrayFunctionValue):
2973         * css/WebKitCSSFilterValue.h:
2974         (WebCore::toWebKitCSSFilterValue):
2975         * css/WebKitCSSMatFunctionValue.h:
2976         (WebCore::toWebKitCSSMatFunctionValue):
2977         * css/WebKitCSSMixFunctionValue.h:
2978         (WebCore::toWebKitCSSMixFunctionValue):
2979         * css/WebKitCSSSVGDocumentValue.h:
2980         (WebCore::toWebKitCSSSVGDocumentValue):
2981         * css/WebKitCSSShaderValue.h:
2982         (WebCore::toWebKitCSSShaderValue):
2983         * css/WebKitCSSTransformValue.h:
2984         (WebCore::toWebKitCSSTransformValue):
2985
2986 2013-09-27  Zalan Bujtas  <zalan@apple.com>
2987
2988         Unexpected word wrapping for wrapped content then raw content.
2989         https://bugs.webkit.org/show_bug.cgi?id=121130
2990
2991         Reviewed by Darin Adler.
2992
2993         When deciding whether a line is considered empty, we need to check if the current
2994         object is fully responsible for the currently uncommitted width. It helps differentiating
2995         <span></span><span>abcd</span> from <span>a</span><span>bcd</span>, where in the first
2996         case when we hit the second <span> the line is still considered empty, as opposed to the
2997         second example.
2998         This patch introduces a map to keep track of the uncommitted widths.
2999
3000         Test: fast/css/unexpected-word-wrapping-with-non-empty-spans.html
3001
3002         * rendering/LineWidth.cpp:
3003         (WebCore::LineWidth::uncommittedWidthForObject):
3004         (WebCore::LineWidth::addUncommittedWidth):
3005         * rendering/LineWidth.h:
3006         * rendering/RenderBlockLineLayout.cpp:
3007         (WebCore::LineBreaker::nextSegmentBreak):
3008
3009 2013-09-27  Mario Sanchez Prada  <mario.prada@samsung.com>
3010
3011         [ATK] Protect entry points in the ATK wrapper against outdated render trees
3012         https://bugs.webkit.org/show_bug.cgi?id=121558
3013
3014         Reviewed by Chris Fleizach.
3015
3016         Make sure that we protect every entry point in the ATK wrapper
3017         against outdated render trees, before using the WebCore's
3018         accessibility API, since that might lead to problems (and crashes)
3019         if the render and accessibility trees are not stable.
3020
3021         Thus, call AccessibilityObject::updateBackingStore() in those
3022         entry points and check whether the ATK wrapper is detached or not
3023         after that, to decide whether to continue or not.
3024
3025         Besides providing a new test to check that it WebKit does not
3026         crash in a given scenario (which actually triggered the
3027         investigation here), solving this situation also fixes other tests
3028         that were previously failing (aria-used-on-image-maps.html) or
3029         that were printing wrong results, not detected until now due to
3030         wrong platform specific expectations (file-upload-button-stringvalue
3031         and deleting-iframe-destroys-axcache).
3032
3033         Test: accessibility/heading-crash-after-hidden.html
3034
3035         * accessibility/atk/WebKitAccessibleUtil.h: Added two new macros
3036         to inject the needed code at the beginning of each entry point to
3037         allow gracefully exit those functions when the render tree is
3038         unstable. Inspired by g_return_if_fail and g_return_val_if_fail, we
3039         called them returnIfWebKitAccessibleIsInvalid and returnValIfWebKitAccessibleIsInvalid.
3040
3041         * accessibility/atk/WebKitAccessibleHyperlink.cpp:
3042         (webkitAccessibleHyperlinkActionDoAction): Protect entry point.
3043         (webkitAccessibleHyperlinkActionGetNActions): Ditto.
3044         (webkitAccessibleHyperlinkActionGetDescription): Ditto.
3045         (webkitAccessibleHyperlinkActionGetKeybinding): Ditto.
3046         (webkitAccessibleHyperlinkActionGetName): Ditto.
3047         (webkitAccessibleHyperlinkGetURI): Ditto.
3048         (webkitAccessibleHyperlinkGetObject): Ditto.
3049         (webkitAccessibleHyperlinkGetStartIndex): Ditto.
3050         (webkitAccessibleHyperlinkGetEndIndex): Ditto.
3051         (webkitAccessibleHyperlinkIsValid): Ditto.
3052         (webkitAccessibleHyperlinkGetNAnchors): Ditto.
3053         (webkitAccessibleHyperlinkIsSelectedLink): Ditto.
3054         * accessibility/atk/WebKitAccessibleInterfaceAction.cpp:
3055         (webkitAccessibleActionDoAction): Ditto.
3056         (webkitAccessibleActionGetNActions): Ditto.
3057         (webkitAccessibleActionGetDescription): Ditto.
3058         (webkitAccessibleActionGetKeybinding): Ditto.
3059         (webkitAccessibleActionGetName): Ditto.
3060         * accessibility/atk/WebKitAccessibleInterfaceComponent.cpp:
3061         (webkitAccessibleComponentRefAccessibleAtPoint): Ditto.
3062         (webkitAccessibleComponentGetExtents): Ditto.
3063         (webkitAccessibleComponentGrabFocus): Ditto.
3064         * accessibility/atk/WebKitAccessibleInterfaceDocument.cpp:
3065         (webkitAccessibleDocumentGetAttributeValue): Ditto.
3066         (webkitAccessibleDocumentGetAttributes): Ditto.
3067         (webkitAccessibleDocumentGetLocale): Ditto.
3068         * accessibility/atk/WebKitAccessibleInterfaceEditableText.cpp:
3069         (webkitAccessibleEditableTextSetRunAttributes): Ditto.
3070         (webkitAccessibleEditableTextSetTextContents): Ditto.
3071         (webkitAccessibleEditableTextInsertText): Ditto.
3072         (webkitAccessibleEditableTextCopyText): Ditto.
3073         (webkitAccessibleEditableTextCutText): Ditto.
3074         (webkitAccessibleEditableTextDeleteText): Ditto.
3075         (webkitAccessibleEditableTextPasteText): Ditto.
3076         * accessibility/atk/WebKitAccessibleInterfaceHypertext.cpp:
3077         (webkitAccessibleHypertextGetLink): Ditto.
3078         (webkitAccessibleHypertextGetNLinks): Ditto.
3079         (webkitAccessibleHypertextGetLinkIndex): Ditto.
3080         * accessibility/atk/WebKitAccessibleInterfaceImage.cpp:
3081         (webkitAccessibleImageGetImagePosition): Ditto.
3082         (webkitAccessibleImageGetImageDescription): Ditto.
3083         (webkitAccessibleImageGetImageSize): Ditto.
3084         * accessibility/atk/WebKitAccessibleInterfaceSelection.cpp:
3085         (webkitAccessibleSelectionAddSelection): Ditto.
3086         (webkitAccessibleSelectionClearSelection): Ditto.
3087         (webkitAccessibleSelectionRefSelection): Ditto.
3088         (webkitAccessibleSelectionGetSelectionCount): Ditto.
3089         (webkitAccessibleSelectionIsChildSelected): Ditto.
3090         (webkitAccessibleSelectionRemoveSelection): Ditto.
3091         (webkitAccessibleSelectionSelectAllSelection): Ditto.
3092         * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
3093         (webkitAccessibleTableRefAt): Ditto.
3094         (webkitAccessibleTableGetIndexAt): Ditto.
3095         (webkitAccessibleTableGetColumnAtIndex): Ditto.
3096         (webkitAccessibleTableGetRowAtIndex): Ditto.
3097         (webkitAccessibleTableGetNColumns): Ditto.
3098         (webkitAccessibleTableGetNRows): Ditto.
3099         (webkitAccessibleTableGetColumnExtentAt): Ditto.
3100         (webkitAccessibleTableGetRowExtentAt): Ditto.
3101         (webkitAccessibleTableGetColumnHeader): Ditto.
3102         (webkitAccessibleTableGetRowHeader): Ditto.
3103         (webkitAccessibleTableGetCaption): Ditto.
3104         (webkitAccessibleTableGetColumnDescription): Ditto.
3105         (webkitAccessibleTableGetRowDescription): Ditto.
3106         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
3107         (webkitAccessibleTextGetText): Ditto.
3108         (webkitAccessibleTextGetTextAfterOffset): Ditto.
3109         (webkitAccessibleTextGetTextAtOffset): Ditto.
3110         (webkitAccessibleTextGetTextBeforeOffset): Ditto.
3111         (webkitAccessibleTextGetCharacterAtOffset): Ditto.
3112         (webkitAccessibleTextGetCaretOffset): Ditto.
3113         (webkitAccessibleTextGetRunAttributes): Ditto.
3114         (webkitAccessibleTextGetDefaultAttributes): Ditto.
3115         (webkitAccessibleTextGetCharacterExtents): Ditto.
3116         (webkitAccessibleTextGetRangeExtents): Ditto.
3117         (webkitAccessibleTextGetCharacterCount): Ditto.
3118         (webkitAccessibleTextGetOffsetAtPoint): Ditto.
3119         (webkitAccessibleTextGetNSelections): Ditto.
3120         (webkitAccessibleTextGetSelection): Ditto.
3121         (webkitAccessibleTextAddSelection): Ditto.
3122         (webkitAccessibleTextSetSelection): Ditto.
3123         (webkitAccessibleTextRemoveSelection): Ditto.
3124         (webkitAccessibleTextSetCaretOffset): Ditto.
3125         * accessibility/atk/WebKitAccessibleInterfaceValue.cpp:
3126         (webkitAccessibleValueGetCurrentValue): Ditto.
3127         (webkitAccessibleValueGetMaximumValue): Ditto.
3128         (webkitAccessibleValueGetMinimumValue): Ditto.
3129         (webkitAccessibleValueSetCurrentValue): Ditto.
3130         (webkitAccessibleValueGetMinimumIncrement): Ditto.
3131         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3132         (core): Removed, as it's not actually needed.
3133         (webkitAccessibleGetName):  Protect entry point.
3134         (webkitAccessibleGetDescription): Ditto.
3135         (webkitAccessibleGetParent): Ditto.
3136         (webkitAccessibleGetNChildren): Ditto.
3137         (webkitAccessibleRefChild): Ditto.
3138         (webkitAccessibleGetIndexInParent): Ditto.
3139         (webkitAccessibleGetAttributes): Ditto.
3140         (webkitAccessibleGetRole): Ditto.
3141         (webkitAccessibleRefStateSet): Ditto.
3142         (webkitAccessibleRefRelationSet): Ditto.
3143         (webkitAccessibleGetObjectLocale): Ditto.
3144         (webkitAccessibleDetach): Ditto.
3145         (webkitAccessibleIsDetached): New helper function, to be used from
3146         the newly added macros. We need to check whether the wrapper is
3147         detached and not just the wrapper AccessibilityObject since once
3148         the detachment happens we can't trust anything but the AtkObject
3149         from the wrapper (the AccessibilityObject might be invalid).
3150         * accessibility/atk/WebKitAccessibleWrapperAtk.h:
3151
3152         Assert that the render tree is neither being updated nor in need
3153         of being updated before trying to compute the text under a given
3154         element, since that might lead to crashes due to the constructor
3155         of TextIterator calling updateLayoutIgnorePendingStylesheets().
3156
3157         * accessibility/AccessibilityNodeObject.cpp:
3158         (WebCore::AccessibilityNodeObject::textUnderElement): Assert that
3159         the render tree is neither being updated nor needing updating.
3160
3161 2013-09-27  Mario Sanchez Prada  <mario.prada@samsung.com>
3162
3163         [ATK] accessibility/aria-sort.html is failing after r156409
3164         https://bugs.webkit.org/show_bug.cgi?id=121947
3165
3166         Reviewed by Chris Fleizach.
3167
3168         The WAI-ARIA spec says to translate the value as is from the
3169         attribute, so do just that instead of mapping values from the
3170         AccessibilitySortDirection enumeration into strings.
3171         http://www.w3.org/TR/wai-aria-implementation/#mapping_state-property
3172
3173         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3174         (webkitAccessibleGetAttributes): Do the right mapping for aria-sort.
3175
3176 2013-09-26  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3177
3178         Sync toWebKitCSSShaderValue() behavior with other toCSSFooValue()
3179         https://bugs.webkit.org/show_bug.cgi?id=121886
3180
3181         Reviewed by Darin Adler.
3182
3183         toWebKitCSSShaderValue() behavior is different from other to CSSFooValue().
3184         It shouldn't return null. The type checking should be done before doing type cast.
3185
3186         * css/StyleResolver.cpp:
3187         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
3188         * css/WebKitCSSShaderValue.h:
3189         (WebCore::toWebKitCSSShaderValue):
3190
3191 2013-09-26  Antti Koivisto  <antti@apple.com>
3192
3193         Move m_style to RenderElement
3194         https://bugs.webkit.org/show_bug.cgi?id=121936
3195
3196         Reviewed by Andreas Kling.
3197
3198         Text renderers always have the same style as their parent. They can get their style via the parent pointer
3199         rather than having a member of their own.
3200         
3201         This shrinks RenderText by a pointer.
3202
3203         * dom/PseudoElement.cpp:
3204         (WebCore::PseudoElement::didRecalcStyle):
3205         
3206             Text renderers have no independent style. No need to set it.
3207
3208         * editing/ApplyBlockElementCommand.cpp:
3209         * rendering/RenderBlock.cpp:
3210         (WebCore::RenderBlock::addChildToAnonymousColumnBlocks):
3211         
3212             Avoid getting style from text child before it is added to tree.
3213
3214         (WebCore::RenderBlock::updateFirstLetterStyle):
3215         (WebCore::RenderBlock::createFirstLetterRenderer):
3216         * rendering/RenderButton.cpp:
3217         (WebCore::RenderButton::styleDidChange):
3218         (WebCore::RenderButton::setText):
3219         * rendering/RenderCombineText.cpp:
3220         (WebCore::RenderCombineText::styleDidChange):
3221                 
3222             Don't set text style anymore.
3223
3224         * rendering/RenderElement.cpp:
3225         (WebCore::RenderElement::RenderElement):
3226         (WebCore::RenderElement::setStyle):
3227         
3228             Notify child text renderers of style change.
3229
3230         (WebCore::RenderElement::setAnimatableStyle):
3231         (WebCore::RenderElement::setPseudoStyle):
3232         
3233             Push down to RenderElement, remove text branches.
3234
3235         (WebCore::RenderElement::addChild):
3236         
3237             Notify text renderers of style change when added to tree.
3238
3239         (WebCore::RenderElement::propagateStyleToAnonymousChildren):
3240         * rendering/RenderElement.h:
3241         (WebCore::RenderElement::style):
3242         (WebCore::RenderElement::setStyleInternal):
3243         
3244             Move m_style from RenderObject.
3245
3246         (WebCore::RenderObject::style):
3247         
3248             Inline this in RenderElement.h instead of making it virtual.
3249
3250         * rendering/RenderInline.cpp:
3251         (WebCore::updateStyleOfAnonymousBlockContinuations):
3252         (WebCore::RenderInline::styleDidChange):
3253         
3254             Tighten typing to call RenderElement::setStyle.
3255
3256         (WebCore::RenderInline::clippedOverflowRectForRepaint):
3257         
3258             Change assert. This can get legitimately called during layout for the first letter renderers.
3259             This was previously avoided by luck.
3260
3261         * rendering/RenderMenuList.cpp:
3262         (WebCore::RenderMenuList::styleDidChange):
3263         (WebCore::RenderMenuList::setText):
3264         
3265             Don't set text style anymore.
3266
3267         * rendering/RenderObject.cpp:
3268         (WebCore::RenderObject::RenderObject):
3269         (WebCore::RenderObject::containingBlock):
3270         (WebCore::RenderObject::drawLineForBoxSide):
3271         (WebCore::RenderObject::hasEntirelyFixedBackground):
3272         (WebCore::RenderObject::container):
3273         (WebCore::RenderObject::cachedFirstLineStyle):
3274
3275             Switch to style(), avoid unnecessary repetition.
3276             Move code out.
3277
3278         * rendering/RenderObject.h:
3279         
3280             Move functions to RenderElement.
3281
3282         (WebCore::RenderObject::isBeforeContent):
3283         (WebCore::RenderObject::isAfterContent):
3284         
3285             Avoid accessing style for text renderers as these are called before the renderer
3286             is added to tree.
3287
3288         (WebCore::RenderObject::setNeedsPositionedMovementLayout):
3289         * rendering/RenderRegion.cpp:
3290         (WebCore::RenderRegion::restoreRegionObjectsOriginalStyle):
3291         (WebCore::RenderRegion::setObjectStyleInRegion):
3292         * rendering/RenderSearchField.cpp:
3293         (WebCore::RenderSearchField::updateCancelButtonVisibility):
3294         * rendering/RenderText.cpp:
3295         * rendering/RenderText.h:
3296         
3297             Remove setStyle.
3298
3299         (WebCore::RenderText::style):
3300         
3301             Get style from parent.
3302
3303         * rendering/mathml/RenderMathMLOperator.cpp:
3304         (WebCore::RenderMathMLOperator::updateFromElement):
3305         (WebCore::RenderMathMLOperator::createGlyph):
3306         * rendering/style/ContentData.cpp:
3307         (WebCore::TextContentData::createRenderer):
3308         (WebCore::CounterContentData::createRenderer):
3309         (WebCore::QuoteContentData::createRenderer):
3310         
3311             Pseudo style for RenderText subclasses comes from parent without any explicit setting.
3312
3313         * style/StyleResolveTree.cpp:
3314         (WebCore::Style::createTextRendererIfNeeded):
3315         (WebCore::Style::resolveLocal):
3316         (WebCore::Style::updateTextStyle):
3317         (WebCore::Style::resolveShadowTree):
3318         (WebCore::Style::resolveTree):
3319         
3320             No need to set or update text renderer style separately.
3321
3322 2013-09-26  Eric Carlson  <eric.carlson@apple.com>
3323
3324         [MediaStream] make MediaStream testable
3325         https://bugs.webkit.org/show_bug.cgi?id=121967
3326
3327         Reviewed by Dean Jackson.
3328
3329         No new tests, existing tests updated.
3330
3331         * CMakeLists.txt: Add MockMediaStreamCenter.
3332         * GNUmakefile.list.am: Ditto.
3333
3334         * Modules/mediastream/MediaStreamTrack.idl: Add SkipVTableValidation.
3335         * Modules/mediastream/NavigatorUserMediaError.idl: Add JSGenerateToJSObject.
3336         * WebCore.exp.in: Export MockMediaStreamCenter::registerMockMediaStreamCenter.
3337
3338         * WebCore.xcodeproj/project.pbxproj: Add MockMediaStreamCenter.
3339         * dom/DOMError.h: Make the destructor virtual because it has a derived class.
3340         * dom/DOMError.idl:
3341
3342         * platform/mock/MockMediaStreamCenter.cpp: Added.
3343         * platform/mock/MockMediaStreamCenter.h: Added.
3344
3345         * testing/Internals.cpp: Register the mock stream center.
3346
3347 2013-09-26  Benjamin Poulain  <benjamin@webkit.org>
3348
3349         Move CSS MatchRequest from StyleResolver to a private definition in ElementRuleCollector
3350         https://bugs.webkit.org/show_bug.cgi?id=121986
3351
3352         Reviewed by Andreas Kling.
3353
3354         MatchRequest is an internal type of ElementRuleCollector now, move the definition
3355         to ElementRuleCollector.
3356
3357         * css/DocumentRuleSets.h:
3358         * css/ElementRuleCollector.h:
3359         (WebCore::ElementRuleCollector::MatchRequest::MatchRequest):
3360         * css/StyleResolver.h:
3361
3362 2013-09-26  Brent Fulgham  <bfulgham@apple.com>
3363
3364         [Windows] Unreviewed build fix after r156487.
3365
3366         Add explicit casting needed by MSVC to compile this code. Much
3367         of this could probably be removed when we move to VS2012 or newer.
3368
3369         * bindings/js/JSEventListener.cpp:
3370         (WebCore::JSEventListener::JSEventListener):
3371         * bindings/js/JSEventListener.h:
3372         (WebCore::JSEventListener::jsFunction):
3373         * bridge/jsc/BridgeJSC.cpp:
3374         (JSC::Bindings::Instance::createRuntimeObject):
3375
3376 2013-09-26  Commit Queue  <commit-queue@webkit.org>
3377
3378         Unreviewed, rolling out r156510.
3379         http://trac.webkit.org/changeset/156510
3380         https://bugs.webkit.org/show_bug.cgi?id=121989
3381
3382         Landed in-progress code along with build fix. (Requested by
3383         bfulgham on #webkit).
3384
3385         * bindings/js/JSEventListener.cpp:
3386         (WebCore::JSEventListener::JSEventListener):
3387         * bindings/js/JSEventListener.h:
3388         (WebCore::JSEventListener::jsFunction):
3389         * bridge/jsc/BridgeJSC.cpp:
3390         (JSC::Bindings::Instance::createRuntimeObject):
3391         * platform/graphics/filters/FEGaussianBlur.cpp:
3392         (WebCore::FEGaussianBlur::platformApplyGeneric):
3393         (WebCore::FEGaussianBlur::platformApply):
3394         * platform/graphics/win/DIBPixelData.cpp:
3395         (WebCore::DIBPixelData::writeToFile):
3396         * platform/graphics/win/DIBPixelData.h:
3397
3398 2013-09-26  Brent Fulgham  <bfulgham@apple.com>
3399
3400         [Windows] Unreviewed build fix after r156487.
3401
3402         Add explicit casting needed by MSVC to compile this code. Much
3403         of this could probably be removed when we move to VS2012 or newer.
3404
3405         * bindings/js/JSEventListener.cpp:
3406         (WebCore::JSEventListener::JSEventListener):
3407         * bindings/js/JSEventListener.h:
3408         (WebCore::JSEventListener::jsFunction):
3409         * bridge/jsc/BridgeJSC.cpp:
3410         (JSC::Bindings::Instance::createRuntimeObject):
3411         * platform/graphics/filters/FEGaussianBlur.cpp:
3412         (WebCore::FEGaussianBlur::platformApplyGeneric):
3413         (WebCore::FEGaussianBlur::platformApply):
3414         * platform/graphics/win/DIBPixelData.cpp:
3415         (WebCore::DIBPixelData::DIBPixelData):
3416         (WebCore::DIBPixelData::writeToFile):
3417         * platform/graphics/win/DIBPixelData.h:
3418
3419 2013-09-26  Dean Jackson  <dino@apple.com>
3420
3421         Expose a setting to disable hardware accelerated animations
3422         https://bugs.webkit.org/show_bug.cgi?id=121978
3423         <rdar://problem/15091284>
3424
3425         Reviewed by Eric Carlson.
3426
3427         Expose acceleratedCompositedAnimationsEnabled
3428         to disable CoreAnimation animations.
3429
3430         Test: LayoutTests/animations/transform-non-accelerated.html
3431
3432         * WebCore.exp.in: Export new method.
3433         * page/Settings.in: Add new setting.
3434         * rendering/RenderLayerBacking.cpp:
3435         (WebCore::RenderLayerBacking::startAnimation): Don't go
3436         to GraphicsLayer if the setting is false.
3437
3438 2013-09-26  Julien Brianceau  <jbriance@cisco.com>
3439
3440         [Qt] Fix build after r156487.
3441         https://bugs.webkit.org/show_bug.cgi?id=121984
3442
3443         Reviewed by Anders Carlsson.