Update platform text track menu
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-06-21  Eric Carlson  <eric.carlson@apple.com>
2
3         Update platform text track menu
4         https://bugs.webkit.org/show_bug.cgi?id=117884
5
6         Reviewed by Jer Noble.
7
8         * html/HTMLMediaElement.cpp:
9         (WebCore::HTMLMediaElement::setSelectedTextTrack):
10         * html/track/TextTrack.cpp:
11         (WebCore::TextTrack::platformTextTrack):
12         * platform/graphics/PlatformTextTrack.h:
13         (WebCore::PlatformTextTrack::create): 
14         (WebCore::PlatformTextTrack::uniqueId):
15         (WebCore::PlatformTextTrack::captionMenuOffItem):
16         (WebCore::PlatformTextTrack::captionMenuAutomaticItem):
17         (WebCore::PlatformTextTrack::PlatformTextTrack):
18
19 2013-06-21  James Craig  <james@cookiecrook.com>
20
21         AX: audio/video playback control timers (elapsed and remaining) should be exposed as ApplicationTimerRole
22         https://bugs.webkit.org/show_bug.cgi?id=117883
23
24         Reviewed by Chris Fleizach.
25
26         Some of the media controls were returning the wrong role. Updated existing test coverage.
27
28         * accessibility/AccessibilityMediaControls.h:
29         (WebCore::AccessibilityMediaTimeDisplay::roleValue):
30
31 2013-06-21  Alex Christensen  <achristensen@apple.com>
32
33         Added glext.h from http://www.opengl.org/registry/oldspecs/glext.h for Windows
34         This file does not meet WebKit style guidelines.
35         Part of https://bugs.webkit.org/show_bug.cgi?id=117853
36         
37         Reviewed by Brent Fulgham.
38
39         * platform/graphics/win/GL: Added.
40         * platform/graphics/win/GL/glext.h: Added.
41
42 2013-06-21  Ruth Fong  <ruth_fong@apple.com>
43
44         Fix TextTrackCue::cueIndex() to handle the null case of TextTrack::cues(() properly
45         https://bugs.webkit.org/show_bug.cgi?id=117815
46         <rdar://problem/14211041> 
47
48         Reviewed by Ryosuke Niwa.
49
50         This patch adds assert statements to try to catch when 
51         track()->cues() returns a null pointer.
52
53         * html/track/TextTrackCue.cpp:
54         (WebCore::TextTrackCue::cueIndex):
55
56 2013-06-21  Jer Noble  <jer.noble@apple.com>
57
58         [iOS] Hang drawing captions after pressing the home button while playing a video
59         https://bugs.webkit.org/show_bug.cgi?id=117882
60
61         Reviewed by Eric Carlson.
62
63         Instead of rendering in a callback on the main thread, pre-render the captions and pass to the main
64         thread as a CGImage. As such, rename paintTextTrackRepresentation() to createTextTrackRepresentationImage().
65
66         * html/shadow/MediaControlElements.cpp:
67         (WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage): Renamed from
68             paintTextTrackRepresentation. Now returns an Image object.
69         * html/shadow/MediaControlElements.h:
70         * platform/graphics/MediaPlayer.h:
71         * platform/graphics/TextTrackRepresentation.h:
72
73 2013-06-21  Radu Stavila  <stavila@adobe.com>
74
75         [CSS Regions] Move overset compute code from flow thread to named flow thread
76         https://bugs.webkit.org/show_bug.cgi?id=117835
77
78         Reviewed by Andreas Kling.
79
80         Moved computeOversetStateForRegions() and overset() methods from RenderFlowThread to RenderNamedFlowThread. 
81         Added ASSERTS in RenderRegion::regionOversetState and RenderRegion::setRegionOversetState to ensure
82         the region was created from an element.
83
84         * rendering/RenderBlock.cpp:
85         (WebCore::RenderBlock::computeOverflow):
86         * rendering/RenderFlowThread.cpp:
87         (WebCore::RenderFlowThread::RenderFlowThread):
88         * rendering/RenderFlowThread.h:
89         * rendering/RenderNamedFlowThread.cpp:
90         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
91         (WebCore::RenderNamedFlowThread::computeOversetStateForRegions):
92         * rendering/RenderNamedFlowThread.h:
93         (WebCore::RenderNamedFlowThread::overset):
94         * rendering/RenderRegion.cpp:
95         (WebCore::RenderRegion::regionOversetState):
96         (WebCore::RenderRegion::setRegionOversetState):
97
98 2013-06-21  Commit Queue  <commit-queue@webkit.org>
99
100         Unreviewed, rolling out r151838.
101         http://trac.webkit.org/changeset/151838
102         https://bugs.webkit.org/show_bug.cgi?id=117880
103
104         Breaks MediaPlayerPrivateQt on Mac (Requested by carewolf on
105         #webkit).
106
107         * html/HTMLMediaElement.h:
108
109 2013-06-20  Brent Fulgham  <bfulgham@apple.com>
110
111         [Windows] AX: Radio buttons with "tab" role should describe themselves as tabs
112         https://bugs.webkit.org/show_bug.cgi?id=117837
113
114         Reviewed by Chris Fleizach.
115
116         accessibility/aria-tab-role-on-buttons.html
117
118         * accessibility/AccessibilityNodeObject.cpp:
119         (WebCore::AccessibilityNodeObject::canSetSelectedAttribute): Indicate that certain accessibility
120         types (such as Tabs) can be selected.
121         * accessibility/AccessibilityNodeObject.h: Signature for canSelectAttribute override.
122
123 2013-06-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>
124
125         Remove unused GesturePinch events
126         https://bugs.webkit.org/show_bug.cgi?id=117875
127
128         Reviewed by Andreas Kling.
129
130         The gesturePinch events have not been used for some time, even Chromium
131         had stop using them before moving out of webkit.
132
133         * dom/GestureEvent.cpp:
134         (WebCore::GestureEvent::create):
135         * page/EventHandler.cpp:
136         (WebCore::EventHandler::handleGestureEvent):
137         * platform/PlatformEvent.h:
138
139 2013-06-21  Radu Stavila  <stavila@adobe.com>
140
141         Improve the reattaching process while applying the :hover style
142         https://bugs.webkit.org/show_bug.cgi?id=117590
143
144         Reviewed by Andreas Kling.
145
146         Changes made:
147             - context is properly propagated to the element's children and to Shadow DOM elements.
148             - context is properly set on the lazyReattach method.
149             - another hit-testing is triggered when needed.
150             - when a hovered element is detached, it's ancestors are also removed from the hovered state.
151
152         Tests: fast/css/hover-display-block-inline.html
153                fast/css/hover-display-block-none.html
154
155         * dom/ContainerNode.cpp:
156         (WebCore::ContainerNode::attach):
157         (WebCore::ContainerNode::detach):
158         * dom/ContainerNode.h:
159         (WebCore::ContainerNode::attachChildren):
160         (WebCore::ContainerNode::detachChildrenIfNeeded):
161         (WebCore::ContainerNode::detachChildren):
162         * dom/Document.cpp:
163         (WebCore::Document::recalcStyle):
164         (WebCore::Document::updateHoverActiveState):
165         * dom/Element.cpp:
166         (WebCore::Element::attach):
167         (WebCore::Element::detach):
168         * dom/ElementShadow.cpp:
169         (WebCore::ElementShadow::attach):
170         (WebCore::ElementShadow::detach):
171         * dom/ElementShadow.h:
172         * dom/Node.h:
173         (WebCore::Node::lazyReattach):
174
175 2013-06-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>
176
177         HTMLMediaElement should inherit from MediaPlayerClient privately
178         https://bugs.webkit.org/show_bug.cgi?id=117874
179
180         Reviewed by Andreas Kling.
181
182         Fixing FIXME: HTMLMediaElement was stuck with public inheritance from
183         MediaPlayerClient due to the Chromium port.
184         This can now be fixed to a private inheritance.
185
186         * html/HTMLMediaElement.h:
187
188 2013-06-21  Allan Sandfeld Jensen  <allan.jensen@digia.com>
189
190         Remove Chromium-only TouchDisambiguation
191         https://bugs.webkit.org/show_bug.cgi?id=117873
192
193         Reviewed by Andreas Kling.
194
195         * page/TouchDisambiguation.cpp: Removed.
196         * page/TouchDisambiguation.h: Removed.
197
198 2013-06-21  Zalan Bujtas  <zalan@apple.com>
199
200         Rollout r150602: Restoring text-overflow vs. floating rendering behaviour.
201         https://bugs.webkit.org/show_bug.cgi?id=117871
202
203         Unreviewed. Rolling out r150602.
204         Undesirable rendering behaviour.
205
206         * rendering/RenderBlockLineLayout.cpp:
207         (WebCore::RenderBlock::checkLinesForTextOverflow):
208
209 2013-06-21  Radu Stavila  <stavila@adobe.com>
210
211         Web Inspector: Integrate new regionOversetChange event into inspector
212         https://bugs.webkit.org/show_bug.cgi?id=117833
213
214         Added the new regionOversetChange event to the WebInspector.
215
216         Reviewed by Joseph Pecoraro.
217
218         Tests:  inspector/styles/protocol-css-regions-commands.html:
219
220         * inspector/Inspector.json:
221         * inspector/InspectorCSSAgent.cpp:
222         (WebCore::ChangeRegionOversetTask::ChangeRegionOversetTask):
223         (WebCore::ChangeRegionOversetTask::scheduleFor):
224         (WebCore::ChangeRegionOversetTask::unschedule):
225         (WebCore::ChangeRegionOversetTask::reset):
226         (WebCore::ChangeRegionOversetTask::onTimer):
227         (WebCore::InspectorCSSAgent::resetNonPersistentData):
228         (WebCore::InspectorCSSAgent::willRemoveNamedFlow):
229         (WebCore::InspectorCSSAgent::didChangeRegionOverset):
230         (WebCore::InspectorCSSAgent::regionOversetChanged):
231         * inspector/InspectorCSSAgent.h:
232         * inspector/InspectorInstrumentation.cpp:
233         (WebCore::InspectorInstrumentation::didChangeRegionOversetImpl):
234         * inspector/InspectorInstrumentation.h:
235         (WebCore::InspectorInstrumentation::didChangeRegionOverset):
236         * inspector/front-end/CSSNamedFlowCollectionsView.js:
237         (WebInspector.CSSNamedFlowCollectionsView.prototype._regionOversetChanged):
238         (WebInspector.CSSNamedFlowCollectionsView.prototype.wasShown):
239         (WebInspector.CSSNamedFlowCollectionsView.prototype.willHide):
240         * inspector/front-end/CSSStyleModel.js:
241         (WebInspector.CSSStyleModel.prototype._regionOversetChanged):
242         (WebInspector.CSSDispatcher.prototype.regionLayoutUpdated):
243         (WebInspector.CSSDispatcher.prototype.regionOversetChanged):
244         * rendering/RenderNamedFlowThread.cpp:
245         (WebCore::RenderNamedFlowThread::dispatchRegionOversetChangeEvent):
246
247 2013-06-21  Sergio Correia  <sergio.correia@openbossa.org>
248
249         [EFL] NetworkStateNotifierEfl: Use closeWithRetry instead of looping for EINTR on close
250         https://bugs.webkit.org/show_bug.cgi?id=117872
251
252         Reviewed by Christophe Dumez.
253
254         closeWithRetry works around the Linux behavior of closing the file descriptor
255         unconditionally even if the close() call is interrupted.
256
257         No new tests, no behavior change.
258
259         * platform/network/efl/NetworkStateNotifierEfl.cpp:
260         (WebCore::NetworkStateNotifier::~NetworkStateNotifier): Use closeWithRetry instead of
261         looping for EINTR on close.
262
263 2013-06-21  Christophe Dumez  <ch.dumez@sisa.samsung.com>
264
265         REGRESSION (r150663): Using webkitAudioContext in Inspector makes it undefined everywhere
266         https://bugs.webkit.org/show_bug.cgi?id=117825
267
268         Reviewed by Kentaro Hara.
269
270         Partially revert r150663 so that we use Settings to enable WebAudio instead of
271         RuntimeEnabledFeatures.
272
273         Introduce a new [EnabledBySetting] IDL extended attribute which behaves similarly to
274         the existing [EnabledAtRuntime] but relies on Settings instead of RuntimeEnabledFeatures
275         to determine if the feature should be enabled. Make use of this new IDL attribute for
276         webkitAudioContext interface.
277
278         No new tests, no behavior change.
279
280         * Modules/webaudio/AudioContext.idl:
281         * WebCore.exp.in:
282         * WebCore.order:
283         * bindings/generic/RuntimeEnabledFeatures.cpp:
284         * bindings/generic/RuntimeEnabledFeatures.h:
285         * bindings/scripts/CodeGeneratorJS.pm:
286         (GenerateImplementation):
287         * bindings/scripts/IDLAttributes.txt:
288         * bindings/scripts/preprocess-idls.pl:
289         (GenerateConstructorAttribute):
290         * bindings/scripts/test/JS/JSTestObj.cpp:
291         (WebCore::jsTestObjTestSubObjEnabledBySettingConstructor):
292         (WebCore::setJSTestObjTestSubObjEnabledBySettingConstructor):
293         * bindings/scripts/test/JS/JSTestObj.h:
294         * bindings/scripts/test/ObjC/DOMTestObj.h:
295         * bindings/scripts/test/ObjC/DOMTestObj.mm:
296         (-[DOMTestObj TestSubObjEnabledBySetting]):
297         (-[DOMTestObj setTestSubObjEnabledBySetting:]):
298         * bindings/scripts/test/TestObj.idl:
299         * page/Settings.in:
300
301 2013-06-21  Krzysztof Czech  <k.czech@samsung.com>
302
303         [ATK] Added support for aria-required attribute.
304         https://bugs.webkit.org/show_bug.cgi?id=117730
305
306         Reviewed by Chris Fleizach.
307
308         Tests: accessibility/aria-required.html
309                accessibility/html5-required-attribute.html
310
311         The aria-required attribute is used to indicate that user input is required on an
312         element before a form can be submitted.
313
314         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
315         (setAtkStateSetFromCoreObject):
316
317 2013-06-21  Chris Fleizach  <cfleizach@apple.com>
318
319         IndieUI: Add basic IndieUI infrastructure
320         https://bugs.webkit.org/show_bug.cgi?id=117367
321
322         Unreviewed. Revert erroneous file that was included accidentally.
323
324         * accessibility/AccessibilityNodeObject.h:
325
326 2013-06-21  Chris Fleizach  <cfleizach@apple.com>
327
328         IndieUI: Add basic IndieUI infrastructure
329         https://bugs.webkit.org/show_bug.cgi?id=117367
330
331         Reviewed by Ryosuke Niwa.
332
333         IndieUI is a new W3C spec that aims to abstract the connection between input and action, so that
334         a user (possibly using assistive technologies like a screen reader) does not need a specific kind
335         of device (like a mouse) to interact with an object.
336         http://www.w3.org/WAI/IndieUI/
337
338         This initial patch adds in the basic support for UIRequestEvent and the uiactions attribute.
339         It modifies the config files to enable and build this feature.
340
341         Tests: indieui/create-uirequestevent.html
342                indieui/uiactions.html
343
344         * CMakeLists.txt:
345         * Configurations/FeatureDefines.xcconfig:
346         * DerivedSources.make:
347         * GNUmakefile.am:
348         * Modules/indieui: Added.
349         * Modules/indieui/UIRequestEvent.cpp: Added.
350         (WebCore::UIRequestEventInit::UIRequestEventInit):
351         (WebCore::UIRequestEvent::create):
352         (WebCore::UIRequestEvent::UIRequestEvent):
353         (WebCore::UIRequestEvent::~UIRequestEvent):
354         (WebCore::UIRequestEvent::interfaceName):
355         (WebCore::UIRequestEventDispatchMediator::UIRequestEventDispatchMediator):
356         (WebCore::UIRequestEventDispatchMediator::event):
357         (WebCore::UIRequestEventDispatchMediator::dispatchEvent):
358         * Modules/indieui/UIRequestEvent.h: Added.
359         (WebCore::UIRequestEvent::receiver):
360         (WebCore::UIRequestEventDispatchMediator::create):
361         * Modules/indieui/UIRequestEvent.idl: Added.
362         * WebCore.xcodeproj/project.pbxproj:
363         * accessibility/AccessibilityNodeObject.h:
364         * dom/Element.cpp:
365         (WebCore::Element::setUIActions):
366         (WebCore::Element::UIActions):
367         * dom/Element.h:
368         * dom/Element.idl:
369         * dom/Event.cpp:
370         (WebCore::EventInit::EventInit):
371         * dom/Event.h:
372         * dom/EventNames.in:
373         * dom/Node.cpp:
374         (WebCore::Node::dispatchUIRequestEvent):
375         * dom/Node.h:
376         * dom/UIEvent.cpp:
377         (WebCore::UIEventInit::UIEventInit):
378         * dom/UIEvent.h:
379         * html/HTMLAttributeNames.in:
380
381 2013-06-20  Ryosuke Niwa  <rniwa@webkit.org>
382
383         REGRESSION(r145788): mouse drag on canvas shouldn't start selection
384         https://bugs.webkit.org/show_bug.cgi?id=117860
385
386         Reviewed by Benjamin Poulain.
387
388         Like HTMLImageElement, HTMLCanvasElement shouldn't start selection.
389
390         Also uninline some virtual function overrides.
391
392         Test: fast/events/mosuedrag-on-canvas-should-not-start-selection.html
393
394         * html/HTMLCanvasElement.cpp:
395         (WebCore::HTMLCanvasElement::areAuthorShadowsAllowed):
396         (WebCore::HTMLCanvasElement::canContainRangeEndPoint):
397         (WebCore::HTMLCanvasElement::canStartSelection):
398         * html/HTMLCanvasElement.h:
399
400 2013-06-20  Ryosuke Niwa  <rniwa@webkit.org>
401
402         REGRESSION(r149652): accessing items in .children via id doesn't work when element is not rooted in DOM tree
403         https://bugs.webkit.org/show_bug.cgi?id=117836
404
405         Reviewed by Benjamin Poulain.
406
407         When the root node of a HTML collection is not in the document or in a shadow tree,
408         we shouldn't use its tree scope's id and name maps to find name getters.
409
410         Always use the slow path in such cases.
411
412         Test: fast/dom/htmlallcollection-detached-node-children.html
413
414         * html/HTMLCollection.cpp:
415         (WebCore::HTMLCollection::namedItem):
416
417 2013-06-20  Alexey Proskuryakov  <ap@apple.com>
418
419         https://bugs.webkit.org/show_bug.cgi?id=116495
420         Fix null-pointer deref in DocumentLoader::responseReceived()
421
422         Patch by Nate Chapin, reviewed by Mike West and myself.
423
424         Test: http/tests/security/XFrameOptions/x-frame-options-deny-delete-frame-in-load-event.html
425
426         * loader/DocumentLoader.cpp: (WebCore::DocumentLoader::responseReceived): Added
427         a null check.
428
429 2013-06-20  Roger Fong  <roger_fong@apple.com>
430
431         Unreviewed. Roll out part of r150618.
432
433         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
434
435 2013-06-20  Enrica Casucci  <enrica@apple.com>
436
437         Initial advance on the first glyph of the run is not correctly set for rtl text.
438         https://bugs.webkit.org/show_bug.cgi?id=117839
439         <rdar://problem/13860717>
440
441         Reviewed by Sam Weinig.
442
443         We need to set the initial advance to the glyphBuffer, using the
444         initial advance of the complex run that will be drawn first.
445         In order to choose the run correctly we must consider the text direction.
446
447         Test: fast/text/complex-first-glyph-with-initial-advance.html
448
449         * platform/graphics/mac/ComplexTextController.cpp:
450         (WebCore::ComplexTextController::advance):
451
452 2013-06-20  Alex Christensen  <achristensen@apple.com>
453
454         Fixed WebGL compile errors on Windows.
455         https://bugs.webkit.org/show_bug.cgi?id=117805
456
457         Reviewed by Brent Fulgham.
458
459         * html/canvas/WebGLRenderingContext.cpp: Included CString.h.
460         Added PLATFORM(WIN) to existing lists of platform macros.
461         * platform/graphics/ANGLEWebKitBridge.h:
462         * platform/graphics/GraphicsContext3D.h:
463         (WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap):
464         * platform/graphics/OpenGLESShims.h:
465
466 2013-06-20  Simon Fraser  <simon.fraser@apple.com>
467
468         FrameView needs to initialize paintsEntireContents on creation
469         https://bugs.webkit.org/show_bug.cgi?id=117844
470
471         Reviewed by Anders Carlsson.
472
473         In WebKit1, if the WebView is layer-backed, WebHTMLView gets a layer.
474         In this mode, FrameView::paintsEntireContents() is true. However,
475         we would only call setPaintsEntireContents(true) on the FrameView
476         when the view's layer-backed status changes. FrameView also needs
477         to fetch this state when it is initialized, because we may be creating
478         a new FrameView for an already layer-backed WebHTMLView.
479
480         * page/ChromeClient.h:
481         (WebCore::ChromeClient::shouldPaintEntireContents):
482         * page/FrameView.cpp:
483         (WebCore::FrameView::init):
484
485 2013-06-20  Simon Fraser  <simon.fraser@apple.com>
486
487         Sticky elements are missing or misplaced sometimes when reloading a page that scrolls to a named anchor
488         https://bugs.webkit.org/show_bug.cgi?id=117819
489
490         Reviewed by Anders Carlsson.
491         
492         At the end of FrameView::performPostLayoutTasks() we call scrollToAnchor() which attempts
493         to restore the scroll position to a named anchor, even when the document has been
494         changed by layout. This ends up in a call to ScrollView::scrollTo(), which in turn
495         calls repaintFixedElementsAfterScrolling(). However, repaintFixedElementsAfterScrolling()
496         would bail if m_nestedLayoutCount != 0, so we never updated layer positions which
497         depend on scroll position (but which would not be updated by layout, since their
498         renderers are not marked for layout when scrolling happens).
499         
500         We've solved this problem once before in updateFixedElementsAfterScrolling() which
501         checks for m_nestedLayoutCount <= 1, so that we do work on the outermost nested layout.
502         Apply that same fix to repaintFixedElementsAfterScrolling().
503
504         Very timing-dependent, so hard to make a test.
505
506         * page/FrameView.cpp:
507         (WebCore::FrameView::repaintFixedElementsAfterScrolling):
508
509 2013-06-20  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
510
511         HashSet: reverse the order of the template arguments at alternate 'find', 'contains' and 'add' methods
512         https://bugs.webkit.org/show_bug.cgi?id=117830
513
514         Reviewed by Anders Carlsson.
515
516         The order of the template arguments at HashSet alternate 'find', 'contains' and
517         'add' methods is reversed so that callers can just pass the translator
518         and let the compiler deduce input argument type.
519
520         No new tests. No new functionality.
521
522         * dom/QualifiedName.cpp:
523         (WebCore::QualifiedName::QualifiedName):
524         * platform/graphics/cg/SubimageCacheWithTimer.cpp:
525         (WebCore::SubimageCacheWithTimer::getSubimage):
526         * svg/SVGAElement.cpp:
527         (WebCore::SVGAElement::isSupportedAttribute):
528         * svg/SVGAnimateMotionElement.cpp:
529         (WebCore::SVGAnimateMotionElement::isSupportedAttribute):
530         * svg/SVGAnimateTransformElement.cpp:
531         (WebCore::SVGAnimateTransformElement::isSupportedAttribute):
532         * svg/SVGAnimationElement.cpp:
533         (WebCore::SVGAnimationElement::isSupportedAttribute):
534         * svg/SVGCircleElement.cpp:
535         (WebCore::SVGCircleElement::isSupportedAttribute):
536         * svg/SVGClipPathElement.cpp:
537         (WebCore::SVGClipPathElement::isSupportedAttribute):
538         * svg/SVGComponentTransferFunctionElement.cpp:
539         (WebCore::SVGComponentTransferFunctionElement::isSupportedAttribute):
540         * svg/SVGCursorElement.cpp:
541         (WebCore::SVGCursorElement::isSupportedAttribute):
542         * svg/SVGEllipseElement.cpp:
543         (WebCore::SVGEllipseElement::isSupportedAttribute):
544         * svg/SVGFEBlendElement.cpp:
545         (WebCore::SVGFEBlendElement::isSupportedAttribute):
546         * svg/SVGFEColorMatrixElement.cpp:
547         (WebCore::SVGFEColorMatrixElement::isSupportedAttribute):
548         * svg/SVGFEComponentTransferElement.cpp:
549         (WebCore::SVGFEComponentTransferElement::isSupportedAttribute):
550         * svg/SVGFECompositeElement.cpp:
551         (WebCore::SVGFECompositeElement::isSupportedAttribute):
552         * svg/SVGFEConvolveMatrixElement.cpp:
553         (WebCore::SVGFEConvolveMatrixElement::isSupportedAttribute):
554         * svg/SVGFEDiffuseLightingElement.cpp:
555         (WebCore::SVGFEDiffuseLightingElement::isSupportedAttribute):
556         * svg/SVGFEDisplacementMapElement.cpp:
557         (WebCore::SVGFEDisplacementMapElement::isSupportedAttribute):
558         * svg/SVGFEDropShadowElement.cpp:
559         (WebCore::SVGFEDropShadowElement::isSupportedAttribute):
560         * svg/SVGFEGaussianBlurElement.cpp:
561         (WebCore::SVGFEGaussianBlurElement::isSupportedAttribute):
562         * svg/SVGFEImageElement.cpp:
563         (WebCore::SVGFEImageElement::isSupportedAttribute):
564         * svg/SVGFELightElement.cpp:
565         (WebCore::SVGFELightElement::isSupportedAttribute):
566         * svg/SVGFEMergeNodeElement.cpp:
567         (WebCore::SVGFEMergeNodeElement::isSupportedAttribute):
568         * svg/SVGFEMorphologyElement.cpp:
569         (WebCore::SVGFEMorphologyElement::isSupportedAttribute):
570         * svg/SVGFEOffsetElement.cpp:
571         (WebCore::SVGFEOffsetElement::isSupportedAttribute):
572         * svg/SVGFESpecularLightingElement.cpp:
573         (WebCore::SVGFESpecularLightingElement::isSupportedAttribute):
574         * svg/SVGFETileElement.cpp:
575         (WebCore::SVGFETileElement::isSupportedAttribute):
576         * svg/SVGFETurbulenceElement.cpp:
577         (WebCore::SVGFETurbulenceElement::isSupportedAttribute):
578         * svg/SVGFilterElement.cpp:
579         (WebCore::SVGFilterElement::isSupportedAttribute):
580         (WebCore::SVGFilterElement::childShouldCreateRenderer):
581         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
582         (WebCore::SVGFilterPrimitiveStandardAttributes::isSupportedAttribute):
583         * svg/SVGForeignObjectElement.cpp:
584         (WebCore::SVGForeignObjectElement::isSupportedAttribute):
585         * svg/SVGGElement.cpp:
586         (WebCore::SVGGElement::isSupportedAttribute):
587         * svg/SVGGradientElement.cpp:
588         (WebCore::SVGGradientElement::isSupportedAttribute):
589         * svg/SVGImageElement.cpp:
590         (WebCore::SVGImageElement::isSupportedAttribute):
591         * svg/SVGLineElement.cpp:
592         (WebCore::SVGLineElement::isSupportedAttribute):
593         * svg/SVGLinearGradientElement.cpp:
594         (WebCore::SVGLinearGradientElement::isSupportedAttribute):
595         * svg/SVGMPathElement.cpp:
596         (WebCore::SVGMPathElement::isSupportedAttribute):
597         * svg/SVGMarkerElement.cpp:
598         (WebCore::SVGMarkerElement::isSupportedAttribute):
599         * svg/SVGMaskElement.cpp:
600         (WebCore::SVGMaskElement::isSupportedAttribute):
601         * svg/SVGPathElement.cpp:
602         (WebCore::SVGPathElement::isSupportedAttribute):
603         * svg/SVGPatternElement.cpp:
604         (WebCore::SVGPatternElement::isSupportedAttribute):
605         * svg/SVGPolyElement.cpp:
606         (WebCore::SVGPolyElement::isSupportedAttribute):
607         * svg/SVGRadialGradientElement.cpp:
608         (WebCore::SVGRadialGradientElement::isSupportedAttribute):
609         * svg/SVGRectElement.cpp:
610         (WebCore::SVGRectElement::isSupportedAttribute):
611         * svg/SVGScriptElement.cpp:
612         (WebCore::SVGScriptElement::isSupportedAttribute):
613         * svg/SVGStopElement.cpp:
614         (WebCore::SVGStopElement::isSupportedAttribute):
615         * svg/SVGStyleElement.cpp:
616         (WebCore::SVGStyleElement::isSupportedAttribute):
617         * svg/SVGStyledTransformableElement.cpp:
618         (WebCore::SVGStyledTransformableElement::isSupportedAttribute):
619         * svg/SVGSymbolElement.cpp:
620         (WebCore::SVGSymbolElement::isSupportedAttribute):
621         * svg/SVGTRefElement.cpp:
622         (WebCore::SVGTRefElement::isSupportedAttribute):
623         * svg/SVGTextContentElement.cpp:
624         (WebCore::SVGTextContentElement::isSupportedAttribute):
625         * svg/SVGTextElement.cpp:
626         (WebCore::SVGTextElement::isSupportedAttribute):
627         * svg/SVGTextPathElement.cpp:
628         (WebCore::SVGTextPathElement::isSupportedAttribute):
629         * svg/SVGTextPositioningElement.cpp:
630         (WebCore::SVGTextPositioningElement::isSupportedAttribute):
631         * svg/SVGUseElement.cpp:
632         (WebCore::SVGUseElement::isSupportedAttribute):
633         (WebCore::isDisallowedElement):
634         * svg/SVGViewElement.cpp:
635         (WebCore::SVGViewElement::isSupportedAttribute):
636         * svg/animation/SVGSMILElement.cpp:
637         (WebCore::SVGSMILElement::isSupportedAttribute):
638
639 2013-06-20  Commit Queue  <commit-queue@webkit.org>
640
641         Unreviewed, rolling out r151451.
642         http://trac.webkit.org/changeset/151451
643         https://bugs.webkit.org/show_bug.cgi?id=117848
644
645         "Broke quite a lot of sites" (Requested by rhogan on #webkit).
646
647         * rendering/RenderBox.cpp:
648         (WebCore::RenderBox::computePositionedLogicalWidth):
649         (WebCore::RenderBox::computePositionedLogicalHeight):
650         * rendering/RenderBox.h:
651         (WebCore::RenderBox::intrinsicSize):
652         * rendering/RenderButton.h:
653         * rendering/RenderListBox.cpp:
654         (WebCore::RenderListBox::RenderListBox):
655         (WebCore::RenderListBox::computeLogicalHeight):
656         * rendering/RenderListBox.h:
657         * rendering/RenderMenuList.h:
658         * rendering/RenderReplaced.h:
659         * rendering/RenderTextControl.cpp:
660         (WebCore::RenderTextControl::RenderTextControl):
661         (WebCore::RenderTextControl::computeLogicalHeight):
662         * rendering/RenderTextControl.h:
663
664 2013-06-20  Commit Queue  <commit-queue@webkit.org>
665
666         Unreviewed, rolling out r151788.
667         http://trac.webkit.org/changeset/151788
668         https://bugs.webkit.org/show_bug.cgi?id=117847
669
670         "This is the wrong fix" (Requested by rhogan on #webkit).
671
672         * rendering/RenderTextControl.cpp:
673         (WebCore::RenderTextControl::computeLogicalHeight):
674         (WebCore::RenderTextControl::computePreferredLogicalWidths):
675
676 2013-05-24  Balazs Kelemen  <kbalazs@webkit.org>
677
678         [Gstreamer] cleanup buffering and state updates
679         https://bugs.webkit.org/show_bug.cgi?id=116642
680
681         Reviewed by Philippe Normand.
682
683         Covered by existing media tests, especially the ones that have been unskipped.
684
685         Always do download buffering. It should not differ if preload is "none" because
686         it's about when to start buffering, not about how. Fix a bunch other subtle issues
687         to make this change go smoothly with the tests. As a bonus some tests that were
688         failing so far started to pass.
689         It is possible to further tweak the buffering in a way that will enable us to support
690         a different and appropriate behavior for preload="metadata" but it should be managed
691         a bit differently. I will implement it in a follow-up.
692
693         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
694         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
695         (WebCore::MediaPlayerPrivateGStreamer::load): Don't call setDownloadBuffering
696         yet. Now it also responsible for starting the fill timer and it turned out that
697         setting the download flag before the pipeline is set to a state has negative
698         effect on some tests. Most probably GStreamer starts buffering too early if
699         we set the download flag.
700         (WebCore::MediaPlayerPrivateGStreamer::commitLoad): Call setDownloadBuffering now.
701         (WebCore::MediaPlayerPrivateGStreamer::play): Ditto, plus set m_delayingLoad to false
702         because otherwise setPreload will wrongly assume that the load has not been committed
703         yet if prepareToPlay is not called before play.
704         (WebCore::MediaPlayerPrivateGStreamer::pause): Make sure we don't commit a load here
705         if it was not committed yet by looking in the pipeline state.
706         (WebCore::MediaPlayerPrivateGStreamer::processBufferingStats): No need to observe the
707         type of buffering.
708         (WebCore::MediaPlayerPrivateGStreamer::fillTimerFired): Introduced m_downloadFinished to update
709         ready and network states in updateStates based on it. The previously used condition
710         - (maxTimeLoaded() == duration()) - was not correct in the case when duration is not known.
711         (WebCore::MediaPlayerPrivateGStreamer::maxTimeLoaded): Removed a lie. If the fill timer is not active
712         it does not necesarily means that download has been finished. This lie was actually ensuring
713         a lot of tests to pass because it made the condition (maxTimeLoaded() == duration()) true.
714         Now that state updates has been cleaned up we don't need to lie.
715         (WebCore::MediaPlayerPrivateGStreamer::updateStates): Merge all the parts that takes part in updating
716         ready and network states. It was untrackable. Unset download buffering for for live streams early so
717         we don't need to restart them.
718         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
719         (MediaPlayerPrivateGStreamer): Removed m_startedBuffering because there is no need for it now.
720
721 2013-06-20  Eric Carlson  <eric.carlson@apple.com>
722
723         ASSERT removing then adding a <track> element
724         https://bugs.webkit.org/show_bug.cgi?id=117814
725
726         Reviewed by Jer Noble.
727
728         Test: media/track/add-and-remove-track.html
729
730         * html/HTMLTrackElement.cpp:
731         (WebCore::HTMLTrackElement::insertedInto): Always call ensureTrack before adding the track
732             to the parent <video> element.
733         (WebCore::HTMLTrackElement::ensureTrack): Call m_track->setTrackElement() in case the
734             parent was cleared after m_track was created.
735
736         * html/track/LoadableTextTrack.cpp:
737         (WebCore::LoadableTextTrack::setTrackElement): New, set m_trackElement.
738         * html/track/LoadableTextTrack.h:
739
740 2013-06-20  Roger Fong  <roger_fong@apple.com>
741
742         Unreviewed. Build fix for Apple Windows port.
743
744         * rendering/RenderThemeWin.cpp:
745         (WebCore::cssValueIdToSysColorIndex):
746
747 2013-06-20  Alexey Proskuryakov  <ap@apple.com>
748
749         [Mac] Downloaded file name encoding is incorrect when download link opens in a new window
750         https://bugs.webkit.org/show_bug.cgi?id=117818
751         <rdar://problem/14212635>
752
753         Reviewed by Brady Eidson.
754
755         No tests added. The machinery we have for logging downloaded file name is very
756         far from being able to work in a secondary window.
757
758         * loader/FrameLoader.cpp: (WebCore::FrameLoader::addExtraFieldsToRequest):
759         Made a targeted fix - don't update encoding fallback array if we already have one,
760         there is no chance for it to be more correct. In this case, it's incorrect because
761         it comes from a new blank window, instead of original referer.
762         We have a lot of code in addExtraFieldsToRequest() to struggle with this, and we have
763         a FIXME to try not calling it from policy delegate.
764
765 2013-06-18  Robert Hogan  <robert@webkit.org>
766
767         REGRESSION (r151451): Text not vertically centered correctly on icloud.com
768         https://bugs.webkit.org/show_bug.cgi?id=117744
769
770         Reviewed by David Hyatt.
771
772         The positioned height and width computation adds in the element's border and padding so 
773         don't add it to the intrinsic height and preferred widths of text controls that are
774         absolutely positioned.
775
776         Test: fast/replaced/height-of-positioned-text-control.html
777
778         * rendering/RenderTextControl.cpp:
779         (WebCore::RenderTextControl::computeLogicalHeight):
780         (WebCore::RenderTextControl::computePreferredLogicalWidths):
781
782 2013-06-20  Roger Fong  <roger_fong@apple.com>
783
784         Make Windows makefile copy build output to a different folder.
785         <rdar://problem/14219184>.
786
787         * WebCore.vcxproj/WebCore.make:
788
789 2013-06-19  Jer Noble  <jer.noble@apple.com>
790
791         Roll-on in-band captions are displayed bottom-to-top rather than top-to-bottom.
792         https://bugs.webkit.org/show_bug.cgi?id=117811
793
794         Reviewed by Eric Carlson.
795
796         When comparing Generic cues, we should check that their type is Generic, not WebVTT.
797
798         * html/track/TextTrackCueGeneric.cpp:
799         (WebCore::TextTrackCueGeneric::isOrderedBefore):
800
801 2013-06-20  Ralph Thomas  <ralpht@gmail.com>
802
803         [CMake][CSS Shaders] Add WebCore files for CSS Shaders to CMakeLists.txt
804         https://bugs.webkit.org/show_bug.cgi?id=117711
805
806         Reviewed by Laszlo Gombos.
807
808         No new tests, no CMake platforms currently enable this functionality.
809
810         * CMakeLists.txt:
811
812 2013-06-20  Alexis Menard  <alexis@webkit.org>
813
814         Cleanup usage of CSSPropertyID and CSSValueID inside WebKit.
815         https://bugs.webkit.org/show_bug.cgi?id=117829
816
817         Reviewed by Andreas Kling.
818
819         A lot of call sites were using integers to represent them. While it's
820         not incorrect per se, it's not ideal for various reason such as type
821         safety or to remove ambiguity.
822
823         This patch eradicate the wrong usage by not letting any integer based
824         API for getting CSSValueIDs or CSSPropertyIDs from CSSPrimitiveValues.
825
826         Instead we use new but typed functions to construct the values as well
827         as getting them. Two customs and internal types were added to CSSPrimitiveValue
828         to handle correctly the new APIs.
829
830         It's good to note that in order to preserve compatibility on the
831         CSSPrimitiveValue type whenever CSSPrimitiveValue handles a CSSValueID
832         or a CSSPropertyID the return type for the public API will be CSS_IDENT
833         despite it is a separate internal type.
834
835         No new tests: refactor, existing tests should cover.
836
837         * css/CSSComputedStyleDeclaration.cpp:
838         (WebCore::ComputedStyleExtractor::propertyMatches):
839         * css/CSSFontSelector.cpp:
840         (WebCore::CSSFontSelector::addFontFaceRule):
841         * css/CSSGradientValue.cpp:
842         (WebCore::positionFromValue):
843         (WebCore::CSSLinearGradientValue::customCssText):
844         (WebCore::CSSLinearGradientValue::createGradient):
845         (WebCore::CSSRadialGradientValue::customCssText):
846         (WebCore::CSSRadialGradientValue::createGradient):
847         * css/CSSParser.cpp:
848         (WebCore::CSSParser::parseSystemColor):
849         (WebCore::isFillPositionKeyword):
850         (WebCore::CSSParser::parse4ValuesFillPosition):
851         (WebCore::CSSParser::parse3ValuesFillPosition):
852         (WebCore::CSSParser::parseFillPosition):
853         (WebCore::CSSParser::parseFillRepeat):
854         (WebCore::CSSParser::parseRadialGradient):
855         (WebCore::CSSParser::isBlendMode):
856         (WebCore::CSSParser::isCompositeOperator):
857         * css/CSSParser.h:
858         * css/CSSParserValues.cpp:
859         (WebCore::CSSParserValue::createCSSValue):
860         * css/CSSPrimitiveValue.cpp:
861         (WebCore::isValidCSSUnitTypeForDoubleConversion):
862         (WebCore::CSSPrimitiveValue::primitiveType):
863         (WebCore::propertyName):
864         (WebCore::valueName):
865         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
866         (WebCore::CSSPrimitiveValue::cleanup):
867         (WebCore::CSSPrimitiveValue::getStringValue):
868         (WebCore::CSSPrimitiveValue::customCssText):
869         (WebCore::CSSPrimitiveValue::cloneForCSSOM):
870         (WebCore::CSSPrimitiveValue::equals):
871         * css/CSSPrimitiveValue.h:
872         (WebCore::CSSPrimitiveValue::isFontRelativeLength):
873         (WebCore::CSSPrimitiveValue::isValueID):
874         (WebCore::CSSPrimitiveValue::createIdentifier):
875         (WebCore::CSSPrimitiveValue::createParserOperator):
876         (WebCore::CSSPrimitiveValue::getPropertyID):
877         (WebCore::CSSPrimitiveValue::getValueID):
878         * css/CSSPrimitiveValueMappings.h:
879         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
880         (WebCore::CSSPrimitiveValue::operator CSSReflectionDirection):
881         (WebCore::CSSPrimitiveValue::operator ColumnSpan):
882         (WebCore::CSSPrimitiveValue::operator PrintColorAdjust):
883         (WebCore::CSSPrimitiveValue::operator EBorderStyle):
884         (WebCore::CSSPrimitiveValue::operator OutlineIsAuto):
885         (WebCore::CSSPrimitiveValue::operator CompositeOperator):
886         (WebCore::CSSPrimitiveValue::operator ControlPart):
887         (WebCore::CSSPrimitiveValue::operator EBackfaceVisibility):
888         (WebCore::CSSPrimitiveValue::operator EFillAttachment):
889         (WebCore::CSSPrimitiveValue::operator EFillBox):
890         (WebCore::CSSPrimitiveValue::operator EFillRepeat):
891         (WebCore::CSSPrimitiveValue::operator EBoxPack):
892         (WebCore::CSSPrimitiveValue::operator EBoxAlignment):
893         (WebCore::CSSPrimitiveValue::operator EBoxDecorationBreak):
894         (WebCore::CSSPrimitiveValue::operator BackgroundEdgeOrigin):
895         (WebCore::CSSPrimitiveValue::operator EBoxSizing):
896         (WebCore::CSSPrimitiveValue::operator EBoxDirection):
897         (WebCore::CSSPrimitiveValue::operator EBoxLines):
898         (WebCore::CSSPrimitiveValue::operator EBoxOrient):
899         (WebCore::CSSPrimitiveValue::operator ECaptionSide):
900         (WebCore::CSSPrimitiveValue::operator EClear):
901         (WebCore::CSSPrimitiveValue::operator ECursor):
902         (WebCore::CSSPrimitiveValue::operator CursorVisibility):
903         (WebCore::CSSPrimitiveValue::operator EDisplay):
904         (WebCore::CSSPrimitiveValue::operator EEmptyCell):
905         (WebCore::CSSPrimitiveValue::operator EAlignItems):
906         (WebCore::CSSPrimitiveValue::operator EJustifyContent):
907         (WebCore::CSSPrimitiveValue::operator EFlexDirection):
908         (WebCore::CSSPrimitiveValue::operator EAlignContent):
909         (WebCore::CSSPrimitiveValue::operator EFlexWrap):
910         (WebCore::CSSPrimitiveValue::operator EFloat):
911         (WebCore::CSSPrimitiveValue::operator LineBreak):
912         (WebCore::CSSPrimitiveValue::operator EListStylePosition):
913         (WebCore::CSSPrimitiveValue::operator EListStyleType):
914         (WebCore::CSSPrimitiveValue::operator EMarginCollapse):
915         (WebCore::CSSPrimitiveValue::operator EMarqueeBehavior):
916         (WebCore::CSSPrimitiveValue::operator RegionFragment):
917         (WebCore::CSSPrimitiveValue::operator EMarqueeDirection):
918         (WebCore::CSSPrimitiveValue::operator ENBSPMode):
919         (WebCore::CSSPrimitiveValue::operator EOverflow):
920         (WebCore::CSSPrimitiveValue::operator EPageBreak):
921         (WebCore::CSSPrimitiveValue::operator EPosition):
922         (WebCore::CSSPrimitiveValue::operator EResize):
923         (WebCore::CSSPrimitiveValue::operator ETableLayout):
924         (WebCore::CSSPrimitiveValue::operator ETextAlign):
925         (WebCore::CSSPrimitiveValue::operator TextAlignLast):
926         (WebCore::CSSPrimitiveValue::operator TextJustify):
927         (WebCore::CSSPrimitiveValue::operator TextDecoration):
928         (WebCore::CSSPrimitiveValue::operator TextDecorationStyle):
929         (WebCore::CSSPrimitiveValue::operator TextUnderlinePosition):
930         (WebCore::CSSPrimitiveValue::operator ETextSecurity):
931         (WebCore::CSSPrimitiveValue::operator ETextTransform):
932         (WebCore::CSSPrimitiveValue::operator EUnicodeBidi):
933         (WebCore::CSSPrimitiveValue::operator EUserDrag):
934         (WebCore::CSSPrimitiveValue::operator EUserModify):
935         (WebCore::CSSPrimitiveValue::operator EUserSelect):
936         (WebCore::CSSPrimitiveValue::operator EVerticalAlign):
937         (WebCore::CSSPrimitiveValue::operator EVisibility):
938         (WebCore::CSSPrimitiveValue::operator EWhiteSpace):
939         (WebCore::CSSPrimitiveValue::operator EWordBreak):
940         (WebCore::CSSPrimitiveValue::operator EOverflowWrap):
941         (WebCore::CSSPrimitiveValue::operator TextDirection):
942         (WebCore::CSSPrimitiveValue::operator WritingMode):
943         (WebCore::CSSPrimitiveValue::operator TextCombine):
944         (WebCore::CSSPrimitiveValue::operator RubyPosition):
945         (WebCore::CSSPrimitiveValue::operator TextEmphasisPosition):
946         (WebCore::CSSPrimitiveValue::operator TextOverflow):
947         (WebCore::CSSPrimitiveValue::operator TextEmphasisFill):
948         (WebCore::CSSPrimitiveValue::operator TextEmphasisMark):
949         (WebCore::CSSPrimitiveValue::operator TextOrientation):
950         (WebCore::CSSPrimitiveValue::operator EPointerEvents):
951         (WebCore::CSSPrimitiveValue::operator FontDescription::Kerning):
952         (WebCore::CSSPrimitiveValue::operator FontSmoothingMode):
953         (WebCore::CSSPrimitiveValue::operator FontWeight):
954         (WebCore::CSSPrimitiveValue::operator FontItalic):
955         (WebCore::CSSPrimitiveValue::operator FontSmallCaps):
956         (WebCore::CSSPrimitiveValue::operator TextRenderingMode):
957         (WebCore::CSSPrimitiveValue::operator ColorSpace):
958         (WebCore::CSSPrimitiveValue::operator Hyphens):
959         (WebCore::CSSPrimitiveValue::operator LineSnap):
960         (WebCore::CSSPrimitiveValue::operator LineAlign):
961         (WebCore::CSSPrimitiveValue::operator Order):
962         (WebCore::CSSPrimitiveValue::operator ESpeak):
963         (WebCore::CSSPrimitiveValue::operator BlendMode):
964         (WebCore::CSSPrimitiveValue::operator LineCap):
965         (WebCore::CSSPrimitiveValue::operator LineJoin):
966         (WebCore::CSSPrimitiveValue::operator WindRule):
967         (WebCore::CSSPrimitiveValue::operator EAlignmentBaseline):
968         (WebCore::CSSPrimitiveValue::operator EBorderCollapse):
969         (WebCore::CSSPrimitiveValue::operator EBorderFit):
970         (WebCore::CSSPrimitiveValue::operator EImageRendering):
971         (WebCore::CSSPrimitiveValue::operator ETransformStyle3D):
972         (WebCore::CSSPrimitiveValue::operator ColumnAxis):
973         (WebCore::CSSPrimitiveValue::operator ColumnProgression):
974         (WebCore::CSSPrimitiveValue::operator WrapFlow):
975         (WebCore::CSSPrimitiveValue::operator WrapThrough):
976         (WebCore::CSSPrimitiveValue::operator GridAutoFlow):
977         (WebCore::CSSPrimitiveValue::convertToLength):
978         (WebCore::CSSPrimitiveValue::operator EBufferedRendering):
979         (WebCore::CSSPrimitiveValue::operator EColorInterpolation):
980         (WebCore::CSSPrimitiveValue::operator EColorRendering):
981         (WebCore::CSSPrimitiveValue::operator EDominantBaseline):
982         (WebCore::CSSPrimitiveValue::operator EShapeRendering):
983         (WebCore::CSSPrimitiveValue::operator ETextAnchor):
984         (WebCore::CSSPrimitiveValue::operator SVGWritingMode):
985         (WebCore::CSSPrimitiveValue::operator EVectorEffect):
986         (WebCore::CSSPrimitiveValue::operator EMaskType):
987         * css/CSSToStyleMap.cpp:
988         (WebCore::CSSToStyleMap::mapFillAttachment):
989         (WebCore::CSSToStyleMap::mapFillSize):
990         (WebCore::CSSToStyleMap::mapAnimationDirection):
991         (WebCore::CSSToStyleMap::mapAnimationFillMode):
992         (WebCore::CSSToStyleMap::mapAnimationIterationCount):
993         (WebCore::CSSToStyleMap::mapAnimationName):
994         (WebCore::CSSToStyleMap::mapAnimationPlayState):
995         (WebCore::CSSToStyleMap::mapAnimationProperty):
996         (WebCore::CSSToStyleMap::mapAnimationTimingFunction):
997         (WebCore::CSSToStyleMap::mapNinePieceImageQuad):
998         (WebCore::CSSToStyleMap::mapNinePieceImageRepeat):
999         * css/Counter.h:
1000         (WebCore::Counter::listStyleIdent):
1001         * css/DeprecatedStyleBuilder.cpp:
1002         (WebCore::ApplyPropertyNumber::applyValue):
1003         (WebCore::ApplyPropertyAuto::applyValue):
1004         (WebCore::ApplyPropertyClip::applyValue):
1005         (WebCore::ApplyPropertyColor::applyValue):
1006         (WebCore::ApplyPropertyLength::applyValue):
1007         (WebCore::ApplyPropertyString::applyValue):
1008         (WebCore::ApplyPropertyComputeLength::applyValue):
1009         (WebCore::ApplyPropertyFontFamily::applyValue):
1010         (WebCore::ApplyPropertyFontSize::applyValue):
1011         (WebCore::ApplyPropertyFontWeight::applyValue):
1012         (WebCore::ApplyPropertyFontVariantLigatures::applyValue):
1013         (WebCore::ApplyPropertyCounter::applyValue):
1014         (WebCore::ApplyPropertyCursor::applyValue):
1015         (WebCore::ApplyPropertyTextAlign::applyValue):
1016         (WebCore::ApplyPropertyMarqueeIncrement::applyValue):
1017         (WebCore::ApplyPropertyMarqueeRepetition::applyValue):
1018         (WebCore::ApplyPropertyMarqueeSpeed::applyValue):
1019         (WebCore::ApplyPropertyLineHeight::applyValue):
1020         (WebCore::ApplyPropertyPageSize::getPageSizeFromName):
1021         (WebCore::ApplyPropertyPageSize::applyValue):
1022         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue):
1023         (WebCore::ApplyPropertyResize::applyValue):
1024         (WebCore::ApplyPropertyVerticalAlign::applyValue):
1025         (WebCore::ApplyPropertyZoom::applyValue):
1026         (WebCore::ApplyPropertyClipPath::applyValue):
1027         (WebCore::ApplyPropertyShape::applyValue):
1028         (WebCore::ApplyPropertyImageResolution::applyValue):
1029         (WebCore::ApplyPropertyTextIndent::applyValue):
1030         * css/MediaQueryEvaluator.cpp:
1031         (WebCore::orientationMediaFeatureEval):
1032         (WebCore::view_modeMediaFeatureEval):
1033         (WebCore::pointerMediaFeatureEval):
1034         * css/SVGCSSParser.cpp:
1035         (WebCore::CSSParser::parseSVGValue):
1036         * css/SVGCSSStyleSelector.cpp:
1037         (WebCore::StyleResolver::applySVGProperty):
1038         * css/StylePropertySet.cpp:
1039         (WebCore::StylePropertySet::getLayeredShorthandValue):
1040         * css/StyleResolver.cpp:
1041         (WebCore::createGridTrackBreadth):
1042         (WebCore::createGridTrackList):
1043         (WebCore::createGridPosition):
1044         (WebCore::StyleResolver::applyProperty):
1045         (WebCore::colorForCSSValue):
1046         (WebCore::StyleResolver::colorFromPrimitiveValueIsDerivedFromElement):
1047         (WebCore::StyleResolver::colorFromPrimitiveValue):
1048         (WebCore::StyleResolver::createCustomFilterOperationWithInlineSyntax):
1049         (WebCore::StyleResolver::createFilterOperations):
1050         * css/ViewportStyleResolver.cpp:
1051         (WebCore::ViewportStyleResolver::getViewportArgumentValue):
1052         * css/WebKitCSSMatrix.cpp:
1053         (WebCore::WebKitCSSMatrix::setMatrixValue):
1054         * editing/ApplyStyleCommand.cpp:
1055         (WebCore::toIdentifier):
1056         * editing/EditingStyle.cpp:
1057         (WebCore::identifierForStyleProperty):
1058         (WebCore::HTMLElementEquivalent::create):
1059         (WebCore::HTMLElementEquivalent::HTMLElementEquivalent):
1060         (WebCore::HTMLElementEquivalent::valueIsPresentInStyle):
1061         (WebCore::HTMLTextDecorationEquivalent::create):
1062         (WebCore::HTMLTextDecorationEquivalent::HTMLTextDecorationEquivalent):
1063         (WebCore::EditingStyle::textDirection):
1064         (WebCore::EditingStyle::prepareToApplyAt):
1065         (WebCore::EditingStyle::textDirectionForSelection):
1066         (WebCore::fontWeightIsBold):
1067         (WebCore::legacyFontSizeFromCSSValue):
1068         (WebCore::isTransparentColorValue):
1069         * editing/EditingStyle.h:
1070         * editing/markup.cpp:
1071         (WebCore::propertyMissingOrEqualToNone):
1072         * platform/blackberry/RenderThemeBlackBerry.cpp:
1073         (WebCore::RenderThemeBlackBerry::systemFont):
1074         * platform/blackberry/RenderThemeBlackBerry.h:
1075         (WebCore::RenderThemeBlackBerry::systemFont):
1076         * platform/blackberry/RenderThemeEfl.cpp:
1077         (WebCore::RenderThemeEfl::systemFont):
1078         * platform/blackberry/RenderThemeEfl.h:
1079         (WebCore::RenderThemeEfl::systemFont):
1080         * platform/gtk/RenderThemeGtk.cpp:
1081         (WebCore::RenderThemeGtk::systemFont):
1082         * platform/gtk/RenderThemeGtk.h:
1083         * platform/gtk/RenderThemeGtk2.cpp:
1084         (WebCore::RenderThemeGtk::systemColor):
1085         * platform/gtk/RenderThemeGtk3.cpp:
1086         (WebCore::RenderThemeGtk::systemColor):
1087         * platform/qt/RenderThemeQt.cpp:
1088         (WebCore::RenderThemeQt::systemFont):
1089         (WebCore::RenderThemeQt::systemColor):
1090         * platform/qt/RenderThemeQt.h:
1091         * rendering/RenderTheme.cpp:
1092         (WebCore::RenderTheme::systemColor):
1093         * rendering/RenderTheme.h:
1094         * rendering/RenderThemeMac.h:
1095         * rendering/RenderThemeMac.mm:
1096         (WebCore::RenderThemeMac::systemFont):
1097         (WebCore::RenderThemeMac::systemColor):
1098         * rendering/RenderThemeSafari.h:
1099         (WebCore::RenderThemeSafari::systemFont):
1100         * rendering/RenderThemeSafari.cpp:
1101         (WebCore::RenderThemeSafari::systemFont):
1102         * rendering/RenderThemeWin.cpp:
1103         (WebCore::RenderThemeWin::systemFont):
1104         (WebCore::cssValueIdToSysColorIndex):
1105         (WebCore::RenderThemeWin::systemColor):
1106         * rendering/RenderThemeWin.h:
1107         * rendering/RenderThemeWinCE.cpp:
1108         (WebCore::RenderThemeWinCE::systemFont):
1109         (WebCore::cssValueIdToSysColorIndex):
1110         (WebCore::RenderThemeWinCE::systemColor):
1111         * rendering/RenderThemeWinCE.h:
1112
1113 2013-06-19  Brent Fulgham  <bfulgham@apple.com>
1114
1115         AX: List Items should support a default action
1116         https://bugs.webkit.org/show_bug.cgi?id=117812
1117
1118         Reviewed by Chris Fleizach.
1119
1120         * accessibility/AccessibilityObject.cpp:
1121         (WebCore::AccessibilityObject::actionVerb): Provide a "select" verb
1122         for use in ListItemRole objects.
1123         * platform/LocalizedStrings.cpp:
1124         (WebCore::AXListItemActionVerb): Added.
1125         * platform/LocalizedStrings.h:
1126         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
1127         (WebCore::AXListItemActionVerb):
1128         * platform/efl/LocalizedStringsEfl.cpp:
1129         (WebCore::AXListItemActionVerb):
1130         * platform/gtk/LocalizedStringsGtk.cpp:
1131         (WebCore::AXListItemActionVerb):
1132
1133 2013-06-20  Radu Stavila  <stavila@adobe.com>
1134
1135         [CSS Regions] Add new regionOversetChange event
1136         https://bugs.webkit.org/show_bug.cgi?id=117508
1137
1138         Added regionOversetChange event and tests for it. The overset value of the region has been moved to the ElementRareData
1139         object instead of the RenderRegion object. This was needed for the case when a reattach is performed (for instance by changing
1140         the display type of the region's containing block) and the RenderRegion object is destroyed. When computing the overset again,
1141         there would be no "previous" value to compare it to and decide whether the regionOversetChange event must be dispatched.
1142
1143         Reviewed by Antti Koivisto.
1144
1145         Tests:  fast/regions/webkit-named-flow-event-add-to-flow.html:
1146                 fast/regions/webkit-named-flow-event-auto-height.html:
1147                 fast/regions/webkit-named-flow-event-crash.html:
1148                 fast/regions/webkit-named-flow-event-no-regions.html:
1149                 fast/regions/webkit-named-flow-event-region-in-flexbox-no-overset-change.html: Added.
1150                 fast/regions/webkit-named-flow-event-region-in-flexbox-overset-change.html: Added.
1151                 fast/regions/webkit-named-flow-event-remove-from-dom.html:
1152                 fast/regions/webkit-named-flow-event-remove-from-flow.html:
1153                 fast/regions/webkit-named-flow-event-target.html:
1154                 fast/regions/webkit-named-flow-event-to-null.html:
1155                 fast/regions/webkit-named-flow-event.html:
1156
1157
1158         * GNUmakefile.list.am:
1159         * Target.pri:
1160         * WebCore.xcodeproj/project.pbxproj:
1161         * dom/Element.cpp:
1162         (WebCore::Element::setRegionOversetState):
1163         (WebCore::Element::regionOversetState):
1164         (WebCore::Element::webkitRegionOverset):
1165         * dom/Element.h:
1166         * dom/ElementRareData.cpp:
1167         * dom/ElementRareData.h:
1168         (WebCore::ElementRareData::regionOversetState):
1169         (WebCore::ElementRareData::setRegionOversetState):
1170         (WebCore::ElementRareData::ElementRareData):
1171         * dom/EventNames.h:
1172         * dom/WebKitNamedFlow.cpp:
1173         (WebCore::WebKitNamedFlow::firstEmptyRegionIndex):
1174         (WebCore::WebKitNamedFlow::dispatchRegionOversetChangeEvent):
1175         * dom/WebKitNamedFlow.h:
1176         (WebCore::ChangeRegionOversetTask::ChangeRegionOversetTask):
1177         (WebCore::ChangeRegionOversetTask::scheduleFor):
1178         (WebCore::ChangeRegionOversetTask::unschedule):
1179         (WebCore::ChangeRegionOversetTask::reset):
1180         (WebCore::ChangeRegionOversetTask::onTimer):
1181         * rendering/RegionOversetState.h: Added.
1182         * rendering/RenderBlock.cpp:
1183         (WebCore::RenderBlock::computeOverflow):
1184         * rendering/RenderFlowThread.cpp:
1185         (WebCore::RenderFlowThread::RenderFlowThread):
1186         (WebCore::RenderFlowThread::layout):
1187         (WebCore::RenderFlowThread::computeOversetStateForRegions):
1188         * rendering/RenderFlowThread.h:
1189         * rendering/RenderNamedFlowThread.cpp:
1190         (WebCore::RenderNamedFlowThread::RenderNamedFlowThread):
1191         (WebCore::RenderNamedFlowThread::dispatchRegionOversetChangeEvent):
1192         (WebCore::RenderNamedFlowThread::regionOversetChangeEventTimerFired):
1193         * rendering/RenderNamedFlowThread.h:
1194         * rendering/RenderRegion.cpp:
1195         (WebCore::RenderRegion::RenderRegion):
1196         (WebCore::RenderRegion::regionOversetState):
1197         (WebCore::RenderRegion::setRegionOversetState):
1198         * rendering/RenderRegion.h:
1199
1200 2013-06-20  James Craig  <james@cookiecrook.com>
1201
1202         AX: aria-required is not exposed on all expected roles
1203         https://bugs.webkit.org/show_bug.cgi?id=115123
1204
1205         Reviewed by Chris Fleizach.
1206
1207         aria-required is now exposed on more roles. Updated existing test file.
1208
1209         * accessibility/AccessibilityNodeObject.cpp:
1210         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
1211         * accessibility/AccessibilityNodeObject.h:
1212         * accessibility/AccessibilityObject.h:
1213         (WebCore::AccessibilityObject::supportsRequiredAttribute):
1214         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1215         (-[WebAccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
1216
1217 2013-06-20  Seokju Kwon  <seokju.kwon@gmail.com>
1218
1219         Web Inspector: Use console.timeStamp instead of console.markTimeline
1220         https://bugs.webkit.org/show_bug.cgi?id=117810
1221
1222         Reviewed by Joseph Pecoraro.
1223
1224         Webkit supports both console.timeStamp and console.markTimeline.
1225         And they do the exact same thing.
1226         This patch gets rid of console.markTimeline for Chrome/Firebug compatibility.
1227
1228         No new functionality, no new tests.
1229
1230         * WebCore.order:
1231         * page/Console.cpp:
1232         * page/Console.h:
1233         * page/Console.idl:
1234
1235 2013-06-20  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
1236
1237         background-color and text-decoration are not preserved when merging paragraphs
1238         https://bugs.webkit.org/show_bug.cgi?id=116215
1239
1240         Reviewed by Ryosuke Niwa.
1241
1242         In mergeInlineAndImplicitStyleOfElement(), style from matched rules are retrieved.
1243         If they contain either background-color or text-decoration they will be removed
1244         by removeNonEditingProperties() due to copyEditingProperties() implicit
1245         'OnlyInheritableEditingProperties' parameter.
1246         We have already had similar issue at https://bugs.webkit.org/show_bug.cgi?id=53196
1247
1248         Tests: editing/deleting/merge-div-from-span-with-style.html
1249                editing/deleting/merge-paragraph-from-span-with-multiple-text-decoration.html
1250                editing/deleting/merge-paragraph-from-span-with-style.html
1251
1252         * editing/EditingStyle.cpp:
1253         (WebCore::copyEditingProperties):
1254         (WebCore::editingStyleFromComputedStyle):
1255         Add EditingStyle:: due to move EditingPropertiesToInclude to EditingStyle.h.
1256
1257         (WebCore::toEditingProperties):
1258         Add a helper to easy convert PropertiesToInclude to EditingPropertiesToInclude,
1259         needed in mergeInlineAndImplicitStyleOfElement().
1260
1261         (WebCore::EditingStyle::removeAllButEditingProperties):
1262         Add a parameter to choose which editing properties should be preserved while
1263         removing all properties (OnlyInheritableEditingProperties implicite).
1264
1265         (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement):
1266         Call removeAllButEditingProperties with parameter.
1267
1268         * editing/EditingStyle.h:
1269         Move EditingPropertiesType to the header as it's needed by removeAllButEditingProperties().
1270         Change EditingPropertiesType to EditingPropertiesToInclude to be consistent with
1271         PropertiesToInclude.
1272         Change removeNonEditingProperties() to removeAllButEditingProperties().
1273
1274 2013-06-19  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1275
1276         The order of the generated supplemental code is not guaranteed
1277         https://bugs.webkit.org/show_bug.cgi?id=117820
1278
1279         Reviewed by Kentaro Hara.
1280
1281         Sort the supplemental idl files before generating the code so that it is
1282         generated in a consistent order.
1283
1284         No new tests, covered by existing bindings tests.
1285
1286         * bindings/scripts/generate-bindings.pl:
1287
1288 2013-06-19  Commit Queue  <commit-queue@webkit.org>
1289
1290         Unreviewed, rolling out r151769.
1291         http://trac.webkit.org/changeset/151769
1292         https://bugs.webkit.org/show_bug.cgi?id=117821
1293
1294         Broke windows build due to missing GL/glext.h header.
1295         (Requested by bfulgham on #webkit).
1296
1297         * WebCore.vcxproj/WebCore.vcxproj:
1298         * WebCore.vcxproj/WebCore.vcxproj.filters:
1299
1300 2013-06-19  Alex Christensen  <alex.christensen@flexsim.com>
1301
1302         Added WebGL files to Windows build without enabling them.
1303         https://bugs.webkit.org/show_bug.cgi?id=117809
1304
1305         Reviewed by Brent Fulgham.
1306
1307         * WebCore.vcxproj/WebCore.vcxproj: Added WebGL source files.
1308         * WebCore.vcxproj/WebCore.vcxproj.filters: Added platform\graphics\opengl and platform\graphics\gpu filters.
1309
1310 2013-06-19  Alex Christensen  <achristensen@apple.com>
1311
1312         Windows build should include WebGL generated files if WebGL is enabled.
1313         https://bugs.webkit.org/show_bug.cgi?id=117802
1314
1315         Reviewed by Brent Fulgham.
1316
1317         Added WebGL generated files to Windows build if WebGL is enabled.
1318         * DerivedSources.cpp:
1319         * WebCore.vcxproj/WebCore.vcxproj:
1320         * WebCore.vcxproj/WebCore.vcxproj.filters:
1321
1322 2013-06-19  Alexey Proskuryakov  <ap@apple.com>
1323
1324         [Mac] Common crashes when playing media
1325         https://bugs.webkit.org/show_bug.cgi?id=117813
1326         <rdar://problem/13837412>
1327
1328         Reviewed by Eric Carlson.
1329
1330         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1331         (-[WebCoreAVFLoaderDelegate resourceLoader:didCancelLoadingRequest:]):
1332         This method may be called from a secondary thread, but it does things that are
1333         not thread safe.
1334
1335 2013-06-19  Yuki Sekiguchi  <yuki.sekiguchi@access-company.com>
1336
1337         Incomplete repaint of input elements in writing-mode overflow
1338         https://bugs.webkit.org/show_bug.cgi?id=110246
1339
1340         Reviewed by Simon Fraser.
1341
1342         We calculate repaint rect using unflipped rect.
1343         However, RenderBox::applyCachedClipAndScrollOffsetForRepaint() which is called from repaint rect calculation
1344         wants that its argument rect is flipped.
1345         The reason is:
1346         - paintRect.move(-scrolledContentOffset()); cannot scroll if the rect is unflipped.
1347         - It cannot clip using intersect.
1348         Passing unflipped rect to applyCachedClipAndScrollOffsetForRepaint() cause invalid clipping.
1349         Therefore, this patch flipped the rect at the first part of the function and unflipped it at the last part of the function.
1350
1351         Scroll bar rect is absolute rect, so it is flipped rect.
1352         RenderLayer::invalidateScrollbarRect() pass the rect to repaintRectangle() which expects an argument rect is unflipped.
1353         This cause part of overlapping scroll bar doesn't fade out.
1354         Therefore, this patch flipped the rect and pass it to repaintRectangle().
1355
1356         Tests: fast/repaint/horizontal-bt-overflow-child.html
1357                fast/repaint/horizontal-bt-overflow-parent.html
1358                fast/repaint/horizontal-bt-overflow-same.html
1359                fast/repaint/vertical-overflow-child.html
1360                fast/repaint/vertical-overflow-parent.html
1361                fast/repaint/vertical-overflow-same.html
1362
1363         * rendering/RenderBox.cpp:
1364         (WebCore::RenderBox::applyCachedClipAndScrollOffsetForRepaint):
1365         * rendering/RenderLayer.cpp:
1366         (WebCore::RenderLayer::invalidateScrollbarRect):
1367
1368 2013-06-19  Benjamin Poulain  <bpoulain@apple.com>
1369
1370         Use the PlatformEvent timestamp when creating a DOM Event
1371         https://bugs.webkit.org/show_bug.cgi?id=117179
1372
1373         Reviewed by Darin Adler.
1374
1375         Previously, the platform event's timestamp was ignored by WebCore and each
1376         new event would get a new timestamp by calling WTF::currentTime().
1377
1378         The problem is there can be a significant delay between the input event and
1379         it being dispatched to JavaScript. Computing the velocity/acceleration of the cursor
1380         is impossible since the delay vary from event to events.
1381         On WebKit2, the delay per event typically vary between 0 and 30ms.
1382
1383         This patch changes the Event creation code to use the timer passed by the underlying platform event.
1384
1385         * WebCore.exp.in:
1386         * dom/Event.cpp:
1387         (WebCore::Event::Event):
1388         * dom/Event.h:
1389         * dom/GestureEvent.cpp:
1390         (WebCore::GestureEvent::create):
1391         (WebCore::GestureEvent::GestureEvent):
1392         * dom/GestureEvent.h:
1393         * dom/KeyboardEvent.cpp:
1394         (WebCore::KeyboardEvent::KeyboardEvent):
1395         * dom/KeyboardEvent.h:
1396         * dom/MouseEvent.cpp:
1397         (WebCore::MouseEvent::create):
1398         (WebCore::MouseEvent::MouseEvent):
1399         (WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
1400         * dom/MouseEvent.h:
1401         * dom/MouseRelatedEvent.cpp:
1402         (WebCore::MouseRelatedEvent::MouseRelatedEvent):
1403         * dom/MouseRelatedEvent.h:
1404         * dom/TouchEvent.cpp:
1405         (WebCore::TouchEvent::TouchEvent):
1406         * dom/UIEvent.cpp:
1407         (WebCore::UIEvent::UIEvent):
1408         * dom/UIEvent.h:
1409         * dom/UIEventWithKeyState.h:
1410         (WebCore::UIEventWithKeyState::UIEventWithKeyState):
1411         * dom/WheelEvent.cpp:
1412         (WebCore::WheelEvent::WheelEvent):
1413         (WebCore::WheelEventDispatchMediator::WheelEventDispatchMediator):
1414         * dom/WheelEvent.h:
1415         (WebCore::WheelEvent::create):
1416         * page/EventHandler.cpp:
1417         (WebCore::EventHandler::dispatchDragEvent):
1418         * platform/mac/PlatformEventFactoryMac.mm:
1419         (WebCore::PlatformMouseEventBuilder::PlatformMouseEventBuilder):
1420         (WebCore::PlatformWheelEventBuilder::PlatformWheelEventBuilder):
1421         (WebCore::PlatformKeyboardEventBuilder::PlatformKeyboardEventBuilder):
1422         (WebCore::PlatformGestureEventBuilder::PlatformGestureEventBuilder):
1423
1424 2013-06-19  Alexis Menard  <alexis@webkit.org>
1425
1426         Make sure to use CSSValueID and CSSPropertyID rather than integers
1427         https://bugs.webkit.org/show_bug.cgi?id=117481
1428
1429         Reviewed by Benjamin Poulain.
1430
1431         This will ensure that types are enforced when passing arguments in various
1432         css functions. Having a compile time check make sure that no mistakes
1433         will be done over the type.
1434
1435         The parser was also patched to directly use CSSValueID over integers.
1436         This patch also fixes various call sites abusing the usage of integers.
1437         This is part 1 of 2.
1438
1439         No new tests : existing ones should cover.
1440
1441         * WebCore.xcodeproj/project.pbxproj: copy CSSValueKeywords.h as it could be used in WebKit/ for example.
1442         * css/CSSComputedStyleDeclaration.cpp:
1443         (WebCore::valueForRepeatRule):
1444         (WebCore::cssIdentifierForFontSizeKeyword):
1445         (WebCore::identifierForFamily):
1446         (WebCore::valueForFamily):
1447         * css/CSSGrammar.y.in:
1448         * css/CSSParser.cpp:
1449         (WebCore::parseColorValue):
1450         (WebCore::parseKeywordValue):
1451         (WebCore::CSSParser::parseValidPrimitive):
1452         (WebCore::CSSParser::parseValue):
1453         (WebCore::CSSParser::parseContent):
1454         (WebCore::CSSParser::parseBackgroundColor):
1455         (WebCore::CSSParser::parseFillPositionComponent):
1456         (WebCore::CSSParser::parse3ValuesFillPosition):
1457         (WebCore::CSSParser::parseFillRepeat):
1458         (WebCore::CSSParser::parseAnimationProperty):
1459         (WebCore::CSSParser::parseCounterContent):
1460         (WebCore::CSSParser::parseLineHeight):
1461         (WebCore::CSSParser::parseFontSize):
1462         (WebCore::CSSParser::createFontWeightValueKeyword):
1463         (WebCore::CSSParser::parseFontWeight):
1464         (WebCore::parseDeprecatedGradientColorStop):
1465         (WebCore::parseGradientColorOrKeyword):
1466         (WebCore::CSSParser::parseDeprecatedRadialGradient):
1467         (WebCore::CSSParser::rewriteSpecifiers):
1468         * css/CSSParser.h:
1469         * css/CSSParserValues.h:
1470         * css/CSSPrimitiveValue.h:
1471         * css/CSSValuePool.cpp:
1472         (WebCore::CSSValuePool::createIdentifierValue):
1473         * css/CSSValuePool.h:
1474         * css/StylePropertySet.cpp:
1475         (WebCore::MutableStylePropertySet::setProperty):
1476         * css/StylePropertySet.h:
1477         * dom/StyledElement.cpp:
1478         (WebCore::StyledElement::setInlineStyleProperty):
1479         (WebCore::StyledElement::addPropertyToPresentationAttributeStyle):
1480         * dom/StyledElement.h:
1481         * editing/EditingStyle.cpp:
1482         (WebCore::HTMLFontSizeEquivalent::attributeValueAsCSSValue):
1483         (WebCore::EditingStyle::prepareToApplyAt):
1484         * editing/EditorCommand.cpp:
1485         (WebCore::executeApplyStyle):
1486         (WebCore::executeFontSize):
1487         * html/HTMLElement.cpp:
1488         (WebCore::unicodeBidiAttributeForDirAuto):
1489         (WebCore::HTMLElement::applyAlignmentAttributeToStyle):
1490         * html/HTMLFontElement.cpp:
1491         (WebCore::HTMLFontElement::cssValueFromFontSizeNumber):
1492         (WebCore::HTMLFontElement::collectStyleForPresentationAttribute):
1493         * html/HTMLFontElement.h:
1494         * html/HTMLTableElement.cpp:
1495         (WebCore::leakBorderStyle):
1496         * html/track/TextTrackCue.cpp:
1497         (WebCore::TextTrackCue::getCSSWritingDirection):
1498         (WebCore::TextTrackCue::getCSSWritingMode):
1499         * html/track/TextTrackCue.h:
1500
1501 2013-06-19  Bem Jones-Bey  <bjonesbe@adobe.com>
1502
1503         Fix a few missed renames from Exclusions -> Shapes
1504         https://bugs.webkit.org/show_bug.cgi?id=117803
1505
1506         Reviewed by David Hyatt.
1507
1508         In the great CSS Exclusions to CSS Shapes rename, a few instances were
1509         missed. This fixes those instances.
1510
1511         No new tests, no behavior change, just renames.
1512
1513         * rendering/RenderBlock.cpp:
1514         (WebCore::RenderBlock::updateRegionsAndShapesBeforeChildLayout):
1515         (WebCore::RenderBlock::updateRegionsAndShapesAfterChildLayout):
1516         (WebCore::RenderBlock::layoutBlock):
1517         (WebCore::RenderBlock::logicalLeftOffsetForLine):
1518         (WebCore::RenderBlock::logicalRightOffsetForLine):
1519         * rendering/RenderBlock.h:
1520         * rendering/RenderDeprecatedFlexibleBox.cpp:
1521         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
1522         * rendering/RenderFlexibleBox.cpp:
1523         (WebCore::RenderFlexibleBox::layoutBlock):
1524         * rendering/RenderGrid.cpp:
1525         (WebCore::RenderGrid::layoutBlock):
1526
1527 2013-06-19  Oliver Hunt  <oliver@apple.com>
1528
1529         Incorrect use of jsCast in a finalizer
1530         https://bugs.webkit.org/show_bug.cgi?id=117807
1531
1532         Reviewed by Geoffrey Garen.
1533
1534         We can't use jsCast in a finalizer as it checks an object's structure,
1535         and the structure may already have been swept by that point.  Use a
1536         static_cast instead.
1537
1538         * bridge/runtime_array.cpp:
1539         (JSC::RuntimeArray::destroy):
1540
1541 2013-06-19  Brent Fulgham  <bfulgham@apple.com>
1542
1543         [Windows] AX: Extend notification handling
1544         https://bugs.webkit.org/show_bug.cgi?id=117761.
1545
1546         Reviewed by Anders Carlsson.
1547
1548         accessibility/press-works-on-control-types.html
1549
1550         * accessibility/win/AXObjectCacheWin.cpp:
1551         (WebCore::AXObjectCache::postPlatformNotification): Add handlers for more event notifications.
1552         * accessibility/win/AccessibilityObjectWrapperWin.cpp:
1553         (WebCore::AccessibilityObjectWrapper::accessibilityAttributeValue): Protect against null
1554         pointer dereference found during testing.
1555         * dom/Document.cpp:
1556         (WebCore::Document::implicitClose): Execute notification handler for Windows as well as Mac.
1557         * page/FrameView.cpp:
1558         (WebCore::FrameView::layout): Ditto.
1559
1560 2013-06-19  peavo@outlook.com  <peavo@outlook.com>
1561
1562         [WinCairo] Webfont rendering is broken.
1563         https://bugs.webkit.org/show_bug.cgi?id=117695
1564
1565         Reviewed by Brent Fulgham.
1566
1567         The native font handle created from webfont data is invalid.
1568         In much the same way it's done in WinApple, we first need to install the webfont,
1569         create a native font handle from the new font name,
1570         and pass the font handle to the FontPlatformData object, where it's needed to get the glyphs.
1571
1572         * platform/graphics/FontPlatformData.h: Added HFONT parameter to constructor.
1573         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1574         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Release installed webfont.
1575         (WebCore::FontCustomPlatformData::fontPlatformData): Create valid HFONT handle for webfont.
1576         (WebCore::createUniqueFontName): Added method to create webfont name.
1577         (WebCore::createFontCustomPlatformData): Install font from webfont data.
1578         * platform/graphics/win/FontCustomPlatformDataCairo.h: Removed.
1579         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
1580         (WebCore::FontPlatformData::FontPlatformData): Added HFONT parameter to constructor.
1581
1582 2013-06-19  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1583
1584         Implement WebIDL implements
1585         https://bugs.webkit.org/show_bug.cgi?id=117785
1586
1587         Reviewed by Kentaro Hara.
1588
1589         Add support for Web IDL 'implements' statements to the bindings generator:
1590         http://www.w3.org/TR/WebIDL/#dfn-implements-statement
1591
1592         Introduce ChildNode IDL interface and have Element, DocumentType and
1593         CharacterData implement it, to match the specification:
1594         http://dom.spec.whatwg.org/#childnode
1595
1596         There is no change in behavior, merely refactoring to match the
1597         specification by leveraging support for Web IDL implements statements.
1598
1599         No new tests, no behavior change.
1600
1601         * CMakeLists.txt:
1602         * DerivedSources.make:
1603         * DerivedSources.pri:
1604         * GNUmakefile.list.am:
1605         * bindings/scripts/generate-bindings.pl:
1606         * bindings/scripts/preprocess-idls.pl:
1607         (GeneratePartialInterface):
1608         (getImplementersFromIDL):
1609         * bindings/scripts/test/CPP/WebDOMTestImplements.cpp: Added.
1610         * bindings/scripts/test/CPP/WebDOMTestImplements.h: Added.
1611         * bindings/scripts/test/CPP/WebDOMTestInterface.cpp:
1612         (WebDOMTestInterface::implementsStr1):
1613         (WebDOMTestInterface::implementsStr2):
1614         (WebDOMTestInterface::setImplementsStr2):
1615         (WebDOMTestInterface::implementsNode):
1616         (WebDOMTestInterface::setImplementsNode):
1617         (WebDOMTestInterface::implementsMethod1):
1618         (WebDOMTestInterface::implementsMethod4):
1619         * bindings/scripts/test/CPP/WebDOMTestInterface.h:
1620         * bindings/scripts/test/GObject/WebKitDOMTestImplements.cpp: Added.
1621         * bindings/scripts/test/GObject/WebKitDOMTestImplements.h: Added.
1622         * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp:
1623         (webkit_dom_test_interface_set_property):
1624         (webkit_dom_test_interface_get_property):
1625         (webkit_dom_test_interface_class_init):
1626         (webkit_dom_test_interface_implements_method1):
1627         (webkit_dom_test_interface_implements_method2):
1628         (webkit_dom_test_interface_implements_method4):
1629         (webkit_dom_test_interface_get_implements_str1):
1630         (webkit_dom_test_interface_get_implements_str2):
1631         (webkit_dom_test_interface_set_implements_str2):
1632         (webkit_dom_test_interface_get_implements_node):
1633         (webkit_dom_test_interface_set_implements_node):
1634         * bindings/scripts/test/GObject/WebKitDOMTestInterface.h:
1635         * bindings/scripts/test/JS/JSTestImplements.cpp: Added.
1636         * bindings/scripts/test/JS/JSTestImplements.h: Added.
1637         * bindings/scripts/test/JS/JSTestInterface.cpp:
1638         (WebCore::jsTestInterfaceConstructorImplementsStaticReadOnlyAttr):
1639         (WebCore::jsTestInterfaceConstructorImplementsStaticAttr):
1640         (WebCore::jsTestInterfaceImplementsStr1):
1641         (WebCore::jsTestInterfaceImplementsStr2):
1642         (WebCore::jsTestInterfaceImplementsStr3):
1643         (WebCore::jsTestInterfaceImplementsNode):
1644         (WebCore::setJSTestInterfaceConstructorImplementsStaticAttr):
1645         (WebCore::setJSTestInterfaceImplementsStr2):
1646         (WebCore::setJSTestInterfaceImplementsStr3):
1647         (WebCore::setJSTestInterfaceImplementsNode):
1648         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod1):
1649         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod2):
1650         (WebCore::jsTestInterfacePrototypeFunctionImplementsMethod3):
1651         (WebCore::jsTestInterfaceConstructorFunctionImplementsMethod4):
1652         (WebCore::jsTestInterfaceIMPLEMENTSCONSTANT1):
1653         (WebCore::jsTestInterfaceIMPLEMENTSCONSTANT2):
1654         * bindings/scripts/test/JS/JSTestInterface.h:
1655         * bindings/scripts/test/ObjC/DOMTestImplements.cpp: Added.
1656         * bindings/scripts/test/ObjC/DOMTestImplements.h: Added.
1657         * bindings/scripts/test/ObjC/DOMTestInterface.h:
1658         * bindings/scripts/test/ObjC/DOMTestInterface.mm:
1659         (-[DOMTestInterface implementsStr1]):
1660         (-[DOMTestInterface implementsStr2]):
1661         (-[DOMTestInterface setImplementsStr2:]):
1662         (-[DOMTestInterface implementsStr3]):
1663         (-[DOMTestInterface setImplementsStr3:]):
1664         (-[DOMTestInterface implementsNode]):
1665         (-[DOMTestInterface setImplementsNode:]):
1666         (-[DOMTestInterface implementsMethod1]):
1667         (-[DOMTestInterface implementsMethod2:objArg:]):
1668         (-[DOMTestInterface implementsMethod3]):
1669         (-[DOMTestInterface implementsMethod4]):
1670         * bindings/scripts/test/TestImplements.idl: Added.
1671         * dom/CharacterData.idl:
1672         * dom/ChildNode.idl: Copied from Source/WebCore/dom/DocumentType.idl.
1673         * dom/DocumentType.idl:
1674         * dom/Element.idl:
1675
1676 2013-06-19  Robert Hogan  <robert@webkit.org>
1677
1678         Incorrect computation of shrink-to-fit width for block with white-space:nowrap and floating children
1679         https://bugs.webkit.org/show_bug.cgi?id=114879
1680
1681         Reviewed by David Hyatt.
1682         Per http://www.w3.org/TR/CSS21/visudet.html#Computing_widths_and_margins when width is auto then floating non-replaced,
1683         absolute non-replaced, and inline-block non-replaced elements should use shrink-to-fit width. This trumps any no-wrap property 
1684         on the element so if we are shrinking to fit ensure our minimum width respects all possible line breaks.
1685
1686         Test: fast/block/shrink-to-fit-width-container-with-floating-children.html
1687
1688         * rendering/RenderBlock.cpp:
1689         (WebCore::RenderBlock::computeIntrinsicLogicalWidths):
1690
1691 2013-06-19  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1692
1693         Do not require JS*Custom.h header if [CustomPutFunction] / [CustomNamedSetter] is used
1694         https://bugs.webkit.org/show_bug.cgi?id=117795
1695
1696         Reviewed by Kentaro Hara.
1697
1698         Fix the JS bindings generator so that it stops including JS*Custom.h header whenever
1699         [CustomPutFunction] or [CustomNamedSetter] IDL extended attributes are used. We don't
1700         really need this custom header and this forces the developer to create dummy custom
1701         headers so that it builds.
1702
1703         If the developer really needs such custom header to be included, he can still use
1704         [JSCustomHeader] IDL extended attribute to do so.
1705
1706         This patch also remove the dummy custom headers that were created but are no longer
1707         required to build.
1708
1709         No new tests, no behavior change. Already covered by the following bindings test:
1710         TestInterface.idl
1711
1712         * GNUmakefile.list.am:
1713         * Target.pri:
1714         * WebCore.vcxproj/WebCore.vcxproj:
1715         * WebCore.vcxproj/WebCore.vcxproj.filters:
1716         * WebCore.xcodeproj/project.pbxproj:
1717         * bindings/js/JSDOMStringMapCustom.h: Removed.
1718         * bindings/js/JSHTMLAppletElementCustom.cpp:
1719         * bindings/js/JSHTMLAppletElementCustom.h: Removed.
1720         * bindings/js/JSHTMLEmbedElementCustom.cpp:
1721         * bindings/js/JSHTMLEmbedElementCustom.h: Removed.
1722         * bindings/js/JSHTMLObjectElementCustom.cpp:
1723         * bindings/js/JSHTMLObjectElementCustom.h: Removed.
1724         * bindings/js/JSHistoryCustom.cpp:
1725         * bindings/js/JSHistoryCustom.h: Removed.
1726         * bindings/js/JSLocationCustom.cpp:
1727         * bindings/js/JSLocationCustom.h: Removed.
1728         * bindings/js/JSStorageCustom.cpp:
1729         * bindings/js/JSStorageCustom.h: Removed.
1730         * bindings/scripts/CodeGeneratorJS.pm:
1731         (GenerateHeader):
1732
1733 2013-06-19  Carlos Garcia Campos  <cgarcia@igalia.com>
1734
1735         [BlackBerry] Several tests crash due to an assert when creating an ImageBuffer
1736         https://bugs.webkit.org/show_bug.cgi?id=117793
1737
1738         Reviewed by Rob Buis.
1739
1740         JIRA 388741
1741
1742         Fixes a crash in several layout tests due to an assert when
1743         creating an ImageBuffer with an empty size.
1744
1745         * platform/graphics/blackberry/ImageBufferBlackBerry.cpp:
1746         (WebCore::ImageBuffer::ImageBuffer): Return early if the given
1747         size is empty.
1748
1749 2013-06-19  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
1750
1751         [GStreamer] [texmap] the bytesPerLine is wrong when updating the texture
1752         https://bugs.webkit.org/show_bug.cgi?id=117551
1753
1754         Reviewed by Philippe Normand.
1755
1756         The bytesPerLine (or stride) is wrong when updating the texture
1757         content. This is because the naturalSize() is not updated to the
1758         current buffer. This patch extracts the current value of the size and
1759         the stride.
1760
1761         No tests required.
1762
1763         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
1764         (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
1765         (WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper):
1766
1767 2013-06-19  Andre Moreira Magalhaes   <andre.magalhaes@collabora.co.uk>
1768
1769         Adjust internal size on gstreamer source element when receiving data if necessary
1770         https://bugs.webkit.org/show_bug.cgi?id=116534
1771
1772         Reviewed by Philippe Normand.
1773
1774         If the size received in didReceiveResponse is smaller than the actual size of the received data
1775         update the internal size and the appsrc size to the proper value.
1776
1777         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1778         (StreamingClient::didReceiveData):
1779
1780 2013-06-19  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
1781
1782         [GStreamer] Potential race condition when getting the video sink caps.
1783         https://bugs.webkit.org/show_bug.cgi?id=117736
1784
1785         Reviewed by Philippe Normand.
1786
1787         There is a potential race condition with the pad setting caps, as the
1788         buffer and the caps won't match when renegotiation happens, and might
1789         cause a crash.
1790
1791         This patch keeps an instance of the current caps in the video sink,
1792         and it is accessible through a getter method. Hence the player can ask
1793         for the current caps without running into a race condition.
1794
1795         No new tests. No change in behaviour.
1796
1797         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
1798         (WebCore::MediaPlayerPrivateGStreamerBase::naturalSize):
1799         (WebCore::MediaPlayerPrivateGStreamerBase::paint):
1800         (WebCore::MediaPlayerPrivateGStreamerBase::currentVideoSinkCaps):
1801         (WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink):
1802         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
1803         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
1804         (webkitVideoSinkGetProperty):
1805         (webkitVideoSinkStop):
1806         (webkitVideoSinkSetCaps):
1807         (webkit_video_sink_class_init):
1808
1809 2013-06-19  Kihong Kwon  <kihong.kwon@samsung.com>
1810
1811         Vibration can be canceled even if page visibility status is hidden
1812         https://bugs.webkit.org/show_bug.cgi?id=117333
1813
1814         Reviewed by Gyuyoung Kim.
1815
1816         vibration can be canceled in the onvisibilitychange listener even if page visibility is changed to hidden status.
1817         Therefore cancelVibration needs to work when page visibility is hidden.
1818
1819         Tests: vibration/cancelVibration-after-pagevisibility-changed-to-hidden.html
1820
1821         * Modules/vibration/NavigatorVibration.cpp:
1822         (WebCore::NavigatorVibration::vibrate):
1823         * Modules/vibration/Vibration.h:
1824         (WebCore::Vibration::isVibrating):
1825         * testing/Internals.cpp:
1826         (WebCore::Internals::isVibrating):
1827         * testing/Internals.h:
1828         * testing/Internals.idl:
1829
1830 2013-06-18  Ryosuke Niwa  <rniwa@webkit.org>
1831
1832         Input type range slider is not updated when min or max are changed
1833         https://bugs.webkit.org/show_bug.cgi?id=117778
1834
1835         Reviewed by Kent Tamura.
1836
1837         Merge https://chromium.googlesource.com/chromium/blink/+/089c7a0ba2d85b9b59632c2603fbc6472b310be1.
1838
1839         Test: fast/forms/range/range-change-min-max.html
1840
1841         * html/RangeInputType.cpp:
1842         (WebCore::RangeInputType::minOrMaxAttributeChanged):
1843
1844 2013-06-18  Ryosuke Niwa  <rniwa@webkit.org>
1845
1846         Remove two superfluous overrides of supportsFocus
1847         https://bugs.webkit.org/show_bug.cgi?id=117770
1848
1849         Reviewed by Benjamin Poulain.
1850
1851         Merge https://chromium.googlesource.com/chromium/blink/+/4228964a63e3a889a40efce0d01866629fdcd9b9.
1852
1853         * html/HTMLOptGroupElement.cpp:
1854         * html/HTMLOptGroupElement.h:
1855         * html/HTMLOptionElement.cpp:
1856         * html/HTMLOptionElement.h:
1857
1858 2013-06-18  Darin Adler  <darin@apple.com>
1859
1860         Improve style of null checks in FrameView::setFrameRect
1861         https://bugs.webkit.org/show_bug.cgi?id=117681
1862
1863         Reviewed by Sam Weinig.
1864
1865         * page/FrameView.cpp:
1866         (WebCore::FrameView::setFrameRect): Used nested if statements and local variables
1867         to tighten this code up a little.
1868
1869 2013-06-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1870
1871         Move IDL extended attributes to their correct location
1872         https://bugs.webkit.org/show_bug.cgi?id=117732
1873
1874         Reviewed by Kentaro Hara.
1875
1876         Move IDL extended attributes to their correct location according to the
1877         latest Web IDL specification. We used to be inconsistent in the positioning
1878         of the extended attributes. This simplifies a lot the code of the IDL parser
1879         and makes our IDL files more standard.
1880
1881         Based on Blink r148345 by Kentaro Hara <haraken@chromium.org>.
1882
1883         No new tests, no behavior change.
1884
1885         * Modules/encryptedmedia/MediaKeyMessageEvent.idl:
1886         * Modules/notifications/Notification.idl:
1887         * Modules/speech/SpeechSynthesisVoice.idl:
1888         * bindings/scripts/IDLParser.pm:
1889         (parseDefinitions):
1890         (parseInterfaceMembers):
1891         (parseInterfaceMember):
1892         (parseDictionaryMembers):
1893         (parseAttributeOrOperationOrIterator):
1894         (parseAttribute):
1895         * css/CSSFontFaceLoadEvent.idl:
1896         * dom/Document.idl:
1897         * dom/Element.idl:
1898         * dom/Node.idl:
1899         * html/HTMLBodyElement.idl:
1900         * html/HTMLEmbedElement.idl:
1901         * html/HTMLFrameSetElement.idl:
1902         * html/HTMLMediaElement.idl:
1903         * html/HTMLSelectElement.idl:
1904         * html/HTMLSourceElement.idl:
1905         * page/DOMWindow.idl:
1906         * svg/SVGElementInstance.idl:
1907         * svg/SVGScriptElement.idl:
1908         * testing/TypeConversions.idl:
1909
1910 2013-06-18  Jessie Berlin  <jberlin@apple.com>
1911
1912         Let the script to update the Localizable.strings file do the reordering it wants to do.
1913
1914         Rubber-stamped by Anders Carlsson.
1915
1916         * English.lproj/Localizable.strings:
1917
1918 2013-06-18  Brent Fulgham  <bfulgham@apple.com>
1919
1920         [Windows] Unreviewed gardening -- show missing AccessibilityNodeObject source
1921         files in Visual Studio.
1922
1923         * WebCore.vcxproj/WebCore.vcxproj: Add missing files.
1924         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1925
1926 2013-06-18  Commit Queue  <commit-queue@webkit.org>
1927
1928         Unreviewed, rolling out r151513.
1929         http://trac.webkit.org/changeset/151513
1930         https://bugs.webkit.org/show_bug.cgi?id=117763
1931
1932         It causes assertions in debug (Requested by benjaminp on
1933         #webkit).
1934
1935         * rendering/RenderLayerBacking.cpp:
1936         (WebCore::RenderLayerBacking::startAnimation):
1937         (WebCore::RenderLayerBacking::startTransition):
1938
1939 2013-06-18  Roger Fong  <roger_fong@apple.com>
1940
1941         Replace tools32 folder with tools and update WebKit Windows solution accordingly.
1942         <rdar://problem/14118143>.
1943
1944         Rubberstamped by Brent Fulgham.
1945
1946         * WebCore.vcxproj/QTMovieWin/QTMovieWin.vcxproj:
1947         * WebCore.vcxproj/QTMovieWin/QTMovieWinCairoDebug.props:
1948         * WebCore.vcxproj/QTMovieWin/QTMovieWinCairoRelease.props:
1949         * WebCore.vcxproj/QTMovieWin/QTMovieWinDebug.props:
1950         * WebCore.vcxproj/QTMovieWin/QTMovieWinPostBuild.cmd:
1951         * WebCore.vcxproj/QTMovieWin/QTMovieWinProduction.props:
1952         * WebCore.vcxproj/QTMovieWin/QTMovieWinRelease.props:
1953         * WebCore.vcxproj/WebCore.vcxproj:
1954         * WebCore.vcxproj/WebCoreDebug.props:
1955         * WebCore.vcxproj/WebCoreDebugWinCairo.props:
1956         * WebCore.vcxproj/WebCoreGenerated.vcxproj:
1957         * WebCore.vcxproj/WebCoreGeneratedDebug.props:
1958         * WebCore.vcxproj/WebCoreGeneratedDebugWinCairo.props:
1959         * WebCore.vcxproj/WebCoreGeneratedProduction.props:
1960         * WebCore.vcxproj/WebCoreGeneratedRelease.props:
1961         * WebCore.vcxproj/WebCoreGeneratedReleaseWinCairo.props:
1962         * WebCore.vcxproj/WebCoreProduction.props:
1963         * WebCore.vcxproj/WebCoreRelease.props:
1964         * WebCore.vcxproj/WebCoreReleaseWinCairo.props:
1965         * WebCore.vcxproj/WebCoreTestSupport.vcxproj:
1966         * WebCore.vcxproj/build-generated-files.sh:
1967
1968 2013-06-18  Zoltan Horvath  <zoltan@webkit.org>
1969
1970         [CSS Shapes] Remove lineOverflowsFromShapeInside boolean from RenderBlock::layoutRunsAndFloatsInRange function
1971         https://bugs.webkit.org/show_bug.cgi?id=117757
1972
1973         Reviewed by David Hyatt.
1974
1975         We don't need keep lineOverflowsFromShapeInside boolean in RenderBlock::layoutRunsAndFloatsInRange and in its
1976         helpers because it's easy to decide whether we are in an shape content overflow state or not, so I got rid of
1977         lineOverflowsFromShapeInside's occurences and updated the affected functions.
1978
1979         Covered by existing overflow tests in fast/exclusions/shape-inside and fast/regions/shape-inside.
1980
1981         * rendering/RenderBlock.h: Update helper's definition.
1982         * rendering/RenderBlockLineLayout.cpp:
1983         (WebCore::pushShapeContentOverflowBelowTheContentBox): Add condition when overflow is already positioned.
1984         (WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLine): Remove lineOverflowsFromShapeInside.
1985         (WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLineInFlowThread):  Remove lineOverflowsFromShapeInside.
1986         (WebCore::RenderBlock::layoutRunsAndFloatsInRange):  Remove lineOverflowsFromShapeInside.
1987
1988 2013-06-18  Zalan Bujtas  <zalan@apple.com>
1989
1990         widthMediaFeatureEval ends up with null FrameView during iframe unload.
1991         https://bugs.webkit.org/show_bug.cgi?id=117754
1992
1993         Reviewed by Geoffrey Garen.
1994
1995         Ensure that MediaQueryEvaluator checks against NULL FrameView.
1996
1997         While frames are being unloaded, the Frame object does not necessarily have valid
1998         FrameView anymore. Layout on the main frame can end up querying media values on such child
1999         frames, while detaching.
2000
2001         Test: fast/frames/crash-when-child-iframe-forces-layout-during-unload-and-sibling-frame-has-mediaquery.html
2002
2003         * css/MediaQueryEvaluator.cpp:
2004         (WebCore::orientationMediaFeatureEval):
2005         (WebCore::aspect_ratioMediaFeatureEval):
2006         (WebCore::evalResolution):
2007         (WebCore::heightMediaFeatureEval):
2008         (WebCore::widthMediaFeatureEval):
2009         (WebCore::MediaQueryEvaluator::eval):
2010
2011 2013-06-18  Ruth Fong  <ruth_fong@apple.com>
2012
2013         Expose a getMediaType method in WebKit
2014         https://bugs.webkit.org/show_bug.cgi?id=117667
2015
2016         Reviewed by Brady Eidson.
2017
2018         * WebCore.exp.in: Updated to add a symbol for 
2019         HitTestResult::mediaIsVideo method
2020         and alphabetize the list of exposed methods.
2021
2022 2013-06-18  Ryosuke Niwa  <rniwa@webkit.org>
2023
2024         Remove unused bool argument from ReplacementFragment's constructor
2025         https://bugs.webkit.org/show_bug.cgi?id=117752
2026
2027         Reviewed by Antti Koivisto.
2028
2029         Merge https://chromium.googlesource.com/chromium/blink/+/265586d9f154a9dff657511d09926429b8e1b53d.
2030
2031         * editing/ReplaceSelectionCommand.cpp:
2032         (WebCore::ReplacementFragment::ReplacementFragment):
2033         (WebCore::ReplaceSelectionCommand::doApply):
2034
2035 2013-06-18  Eric Carlson  <eric.carlson@apple.com>
2036
2037         Not all subtitle tracks are SDH
2038         https://bugs.webkit.org/show_bug.cgi?id=117738
2039
2040         Reviewed by Dean Jackson.
2041
2042         No new tests, existing tests updated.
2043
2044         * html/track/InbandTextTrack.cpp:
2045         (WebCore::InbandTextTrack::isSDH): New.
2046
2047         * html/track/InbandTextTrack.h: Add isSDH override.
2048         * html/track/TextTrack.h:
2049
2050         * page/CaptionUserPreferencesMac.mm:
2051         (WebCore::trackDisplayName): Only add "SDH" label if a track claims to be SDH.
2052
2053         * platform/graphics/InbandTextTrackPrivate.h:
2054         (WebCore::InbandTextTrackPrivate::isSDH): New.
2055
2056         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.h:
2057         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
2058         (WebCore::InbandTextTrackPrivateAVFObjC::isSDH): Return true if track has both "transcribes
2059             spoken dialog for accessibility" and "describes music and sound for accessibility" 
2060             characteristics.
2061
2062 2013-06-18  Ryosuke Niwa  <rniwa@webkit.org>
2063
2064         Simplify FormKeyGenerator::willDeleteForm
2065         https://bugs.webkit.org/show_bug.cgi?id=117751
2066
2067         Reviewed by Antti Koivisto.
2068
2069         Merge https://chromium.googlesource.com/chromium/blink/+/c6399efb9da863eb1d1fc98b17ef925998b985ac
2070
2071         * html/FormController.cpp:
2072         (WebCore::FormKeyGenerator::willDeleteForm):
2073
2074 2013-06-18  Ryosuke Niwa  <rniwa@webkit.org>
2075
2076         REGRESSION(r147602): Search text field doesn't render selection when it has some :focus rules
2077         https://bugs.webkit.org/show_bug.cgi?id=117747
2078
2079         Reviewed by Kent Tamura.
2080
2081         Merge https://chromium.googlesource.com/chromium/blink/+/7ff656c8239ce3b125246abcc8b149a603fcff28
2082
2083         r147612 added setNeedsLayout(true, MarkOnlyThis) for
2084         TextControlInnerTextElement renderer. It's ok for input[type=text]
2085         because RenderTextControlSingleLine also has needsLayout flag, and it
2086         has only the inner text renderer as a child.
2087
2088         As for input[type=search], it doesn't work. Renderer structure for
2089         input[type=search] is:
2090
2091         RenderTextControlSingleLine
2092         └Renderer for TextControlInnerContainer
2093           └Renderer for TextControlInnerElement
2094             └Renderer for TextControlInnerTextElement
2095
2096         After r147612, there is a case that only RenderTextControlSingleLine
2097         and TextControlInnerTextElement renderer have needsLayout flag, and
2098         others don't.  It won't trigger layout for
2099         TextControlInnerTextElement renderer.
2100
2101         We should set needsLayout flags of TextControlInnerContainer renderer
2102         and TextControlInnerElement renderer by MarkContainingBlockChain.
2103
2104         Manual Tests: search-select-all-with-focus-style.html
2105         (I tried but couldn't make a test that works in DRT)
2106
2107         * rendering/RenderTextControlSingleLine.cpp:
2108         (WebCore::RenderTextControlSingleLine::styleDidChange):
2109
2110 2013-06-18  Dean Jackson  <dino@apple.com>
2111
2112         Attempted build fix for non-Mac.
2113
2114         * platform/graphics/SimpleFontData.cpp:
2115         (WebCore::SimpleFontData::nonSyntheticItalicFontData):
2116
2117 2013-06-18  Dean Jackson  <dino@apple.com>
2118
2119         Synthesized vertical italics on rotated glyphs are transformed incorrectly
2120         https://bugs.webkit.org/show_bug.cgi?id=117726
2121
2122         Reviewed by Enrica Casucci.
2123
2124         If a font does not have italic glyphs, and is in a vertical flow, then
2125         the synthesis of italics was skewing in the wrong direction. While here,
2126         ensure that no CJK text will get italics in vertical layout.
2127
2128         This is a topic under discussion in the CSS Working Group. The resolution
2129         at the June 2013 face-to-face was that:
2130         - italics in Japanese (and Chinese) text are rare in vertical layout
2131         - most people wanted Latin text to italicize in the direction of the line flow
2132
2133         The final behaviour was left undefined, but we consider the change here
2134         to be sufficient for now. In all cases, the best solution is to avoid
2135         synthesized italics by specifying a font that includes such forms.
2136
2137         Tests: fast/text/international/synthesized-italic-vertical-latin.html
2138                fast/text/international/synthesized-italic-vertical.html
2139
2140         * platform/graphics/FontGlyphs.cpp:
2141         (WebCore::glyphDataAndPageForCJKCharacterWithoutSyntheticItalic): New function
2142             that makes a new glyph data pair that is marked as NOT using a synthesized italic.
2143         (WebCore::FontGlyphs::glyphDataAndPageForCharacter): If this is a CJK character and
2144             has a synthesized oblique, then run it through the function above to make a new glyph data pair.
2145         * platform/graphics/SimpleFontData.cpp:
2146         (WebCore::SimpleFontData::nonSyntheticItalicFontData): Creates/returns a new SimpleFontData that will
2147             not synthesize italics.
2148         * platform/graphics/SimpleFontData.h: New method nonSyntheticItalicFontData.
2149         * platform/graphics/mac/FontMac.mm:
2150         (WebCore::Font::drawGlyphs): This is the actual bug fix. If you are in a vertical flow, the
2151             skew direction should be downwards, not leftwards.
2152
2153 2013-06-18  Commit Queue  <commit-queue@webkit.org>
2154
2155         Unreviewed, rolling out r151549.
2156         http://trac.webkit.org/changeset/151549
2157         https://bugs.webkit.org/show_bug.cgi?id=117741
2158
2159         broke selection in the web inspector source after scrolling
2160         (Requested by smfr on #webkit).
2161
2162         * rendering/RenderBox.cpp:
2163         (WebCore::RenderBox::computeRectForRepaint):
2164         * rendering/RenderLayerModelObject.cpp:
2165         * rendering/RenderLayerModelObject.h:
2166
2167 2013-06-18  Santosh Mahto  <santosh.ma@samsung.com>
2168
2169         <video> element delays document load event for ~ 3 seconds
2170         https://bugs.webkit.org/show_bug.cgi?id=90272
2171
2172         Reviewed by Eric Carlson.
2173
2174         Test: media/media-preload-no-delay-loadevent.html
2175
2176         * html/HTMLMediaElement.cpp:
2177         (WebCore::HTMLMediaElement::prepareForLoad):
2178         No need to delay document load event here  when preload="none"
2179
2180 2013-06-18  Diego Pino Garcia  <dpino@igalia.com>
2181
2182         [GTK] Remove comment about possibility of handling ObjCPolymorphic (it's used by ObjC bindings only)
2183         https://bugs.webkit.org/show_bug.cgi?id=117546
2184
2185         Reviewed by Xan Lopez.
2186
2187         According to the WebKit IDL spec the modifier ObjCPolymorphic only
2188         applies to the Objective-C bindings generator
2189
2190         * bindings/scripts/CodeGeneratorGObject.pm:
2191         (IsPolymorphic): Remove comment. Search parameter 'type' in array, instead of
2192         concatening a series of 'or' conditionals.
2193
2194 2013-06-18  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
2195
2196         Fix after r151673
2197         https://bugs.webkit.org/show_bug.cgi?id=116042
2198
2199         Reviewed by Philippe Normand.
2200
2201         Removed a spurious semicolon in the video sink caps definition.
2202
2203         No new tests, no behavior change.
2204
2205         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
2206
2207 2013-06-18  Praveen R Jadhav  <praveen.j@samsung.com>
2208
2209         [WebSpeech] Speech Recognition requires convertValue support in JSDictionary
2210         https://bugs.webkit.org/show_bug.cgi?id=117731
2211
2212         Reviewed by Christophe Dumez.
2213
2214         Build fails after enabling ENABLE_SCRIPTED_SPEECH feature. This patch
2215         resolves the issue.
2216
2217         No new tests. No change in behaviour.
2218
2219         * bindings/js/JSDictionary.cpp:
2220         (WebCore::JSDictionary::convertValue):
2221         * bindings/js/JSDictionary.h:
2222
2223 2013-06-18  Mary Wu  <mary.wu@torchmobile.com.cn>
2224
2225         [BlackBerry] only notify download client when download error
2226         https://bugs.webkit.org/show_bug.cgi?id=117687
2227
2228         Reviewed by Rob Buis.
2229
2230         When met network error in downloading, we notify the error to download
2231         client through download stream, we shouldn't notify page client the error.
2232         RIM JIRA 419985
2233
2234         * platform/network/blackberry/NetworkJob.cpp:
2235         (WebCore::NetworkJob::shouldNotifyClientFailed):
2236
2237 2013-06-18  Mario Sanchez Prada  <mario.prada@samsung.com>
2238
2239         Shader compiler not properly configured for GLES on cairo based ports
2240         https://bugs.webkit.org/show_bug.cgi?id=117705
2241
2242         Reviewed by Martin Robinson.
2243
2244         Configure the shader compiler with SH_ESSL_OUTPUT for GLESv2
2245         compliant platforms, and with SH_GLSL_OUTPUT otherwise.
2246
2247         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
2248         (WebCore::GraphicsContext3D::GraphicsContext3D):
2249
2250 2013-06-18  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2251
2252         touching any idl rebuilds all derived sources
2253         https://bugs.webkit.org/show_bug.cgi?id=117708
2254
2255         Reviewed by Kentaro Hara.
2256
2257         Fix preprocess-idls.pl script to update the following files only
2258         if they have changed:
2259         DerivedSources/WebCore/supplemental_dependency.tmp
2260         DerivedSources/WebCore/DOMWindowConstructors.idl
2261         DerivedSources/WebCore/WorkerContextConstructors.idl
2262
2263         This avoids triggering uselessly bindings generation for all IDL
2264         files whenever an IDL file is touched.
2265
2266         No new tests, no behavior change.
2267
2268         * bindings/scripts/preprocess-idls.pl:
2269         (WriteFileIfChanged):
2270         (GeneratePartialInterface):
2271
2272 2013-06-18  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
2273
2274         [GStreamer] [texmap] upload a video buffer into the video texture
2275         https://bugs.webkit.org/show_bug.cgi?id=116042
2276
2277         Reviewed by Philippe Normand.
2278
2279         This patch prepares more quickly the texture when the video frame is
2280         already in the GPU memory.
2281
2282         It is done using a new buffer's metadata available in GStreamer 1.2,
2283         and its purpose is to upload buffers into a OpenGL texture.
2284
2285         If the decoder provides buffers with this metadata, the buffer will be
2286         uploaded into the texture used for the video display and it will be
2287         rendered, avoiding a expensive mem copies. This is particularly useful
2288         for Full HD videos, where all the processing and display will be done
2289         in the GPU.
2290
2291         No new tests, covered by existing tests.
2292
2293         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2294         (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
2295         (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
2296         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
2297         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
2298         (webkitVideoSinkProposeAllocation):
2299
2300 2013-06-17  Peter Gal  <galpeter@inf.u-szeged.hu>
2301
2302         [curl] Set the http response status text
2303         https://bugs.webkit.org/show_bug.cgi?id=117307
2304
2305         Reviewed by Brent Fulgham.
2306
2307         No new tests, covered by existing ones.
2308
2309         * platform/network/curl/ResourceHandleManager.cpp:
2310         (WebCore::headerCallback):
2311
2312 2013-06-14  Brent Fulgham  <bfulgham@apple.com>
2313
2314         AX: Correct accessibility role when -webkit-box:display is used.
2315         https://bugs.webkit.org/show_bug.cgi?id=117706
2316
2317         Reviewed by Chris Fleizach.
2318
2319         accessibility/box-styled-lists.html
2320
2321         * accessibility/AccessibilityRenderObject.cpp:
2322         (WebCore::AccessibilityRenderObject::determineAccessibilityRole): If HTML token is
2323         of the list element type, treat it as a ListItemRole accessibility role, regardless
2324         of what specific renderer is being used.
2325
2326 2013-06-17  Roger Fong  <roger_fong@apple.com>
2327
2328         Add some UNUSED_PARAMs to RenderBlock.cpp so that it builds properly if CSS_EXCLUSIONS is disabled.
2329         https://bugs.webkit.org/show_bug.cgi?id=117722.
2330
2331         Rubberstamped by Jon Lee.
2332
2333         * rendering/RenderBlock.cpp:
2334         (WebCore::RenderBlock::updateRegionsAndExclusionsAfterChildLayout):
2335         (WebCore::RenderBlock::logicalLeftOffsetForLine):
2336         (WebCore::RenderBlock::logicalRightOffsetForLine):
2337
2338 2013-06-17  Beth Dakin  <bdakin@apple.com>
2339
2340         PageBanners appear over HTML5 video when media element is in full screen mode
2341         https://bugs.webkit.org/show_bug.cgi?id=117721
2342         -and corresponding-
2343         <rdar://problem/13686998>
2344
2345         Reviewed by Sam Weinig.
2346
2347         Update the scrolling tree when a header/footer has been removed.
2348         * rendering/RenderLayerCompositor.cpp:
2349         (WebCore::RenderLayerCompositor::updateLayerForHeader):
2350         (WebCore::RenderLayerCompositor::updateLayerForFooter):
2351
2352 2013-06-17  Roger Fong  <roger_fong@apple.com>
2353
2354         Modify Windows makefiles to copy some bin output into Program Files.
2355         https://bugs.webkit.org/show_bug.cgi?id=117714.
2356         <rdar://problem/14179054>
2357
2358         Reviewed by Brent Fulgham.
2359
2360         * WebCore.vcxproj/WebCore.make:
2361
2362 2013-06-17  Max Vujovic  <mvujovic@adobe.com>
2363
2364         Crash in loadPendingShaders
2365         https://bugs.webkit.org/show_bug.cgi?id=117665
2366
2367         Reviewed by Dean Jackson.
2368
2369         Speculative fix because the crash reports do not contain a test case.
2370
2371         Rearrange the conditions to check m_state.hasPendingShaders() first. Additionally, check if
2372         m_state.style() is non-null.
2373
2374         No new tests. We don't know how to reproduce this crash yet.
2375
2376         * css/StyleResolver.cpp:
2377         (WebCore::StyleResolver::loadPendingShaders):
2378
2379 2013-06-17  Ruth Fong  <ruth_fong@apple.com>
2380
2381         REGRESSION: Important controls are missing from <video> element UI, when compared to QuickTime
2382         https://bugs.webkit.org/show_bug.cgi?id=20599
2383
2384         Add a "Download Video"/"Download Audio" context menu item to download media
2385         elements.
2386
2387         Reviewed by Beth Dakin.
2388
2389         No new tests. media/context-menu-action.html,
2390         which has been disabled by bug 116651, is used to test context menus.
2391
2392         * English.lproj/Localizable.strings: Updated to
2393         include localizable strings for "Download Video" and "Download Audio".
2394
2395         * page/ContextMenuController.cpp: Updated to 
2396         include and handle a "Download Video/Audio" context menu item.
2397
2398         * platform/ContextMenuItem.h:
2399
2400         * platform/LocalizedStrings.cpp: 
2401         * platform/LocalizedStrings.h:
2402         * platform/efl/LocalizedStringsEfl.cpp:
2403         * platform/gtk/LocalizedStringsGtk.cpp:
2404         * platform/qt/LocalizedStringsQt.cpp: 
2405         Updated to include localizable strings for "Download Video" and "Download Audio".
2406
2407 2013-06-17  Zoltan Horvath  <zoltan@webkit.org>
2408
2409         [CSS Shapes] Consider bottom borders when calculating the position of the overflow
2410         https://bugs.webkit.org/show_bug.cgi?id=117663
2411
2412         Reviewed by Alexandru Chiculita.
2413
2414         When you have a shape and the content overflows from the shape we need to push the overflow below the content box,
2415         not below the border box. We didn't consider the bottom borders of the content box, now I fixed it too and the overflow
2416         just starts after the content box. I added a new helper function called pushShapeContentOverflowBelowTheContentBox. Now
2417         both the shape in flow thread and the shape overflow use the same function. I added a new test and modified the existing
2418         tests to cover all the affected cases.
2419
2420         Test: fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions-block-content.html
2421         Existing overflow tests also modified to test the behavior:
2422               fast/exclusions/shape-inside/shape-inside-empty-expected.html
2423               fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions-block-content-expected.html
2424               fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions-block-content.html
2425               fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions-expected.html
2426               fast/exclusions/shape-inside/shape-inside-overflow-fixed-dimensions.html
2427               fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes-expected.html
2428               fast/regions/shape-inside/shape-inside-on-regions-block-content-overflow-multiple-shapes.html
2429
2430         * rendering/RenderBlockLineLayout.cpp:
2431         (WebCore::pushShapeContentOverflowBelowTheContentBox):
2432         (WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLine):
2433         (WebCore::RenderBlock::updateShapeAndSegmentsForCurrentLineInFlowThread):
2434
2435 2013-06-17  Igor Oliveira  <igor.o@sisa.samsung.com>
2436
2437         [CSS Regions] ::before and ::after pseudo-elements are not displayed for regions
2438         https://bugs.webkit.org/show_bug.cgi?id=80163
2439
2440         When the implementation of the before/after was moved to the DOM, before/after generated
2441         content stoppped to work with css regions. The problem happens when:
2442         1. RenderRegion can not have children and when the PseudoElement::attach tries to create a renderer for the
2443         generated content, it fails.
2444         2. RenderRegion::canHaveGeneratedChildren should not be false because regions can have generated content.
2445
2446         Reviewed by David Hyatt.
2447
2448         Tests: fast/regions/region-dynamic-after-before.html
2449                fast/regions/region-generated-content-before-after.html
2450
2451         * dom/NodeRenderingContext.cpp:
2452         (WebCore::NodeRenderingContext::shouldCreateRenderer):
2453         * rendering/RenderRegion.h:
2454
2455 2013-06-17  Michael Brüning  <michael.bruning@digia.com>
2456
2457         [Mac] Remove unmaintained GStreamer specific video code.
2458         https://bugs.webkit.org/show_bug.cgi?id=117694
2459
2460         Reviewed by Philippe Normand.
2461
2462         No new tests, no behaviour change.
2463
2464         * platform/mac/WebVideoFullscreenController.mm:
2465         (-[WebVideoFullscreenController setupVideoOverlay:]):
2466         (-[WebVideoFullscreenController windowDidLoad]):
2467         (-[WebVideoFullscreenController setMediaElement:]):
2468         (-[WebVideoFullscreenController windowDidExitFullscreen]):
2469
2470 2013-06-17  Michael Brüning  <michael.bruning@digia.com>
2471
2472         [Qt] Remove Qt specific QTKIT flagged code.
2473         https://bugs.webkit.org/show_bug.cgi?id=117635
2474
2475         Reviewed by Simon Hausmann.
2476
2477         Due to disabling QTKIT for Qt in r151546, the
2478         code the flags that are not taken into account
2479         anymore and the code that has been rendered
2480         unreachable by this are removed.
2481
2482         No new tests, no behavioural change.
2483
2484         * Target.pri:
2485         * WebCore.exp.in:
2486         * page/Settings.cpp:
2487         * page/Settings.h:
2488         * platform/KURL.h:
2489         * platform/SharedBuffer.h:
2490         * platform/cf/KURLCFNet.cpp:
2491         (WebCore::KURL::fileSystemPath):
2492         * platform/cf/SharedBufferCF.cpp:
2493         * platform/graphics/FloatSize.h:
2494         * platform/graphics/IntRect.h:
2495         * platform/graphics/IntSize.h:
2496         * platform/graphics/MediaPlayer.cpp:
2497         (WebCore::installedMediaEngines):
2498         * platform/graphics/cg/FloatSizeCG.cpp:
2499         * platform/graphics/cg/IntRectCG.cpp:
2500         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
2501         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2502         (WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer):
2503         (WebCore::MediaPlayerPrivateQTKit::preferredRenderingMode):
2504         (WebCore::MediaPlayerPrivateQTKit::paint):
2505         (-[WebCoreMovieObserver layerHostChanged:]):
2506         * platform/mac/SharedBufferMac.mm:
2507         (+[WebCoreSharedBufferData initialize]):
2508         (WebCore::SharedBuffer::createWithContentsOfFile):
2509
2510 2013-06-17  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2511
2512         REGRESSSION(r151632) : Build error on ASSERT(WTF_USE_GRAMMAR_CHECKING)
2513         https://bugs.webkit.org/show_bug.cgi?id=117692
2514
2515         Reviewed by Jocelyn Turcotte.
2516
2517         Ifdef the feature-depending code and fix the assertions to check runtime conditions.
2518
2519         * editing/Editor.cpp:
2520         (WebCore::Editor::advanceToNextMisspelling):
2521         (WebCore::Editor::markMisspellingsOrBadGrammar):
2522         (WebCore::Editor::markBadGrammar):
2523         * editing/TextCheckingHelper.cpp:
2524         (WebCore::findBadGrammars):
2525         (WebCore::TextCheckingHelper::findFirstGrammarDetail):
2526         (WebCore::TextCheckingHelper::findFirstBadGrammar):
2527         (WebCore::TextCheckingHelper::isUngrammatical):
2528         (WebCore::TextCheckingHelper::markAllBadGrammar):
2529         (WebCore::checkTextOfParagraph):
2530         * editing/TextCheckingHelper.h:
2531
2532 2013-06-17  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2533
2534         Unreviewed, rolling out r151632.
2535         http://trac.webkit.org/changeset/151632
2536         https://bugs.webkit.org/show_bug.cgi?id=117585
2537
2538         Debug build error ASSERT(WTF_USE_GRAMMAR_CHECKING) for non MAC
2539         platforms
2540
2541         * page/ContextMenuController.cpp:
2542         (WebCore::ContextMenuController::contextMenuItemSelected):
2543         (WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
2544         (WebCore::ContextMenuController::populate):
2545         (WebCore::ContextMenuController::checkOrEnableIfNeeded):
2546         * platform/LocalizedStrings.cpp:
2547         (WebCore::contextMenuItemTagSpellingMenu):
2548         (WebCore::contextMenuItemTagShowSpellingPanel):
2549         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2550         * platform/LocalizedStrings.h:
2551         * platform/efl/LocalizedStringsEfl.cpp:
2552         (WebCore::contextMenuItemTagSpellingMenu):
2553         (WebCore::contextMenuItemTagShowSpellingPanel):
2554         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2555         * platform/gtk/LocalizedStringsGtk.cpp:
2556         (WebCore::contextMenuItemTagSpellingMenu):
2557         (WebCore::contextMenuItemTagShowSpellingPanel):
2558         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2559         * platform/qt/LocalizedStringsQt.cpp:
2560         (WebCore::contextMenuItemTagSpellingMenu):
2561         (WebCore::contextMenuItemTagShowSpellingPanel):
2562         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2563
2564 2013-06-17  Carlos Garcia Campos  <cgarcia@igalia.com>
2565
2566         Unreviewed. Fix make distcheck.
2567
2568         * GNUmakefile.list.am: Remove non existent files from compilation
2569         and add a missing header file.
2570
2571 2013-06-14  Grzegorz Czajkowski  <g.czajkowski@samsung.com>
2572
2573         Context menu grammar checking items are available when GRAMMAR_CHECKING macro is off
2574         https://bugs.webkit.org/show_bug.cgi?id=117585
2575
2576         Reviewed by Anders Carlsson.
2577
2578         Do not add "Check Grammar With Spelling" and "Ignore Grammar" to the context menu
2579         when GRAMMAR_CHECKING is off.
2580         Replace "Spelling and Grammar" with "Spelling" as the sub menu title and "Show/Hide Spelling
2581         and Grammar" with "Show/Hide Spelling" when GRAMMAR_CHECKING is off.
2582
2583         Additionally, guard grammar checking in context menu code to not necessarily
2584         compile it.
2585
2586         No new layout tests because every port has a different way of showing
2587         spelling/grammar context menu items.
2588
2589         * page/ContextMenuController.cpp:
2590         (WebCore::ContextMenuController::contextMenuItemSelected):
2591         (WebCore::ContextMenuController::createAndAppendSpellingAndGrammarSubMenu):
2592         (WebCore::ContextMenuController::populate):
2593         (WebCore::ContextMenuController::checkOrEnableIfNeeded):
2594         * platform/LocalizedStrings.cpp:
2595         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2596         (WebCore::contextMenuItemTagSpellingMenu):
2597         (WebCore::contextMenuItemTagShowSpellingPanel):
2598         * platform/LocalizedStrings.h:
2599         * platform/efl/LocalizedStringsEfl.cpp:
2600         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2601         (WebCore::contextMenuItemTagSpellingMenu):
2602         (WebCore::contextMenuItemTagShowSpellingPanel):
2603         * platform/gtk/LocalizedStringsGtk.cpp:
2604         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2605         (WebCore::contextMenuItemTagSpellingMenu):
2606         (WebCore::contextMenuItemTagShowSpellingPanel):
2607         * platform/qt/LocalizedStringsQt.cpp:
2608         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2609         (WebCore::contextMenuItemTagSpellingMenu):
2610         (WebCore::contextMenuItemTagShowSpellingPanel):
2611
2612 2013-06-16  Simon Fraser  <simon.fraser@apple.com>
2613
2614         Fix test assertion after r151624
2615
2616         An assertion was hit in RenderObject::willBeDestroyed()
2617         for fast/css/getComputedStyle/getComputedStyle-background-shorthand.html
2618         because the code asserted that the RenderObject had been removed from
2619         the FrameView's slowRepaintObject set before remove() was called,
2620         so move the assertion to after that call.
2621
2622         * rendering/RenderObject.cpp:
2623         (WebCore::RenderObject::willBeDestroyed):
2624
2625 2013-06-16  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2626
2627         Remove a redundant virtual call to hostWindow() in FrameView::invalidateRect()
2628         https://bugs.webkit.org/show_bug.cgi?id=117685
2629
2630         Reviewed by Andreas Kling.
2631
2632         From Blink r152490 by <vivek.vg@samsung.com>
2633
2634         * page/FrameView.cpp:
2635         (WebCore::FrameView::invalidateRect): Avoid hostWindow() twice call.
2636
2637 2013-06-16  Kent Tamura  <tkent@chromium.org>
2638
2639         Fix two assertion failures in Range::insertNode
2640         https://bugs.webkit.org/show_bug.cgi?id=116511
2641
2642         Reviewed by Ryosuke Niwa.
2643
2644         > ASSERTION FAILED: childBefore == (offset ? container->childNode(offset - 1) : 0)
2645         > third_party/WebKit/Source/WebCore/dom/RangeBoundaryPoint.h(115) : void WebCore::RangeBoundaryPoint::set(PassRefPtr<WebCore::Node>, int, WebCore::Node *)
2646
2647         > ASSERTION FAILED: child->parentNode()
2648         > ../../third_party/WebKit/Source/core/dom/RangeBoundaryPoint.h(133) : void WebCore::RangeBoundaryPoint::setToBeforeChild(WebCore::Node *)
2649         >  1   0x87594b2 WebCore::RangeBoundaryPoint::setToBeforeChild(WebCore::Node*)
2650         >  2   0x87534a9 WebCore::Range::insertNode(WTF::PassRefPtr<WebCore::Node>, int&)
2651
2652         Range::insertNode calls Node::insertBefore, in which an event handler
2653         can update the DOM structure so that RangeBoundaryPoint don't like. We
2654         postpone event dispatching by EventQueueScope.
2655
2656         Also, remove old comments about Acid3. The behavior is standardized.
2657         (Step 9 of http://dom.spec.whatwg.org/#dom-range-insertnode)
2658
2659         This patch imports http://src.chromium.org/viewvc/blink?view=revision&revision=150470 .
2660
2661         Test: fast/dom/Range/range-insertNode-assertion.html
2662
2663         * dom/Range.cpp:
2664         (WebCore::Range::insertNode):
2665          - Add EventQueueScope
2666          - Remove obsolete comments
2667
2668 2013-06-16  Simon Fraser  <simon.fraser@apple.com>
2669
2670         Fixed backgrounds in composited layers not repainted on scrolling
2671         https://bugs.webkit.org/show_bug.cgi?id=117684
2672
2673         Reviewed by Tim Horton.
2674         
2675         FrameView is aware that "slow-repaint objects" (i.e. renderers with 
2676         background-attachment:fixed) require a slow-scrolling path. However,
2677         it was ignorant of the fact that such objects could be painting into
2678         compositing layers; it simply dirtied the main tiles, and nothing else.
2679         
2680         Fix by having FrameView track the slow-repaints objects explicitly, as we
2681         do for position:fixed, and repaint each of them on scrolling.
2682
2683         Test: compositing/repaint/fixed-background-scroll.html
2684
2685         * page/FrameView.cpp:
2686         (WebCore::FrameView::FrameView): No need to initialize m_slowRepaintObjectCount,
2687         which is now an OwnPtr<RenderObjectSet>.
2688         (WebCore::FrameView::useSlowRepaints): Use hasSlowRepaintObjects() now.
2689         (WebCore::FrameView::addSlowRepaintObject): Now adds the object to a set,
2690         allocating the set if necessary.
2691         (WebCore::FrameView::removeSlowRepaintObject): Remove the object from the set,
2692         and deallocate the set if empty.
2693         (WebCore::FrameView::scrollContentsSlowPath): Call repaintSlowRepaintObjects();
2694         this is the change that fixes the bug for always-composited implementations (e.g.
2695         tile cache). This is a conservative change; we still invalidate the tile cache
2696         as well. This could be optimized later.
2697         (WebCore::FrameView::repaintSlowRepaintObjects): Repaint each object in the set.
2698         Their appropriate compositing ancestor will be repainted.
2699         (WebCore::FrameView::scrollPositionChangedViaPlatformWidget): Call
2700         repaintSlowRepaintObjects() so that fixed backgrounds in composited layers are
2701         correctly repainted; this fixes the bug for WebKit1.
2702         * page/FrameView.h: Replace m_slowRepaintObjectCount with a HashSet of
2703         RenderObjects.
2704         (WebCore::FrameView::hasSlowRepaintObject): Takes a RenderObject* now.
2705         (WebCore::FrameView::hasSlowRepaintObjects): Ditto.
2706         * rendering/RenderObject.cpp:
2707         (WebCore::RenderObject::styleWillChange): Pass the RenderObject.
2708         (WebCore::RenderObject::willBeDestroyed): Assert that this RenderObject
2709         has been removed from FrameView's set of slow-repaint objects already, if
2710         the document is not being destroyed.
2711         (WebCore::RenderObject::willBeRemovedFromTree): Pass the RenderObject.
2712
2713 2013-06-15  Simon Fraser  <simon.fraser@apple.com>
2714
2715         Painting of fixed background images is wrong in composited layers
2716         https://bugs.webkit.org/show_bug.cgi?id=65793
2717
2718         Reviewed by Sam Weinig.
2719         
2720         The code that computed background image geometry for background-attachment:fixed
2721         images was unaware of compositing, so often painting the image at the wrong location.
2722         
2723         Fix by having RenderBoxModelObject::calculateBackgroundImageGeometry() do the correct
2724         math for fixed backgrounds in composited layer by offsetting the viewport rect by
2725         the paint container's absolute position.
2726
2727         Tests: compositing/backgrounds/fixed-background-on-descendant.html
2728                compositing/backgrounds/fixed-backgrounds.html
2729
2730         * rendering/RenderBox.cpp:
2731         (WebCore::RenderBox::getBackgroundPaintedExtent): Now returns a bool indicating
2732         whether it is returning a reliable extent rect. It can return false in the case where
2733         a background is fixed, since computing the correct extent would require finding
2734         the appropriate composited ancestor to pass to calculateBackgroundImageGeometry().
2735         This is OK since this function is used for "background opaque" optimizations.
2736         (WebCore::RenderBox::computeBackgroundIsKnownToBeObscured): If getBackgroundPaintedExtent()
2737         returns false, return false.
2738         (WebCore::RenderBox::maskClipRect): We removed mask-attachment, so we never need to
2739         compute the composited ancestor here and can pass null.
2740         (WebCore::RenderBox::repaintLayerRectsForImage): Unwrap a comment.
2741         If the changed image is related to a fixed background, geometry.hasNonLocalGeometry()
2742         will be true. In that cause, just repaint the entire renderer rather than groveling
2743         around for a composited ancestor.
2744         * rendering/RenderBox.h: Changed name and signature of backgroundPaintedExtent.
2745         * rendering/RenderBoxModelObject.cpp:
2746         (WebCore::RenderBoxModelObject::paintFillLayerExtended): calculateBackgroundImageGeometry()
2747         now needs to know the painting container.
2748         (WebCore::RenderBoxModelObject::calculateBackgroundImageGeometry): Now takes a painting
2749         container, that is required to correctly compute the viewport-relative offset for fixed
2750         backgrounds. geometry.setHasNonLocalGeometry() is set for fixed backgrounds to indicate
2751         to callers that, if they didn't pass a paint container, the destRect is not accurate.
2752         The main bug fix is also here: we move the viewportRect by the absolute location of
2753         paint container, which is equivalent to the composited layer offset.
2754         (WebCore::RenderBoxModelObject::getGeometryForBackgroundImage): calculateBackgroundImageGeometry()
2755         takes a paint container.
2756         * rendering/RenderBoxModelObject.h:
2757         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::BackgroundImageGeometry):
2758         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setHasNonLocalGeometry):
2759         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::hasNonLocalGeometry):
2760         * rendering/RenderImage.cpp:
2761         (WebCore::RenderImage::computeBackgroundIsKnownToBeObscured): If getBackgroundPaintedExtent()
2762         can't cheaply give an accurate answer, return false.
2763         * rendering/RenderLayerBacking.cpp:
2764         (WebCore::RenderLayerBacking::updateDirectlyCompositedBackgroundImage): Pass the paint container,
2765         which is our own renderer.
2766
2767 2013-06-15  Simon Fraser  <simon.fraser@apple.com>
2768
2769         webkit-backface-visibility on a parent element stops background-position from updating
2770         https://bugs.webkit.org/show_bug.cgi?id=116319
2771
2772         Reviewed by Darin Adler.
2773
2774         The optimization added in r102952 was incorrect in the case where a style change
2775         resulted in a positioned-movement-only layout but also required a repaint; it assumed
2776         that a composited layer did not need to be repainted for a a positioned-movement-only layout.
2777         
2778         Fix by making RenderObject::setNeedsLayoutForPositionedMovement() check whether the
2779         style change requires a repaint, and calling setLayerNeedsFullRepaint() in that situation.
2780
2781         Test: compositing/repaint/positioned-movement.html
2782
2783         * rendering/RenderLayer.h: RepaintStatus values do not need to be bit flags.
2784         * rendering/RenderObject.cpp:
2785         (WebCore::RenderObject::setStyle): Pass the old style to setNeedsPositionedMovementLayout().
2786         (WebCore::RenderObject::styleDidChange): Ditto.
2787         * rendering/RenderObject.h:
2788         (WebCore::RenderObject::setNeedsPositionedMovementLayout): Now takes a const RenderStyle*.
2789         * rendering/style/RenderStyle.cpp:
2790         (WebCore::RenderStyle::diff): Remove a comment now that this bug is fixed.
2791         (WebCore::RenderStyle::diffRequiresRepaint): Public wrapper for changeRequiresRepaint().
2792         That function never uses contextSensitiveProperties so we can safely ignore them.
2793         * rendering/style/RenderStyle.h: Expose a way to call changeRequiresRepaint().
2794
2795 2013-06-15  Darin Adler  <darin@apple.com>
2796
2797         Try to fix iOS after last Pasteboard change.
2798
2799         * platform/ios/PasteboardIOS.mm:
2800         (WebCore::Pasteboard::writeSelection): Put the new code inline here because the
2801         stringSelectionForPasteboard function is currently Mac-only.
2802
2803 2013-06-15  Darin Adler  <darin@apple.com>
2804
2805         Move Pasteboard::getStringSelection to Editor, fixing a layering violation
2806         https://bugs.webkit.org/show_bug.cgi?id=117673
2807
2808         Reviewed by Ryosuke Niwa.
2809
2810         * editing/Editor.h: Added stringSelectionForPasteboardWithImageAltText.
2811
2812         * editing/mac/EditorMac.mm:
2813         (WebCore::Editor::stringSelectionForPasteboard): Moved code here from the Pasteboard
2814         class, since all the Pasteboard class did really was turn around and call back here.
2815         (WebCore::Editor::stringSelectionForPasteboardWithImageAltText): Added. Variant of
2816         the function above that includes image alt text. Separate named functions are often
2817         the best pattern for something like this unless there are many different combinations.
2818
2819         * platform/Pasteboard.h: Remove the Mac-only Pasteboard::getStringSelectioon.
2820
2821         * platform/ios/PasteboardIOS.mm:
2822         (WebCore::Pasteboard::writeSelection):
2823         * platform/mac/PasteboardMac.mm:
2824         (WebCore::Pasteboard::writeSelectionForTypes):
2825         Call the two new functions instead of the old Pasteboard::getStringSelection.
2826
2827 2013-06-15  Darin Adler  <darin@apple.com>
2828
2829         Support using clang instead of gcc for bindings preprocessing
2830         https://bugs.webkit.org/show_bug.cgi?id=117674
2831
2832         Reviewed by Sam Weinig.
2833
2834         I couldn't build on my computer because I don't have gcc installed.
2835         This is my cut at fixing it.
2836
2837         * bindings/scripts/CodeGeneratorObjC.pm:
2838         (ReadPublicInterfaces): Use clang if present.
2839         * bindings/scripts/preprocessor.pm:
2840         (applyPreprocessor): Ditto.
2841
2842 2013-06-14  Robert Hogan  <robert@webkit.org>
2843
2844         REGRESSION (r148367): Facebook and Twitter icons at macworld.com are stacked vertically, obscuring Twitter one
2845         https://bugs.webkit.org/show_bug.cgi?id=117284
2846
2847         Reviewed by David Hyatt.
2848
2849         Test: fast/text/whitespace/inline-whitespace-wrapping-7.html
2850
2851         We were looking for line breaks in trailing collapsed whitespace even when inside a nowrap inline.
2852         It's wrong to do this as we don't know yet if we will want or need to break - that decision has to
2853         be deferred until we enter a part of the line that is autowrap.
2854
2855         * rendering/RenderBlockLineLayout.cpp:
2856         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
2857
2858 2013-06-14  Lukasz Gajowy  <l.gajowy@samsung.com>
2859
2860         background-color is not preserved when inserting a new paragraph
2861         https://bugs.webkit.org/show_bug.cgi?id=117138
2862
2863         Reviewed by Ryosuke Niwa.
2864
2865         The style isn't copied because background-color isn't defined as inheritable property.
2866
2867         Test: editing/inserting/insert-paragraph-not-preserving-background-color.html
2868
2869         * editing/InsertParagraphSeparatorCommand.cpp:
2870         (WebCore::InsertParagraphSeparatorCommand::calculateStyleBeforeInsertion):
2871         Passing EditingPropertiesInEffect instead of implicit parameter OnlyEditingInheritableProperties.
2872
2873 2013-06-14  Adam Barth  <abarth@webkit.org>
2874
2875         Threaded HTML parser can ASSERT in some situations
2876         https://bugs.webkit.org/show_bug.cgi?id=117662
2877
2878         Reviewed by Ryosuke Niwa.
2879
2880         This patch merges https://chromium.googlesource.com/chromium/blink/+/3c0a112b42d72c7623f78463166dd7f04d680b4c
2881
2882         --->8---
2883         The parser is supposed to stop processing data when there's a pending
2884         location change, but before this CL we would actually process the first
2885         token from every chunk when there was a pending location change.
2886
2887         If the first token in a chunk was a "script" start tag, that would put
2888         the tree builder into TextMode, which can only process character
2889         tokens. If the next chunk starts with another start tag token, the tree
2890         builder would be sad and hit an ASSERT.
2891
2892         This CL reorders a couple lines in HTMLDocumentParser so that we check
2893         for pending location changes before processing any tokens. This change
2894         stops us from processing the first token from each chunk while there is
2895         a pending location change.
2896
2897         This issue can reproduce on any platform, but it reproduced often on
2898         Android because mobile markup often elides spaces between consecutive
2899         script tags. If there are space characters between the script tags,
2900         then those space characters will be the first ones processes in the
2901         chunk, which doesn't trigger the ASSERT.
2902         ---8<---
2903
2904         Since we landed this patch in Blink, we've been able to reproduce this
2905         issue on desktops as well. I spoke with rniwa in #webkit and he said
2906         that WebKit doesn't have any current plans to enable the threaded
2907         parser but that it was probably worth merging this patch anyway.
2908
2909         Test: http/tests/navigation/pending-location-change-assert.html
2910
2911         * html/parser/HTMLDocumentParser.cpp:
2912         (WebCore::HTMLDocumentParser::processParsedChunkFromBackgroundParser):
2913
2914 2013-06-14  Patrick Gansterer  <paroga@webkit.org>
2915
2916         Introduce USE(WINGDI) for the Windows port
2917         https://bugs.webkit.org/show_bug.cgi?id=116138
2918
2919         Reviewed by Ryosuke Niwa.
2920
2921         Using USE(WINGDI) instead of OS(WINCE) will allow us to
2922         compile the GDI based Windows port on WinNT too.
2923
2924         * config.h:
2925         * platform/graphics/BitmapImage.h:
2926         * platform/graphics/FontPlatformData.h:
2927         * platform/graphics/GlyphBuffer.h:
2928         (WebCore):
2929         (GlyphBuffer):
2930         * platform/graphics/Gradient.h:
2931         (Gradient):
2932         * platform/graphics/GraphicsContext.cpp:
2933         (WebCore):
2934         * platform/graphics/GraphicsContext.h:
2935         (WebCore):
2936         (GraphicsContext):
2937         * platform/graphics/ImageBufferData.h:
2938         * platform/graphics/NativeImagePtr.h:
2939         (WebCore):
2940         * platform/graphics/Path.h:
2941         * platform/graphics/Pattern.h:
2942         * plugins/win/PluginViewWin.cpp:
2943         (WebCore::PluginView::paintWindowedPluginIntoContext):
2944         (WebCore::PluginView::paint):
2945         (WebCore::PluginView::snapshot):
2946
2947 2013-06-13  Jer Noble  <jer.noble@apple.com>
2948
2949         Report the memory cost of HTMLMediaElements to GC.
2950         https://bugs.webkit.org/show_bug.cgi?id=117608
2951
2952         Reviewed by Darin Adler.
2953
2954         Report the extra memory cost of a HTMLMediaElement to the VM, in order to
2955         encourage GC to occur after a media element is removed from the DOM.
2956
2957         Because we cannot know for sure the memory cost of our underlying media
2958         framework objects, use the worst case scenario for the media memory cost:
2959         the buffered percentage of movie * the total data length of the movie.
2960
2961         * html/HTMLMediaElement.cpp:
2962         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_reportedExtraMemoryCost.
2963         (WebCore::HTMLMediaElement::removedFrom): Report the extra memory cost.
2964         * html/HTMLMediaElement.h:
2965         * html/TimeRanges.cpp:
2966         (TimeRanges::totalDuration): Added convenience function.
2967         * html/TimeRanges.h:
2968         * platform/graphics/MediaPlayer.cpp:
2969         (WebCore::MediaPlayer::extraMemoryCost): Pass to MediaPlayerPrivate.
2970         * platform/graphics/MediaPlayer.h:
2971         * platform/graphics/MediaPlayerPrivate.h:
2972         (WebCore::MediaPlayerPrivateInterface::extraMemoryCost): Default to 0.
2973         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2974         (WebCore::MediaPlayerPrivateAVFoundation::extraMemoryCost): Return the percentage
2975             loaded * total data length.
2976         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2977
2978 2013-06-13  Jer Noble  <jer.noble@apple.com>
2979
2980         Add support for AVFoundation-backed HTMLMediaElements in the WebVideoFullScreenController.
2981         https://bugs.webkit.org/show_bug.cgi?id=117597
2982
2983         Reviewed by Eric Carlson.
2984
2985         Check for media elements with AVFoundation media types and create a AVPlayerLayer
2986         rather than a QTMovieLayer.
2987
2988         * platform/mac/WebVideoFullscreenController.h:
2989         * platform/mac/WebVideoFullscreenController.mm:
2990         (-[WebVideoFullscreenController setupVideoOverlay:]): Take a CALayer rather than a
2991             QTMovieLayer. Move the code which connects the layer with it's media source into
2992             setMediaElement.
2993         (-[WebVideoFullscreenController windowDidLoad]): Give the window's contentView a generic
2994             CALayer instaead of a QTMovieLayer.
2995         (-[WebVideoFullscreenController setMediaElement:]): Test whether the incoming media 
2996             element is backed by a QTMovie or an AVPlayer, and create the appropriate layer.
2997         (-[WebVideoFullscreenController windowDidExitFullscreen]): Remove the observer of
2998             AVPlayer's rate property.
2999         (-[WebVideoFullscreenController observeValueForKeyPath:ofObject:change:context:]):
3000             If the keyPath is "rate", call rateChanged.
3001
3002 2013-06-14  Enrica Casucci  <enrica@apple.com>
3003
3004         WKPageFindStringMatches ignores the kWKFindOptionsBackwards option.
3005         https://bugs.webkit.org/show_bug.cgi?id=117647
3006         <rdar://problem/13881024>
3007
3008         Reviewed by Darin Adler.
3009         
3010         The API returns the matched ranges in the DOM order regardless of the
3011         find direction, but the index of the first match after the user selection
3012         should take the find direction into account.
3013
3014         Extended existing test in TestWebKitAPI.
3015
3016         * page/Page.cpp:
3017         (WebCore::Page::findStringMatchingRanges): Added handling of the Backwards case.
3018         * page/Page.h: Fixed incorrect name of the enum.
3019
3020 2013-06-14  Jer Noble  <jer.noble@apple.com>
3021
3022         REGRESSION (r150651): Web Audio doesn't work at all (silence or squawks) on Mountain Lion
3023         https://bugs.webkit.org/show_bug.cgi?id=117652
3024
3025         Reviewed by Eric Carlson.
3026
3027         r150651 disabled setting the buffer size to a large value, but in so doing, also
3028         disabled setting the buffer size to a small value for Web Audio. Narrow the Mountain
3029         Lion protection to just the <video> element case.
3030         
3031         * platform/audio/mac/AudioSessionManagerMac.cpp:
3032         (AudioSessionManager::updateSessionState):
3033
3034 2013-06-14  Ryosuke Niwa  <rniwa@webkit.org>
3035
3036         Function names on Object.prototype should be common identifiers
3037         https://bugs.webkit.org/show_bug.cgi?id=117614
3038
3039         Reviewed by Darin Adler.
3040
3041         Use the added common identifiers.
3042
3043         * bindings/js/JSDOMWindowBase.cpp:
3044         (WebCore::JSDOMWindowBase::finishCreation):
3045         (WebCore::JSDOMWindowBase::updateDocument):
3046
3047 2013-06-14  Arpita Bahuguna  <a.bah@samsung.com>
3048
3049         Editing: wrong text position when you click enter on the text behind the image
3050         https://bugs.webkit.org/show_bug.cgi?id=115023
3051
3052         Reviewed by Ryosuke Niwa.
3053
3054         When trying to break a line after an image followed by some text, contrary
3055         to the expected behavior the text doesn't move to a new line, instead, the
3056         caret position just shifts to the end of line.
3057
3058         As per the existing implementation for inserting a paragraph separator,
3059         the insertion position obtained corresponds to the point after the image
3060         element.
3061         Since the insertion position doesn't resolve to being offset in the
3062         following text node (0 offset), no splitting of text occurs and the block
3063         to be inserted is placed after the containing (start) block (thereby
3064         causing the caret position to shift).
3065
3066         If the computed insertionPosition points to an element that shall be
3067         ignored for editing purposes (i.e. cannot have a VisiblePosition inside
3068         it), and the position lies either at the start or at the end of such
3069         an element, we should move our Position either upstream or
3070         downstream (respectively) so as to obtain a valid position which can
3071         be used further for splitting of the text.
3072         
3073         Test: editing/inserting/insert-paragraph-after-non-editable-node-before-text.html
3074
3075         * editing/InsertParagraphSeparatorCommand.cpp:
3076         (WebCore::InsertParagraphSeparatorCommand::doApply):
3077         Moving the insertionPosition either upstream or downstream, if the point
3078         lies either at the start or at the end of the anchor node.
3079         The ensuing position, if a text node, can then be used for splitting of
3080         the text correctly.
3081
3082 2013-06-14  Alberto Garcia  <agarcia@igalia.com>
3083
3084         [BlackBerry] Remove implementation of ContextMenu classes
3085         https://bugs.webkit.org/show_bug.cgi?id=114860
3086
3087         Reviewed by Rob Buis.
3088
3089         This code is not being used so we can safely remove it.
3090
3091         * PlatformBlackBerry.cmake:
3092         * platform/blackberry/ContextMenuBlackBerry.cpp: Removed.
3093         * platform/blackberry/ContextMenuItemBlackBerry.cpp: Removed.
3094         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
3095
3096 2013-06-14  Brent Fulgham  <bfulgham@apple.com>
3097
3098         [Windows] Provide simple <meter> drawing logic for testing.
3099         https://bugs.webkit.org/show_bug.cgi?id=117645.
3100
3101         Reviewed by Anders Carlsson.
3102
3103         accessbility/meter-element.html
3104
3105         * rendering/RenderThemeSafari.cpp: Simple test implementation
3106         (WebCore::RenderThemeSafari::adjustMeterStyle): Added.
3107         (WebCore::RenderThemeSafari::supportsMeter): Added.
3108         (WebCore::RenderThemeSafari::meterSizeForBounds): Added.
3109         (WebCore::RenderThemeSafari::paintMeter): Added.
3110         * rendering/RenderThemeSafari.h:
3111         * rendering/RenderThemeWin.cpp:
3112         (WebCore::RenderThemeWin::progressBarTheme): Added.
3113         (WebCore::RenderThemeWin::getClassicThemeData): Support meters.
3114         (WebCore::RenderThemeWin::getThemeData): Support meter theme.
3115         (WebCore::RenderThemeWin::adjustMeterStyle): Added.
3116         (WebCore::RenderThemeWin::supportsMeter): Added.
3117         (WebCore::RenderThemeWin::meterSizeForBounds): Added.
3118         (WebCore::RenderThemeWin::paintMeter): Added.
3119         * rendering/RenderThemeWin.h:
3120
3121 2013-06-14  Eric Carlson  <eric.carlson@apple.com>
3122
3123         Potential use-after-free with an event fired at a HTMLMediaElement which is currently being deleted
3124         https://bugs.webkit.org/show_bug.cgi?id=117466
3125
3126         Reviewed by Oliver Hunt.
3127         
3128         Merge https://chromium.googlesource.com/chromium/blink/+/f4200a0093b3d9376f703961615359ec7fb712b4
3129         
3130         If an event is created using as target an HTMLMediaElement which is
3131         currently being deleted it becomes a heap-use-after free situation.
3132
3133         The GenericEventQueue instance is already owned by the HTMLMediaElement,
3134         and there already is an underlying mechanism to set the target of the
3135         event to NULL, if their target is owner of the queue.
3136
3137         In order to avoid creating this reference in the first place, we enqueue
3138         the event with a NULL target to defer the refcount increment until the
3139         timer for dispatching the event happens (which won't happen at all if
3140         garbage collection is already destroying the objects).
3141
3142         Test: media/track/media-element-enqueue-event-crash.html
3143
3144         * dom/GenericEventQueue.cpp:
3145         (WebCore::GenericEventQueue::enqueueEvent): Don't ASSERT if the event has no target.
3146
3147         * html/HTMLMediaElement.cpp:
3148         (WebCore::HTMLMediaElement::~HTMLMediaElement): Close the event queue so it won't try to
3149             dispatch any pending events.
3150         (WebCore::HTMLMediaElement::scheduleEvent): Don't set the event target, it will happen just
3151             prior to event dispatch.
3152         (WebCore::HTMLMediaElement::stop): Close the event queue.
3153
3154 2013-06-14  Dean Jackson  <dino@apple.com>
3155
3156         Clicking on snapshotting plug-ins does not restart them
3157         https://bugs.webkit.org/show_bug.cgi?id=117620
3158         <rdar://problem/13821729>
3159
3160         Follow-up review comments from Darin Adler, with some
3161         discussion on IRC.
3162
3163         Sprinkle OVERRIDE on virtual functions where needed. Also
3164         make sure that the Event is a MouseEvent before casting to it.
3165
3166         * html/HTMLPlugInElement.h: Move defaultEventHandler back to protected and add OVERRIDE.
3167         * html/HTMLPlugInImageElement.cpp:
3168         (WebCore::HTMLPlugInImageElement::defaultEventHandler): Check for MouseEvent and
3169         use toMouseEvent().
3170         * html/HTMLPlugInImageElement.h: Sprinkle some OVERRIDEs, and move defaultEventHandler
3171         to private.
3172
3173 2013-06-14  Timothy Hatcher  <timothy@apple.com>
3174
3175         Remove front-end from the WebCore Xcode project.
3176         https://bugs.webkit.org/show_bug.cgi?id=117640
3177
3178         Reviewed by Darin Adler.
3179
3180         * WebCore.xcodeproj/project.pbxproj:
3181
3182 2013-06-14  Jaehun Lim  <ljaehun.lim@samsung.com>
3183
3184         CSSParser::parseImageSet() doesn't need a parameter.
3185         https://bugs.webkit.org/show_bug.cgi?id=117617
3186
3187         Reviewed by Darin Adler.
3188
3189         parseImageSet() can get m_valueList directly.
3190         And minor fixes.
3191
3192         No new tests, no behavior change.
3193
3194         * css/CSSParser.cpp:
3195         (WebCore::CSSParser::parseValue):
3196         (WebCore::CSSParser::parseContent):
3197         (WebCore::CSSParser::parseFillImage):
3198         (WebCore::CSSParser::parseBorderImage):
3199         (WebCore::CSSParser::parseImageSet):
3200         * css/CSSParser.h:
3201
3202 2013-06-14  Tiancheng Jiang  <tijiang@rim.com>
3203
3204         [BlackBerry] Dropdown button UX updates.
3205         https://bugs.webkit.org/show_bug.cgi?id=117642.
3206
3207         Reviewed by Rob Buis.
3208
3209         JIRA 388652
3210         Internally Reviewed by Jeff Rogers.
3211
3212         Change arrow assert.
3213
3214         * platform/blackberry/RenderThemeBlackBerry.cpp:
3215         (WebCore::RenderThemeBlackBerry::paintMenuList):
3216
3217 2013-06-14  Arvid Nilsson  <anilsson@rim.com>
3218
3219         [BlackBerry] LayerTiler fails to tile really big layers
3220         https://bugs.webkit.org/show_bug.cgi?id=117211
3221
3222         Reviewed by Carlos Garcia Campos.
3223
3224         PR 273550
3225
3226         The cause for this bug was that LayerTiler computed which tiles are
3227         visible by exhaustively mapping every tile to normalized device
3228         coordinates and checking if it intersected the viewport. If there was a
3229         lot of tiles, it would get stuck in this loop, iterating over all
3230         tiles, for a very long time. Also, the visibility information was
3231         transferred to the WebKit thread using mutexes, which added unnecessary
3232         mutex contention to the mix.
3233
3234         Fixed by doing the reverse calculation, unprojecting the visible part
3235         of the layer to layer coordinate space to find which tiles are visible.
3236         Instead of doing a traditional unprojection of point to line and see
3237         where the line intersects the layer, this patch uses the w-coordinates
3238         of triangle vertices to perform "perspective correct texturing" of the
3239         intersection points in device space, which is equivalent to
3240         unprojection since perspective correct texturing computes a 2D
3241         coordinate in (normalized) layer coordinate space which is easily
3242         scaled up to the layer bounds and get the visible region expressed in
3243         layer coordinate space.
3244
3245         The visible area is approximated by a rectangle, and a set of tiles
3246         needing render are added to the mix, and  we have a swappable data
3247         structure so visbility can be transferred to WebKit thread without
3248         mutexes, but instead using atomic swap.
3249
3250         No new tests, covered by existing tests.
3251
3252         * platform/graphics/blackberry/CanvasLayerWebKitThread.cpp:
3253         (CanvasLayerCompositingThreadClient):
3254         (WebCore::CanvasLayerCompositingThreadClient::drawTextures):
3255         * platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.cpp:
3256         (WebCore::EGLImageLayerCompositingThreadClient::drawTextures):
3257         * platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.h:
3258         (EGLImageLayerCompositingThreadClient):
3259         * platform/graphics/blackberry/LayerCompositingThread.cpp:
3260         (WebCore::LayerCompositingThread::drawTextures):
3261         (WebCore::LayerCompositingThread::drawSurface):
3262         * platform/graphics/blackberry/LayerCompositingThread.h:
3263         (LayerCompositingThread):
3264         * platform/graphics/blackberry/LayerCompositingThreadClient.h:
3265         (WebCore):
3266         (LayerCompositingThreadClient):
3267         * platform/graphics/blackberry/LayerRenderer.cpp:
3268         (WebCore::LayerRenderer::compositeLayersRecursive):
3269         * platform/graphics/blackberry/LayerTile.cpp:
3270         (WebCore::LayerTile::LayerTile):
3271         (WebCore::LayerTile::setContents):
3272         (WebCore::LayerTile::updateContents):
3273         (WebCore::LayerTile::discardContents):
3274         * platform/graphics/blackberry/LayerTile.h:
3275         (LayerTile):
3276         (WebCore::LayerTile::contentsScale):
3277         (WebCore::LayerTile::setContentsDirty):
3278         * platform/graphics/blackberry/LayerTiler.cpp:
3279         (LayerVisibility):
3280         (WebCore::LayerVisibility::LayerVisibility):
3281         (WebCore::LayerVisibility::visibleRect):
3282         (WebCore::LayerVisibility::setVisibleRect):
3283         (WebCore::LayerVisibility::needsRender):
3284         (WebCore::LayerVisibility::tileNeedsRender):
3285         (WebCore::LayerVisibility::willRenderTile):
3286         (WebCore::LayerVisibility::swapTilesNeedingRender):
3287         (WebCore::LayerVisibility::merge):
3288         (WebCore):
3289         (WebCore::LayerTiler::LayerTiler):
3290         (WebCore::LayerTiler::~LayerTiler):
3291         (WebCore::LayerTiler::updateTextureContentsIfNeeded):
3292         (WebCore::LayerTiler::swapFrontVisibility):
3293         (WebCore::LayerTiler::setFrontVisibility):
3294         (WebCore::LayerTiler::layerVisibilityChanged):
3295         (WebCore::LayerTiler::uploadTexturesIfNeeded):
3296         (WebCore::LayerTiler::processTextureJob):
3297         (WebCore::LayerTiler::addTileJob):
3298         (WebCore::LayerTiler::performTileJob):
3299         (WebCore::LayerTiler::drawTile):
3300         (WebCore::inflateViewport):
3301         (WebCore::LayerTiler::drawTextures):
3302         (WebCore::LayerTiler::pruneTextures):
3303         (WebCore::LayerTiler::rectForTile):
3304         * platform/graphics/blackberry/LayerTiler.h:
3305         (WebCore):
3306         (LayerTiler):
3307         (WebCore::LayerTiler::TextureJob::TextureJob):
3308         (WebCore::LayerTiler::takeFrontVisibility):
3309         * platform/graphics/blackberry/LayerUtilities.h:
3310         (WebCore):
3311         (WebCore::det):
3312         (WebCore::dot):
3313         (LayerClipEdge):
3314         (WebCore::LayerClipEdge::LayerClipEdge):
3315         (WebCore::LayerClipEdge::isPointInside):
3316         (WebCore::LayerClipEdge::computeIntersection):
3317         (WebCore::intersectPolygonWithRect):
3318         (WebCore::computeBarycentricCoordinates):
3319         (WebCore::manhattanDistanceToViewport):
3320         (UnprojectionVertex):
3321         (WebCore::compareManhattanDistanceToViewport):
3322         (WebCore::unproject):
3323
3324 2013-06-14  Antoine Quint  <graouts@apple.com>
3325
3326         [Mac] clicking caption track glyph should dismiss menu
3327         https://bugs.webkit.org/show_bug.cgi?id=117621
3328
3329         We now correctly capture all click events while the captions track menu
3330         is showing, and ensure that no other control in the media player can be
3331         activated as the track list gets dismissed by clicking anywhere but on
3332         itself.
3333
3334         Reviewed by Eric Carlson.
3335
3336         * html/shadow/MediaControlsApple.cpp:
3337         (WebCore::MediaControlsApple::showClosedCaptionTrackList):
3338         Make the controls panel non-interactive and track click events in the
3339         capture phase also on the controls container itself such that we can
3340         identify correctly whether a click in the <video> shadow tree is on
3341         the track list or another element (the target could only be resolved
3342         to a shadow tree node if the event is handled within the shadow tree).
3343
3344         (WebCore::MediaControlsApple::hideClosedCaptionTrackList):
3345         Make the controls panel interactive again and remove the new click
3346         event handler on the controls container.
3347
3348         (WebCore::MediaControlsApple::handleClickEvent):
3349         Capture any click event that targets a node anywhere outside of the track
3350         list container and its subtree and hide the track list in this condition.
3351
3352         (WebCore::MediaControlsAppleEventListener::handleEvent):
3353         Call handleClickEvent() on the media controls when a click event is handled.
3354
3355         * html/shadow/MediaControlsApple.h:
3356         New public handleClickEvent() API such that it can be called from
3357         MediaControlsAppleEventListener::handleEvent().
3358
3359 2013-06-14  Arvid Nilsson  <anilsson@rim.com>
3360
3361         [BlackBerry] Accelerated compositing layers that intersect the image plane are incorrectly transformed
3362         https://bugs.webkit.org/show_bug.cgi?id=117067
3363
3364         Reviewed by Carlos Garcia Campos.
3365
3366         PR 273550
3367
3368         The BlackBerry port used to mathematically project each corner of each
3369         layer bounds rectangle, which gives the wrong results when the layer
3370         intersects the image plane.
3371
3372         For display lists, we still got the correct appearance of the layer
3373         contents, since the display list results in geometry that's transformed
3374         in the vertex shader, on the GPU.
3375
3376         However, the transformed bounds are used for drawing the debug border,
3377         performing visibility calculations on the CPU and drawing of WebGL,
3378         masks/reflections and filters. Using the mathematical projection of
3379         points that lie behind the image plane gives the wrong results.
3380
3381         The most important consequence of this bug was that the wrong area of
3382         the layer would be considered visible, so a tiled layer would not
3383         populate the right tiles (or any tiles at all).
3384
3385         Fixed by implementing something along the lines of the recipe in
3386         section 6.2 of http://www.w3.org/TR/css3-transforms.
3387
3388         No new tests, manually testable by enabling debug border on
3389         https://developer.mozilla.org/en-US/demos/detail/the-box/launch.
3390
3391         * platform/graphics/blackberry/EGLImageLayerCompositingThreadClient.cpp:
3392         (WebCore::EGLImageLayerCompositingThreadClient::drawTextures):
3393         * platform/graphics/blackberry/LayerCompositingThread.cpp:
3394         (WebCore::LayerCompositingThread::LayerCompositingThread):
3395         (WebCore::LayerCompositingThread::setDrawTransform):
3396         (WebCore):
3397         (WebCore::LayerCompositingThread::textureCoordinates):
3398         (WebCore::LayerCompositingThread::drawTextures):
3399         * platform/graphics/blackberry/LayerCompositingThread.h:
3400         (LayerCompositingThread):
3401         (WebCore::LayerCompositingThread::transformedBounds):
3402         (WebCore::LayerCompositingThread::ws):
3403         (WebCore::LayerCompositingThread::centerW):
3404         * platform/graphics/blackberry/LayerFilterRenderer.cpp:
3405         (WebCore::LayerFilterRenderer::applyActions):
3406         * platform/graphics/blackberry/LayerRenderer.cpp:
3407         (WebCore::compareLayerW):
3408         (WebCore::LayerRenderer::compositeLayers):
3409         (WebCore::LayerRenderer::drawDebugBorder):
3410         (WebCore):
3411         (WebCore::LayerRenderer::updateLayersRecursive):
3412         (WebCore::LayerRenderer::compositeLayersRecursive):
3413         * platform/graphics/blackberry/LayerRenderer.h:
3414         (WebCore):
3415         (LayerRenderer):
3416         * platform/graphics/blackberry/LayerRendererSurface.cpp:
3417         (WebCore::LayerRendererSurface::boundingBox):
3418         (WebCore::LayerRendererSurface::transformedBounds):
3419         * platform/graphics/blackberry/LayerRendererSurface.h:
3420         (WebCore::LayerRendererSurface::setDrawTransform):
3421         (WebCore::LayerRendererSurface::setReplicaDrawTransform):
3422         (LayerRendererSurface):
3423         * platform/graphics/blackberry/LayerUtilities.h: Added.
3424         (WebCore):
3425         (LayerClipPlane):
3426         (WebCore::LayerClipPlane::LayerClipPlane):
3427         (WebCore::LayerClipPlane::isPointInside):
3428         (WebCore::LayerClipPlane::computeIntersection):
3429         (WebCore::intersect):
3430         (WebCore::boundingBox):
3431         (WebCore::multVecMatrix):
3432         (WebCore::toVector):
3433
3434 2013-06-14  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3435
3436         [Qt] Map rewind and fast forward keys to match GoogleTV
3437         https://bugs.webkit.org/show_bug.cgi?id=117634
3438
3439         Reviewed by Jocelyn Turcotte.
3440
3441         Set the same keycode for media keys rewind and fast-forward as
3442         GoogleTV does.
3443
3444         * platform/qt/PlatformKeyboardEventQt.cpp:
3445         (WebCore::windowsKeyCodeForKeyEvent):
3446
3447 2013-06-13  Carlos Garcia Campos  <cgarcia@igalia.com>