Scrolling to anchor tags does nothing in vertical-rl writing mode
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-12-09  Myles C. Maxfield  <mmaxfield@apple.com>
2
3         Scrolling to anchor tags does nothing in vertical-rl writing mode
4         https://bugs.webkit.org/show_bug.cgi?id=137838
5
6         Reviewed by David Hyatt.
7
8         Scroll to a particular tag, and make sure the viewport is rendered as expected.
9
10         Tests: fast/events/scroll-to-anchor-vertical-lr-writing-mode.html
11                fast/events/scroll-to-anchor-vertical-writing-mode-contained-2.html
12                fast/events/scroll-to-anchor-vertical-writing-mode-contained.html
13                fast/events/scroll-to-anchor-vertical-writing-mode.html
14
15         * page/FrameView.cpp:
16         (WebCore::FrameView::scrollToAnchor):
17         * rendering/ScrollBehavior.cpp:
18         * rendering/ScrollBehavior.h:
19
20 2014-12-09  Bem Jones-Bey  <bjonesbe@adobe.com>
21
22         REGRESSION(r155906): Page content disappears on Tuaw article after loading
23         https://bugs.webkit.org/show_bug.cgi?id=138100
24
25         Reviewed by Simon Fraser.
26
27         Test: ManualTests/float-layer-not-painting.html
28
29         * rendering/RenderBlockFlow.cpp:
30         (WebCore::RenderBlockFlow::insertFloatingObject): If a layout happens,
31         it can change whether the float's renderer has a self painting layer.
32         So in that case, we need to update the flag on the FloatingObject
33         instance for that float.
34
35 2014-12-09  Andreas Kling  <akling@apple.com>
36
37         Roll out r165076.
38         <rdar://problem/18490587>
39
40         This change broke selection when editing Confluence wiki pages.
41
42         * css/CSSComputedStyleDeclaration.cpp:
43         (WebCore::nodeOrItsAncestorNeedsStyleRecalc):
44         (WebCore::ComputedStyleExtractor::propertyValue):
45         * dom/Document.cpp:
46         (WebCore::nodeOrItsAncestorNeedsStyleRecalc): Deleted.
47         (WebCore::Document::updateStyleIfNeededForNode): Deleted.
48         * dom/Document.h:
49         * editing/htmlediting.cpp:
50         (WebCore::isEditablePosition):
51         * html/TextFieldInputType.cpp:
52         (WebCore::TextFieldInputType::forwardEvent):
53
54 2014-12-09  Myles C. Maxfield  <mmaxfield@apple.com>
55
56         Fix iOS build after r177035.
57
58         Unreviewed.
59
60         I accidentally added my line to WebCore.exp.in inside an
61         #IF PLATFORM(MAC) block.
62
63         * WebCore.exp.in:
64
65 2014-12-09  Jeremy Jones  <jeremyj@apple.com>
66
67         Enable automatic optimized fullscreen mode.
68         https://bugs.webkit.org/show_bug.cgi?id=139437
69
70         Reviewed by Eric Carlson.
71
72         Anticipate transition to optimized video fullscreen mode when entering background.
73
74         * WebCore.exp.in:
75         * html/HTMLMediaElement.cpp:
76         (WebCore::HTMLMediaElement::overrideBackgroundPlaybackRestriction): Add logic for automatic transition detection.
77         * platform/ios/WebVideoFullscreenInterfaceAVKit.h:
78         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
79         (WebVideoFullscreenInterfaceAVKit::mayAutomaticallyShowVideoOptimized): Add logic for automatic transition detection.
80
81 2014-12-09  Myles C. Maxfield  <mmaxfield@apple.com>
82
83         Delete Node::boundingBox()
84         https://bugs.webkit.org/show_bug.cgi?id=139333
85
86         Conceptually, boundingBox() should be on RenderInline. In addition,
87         Node::boundingBox() is completely broken for inline elements: it
88         makes a rect from the top left of the first inline child to the
89         bottom right of the last inline child, disregarding the intermediate
90         inline children. This breaks with vertical text and with line
91         breaks.
92
93         What makes this problem worse is that some functions actually rely
94         on this bad behavior. These functions are functions that use the
95         Node's so-called "bounding box" to scroll to an anchor tag.
96
97         This patch goes through all the call sites of Node::boundingBox(),
98         and segregates them into calls that expect the true bounding box
99         and calls that need this false bounding box. This patch then moves
100         this false bounding box into RenderElement, using the name
101         anchorRect(). Callers what want the correct bounding box have been
102         updated to use RenderElement::absoluteBoundingBoxRect().
103
104         Reviewed by Zalan Bujtas.
105
106         No new tests because there should be no behavior change.
107
108         * accessibility/AccessibilitySlider.cpp:
109         (WebCore::AccessibilitySliderThumb::elementRect): Use
110         RenderObject::absoluteBoundingBoxRect()
111         * dom/ContainerNode.cpp:
112         (WebCore::ContainerNode::getUpperLeftCorner): Deleted.
113         (WebCore::ContainerNode::getLowerRightCorner): Deleted.
114         (WebCore::ContainerNode::boundingBox): Deleted.
115         * dom/ContainerNode.h:
116         * dom/Element.cpp:
117         (WebCore::Element::scrollIntoView): Use RenderElement::anchorRect().
118         (WebCore::Element::scrollIntoViewIfNeeded): Ditto.
119         (WebCore::Element::updateFocusAppearance): Ditto.
120         * dom/Node.cpp:
121         (WebCore::Node::boundingBox): Deleted.
122         * dom/Node.h:
123         (WebCore::Node::pixelSnappedBoundingBox): Deleted.
124         * html/ColorInputType.cpp:
125         (WebCore::ColorInputType::elementRectRelativeToRootView): Use
126         RenderObject::absoluteBoundingBoxRect()
127         * html/HTMLInputElement.cpp:
128         (WebCore::HTMLInputElement::setupDateTimeChooserParameters): Ditto.
129         * html/ValidationMessage.cpp:
130         (WebCore::ValidationMessage::buildBubbleTree): Ditto.
131         * page/FrameView.cpp:
132         (WebCore::FrameView::scrollElementToRect): Use
133         RenderElement::anchorRect().
134         (WebCore::FrameView::scrollToAnchor): Ditto.
135         * page/SpatialNavigation.cpp:
136         (WebCore::nodeRectInAbsoluteCoordinates): Use
137         RenderObject::absoluteBoundingBoxRect()
138         * rendering/RenderElement.cpp:
139         (WebCore::RenderElement::getUpperLeftCorner): Moved from ContainerNode.
140         (WebCore::RenderElement::getLowerRightCorner): Moved from
141         ContainerNode.
142         (WebCore::RenderElement::anchorRect): Moved from ContainerNode.
143         * rendering/RenderObject.h:
144         * rendering/RenderText.cpp:
145         (WebCore::RenderText::topOfFirstText): Helper for
146         RenderElement::anchorRect()
147         * rendering/RenderText.h:
148
149 2014-12-09  Antti Koivisto  <antti@apple.com>
150
151         REGRESSION (r173272): When open PDF from Safari in iBooks, title is replaced to “QuickLookPDF-s72DbgAU-1”
152         https://bugs.webkit.org/show_bug.cgi?id=139453
153         rdar://problem/19052192
154
155         Reviewed by Pratik Solanki.
156
157         Pulling the suggested filename from the platform response returned null string on USE(CFNETWORK) code path
158         if it was the first thing needed from it.
159
160         * platform/network/cf/ResourceResponseCFNet.cpp:
161         (WebCore::ResourceResponse::platformSuggestedFilename): Use the lazy accessor.
162
163 2014-12-09  Joanmarie Diggs  <jdiggs@igalia.com>
164
165         AX: [ATK] MathML tokens, tables, and row-like elements are exposed with ATK_ROLE_UNKNOWN
166         https://bugs.webkit.org/show_bug.cgi?id=139402
167
168         Reviewed by Chris Fleizach.
169
170         Expose tables and their children using existing table AtkRole types,
171         token elements using the new ATK_ROLE_STATIC, and row-like elements
172         using ATK_ROLE_PANEL. Also expose <mlabeledtr> as a math table row
173         and <ms> as math text.
174
175         No new tests; instead, added MathML elements to roles-exposed.html.
176
177         * accessibility/AccessibilityObject.h:
178         (WebCore::AccessibilityObject::isMathToken):
179         * accessibility/AccessibilityRenderObject.cpp:
180         (WebCore::AccessibilityRenderObject::isMathToken):
181         (WebCore::AccessibilityRenderObject::isMathText):
182         (WebCore::AccessibilityRenderObject::isMathTableRow):
183         * accessibility/AccessibilityRenderObject.h:
184         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
185         (atkRole):
186         * css/mathml.css:
187         (ms, mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose):
188         (mi, mo, mrow, mfenced, mfrac, msub, msup, msubsup, mmultiscripts, mprescripts, none, munder, mover, munderover, msqrt, mroot, merror, mphantom, mstyle, menclose): Deleted.
189         * mathml/mathtags.in:
190
191 2014-12-09  Dean Jackson  <dino@apple.com>
192
193         [Apple] Use Accelerate framework to speed-up FEGaussianBlur
194         https://bugs.webkit.org/show_bug.cgi?id=139310
195
196         Unreviewed followup, after comments by Andreas Kling.
197
198         It was pointed out that we already have a USE(ACCELERATE), so
199         we don't need a HAVE(ACCELERATE) :)
200
201         * platform/graphics/filters/FEGaussianBlur.cpp:
202         (WebCore::FEGaussianBlur::platformApplyGeneric):
203         (WebCore::FEGaussianBlur::platformApply):
204
205 2014-12-09  Alberto Garcia  <berto@igalia.com>
206
207         Unreviewed. Style fix following r177019.
208
209         Use nullptr instead of 0.
210
211         * bindings/gobject/ConvertToUTF8String.cpp:
212         (convertToUTF8String):
213
214 2014-12-09  Javier Fernandez  <jfernandez@igalia.com>
215
216         Refactor of rebuildFloatingObjectSetFromIntrudingFloats function after r176957.
217         https://bugs.webkit.org/show_bug.cgi?id=139445
218
219         Reviewed by Darin Adler.
220
221         The function rebuildFloatingObjectSetFromIntrudingFloats would be clearer if
222         we use a helper function to locate the previous sibling with overhanging floats.
223
224         These changes has been suggested as part of the patch review for bug #139150, which
225         landed in r176957.
226
227         No new tests, no behavior change.
228
229         * rendering/RenderBlock.cpp:
230         (WebCore::RenderBlock::avoidsFloats):
231         * rendering/RenderBlockFlow.cpp:
232         (WebCore::RenderBlockFlow::previousSiblingWithOverhangingFloats):
233         (WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats):
234         * rendering/RenderBlockFlow.h:
235         * rendering/RenderBox.h:
236         (WebCore::RenderBox::isGridItem):
237
238 2014-12-09  Alberto Garcia  <berto@igalia.com>
239
240         convertToUTF8String converts null string to empty string
241         https://bugs.webkit.org/show_bug.cgi?id=133904
242
243         Reviewed by Carlos Garcia Campos.
244
245         Test added to Tools/TestWebKitAPI/Tests/WebKit2Gtk/DOMNodeTest.cpp
246
247         Return 0 if the string is null.
248
249         * bindings/gobject/ConvertToUTF8String.cpp:
250         (convertToUTF8String):
251
252 2014-12-09  Jeremy Jones  <jeremyj@apple.com>
253
254         When invalidating fullscreen, cancel instead of stop optimizedFullscfreen.
255         https://bugs.webkit.org/show_bug.cgi?id=139145
256
257         Reviewed by Eric Carlson.
258
259         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
260         (WebVideoFullscreenInterfaceAVKit::invalidate): call cancel instead of stop
261         * platform/spi/ios/AVKitSPI.h: add -cancelOptimizedFullscreen.
262
263 2014-12-09  Alberto Garcia  <berto@igalia.com>
264
265         [Media][GTK][EFL] Reduce style updates (painting) in controls
266         https://bugs.webkit.org/show_bug.cgi?id=137773
267
268         Reviewed by Carlos Garcia Campos.
269
270         Don't update media controls if they are not visible, and
271         initialize slider to a zero value.
272
273         * Modules/mediacontrols/mediaControlsBase.js:
274         (Controller.prototype.createControls):
275         (Controller.prototype.handleDurationChange):
276         (Controller.prototype.updateProgress):
277         (Controller.prototype.updateTime):
278         * Modules/mediacontrols/mediaControlsGtk.js:
279         (ControllerGtk.prototype.updateTime):
280
281 2014-12-09  Sebastian Dröge  <sebastian@centricular.com>
282
283         [GStreamer] Add video/mp2t as alternative mimetype for MPEG TS
284         https://bugs.webkit.org/show_bug.cgi?id=139433
285
286         Reviewed by Philippe Normand.
287
288         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
289         (WebCore::mimeTypeCache):
290         It's used e.g. on http://www.jwplayer.com/html5/mediasource/ .
291
292 2014-12-09  Jeremy Jones  <jeremyj@apple.com>
293
294         Enable activating optimized fullscreen mode from standard fulscreen mode.
295         https://bugs.webkit.org/show_bug.cgi?id=139137
296
297         Reviewed by Jer Noble.
298
299         Going from standard fullscreen mode to optimized fullscreen mode requires the ability to
300         update the fullscreen mode in HTMLMediaElement and a new standard-and-optimized-fullscreen mode.
301
302         This change KVO observes AVKit's optimizedFullscreenActive and forwards the change down to HTMLMediaElement so it can adjust behavior appropriately.
303         It also hides the standard fullscreen window when going into this mode.
304         When exiting fullscreen from standard-and-optimized, first exit fullscreen immediately, then stopOptimizedFullscreen, and notify of completion when
305         optimizedFullscreen goes inactive.
306
307         * Modules/mediacontrols/MediaControlsHost.cpp:
308         (WebCore::MediaControlsHost::fullscreenMode):
309             Treat VideoFullscreenModeStandardAndOptimized as a kind of optimized mode.
310         * WebCore.exp.in: New export for WebVideoFullscreenModelVideoElement::fullscreenModeChanged
311         * html/HTMLMediaElement.cpp:
312         (WebCore::HTMLMediaElement::displayType):
313             Treat VideoFullscreenModeStandardAndOptimized as a kind of optimized mode.
314         * html/HTMLMediaElement.h: Add new fullscreen mode.
315         (WebCore::HTMLMediaElement::fullscreenModeChanged): Update fullscreen mode so it does optimized fullscreen mode behaviors when applicable.
316         * platform/ios/WebVideoFullscreenInterfaceAVKit.h: Declare setOptimizedActive
317         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
318         (-[WebAVVideoLayer setPlayerViewController:]): observe optimizedFullscreenActive
319         (-[WebAVVideoLayer observeValueForKeyPath:ofObject:change:context:]): respond to changes to optimizedFullscreenActive
320         (WebVideoFullscreenInterfaceAVKit::WebVideoFullscreenInterfaceAVKit): Init members.
321         (WebVideoFullscreenInterfaceAVKit::playerController): 
322             Give player controller a reference to the WebVideoFullscreenInterface so it can pass along mode change state.
323         (WebVideoFullscreenInterfaceAVKit::enterFullscreen): Handle new fullscreen modes.
324         (WebVideoFullscreenInterfaceAVKit::exitFullscreen): ditto
325         (WebVideoFullscreenInterfaceAVKit::invalidate): ditto
326         (WebVideoFullscreenInterfaceAVKit::requestHideAndExitFullscreen): ditto
327         (WebVideoFullscreenInterfaceAVKit::setOptimizedActive): Handle changes to fullscreen mode.
328             Also handle the case that exiting fullscreen happend when optimized mode ends.
329         * platform/ios/WebVideoFullscreenModel.h: declare fullscreenModeChanged()
330         * platform/ios/WebVideoFullscreenModelVideoElement.h: declare fullscreenModeChanged()
331         * platform/ios/WebVideoFullscreenModelVideoElement.mm: add fullscreenModeChanged()
332         (WebVideoFullscreenModelVideoElement::WebVideoFullscreenModelVideoElement): Init members.
333         (WebVideoFullscreenModelVideoElement::fullscreenModeChanged): Added. Update video element fullscreen mode.
334
335 2014-12-08  Benjamin Poulain  <bpoulain@apple.com>
336
337         Fix the iOS build after r177002
338
339         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
340         (WebCore::Extensions3DOpenGL::supportsExtension):
341
342 2014-12-07  Roger Fong  <roger_fong@apple.com>
343
344         Implementation EXT_sRGB as a WebGL1 extension.
345         https://bugs.webkit.org/show_bug.cgi?id=109332.
346         <rdar://problem/17363470>
347
348         Reviewed by Dean Jackson.
349
350         Tested by:
351         webgl/1.0.3/conformance/webgl/ext-sRGB.html
352         fast/canvas/webgl/constants.html
353
354         This patch implements the SRGB extension for WebGL1.
355         Details of the extension specification are outlined here: 
356         https://www.khronos.org/registry/webgl/extensions/EXT_sRGB/
357
358         * CMakeLists.txt:
359         * DerivedSources.cpp:
360         * DerivedSources.make:
361         * WebCore.vcxproj/WebCore.vcxproj:
362         * WebCore.vcxproj/WebCore.vcxproj.filters:
363         * WebCore.xcodeproj/project.pbxproj:
364         * bindings/js/JSWebGLRenderingContextCustom.cpp:
365         (WebCore::toJS):
366         * html/canvas/EXTsRGB.cpp: Added.
367         (WebCore::EXTsRGB::EXTsRGB):
368         (WebCore::EXTsRGB::~EXTsRGB):
369         (WebCore::EXTsRGB::getName):
370         * html/canvas/EXTsRGB.h: Added.
371         * html/canvas/EXTsRGB.idl: Added.
372         * html/canvas/WebGLExtension.h:
373         * html/canvas/WebGLFramebuffer.cpp:
374         (WebCore::WebGLFramebuffer::checkStatus):
375         * html/canvas/WebGLRenderingContext.cpp:
376         (WebCore::WebGLRenderingContext::getExtension):
377         (WebCore::WebGLRenderingContext::getFramebufferAttachmentParameter):
378         (WebCore::WebGLRenderingContext::getSupportedExtensions):
379         (WebCore::WebGLRenderingContext::renderbufferStorage):
380         (WebCore::WebGLRenderingContext::validateTexFuncFormatAndType):
381         * html/canvas/WebGLRenderingContext.h:
382         * html/canvas/WebGLRenderingContext.idl:
383         * platform/graphics/Extensions3D.h:
384         * platform/graphics/GraphicsContext3D.cpp:
385         (WebCore::GraphicsContext3D::computeFormatAndTypeParameters):
386         (WebCore::GraphicsContext3D::getClearBitsByFormat):
387         (WebCore::GraphicsContext3D::getChannelBitsByFormat):
388         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
389         (WebCore::Extensions3DOpenGL::supportsExtension):
390         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
391         (WebCore::GraphicsContext3D::texImage2D):
392
393 2014-12-08  Dean Jackson  <dino@apple.com>
394
395         [Apple] Use Accelerate framework to speed-up FEGaussianBlur
396         https://bugs.webkit.org/show_bug.cgi?id=139310
397         <rdar://problem/18434594>
398
399         Reviewed by Simon Fraser.
400
401         Using Apple's Accelerate framework provides faster blurs
402         than the parallel jobs approach, especially since r168577
403         which started performing retina-accurate filters.
404
405         Using Accelerate.framework to replace the existing box blur (what
406         we use to approximate Gaussian blurs) gets about a 20% speedup on
407         desktop class machines, but between a 2x-6x speedup on iOS hardware.
408         Obviously this depends on the size of the content being blurred,
409         but it is still good.
410
411         The change is to intercept the platformApply function on
412         FEGaussianBlur and send it off to Accelerate.
413
414         There is an interactive performance test: PerformanceTests/Interactive/blur-filter-timing.html
415
416         * platform/graphics/filters/FEGaussianBlur.cpp:
417         (WebCore::kernelPosition): Move this to a file static function from the .h.
418         (WebCore::accelerateBoxBlur): The Accelerate implementation.
419         (WebCore::standardBoxBlur): The default generic/standard implementation.
420         (WebCore::FEGaussianBlur::platformApplyGeneric): Use accelerate or the default form.
421         (WebCore::FEGaussianBlur::platformApply): Don't try the parallelJobs approach if Accelerate is available.
422         * platform/graphics/filters/FEGaussianBlur.h:
423         (WebCore::FEGaussianBlur::kernelPosition): Deleted. Move into the .cpp.
424
425 2014-12-08  Beth Dakin  <bdakin@apple.com>
426
427         Copy and Lookup menu items should be disabled when something is not copyable
428         https://bugs.webkit.org/show_bug.cgi?id=139423
429
430         Reviewed by Tim Horton.
431
432         New function allowCopy() indicates whether the HitTestResult would allow itself to 
433         be copied onto the pasteboard.
434         * WebCore.exp.in:
435         * rendering/HitTestResult.cpp:
436         (WebCore::HitTestResult::allowsCopy):
437         * rendering/HitTestResult.h:
438
439 2014-12-08  Chris Dumez  <cdumez@apple.com>
440
441         Move 'text-shadow' check from RenderStyle::changeRequiresLayout() to changeAffectsVisualOverflow()
442         https://bugs.webkit.org/show_bug.cgi?id=139420
443
444         Reviewed by Simon Fraser.
445
446         Move 'text-shadow' check from RenderStyle::changeRequiresLayout() to
447         changeAffectsVisualOverflow(). This has no behavior change as
448         changeRequiresLayout() calls changeAffectsVisualOverflow(). However,
449         this is clearer as text-shadow affects the visual overflow (similarly
450         to box-shadow).
451
452         No new tests, no behavior change.
453
454         * rendering/style/RenderStyle.cpp:
455         (WebCore::RenderStyle::changeAffectsVisualOverflow):
456         (WebCore::RenderStyle::changeRequiresLayout):
457
458 2014-12-08  Anders Carlsson  <andersca@apple.com>
459
460         Fix typo.
461
462         * storage/StorageNamespaceImpl.cpp:
463         (WebCore::localStorageNamespaceMap):
464
465 2014-12-08  Anders Carlsson  <andersca@apple.com>
466
467         WebStorageNamespaceProvider should create StorageNamespaceImpls
468         https://bugs.webkit.org/show_bug.cgi?id=139419
469
470         Reviewed by Andreas Kling.
471
472         * WebCore.exp.in:
473         Export new symbols.
474
475         * WebCore.xcodeproj/project.pbxproj:
476         Make StorageNamespaceImpl.h a private header.
477
478         * storage/StorageNamespaceImpl.cpp:
479         (WebCore::localStorageNamespaceMap):
480         Use NeverDestroyed.
481
482         (WebCore::StorageNamespaceImpl::createSessionStorageNamespace):
483         (WebCore::StorageNamespaceImpl::getOrCreateLocalStorageNamespace):
484         Add new functions for creating namespaces.
485
486         (WebCore::StorageNamespaceImpl::localStorageNamespace):
487         (WebCore::StorageNamespaceImpl::sessionStorageNamespace):
488         Call the new functions.
489
490         * storage/StorageNamespaceImpl.h:
491         Add new members, make sure to deprecate the ones we don't want anyone calling.
492
493         * storage/StorageNamespaceProvider.cpp:
494         (WebCore::StorageNamespaceProvider::localStorageNamespace):
495         (WebCore::StorageNamespaceProvider::transientLocalStorageNamespace):
496         * storage/StorageNamespaceProvider.h:
497         Pass the quota when creating storage namespaces.
498
499 2014-12-08  Benjamin Poulain  <benjamin@webkit.org>
500
501         Move the new :nth-child() and :nth-last-child() out of experimental
502         https://bugs.webkit.org/show_bug.cgi?id=139329
503
504         Reviewed by Andreas Kling.
505
506         The code is stable.
507         Feedback has only been positive.
508         All the known issues have been reported to the CSS WG.
509
510         The #ifdef don't really work anymore anyway for :nth-child() and :nth-last-child().
511
512         * css/CSSSelector.cpp:
513         (WebCore::CSSSelector::selectorText):
514         * css/SelectorChecker.cpp:
515         (WebCore::SelectorChecker::checkOne):
516
517 2014-12-08  Benjamin Poulain  <bpoulain@apple.com>
518
519         A selector should not match anything if there is a subselector after a non-scrollbar pseudo element
520         https://bugs.webkit.org/show_bug.cgi?id=139336
521         rdar://problem/19051623
522
523         Reviewed by Andreas Kling.
524
525         Tests: fast/css/duplicated-after-pseudo-element.html
526                fast/css/duplicated-before-pseudo-element.html
527                fast/css/simple-selector-after-pseudo-element.html
528
529         * cssjit/SelectorCompiler.cpp:
530         (WebCore::SelectorCompiler::constructFragments):
531         The code filtering out simple selectors was only considering
532         the relation CSSSelector::SubSelector. That comes from SelectorChecker where
533         the relation considered is the one from the previous selector.
534
535         In this case, the relation is the extracted from the current simple selector,
536         which is the relation with the following selector.
537
538         When a single simple selector was following a pseudo element, the relation evaluated
539         to descendant/adjacent/direct-adjacent and we were skipping the early return.
540         That simple selector was evaluated as a regular filter on the element.
541
542         In the CSS JIT, we can just remove that test altogether. Fragments are built one after
543         the other. By definition, the evaluated simple selector belong to the current fragment.
544
545 2014-12-08  Benjamin Poulain  <benjamin@webkit.org>
546
547         Fix the parsing of advanced :lang() after r176902
548         https://bugs.webkit.org/show_bug.cgi?id=139379
549
550         Reviewed by Andreas Kling.
551
552         There were two mistakes that were only caught in debug:
553
554         The lexer was not calling isIdentifierStart() before parseIdentifier().
555         Some identifier we were parsing should have been invalid.
556         This was caught with an assertion in parseIdentifier().
557
558         The other issue is that we were accumulating pointer to freed memory.
559         The tokenizer for LANGRANGE was creating a new string with a StringBuilder.
560         The problem is that CSSParserString does not keep the source string alive.
561         Consequently, the list of language range was accumulating pointers to dead
562         StringImpls.
563
564         The fix there is to simply extend the token to take the original asterisk character
565         from the input. That is not elegant but that's efficient and we know
566         the buffer lifetime.
567
568         * css/CSSParser.cpp:
569         (WebCore::CSSParser::realLex):
570         * css/CSSGrammar.y.in: Fix the indentation of a language range rule.
571
572 2014-12-08  Anders Carlsson  <andersca@apple.com>
573
574         Try to fix the 32-bit build.
575
576         * WebCore.exp.in:
577
578 2014-12-08  Myles C. Maxfield  <mmaxfield@apple.com>
579
580         Inline elements whose parents have small line-height are laid out too low
581         https://bugs.webkit.org/show_bug.cgi?id=139375
582
583         Reviewed by Dave Hyatt.
584
585         This is a port of the Blink patch at
586         https://src.chromium.org/viewvc/blink?revision=155253&view=revision.
587
588         When laying out inline elements, we try to align leaf children's parents'
589         baselines across the entire line. However, if you set line-height: 0px on a
590         span, the entire InlineBox which represents that span will have a height of
591         0, and therefore be laid out entirely on the baseline. In addition, we will
592         try to vertically center the leaf text in the span's InlineBox, which means
593         the leaf text will be vertically centered on the baseline. All the other
594         major browsers do not have this behavior; instead, they line up the boxes
595         as you would expect.
596
597         This bug led to a rendering problem on the front page of the New York Times.
598
599         Here is the ChangeLog from the Blink patch:
600
601         Fix baseline position when it is outside the element's box
602
603         Specifically, we shouldn't force the baseline to be inside the element. IE
604         and FF don't do this, and it's incompatible with the CSS spec:
605         
606         "The baseline of an 'inline-block' is the baseline of its last line box in
607         the normal flow, unless it has either no in-flow line boxes or if its
608         'overflow' property has a computed value other than 'visible', in which case
609         the baseline is the bottom margin edge."
610         -- http://www.w3.org/TR/CSS21/visudet.html#leading
611         
612         It doesn't have a special case for "baseline is outside of the element's
613         margin box".
614         
615         Test: fast/text/small-line-height.html
616
617         * rendering/RenderBlock.cpp:
618         (WebCore::RenderBlock::baselinePosition):
619
620 2014-12-08  Eric Carlson  <eric.carlson@apple.com>
621
622         [iOS] YouTube plug-in replacement should support partial urls
623         https://bugs.webkit.org/show_bug.cgi?id=139400
624
625         Reviewed by Alexey Proskuryakov.
626
627         * Modules/plugins/YouTubePluginReplacement.cpp:
628         (WebCore::YouTubePluginReplacement::youTubeURL): Call Document::completeURL.
629
630 2014-12-08  Anders Carlsson  <andersca@apple.com>
631
632         Build fix.
633
634         * platform/network/soup/CookieJarSoup.cpp:
635         (WebCore::deleteAllCookiesModifiedSince):
636
637 2014-12-08  Andreas Kling  <akling@apple.com>
638
639         Roll out r175352.
640         <https://webkit.org/b/139146>
641
642         This change caused some unexpected assertions in line box teardown.
643
644         * rendering/RenderBlock.cpp:
645         (WebCore::RenderBlock::willBeDestroyed):
646         * rendering/RenderBlock.h:
647         * rendering/RenderBlockFlow.cpp:
648         (WebCore::RenderBlockFlow::willBeDestroyed):
649         * rendering/RenderElement.cpp:
650         (WebCore::RenderElement::willBeRemovedFromTree):
651         * rendering/RenderInline.cpp:
652         (WebCore::RenderInline::willBeDestroyed):
653         * rendering/RenderReplaced.cpp:
654         (WebCore::RenderReplaced::willBeDestroyed):
655         * rendering/RenderReplaced.h:
656
657 2014-12-08  Myles C. Maxfield  <mmaxfield@apple.com>
658
659         [iOS] Narrow non-breaking space does not fall back to a correct font
660         https://bugs.webkit.org/show_bug.cgi?id=139335
661
662         Reviewed by Enrica Casucci.
663
664         Test: fast/text/narrow-non-breaking-space.html
665
666         * platform/graphics/ios/FontCacheIOS.mm:
667         (WebCore::requiresCustomFallbackFont):
668         (WebCore::FontCache::getCustomFallbackFont):
669
670 2014-12-08  Daniel Bates  <dabates@apple.com>
671
672         [iOS] Fix the WebKit build with the public SDK
673
674         Include header UIKit.h.
675
676         * platform/spi/ios/MediaPlayerSPI.h:
677
678 2014-12-08  Chris Dumez  <cdumez@apple.com>
679
680         Revert r176293 & r176275
681
682         Unreviewed, revert r176293 & r176275 changing the Vector API to use unsigned type
683         instead of size_t. There is some disagreement regarding the long-term direction
684         of the API and we shouldn’t leave the API partly transitioned to unsigned type
685         while making a decision.
686
687         * WebCore.exp.in:
688         * bindings/js/JSDOMBinding.h:
689         (WebCore::jsArray):
690         * bindings/js/JSWebGLRenderingContextCustom.cpp:
691         * cssjit/SelectorCompiler.cpp:
692         * editing/TextIterator.cpp:
693         (WebCore::SearchBuffer::append):
694         (WebCore::SearchBuffer::prependContext):
695         (WebCore::SearchBuffer::search):
696         (WebCore::SearchBuffer::length):
697         * html/HTMLFormElement.cpp:
698         (WebCore::removeFromVector):
699         * html/parser/HTMLParserIdioms.h:
700         * html/parser/XSSAuditor.cpp:
701         * platform/SharedBuffer.cpp:
702         (WebCore::SharedBuffer::duplicateDataBufferIfNecessary):
703
704 2014-12-08  Anders Carlsson  <andersca@apple.com>
705
706         Make deleting all cookies after a given date a little more sane
707         https://bugs.webkit.org/show_bug.cgi?id=139409
708
709         Reviewed by Antti Koivisto.
710
711         * WebCore.exp.in:
712         Update exports.
713
714         * platform/network/PlatformCookieJar.h:
715         * platform/network/cf/CookieJarCFNet.cpp:
716         * platform/network/curl/CookieJarCurl.cpp:
717         * platform/network/soup/CookieJarSoup.cpp:
718         Rename deleteAllCookiesModifiedAfterDate to deleteAllCookiesModifiedSince and change it
719         to take an std::chrono::system_clock::time_point instead.
720
721         * platform/network/mac/CookieJarMac.mm:
722         (WebCore::cookieStorage):
723         Helper function that returns an NSHTTPCookieStorage given a network session.
724
725         (WebCore::deleteAllCookiesModifiedSince):
726         Get the cookie storage from the network storage instead of just getting the global one.
727
728 2014-12-08  Csaba Osztrogonác  <ossy@webkit.org>
729
730         URTBF after r176953, add an unreachable return to make GCC happy.
731
732         * loader/FrameLoader.cpp:
733         (WebCore::FrameLoader::subresourceCachePolicy):
734
735 2014-12-08  Javier Fernandez  <jfernandez@igalia.com>
736
737         [CSS Grid Layout] Grid items must set a new formatting context.
738         https://bugs.webkit.org/show_bug.cgi?id=139150
739
740         Reviewed by David Hyatt.
741
742         Grid item's margins must not collapse even when they may be adjoining to
743         its content's margins. Also, setting a new formatting context prevents any
744         'float' protruding content on the adjoining grid items.
745
746         This patch also renames the expandsToEncloseOverhangingFloats to be more generic now,
747         determining whether a new formatting context is set or not. This affects not only to
748         how floats behave, but whether margins should collapse or not.
749
750         Tests: fast/css-grid-layout/float-not-protruding-into-next-grid-item.html
751                fast/css-grid-layout/grid-item-margins-not-collapse.html
752
753         * rendering/RenderBlock.cpp:
754         (WebCore::RenderBlock::avoidsFloats): Using the new createsNewFormattingContext function.
755         (WebCore::RenderBlock::expandsToEncloseOverhangingFloats): Deleted.
756         * rendering/RenderBlock.h:
757         * rendering/RenderBlockFlow.cpp:
758         (WebCore::RenderBlockFlow::MarginInfo::MarginInfo): Using the new createsNewFormattingContext function.
759         (WebCore::RenderBlockFlow::rebuildFloatingObjectSetFromIntrudingFloats): Using the new createsNewFormattingContext function.
760         (WebCore::RenderBlockFlow::layoutBlock): Using the new createsNewFormattingContext function.
761         (WebCore::RenderBlockFlow::computeOverflow): Using the new createsNewFormattingContext function.
762         (WebCore::RenderBlockFlow::addOverhangingFloats): Using the new createsNewFormattingContext function.
763         (WebCore::RenderBlockFlow::needsLayoutAfterRegionRangeChange): Using the new createsNewFormattingContext function.
764         * rendering/RenderBox.cpp:
765         (WebCore::RenderBox::createsNewFormattingContext): Added.
766         (WebCore::RenderBox::avoidsFloats): Removed checks already defined in the new createsNewFormattingContext function.
767         * rendering/RenderBox.h:
768         (WebCore::RenderBox::isGridItem): Added.
769
770 2014-12-08  Daniel Bates  <dabates@apple.com>
771
772         [iOS] Attempt to fix the public SDK build after <https://trac.webkit.org/r176841>
773         (https://bugs.webkit.org/show_bug.cgi?id=139227)
774
775         * platform/spi/ios/AVKitSPI.h:
776
777 2014-12-08  Chris Dumez  <cdumez@apple.com>
778
779         Stop using ResourceRequest::cachePolicy() in FrameLoader::subresourceCachePolicy()
780         https://bugs.webkit.org/show_bug.cgi?id=139350
781
782         Reviewed by Antti Koivisto.
783
784         Stop using ResourceRequest::cachePolicy() in FrameLoader::subresourceCachePolicy()
785         and use m_loadType instead. ResourceRequest::cachePolicy() is meant to be passed
786         to the network stack, and isn't supposed to be used as input inside WebCore.
787
788         No new tests, no behavior change.
789
790         * loader/FrameLoader.cpp:
791         (WebCore::FrameLoader::subresourceCachePolicy):
792
793 2014-12-08  Philippe Normand  <pnormand@igalia.com>
794
795         [GTK] UserMedia Permission Request API
796         https://bugs.webkit.org/show_bug.cgi?id=136449
797
798         Reviewed by Carlos Garcia Campos.
799
800         Very basic constraints validation support in the GStreamer
801         MediaStreamCenter. This is needed so the GTK C API tests using the
802         getUserMedia() API would not time out.
803
804         * platform/mediastream/gstreamer/MediaStreamCenterGStreamer.cpp:
805         (WebCore::MediaStreamCenterGStreamer::~MediaStreamCenterGStreamer):
806         (WebCore::MediaStreamCenterGStreamer::validateRequestConstraints):
807         (WebCore::MediaStreamCenterGStreamer::createMediaStream):
808
809 2014-12-08  Anders Carlsson  <andersca@apple.com>
810
811         Remove ResourceHandle::loadsBlocked()
812         https://bugs.webkit.org/show_bug.cgi?id=139401
813
814         Reviewed by Daniel Bates.
815
816         This hasn't returned true since Leopard, so get rid of it.
817
818         * page/Chrome.cpp:
819         (WebCore::Chrome::canRunModalNow):
820         * platform/network/ResourceHandle.h:
821         * platform/network/cf/ResourceHandleCFNet.cpp:
822         (WebCore::ResourceHandle::loadsBlocked): Deleted.
823         * platform/network/curl/ResourceHandleCurl.cpp:
824         (WebCore::ResourceHandle::loadsBlocked): Deleted.
825         * platform/network/mac/ResourceHandleMac.mm:
826         (WebCore::ResourceHandle::loadsBlocked): Deleted.
827         * platform/network/soup/ResourceHandleSoup.cpp:
828         (WebCore::ResourceHandle::loadsBlocked): Deleted.
829
830 2014-12-08  Chris Fleizach  <cfleizach@apple.com>
831
832         AX: iOS: VoiceOver gets hung on some websites consistently.
833         https://bugs.webkit.org/show_bug.cgi?id=139331
834
835         Reviewed by Mario Sanchez Prada.
836
837         iFrames are attachments on iOS, but they do not have attachment views. As a result, 
838         WebCore would return incorrect information for the element count and index of children elements.
839
840         No tests. Bug only manifests itself when iOS accessibility frameworks call into WebCore.
841
842         * accessibility/AccessibilityMockObject.h:
843         (WebCore::AccessibilityMockObject::isDetachedFromParent):
844         * accessibility/AccessibilityObject.h:
845         (WebCore::AccessibilityObject::isDetachedFromParent):
846         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
847         (-[WebAccessibilityObjectWrapper accessibilityElementCount]):
848         (-[WebAccessibilityObjectWrapper accessibilityElementAtIndex:]):
849         (-[WebAccessibilityObjectWrapper indexOfAccessibilityElement:]):
850         (-[WebAccessibilityObjectWrapper accessibilityContainer]):
851
852 2014-12-08  Doron Wloschowsky  <doron_wloschowsky@scee.net>
853
854         Webkit using Harfbuzz does not display Arabic script correctly
855         https://bugs.webkit.org/show_bug.cgi?id=136337
856
857         Reviewed by Carlos Garcia Campos.
858
859         Using reinterpret_cast to convert hb_codepoint_t* into UChar*
860         doesn't work on big endian systems.
861
862         * platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
863         (WebCore::harfBuzzGetGlyph):
864
865 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
866
867         [GStreamer] Major cleanup of AudioDestination implementation
868         https://bugs.webkit.org/show_bug.cgi?id=139370
869
870         Reviewed by Philippe Normand.
871
872         * platform/audio/gstreamer/AudioDestinationGStreamer.cpp:
873         (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
874         Add an audioresample element before the audio sink. The audio sink
875         might not be able to handle our sampling rate.
876
877         (WebCore::AudioDestinationGStreamer::AudioDestinationGStreamer):
878         (WebCore::AudioDestinationGStreamer::~AudioDestinationGStreamer):
879         (WebCore::AudioDestinationGStreamer::stop):
880         (WebCore::AudioDestinationGStreamer::finishBuildingPipelineAfterWavParserPadReady): Deleted.
881         Don't use a wavparse element but directly link the raw audio from
882         the source to the audio sink.
883
884         (WebCore::AudioDestinationGStreamer::start):
885         Catch errors when going to PLAYING early, we might not get an error
886         message.
887
888         * platform/audio/gstreamer/AudioDestinationGStreamer.h:
889         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
890         (getGStreamerMonoAudioCaps):
891         (webKitWebAudioSrcConstructed):
892         (webKitWebAudioSrcChangeState):
893         Don't use a WAV encoder but directly output raw audio. Also don't
894         include a unneeded audioconvert element before the interleave.
895
896         (webKitWebAudioSrcLoop):
897         Add timestamps and durations to the output buffers, map them in
898         READWRITE mode and actually keep them mapped until we're sure
899         nothing is actually writing into them.
900
901         (webKitWebAudioSrcLoop):
902         Pause the task on errors instead of continuously calling it again
903         immediately.
904
905 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
906
907         [GStreamer] Use gst_message_parse_buffering()
908         https://bugs.webkit.org/show_bug.cgi?id=139365
909
910         Reviewed by Philippe Normand.
911
912         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
913         (WebCore::MediaPlayerPrivateGStreamer::processBufferingStats):
914         Use gst_message_parse_buffering() instead of manually getting
915         the percentage from the message's structure. While the latter
916         is supposed to work and part of the ABI stability guarantee,
917         it's just not nice and overly complicated.
918
919 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
920
921         [GStreamer] Minor cleanup of the AudioFileReader implementation
922         https://bugs.webkit.org/show_bug.cgi?id=139367
923
924         Reviewed by Philippe Normand.
925
926         * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
927         (WebCore::AudioFileReader::~AudioFileReader):
928         Don't call gst_bus_remove_signal_watch(), the source was already
929         destroyed together with the main context and doing it again here
930         will give a g_critical().
931
932         (WebCore::AudioFileReader::handleSample):
933         Calculate the number of samples from the actual buffer size
934         and the bytes-per-frame instead of the buffer duration. Using
935         the buffer duration can lead to rounding errors and might cause
936         too few samples to be copied over later.
937
938         (WebCore::AudioFileReader::handleMessage):
939         Set the pipeline to GST_STATE_NULL immediately when receiving
940         errors to prevent other follow-up error messages from propagating
941         through the bus and spamming the user's terminal with g_warnings().
942
943         (WebCore::AudioFileReader::handleNewDeinterleavePad):
944         Sync the state of the queue and sink after deinterleave with
945         the parent state instead of just setting them to READY. That
946         way we potentially go to PAUSED state a bit earlier already
947         and prevent a potential race condition that could cause buffers
948         to arrive in the new elements in READY state already (which would
949         fail).
950
951         (WebCore::AudioFileReader::plugDeinterleave):
952         Handle multiple decodebin source pads by ignoring all following
953         ones just in case there are multiple for whatever reason.
954
955         (WebCore::AudioFileReader::decodeAudioForBusCreation):
956         Catch errors from going to PAUSED state early. We might not
957         get a error message at all if we're unlucky.
958
959         (WebCore::AudioFileReader::plugDeinterleave):
960         (WebCore::AudioFileReader::createBus):
961         (WebCore::AudioFileReader::handleSample):
962         Downmix to mono if required instead of just using the front
963         left channel and claiming it is mono. Downmixing from stereo
964         to mono will mix both channels instead of just taking the left.
965
966 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
967
968         [GStreamer] Handle CLOCK_LOST and LATENCY messages
969         https://bugs.webkit.org/show_bug.cgi?id=139341
970
971         Reviewed by Philippe Normand.
972
973         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
974         (WebCore::MediaPlayerPrivateGStreamer::handleMessage):
975         Handle CLOCK_LOST message by shortly going back to PAUSED state
976         and then to PLAYING again to let the pipeline select a new clock
977         for us.
978         This can happen if the stream that ends in a sink that provides
979         the current clock disappears, for example if the audio sink
980         provides the clock and the audio stream is disabled. It also
981         happens relatively often with HTTP adaptive streams when switching
982         between different variants of a stream.
983
984         Also handle the LATENCY message by triggering the default GStreamer
985         mechanism to update the latency. This can happen if the latency of
986         live elements changes, or for one reason or another a new live element
987         is added or removed from the pipeline.
988
989 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
990
991         [GStreamer] Use audio-filter property on GStreamer >= 1.4.2
992         https://bugs.webkit.org/show_bug.cgi?id=139360
993
994         Reviewed by Philippe Normand.
995
996         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
997         (WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
998         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
999         Since 1.4.0 there is an audio-filter property we can use to place
1000         the pitch-preserving filter at a more canonical position inside
1001         the pipeline. Since 1.4.2 this property also handles all necessary
1002         conversions for us.
1003         This simplifies our sink code a bit because we don't have to create
1004         a custom sink bin anymore.
1005
1006 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
1007
1008         [GStreamer] Add video/flv to the list of supported mimetypes
1009         https://bugs.webkit.org/show_bug.cgi?id=139344
1010
1011         Reviewed by Gustavo Noronha Silva.
1012
1013         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1014         (WebCore::mimeTypeCache):
1015         Add video/flv additional to video/x-flv to the list of supported
1016         mimetypes. It's used on some websites, e.g.
1017         http://www.jwplayer.com/html5/formats/
1018
1019 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
1020
1021         [GStreamer] Remove GStreamer 0.10 #ifdefs.
1022         https://bugs.webkit.org/show_bug.cgi?id=138921
1023
1024         Reviewed by Philippe Normand.
1025
1026         * platform/graphics/gstreamer/GStreamerUtilities.cpp:
1027         (WebCore::initializeGStreamer):
1028         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1029         (WebCore::MediaPlayerPrivateGStreamer::buffered):
1030         Remove GStreamer 0.10 #ifdefs, we depend on >= 1.0.3 at least.
1031
1032 2014-12-08  Sebastian Dröge  <sebastian@centricular.com>
1033
1034         [GStreamer] Add application/x-mpegurl to the list of supported mimetypes.
1035         https://bugs.webkit.org/show_bug.cgi?id=139343
1036
1037         Reviewed by Gustavo Noronha Silva.
1038
1039         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
1040         (WebCore::mimeTypeCache):
1041         It's an alternative mimetype for the already supported
1042         application/vnd.apple.mpegurl (aka HLS) and adding it
1043         allows all streams on http://www.jwplayer.com/html5/hls/
1044         to be played.
1045
1046 2014-12-07  Gwang Yoon Hwang  <yoon@igalia.com>
1047
1048         [TextureMapper] Normalize pattern transform for pattern compositing
1049         https://bugs.webkit.org/show_bug.cgi?id=139374
1050
1051         Reviewed by Martin Robinson.
1052
1053         In CoordGfx/TexMapGL, pattern compositing (for background image) uses
1054         the patternTransform shader uniform. However, current implementation
1055         miscalculates its transform matrix. It uses simple rectToRect
1056         transformationMatrix which produces unnormalized garbage term.
1057         This causes unexpected behavior at the fragmentation stage in some
1058         mobile GPUs.
1059
1060         It should calculate its scale based on tileSize and contentSize,
1061         and its position based on tilePhase and contentSize.
1062
1063         No new tests because the bug only occurs on some mobile GPUs.
1064
1065         * platform/graphics/texmap/TextureMapperLayer.cpp:
1066         (WebCore::TextureMapperLayer::computePatternTransformIfNeeded):
1067
1068 2014-12-07  Youenn Fablet  <youenn.fablet@crf.canon.fr>
1069
1070         [Soup][Curl] HTTP header values should be treated as latin1, not UTF-8
1071         https://bugs.webkit.org/show_bug.cgi?id=128739
1072
1073         Reviewed by Martin Robinson.
1074
1075         Removed UTF-8 conversion of HTTP header values (SOUP and CURL).
1076         Removed unnecessary UTF-8 conversion of HTTP header names (SOUP).
1077         Changed conversion of HTTP method from UTF-8 to ASCII (SOUP and CURL).
1078         Added explicit UTF-8 conversion of Content-Disposition header to compute download suggested filename. 
1079
1080         Test: http/tests/xmlhttprequest/response-special-characters.html
1081
1082         * platform/network/curl/CurlDownload.cpp:
1083         (WebCore::CurlDownload::headerCallback): Removed header conversion.
1084         * platform/network/curl/ResourceHandleManager.cpp:
1085         (WebCore::headerCallback): Ditto.
1086         (WebCore::ResourceHandleManager::initializeHandle): Changed HTTP method conversion to ASCI.
1087         * platform/network/soup/ResourceRequestSoup.cpp:
1088         (WebCore::ResourceRequest::updateFromSoupMessageHeaders): Removed header conversion.
1089         (WebCore::ResourceRequest::updateSoupMessage): Changed HTTP method conversion to ASCII.
1090         (WebCore::ResourceRequest::toSoupMessage): Ditto.
1091         (WebCore::ResourceRequest::updateFromSoupMessage):
1092         * platform/network/soup/ResourceResponseSoup.cpp:
1093         (WebCore::ResourceResponse::updateFromSoupMessageHeaders): Rmoved header conversion.
1094         (WebCore::ResourceResponse::platformSuggestedFilename): Added explicit conversion of contentDisposition to UTF-8.
1095
1096 2014-12-07  Dan Bernstein  <mitz@apple.com>
1097
1098         Introduce and deploy a function that allocates and returns an instance of a soft-linked class
1099         https://bugs.webkit.org/show_bug.cgi?id=139348
1100
1101         Reviewed by Anders Carlsson.
1102
1103         In [[getFooClass() alloc] init*], the type of the result of +alloc is id, so the compiler
1104         picks an arbitrary declaration of init*, not necessarily the Foo one. This can then lead
1105         to warnings or errors if the types or attributes don’t match, or to runtime errors if Foo
1106         doesn’t even have the expected initializer. The new allocFooInstance() returns a Foo *, thus
1107         avoiding the ambiguity.
1108
1109         * editing/mac/DataDetection.mm:
1110         (WebCore::DataDetection::detectItemAroundHitTestResult):
1111         * platform/audio/ios/MediaSessionManagerIOS.mm:
1112         (-[WebMediaSessionHelper allocateVolumeView]):
1113         (-[WebMediaSessionHelper startMonitoringAirPlayRoutes]):
1114         * platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:
1115         (WebCore::AudioSourceProviderAVFObjC::createMix):
1116         * platform/graphics/avfoundation/objc/CDMSessionAVFoundationObjC.mm:
1117         * platform/graphics/avfoundation/objc/InbandTextTrackPrivateAVFObjC.mm:
1118         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1119         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerLayer):
1120         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVAssetForURL):
1121         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayer):
1122         (WebCore::MediaPlayerPrivateAVFoundationObjC::createAVPlayerItem):
1123         (WebCore::MediaPlayerPrivateAVFoundationObjC::createVideoOutput):
1124         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
1125         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
1126         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
1127         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::streamSession):
1128         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
1129         (WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
1130         (WebCore::SourceBufferPrivateAVFObjC::abort):
1131         (WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
1132
1133         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1134         (PlatformCALayerMac::PlatformCALayerMac): Cast the result of +alloc to an instance of the
1135         expected class.
1136
1137         * platform/graphics/mac/FontMac.mm:
1138         (WebCore::showLetterpressedGlyphsWithAdvances):
1139         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1140         (WebCore::MediaPlayerPrivateQTKit::createQTMovie):
1141         (WebCore::MediaPlayerPrivateQTKit::createQTMovieLayer):
1142         * platform/graphics/mac/PDFDocumentImageMac.mm:
1143         (WebCore::PDFDocumentImage::createPDFDocument):
1144         * platform/ios/PlatformSpeechSynthesizerIOS.mm:
1145         (SOFT_LINK_CONSTANT):
1146         (-[WebSpeechSynthesisWrapper speakUtterance:]):
1147         * platform/ios/WebCoreMotionManager.mm:
1148         (-[WebCoreMotionManager initializeOnMainThread]):
1149         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
1150         (-[WebAVPlayerController init]):
1151         (WebVideoFullscreenInterfaceAVKit::setupFullscreen):
1152         * platform/mac/ContentFilterMac.mm:
1153         (WebCore::ContentFilter::ContentFilter):
1154
1155         * platform/mac/SoftLinking.h: Added alloc##className##instance().
1156
1157         * platform/mac/WebVideoFullscreenController.mm:
1158         (-[WebVideoFullscreenController setVideoElement:]):
1159         * platform/mediastream/mac/AVAudioCaptureSource.mm:
1160         (WebCore::AVAudioCaptureSource::setupCaptureSession):
1161         * platform/mediastream/mac/AVCaptureDeviceManager.mm:
1162         (WebCore::AVCaptureDeviceManager::verifyConstraintsForMediaType):
1163         * platform/mediastream/mac/AVMediaCaptureSource.mm:
1164         (WebCore::AVMediaCaptureSource::setupSession):
1165         * platform/mediastream/mac/AVVideoCaptureSource.mm:
1166         (WebCore::AVVideoCaptureSource::setupCaptureSession):
1167         * platform/network/ios/QuickLook.mm:
1168         (WebCore::registerQLPreviewConverterIfNeeded):
1169         (WebCore::QuickLookHandle::QuickLookHandle):
1170
1171 2014-12-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1172
1173         [GTK] Add Since tags to GObject DOM bindings documentation
1174         https://bugs.webkit.org/show_bug.cgi?id=139356
1175
1176         Reviewed by Gustavo Noronha Silva.
1177
1178         Now that we have a small stable API, and new symbols are added
1179         manually, we can also add the version to the symbols file, that
1180         the code generator can ue to add Since tags to the gtk-doc.
1181
1182         * bindings/gobject/webkitdom.symbols: Add @2.8 to the new symbols
1183         added for 2.8.
1184         * bindings/scripts/CodeGeneratorGObject.pm:
1185         (GenerateConstants): Add Since tag to gtk-doc if there's a version
1186         number for the symbol in the .symbols file.
1187         (GenerateFunction): Ditto.
1188         (ReadStableSymbols):
1189
1190 2014-12-07  Carlos Garcia Campos  <cgarcia@igalia.com>
1191
1192         [GTK] Missing API detected in GObject DOM bindings after r176630
1193         https://bugs.webkit.org/show_bug.cgi?id=139201
1194
1195         Reviewed by Gustavo Noronha Silva.
1196
1197         Bring back WebKitDOMDeprecated and add custom versions of the
1198         removed symbols as deprecated in favor of the new ones. Also add
1199         the new ones as stable API.
1200
1201         * CMakeLists.txt: Pass a list of additional dependencies to GENERATE_BINDINGS.
1202         * PlatformGTK.cmake: Ditto.
1203         * PlatformMac.cmake: Ditto.
1204         * bindings/gobject/WebKitDOMDeprecated.cpp: Added.
1205         (webkit_dom_html_element_get_inner_html):
1206         (webkit_dom_html_element_set_inner_html):
1207         (webkit_dom_html_element_get_outer_html):
1208         (webkit_dom_html_element_set_outer_html):
1209         * bindings/gobject/WebKitDOMDeprecated.h: Added.
1210         * bindings/gobject/WebKitDOMDeprecated.symbols: Added.
1211         * bindings/gobject/webkitdom.symbols:
1212
1213 2014-12-06  Csaba Osztrogonác  <ossy@webkit.org>
1214
1215         URTBF after r176915.
1216
1217         DisplayRefreshMonitorClient is the parent class of GraphicsLayerUpdater
1218         only if USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) is true, so override
1219         is incorrect if USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) is false.
1220
1221         That's why r176915 broke the build on non PLATFORM(COCOA) platforms,
1222         such as GTK, EFL, Apple Windows.
1223
1224         Additionally displayRefreshFired is only used inside USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR)
1225         guard, so there is no reason to define it for non COCOA platforms.
1226
1227         * platform/graphics/GraphicsLayerUpdater.cpp:
1228         * platform/graphics/GraphicsLayerUpdater.h:
1229
1230 2014-12-06  Anders Carlsson  <andersca@apple.com>
1231
1232         Fix build with newer versions of clang.
1233         rdar://problem/18978733
1234
1235         Add a bunch of overrides since we're not disabling the "inconsistent missing override" warning in WebKit.
1236
1237         * page/scrolling/AsyncScrollingCoordinator.h:
1238         * page/scrolling/ScrollingStateFixedNode.h:
1239         * page/scrolling/ScrollingStateFrameScrollingNode.h:
1240         * page/scrolling/ScrollingStateOverflowScrollingNode.h:
1241         * page/scrolling/ScrollingStateStickyNode.h:
1242         * page/scrolling/ScrollingTreeFrameScrollingNode.h:
1243         (WebCore::ScrollingTreeFrameScrollingNode::updateLayersAfterDelegatedScroll): Deleted.
1244         * page/scrolling/ios/ScrollingTreeFrameScrollingNodeIOS.h:
1245         * platform/graphics/GraphicsLayerUpdater.h:
1246         * platform/mac/ScrollbarThemeMac.h:
1247         (WebCore::ScrollbarThemeMac::supportsControlTints): Deleted.
1248         (WebCore::ScrollbarThemeMac::maxOverlapBetweenPages): Deleted.
1249         * rendering/RenderLayerCompositor.h:
1250         * rendering/RenderSnapshottedPlugIn.h:
1251
1252 2014-12-06  Anders Carlsson  <andersca@apple.com>
1253
1254         Fix build with newer versions of clang.
1255         rdar://problem/18978687
1256
1257         Add a bunch of overrides since we're not disabling the "inconsistent missing override" warning in WebKit.
1258
1259         * html/HTMLElement.h:
1260         * html/HTMLMediaElement.h:
1261         * html/track/VTTCue.h:
1262         * loader/FrameNetworkingContext.h:
1263         (WebCore::FrameNetworkingContext::shouldClearReferrerOnHTTPSToHTTPRedirect): Deleted.
1264         * loader/cache/CachedImage.h:
1265         * page/SuspendableTimer.h:
1266         * platform/Scrollbar.h:
1267         * platform/graphics/InbandTextTrackPrivate.h:
1268         * rendering/RenderBlockFlow.h:
1269
1270 2014-12-06  Anders Carlsson  <andersca@apple.com>
1271
1272         Follow-up build fix.
1273
1274         * Configurations/Base.xcconfig:
1275
1276 2014-12-06  Anders Carlsson  <andersca@apple.com>
1277
1278         Fix build with newer versions of clang.
1279         rdar://problem/18978689
1280
1281         Disable the "inconsistent missing override" warning due to our use of macros in SVG where it's hard to
1282         know whether we can add an override or not.
1283
1284         Also, cast return values of +alloc to the right type, and add some casts for vector iterator arithmetic.
1285
1286         * Configurations/Base.xcconfig:
1287         * Modules/webdatabase/DatabaseBackendBase.cpp:
1288         (WebCore::guidForOriginAndName):
1289         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
1290         (-[WebAccessibilityObjectWrapper _stringForRange:attributed:]):
1291         * editing/cocoa/HTMLConverter.mm:
1292         (_shadowForShadowStyle):
1293         (HTMLConverter::_addTableForElement):
1294         * platform/graphics/SVGGlyph.cpp:
1295         (WebCore::isCompatibleArabicForm):
1296         * platform/graphics/avfoundation/AudioSourceProviderAVFObjC.mm:
1297         (WebCore::AudioSourceProviderAVFObjC::createMix):
1298         * platform/graphics/mac/FontMac.mm:
1299         (WebCore::showLetterpressedGlyphsWithAdvances):
1300         * platform/ios/PlatformSpeechSynthesizerIOS.mm:
1301         (-[WebSpeechSynthesisWrapper speakUtterance:]):
1302         * platform/ios/WebCoreMotionManager.mm:
1303         (-[WebCoreMotionManager initializeOnMainThread]):
1304         * rendering/RenderTableSection.cpp:
1305         (WebCore::RenderTableSection::spannedRows):
1306         (WebCore::RenderTableSection::spannedColumns):
1307
1308 2014-12-06  peavo@outlook.com  <peavo@outlook.com>
1309
1310         [WinCairo] Compile error, missing guard.
1311         https://bugs.webkit.org/show_bug.cgi?id=139338
1312
1313         Reviewed by Alex Christensen.
1314
1315         There is missing a ENABLE(CSS_SELECTORS_LEVEL4) guard in CSSParser.cpp.
1316
1317         * css/CSSParser.cpp:
1318         (WebCore::CSSParser::realLex):
1319
1320 2014-12-05  Chris Fleizach  <cfleizach@apple.com>
1321
1322         AX: I cannot activate links on the mobile version of news.google.com
1323         https://bugs.webkit.org/show_bug.cgi?id=139330
1324
1325         Reviewed by Simon Fraser.
1326
1327         This website only listens for touch events. VoiceOver normally dispatches click and mouse events,
1328         so on iOS this falls and VoiceOver is not able to activate anything.
1329
1330         The solution here is to dispatch simulated touch down/up events.
1331
1332         Test: platform/ios-simulator/ios-accessibility/press-fires-touch-events.html
1333
1334         * accessibility/AccessibilityObject.cpp:
1335         (WebCore::AccessibilityObject::press):
1336         (WebCore::AccessibilityObject::dispatchTouchEvent):
1337         * accessibility/AccessibilityObject.h:
1338         (WebCore::AccessibilityObject::isDetachedFromParent):
1339         * page/EventHandler.h:
1340         * page/ios/EventHandlerIOS.mm:
1341         (WebCore::EventHandler::dispatchSimulatedTouchEvent):
1342         * platform/ios/PlatformEventFactoryIOS.h:
1343         * platform/ios/PlatformEventFactoryIOS.mm:
1344         (WebCore::PlatformTouchEventBuilder::PlatformTouchEventBuilder):
1345         (WebCore::PlatformEventFactory::createPlatformSimulatedTouchEvent):
1346
1347 2014-12-05  Myles C. Maxfield  <mmaxfield@apple.com>
1348
1349         Directional single quotation marks are not rotated in vertical text
1350         https://bugs.webkit.org/show_bug.cgi?id=138526
1351
1352         Reviewed by Darin Adler.
1353
1354         In vertical text, directional single quotation marks are not rotated along with
1355         the rest of the letters.
1356
1357         Test: fast/text/vertical-quotation-marks.html
1358
1359         * platform/graphics/FontGlyphs.cpp:
1360         (WebCore::shouldIgnoreRotation):
1361
1362 2014-12-05  Dhi Aurrahman  <diorahman@rockybars.com>
1363
1364         Implement parser for :lang pseudo class selector arguments that contain wildcard '*' subtags
1365         https://bugs.webkit.org/show_bug.cgi?id=139014
1366
1367         Reviewed by Benjamin Poulain.
1368
1369         Consider each language range in :lang() that consists of an asterisk 
1370         immediately followed by an identifier beginning with an ASCII hyphen 
1371         as a valid input for the selector as specified in [1].
1372
1373         [1] http://dev.w3.org/csswg/selectors4/#the-lang-pseudo 
1374
1375         Test: fast/css/parsing-css-lang.html
1376
1377         * css/CSSGrammar.y.in:
1378         * css/CSSParser.cpp:
1379         (WebCore::CSSParser::realLex):
1380
1381 2014-12-05  Simon Fraser  <simon.fraser@apple.com>
1382
1383         Programmatic scrolling and content changes are not always synchronized
1384         https://bugs.webkit.org/show_bug.cgi?id=139245
1385         rdar://problem/18833612
1386
1387         Reviewed by Anders Carlsson.
1388         
1389         For programmatic scrolls, AsyncScrollingCoordinator::requestScrollPositionUpdate()
1390         calls updateScrollPositionAfterAsyncScroll(), then dispatches the requested
1391         scroll position to the scrolling thread.
1392         
1393         Once the scrolling thread commits, it calls back to the main thread via
1394         scheduleUpdateScrollPositionAfterAsyncScroll(), which schedules a second
1395         call to updateScrollPositionAfterAsyncScroll() on a timer. That's a problem,
1396         because some other scroll may have happened in the meantime; when the timer
1397         fires, it can sometimes restore a stale scroll position.
1398         
1399         Fix by bailing early from scheduleUpdateScrollPositionAfterAsyncScroll()
1400         for programmatic scrolls, since we know that requestScrollPositionUpdate()
1401         already did the updateScrollPositionAfterAsyncScroll().
1402
1403         Test:
1404             ManualTests/programmatic-scroll-flicker.html
1405
1406         * page/FrameView.cpp:
1407         (WebCore::FrameView::reset): nullptr.
1408         (WebCore::FrameView::setScrollPosition): Ditto.
1409         (WebCore::FrameView::setWasScrolledByUser): Ditto.
1410         * page/scrolling/AsyncScrollingCoordinator.cpp:
1411         (WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate): Use a local variable for
1412         isProgrammaticScroll just to make sure we use the same value for the duration of this function.
1413         (WebCore::AsyncScrollingCoordinator::scheduleUpdateScrollPositionAfterAsyncScroll): Do nothing
1414         if this is a programmatic scroll.
1415
1416 2014-12-05  Timothy Horton  <timothy_horton@apple.com>
1417
1418         Build fix.
1419
1420         * platform/spi/mac/TUCallSPI.h:
1421
1422 2014-12-05  Roger Fong  <roger_fong@apple.com>
1423
1424         [Win] proj files copying over too many resources..
1425         https://bugs.webkit.org/show_bug.cgi?id=139315.
1426         <rdar://problem/19148278>
1427
1428         Reviewed by Brent Fulgham.
1429
1430         * WebCore.vcxproj/WebCore.proj: Don't copy over bin32 build output.
1431
1432 2014-12-05  Timothy Horton  <timothy_horton@apple.com>
1433
1434         Use the system string for telephone number menu
1435         https://bugs.webkit.org/show_bug.cgi?id=139324
1436         <rdar://problem/18726471>
1437
1438         * platform/spi/mac/TUCallSPI.h: Added.
1439         Actually add the SPI header from the last commit.
1440
1441 2014-12-05  Tim Horton  <timothy_horton@apple.com>
1442
1443         Use the system string for telephone number menu
1444         https://bugs.webkit.org/show_bug.cgi?id=139324
1445         <rdar://problem/18726471>
1446
1447         Reviewed by Anders Carlsson.
1448
1449         * WebCore.xcodeproj/project.pbxproj:
1450         * platform/spi/mac/TUCallSPI.h: Added.
1451         Add an SPI header.
1452
1453 2014-12-05  Jer Noble  <jer.noble@apple.com>
1454
1455         [MSE][Mac] Return absolute value of error code from CDMSessionMediaSourceAVFObjC::update().
1456         https://bugs.webkit.org/show_bug.cgi?id=139316
1457
1458         Reviewed by Eric Carlson.
1459
1460         Similarly to our asynchronous error reporting, return the absolute value of the error code.
1461
1462         * platform/graphics/avfoundation/objc/CDMSessionMediaSourceAVFObjC.mm:
1463         (WebCore::systemCodeForError):
1464         (WebCore::CDMSessionMediaSourceAVFObjC::update):
1465
1466 2014-12-05  Anders Carlsson  <andersca@apple.com>
1467
1468         Fix build on Windows.
1469
1470         * page/SessionIDHash.h:
1471
1472 2014-12-05  Zalan Bujtas  <zalan@apple.com>
1473
1474         Issue repaint at setUnavailablePluginIndicatorIsHidden() only when embedded object's indicator status changes.
1475         https://bugs.webkit.org/show_bug.cgi?id=139311
1476
1477         Reviewed by Tim Horton.
1478
1479         Not testable.
1480
1481         * rendering/RenderEmbeddedObject.cpp:
1482         (WebCore::RenderEmbeddedObject::setUnavailablePluginIndicatorIsHidden):
1483
1484 2014-12-05  Andreas Kling  <akling@apple.com>
1485
1486         PassRef should deref on destruction if pointee was not moved.
1487         <https://webkit.org/b/139309>
1488
1489         Reviewed by Antti Koivisto.
1490
1491         Remove calls to PassRef::dropRef() since it's no longer necessary to manually
1492         notify PassRef that you didn't move the pointee.
1493
1494         * rendering/RenderElement.cpp:
1495         (WebCore::RenderElement::createFor):
1496         (WebCore::RenderElement::setStyle):
1497         * style/StyleResolveTree.cpp:
1498         (WebCore::Style::resolveTree):
1499
1500 2014-12-05  Benjamin Poulain  <bpoulain@apple.com>
1501
1502         Fix style sharing with the "type" and "readonly" attributes
1503         https://bugs.webkit.org/show_bug.cgi?id=139283
1504
1505         Reviewed by Antti Koivisto.
1506
1507         There are two bugs adressed with this patch:
1508         1) The attributes "type" and "readonly" where only handled correctly
1509            for input elements. For everything else, they could incorrectly
1510            be ignored for style sharing.
1511         2) The handling of attributes was incorrect for selector lists, leading
1512            to various bugs (incorrect style sharing in some cases, disabling
1513            style sharing on valid cases).
1514
1515         For [1], the problem was that attribute checking had been limited to
1516         StyleResolver::canShareStyleWithControl(). That function is for handling
1517         the special states of input element. For any other element, the attributes
1518         were simply ignored.
1519
1520         For [2], there were a bunch of small problems. First, containsUncommonAttributeSelector()
1521         was not recursive, which caused it to ignored any nested selector list. This used to be
1522         correct but since we have advanced selectors we can no longer assumed selectors are not nested.
1523
1524         A second issue was that any attribute in a selector list was causing us to fall back
1525         to the slow case. Now that we have the fast :matches(), we really don't want that.
1526
1527         The function containsUncommonAttributeSelector() was transformed into a recursive function
1528         tracking where we are in the selector.
1529
1530         At the entry point, we start with the flag "startsOnRightmostElement" set to true. The flag is then
1531         updated on the stack of each recursive call.
1532
1533         For example, "webkit > is:matches(freaking > awesome)". We evalute "is" with the flag to true, then recurse
1534         into evaluating "freaking > awesome" with the flag still set to true. When we evalute ">", the flag
1535         is set to false to evaluate any following selectors.
1536         After evaluating "freaking > awesome", we go back to our previous stack frame, and the flag
1537         is back to true and we can continue evaluating with the curren top level state.
1538
1539         From some logging, I discovered that the attribute handling is way too aggressive.
1540         This is not a regression and I cannot fix that easily so I left a fixme.
1541
1542         Tests: fast/css/data-attribute-style-sharing-1.html
1543                fast/css/data-attribute-style-sharing-2.html
1544                fast/css/data-attribute-style-sharing-3.html
1545                fast/css/data-attribute-style-sharing-4.html
1546                fast/css/data-attribute-style-sharing-5.html
1547                fast/css/data-attribute-style-sharing-6.html
1548                fast/css/data-attribute-style-sharing-7.html
1549                fast/css/readonly-attribute-style-sharing-1.html
1550                fast/css/readonly-attribute-style-sharing-2.html
1551                fast/css/readonly-attribute-style-sharing-3.html
1552                fast/css/readonly-attribute-style-sharing-4.html
1553                fast/css/readonly-attribute-style-sharing-5.html
1554                fast/css/readonly-attribute-style-sharing-6.html
1555                fast/css/readonly-attribute-style-sharing-7.html
1556                fast/css/type-attribute-style-sharing-1.html
1557                fast/css/type-attribute-style-sharing-2.html
1558                fast/css/type-attribute-style-sharing-3.html
1559                fast/css/type-attribute-style-sharing-4.html
1560                fast/css/type-attribute-style-sharing-5.html
1561                fast/css/type-attribute-style-sharing-6.html
1562                fast/css/type-attribute-style-sharing-7.html
1563
1564         * css/RuleSet.cpp:
1565         (WebCore::containsUncommonAttributeSelector):
1566         (WebCore::RuleData::RuleData):
1567         (WebCore::selectorListContainsAttributeSelector): Deleted.
1568         * css/StyleResolver.cpp:
1569         (WebCore::StyleResolver::canShareStyleWithControl):
1570         (WebCore::StyleResolver::canShareStyleWithElement):
1571
1572 2014-12-05  Jer Noble  <jer.noble@apple.com>
1573
1574         [WTF] MediaTime should support round-tripping from and to doubles.
1575         https://bugs.webkit.org/show_bug.cgi?id=139248
1576
1577         Reviewed by Eric Carlson.
1578
1579         Check whether the MediaTime's underlying data is floating point before converting
1580         to a CMTime or QTTime.
1581
1582         * platform/graphics/avfoundation/MediaTimeAVFoundation.cpp:
1583         (WebCore::toCMTime):
1584         * platform/graphics/mac/MediaTimeQTKit.mm:
1585         (WebCore::toQTTime):
1586
1587 2014-12-05  Anders Carlsson  <andersca@apple.com>
1588
1589         Add a private browsing mode to MiniBrowser
1590         https://bugs.webkit.org/show_bug.cgi?id=139308
1591
1592         Reviewed by Sam Weinig.
1593
1594         Use -1 instead of -2 for the deleted value.
1595
1596         * page/SessionIDHash.h:
1597
1598 2014-12-05  Chris Dumez  <cdumez@apple.com>
1599
1600         Move 'text-emphasis-style' CSS property to the new StyleBuilder
1601         https://bugs.webkit.org/show_bug.cgi?id=139285
1602
1603         Reviewed by Sam Weinig.
1604
1605         Move 'text-emphasis-style' CSS property to the new StyleBuilder by
1606         using custom code.
1607
1608         No new tests, no behavior change.
1609
1610         * css/CSSPropertyNames.in:
1611         * css/DeprecatedStyleBuilder.cpp:
1612         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1613         (WebCore::ApplyPropertyTextEmphasisStyle::applyInheritValue): Deleted.
1614         (WebCore::ApplyPropertyTextEmphasisStyle::applyInitialValue): Deleted.
1615         (WebCore::ApplyPropertyTextEmphasisStyle::applyValue): Deleted.
1616         (WebCore::ApplyPropertyTextEmphasisStyle::createHandler): Deleted.
1617         * css/StyleBuilderCustom.h:
1618         (WebCore::StyleBuilderCustom::applyInitialWebkitTextEmphasisStyle):
1619         (WebCore::StyleBuilderCustom::applyInheritWebkitTextEmphasisStyle):
1620         (WebCore::StyleBuilderCustom::applyValueWebkitTextEmphasisStyle):
1621
1622 2014-12-05  Eric Carlson  <eric.carlson@apple.com>
1623
1624         [iOS] remove "enter optimized fullscreen" gesture
1625         https://bugs.webkit.org/show_bug.cgi?id=139301
1626
1627         Reviewed by Jer Noble.
1628
1629         * Modules/mediacontrols/mediaControlsiOS.js:
1630         (ControllerIOS.prototype.handleWrapperTouchStart): Remove gesture recognizer.
1631
1632 2014-12-05  Beth Dakin  <bdakin@apple.com>
1633
1634         rdar://problem/19156353 Additional build-fixes needed.
1635
1636         Rubber-stamped by Tim Horton.
1637
1638         This is a bit unfortunate, but we need to always forward-declare this for now.
1639         * platform/spi/mac/QuickLookMacSPI.h:
1640
1641 2014-12-05  David Kilzer  <ddkilzer@apple.com>
1642
1643         FeatureDefines.xcconfig: Workaround bug in Xcode 5.1.1 when defining ENABLE_WEB_REPLAY
1644         <http://webkit.org/b/139286>
1645
1646         Reviewed by Daniel Bates.
1647
1648         * Configurations/FeatureDefines.xcconfig: Switch back to using
1649         PLATFORM_NAME to workaround a bug in Xcode 5.1.1 on 10.8.
1650
1651 2014-12-05  Eric Carlson  <eric.carlson@apple.com>
1652
1653         [iOS] allow host application to opt-out of alternate fullscreen pt. 2
1654         https://bugs.webkit.org/show_bug.cgi?id=139227
1655
1656         Reviewed by Jer Noble and Anders Carlsson
1657
1658         * WebCore.exp.in: Export HTMLMediaSession::allowsAlternateFullscreen, change the signature of 
1659             WebVideoFullscreenInterfaceAVKit::setupFullscreen.
1660
1661         * platform/ios/WebVideoFullscreenControllerAVKit.mm:
1662         (-[WebVideoFullscreenController enterFullscreen:mode:]): Update for
1663             WebVideoFullscreenInterfaceAVKit::setupFullscreen change.
1664
1665         * platform/ios/WebVideoFullscreenInterfaceAVKit.h: Add argument to setupFullscreen.
1666         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
1667         (WebVideoFullscreenInterfaceAVKit::setupFullscreen): Ditto.
1668
1669 2014-12-05  Shivakumar JM  <shiva.jm@samsung.com>
1670
1671         Fix build warning in WebCore/platform/graphics module
1672         https://bugs.webkit.org/show_bug.cgi?id=139290
1673
1674         Reviewed by Carlos Garcia Campos.
1675
1676         Fix a build warning by removing parameter name from function.
1677
1678         No new tests, no behavior change.
1679
1680         * platform/graphics/freetype/FontCacheFreeType.cpp:
1681         (WebCore::getFamilyNameStringFromFontDescriptionAndFamily):
1682
1683 2014-12-05  sungmin cho  <sungmin17.cho@lge.com>
1684
1685         GraphicsLayerTextureMapper: Rename parameter to be more clear
1686         https://bugs.webkit.org/show_bug.cgi?id=139288
1687
1688         Reviewed by Martin Robinson.
1689
1690         Rename 'media' to 'platformLayer'.
1691
1692         No new tests, no change in functionality.
1693
1694         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1695         (WebCore::GraphicsLayerTextureMapper::setContentsToPlatformLayer):
1696
1697 2014-12-04  Mark Rowe  <mrowe@apple.com>
1698
1699         Fix pre-Yosemite builds.
1700
1701         The #ifs in two SPI wrapper headers were incorrect, resulting in code being included
1702         prior to Yosemite that required Yosemite to compile.
1703
1704         * platform/spi/mac/NSSharingServicePickerSPI.h:
1705         * platform/spi/mac/NSSharingServiceSPI.h:
1706
1707 2014-12-02  Brian J. Burg  <burg@cs.washington.edu>
1708
1709         Web Inspector: timeline probe records have inaccurate per-probe hit counts
1710         https://bugs.webkit.org/show_bug.cgi?id=138976
1711
1712         Reviewed by Joseph Pecoraro.
1713
1714         Update the signature for breakpointActionProbe to take batchId and sampleId.
1715         Covered by existing test inspector-protocol/debugger/didSampleProbe-multiple-probes.html.
1716
1717         * inspector/InspectorTimelineAgent.cpp:
1718         (WebCore::InspectorTimelineAgent::breakpointActionProbe):
1719         * inspector/InspectorTimelineAgent.h:
1720         * inspector/TimelineRecordFactory.cpp:
1721         (WebCore::TimelineRecordFactory::createProbeSampleData):
1722         * inspector/TimelineRecordFactory.h:
1723
1724 2014-12-04  Adenilson Cavalcanti  <cavalcantii@gmail.com>
1725
1726         Groove/inset/outset borders show solid if the color is black
1727         https://bugs.webkit.org/show_bug.cgi?id=58608
1728
1729         Reviewed by Simon Fraser.
1730
1731         Test: fast/borders/mixed-border-style2.html
1732
1733         This patch will lighten/darken the border side colors, handling
1734         border decoration in a similar way as Firefox does.
1735
1736         * rendering/RenderObject.cpp:
1737         (WebCore::RenderObject::drawLineForBoxSide):
1738         (WebCore::RenderObject::calculateBorderStyleColor):
1739         * rendering/RenderObject.h:
1740
1741 2014-12-04  Chris Dumez  <cdumez@apple.com>
1742
1743         Move 'webkit-aspect-ratio' CSS property to the new StyleBuilder
1744         https://bugs.webkit.org/show_bug.cgi?id=139250
1745
1746         Reviewed by Sam Weinig.
1747
1748         Move 'aspect-ratio' CSS property to the new StyleBuilder by
1749         using custom code.
1750
1751         No new tests, no behavior change.
1752
1753         * css/CSSPropertyNames.in:
1754         * css/DeprecatedStyleBuilder.cpp:
1755         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1756         (WebCore::ApplyPropertyAspectRatio::applyInheritValue): Deleted.
1757         (WebCore::ApplyPropertyAspectRatio::applyInitialValue): Deleted.
1758         (WebCore::ApplyPropertyAspectRatio::applyValue): Deleted.
1759         (WebCore::ApplyPropertyAspectRatio::createHandler): Deleted.
1760         * css/StyleBuilderCustom.h:
1761         (WebCore::StyleBuilderCustom::applyInitialWebkitAspectRatio):
1762         (WebCore::StyleBuilderCustom::applyInheritWebkitAspectRatio):
1763         (WebCore::StyleBuilderCustom::applyValueWebkitAspectRatio):
1764
1765 2014-12-04  Timothy Horton  <timothy_horton@apple.com>
1766
1767         Further fix the 32-bit build.
1768
1769         * page/mac/TextIndicatorWindow.mm:
1770         (WebCore::TextIndicatorWindow::setTextIndicator):
1771
1772 2014-12-04  Timothy Horton  <timothy_horton@apple.com>
1773
1774         Fix the 32-bit build.
1775
1776         * page/mac/TextIndicatorWindow.h:
1777         * page/mac/TextIndicatorWindow.mm:
1778         (WebCore::TextIndicatorWindow::setTextIndicator):
1779
1780 2014-12-04  Tim Horton  <timothy_horton@apple.com>
1781
1782         TextIndicator::createWithSelectionInFrame does synchronous IPC in WebKit2
1783         https://bugs.webkit.org/show_bug.cgi?id=139252
1784         <rdar://problem/19140827>
1785
1786         Reviewed by Anders Carlsson.
1787
1788         * WebCore.exp.in:
1789         * page/TextIndicator.cpp:
1790         (WebCore::TextIndicator::createWithSelectionInFrame):
1791         (WebCore::TextIndicator::TextIndicator):
1792         * page/TextIndicator.h:
1793         (WebCore::TextIndicator::selectionRectInWindowCoordinates):
1794         (WebCore::TextIndicator::textBoundingRectInWindowCoordinates):
1795         (WebCore::TextIndicator::selectionRectInScreenCoordinates): Deleted.
1796         (WebCore::TextIndicator::textBoundingRectInScreenCoordinates): Deleted.
1797         Go back to keeping the rects in "window" coordinates.
1798
1799         * page/mac/TextIndicatorWindow.h:
1800         * page/mac/TextIndicatorWindow.mm:
1801         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
1802         (WebCore::TextIndicatorWindow::setTextIndicator):
1803         Let callers pass in the contentRect instead of trying to share the code
1804         to compute it, since it needs to be different for legacy and modern WebKit.
1805
1806 2014-12-04  Oliver Hunt  <oliver@apple.com>
1807
1808         Serialization of MapData object provides unsafe access to internal types
1809         https://bugs.webkit.org/show_bug.cgi?id=138653
1810
1811         Reviewed by Geoffrey Garen.
1812
1813         We now keep the value portion of the key/value pair in MapData as a
1814         separate stack. This allows us to maintain the spec semantic of
1815         "atomic" serialisation of the key/value pair without retaining the
1816         use of a potentially invalid iterator.
1817
1818         * bindings/js/SerializedScriptValue.cpp:
1819         (WebCore::CloneSerializer::serialize):
1820
1821 2014-12-04  Radu Stavila  <stavila@adobe.com>
1822
1823         [SVG Masking] Add support for referencing <mask> elements from -webkit-mask-image
1824         https://bugs.webkit.org/show_bug.cgi?id=139092
1825
1826         Reviewed by Simon Fraser.
1827
1828         This patch improves the -webkit-mask-image property by allowing it to reference
1829         a <mask> element defined in an inline or external SVG document.
1830         Up until now, each image to be used as a mask consisted of a FillLayer object 
1831         whose m_image member represented the mask. Now, in order to accomodate
1832         <mask> elements referenced by a fragment identifier (e.g. file.svg#mask1)
1833         a new class was created (MaskImageOperation) and added as a member of the 
1834         FillLayer. As such, from now on, all FillLayer objects used for masking will
1835         store the masking information in this new member.
1836         When parsing the -webkit-mask-image property (or the -webkit-mask shorthand)
1837         a new MaskImageOperation object is created for each image. If the value represents
1838         an external URL, a pending SVG document will be created which will be loaded 
1839         during the phase that loads the pending resources. When the download is complete,
1840         the MaskImageOperation is notified by the CachedSVGDocument class and checks if
1841         the received download is a valid SVG and the requested fragment identifier
1842         actually exists and identifies a <mask> element. If it does, that element's
1843         renderer (of type RenderSVGResourceMasker) will be used when painting the mask layers.
1844         Otherwise, the MaskImageOperation class will use the already downloaded data 
1845         buffer to create a CachedImage from it and use that instead, basically emulating
1846         the previous behavior, when only images were accepted. This ensures that all existing
1847         behavior, like painting entire SVGs, painting normal images (e.g. PNG/JPG), painting
1848         generated images (e.g. linear-gradient) works as it did before.
1849
1850         No new tests required, this patch doesn't change any current functionality. 
1851         It only adds support for referencing <mask> elements for the -webkit-mask-image 
1852         property. This is sub-part 1 of the bigger patch https://bugs.webkit.org/show_bug.cgi?id=129682.
1853
1854         * CMakeLists.txt:
1855         * WebCore.vcxproj/WebCore.vcxproj:
1856         * WebCore.vcxproj/WebCore.vcxproj.filters:
1857         * WebCore.xcodeproj/project.pbxproj:
1858         * css/CSSValue.cpp:
1859         (WebCore::CSSValue::cssText):
1860         (WebCore::CSSValue::destroy):
1861         * css/CSSValue.h:
1862         (WebCore::CSSValue::isWebKitCSSResourceValue):
1863         * css/StyleResolver.cpp:
1864         (WebCore::StyleResolver::State::clear):
1865         (WebCore::StyleResolver::createMaskImageOperations):
1866         * css/StyleResolver.h:
1867         (WebCore::StyleResolver::State::maskImagesWithPendingSVGDocuments):
1868         * css/WebKitCSSResourceValue.cpp: Added.
1869         (WebCore::WebKitCSSResourceValue::WebKitCSSResourceValue):
1870         (WebCore::WebKitCSSResourceValue::customCSSText):
1871         (WebCore::WebKitCSSResourceValue::isCSSValueNone):
1872         * css/WebKitCSSResourceValue.h: Added.
1873         (WebCore::WebKitCSSResourceValue::create):
1874         (WebCore::WebKitCSSResourceValue::innerValue):
1875         * loader/cache/CachedResourceLoader.cpp:
1876         (WebCore::CachedResourceLoader::addCachedResource):
1877         * loader/cache/CachedResourceLoader.h:
1878         * loader/cache/CachedSVGDocument.cpp:
1879         (WebCore::CachedSVGDocument::CachedSVGDocument):
1880         (WebCore::CachedSVGDocument::finishLoading):
1881         * loader/cache/CachedSVGDocument.h:
1882         * loader/cache/CachedSVGDocumentReference.cpp:
1883         (WebCore::CachedSVGDocumentReference::CachedSVGDocumentReference):
1884         (WebCore::CachedSVGDocumentReference::~CachedSVGDocumentReference):
1885         (WebCore::CachedSVGDocumentReference::load):
1886         * loader/cache/CachedSVGDocumentReference.h:
1887         * page/FrameView.cpp:
1888         (WebCore::FrameView::isSVGDocument):
1889         * page/FrameView.h:
1890         * page/Page.cpp:
1891         (WebCore::Page::createPageFromBuffer):
1892         * page/Page.h:
1893         * platform/ScrollView.h:
1894         (WebCore::ScrollView::isSVGDocument):
1895         * platform/graphics/MaskImageOperation.cpp: Added.
1896         (WebCore::MaskImageOperation::create):
1897         (WebCore::MaskImageOperation::MaskImageOperation):
1898         (WebCore::MaskImageOperation::~MaskImageOperation):
1899         (WebCore::MaskImageOperation::isCSSValueNone):
1900         (WebCore::MaskImageOperation::cssValue):
1901         (WebCore::MaskImageOperation::isMaskLoaded):
1902         (WebCore::MaskImageOperation::setRenderLayerImageClient):
1903         (WebCore::MaskImageOperation::addRendererImageClient):
1904         (WebCore::MaskImageOperation::removeRendererImageClient):
1905         (WebCore::MaskImageOperation::getOrCreateCachedSVGDocumentReference):
1906         (WebCore::MaskImageOperation::notifyFinished): This is the method that gets called when the document has finished 
1907         downloading and checks if it can find a valid <mask> element.
1908         (WebCore::MaskImageOperation::drawMask):
1909         (WebCore::MaskImageOperation::getSVGMasker):
1910         * platform/graphics/MaskImageOperation.h: Added.
1911         * rendering/RenderBoxModelObject.cpp: The BackgroundImageGeometry class was moved out of RenderBoxModelObject in 
1912         order to be used as a parameter for other methods. This was necessary to avoid having methods with very many parameters.
1913         (WebCore::BackgroundImageGeometry::setNoRepeatX):
1914         (WebCore::BackgroundImageGeometry::setNoRepeatY):
1915         (WebCore::BackgroundImageGeometry::useFixedAttachment):
1916         (WebCore::BackgroundImageGeometry::clip):
1917         (WebCore::BackgroundImageGeometry::relativePhase):
1918         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setNoRepeatX): Deleted.
1919         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setNoRepeatY): Deleted.
1920         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::useFixedAttachment): Deleted.
1921         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::clip): Deleted.
1922         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::relativePhase): Deleted.
1923         * rendering/RenderBoxModelObject.h:
1924         (WebCore::BackgroundImageGeometry::BackgroundImageGeometry):
1925         (WebCore::BackgroundImageGeometry::destOrigin):
1926         (WebCore::BackgroundImageGeometry::setDestOrigin):
1927         (WebCore::BackgroundImageGeometry::destRect):
1928         (WebCore::BackgroundImageGeometry::setDestRect):
1929         (WebCore::BackgroundImageGeometry::phase):
1930         (WebCore::BackgroundImageGeometry::setPhase):
1931         (WebCore::BackgroundImageGeometry::tileSize):
1932         (WebCore::BackgroundImageGeometry::setTileSize):
1933         (WebCore::BackgroundImageGeometry::spaceSize):
1934         (WebCore::BackgroundImageGeometry::setSpaceSize):
1935         (WebCore::BackgroundImageGeometry::setPhaseX):
1936         (WebCore::BackgroundImageGeometry::setPhaseY):
1937         (WebCore::BackgroundImageGeometry::setHasNonLocalGeometry):
1938         (WebCore::BackgroundImageGeometry::hasNonLocalGeometry):
1939         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::BackgroundImageGeometry): Deleted.
1940         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::destOrigin): Deleted.
1941         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setDestOrigin): Deleted.
1942         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::destRect): Deleted.
1943         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setDestRect): Deleted.
1944         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::phase): Deleted.
1945         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhase): Deleted.
1946         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::tileSize): Deleted.
1947         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setTileSize): Deleted.
1948         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::spaceSize): Deleted.
1949         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setSpaceSize): Deleted.
1950         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhaseX): Deleted.
1951         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setPhaseY): Deleted.
1952         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::setHasNonLocalGeometry): Deleted.
1953         (WebCore::RenderBoxModelObject::BackgroundImageGeometry::hasNonLocalGeometry): Deleted.
1954         * rendering/RenderLayer.cpp:
1955         (WebCore::RenderLayer::RenderLayer):
1956         (WebCore::RenderLayer::~RenderLayer):
1957         * rendering/RenderLayer.h:
1958         * rendering/RenderLayerMaskImageInfo.cpp: Added.
1959         (WebCore::RenderLayer::MaskImageInfo::layerToMaskMap): Returns a static map that links MaskImageInfo objects to RenderLayers.
1960         (WebCore::RenderLayer::MaskImageInfo::getIfExists): Returns the MaskImageInfo associated with a specific RenderLayer.
1961         (WebCore::RenderLayer::MaskImageInfo::get): Returns the MaskImageInfo associated with a specific RenderLayer (creates it if necessary).
1962         (WebCore::RenderLayer::MaskImageInfo::remove): Removes the MaskImageInfo associated with a specific RenderLayer.
1963         (WebCore::RenderLayer::MaskImageInfo::MaskImageInfo):
1964         (WebCore::RenderLayer::MaskImageInfo::~MaskImageInfo):
1965         (WebCore::RenderLayer::MaskImageInfo::notifyFinished): Gets called when the SVG document finished loading, triggers repaint.
1966         (WebCore::RenderLayer::MaskImageInfo::imageChanged): Gets called when the image object changed, triggers repaint.
1967         (WebCore::RenderLayer::MaskImageInfo::updateMaskImageClients): Goes through all mask layers and sets image/SVG clients. 
1968         Updates list of internal and external SVG references.
1969         (WebCore::RenderLayer::MaskImageInfo::removeMaskImageClients): Removes all image/SVG clients and clears lists of internal and external SVG references.
1970         * rendering/RenderLayerMaskImageInfo.h: Added.
1971         * rendering/RenderObject.h:
1972         (WebCore::RenderObject::isRenderSVGResourceMasker):
1973         * rendering/style/FillLayer.cpp:
1974         (WebCore::FillLayer::FillLayer):
1975         (WebCore::FillLayer::operator=):
1976         (WebCore::FillLayer::operator==):
1977         (WebCore::FillLayer::cullEmptyLayers):
1978         (WebCore::FillLayer::hasNonEmptyMaskImage):
1979         (WebCore::FillLayer::imagesAreLoaded):
1980         * rendering/style/FillLayer.h:
1981         (WebCore::FillLayer::maskImage):
1982         (WebCore::FillLayer::imageOrMaskImage):
1983         (WebCore::FillLayer::setMaskImage):
1984         (WebCore::FillLayer::clearMaskImage):
1985         (WebCore::FillLayer::hasMaskImage):
1986         * rendering/svg/RenderSVGResourceMasker.cpp:
1987         (WebCore::RenderSVGResourceMasker::applySVGMask):
1988         (WebCore::RenderSVGResourceMasker::applyResource):
1989         (WebCore::RenderSVGResourceMasker::drawMaskForRenderer):
1990         * rendering/svg/RenderSVGResourceMasker.h:
1991         * svg/SVGMaskElement.cpp:
1992         (WebCore::SVGMaskElement::createElementRenderer):
1993         (WebCore::SVGMaskElement::addClientRenderLayer):
1994         (WebCore::SVGMaskElement::removeClientRenderLayer):
1995         * svg/SVGMaskElement.h:
1996         * svg/SVGUseElement.cpp:
1997         (WebCore::SVGUseElement::setCachedDocument):
1998         * svg/graphics/SVGImage.cpp:
1999         (WebCore::SVGImage::dataChanged):
2000
2001 2014-12-04  Commit Queue  <commit-queue@webkit.org>
2002
2003         Unreviewed, rolling out r176789.
2004         https://bugs.webkit.org/show_bug.cgi?id=139255
2005
2006         Broke the non Mac-WK2 builds (Requested by stavila on
2007         #webkit).
2008
2009         Reverted changeset:
2010
2011         "Remove isSpecifiedFont boolean from FontDescription"
2012         https://bugs.webkit.org/show_bug.cgi?id=139233
2013         http://trac.webkit.org/changeset/176789
2014
2015 2014-12-03  Antti Koivisto  <antti@apple.com>
2016
2017         Remove isSpecifiedFont boolean from FontDescription
2018         https://bugs.webkit.org/show_bug.cgi?id=139233
2019
2020         Reviewed by Andreas Kling.
2021
2022         It is barely used.
2023
2024         * css/StyleBuilderCustom.h:
2025         (WebCore::StyleBuilderCustom::applyInheritFontFamily):
2026         (WebCore::StyleBuilderCustom::applyValueFontFamily):
2027         * platform/graphics/FontDescription.cpp:
2028         (WebCore::genericFamiliesSet):
2029         (WebCore::FontDescription::hasGenericFirstFamily):
2030
2031             Add a function to test for generic families.
2032
2033         * platform/graphics/FontDescription.h:
2034         (WebCore::FontDescription::FontDescription):
2035         (WebCore::FontDescription::setTextRenderingMode):
2036         (WebCore::FontDescription::operator==):
2037         (WebCore::FontDescription::isSpecifiedFont): Deleted.
2038         (WebCore::FontDescription::setIsSpecifiedFont): Deleted.
2039         * rendering/RenderText.cpp:
2040         (WebCore::RenderText::computeUseBackslashAsYenSymbol):
2041
2042             This is the only client.
2043             Figure out the equivalent information dynamically if needed.
2044
2045 2014-12-03  Joonghun Park  <jh718.park@samsung.com>
2046
2047         Use std::unique_ptr instead of PassOwnPtr|OwnPtr for Pasteboard
2048         https://bugs.webkit.org/show_bug.cgi?id=139019
2049
2050         Reviewed by Darin Adler.
2051
2052         No new tests, no behavior changes.
2053
2054         * dom/DataTransfer.cpp:
2055         (WebCore::DataTransfer::DataTransfer):
2056         * dom/DataTransfer.h:
2057         * editing/Editor.cpp:
2058         (WebCore::Editor::dispatchCPPEvent):
2059         * page/mac/EventHandlerMac.mm:
2060         (WebCore::EventHandler::createDraggingDataTransfer):
2061         * platform/Pasteboard.h:
2062         * platform/efl/PasteboardEfl.cpp:
2063         (WebCore::Pasteboard::createForCopyAndPaste):
2064         (WebCore::Pasteboard::createPrivate):
2065         (WebCore::Pasteboard::createForDragAndDrop):
2066         * platform/gtk/PasteboardGtk.cpp:
2067         (WebCore::Pasteboard::createForCopyAndPaste):
2068         (WebCore::Pasteboard::createForGlobalSelection):
2069         (WebCore::Pasteboard::createPrivate):
2070         (WebCore::Pasteboard::createForDragAndDrop):
2071         (WebCore::Pasteboard::create): Deleted.
2072         * platform/ios/PasteboardIOS.mm:
2073         (WebCore::Pasteboard::createForCopyAndPaste):
2074         (WebCore::Pasteboard::createPrivate):
2075         * platform/mac/PasteboardMac.mm:
2076         (WebCore::Pasteboard::createForCopyAndPaste):
2077         (WebCore::Pasteboard::createPrivate):
2078         (WebCore::Pasteboard::createForDragAndDrop):
2079         (WebCore::Pasteboard::create): Deleted.
2080         * platform/win/PasteboardWin.cpp:
2081         (WebCore::Pasteboard::createForCopyAndPaste):
2082         (WebCore::Pasteboard::createPrivate):
2083         (WebCore::Pasteboard::createForDragAndDrop):
2084
2085 2014-12-03  Benjamin Poulain  <bpoulain@apple.com>
2086
2087         Get rid of FrameLoaderClient::dispatchWillRequestResource
2088         https://bugs.webkit.org/show_bug.cgi?id=139235
2089
2090         Reviewed by Alexey Proskuryakov.
2091
2092         It is useless.
2093
2094         * loader/FrameLoaderClient.h:
2095         (WebCore::FrameLoaderClient::dispatchWillRequestResource): Deleted.
2096         * loader/cache/CachedResourceLoader.cpp:
2097         (WebCore::CachedResourceLoader::requestResource):
2098
2099 2014-12-03  Myles C. Maxfield  <mmaxfield@apple.com>
2100
2101         List markers in RTL languages do not draw the first character.
2102         https://bugs.webkit.org/show_bug.cgi?id=139244
2103
2104         Reviewed by Simon Fraser.
2105
2106         Off-by-one error when reversing the string (from LTR to RTL)
2107
2108         Test: fast/lists/rtl-marker.html
2109
2110         * rendering/RenderListMarker.cpp:
2111         (WebCore::RenderListMarker::paint):
2112
2113 2014-12-03  Beth Dakin  <bdakin@apple.com>
2114
2115         <input> elements get whitespace action menu instead of editable text menu
2116         https://bugs.webkit.org/show_bug.cgi?id=139241
2117         -and corresponding-
2118         rdar://problem/19072083
2119
2120         Reviewed by Sam Weinig.
2121
2122         Since we will hit test form controls as form controls, we need a new function to 
2123         determine if the hit point is over text inside that form control or not.
2124         * WebCore.exp.in:
2125         * rendering/HitTestResult.cpp:
2126         (WebCore::HitTestResult::isOverTextInsideFormControlElement):
2127         * rendering/HitTestResult.h:
2128
2129 2014-12-03  Tim Horton  <timothy_horton@apple.com>
2130
2131         Keyboard input should be disabled in the preview popover
2132         https://bugs.webkit.org/show_bug.cgi?id=139219
2133         <rdar://problem/19052381>
2134
2135         Reviewed by Anders Carlsson.
2136
2137         * page/ChromeClient.h:
2138         (WebCore::ChromeClient::shouldDispatchFakeMouseMoveEvents):
2139         * page/EventHandler.cpp:
2140         (WebCore::EventHandler::dispatchFakeMouseMoveEventSoon):
2141         Allow ChromeClient to disable the dispatch of "fake" mouseMove events
2142         that happens during scrolling.
2143
2144 2014-12-03  Antti Koivisto  <antti@apple.com>
2145
2146         Remove genericFamily enum from FontDescription
2147         https://bugs.webkit.org/show_bug.cgi?id=139207
2148
2149         Reviewed by Andreas Kling.
2150
2151         We use predefined AtomicStrings for generic families. The side enum adds no information.
2152
2153         * css/CSSFontSelector.cpp:
2154         (WebCore::resolveGenericFamily):
2155         (WebCore::CSSFontSelector::getFontData):
2156
2157             Match the existing quirk where the default font can be replaced by @font-face rule but user generic families can't.
2158
2159         (WebCore::CSSFontSelector::resolvesFamilyFor):
2160         (WebCore::fontDataForGenericFamily): Deleted.
2161         * css/DeprecatedStyleBuilder.cpp:
2162         (WebCore::ApplyPropertyFontFamily::applyInheritValue):
2163         (WebCore::ApplyPropertyFontFamily::applyInitialValue):
2164         (WebCore::ApplyPropertyFontFamily::applyValue):
2165         * css/StyleResolver.cpp:
2166         (WebCore::StyleResolver::checkForGenericFamilyChange):
2167
2168             Remove the explicit monospace check, earlier useFixedDefaultSize check is equivalent.
2169
2170         (WebCore::StyleResolver::initializeFontStyle):
2171         * platform/graphics/FontDescription.h:
2172         (WebCore::FontDescription::FontDescription):
2173         (WebCore::FontDescription::useFixedDefaultSize):
2174         (WebCore::FontDescription::setWeight):
2175         (WebCore::FontDescription::equalForTextAutoSizing):
2176         (WebCore::FontDescription::operator==):
2177         (WebCore::FontDescription::genericFamily): Deleted.
2178         (WebCore::FontDescription::setGenericFamily): Deleted.
2179         * platform/mac/ThemeMac.mm:
2180         (WebCore::ThemeMac::controlFont):
2181         * rendering/RenderTheme.cpp:
2182         (WebCore::RenderTheme::adjustStyle):
2183
2184             Reset the lineheight unconditionally for buttons.
2185             This always happened before because the explicitly set generic family made the font compare false.
2186
2187         * rendering/RenderThemeIOS.mm:
2188         (WebCore::RenderThemeIOS::systemFont):
2189         * rendering/RenderThemeMac.mm:
2190         (WebCore::RenderThemeMac::systemFont):
2191         (WebCore::RenderThemeMac::setFontFromControlSize):
2192         * style/StyleResolveForDocument.cpp:
2193         (WebCore::Style::resolveForDocument):
2194
2195             Resolve document style for final value immediately as it can't be affected by @font-face rules.
2196
2197 2014-12-03  Zalan Bujtas  <zalan@apple.com>
2198
2199         ASSERTION: RenderMultiColumnFlowThread::processPossibleSpannerDescendant() when column spanner's parent is not a RenderBlockFlow.
2200         https://bugs.webkit.org/show_bug.cgi?id=139188
2201         rdar://problem/18502182
2202
2203         Reviewed by David Hyatt.
2204
2205         This patch ensures that the validation check for spanner in isValidColumnSpanner() is in synch
2206         with the expectation in RenderMultiColumnFlowThread::processPossibleSpannerDescendant().
2207         (descendant's parent is expected to be a RenderBlockFlow)
2208
2209         Test: fast/multicol/svg-content-as-column-spanner-crash.html
2210
2211         * rendering/RenderMultiColumnFlowThread.cpp:
2212         (WebCore::isValidColumnSpanner):
2213
2214 2014-12-03  peavo@outlook.com  <peavo@outlook.com>
2215
2216         [TexMap] Redundant method in GraphicsLayerTextureMapper.
2217         https://bugs.webkit.org/show_bug.cgi?id=138005
2218
2219         Reviewed by Alex Christensen.
2220
2221         The TextureMapperLayer method descendantsOrSelfHaveRunningAnimations() can be used
2222         instead of the GraphicsLayerTextureMapper method startedAnimation().
2223
2224         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
2225         (WebCore::GraphicsLayerTextureMapper::GraphicsLayerTextureMapper):
2226         (WebCore::GraphicsLayerTextureMapper::addAnimation):
2227         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
2228
2229 2014-12-03  Jeremy Jones  <jeremyj@apple.com>
2230
2231         Subtitle menu should only appear when useful.
2232         https://bugs.webkit.org/show_bug.cgi?id=139133
2233
2234         Reviewed by Eric Carlson.
2235
2236         * platform/ios/WebVideoFullscreenInterfaceAVKit.mm:
2237         (-[WebAVPlayerController hasLegibleMediaSelectionOptions]): only enable when there are non default options.
2238         (-[WebAVPlayerController hasAudioMediaSelectionOptions]): only enable when there is more than one option.
2239
2240 2014-12-03  Joanmarie Diggs  <jdiggs@igalia.com>
2241
2242         AX: [ATK] Inline text elements with accessible object attributes and/or event handlers are not exposed
2243         https://bugs.webkit.org/show_bug.cgi?id=139071
2244
2245         Reviewed by Chris Fleizach.
2246
2247         Adds a new InlineRole accessibility role type for non-focusable inline
2248         elements which have an event handler or attribute suggesting possible
2249         inclusion by the platform. This is mapped to ATK_ROLE_STATIC for GTK and
2250         EFL. On the Mac, it is currently ignored to preserve existing behavior.
2251
2252         Added new test cases to the existing roles-exposed.html test.
2253
2254         * accessibility/AccessibilityObject.cpp:
2255         (WebCore::AccessibilityObject::supportsDatetimeAttribute): Added.
2256         * accessibility/AccessibilityObject.h: Added InlineRole.
2257         * accessibility/AccessibilityRenderObject.cpp:
2258         (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Handle InlineRole.
2259         * accessibility/atk/AccessibilityObjectAtk.cpp:
2260         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Include InlineRole objects.
2261         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2262         (atkRole):
2263         * accessibility/mac/AccessibilityObjectMac.mm:
2264         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore InlineRole objects.
2265         * html/HTMLTagNames.in: Added 'time'.
2266
2267 2014-12-03  Jer Noble  <jer.noble@apple.com>
2268
2269         [Mac] Hang when calling -[AVAsset resolvedURL].
2270         https://bugs.webkit.org/show_bug.cgi?id=139223
2271
2272         Reviewed by Eric Carlson.
2273
2274         On a particularly slow-loading site, a call to -[AVAsset resolvedURL] can take an arbitrarily long
2275         time. Treat this AVAsset property similar to other "metadata" properties, and check the load status
2276         of the property before requesting it.
2277
2278         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2279         (WebCore::MediaPlayerPrivateAVFoundationObjC::hasSingleSecurityOrigin): Check the load state of -resolvedURL.
2280         (WebCore::MediaPlayerPrivateAVFoundationObjC::resolvedURL): Ditto.
2281         (WebCore::assetMetadataKeyNames): Add @"resolvedURL".
2282
2283 2014-12-03  Csaba Osztrogonác  <ossy@webkit.org>
2284
2285         URTBF after r176721 to fix ENABLE(CSS_DEVICE_ADAPTATION) build.
2286
2287         * css/CSSParser.cpp:
2288         (WebCore::CSSParser::parseViewportProperty):
2289
2290 2014-12-03  Chris Dumez  <cdumez@apple.com>
2291
2292         Move 'display' CSS property to the new StyleBuilder
2293         https://bugs.webkit.org/show_bug.cgi?id=139218
2294
2295         Reviewed by Antti Koivisto.
2296
2297         Move 'display' CSS property to the new StyleBuilder.
2298
2299         No new tests, no behavior change.
2300
2301         * css/CSSPropertyNames.in:
2302         * css/DeprecatedStyleBuilder.cpp:
2303         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2304         (WebCore::ApplyPropertyDisplay::isValidDisplayValue): Deleted.
2305         (WebCore::ApplyPropertyDisplay::applyInheritValue): Deleted.
2306         (WebCore::ApplyPropertyDisplay::applyInitialValue): Deleted.
2307         (WebCore::ApplyPropertyDisplay::applyValue): Deleted.
2308         (WebCore::ApplyPropertyDisplay::createHandler): Deleted.
2309         * css/StyleBuilderCustom.h:
2310         (WebCore::StyleBuilderCustom::isValidDisplayValue):
2311         (WebCore::StyleBuilderCustom::applyInheritDisplay):
2312         (WebCore::StyleBuilderCustom::applyValueDisplay):
2313         * css/makeprop.pl:
2314         Add support for passing multiple values for Custom option, e.g.:
2315         'Custom=Inherit|Value'. This was useful as we did not need custom
2316         code for display's initial value.
2317
2318 2014-12-03  Chris Dumez  <cdumez@apple.com>
2319
2320         Modernize the CSSParser code
2321         https://bugs.webkit.org/show_bug.cgi?id=139209
2322
2323         Reviewed by Antti Koivisto.
2324
2325         Modernize the CSSParser code by:
2326         - Using more references instead of pointers
2327         - Using nullptr instead of 0
2328
2329         No new tests, no behavior change.
2330
2331 2014-12-03  David Kilzer  <ddkilzer@apple.com>
2332
2333         [iOS] REGRESSION (r176622): WebCore fails to link
2334
2335         Speculative fix for the following build failure:
2336
2337             Ld WebCore
2338             Undefined symbols for architecture armv7s:
2339               "__ZN3JSC10IdentifierC1EPNS_9ExecStateERKN3WTF12AtomicStringE", referenced from:
2340                   __ZN7WebCoreL24createAccelerationObjectEPKNS_16DeviceMotionData12AccelerationEPN3JSC9ExecStateE in JSDeviceMotionEventCustom.o
2341
2342         * bindings/js/JSDeviceMotionEventCustom.cpp: Include
2343         <runtime/IdentifierInlines.h> to define missing symbol.
2344
2345 2014-12-02  Dean Jackson  <dino@apple.com>
2346
2347         [Media] Audio content shouldn't have fullscreen buttons, even if in a video element
2348         https://bugs.webkit.org/show_bug.cgi?id=139200
2349         <rdar://problem/18914506>
2350
2351         Reviewed by Eric Carlson.
2352
2353         An audio-only resource, even if loaded into a <video> element, should not
2354         present the fullscreen or optimised fullscreen controls. This includes a
2355         MediaDocument, which is always a <video> element. We can detect this by
2356         examining the length of the videoTracks property as our content loads.
2357
2358         Test: media/audio-as-video-fullscreen.html
2359
2360         * Modules/mediacontrols/mediaControlsApple.js:
2361         (Controller): Initialize a hasVisualMedia to false.
2362         (Controller.prototype.handleReadyStateChange): If we see a videoTrack, hasVisualMedia is now true.
2363         (Controller.prototype.updateFullscreenButtons): Merge the updateFullscreenButton and
2364         updateOptimizedFullscreenButton methods into this single spot, and check for
2365         hasVisualMedia.
2366         (Controller.prototype.updateFullscreenButton): Deleted.
2367         (Controller.prototype.updateOptimizedFullscreenButton): Deleted.
2368
2369         * Modules/mediacontrols/mediaControlsBase.js: Do the same for the other ports.
2370
2371 2014-12-02  Dean Jackson  <dino@apple.com>
2372
2373         Missing support for innerHTML on SVGElement
2374         https://bugs.webkit.org/show_bug.cgi?id=136903
2375
2376         Unreviewed followup from r176630. Minor style nits that I missed in my review.
2377
2378         * dom/Element.h: Remove unnecessary parameter name.
2379         * html/parser/HTMLTreeBuilder.cpp: Whitespace cleanup.
2380         (WebCore::HTMLTreeBuilder::adjustedCurrentStackItem):
2381
2382 2014-12-03  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
2383
2384         [EFL] Add subtle crypto to the build system
2385         https://bugs.webkit.org/show_bug.cgi?id=138612
2386
2387         Reviewed by Csaba Osztrogonác.
2388
2389         It is obvious to make Efl use GnuTLS as well,
2390         and since there seems no reason why to separate
2391         Efl and Gtk implementations from each other, I
2392         also propose renaming the gtk directory and file
2393         suffixes to gnutls.
2394
2395         No new tests needed.
2396
2397         * PlatformEfl.cmake:
2398         * PlatformGTK.cmake:
2399         * crypto/gnutls/CryptoAlgorithmAES_CBCGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_CBCGtk.cpp.
2400         (WebCore::CryptoAlgorithmAES_CBC::platformEncrypt):
2401         (WebCore::CryptoAlgorithmAES_CBC::platformDecrypt):
2402         * crypto/gnutls/CryptoAlgorithmAES_KWGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmAES_KWGtk.cpp.
2403         (WebCore::CryptoAlgorithmAES_KW::platformEncrypt):
2404         (WebCore::CryptoAlgorithmAES_KW::platformDecrypt):
2405         * crypto/gnutls/CryptoAlgorithmHMACGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmHMACGtk.cpp.
2406         (WebCore::getGnutlsDigestAlgorithm):
2407         (WebCore::calculateSignature):
2408         (WebCore::CryptoAlgorithmHMAC::platformSign):
2409         (WebCore::CryptoAlgorithmHMAC::platformVerify):
2410         * crypto/gnutls/CryptoAlgorithmRSAES_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSAES_PKCS1_v1_5Gtk.cpp.
2411         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformEncrypt):
2412         (WebCore::CryptoAlgorithmRSAES_PKCS1_v1_5::platformDecrypt):
2413         * crypto/gnutls/CryptoAlgorithmRSASSA_PKCS1_v1_5GnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSASSA_PKCS1_v1_5Gtk.cpp.
2414         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformSign):
2415         (WebCore::CryptoAlgorithmRSASSA_PKCS1_v1_5::platformVerify):
2416         * crypto/gnutls/CryptoAlgorithmRSA_OAEPGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRSA_OAEPGtk.cpp.
2417         (WebCore::CryptoAlgorithmRSA_OAEP::platformEncrypt):
2418         (WebCore::CryptoAlgorithmRSA_OAEP::platformDecrypt):
2419         * crypto/gnutls/CryptoAlgorithmRegistryGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoAlgorithmRegistryGtk.cpp.
2420         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms):
2421         * crypto/gnutls/CryptoDigestGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoDigestGtk.cpp.
2422         (WebCore::CryptoDigest::CryptoDigest):
2423         (WebCore::CryptoDigest::~CryptoDigest):
2424         (WebCore::CryptoDigest::create):
2425         (WebCore::CryptoDigest::addBytes):
2426         (WebCore::CryptoDigest::computeHash):
2427         * crypto/gnutls/CryptoKeyRSAGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/CryptoKeyRSAGtk.cpp.
2428         (WebCore::CryptoKeyRSA::CryptoKeyRSA):
2429         (WebCore::CryptoKeyRSA::create):
2430         (WebCore::CryptoKeyRSA::~CryptoKeyRSA):
2431         (WebCore::CryptoKeyRSA::restrictToHash):
2432         (WebCore::CryptoKeyRSA::isRestrictedToHash):
2433         (WebCore::CryptoKeyRSA::keySizeInBits):
2434         (WebCore::CryptoKeyRSA::buildAlgorithmDescription):
2435         (WebCore::CryptoKeyRSA::exportData):
2436         (WebCore::CryptoKeyRSA::generatePair):
2437         * crypto/gnutls/SerializedCryptoKeyWrapGnuTLS.cpp: Renamed from Source/WebCore/crypto/gtk/SerializedCryptoKeyWrapGtk.cpp.
2438         (WebCore::getDefaultWebCryptoMasterKey):
2439         (WebCore::wrapSerializedCryptoKey):
2440         (WebCore::unwrapSerializedCryptoKey):
2441         * crypto/keys/CryptoKeyRSA.h:
2442
2443 2014-12-02  Benjamin Poulain  <benjamin@webkit.org>
2444
2445         Little cleanup of the default stylesheet
2446         https://bugs.webkit.org/show_bug.cgi?id=139168
2447
2448         Reviewed by Antti Koivisto.
2449
2450         The default stylesheet has a lot of historical junk that need cleaning. This patch addresses
2451         only the bits that do not change behaviors and have positive perf and readability impact.
2452
2453         I have limited :matches() to attributes for now. The idea is to only target
2454         simple selectors that are not used for filtering by the collectors.
2455         We should eventually clean up more cases, one thing at a time.
2456
2457         Tests: fast/css/map-tag-default-display.html
2458                fast/selectors/map-tag-default-display.html
2459
2460         * css/html.css:
2461         (map): Deleted.
2462         map was explicitely setting its display to inline. Remove that since it is the default.
2463
2464         (head): Deleted.
2465         (meta): Deleted.
2466         (title): Deleted.
2467         (link): Deleted.
2468         (style): Deleted.
2469         (script): Deleted.
2470         (div): Deleted.
2471         (layer): Deleted.
2472         (article, aside, footer, header, hgroup, main, nav, section): Deleted.
2473         (address): Deleted.
2474         (head, link, meta, script, style, title):
2475         (address, article, aside, div, footer, header, hgroup, layer, main, nav, section):
2476         Group the standard blocks in a single rule.
2477
2478         (input:matches([type="hidden"], [type="image"], [type="file"])):
2479         (input:matches([type="radio"], [type="checkbox"])):
2480         (input:matches([type="button"], [type="submit"], [type="reset"])):
2481         (input:matches([type="button"], [type="submit"], [type="reset"]), input[type="file"]::-webkit-file-upload-button, button):
2482         (input:matches([type="button"], [type="submit"], [type="reset"]):active, input[type="file"]::-webkit-file-upload-button:active, button:active):
2483         (input:matches([type="button"], [type="submit"], [type="reset"]):active, input[type="file"]:active::-webkit-file-upload-button, button:active):
2484         (input[type="file"]:active:disabled::-webkit-file-upload-button, button:active:disabled):
2485         (input:matches([type="checkbox"], [type="radio"]):checked):
2486         (input:matches([type="checkbox"], [type="radio"]):checked:disabled):
2487         (select:matches([size], [multiple], [size][multiple])):
2488         (select:matches([size="0"], [size="1"])):
2489         (input[type="hidden"], input[type="image"], input[type="file"]): Deleted.
2490         (input[type="radio"], input[type="checkbox"]): Deleted.
2491         (input[type="button"], input[type="submit"], input[type="reset"]): Deleted.
2492         (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button): Deleted.
2493         (input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]::-webkit-file-upload-button:active, button:active): Deleted.
2494         (input[type="button"]:active, input[type="submit"]:active, input[type="reset"]:active, input[type="file"]:active::-webkit-file-upload-button, button:active): Deleted.
2495         (input[type="button"]:active:disabled, input[type="submit"]:active:disabled, input[type="reset"]:active:disabled, input[type="file"]:active:disabled::-webkit-file-upload-button, button:active:disabled): Deleted.
2496         (input[type="checkbox"]:checked, input[type="radio"]:checked): Deleted.
2497         (input[type="checkbox"]:checked:disabled, input[type="radio"]:checked:disabled): Deleted.
2498         (select[size][multiple]): Deleted.
2499         (select[size="1"]): Deleted.
2500         Group every selector lists that only differentiates complex selectors through attributes
2501         into a simple complex selector with :matches().
2502
2503 2014-12-02  Mark Lam  <mark.lam@apple.com>
2504
2505         Rolling out r176592, r176603, r176616, and r176705 until build and perf issues are resolved.
2506         https://bugs.webkit.org/show_bug.cgi?id=138821
2507
2508         Not reviewed.
2509
2510         * bindings/js/SerializedScriptValue.cpp:
2511         (WebCore::CloneDeserializer::deserializeString):
2512         * editing/TextIterator.cpp:
2513         (WebCore::SearchBuffer::isBadMatch):
2514         * page/mac/ServicesOverlayController.mm:
2515         (WebCore::ServicesOverlayController::buildSelectionHighlight):
2516         * platform/graphics/SegmentedFontData.cpp:
2517         (WebCore::SegmentedFontData::fontDataForCharacter):
2518         (WebCore::SegmentedFontData::containsCharacter):
2519         (WebCore::SegmentedFontData::isLoading):
2520         * platform/graphics/WOFFFileFormat.cpp:
2521         (WebCore::convertWOFFToSfnt):
2522         * platform/graphics/cairo/GradientCairo.cpp:
2523         (WebCore::Gradient::platformGradient):
2524         * platform/image-decoders/gif/GIFImageDecoder.cpp:
2525         (WebCore::GIFImageDecoder::clearFrameBufferCache):
2526         * rendering/RenderBox.cpp:
2527         (WebCore::RenderBox::paintFillLayers):
2528         * rendering/style/GridResolvedPosition.cpp:
2529         (WebCore::firstNamedGridLineBeforePosition):
2530         (WebCore::GridResolvedPosition::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
2531         * svg/SVGFontElement.cpp:
2532         (WebCore::kerningForPairOfStringsAndGlyphs):
2533         * svg/SVGPathByteStream.h:
2534         (WebCore::SVGPathByteStream::append):
2535         * xml/XPathNodeSet.h:
2536         (WebCore::XPath::NodeSet::begin):
2537         (WebCore::XPath::NodeSet::end):
2538
2539 2014-12-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2540
2541         Fix build break EFL port since r176696
2542         https://bugs.webkit.org/show_bug.cgi?id=139215
2543
2544         Unreviewed, build fix for EFL port.
2545
2546         * storage/StorageNamespaceProvider.h: Include SecurityOriginHash.h from WebCore/page directory.
2547
2548 2014-12-02  Joanmarie Diggs  <jdiggs@igalia.com>
2549
2550         AX: [ATK] Table captions and table rows are missing from the accessible hierarchy
2551         https://bugs.webkit.org/show_bug.cgi?id=139005
2552
2553         Reviewed by Chris Fleizach.
2554
2555         Expose table captions and rows via ATK. Accomplishing the former is done
2556         by role mapping and inclusion of the object as a child of the table for
2557         ATK. Accomplishing the latter was mostly a matter of deleting all the ATK
2558         platform code that had been forcing rows to be ignored. Because captions
2559         are not being exposed on the Mac, they are now explicitly being ignored
2560         for that platform.
2561
2562         Tests: accessibility/aria-table-hierarchy.html
2563                accessibility/table-hierarchy.html
2564
2565         * accessibility/AccessibilityObject.h:
2566         * accessibility/AccessibilityRenderObject.cpp:
2567         (WebCore::AccessibilityRenderObject::determineAccessibilityRole): Added CaptionRole.
2568         * accessibility/AccessibilityTable.cpp:
2569         (WebCore::AccessibilityTable::addChildren): Include non-ignored captions as table children.
2570         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2571         (webkitAccessibleGetNChildren): Removed special handling for tables.
2572         (webkitAccessibleRefChild): Removed special handling for tables.
2573         (webkitAccessibleGetIndexInParent): Removed special handling for table cells.
2574         (atkRole): Corrected broken mapping for RowRole.
2575         (getNChildrenForTable): Deleted.
2576         (getChildForTable): Deleted.
2577         (getIndexInParentForCellInRow): Deleted.
2578         * accessibility/mac/AccessibilityObjectMac.mm:
2579         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject): Ignore captions as table children.
2580
2581 2014-12-02  Alexey Proskuryakov  <ap@apple.com>
2582
2583         http/tests/appcache/main-resource-fallback-for-network-error-crash.html can break subsequent tests
2584         https://bugs.webkit.org/show_bug.cgi?id=139149
2585
2586         Reviewed by Anders Carlsson.
2587
2588         * WebCore.exp.in: Added ApplicationCache::deleteAllCaches.
2589
2590         * loader/appcache/ApplicationCache.h:
2591         * loader/appcache/ApplicationCache.cpp:
2592         (WebCore::ApplicationCache::deleteAllCaches): Added.
2593
2594         * loader/appcache/ApplicationCacheStorage.cpp:
2595         (WebCore::ApplicationCacheStorage::getManifestURLs): Removed logging. It is OK to
2596         have this function called when there is no database file.
2597
2598         * loader/appcache/ApplicationCacheStorage.h: Renamed manifestURLs to getManifestURLs,
2599         because WebKit style.
2600
2601 2014-12-02  Tim Horton  <timothy_horton@apple.com>
2602
2603         Remove a SnowLeopard-era quirk for QuickLook
2604         https://bugs.webkit.org/show_bug.cgi?id=139208
2605         <rdar://problem/19121822>
2606
2607         Reviewed by Alexey Proskuryakov.
2608
2609         * WebCore.exp.in:
2610         * WebCore.xcodeproj/project.pbxproj:
2611         * loader/EmptyClients.h:
2612         * loader/FrameLoader.cpp:
2613         (WebCore::FrameLoader::subresourceCachePolicy):
2614         * loader/FrameLoaderClient.h:
2615         * platform/mac/QuickLookMac.h: Removed.
2616         * platform/mac/QuickLookMac.mm: Removed.
2617
2618 2014-12-02  Anders Carlsson  <andersca@apple.com>
2619
2620         Begin stubbing out a StorageNamespaceProvider class
2621         https://bugs.webkit.org/show_bug.cgi?id=139203
2622
2623         Reviewed by Tim Horton.
2624
2625         * CMakeLists.txt:
2626         * WebCore.vcxproj/WebCore.vcxproj:
2627         * WebCore.vcxproj/WebCore.vcxproj.filters:
2628         * WebCore.xcodeproj/project.pbxproj:
2629         Add new files.
2630
2631         * page/DOMWindow.cpp:
2632         (WebCore::DOMWindow::localStorage):
2633         If the page has a storage namespace provider, get the local storage from it.
2634
2635         * page/Page.cpp:
2636         (WebCore::Page::Page):
2637         Move the storage namespace provider from the configuration.
2638
2639         (WebCore::Page::setStorageNamespaceProvider):
2640         Add a setter. This will be used by setGroupName.
2641
2642         * page/Page.h:
2643         (WebCore::Page::storageNamespaceProvider):
2644         Add a getter.
2645
2646         * page/PageConfiguration.cpp:
2647         * page/PageConfiguration.h:
2648         Add a storage namespace provider member.
2649
2650         * storage/StorageNamespaceProvider.cpp:
2651         (WebCore::StorageNamespaceProvider::StorageNamespaceProvider):
2652         (WebCore::StorageNamespaceProvider::~StorageNamespaceProvider):
2653         (WebCore::StorageNamespaceProvider::addPage):
2654         (WebCore::StorageNamespaceProvider::removePage):
2655         (WebCore::StorageNamespaceProvider::localStorageNamespace):
2656         (WebCore::StorageNamespaceProvider::transientLocalStorageNamespace):
2657         * storage/StorageNamespaceProvider.h:
2658         Stub out a storage namespace provider class.
2659
2660 2014-12-02  Beth Dakin  <bdakin@apple.com>
2661
2662         More build fixing.
2663
2664         * platform/spi/mac/QuickLookMacSPI.h:
2665
2666 2014-12-02  Beth Dakin  <bdakin@apple.com>
2667
2668         Another build fix.
2669
2670         * platform/spi/mac/NSMenuSPI.h:
2671
2672 2014-12-02  Beth Dakin  <bdakin@apple.com>
2673
2674         Speculative build fix.
2675
2676         * platform/spi/mac/QuickLookMacSPI.h:
2677
2678 2014-12-02  Beth Dakin  <bdakin@apple.com>
2679
2680         Speculative build fix.
2681
2682         * platform/spi/mac/QuickLookMacSPI.h:
2683
2684 2014-12-02  Eric Carlson  <eric.carlson@apple.com>
2685
2686         Unreviewed, fix typo introduced in r176673.
2687
2688         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2689         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration):
2690
2691 2014-12-02  Beth Dakin  <bdakin@apple.com>
2692
2693         Should use standardQuickLookMenuItem for apps that don't implement customizations
2694         https://bugs.webkit.org/show_bug.cgi?id=139193
2695         -and corresponding-
2696         rdar://problem/18944696
2697
2698         Reviewed by Anders Carlsson.
2699
2700         New SPI headers.
2701         * WebCore.xcodeproj/project.pbxproj:
2702         * platform/spi/mac/NSMenuSPI.h: Added.
2703         * platform/spi/mac/QuickLookMacSPI.h: Added.
2704
2705 2014-12-02  Gavin Barraclough  <barraclough@apple.com>
2706
2707         Generalize PageActivityAssertionToken
2708         https://bugs.webkit.org/show_bug.cgi?id=139106
2709
2710         Reviewed by Sam Weinig.
2711
2712         PageActivityAssertionToken is a RAII mechanism implementing a counter, used by PageThrottler
2713         to count user visible activity in progress on the page (currently page load and media playback).
2714         Use of an RAII type is prevents a number of possible errors, including double counting a single
2715         media element, or failing to decrement the count after a media element has been deallocated.
2716
2717         The current implementation has a number of drawbacks that have been addressed by this refactoring:
2718          - specific to single use in PageThrottler class - not reusable.
2719          - incomplete encapsulation - the counter and WeakPtrFactory that comprise the current implementation
2720            are not encapsulated (are in the client type, PageThrottler).
2721          - tokens are not shared - PageActivityAssertionToken instances are managed by std::unique, every
2722            increment requires an object allocation.
2723          - redundancy - the current implementation uses a WeakPtr to safely reference the PageThrottler, this
2724            is internally implemented using a reference counted type, resulting in two counters being
2725            incremented (one in the PageActivityAssertionToken, one in the PageThrottler).
2726
2727         In the reimplementation:
2728          - a callback is provided via a lambda function, which allows for easy reuse without a lot of
2729            boilerplate code.
2730          - the counter, callback and ownership of the otherwise weakly-owned token is encapsulated within the
2731            RefCounter type.
2732          - a single count within RefCounter::Count stores the counter value, and also manage the lifetime
2733            of this object.
2734          - standard RefPtrs are used to manage references to the RefCounter::Count.
2735
2736         * WebCore.xcodeproj/project.pbxproj:
2737             - removed PageActivityAssertionToken.cpp/.h
2738         * html/HTMLMediaElement.cpp:
2739             - removed PageActivityAssertionToken.h
2740         * html/HTMLMediaElement.h:
2741             - std::unique_ptr<PageActivityAssertionToken> -> RefPtr<RefCounter::Count>
2742         * loader/FrameLoader.cpp:
2743             - removed PageActivityAssertionToken.h
2744         * loader/FrameLoader.h:
2745             - std::unique_ptr<PageActivityAssertionToken> -> RefPtr<RefCounter::Count>
2746         * loader/SubresourceLoader.cpp:
2747             - removed PageActivityAssertionToken.h
2748         * loader/SubresourceLoader.h:
2749             - removed class PageActivityAssertionToken
2750         * page/Page.cpp:
2751             - removed PageActivityAssertionToken.h
2752         (WebCore::Page::Page):
2753             - removed Page* parameter to PageThrottler
2754         * page/Page.h:
2755             - removed class PageActivityAssertionToken
2756         * page/PageActivityAssertionToken.cpp: Removed.
2757         * page/PageActivityAssertionToken.h: Removed.
2758             - removed PageActivityAssertionToken.cpp/.h
2759         * page/PageThrottler.cpp:
2760         (WebCore::PageThrottler::PageThrottler):
2761             - removed m_page, m_weakPtrFactory, m_activityCount; added m_pageActivityCounter.
2762         (WebCore::PageThrottler::mediaActivityToken):
2763             - std::unique_ptr<PageActivityAssertionToken> -> PassRefPtr<RefCounter::Count>
2764         (WebCore::PageThrottler::pageLoadActivityToken):
2765             - std::unique_ptr<PageActivityAssertionToken> -> PassRefPtr<RefCounter::Count>
2766         (WebCore::PageThrottler::pageActivityCounterValueDidChange):
2767             - merged functionality of incrementActivityCount/decrementActivityCount
2768         (WebCore::PageThrottler::incrementActivityCount): Deleted.
2769             - see pageActivityCounterValueDidChange
2770         (WebCore::PageThrottler::decrementActivityCount): Deleted.
2771             - see pageActivityCounterValueDidChange
2772         * page/PageThrottler.h:
2773         (WebCore::PageThrottler::weakPtr): Deleted.
2774             - no longer required; this functionality is now encapsulated within RefCounter.
2775
2776 2014-12-02  Tim Horton  <timothy_horton@apple.com>
2777
2778         Always show the arrow for text selection services
2779         https://bugs.webkit.org/show_bug.cgi?id=139191
2780         <rdar://problem/18903995>
2781
2782         Reviewed by Anders Carlsson.
2783
2784         * platform/spi/mac/DataDetectorsSPI.h:
2785         * page/mac/ServicesOverlayController.mm:
2786         Move a few things to DataDetectorsSPI.h.
2787
2788         (WebCore::ServicesOverlayController::buildPhoneNumberHighlights):
2789         (WebCore::ServicesOverlayController::buildSelectionHighlight):
2790         Make use of the real DDHighlightStyle names.
2791         Add DDHighlightStyleButtonShowAlways for selection services.
2792
2793 2014-12-02  Anders Carlsson  <andersca@apple.com>
2794
2795         Fix iOS build.
2796
2797         * WebCore.exp.in:
2798
2799 2014-12-02  Chris Dumez  <cdumez@apple.com>
2800
2801         Crash when setting 'flex' CSS property to 'calc(2 * 3) calc(2 * 3)'
2802         https://bugs.webkit.org/show_bug.cgi?id=139162
2803
2804         Reviewed by Darin Adler.
2805
2806         Add support for calculated values in 'flex' CSS property.
2807         Previously, those did not work in release builds, and were hitting
2808         an assertion in debug builds.
2809
2810         Test: fast/css/flex-calculated-value.html
2811
2812         * css/CSSParser.cpp:
2813         (WebCore::CSSParser::validCalculationUnit):
2814         Do not call RefPtr::release() as we are not interested in the return
2815         value. Assign nullptr to the member instead.
2816
2817         (WebCore::CSSParser::parseValue):
2818         (WebCore::CSSParser::parseFillPositionComponent):
2819         (WebCore::CSSParser::parseCubicBezierTimingFunctionValue):
2820         (WebCore::CSSParser::parseFontWeight):
2821         (WebCore::CSSParser::parsedDouble):
2822         (WebCore::CSSParser::colorIntFromValue):
2823         (WebCore::CSSParser::parseColorParameters):
2824         (WebCore::CSSParser::parseHSLParameters):
2825         (WebCore::CSSParser::parseFlex):
2826         * css/CSSParser.h:
2827
2828 2014-12-02  Eric Carlson  <eric.carlson@apple.com>
2829
2830         Fix logging typo
2831         https://bugs.webkit.org/show_bug.cgi?id=139182
2832
2833         Reviewed by Alexey Proskuryakov.
2834
2835         No new tests, only logging code is changed.
2836
2837         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2838         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformDuration): Don't use %f to log a string.
2839
2840 2014-12-02  Anders Carlsson  <andersca@apple.com>
2841
2842         Get rid of the WinINet based network implementation
2843         https://bugs.webkit.org/show_bug.cgi?id=139187
2844
2845         Reviewed by Andreas Kling.
2846
2847         This code was only used by the Windows CE port. Now it's unused.
2848
2849         * platform/network/ResourceHandle.h:
2850         * platform/network/ResourceHandleInternal.h:
2851         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2852         * platform/network/win/AuthenticationChallenge.h: Removed.
2853         * platform/network/win/CookieJarWin.cpp: Removed.
2854         * platform/network/win/CredentialStorageWin.cpp: Removed.
2855         * platform/network/win/ProxyServerWin.cpp: Removed.
2856         * platform/network/win/ResourceError.h: Removed.
2857         * platform/network/win/ResourceHandleWin.cpp: Removed.
2858         * platform/network/win/ResourceRequest.h: Removed.
2859         * platform/network/win/ResourceResponse.h: Removed.
2860         * platform/network/win/SocketStreamError.h: Removed.
2861         * platform/network/win/SocketStreamHandle.h: Removed.
2862         * platform/network/win/SocketStreamHandleWin.cpp: Removed.
2863
2864 2014-12-02  Chris Dumez  <cdumez@apple.com>
2865
2866         Crash when setting 'column-span' CSS property to 'calc(2 * 3)'
2867         https://bugs.webkit.org/show_bug.cgi?id=139170
2868
2869         Reviewed by Darin Adler.
2870
2871         Add support for calculated values for 'column-span' and 'column-width'
2872         CSS properties. Previously, these were not working in release builds
2873         and hitting assertions in debug builds.
2874
2875         Tests: fast/css/column-width-calculated-value.html
2876                fast/css/webkit-column-span-calculated-value.html
2877
2878         * css/CSSParser.cpp:
2879         (WebCore::CSSParser::parseValue):
2880
2881 2014-12-02  Anders Carlsson  <andersca@apple.com>
2882
2883         Remove visited link handling from PageGroup
2884         https://bugs.webkit.org/show_bug.cgi?id=139185
2885
2886         Reviewed by Sam Weinig.
2887
2888         * CMakeLists.txt:
2889         * WebCore.exp.in:
2890         * WebCore.vcxproj/WebCore.vcxproj:
2891         * WebCore.vcxproj/WebCore.vcxproj.filters:
2892         * WebCore.xcodeproj/project.pbxproj:
2893         * loader/HistoryController.cpp:
2894         * page/Chrome.cpp:
2895         (WebCore::ChromeClient::populateVisitedLinks): Deleted.
2896         * page/ChromeClient.h:
2897         * page/DefaultVisitedLinkStore.cpp: Removed.
2898         * page/DefaultVisitedLinkStore.h: Removed.
2899         * page/Page.cpp:
2900         (WebCore::Page::Page):
2901         (WebCore::Page::~Page):
2902         (WebCore::Page::visitedLinkStore):
2903         (WebCore::Page::setVisitedLinkStore):
2904         (WebCore::Page::removeAllVisitedLinks): Deleted.
2905         * page/Page.h:
2906         * page/PageGroup.cpp:
2907         (WebCore::PageGroup::PageGroup):
2908         (WebCore::PageGroup::visitedLinkStore): Deleted.
2909         (WebCore::PageGroup::isLinkVisited): Deleted.
2910         (WebCore::PageGroup::addVisitedLinkHash): Deleted.
2911         (WebCore::PageGroup::addVisitedLink): Deleted.
2912         (WebCore::PageGroup::removeVisitedLink): Deleted.
2913         (WebCore::PageGroup::removeVisitedLinks): Deleted.
2914         (WebCore::PageGroup::removeAllVisitedLinks): Deleted.
2915         (WebCore::PageGroup::setShouldTrackVisitedLinks): Deleted.
2916         * page/PageGroup.h:
2917
2918 2014-12-02  Tibor Meszaros  <tmeszaros.u-szeged@partner.samsung.com>
2919
2920         Use references instead of pointers in EditingStyle
2921         https://bugs.webkit.org/show_bug.cgi?id=137918
2922
2923         Reviewed by Darin Adler.
2924
2925         * editing/EditingStyle.cpp:
2926         (WebCore::extractPropertyValue):
2927         (WebCore::identifierForStyleProperty):
2928         (WebCore::textColorFromStyle):
2929         (WebCore::backgroundColorFromStyle):
2930         (WebCore::textAlignResolvingStartAndEnd):
2931         (WebCore::EditingStyle::triStateOfStyle):
2932         (WebCore::EditingStyle::styleIsPresentInComputedStyleOfNode):
2933         (WebCore::EditingStyle::prepareToApplyAt):
2934         (WebCore::EditingStyle::removeStyleFromRulesAndContext):
2935         (WebCore::StyleChange::StyleChange):
2936         (WebCore::setTextDecorationProperty):
2937         (WebCore::StyleChange::extractTextStyles):
2938         (WebCore::diffTextDecorations):
2939         (WebCore::fontWeightIsBold):
2940         (WebCore::extractPropertiesNotIn):
2941         (WebCore::getPropertiesNotIn):
2942         * editing/EditingStyle.h:
2943
2944 2014-12-02  Bartlomiej Gajda  <b.gajda@samsung.com>
2945
2946         [GStreamer] Media Source sending seek event fails.
2947         https://bugs.webkit.org/show_bug.cgi?id=139181
2948
2949         Reviewed by Philippe Normand.
2950
2951         There were callbacks connected to app_src on 'seek', but if stream type is not seekable, they would never launch,
2952         and seeking (as in MediaPlayerPrivateGStreamer::doSeek) fails.
2953
2954         No new tests needed.
2955
2956         * platform/graphics/gstreamer/WebKitMediaSourceGStreamer.cpp:
2957         (webkit_media_src_init):
2958
2959 2014-12-02  Chris Dumez  <cdumez@apple.com>
2960
2961         Move 'font-family' CSS property to the new StyleBuilder
2962         https://bugs.webkit.org/show_bug.cgi?id=139172
2963
2964         Reviewed by Antti Koivisto.
2965
2966         Move 'font-family' CSS property to the new StyleBuilder by using
2967         custom code.
2968
2969         No new tests, no behavior change.
2970
2971         * css/CSSPropertyNames.in:
2972         * css/DeprecatedStyleBuilder.cpp:
2973         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2974         (WebCore::ApplyPropertyFontFamily::applyInheritValue): Deleted.
2975         (WebCore::ApplyPropertyFontFamily::applyInitialValue): Deleted.
2976         (WebCore::ApplyPropertyFontFamily::applyValue): Deleted.
2977         (WebCore::ApplyPropertyFontFamily::createHandler): Deleted.
2978         * css/StyleBuilderCustom.h:
2979         (WebCore::StyleBuilderCustom::applyInitialFontFamily):
2980         (WebCore::StyleBuilderCustom::applyInheritFontFamily):
2981         (WebCore::StyleBuilderCustom::applyValueFontFamily):
2982
2983 2014-12-02  Eva Balazsfalvi  <evab.u-szeged@partner.samsung.com>
2984
2985         Fix class was previously declared as a struct warnings
2986         https://bugs.webkit.org/show_bug.cgi?id=139131
2987
2988         Reviewed by Csaba Osztrogonác.
2989
2990         No new tests needed.
2991
2992         * platform/graphics/texmap/TextureMapperGL.h:
2993
2994 2014-12-02  Sylvain Galineau  <galineau@adobe.com>
2995
2996         Missing support for innerHTML on SVGElement
2997         https://bugs.webkit.org/show_bug.cgi?id=136903
2998
2999         Reviewed by Dean Jackson.
3000
3001         Two parts to this patch:
3002         1. Move innerHTML/outerHTML to Element so SVG elements can inherit them, per https://dvcs.w3.org/hg/innerhtml/raw-file/tip/index.html#innerhtml
3003         2. Make sure fragment insertion is processed relative to the proper node, per http://www.whatwg.org/specs/web-apps/current-work/#adjusted-current-node
3004
3005         The latter part was ported over from Blink. 
3006
3007         Test: svg/in-html/svg-inner-html.html
3008
3009         * bindings/objc/PublicDOMInterfaces.h: Move innerHTML/outerHTML to Element.
3010         * dom/Element.cpp:
3011         (WebCore::Element::mergeWithNextTextNode): Helper used by Element::innerHTML/outerHTML as well as HTMLElement::innerText/outerText; moved to Element as protected static.
3012         (WebCore::Element::innerHTML): Moved from HTMLElement.
3013         (WebCore::Element::outerHTML): Moved from HTMLElement.
3014         (WebCore::Element::setOuterHTML): Moved from HTMLElement.
3015         (WebCore::Element::setInnerHTML): Moved from HTMLElement.
3016         * dom/Element.h: 
3017         * dom/Element.idl:
3018         * html/HTMLElement.cpp:
3019         (WebCore::HTMLElement::innerHTML): Deleted.
3020         (WebCore::HTMLElement::outerHTML): Deleted.
3021         (WebCore::HTMLElement::setInnerHTML): Deleted.
3022         (WebCore::mergeWithNextTextNode): Deleted.
3023         (WebCore::HTMLElement::setOuterHTML): Deleted.
3024         * html/HTMLElement.h:
3025         * html/HTMLElement.idl:
3026         * html/parser/HTMLTreeBuilder.cpp:
3027         (WebCore::HTMLTreeBuilder::FragmentParsingContext::FragmentParsingContext): no more m_contextElement.
3028         (WebCore::HTMLTreeBuilder::constructTree): read namespace from adjusted current node.
3029         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately): use contextElementStackItem for insertion.
3030         (WebCore::HTMLTreeBuilder::adjustedCurrentStackItem): compute adjusted current node.
3031         (WebCore::HTMLTreeBuilder::shouldProcessTokenInForeignContent): use adjusted current node for context.
3032         (WebCore::HTMLTreeBuilder::processTokenInForeignContent): use adjusted current node to read namespace.
3033         * html/parser/HTMLTreeBuilder.h:
3034         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElement): Deleted. Read from contextElementStackItem.
3035         (WebCore::HTMLTreeBuilder::FragmentParsingContext::contextElementStackItem): Added.
3036
3037 2014-11-20  Jeffrey Pfau  <jpfau@apple.com>
3038
3039         Add cancelable version of willSendRequest
3040         https://bugs.webkit.org/show_bug.cgi?id=138987
3041
3042         Reviewed by Anders Carlsson.
3043
3044         Covered by existing tests.
3045
3046         * loader/ResourceLoader.cpp:
3047         (WebCore::ResourceLoader::willSendRequest):
3048         * loader/ResourceLoader.h:
3049
3050 2014-12-01  Benjamin Poulain  <benjamin@webkit.org>
3051
3052         Add the dynamic specificity of the selector list argument when matching :nth-child() and :nth-last-child()
3053         https://bugs.webkit.org/show_bug.cgi?id=139001
3054
3055         Reviewed by Andreas Kling.
3056
3057         When matching :nth-child(An+B of selector list) or :nth-last-child(An+B of selector list),
3058         we were previously ignoring the arguments.
3059
3060         That behavior seems to be confusing for users. We made the proposal to include the selector list
3061         like when using :matches():
3062             http://lists.w3.org/Archives/Public/www-style/2014Oct/0533.html
3063         David Baron also agrees with this behavior:
3064             http://lists.w3.org/Archives/Public/www-style/2014Oct/0534.html
3065
3066         This patch adds the specificity computation.
3067
3068         Tests: fast/css/nth-child-specificity-1.html
3069                fast/css/nth-child-specificity-2.html
3070                fast/css/nth-last-child-specificity-1.html
3071                fast/css/nth-last-child-specificity-2.html
3072
3073         * css/CSSSelector.cpp:
3074         (WebCore::simpleSelectorFunctionalPseudoClassStaticSpecificity):
3075         * css/SelectorChecker.cpp:
3076         (WebCore::SelectorChecker::checkOne):
3077         (WebCore::SelectorChecker::matchSelectorList):
3078         * css/SelectorChecker.h:
3079         * cssjit/SelectorCompiler.cpp:
3080         (WebCore::SelectorCompiler::addPseudoClassType):
3081
3082 2014-12-01  Chris Dumez  <cdumez@apple.com>
3083
3084         Move 'text-shadow' / 'box-shadow' / '-webkit-box-shadow' to the new StyleBuilder
3085         https://bugs.webkit.org/show_bug.cgi?id=138938
3086
3087         Reviewed by Sam Weinig.
3088
3089         Move 'text-shadow' / 'box-shadow' / '-webkit-box-shadow' CSS properties
3090         from StyleResolver to the new StyleBuilder by using custom code.
3091
3092         No new tests, no behavior change.
3093
3094         * css/CSSPropertyNames.in:
3095         * css/StyleBuilderCustom.h:
3096         (WebCore::StyleBuilderCustom::applyTextOrBoxShadowValue):
3097         (WebCore::StyleBuilderCustom::applyInitialTextShadow):
3098         (WebCore::StyleBuilderCustom::applyInheritTextShadow):
3099         (WebCore::StyleBuilderCustom::applyValueTextShadow):
3100         (WebCore::StyleBuilderCustom::applyInitialBoxShadow):
3101         (WebCore::StyleBuilderCustom::applyInheritBoxShadow):
3102         (WebCore::StyleBuilderCustom::applyValueBoxShadow):
3103         (WebCore::StyleBuilderCustom::applyInitialWebkitBoxShadow):
3104         (WebCore::StyleBuilderCustom::applyInheritWebkitBoxShadow):
3105         (WebCore::StyleBuilderCustom::applyValueWebkitBoxShadow):
3106         * css/StyleResolver.cpp:
3107         (WebCore::StyleResolver::applyProperty):
3108
3109 2014-12-01  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3110
3111         [EFL] Add a ENABLE_CSS_SCROLL_SNAP macro to CMake build system
3112         https://bugs.webkit.org/show_bug.cgi?id=139085
3113
3114         Reviewed by Andreas Kling.
3115
3116         * PlatformEfl.cmake: 
3117             Include page/scrolling/AxisScrollSnapOffsets.cpp to EFL build files to fix build break.
3118
3119 2014-12-01  Zalan Bujtas  <zalan@apple.com>
3120
3121         Twitter avatar moves when hovering/unhovering the "follow" button.
3122         https://bugs.webkit.org/show_bug.cgi?id=139147
3123         rdar://problem/19096508
3124
3125         Reviewed by Simon Fraser.
3126
3127         This patch ensures that the out of flow positioned render boxes (RenderReplaced) do not
3128         get repositioned when their inline box wrappers move.
3129         Ideally, out of flow positioned renderers do not have inline wrappers by the time we start
3130         placing inline boxes, but in certain case (optimized code path for descendantsHaveSameLineHeightAndBaseline()),
3131         they are still part of the inline box tree.
3132         This patch prevents those renderer boxes from getting positioned as part of the inline box placement.
3133         They will get removed later at RenderBlockFlow::computeBlockDirectionPositionsForLine().
3134
3135         Test: fast/inline/out-of-flow-positioned-render-replaced-box-moves.html
3136
3137         * rendering/InlineBox.cpp:
3138         (WebCore::InlineBox::adjustPosition):
3139
3140 2014-12-01  Tim Horton  <timothy_horton@apple.com>
3141
3142         Null deref under TextIndicator::createWithSelectionInFrame using find-in-page on bugzilla
3143         https://bugs.webkit.org/show_bug.cgi?id=139164
3144         <rdar://problem/19107247>
3145
3146         Reviewed by Beth Dakin.
3147
3148         * page/TextIndicator.cpp:
3149         (WebCore::TextIndicator::createWithSelectionInFrame):
3150         Null-check the ImageBuffer in addition to the Image.
3151
3152 2014-12-01  Anders Carlsson  <andersca@apple.com>
3153
3154         Remove IWebCookieManager on Windows
3155         https://bugs.webkit.org/show_bug.cgi?id=139144
3156
3157         Reviewed by Sam Weinig.
3158
3159         Remove code that handles overriding the cookie storage.
3160
3161         * platform/network/NetworkStorageSession.h:
3162         * platform/network/cf/NetworkStorageSessionCFNet.cpp:
3163         (WebCore::cookieStorageOverride): Deleted.
3164         (WebCore::overrideCookieStorage): Deleted.
3165         (WebCore::overridenCookieStorage): Deleted.
3166         * platform/network/cf/ResourceHandleCFNet.cpp:
3167         (WebCore::ResourceHandle::createCFURLConnection):
3168
3169 2014-12-01  Dean Jackson  <dino@apple.com>
3170
3171         [iOS Media] Slider knob should not have a border
3172         https://bugs.webkit.org/show_bug.cgi?id=139160
3173         <rdar://problem/19075185>
3174
3175         Reviewed by Jer Noble.
3176
3177         The change in r175715 required adding !important to a bunch
3178         of rules for pseudo elements. The border width of slider knobs
3179         for media controls should be zero, so add an !important there.
3180
3181         * Modules/mediacontrols/mediaControlsiOS.css:
3182         (audio::-webkit-media-controls-timeline::-webkit-slider-thumb): Change
3183         border to border-width and force it to zero.
3184
3185 2014-12-01  Chris Dumez  <cdumez@apple.com>
3186
3187         Take into consideration canvas drawing for throttling DOM timers
3188         https://bugs.webkit.org/show_bug.cgi?id=139140
3189         <rdar://problem/19102218>
3190
3191         Reviewed by Andreas Kling.
3192
3193         Take into consideration canvas drawing for throttling DOM timers so
3194         that:
3195         - Timers drawing on a visible canvas can no longer get throttled.
3196           This fixes the following sites:
3197           - http://hint.fm/wind/
3198           - http://radar.weather.gov/Conus/full_loop.php
3199         - Timers that are drawing on a canvas that is not user observable
3200           now get throttled, thus using less CPU. As an example, on
3201           http://hint.fm/wind/, CPU usage is at 110% when the canvas is
3202           inside the viewport on my machine. CPU usage would remain at
3203           110% when scrolling the canvas outside the viewport before this
3204           patch. After this patch, the CPU usage goes down to 5% when
3205           the canvas is outside the viewport.
3206
3207         Tests: fast/canvas/canvas-inside-viewport-timer-throttling.html
3208                fast/canvas/canvas-outside-viewport-timer-throttling.html
3209
3210         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
3211         (WebCore::JSCSSStyleDeclaration::putDelegate):
3212         * html/HTMLCanvasElement.cpp:
3213         (WebCore::HTMLCanvasElement::notifyObserversCanvasChanged):
3214         * page/DOMTimer.cpp:
3215         (WebCore::DOMTimerFireState::setScriptMadeNonUserObservableChangesToElement):
3216         (WebCore::DOMTimer::scriptDidCauseElementRepaint):
3217         (WebCore::DOMTimerFireState::setScriptMadeNonUserObservableChangesToElementStyle): Deleted.
3218         (WebCore::DOMTimer::scriptDidUpdateStyleOfElement): Deleted.
3219         * page/DOMTimer.h:
3220
3221 2014-12-01  Myles C. Maxfield  <mmaxfield@apple.com>
3222
3223         Crash in Font::dashesForIntersectionsWithRect() due to underlining SVG fonts
3224         https://bugs.webkit.org/show_bug.cgi?id=139158
3225
3226         Reviewed by Simon Fraser.
3227
3228         RenderingContexts are only created if the primary SimpleFontData is an SVG font,
3229         but dashesForIntersectionWithRect() uses the first character's SimpleFontData.
3230         One might be an SVG font but the other might not be.
3231
3232         Note that this brittle design will be fixed with the SVG -> OTF translator.
3233
3234         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/decoration-skip-crash-fallback-svg.html
3235
3236         * platform/graphics/mac/FontMac.mm:
3237         (WebCore::Font::dashesForIntersectionsWithRect):
3238
3239 2014-12-01  Bartlomiej Gajda  <b.gajda@samsung.com>
3240
3241         [MSE] Fix not always calling mediaPlayer seek.
3242         https://bugs.webkit.org/show_bug.cgi?id=139139
3243
3244         Reviewed by Jer Noble.
3245
3246         Original comment states that media source shall always be notified of seek if it's not closed.
3247
3248         No new tests needed.
3249
3250         * html/HTMLMediaElement.cpp:
3251         (WebCore::HTMLMediaElement::seekTimerFired):
3252
3253 2014-12-01  Tim Horton  <timothy_horton@apple.com>
3254
3255         Implement yellow highlight for WebKit1 data detectors
3256         https://bugs.webkit.org/show_bug.cgi?id=138956
3257         <rdar://problem/18992185>
3258
3259         Reviewed by Beth Dakin.
3260
3261         * page/TextIndicator.cpp:
3262         (WebCore::TextIndicator::createWithSelectionInFrame):
3263         (WebCore::TextIndicator::TextIndicator):
3264         * page/TextIndicator.h:
3265         (WebCore::TextIndicator::selectionRectInScreenCoordinates):
3266         (WebCore::TextIndicator::textBoundingRectInScreenCoordinates):
3267         (WebCore::TextIndicator::selectionRectInWindowCoordinates): Deleted.
3268         (WebCore::TextIndicator::textBoundingRectInWindowCoordinates): Deleted.
3269         Store TextIndicator rects in screen coordinates, since that's what we
3270         want anyway, and this makes it easier to share this code between the WebKits.
3271
3272         * page/mac/TextIndicatorWindow.mm:
3273         (-[WebTextIndicatorView initWithFrame:textIndicator:margin:]):
3274         (WebCore::TextIndicatorWindow::setTextIndicator):
3275         Avoid some rect conversion because the TextIndicator rects are already in screen coordinates.
3276
3277 2014-12-01  Anders Carlsson  <andersca@apple.com>
3278
3279         Remove old site specific quirks code that was added in 2009
3280         https://bugs.webkit.org/show_bug.cgi?id=139141
3281
3282         Reviewed by Antti Koivisto.
3283
3284         * platform/network/NetworkingContext.h:
3285         * platform/network/ResourceHandleInternal.h:
3286         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3287         * platform/network/mac/ResourceHandleMac.mm:
3288         (WebCore::ResourceHandle::start):
3289
3290 2014-12-01  Joseph Pecoraro  <pecoraro@apple.com>
3291
3292         Web Inspector: DOMExceptions do not show the error message string in Pause Reason section
3293         https://bugs.webkit.org/show_bug.cgi?id=138988
3294
3295         Reviewed by Timothy Hatcher.
3296
3297         * inspector/WebInjectedScriptHost.cpp:
3298         (WebCore::WebInjectedScriptHost::type):
3299         Give all DOM Exception types the "error" RemoteObject subtype.
3300
3301 2014-12-01  Bartlomiej Gajda  <b.gajda@samsung.com>
3302
3303         [MSE] Unset timestamps of trackbuffers during Reset Parser State algorithm.
3304         https://bugs.webkit.org/show_bug.cgi?id=139075.
3305
3306         Reviewed by Jer Noble.
3307
3308         Specification requires from us to unset timestamps for trackBuffers
3309         during abort() method.
3310
3311         Test: media/media-source/media-source-append-nonsync-sample-after-abort.html
3312
3313         * Modules/mediasource/SourceBuffer.cpp:
3314         (WebCore::SourceBuffer::resetParserState):
3315         (WebCore::SourceBuffer::abort):
3316         * Modules/mediasource/SourceBuffer.h:
3317
3318 2014-12-01  Chris Dumez  <cdumez@apple.com>
3319
3320         Transform StyleBuilderCustom into a class and mark it as a friend of RenderStyle
3321         https://bugs.webkit.org/show_bug.cgi?id=138999
3322
3323         Reviewed by Sam Weinig.
3324
3325         Transform StyleBuilderCustom into a class and mark it as a friend of
3326         RenderStyle. This is needed because some of the StyleBuilderCustom
3327         functions need to access RenderStyle's private API.
3328
3329         No new tests, no behavior change.
3330
3331         * css/StyleBuilderCustom.h:
3332           Move functions from StyleBuilderFunctions namespace to
3333           StyleBuilderCustom class.
3334
3335         * css/makeprop.pl:
3336           Use StyleBuilderCustom scope instead of StyleBuilderFunctions for
3337           custom implementation.
3338
3339         * rendering/style/RenderStyle.h:
3340           Mark StyleBuilderCustom class as a friend, similarly to what was
3341           already done for DeprecatedStyleBuilder and StyleResolver.
3342
3343 2014-11-17  Oliver Hunt  <oliver@apple.com>
3344
3345         Make sure range based iteration of Vector<> still receives bounds checking
3346         https://bugs.webkit.org/show_bug.cgi?id=138821
3347
3348         Reviewed by Mark Lam.
3349
3350         There are a few uses of begin()/end() that explicitly require pointers,
3351         so we use getPtr() to extract the underlying pointer generically.
3352
3353         * bindings/js/SerializedScriptValue.cpp:
3354         (WebCore::CloneDeserializer::deserializeString):
3355         * editing/TextIterator.cpp:
3356         (WebCore::SearchBuffer::isBadMatch):
3357         * page/mac/ServicesOverlayController.mm:
3358         (WebCore::ServicesOverlayController::buildSelectionHighlight):
3359         * platform/graphics/SegmentedFontData.cpp:
3360         (WebCore::SegmentedFontData::fontDataForCharacter):
3361         (WebCore::SegmentedFontData::containsCharacter):
3362         (WebCore::SegmentedFontData::isLoading):
3363         * platform/graphics/WOFFFileFormat.cpp:
3364         (WebCore::convertWOFFToSfnt):
3365         * rendering/RenderBox.cpp:
3366         (WebCore::RenderBox::paintFillLayers):
3367         * rendering/style/GridResolvedPosition.cpp:
3368         (WebCore::firstNamedGridLineBeforePosition):
3369         (WebCore::GridResolvedPosition::resolveRowEndColumnEndNamedGridLinePositionAgainstOppositePosition):
3370         * svg/SVGFontElement.cpp:
3371         (WebCore::kerningForPairOfStringsAndGlyphs):
3372         * svg/SVGPathByteStream.h:
3373         (WebCore::SVGPathByteStream::append):
3374         * xml/XPathNodeSet.h:
3375         (WebCore::XPath::NodeSet::begin):
3376         (WebCore::XPath::NodeSet::end):
3377
3378 2014-11-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3379
3380         Fix a build warning when CSS_SCROLL_SNAP is enabled
3381         https://bugs.webkit.org/show_bug.cgi?id=139084
3382
3383         Reviewed by Andrei Bucur.
3384
3385         Fix a build warning. Copy constructor of StyleScrollSnapPoints should initialize its base class.
3386
3387         * rendering/style/StyleScrollSnapPoints.cpp:
3388         (WebCore::StyleScrollSnapPoints::StyleScrollSnapPoints): Call RefCounted().
3389
3390 2014-11-29  Sam Weinig  <sam@webkit.org>
3391
3392         Move the '-webkit-locale', '-webkit-text-orientation', '-webkit-writing-mode', '-webkit-justify-self' and '-webkit-perspective' CSS properties to the new StyleBuilder
3393         https://bugs.webkit.org/show_bug.cgi?id=139104
3394
3395         Reviewed by Anders Carlsson.
3396
3397         * css/CSSPropertyNames.in:
3398         * css/StyleBuilderCustom.h:
3399         (WebCore::StyleBuilderFunctions::applyValueWebkitLocale):
3400         (WebCore::StyleBuilderFunctions::applyValueWebkitWritingMode):
3401         (WebCore::StyleBuilderFunctions::applyValueWebkitTextOrientation):
3402         (WebCore::StyleBuilderFunctions::applyValueWebkitJustifySelf):
3403         (WebCore::StyleBuilderFunctions::applyValueWebkitPerspective):
3404         * css/StyleResolver.cpp:
3405         (WebCore::StyleResolver::applyProperty):
3406
3407 2014-11-29  Anders Carlsson  <andersca@apple.com>
3408
3409         Add an EmptyVisitedLinkStore implementation
3410         https://bugs.webkit.org/show_bug.cgi?id=139102
3411
3412         Reviewed by Sam Weinig.
3413
3414         * loader/EmptyClients.cpp:
3415         (WebCore::fillWithEmptyClients):
3416         * loader/EmptyClients.h:
3417
3418 2014-11-28  Sam Weinig  <sam@webkit.org>
3419
3420         Move the '-webkit-initial-letter', '-webkit-line-box-contain' and '-webkit-text-stroke-width' CSS properties to the new StyleBuilder
3421         https://bugs.webkit.org/show_bug.cgi?id=139053
3422
3423         Reviewed by Andreas Kling.
3424
3425         * css/CSSPropertyNames.in:
3426         * css/StyleBuilderConverter.h:
3427         (WebCore::StyleBuilderConverter::convertInitialLetter):
3428         (WebCore::StyleBuilderConverter::convertTextStrokeWidth):
3429         (WebCore::StyleBuilderConverter::convertLineBoxContain):
3430         * css/StyleResolver.cpp:
3431         (WebCore::StyleResolver::applyProperty):
3432
3433 2014-11-26  Philippe Normand  <pnormand@igalia.com>
3434
3435         [GStreamer] HTTP source element lacks SCHEDULING query support
3436         https://bugs.webkit.org/show_bug.cgi?id=139064
3437
3438         Reviewed by Carlos Garcia Campos.
3439
3440         No new tests, covered by http/tests/media/hls.
3441
3442         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3443         (webKitWebSrcQueryWithParent): Make the element handle SCHEDULING
3444         queries with the BANDWIDTH_LIMITED flag. This helps uridecodebin
3445         to configure itself for adaptive streaming playback scenarios.
3446
3447 2014-11-27  Ryuan Choi  <ryuan.choi@navercorp.com>
3448
3449         [EFL] Remove E_Dbus dependency
3450         https://bugs.webkit.org/show_bug.cgi?id=136355
3451
3452         Reviewed by Gyuyoung Kim.
3453
3454         E_Dbus is the simple wrapper of Dbus but it has not been maintained since EFL 1.8.
3455         Instead, EFL introduced Eldbus, which is almost similar with E_Dbus but provides more dbus like interface.
3456         This patch replaces E_Dbus implementation to Eldbus.
3457
3458         * PlatformEfl.cmake:
3459         * platform/efl/BatteryProviderEfl.cpp:
3460         (WebCore::BatteryProviderEfl::BatteryProviderEfl):
3461         (WebCore::BatteryProviderEfl::~BatteryProviderEfl):