918209065e97127b95e6a7b48fac64c806dc5369
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-07-17  Jacky Jiang  <zhajiang@blackberry.com>
2
3         Dereference null pointer crash in Length::decrementCalculatedRef()
4         https://bugs.webkit.org/show_bug.cgi?id=118686
5
6         Reviewed by Simon Fraser.
7
8         Length(Calculated) won't insert any CalculationValue to CalculationValueHandleMap;
9         therefore, we dereference null CalculationValue pointer when the temporary
10         Length object goes out of the scope.
11         Length(Calculated) is not allowed as it doesn't make sense that we construct
12         a Calculated Length object with uninitialized calc expression.
13         The code just wants to blend with zero. To fix the bug, we can just blend
14         with Length(0, Fixed) here as we currently can blend different type units
15         and zero has the same behavior regardless of unit.
16
17         Test: transitions/transition-transform-translate-calculated-length-crash.html
18
19         * platform/graphics/transforms/TranslateTransformOperation.cpp:
20         (WebCore::TranslateTransformOperation::blend):
21
22 2013-07-17  Tim Horton  <timothy_horton@apple.com>
23
24         Update blocked/missing plug-in UI
25         https://bugs.webkit.org/show_bug.cgi?id=118347
26         <rdar://problem/14209318>
27
28         Reviewed by Sam Weinig.
29
30         * WebCore.exp.in:
31         Export RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription.
32
33         * rendering/RenderEmbeddedObject.cpp:
34         (WebCore::replacementTextRoundedRectPressedColor):
35         (WebCore::replacementTextRoundedRectColor):
36         (WebCore::replacementTextColor):
37         Change colors to new design and add some more constants.
38
39         (WebCore::shouldUnavailablePluginMessageBeButton): Added.
40
41         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription): Added.
42         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
43         Call through to the -WithDescription variant.
44
45         (WebCore::RenderEmbeddedObject::paintReplaced):
46         Fill the background, and otherwise match the new design.
47
48         (WebCore::addReplacementArrowPath):
49         Add an arrow to the given path, inside the given rect.
50
51         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
52         Add a 1px padding to the bottom of the text.
53         Add a circle and an arrow into the indicator as per the new design.
54
55         (WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
56         Hit-test the indicator arrow as well; otherwise, the fact that the arrow
57         is a hole in the path means it won't be hit.
58
59         * rendering/RenderEmbeddedObject.h:
60
61 2013-07-17  Commit Queue  <commit-queue@webkit.org>
62
63         Unreviewed, rolling out r152701, r152703, r152739, r152754,
64         and r152756.
65         http://trac.webkit.org/changeset/152701
66         http://trac.webkit.org/changeset/152703
67         http://trac.webkit.org/changeset/152739
68         http://trac.webkit.org/changeset/152754
69         http://trac.webkit.org/changeset/152756
70         https://bugs.webkit.org/show_bug.cgi?id=118821
71
72         this was a buggy fix and we're going to try something
73         different (Requested by thorton on #webkit).
74
75         * CMakeLists.txt:
76         * DerivedSources.make:
77         * DerivedSources.pri:
78         * GNUmakefile.am:
79         * WebCore.exp.in:
80         * WebCore.vcxproj/WebCore.vcxproj:
81         * WebCore.vcxproj/WebCore.vcxproj.filters:
82         * WebCore.xcodeproj/project.pbxproj:
83         * css/CSSDefaultStyleSheets.cpp:
84         (WebCore::CSSDefaultStyleSheets::ensureDefaultStyleSheetsForElement):
85         * css/unavailablePlugIns.css: Removed.
86         * dom/EventListener.h:
87         * html/HTMLAppletElement.cpp:
88         (WebCore::HTMLAppletElement::updateWidget):
89         * html/HTMLPlugInElement.cpp:
90         (WebCore::HTMLPlugInElement::defaultEventHandler):
91         * html/HTMLPlugInImageElement.cpp:
92         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
93         * loader/SubframeLoader.cpp:
94         (WebCore::SubframeLoader::createJavaAppletWidget):
95         * page/ChromeClient.h:
96         (WebCore::ChromeClient::shouldUnavailablePluginMessageBeButton):
97         * rendering/RenderEmbeddedObject.cpp:
98         (WebCore::replacementTextRoundedRectPressedColor):
99         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
100         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
101         (WebCore::RenderEmbeddedObject::setUnavailablePluginIndicatorIsPressed):
102         (WebCore::RenderEmbeddedObject::paint):
103         (WebCore::RenderEmbeddedObject::paintReplaced):
104         (WebCore::RenderEmbeddedObject::getReplacementTextGeometry):
105         (WebCore::RenderEmbeddedObject::replacementTextRect):
106         (WebCore::RenderEmbeddedObject::isReplacementObscured):
107         (WebCore::RenderEmbeddedObject::layout):
108         (WebCore::RenderEmbeddedObject::isInUnavailablePluginIndicator):
109         (WebCore::shouldUnavailablePluginMessageBeButton):
110         (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
111         (WebCore::RenderEmbeddedObject::getCursor):
112         (WebCore::RenderEmbeddedObject::canHaveChildren):
113         * rendering/RenderEmbeddedObject.h:
114         * rendering/RenderWidget.h:
115
116 2013-07-17  Simon Fraser  <simon.fraser@apple.com>
117
118         Optimize RenderLayerCompositor's OverlapMap
119         https://bugs.webkit.org/show_bug.cgi?id=118764
120
121         Reviewed by Tim Horton.
122
123         Overlap stack items can have RectLists with hundreds of rectangles.
124         This makes the linear search in OverlapMap::overlapsLayers() very slow.
125         
126         Optimize by storing the bounding rect of the list of rects, and doing an early
127         check on that. This reduces time spent in RenderLayer::scrollTo() by 13% in some
128         content with lots of layers inside an overflow:scroll.
129
130         * rendering/RenderLayerCompositor.cpp:
131         (WebCore::RenderLayerCompositor::OverlapMap::overlapsLayers):
132         (WebCore::RenderLayerCompositor::OverlapMap::popCompositingContainer):
133         (WebCore::RenderLayerCompositor::OverlapMap::RectList::append):
134         (WebCore::RenderLayerCompositor::OverlapMap::RectList::intersects):
135
136 2013-07-17  Bem Jones-Bey  <bjonesbe@adobe.com>
137
138         [CSS Shapes] Port refactoring of shape-outside code from Blink
139         https://bugs.webkit.org/show_bug.cgi?id=118757
140
141         Reviewed by Dean Jackson.
142
143         Refactor the left and right offset methods to reduce the number of
144         arguments by splitting the methods into smaller methods. This
145         refactoring was requested as part of porting support for stacked
146         floats with shape-outside to Blink.
147
148         Also add a variable when calling computeSegmentsForLine to make it
149         more readable and easier to follow the coordinate system change.
150
151         No new tests, no behavior change.
152
153         * rendering/RenderBlock.cpp:
154         (WebCore::RenderBlock::computeLogicalLocationForFloat): Update to use
155             the refactored IgnoringShapeOutside methods.
156         (WebCore::RenderBlock::logicalLeftFloatOffsetForLine): New method to
157             compute the offset contributed by left floats.
158         (WebCore::RenderBlock::adjustLogicalLeftOffsetForLine): New method to
159             compute misc adjustments to the left offset.
160         (WebCore::RenderBlock::logicalRightFloatOffsetForLine): New method to
161             compute the offset contributed by right floats.
162         (WebCore::RenderBlock::adjustLogicalRightOffsetForLine): New method to
163             compute misc adjustments to the right offset.
164         * rendering/RenderBlock.h:
165         (WebCore::RenderBlock::logicalRightOffsetForLine): Implement original
166             method in terms of the float offset computation method and the
167             offset adjustment method. This method takes into account the
168             shape-outside on any floats when computing the offset.
169         (WebCore::RenderBlock::logicalLeftOffsetForLine): Ditto.
170         (WebCore::RenderBlock::logicalRightOffsetForLineIgnoringShapeOutside):
171             Compute the right offset as if there was no shape-outside on any
172             of the floats.
173         (WebCore::RenderBlock::logicalLeftOffsetForLineIgnoringShapeOutside):
174             Compute the left offset as if there was no shape-outside on any
175             of the floats.
176         * rendering/RenderBlockLineLayout.cpp:
177         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Update
178             to use a variable to make the calls to computeSegmentsForLine more
179             explicit about the coordinate system conversion.
180
181 2013-07-17  Zalan Bujtas  <zalan@apple.com>
182
183         Wrong linebox height, when block element parent has vertical-align property defined.
184         https://bugs.webkit.org/show_bug.cgi?id=118245
185
186         Reviewed by David Hyatt.
187
188         Do not push the current element to the next, when it is still considered empty, even with
189         some object(s) in front. Behave as if it was actually empty.
190         Inline elements like <span></span> generate such lines.
191
192         Test: fast/css/empty-span-with-parent-div-and-vertical-align.html
193
194         * rendering/RenderBlockLineLayout.cpp:
195         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
196
197 2013-07-17  Andreas Kling  <akling@apple.com>
198
199         CSS selector list splitting should be by component, not by selector.
200         <http://webkit.org/b/118761>
201         <rdar://problem/14421609>
202
203         Reviewed by Antti Koivisto.
204
205         Test (amended): fast/css/rule-selector-overflow.html
206
207         * css/CSSSelectorList.h:
208         * css/CSSSelectorList.cpp:
209         (WebCore::CSSSelectorList::CSSSelectorList):
210         (WebCore::CSSSelectorList::componentCount):
211         * css/CSSStyleRule.cpp:
212         (WebCore::CSSStyleRule::setSelectorText):
213
214             Renamed CSSSelectorList::length() to componentCount() and made it public.
215
216         * css/RuleSet.h:
217
218             maximumSelectorCount => maximumSelectorComponentCount
219
220         * css/StyleRule.cpp:
221         (WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorComponentCount):
222
223             Make the splits after accumulating 'maximumSelectorComponentCount' components.
224
225         * css/StyleRule.h:
226         * css/StyleSheetContents.cpp:
227         (WebCore::StyleSheetContents::parserAppendRule):
228
229             splitIntoMultipleRulesWithMaximumSelectorCount => splitIntoMultipleRulesWithMaximumSelectorComponentCount
230
231 2013-07-17  Rob Buis  <rwlbuis@webkit.org>
232
233         [Mac] REGRESSION(r152685): svg/custom/xlink-prefix-in-attributes.html failed unexpectedly
234         https://bugs.webkit.org/show_bug.cgi?id=118701
235
236         Reviewed by Ryosuke Niwa.
237
238         Use the computed attribute prefix, otherwise href being in xlink namespace but not having any prefix
239         will cause outputting the xlink namespace in appendNamespace.
240
241         Patch fixes svg/custom/xlink-prefix-in-attributes.html.
242
243         * editing/MarkupAccumulator.cpp:
244         (WebCore::MarkupAccumulator::appendAttribute):
245
246 2013-07-17  Chris Fleizach  <cfleizach@apple.com>
247
248         Regression: columnheader/rowheader roles not exposed correctly
249         https://bugs.webkit.org/show_bug.cgi?id=113628
250
251         Reviewed by Tim Horton.
252
253         When we determine the row and column headers we look at the ARIA role being returned, but
254         since TableCell overrides the determineAccessibilityRole method, the ARIA role is never set.
255
256         Test: platform/mac/accessibility/aria-columnrowheaders.html
257
258         * accessibility/AccessibilityTableCell.cpp:
259         (WebCore::AccessibilityTableCell::determineAccessibilityRole):
260
261 2013-07-17  Christophe Dumez  <ch.dumez@sisa.samsung.com>
262
263         Get rid of SVGPoint special case from the bindings generator
264         https://bugs.webkit.org/show_bug.cgi?id=118783
265
266         Reviewed by Kentaro Hara.
267
268         Get rid of SVGPoint special case from the bindings generator by adding a
269         new SVGPoint.h header that contains a typedef to FloatPoint.
270
271         Also use SVGPoint type in the implementation API for consistency with
272         the IDL.
273
274         No new tests, no behavior change.
275
276         * bindings/scripts/CodeGenerator.pm:
277         (SkipIncludeHeader):
278         * bindings/scripts/test/JS/JSTestObj.cpp:
279         (WebCore::jsTestObjMutablePoint):
280         (WebCore::jsTestObjImmutablePoint):
281         (WebCore::setJSTestObjMutablePoint):
282         (WebCore::setJSTestObjImmutablePoint):
283         (WebCore::jsTestObjPrototypeFunctionMutablePointFunction):
284         (WebCore::jsTestObjPrototypeFunctionImmutablePointFunction):
285         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
286         (WebCore::jsTestTypedefsPrototypeFunctionImmutablePointFunction):
287         * bindings/scripts/test/ObjC/DOMTestObj.mm:
288         (-[DOMTestObj mutablePoint]):
289         (-[DOMTestObj immutablePoint]):
290         (-[DOMTestObj mutablePointFunction]):
291         (-[DOMTestObj immutablePointFunction]):
292         * bindings/scripts/test/ObjC/DOMTestTypedefs.mm:
293         (-[DOMTestTypedefs immutablePointFunction]):
294         * rendering/svg/RenderSVGRoot.cpp:
295         (WebCore::RenderSVGRoot::buildLocalToBorderBoxTransform):
296         * rendering/svg/SVGTextQuery.cpp:
297         (WebCore::SVGTextQuery::startPositionOfCharacter):
298         (WebCore::SVGTextQuery::endPositionOfCharacter):
299         (WebCore::SVGTextQuery::characterNumberAtPosition):
300         * rendering/svg/SVGTextQuery.h:
301         * svg/SVGPathElement.cpp:
302         (WebCore::SVGPathElement::getPointAtLength):
303         * svg/SVGPathElement.h:
304         * svg/SVGPathTraversalStateBuilder.cpp:
305         (WebCore::SVGPathTraversalStateBuilder::currentPoint):
306         * svg/SVGPathTraversalStateBuilder.h:
307         * svg/SVGPathUtilities.cpp:
308         (WebCore::getPointAtLengthOfSVGPathByteStream):
309         * svg/SVGPathUtilities.h:
310         * svg/SVGPoint.h: Added.
311         * svg/SVGPointList.cpp:
312         (WebCore::SVGPointList::valueAsString):
313         * svg/SVGPointList.h:
314         * svg/SVGSVGElement.cpp:
315         (WebCore::SVGSVGElement::createSVGPoint):
316         * svg/SVGSVGElement.h:
317         * svg/SVGTextContentElement.cpp:
318         (WebCore::SVGTextContentElement::getStartPositionOfChar):
319         (WebCore::SVGTextContentElement::getEndPositionOfChar):
320         (WebCore::SVGTextContentElement::getCharNumAtPosition):
321         * svg/SVGTextContentElement.h:
322         * svg/SVGZoomEvent.cpp:
323         (WebCore::SVGZoomEvent::previousTranslate):
324         (WebCore::SVGZoomEvent::newTranslate):
325         * svg/SVGZoomEvent.h:
326
327 2013-07-17  Carlos Garcia Campos  <cgarcia@igalia.com>
328
329         [GStreamer] webkitwebsrc: use SubResourceLoader
330         https://bugs.webkit.org/show_bug.cgi?id=73743
331
332         Reviewed by Philippe Normand.
333
334         * GNUmakefile.list.am: Add new files to compilation.
335         * PlatformEfl.cmake: Ditto.
336         * PlatformGTK.cmake: Ditto.
337         * loader/SubresourceLoader.h: Add getOrCreateReadBuffer() when
338         using SOUP.
339         * loader/cache/CachedRawResource.h:
340         * loader/cache/CachedRawResourceClient.h:
341         (WebCore::CachedRawResourceClient::getOrCreateReadBuffer): Added
342         to allow the client to allocate the read buffer.
343         * loader/cache/CachedResource.h:
344         (WebCore::CachedResource::getOrCreateReadBuffer):
345         * loader/soup/CachedRawResourceSoup.cpp: Added.
346         (WebCore::CachedRawResource::getOrCreateReadBuffer): Iterate the
347         clients until one returns a valid read buffer or return NULL to
348         fallback to the default read buffer.
349         * loader/soup/SubresourceLoaderSoup.cpp: Added.
350         (WebCore::SubresourceLoader::getOrCreateReadBuffer): Call
351         CachedResource::getOrCreateReadBuffer().
352         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
353         (StreamingClient): Make this a CachedRawResourceClient.
354         (_WebKitWebSrcPrivate): Remove frame and resourceHandle and add a
355         cached resource handle.
356         (webKitWebSrcDispose): Clear the player pointer.
357         (webKitWebSrcStop): Remove the client from the cached resource.
358         (webKitWebSrcStart): Use CachedResourceLoader to schedule a
359         CachedRawResource load for the media without buffering the data.
360         (webKitWebSrcNeedDataMainCb): Call CachedResource::setDefersLoading.
361         (webKitWebSrcEnoughDataMainCb): Ditto.
362         (webKitWebSrcSetMediaPlayer): Simply update the player pointer.
363         (StreamingClient::responseReceived): Update to the
364         CachedRawResourceClient API.
365         (StreamingClient::dataReceived): Ditto.
366         (StreamingClient::getOrCreateReadBuffer): Ditto.
367         (StreamingClient::notifyFinished): Ditto.
368
369 2013-07-17  Kwang Yul Seo  <skyul@company100.net>
370
371         Remove unused member variable m_domURL from WorkerGlobalScope
372         https://bugs.webkit.org/show_bug.cgi?id=118784
373
374         Reviewed by Christophe Dumez.
375
376         WorkerContext::webkitURL() was removed in r107082, and this was the
377         only place where the member variable |m_domURL| in WorkerContext was
378         mutated. This variable is no longer needed and so it should be removed.
379
380         No behavior change.
381
382         * workers/WorkerGlobalScope.h:
383
384 2013-07-17  Mihai Maerean  <mmaerean@adobe.com>
385
386         ASSERTION FAILED: layoutState->m_renderer == this in WebCore::RenderBlock::offsetFromLogicalTopOfFirstPage
387         https://bugs.webkit.org/show_bug.cgi?id=118587
388
389         Reviewed by David Hyatt.
390
391         The fix consists in not calling containingBlockLogicalHeightForPositioned for flow threads (in
392         RenderBox::availableLogicalHeightUsing) as it gets to handle the RenderView as it would have been flowed into
393         the flow thread.
394
395         Test: fast/regions/crash-div-outside-body-vertical-rl.html
396
397         * rendering/RenderBox.cpp:
398         (WebCore::RenderBox::availableLogicalHeightUsing):
399
400 2013-07-17  Kangil Han  <kangil.han@samsung.com>
401
402         Use toHTMLMediaElement
403         https://bugs.webkit.org/show_bug.cgi?id=118727
404
405         Reviewed by Ryosuke Niwa.
406
407         To avoid direct use of static_cast, this patch uses toHTMLMediaElement for code cleanup.
408
409         * bindings/js/JSHTMLMediaElementCustom.cpp:
410         (WebCore::JSHTMLMediaElement::setController):
411         * html/HTMLMediaElement.h:
412         (WebCore::toHTMLMediaElement):
413         * html/HTMLSourceElement.cpp:
414         (WebCore::HTMLSourceElement::insertedInto):
415         (WebCore::HTMLSourceElement::removedFrom):
416         * html/HTMLTrackElement.cpp:
417         (WebCore::HTMLTrackElement::removedFrom):
418         (WebCore::HTMLTrackElement::mediaElement):
419         * html/shadow/MediaControlElementTypes.cpp:
420         (WebCore::toParentMediaElement):
421         * loader/SubframeLoader.cpp:
422         (WebCore::SubframeLoader::loadMediaPlayerProxyPlugin):
423         * page/FrameView.cpp:
424         (WebCore::FrameView::updateWidget):
425         * platform/efl/RenderThemeEfl.cpp:
426         (WebCore::RenderThemeEfl::paintMediaFullscreenButton):
427         (WebCore::RenderThemeEfl::paintMediaMuteButton):
428         (WebCore::RenderThemeEfl::paintMediaToggleClosedCaptionsButton):
429         * platform/graphics/wince/MediaPlayerProxy.cpp:
430         (WebCore::WebMediaPlayerProxy::initEngine):
431         (WebCore::WebMediaPlayerProxy::element):
432         * platform/gtk/RenderThemeGtk.cpp:
433         (WebCore::getMediaElementFromRenderObject):
434         * rendering/HitTestResult.cpp:
435         (WebCore::HitTestResult::mediaElement):
436         * rendering/RenderLayerBacking.cpp:
437         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
438         * rendering/RenderLayerCompositor.cpp:
439         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
440         * rendering/RenderMedia.cpp:
441         (WebCore::RenderMedia::mediaElement):
442         * rendering/RenderThemeMac.mm:
443         (WebCore::RenderThemeMac::paintMediaSliderTrack):
444         * rendering/RenderThemeWinCE.cpp:
445         (WebCore::mediaElementParent):
446         * testing/Internals.cpp:
447         (WebCore::Internals::simulateAudioInterruption):
448
449 2013-07-16  Ryuan Choi  <ryuan.choi@samsung.com>
450
451         Remove Platform(EFL) guard from Widget::frameRectsChanged
452         https://bugs.webkit.org/show_bug.cgi?id=118782
453
454         Reviewed by Christophe Dumez.
455
456         Since r58487, Widget::frameRectsChanged was moved to cpp and guarded.
457         But we can move back to header because WebKit/Efl refactored related code in r145710.
458
459         No new tests, refactoring.
460
461         * platform/Widget.cpp: Removed platform guard and move frameRectsChangd() back to header.
462         * platform/Widget.h:
463         (WebCore::Widget::frameRectsChanged):
464         * platform/efl/WidgetEfl.cpp:
465
466 2013-07-16  Alex Christensen  <achristensen@apple.com>
467
468         Update ANGLE to r2426.
469         https://bugs.webkit.org/show_bug.cgi?id=118550
470
471         Reviewed by Dean Jackson.
472
473         * CMakeLists.txt: Renamed DetectRecursion to DetectCallDepth and added builtin_symbol_table.
474
475 2013-07-16  Tim Horton  <timothy_horton@apple.com>
476
477         Many crashes loading Java applets after r152701
478         https://bugs.webkit.org/show_bug.cgi?id=118760
479         <rdar://problem/14462836>
480
481         Reviewed by Dean Jackson.
482
483         * html/HTMLAppletElement.cpp:
484         (WebCore::HTMLAppletElement::updateWidget):
485         Re-acquire the renderer after calling createJavaAppletWidget,
486         because it can cause reattach, leaving our renderer pointer stale.
487
488         * loader/SubframeLoader.cpp:
489         (WebCore::SubframeLoader::createJavaAppletWidget):
490         Null-check renderer, as element->renderEmbeddedObject() can very clearly
491         return null in some cases.
492
493 2013-07-16  Pratik Solanki  <psolanki@apple.com>
494
495         Missing break in WebGLRenderingContext::validateCompressedTexFuncData()
496         https://bugs.webkit.org/show_bug.cgi?id=118742
497
498         Reviewed by Ryosuke Niwa.
499
500         * html/canvas/WebGLRenderingContext.cpp:
501         (WebCore::WebGLRenderingContext::validateCompressedTexFuncData):
502
503 2013-07-16  Andreas Kling  <akling@apple.com>
504
505         Atomicize HTMLAnchorElement.hash before passing it to JS.
506         <http://webkit.org/b/118748>
507         <rdar://problem/14459780>
508
509         Reviewed by Sam Weinig.
510
511         Instead of generating a unique string from '#' + the URL hash every time HTMLAnchorElement.hash
512         is queried, turn it into an AtomicString. This prevents massive memory usage in scripts that
513         fetch .hash a lot.
514
515         Reduces memory consumption by 4.65 MB when viewing the full HTML5 spec at <http://whatwg.org/c>
516
517         * html/HTMLAnchorElement.cpp:
518         (WebCore::HTMLAnchorElement::hash):
519
520 2013-07-16  Brendan Long  <b.long@cablelabs.com>
521
522         Make WebVTTParser return cue data instead of cue DOM objects
523         https://bugs.webkit.org/show_bug.cgi?id=118687
524
525         Reviewed by Eric Carlson.
526
527         No new tests because this doesn't change functionality.
528
529         * html/track/InbandTextTrack.cpp:
530         Make TextTrackCueMap handle WebVTTCues instead of just generic cues.
531         m_dataToCueMap and m_cueToDataMap were renamed m_genericDataToCueMap
532         and m_genericCueToDataMap. The cue maps were turned into pointers so we
533         only allocate the ones we need.
534         (WebCore::TextTrackCueMap::TextTrackCueMap): Initialize maps to 0.
535         (WebCore::TextTrackCueMap::~TextTrackCueMap): Delete allocated maps.
536         (WebCore::TextTrackCueMap::add): Changed to allocate cue maps as needed, and added WebVTT version.
537         (WebCore::TextTrackCueMap::find): Checked to check if cue maps are allocated, and added WebVTT version.
538         (WebCore::TextTrackCueMap::findGenericData): Changed to accept TextTrackCue instead of TextTrackCueGeneric.
539         (WebCore::TextTrackCueMap::findWebVTTData): Same as findGenericData, except for WebVTTCueData.
540         (WebCore::TextTrackCueMap::remove): Accept TextTrackCue instead of TextTrackCueGeneric, and look in both maps.
541         (WebCore::InbandTextTrack::addWebVTTCue): Added, based on addGenericCue.
542         (WebCore::InbandTextTrack::removeWebVTTCue): Added, almost identical to removeGenericCue.
543         (WebCore::InbandTextTrack::removeCue): m_cueMap.remove() takes a TextTrackCue now so it can remove both types of cue.
544         (WebCore::InbandTextTrack::willRemoveTextTrackPrivate): Use ASSERT_UNUSED instead of UNUSED_PARAM + ASSERT.
545         * html/track/InbandTextTrack.h: Add new functions above, change maps to pointers and add maps for holding WebVTT cues.
546         * html/track/WebVTTParser.cpp:
547         (WebCore::WebVTTParser::getNewCues): Return WebVTTCueData instead of TextTrackCue.
548         (WebCore::WebVTTParser::createNewCue): Create WebVTTCueData instead of TextTrackCue.
549         * html/track/WebVTTParser.h: Add WebVTTCueData class, based on GenericCueData.
550         The following functions are just constructors, destructors, getters, or setters.
551         (WebCore::WebVTTCueData::create):
552         (WebCore::WebVTTCueData::~WebVTTCueData):
553         (WebCore::WebVTTCueData::startTime):
554         (WebCore::WebVTTCueData::setStartTime):
555         (WebCore::WebVTTCueData::endTime):
556         (WebCore::WebVTTCueData::setEndTime):
557         (WebCore::WebVTTCueData::id):
558         (WebCore::WebVTTCueData::setId):
559         (WebCore::WebVTTCueData::content):
560         (WebCore::WebVTTCueData::setContent):
561         (WebCore::WebVTTCueData::settings):
562         (WebCore::WebVTTCueData::setSettings):
563         (WebCore::WebVTTCueData::WebVTTCueData):
564         * loader/TextTrackLoader.cpp:
565         (WebCore::TextTrackLoader::getNewCues): Convert WebVTTCueData to TextTrackCue when we get them.
566         * platform/graphics/InbandTextTrackPrivateClient.h: Add addWebVTTCue and removeWebVTTCue functions to the interface.
567
568 2013-07-16  Tim Horton  <timothy_horton@apple.com>
569
570         Use the correct cursor value for the unavailable plugin indicator
571         https://bugs.webkit.org/show_bug.cgi?id=118747
572         <rdar://problem/14456498>
573
574         Reviewed by Dean Jackson.
575
576         CSS says "pointer" is the hand cursor, not "hand".
577
578         * css/unavailablePlugIns.css:
579         (object::-webkit-unavailable-plugin-content > div):
580         (object::-webkit-unavailable-plugin-content > div > span):
581
582 2013-07-16  Simon Fraser  <simon.fraser@apple.com>
583
584         Protect against the LayerFlushController being deleted inside its flushLayers() callback
585         https://bugs.webkit.org/show_bug.cgi?id=118741
586
587         Reviewed by Tim Horton.
588
589         It's possible (especially on iOS) for the LayerFlushController to be destroyed
590         inside its callback, via -[WebView _close]. Protect against this by making
591         it refcounted, and holding a ref across the callback.
592         
593         Due to the odd relationship in which LayerFlushController owns its LayerFlushScheduler
594         by value, we achieve this by allowing subclasses of LayerFlushScheduler
595         to override runLoopObserverCallback(). WebViewLayerFlushScheduler uses the
596         override to protect the owner of the LayerFlushScheduler, which is the
597         LayerFlushController, when the callback is firing.
598
599         * WebCore.exp.in:
600         * platform/graphics/ca/LayerFlushScheduler.h: Make runLoopObserverCallback() and the dtor virtual.
601
602 2013-07-16  Christophe Dumez  <ch.dumez@sisa.samsung.com>
603
604         Get rid of multiple inheritance support from the bindings generators
605         https://bugs.webkit.org/show_bug.cgi?id=118353
606
607         Reviewed by Kentaro Hara.
608
609         Remove multiple inheritance support from the bindings generators (except
610         the ObjC one which still needs it for now). Multiple inheritance is no
611         longer supported in Web IDL and it makes the scripts more complex than
612         they needs to be.
613
614         Multiple inheritance support is no longer needed now that our SVG
615         interfaces have been updated to use the simpler SVG2 inheritance model
616         and use Web IDL 'implements' statements.
617
618         Note that the IDL parser still support multiple inheritance for now in
619         order not to break the ObjC bindings generator.
620
621         No new tests, no behavior change.
622
623         * bindings/scripts/CodeGenerator.pm:
624         * bindings/scripts/CodeGeneratorCPP.pm:
625         (GetParentImplClassName):
626         (GetParent):
627         (GenerateImplementation):
628         * bindings/scripts/CodeGeneratorGObject.pm:
629         (GetParentClassName):
630         (GetParentImplClassName):
631         (GetParentGObjType):
632         * bindings/scripts/CodeGeneratorJS.pm:
633         (GetParentClassName):
634         (GenerateHeader):
635         (GenerateImplementation):
636         (GenerateConstructorDefinition):
637         * bindings/scripts/CodeGeneratorObjC.pm:
638         (AddMethodsConstantsAndAttributesFromParentInterfaces):
639         (GenerateImplementation):
640         * bindings/scripts/IDLParser.pm:
641         (parseInterface):
642         (parseException):
643         (parseInheritance):
644
645 2013-07-16  Eric Carlson  <eric.carlson@apple.com>
646
647         HTMLMediaElement should not add cues for disabled text tracks
648         https://bugs.webkit.org/show_bug.cgi?id=118682
649
650         Reviewed by Ryosuke Niwa.
651
652         Merge https://src.chromium.org/viewvc/blink?view=rev&revision=153810
653
654         Tests: media/track/track-disabled-addcue.html
655                media/track/track-disabled.html
656
657         * html/HTMLMediaElement.cpp:
658         (WebCore::HTMLMediaElement::textTrackAddCues): Do nothing if the track is disabled.
659         (WebCore::HTMLMediaElement::textTrackAddCue): Ditto.
660
661 2013-07-16  Krzysztof Czech  <k.czech@ymail.com>
662
663         [ATK] Adds support for aria-haspopup property.
664         https://bugs.webkit.org/show_bug.cgi?id=117834
665
666         Reviewed by Christophe Dumez.
667
668         Adds support for aria-haspopup property.
669
670         Tests: accessibility/element-haspopup.html
671                accessibility/popup-button-title.html
672
673         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
674         (webkitAccessibleGetAttributes):
675
676 2013-07-16  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
677
678         [texmap][GStreamer] upload onto the texture only the buffer to be painted
679         https://bugs.webkit.org/show_bug.cgi?id=118471
680
681         Reviewed by Philippe Normand.
682
683         Right now all the buffers are uploaded onto the texture. With this
684         logic pose situations where buffers that will not be painted are
685         uploaded.
686
687         This patch uploads only the buffers that are going to be shown.
688
689         With this approach, the buffers may arrive before a GraphicsLayer is
690         set, so we should be more cautious with GraphicsLayerTextureMapper's
691         client.
692
693         No new tests, covered by existing tests.
694
695         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
696         (WebCore::MediaPlayerPrivateGStreamerBase::MediaPlayerPrivateGStreamerBase):
697         (WebCore::MediaPlayerPrivateGStreamerBase::updateTexture):
698         (WebCore::MediaPlayerPrivateGStreamerBase::triggerRepaint):
699         (WebCore::MediaPlayerPrivateGStreamerBase::paint):
700         (WebCore::MediaPlayerPrivateGStreamerBase::paintToTextureMapper):
701         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
702         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
703         (WebCore::GraphicsLayerTextureMapper::~GraphicsLayerTextureMapper):
704         (WebCore::GraphicsLayerTextureMapper::setContentsToMedia):
705
706 2013-07-16  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
707
708         [GStreamer] verify and log the received caps in the video sink
709         https://bugs.webkit.org/show_bug.cgi?id=118559
710
711         Reviewed by Philippe Normand.
712
713         Verify the correctness of the received caps in the video sink, and
714         also log them for debugging purposes.
715
716         No new tests, no behavior change.
717
718         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
719         (webkitVideoSinkSetCaps):
720
721 2013-07-16  Kangil Han  <kangil.han@samsung.com>
722
723         Use toHTMLSelectElement and dismiss isHTMLSelectElement
724         https://bugs.webkit.org/show_bug.cgi?id=118714
725
726         Reviewed by Ryosuke Niwa.
727
728         To avoid direct use of static_cast, this patch introduces toHTMLIFrameElement for code cleanup.
729         Additionally, this patch removes isHTMLSelectElement because not all element subclasses can be checked by a combination of tag names.
730
731         * html/HTMLSelectElement.h:
732         (WebCore::toHTMLSelectElement):
733         * testing/Internals.cpp:
734         (WebCore::Internals::isSelectPopupVisible):
735
736 2013-07-15  Yuta Kitamura  <yutak@chromium.org>
737
738         Fix a crash in Range::processContents().
739
740         NULL ptr in WebCore::Range::processAncestorsAndTheirSiblings
741         https://bugs.webkit.org/show_bug.cgi?id=77614
742
743         Reviewed by Ryosuke Niwa.
744
745         This change is ported from Blink revision 153483:
746         https://src.chromium.org/viewvc/blink?revision=153483&view=revision
747
748         This crash can be initiated by calling Range.detach() while deleteContents()
749         is processing the same range. Range::processContents() should save the state
750         of the range since mutation events can change the state of the range.
751
752         Test: fast/dom/Range/detach-range-during-deletecontents.html
753
754         * dom/Range.cpp:
755         (WebCore::Range::processContents):
756         * dom/RangeBoundaryPoint.h:
757         (WebCore::RangeBoundaryPoint::RangeBoundaryPoint):
758
759 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
760
761         Input element that becomes visible during a simulated click event from an associated label element doesn't get focused
762         https://bugs.webkit.org/show_bug.cgi?id=118700
763
764         Reviewed by Kent Tamura.
765
766         Inspired by https://chromium.googlesource.com/chromium/blink/+/6435f70d53403b250e261a914f30d55142f81476.
767
768         The bug was caused by isMouseFocusable() check in HTMLLabelElement::defaultEventHandler not updating the layout even
769         though the call to dispatchSimulatedClick may have dirtied the render tree.
770
771         Explicitly update the layout so that we have up-to-date render tree.
772
773         Test: fast/forms/label/label-becomes-visible-while-clicking-on-label.html
774
775         * html/HTMLLabelElement.cpp:
776         (WebCore::HTMLLabelElement::defaultEventHandler):
777
778 2013-07-15  Kangil Han  <kangil.han@samsung.com>
779
780         Introduce toHTMLIFrameElement
781         https://bugs.webkit.org/show_bug.cgi?id=118672
782
783         Reviewed by Ryosuke Niwa.
784
785         To avoid direct use of static_cast, this patch introduces toHTMLIFrameElement for code cleanup.
786
787         * bindings/js/JSHTMLDocumentCustom.cpp:
788         (WebCore::JSHTMLDocument::nameGetter):
789         * css/StyleResolver.cpp:
790         (WebCore::StyleResolver::adjustRenderStyle):
791         * dom/Document.cpp:
792         (WebCore::Document::seamlessParentIFrame):
793         * html/HTMLIFrameElement.h:
794         (WebCore::toHTMLIFrameElement):
795         * rendering/RenderEmbeddedObject.cpp:
796         (WebCore::RenderEmbeddedObject::viewCleared):
797         * rendering/RenderIFrame.cpp:
798         (WebCore::RenderIFrame::isSeamless):
799         (WebCore::RenderIFrame::flattenFrame):
800
801 2013-07-15  Chris Rogers  <crogers@google.com>
802
803         Add support for WaveShaperNode.oversample
804         https://bugs.webkit.org/show_bug.cgi?id=117435
805
806         Reviewed by Kenneth Russell.
807
808         Adapted from Blink:
809         https://codereview.chromium.org/15619003/
810
811         Please see specification for details:
812         https://dvcs.w3.org/hg/audio/raw-file/tip/webaudio/specification.html#WaveShaperNode
813
814         .oversample specifies what type of oversampling (if any) should be used when applying the shaping curve.
815         The default value is "none", meaning the curve will be applied directly to the input samples.
816         A value of "2x" or "4x" can improve the quality of the processing by avoiding some aliasing,
817         with the "4x" value yielding the highest quality.
818
819         Tests: webaudio/waveshaper-oversample-2x.html
820                webaudio/waveshaper-oversample-4x.html
821
822         * CMakeLists.txt:
823         * GNUmakefile.list.am:
824         * Modules/webaudio/WaveShaperDSPKernel.cpp:
825         (WebCore::WaveShaperDSPKernel::WaveShaperDSPKernel):
826         (WebCore::WaveShaperDSPKernel::lazyInitializeOversampling):
827         (WebCore::WaveShaperDSPKernel::process):
828         (WebCore::WaveShaperDSPKernel::processCurve):
829         (WebCore::WaveShaperDSPKernel::processCurve2x):
830         (WebCore::WaveShaperDSPKernel::processCurve4x):
831         (WebCore::WaveShaperDSPKernel::reset):
832         (WebCore::WaveShaperDSPKernel::latencyTime):
833         * Modules/webaudio/WaveShaperDSPKernel.h:
834         * Modules/webaudio/WaveShaperNode.cpp:
835         (WebCore::WaveShaperNode::WaveShaperNode):
836         (WebCore::WaveShaperNode::setOversample):
837         (WebCore::WaveShaperNode::oversample):
838         * Modules/webaudio/WaveShaperNode.h:
839         (WebCore::WaveShaperNode::latency):
840         * Modules/webaudio/WaveShaperNode.idl:
841         * Modules/webaudio/WaveShaperProcessor.cpp:
842         (WebCore::WaveShaperProcessor::WaveShaperProcessor):
843         (WebCore::WaveShaperProcessor::setOversample):
844         * Modules/webaudio/WaveShaperProcessor.h:
845         (WebCore::WaveShaperProcessor::oversample):
846         * WebCore.xcodeproj/project.pbxproj:
847         * platform/audio/DownSampler.cpp: Added.
848         (WebCore::DownSampler::DownSampler):
849         (WebCore::DownSampler::initializeKernel):
850         (WebCore::DownSampler::process):
851         (WebCore::DownSampler::reset):
852         (WebCore::DownSampler::latencyFrames):
853         * platform/audio/DownSampler.h: Added.
854         * platform/audio/UpSampler.cpp: Added.
855         (WebCore::UpSampler::UpSampler):
856         (WebCore::UpSampler::initializeKernel):
857         (WebCore::UpSampler::process):
858         (WebCore::UpSampler::reset):
859         (WebCore::UpSampler::latencyFrames):
860         * platform/audio/UpSampler.h: Added.
861
862 2013-07-15  Tim Horton  <timothy_horton@apple.com>
863
864         Update blocked/missing plug-in UI
865         https://bugs.webkit.org/show_bug.cgi?id=118347
866         <rdar://problem/14209318>
867
868         Reviewed by Sam Weinig.
869         Patch by Anders Carlsson, Antoine Quint, Sam Weinig, and myself.
870
871         * CMakeLists.txt:
872         * DerivedSources.make:
873         * DerivedSources.pri:
874         * GNUmakefile.am:
875         * WebCore.exp.in:
876         * WebCore.vcxproj/WebCore.vcxproj:
877         * WebCore.vcxproj/WebCore.vcxproj.filters:
878         * WebCore.xcodeproj/project.pbxproj:
879         * css/CSSDefaultStyleSheets.cpp:
880         * css/unavailablePlugIns.css: Added.
881         Add new Source/WebCore/css/unavailablePlugIns.css stylesheet.
882
883         * dom/EventListener.h:
884         New event listener type to support the creation of an event listener
885         for the label and icon for missing / blocked plug-in UI.
886
887         * html/HTMLPlugInElement.cpp:
888         (WebCore::HTMLPlugInElement::defaultEventHandler):
889         Remove explicit event handling since we're now using a DOM event handler
890         on the label and icon in the shadow root.
891
892         * html/HTMLPlugInImageElement.cpp:
893         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot):
894         Don't populate the shadow root with plugin snapshotting elements
895         if we're not planning on showing a snapshot, because this means that
896         the shadow root was created for the unavailable plugin indicator instead.
897
898         * page/ChromeClient.h:
899         (WebCore::ChromeClient::shouldUnavailablePluginMessageIncludeButton):
900         * rendering/RenderEmbeddedObject.cpp:
901         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
902         (WebCore::shouldUnavailablePluginMessageIncludeButton):
903         Rename from shouldUnavailablePluginMessageBeButton to
904         shouldUnavailablePluginMessageIncludeButton for accuracy.
905
906         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonDescription):
907         Set custom text to be displayed in the unavailability indicator.
908
909         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason):
910         (WebCore::RenderEmbeddedObject::handleUnavailablePluginButtonClickEvent):
911         (WebCore::RenderEmbeddedObject::willBeDestroyed):
912         (WebCore::RenderEmbeddedObject::isReplacementObscured):
913         (WebCore::RenderEmbeddedObjectEventListener::handleEvent):
914         (WebCore::RenderEmbeddedObjectEventListener::operator==):
915         Remove the old code used to render the missing / blocked plug-in UI in C++ in favor
916         of populating a shadow root in setPluginUnavailabilityReason(). We add a DOM event
917         listener in the shadow root to eventually call into unavailablePluginButtonClicked()
918         on the ChromeClient.
919
920         (WebCore::RenderEmbeddedObject::paint):
921         (WebCore::RenderEmbeddedObject::layout):
922         Paint and lay out UA shadow root children.
923
924         (WebCore::RenderEmbeddedObject::canHaveChildren):
925         canHaveChildren can use the existence of a UA shadow root to decide
926         whether a RenderEmbeddedObject can have children.
927
928         * rendering/RenderEmbeddedObject.h:
929         (WebCore::RenderEmbeddedObjectEventListener::create):
930         (WebCore::RenderEmbeddedObjectEventListener::cast):
931         (WebCore::RenderEmbeddedObjectEventListener::RenderEmbeddedObjectEventListener):
932         Create the new event listener class necessary to handle events in the shadow root.
933
934         (WebCore::RenderEmbeddedObject::pluginUnavailabilityReasonDescription): Added.
935
936         * rendering/RenderWidget.h:
937         Promote willBeDestroyed() to be public so we may override it in the RenderEmbeddedObject subclass.
938
939 2013-07-15  Andreas Kling  <akling@apple.com>
940
941         Pack WebCore::Font slightly better.
942         <http://webkit.org/b/118681>
943         <rdar://problem/14446014>
944
945         Reviewed by Sam Weinig.
946
947         Knock 8 bytes off of Font by packing the members better. Reduces memory consumption by 429 kB when
948         viewing the full HTML5 spec at <http://whatwg.org/c>
949
950         * platform/graphics/Font.h:
951         (WebCore::Font::typesettingFeatures):
952
953 2013-07-15  Rob Buis  <rwlbuis@webkit.org>
954
955         XMLSerializer doesn't include namespaces on nodes in HTML documents
956         https://bugs.webkit.org/show_bug.cgi?id=16496
957
958         Reviewed by Ryosuke Niwa.
959
960         Introduce a xml fragment serialization mode as indicated by
961         http://html5.org/specs/dom-parsing.html#xmlserializer (commit 00b84d2). In this mode
962         the XML fragment serialization algorithm is respected, the changes in this patch do the following:
963
964         - elements are self-closing if otherwise this would lead to invalid xml syntax.
965         - the resulting xml is XML namespace-well-formed (http://www.w3.org/TR/xml-names11/#Conformance).
966         This is achieved by always, when in xml fragment serialization mode, attempting to write out the element/attribute namespace,
967         preventing using the XML namespace as a default namespace and special casing the use of element's in XML namespace by using the xml prefix.
968
969         The chosen approach matches FireFox 25 behavior.
970
971         Test: fast/dom/dom-serialize-namespace.html
972
973         * WebCore.order: Adapt to changed createMarkup signature.
974         * editing/MarkupAccumulator.cpp:
975         (WebCore::MarkupAccumulator::MarkupAccumulator):
976         (WebCore::MarkupAccumulator::serializeNodesWithNamespaces): makes sure xml namespace/prefix is known so it is never used in namespace declarations.
977         (WebCore::MarkupAccumulator::appendNamespace): Avoid adding namespace declarations that do not differ from current default namespace.
978         (WebCore::MarkupAccumulator::appendOpenTag): Print xml prefix if the element's namespace is XML to avoid conflicts.
979         (WebCore::MarkupAccumulator::appendAttribute):
980         (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute): Also take into account xmlns attributes with no namespace.
981         (WebCore::MarkupAccumulator::shouldSelfClose): Force self-closing to create well-formed XML elements.
982         * editing/MarkupAccumulator.h: Use EFragmentSerialization.
983         (WebCore::MarkupAccumulator::inXMLFragmentSerialization):
984         * editing/markup.cpp:
985         (WebCore::createMarkup):
986         * editing/markup.h: Add EFragmentSerialization enum.
987         * xml/XMLSerializer.cpp:
988         (WebCore::XMLSerializer::serializeToString):
989
990 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
991
992         MediaFragmentURIParser::parseFragments shouldn't upconvert 8-bit string
993         https://bugs.webkit.org/show_bug.cgi?id=118692
994
995         Reviewed by Michael Saboff.
996
997         Merge https://chromium.googlesource.com/chromium/blink/+/2aa17cc56a807f7e05d386d6eb66cda25e6b0542.
998
999         * html/MediaFragmentURIParser.cpp:
1000         (WebCore::MediaFragmentURIParser::parseFragments):
1001
1002 2013-07-15  Kwang Yul Seo  <skyul@company100.net>
1003
1004         NetworkStorageSession::createDefaultSession is only implemented by Soup
1005         https://bugs.webkit.org/show_bug.cgi?id=118679
1006
1007         Reviewed by Alexey Proskuryakov.
1008
1009         Remove NetworkStorageSession::createDefaultSession() because
1010         NetworkStorageSession::defaultStorageSession() returns the default
1011         session.
1012
1013         No new tests, no behavior change.
1014
1015         * platform/network/NetworkStorageSession.h:
1016         * platform/network/soup/NetworkStorageSessionSoup.cpp:
1017
1018 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
1019
1020         compositionstart event should contain the text to be replaced
1021         https://bugs.webkit.org/show_bug.cgi?id=118684
1022
1023         Reviewed by Alexey Proskuryakov.
1024
1025         Merge https://chromium.googlesource.com/chromium/blink/+/9e04f728a95ad7d4783b1d31c3cdc1412dd6cc4d.
1026
1027         DOM3 level 3 specifies compositionstart event's data to be the text to be replaced.
1028         http://www.w3.org/TR/DOM-Level-3-Events/#event-type-compositionstart
1029
1030         According to the author of the Blink change, IE10 on Windows and Firefox22 on Linux confirms
1031         to the specified behavior.
1032
1033         Test: fast/events/ime-composition-events-001.html
1034
1035         * editing/Editor.cpp:
1036         (WebCore::Editor::setComposition):
1037
1038 2013-07-15  Ryosuke Niwa  <rniwa@webkit.org>
1039
1040         xmlDocPtrForString shouldn't upconvert 8-bit string
1041         https://bugs.webkit.org/show_bug.cgi?id=118693
1042
1043         Reviewed by Michael Saboff.
1044
1045         Merge https://chromium.googlesource.com/chromium/blink/+/5d9b240db74591c3689415c7b7c5180fadb379e9
1046
1047         Prior to this changeset, we were upconverting the entire XML document.
1048         Let xmllib2 parse a document as iso-8859-1 when it's a 8-bit string.
1049
1050         * xml/parser/XMLDocumentParserLibxml2.cpp:
1051         (WebCore::nativeEndianUTF16Encoding):
1052         (WebCore::xmlDocPtrForString):
1053
1054 2013-07-15  Roger Fong  <roger_fong@apple.com>
1055
1056         Replace WKCACFTypes include with d3d9 include.
1057
1058         Rubberstamped by Eric Carlson.
1059
1060         * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
1061
1062 2013-07-15  Antoine Quint  <graouts@apple.com>
1063
1064         Text with "text-overflow:ellipsis" and an SVG font do not render correctly
1065         https://bugs.webkit.org/show_bug.cgi?id=118669
1066
1067         Reviewed by David Kilzer.
1068
1069         Partial runs may be routed through the complex path in several Font functions. While incomplete,
1070         we can check for a non-NULL run.renderingContext() and exempt runs that have it from being forced
1071         down the complex path. A more thorough fix is already tracked by http://webkit.org/b/100050.
1072
1073         Adding a new testcase which is a copy of svg/text/text-overflow-ellipsis-svgfont.html with kerning
1074         and ligatures turned on explicitly since DRT runs with those off by default and this option is required
1075         to be on for the issue to reproduce.
1076
1077         Fix courtesy of Dan Bernstein.
1078
1079         Test: svg/text/text-overflow-ellipsis-svgfont-kerning-ligatures.html
1080
1081         * platform/graphics/Font.cpp:
1082         (WebCore::Font::drawText):
1083         (WebCore::Font::drawEmphasisMarks):
1084         (WebCore::Font::selectionRectForText):
1085
1086 2013-07-15  peavo@outlook.com  <peavo@outlook.com>
1087
1088         [Curl] Download does not replace existing file.
1089         https://bugs.webkit.org/show_bug.cgi?id=118356
1090
1091         Reviewed by Brent Fulgham.
1092
1093         If the download target file already exists, it is not replaced after the download has finished.
1094         At this point, the user would have already approved to replace the file, so it should be replaced.
1095
1096         * platform/network/curl/CurlDownload.cpp:
1097         (CurlDownload::moveFileToDestination): Move file and replace it if it already exists.
1098         If the new file is on a different volume, do a copy/delete operation.
1099
1100 2013-07-15  Luciano Wolf  <luciano.wolf@openbossa.org>
1101
1102         [CoordinatedGraphics] Crash at CoordinatedGraphicsScene::updateImageBacking
1103         https://bugs.webkit.org/show_bug.cgi?id=118613
1104
1105         The operations of creating/removing/updating/clearing weren't in the
1106         right sequence. Changing the order solves the issue because when an image is
1107         replaced the old one is deleted before the new one is created, and IDs are
1108         not unique in cairo (they're based on the image pointer).
1109
1110         Reviewed by Noam Rosenthal.
1111
1112         * platform/graphics/texmap/coordinated/CoordinatedGraphicsScene.cpp:
1113         (WebCore::CoordinatedGraphicsScene::syncImageBackings):
1114
1115 2013-07-15  Brian Holt  <brian.holt@samsung.com>
1116
1117         [ATK] Leak: Leak in WebKitAccessibleTextGetText
1118         https://bugs.webkit.org/show_bug.cgi?id=118596
1119
1120         Reviewed by Carlos Garcia Campos.
1121
1122         Fixed memory leak.
1123
1124         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
1125         (getGailTextUtilForAtk):
1126
1127 2013-07-14  Jon Lee  <jonlee@apple.com>
1128
1129         Origins with invalid ports are not marked as unique (118652)
1130         https://bugs.webkit.org/show_bug.cgi?id=118652
1131         <rdar://problem/14437753>
1132
1133         Reviewed by Sam Weinig.
1134
1135         * page/SecurityOrigin.cpp:
1136         (WebCore::SecurityOrigin::create): Return a unique origin if the port is out of range.
1137
1138 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
1139
1140         Another Qt build fix attempt after r152619.
1141
1142         * dom/QualifiedName.cpp:
1143         (WebCore::QualifiedName::toString):
1144
1145 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
1146
1147         Qt build fix attempt after r152619.
1148
1149         * dom/QualifiedName.cpp:
1150         (WebCore::QualifiedName::toString):
1151
1152 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
1153
1154         Mac build fix attempt after r152615.
1155
1156         * svg/SVGFilterElement.h:
1157
1158 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
1159
1160         Modernize QualifiedName by wrapping gNameCache in a function and using more early exits
1161         https://bugs.webkit.org/show_bug.cgi?id=118299
1162
1163         Reviewed by Andreas Kling.
1164
1165         Address Ben's review comment.
1166
1167         * dom/QualifiedName.cpp:
1168         (WebCore::QualifiedName::toString):
1169
1170 2013-07-14  Ryosuke Niwa  <rniwa@webkit.org>
1171
1172         HTMLTextFormControlElement::valueWithHardLineBreaks shouldn't upconvert 8-bit string
1173         https://bugs.webkit.org/show_bug.cgi?id=118631
1174
1175         Reviewed by Andreas Kling.
1176
1177         Merge https://chromium.googlesource.com/chromium/blink/+/2c7c70a7bd3d61bfbf97de95c459ec9f40b46e31.
1178
1179         * html/HTMLTextFormControlElement.cpp:
1180         (WebCore::HTMLTextFormControlElement::valueWithHardLineBreaks):
1181
1182 2013-07-14  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1183
1184         Add toSVGFilterElement() and use it.
1185         https://bugs.webkit.org/show_bug.cgi?id=118653
1186
1187         Reviewed by Ryosuke Niwa.
1188
1189         We can use toSVGFilterElement() instead of using static_cast<..> to improve readability.
1190         Blink also uses it.
1191
1192         No new tests, no behavior change.
1193
1194         * rendering/svg/RenderSVGResourceFilter.cpp:
1195         (WebCore::RenderSVGResourceFilter::buildPrimitives):
1196         (WebCore::RenderSVGResourceFilter::applyResource):
1197         (WebCore::RenderSVGResourceFilter::resourceBoundingBox):
1198         * rendering/svg/RenderSVGResourceFilter.h:
1199         (WebCore::RenderSVGResourceFilter::filterUnits):
1200         (WebCore::RenderSVGResourceFilter::primitiveUnits):
1201         * rendering/svg/SVGResources.cpp:
1202         (WebCore::targetReferenceFromResource):
1203         * svg/SVGFilterElement.h:
1204         (WebCore::toSVGFilterElement):
1205
1206 2013-07-14  Kangil Han  <kangil.han@samsung.com>
1207
1208         Introduce toHTMLVideoElement
1209         https://bugs.webkit.org/show_bug.cgi?id=118582
1210
1211         Reviewed by Ryosuke Niwa.
1212
1213         To avoid direct use of static_cast, this patch introduces toHTMLVideoElement.
1214
1215         * html/HTMLMediaElement.cpp:
1216         (WebCore::HTMLMediaElement::getPluginProxyParams):
1217         * html/HTMLVideoElement.h:
1218         (WebCore::toHTMLVideoElement):
1219         * html/MediaDocument.cpp:
1220         (WebCore::MediaDocumentParser::createDocumentStructure):
1221         (WebCore::descendentVideoElement):
1222         (WebCore::ancestorVideoElement):
1223         * html/shadow/MediaControlElements.cpp:
1224         (WebCore::MediaControlTextTrackContainerElement::updateDisplay):
1225         * rendering/HitTestResult.cpp:
1226         (WebCore::HitTestResult::enterFullscreenForVideo):
1227         * rendering/RenderVideo.cpp:
1228         (WebCore::RenderVideo::videoElement):
1229
1230 2013-07-13  Commit Queue  <commit-queue@webkit.org>
1231
1232         Unreviewed, rolling out r151978.
1233         http://trac.webkit.org/changeset/151978
1234         https://bugs.webkit.org/show_bug.cgi?id=118651
1235
1236         Caused regressions at least 3 websites (Requested by rniwa on
1237         #webkit).
1238
1239         * bindings/js/JSDOMBinding.cpp:
1240         * bindings/js/JSDOMBinding.h:
1241         * bindings/scripts/CodeGeneratorJS.pm:
1242         (GetNativeTypeFromSignature):
1243         (JSValueToNative):
1244         * bindings/scripts/IDLAttributes.txt:
1245         * bindings/scripts/test/JS/JSTestObj.cpp:
1246         (WebCore::setJSTestObjReflectedStringAttr):
1247         (WebCore::setJSTestObjReflectedURLAttr):
1248         (WebCore::setJSTestObjReflectedCustomURLAttr):
1249         * dom/Document.idl:
1250         * dom/Element.idl:
1251         * dom/Node.idl:
1252
1253 2013-07-13  Joone Hur  <joone.hur@intel.com>
1254
1255         Caret should respect text background color
1256         https://bugs.webkit.org/show_bug.cgi?id=117493
1257
1258         Reviewed by Ryosuke Niwa.
1259
1260         This patch allows the caret to become visible in the black background
1261         by getting the caret color from the color of the element containing
1262         the text, not the parent element that has the contentEditable attribute.
1263
1264         Test: editing/caret/caret-color.html
1265
1266         * editing/FrameSelection.cpp:
1267         (WebCore::CaretBase::paintCaret):
1268
1269 2013-07-13  Ryosuke Niwa  <rniwa@webkit.org>
1270
1271         Avoid upconverting strings in various places in WebCore
1272         https://bugs.webkit.org/show_bug.cgi?id=118632
1273
1274         Reviewed by Andreas Kling.
1275
1276         Avoid calling String::characters() in various places since it upconverts 8-bit strings to 16-bit strings.
1277
1278         Merge
1279         https://chromium.googlesource.com/chromium/blink/+/a6162e2ad7c7870e22445d3c463d17e7ac871e80
1280         https://chromium.googlesource.com/chromium/blink/+/18095209b3f467758b83894e7b14f813f6953f81
1281         https://chromium.googlesource.com/chromium/blink/+/fefcf2b95d55f24c60fd2e95978cf4544f3c92ca
1282         https://chromium.googlesource.com/chromium/blink/+/8e0527b0fb33998318aedfd74b3511025f7ff294
1283         https://chromium.googlesource.com/chromium/blink/+/feaf798b04597b0849b4000fc305264895d3eac5
1284         https://chromium.googlesource.com/chromium/blink/+/bd1a49103a6e07b1023d2c742d8217769efbffb4
1285
1286         * css/CSSParser.cpp:
1287         (WebCore::CSSParser::setupParser):
1288         (WebCore::CSSParser::parseImageSet):
1289         (WebCore::CSSParser::rewriteSpecifiers):
1290         * css/CSSParserValues.h:
1291         (WebCore::CSSParserString::init):
1292         (WebCore::CSSParserString::clear):
1293         * dom/DatasetDOMStringMap.cpp:
1294         (WebCore::isValidAttributeName):
1295         (WebCore::convertAttributeNameToPropertyName):
1296         (WebCore::propertyNameMatchesAttributeName):
1297         (WebCore::isValidPropertyName):
1298         (WebCore::convertPropertyNameToAttributeName):
1299         * dom/Range.cpp:
1300         (WebCore::Range::toString):
1301         * dom/SecurityContext.cpp:
1302         (WebCore::SecurityContext::parseSandboxPolicy):
1303         * html/canvas/CanvasRenderingContext2D.cpp:
1304         (WebCore::CanvasRenderingContext2D::measureText):
1305         * html/track/TextTrackCue.cpp:
1306         (WebCore::TextTrackCue::markFutureAndPastNodes):
1307
1308 2013-07-13  Ryosuke Niwa  <rniwa@webkit.org>
1309
1310         parseHTMLInteger shouldn't upconvert 8-bit string
1311         https://bugs.webkit.org/show_bug.cgi?id=118629
1312
1313         Reviewed by Sam Weinig.
1314
1315         Merge https://chromium.googlesource.com/chromium/blink/+/e0ebab23e0c16b49dc90c9c39b8bbbf4f243a01e.
1316
1317         * html/parser/HTMLParserIdioms.cpp:
1318         (WebCore::parseHTMLInteger):
1319
1320 2013-07-12  Eric Carlson  <eric.carlson@apple.com>
1321
1322         [iOS] TextTrackRepresentation not cleared when captions are disabled
1323         https://bugs.webkit.org/show_bug.cgi?id=118623
1324
1325         Reviewed by Dean Jackson.
1326
1327         * html/shadow/MediaControlElements.cpp:
1328         (WebCore::MediaControlTextTrackContainerElement::updateDisplay): Do not return immediately
1329             when captions are disabled so the necessary cleanup happens.
1330
1331 2013-07-12  Brent Fulgham  <bfulgham@apple.com>
1332
1333         [Windows] Attempt to satisfy the Open Source Windows bots.
1334
1335         * DerivedSources.make: Restore the HAVE_AVCF macro detection.
1336         * config.h: Return to using HAVE_AVCF to activate AVFoundation code.
1337
1338 2013-07-12  peavo@outlook.com  <peavo@outlook.com>
1339
1340         [WinCairo] Compile fix.
1341         https://bugs.webkit.org/show_bug.cgi?id=118461
1342
1343         Reviewed by Brent Fulgham.
1344
1345         * config.h: Only enable AVFOUNDATION for Windows if CoreGraphics is used.
1346
1347 2013-07-12  Oleg Beletski  <oleg.beletski@gmail.com>
1348
1349         [EFL] --minimal build fails while linking libwebcore_efl.so
1350         https://bugs.webkit.org/show_bug.cgi?id=118549
1351
1352         Reviewed by Christophe Dumez.
1353
1354         * CMakeLists.txt:
1355         Moving file plugins/PluginPackage.cpp to ENABLE_NETSCAPE_PLUGIN_API block.
1356
1357 2013-07-12  Allan Sandfeld Jensen  <allan.jensen@digia.com>
1358
1359         Insufficient viewport repaints when FrameView::paintsEntireContents
1360         https://bugs.webkit.org/show_bug.cgi?id=118562
1361
1362         Reviewed by Simon Fraser.
1363
1364         When the frameview paints entire content, the visualOverflowRect of RenderView
1365         should be the same as the layoutOverflowRect.
1366
1367         This affects the requested repaints on resize of the frameview.
1368
1369         * rendering/RenderView.cpp:
1370         (WebCore::RenderView::visualOverflowRect):
1371         * rendering/RenderView.h:
1372
1373 2013-07-10  Roger Fong  <roger_fong@apple.com>
1374
1375         Plugins that don't support snapshotting should not all autostart.
1376         https://bugs.webkit.org/show_bug.cgi?id=118572
1377         <rdar://problem/14324391>.
1378
1379         Reviewed by Dean Jackson.
1380
1381         Test: plugins/snapshotting/quicktime-plugin-snapshotted.html
1382
1383         * html/HTMLPlugInImageElement.cpp:
1384         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Pass in information about whether or not a snapshot exists
1385         to the shadow dom.
1386         * plugins/PluginViewBase.h:
1387         (WebCore::PluginViewBase::shouldNotAddLayer): This method determines whether or not we should add the plugin's layer to the tree.
1388         It should not be added if the plugin is in it's snapshotted state but does not actually support snapshotting.
1389         * rendering/RenderLayerBacking.cpp:
1390         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): We should only add the layer to the tree when the plugin
1391         is actually playing. Otherwise we run into an issue where the contents of the layer initially appear on the screen briefly 
1392         on page load before we display the substitute for a plugin that doesn't support snapshotting.
1393
1394 2013-07-11  Dan Bernstein  <mitz@apple.com>
1395
1396         [mac] No API for getting the page visibility state of a WebView
1397         https://bugs.webkit.org/show_bug.cgi?id=118578
1398
1399         Reviewed by Simon Fraser.
1400
1401         * WebCore.exp.in: Export WebCore::Page::visibilityState().
1402
1403 2013-07-11  Mario Sanchez Prada  <mario.prada@samsung.com>
1404
1405         [GTK] Layout Test accessibility/deleting-iframe-destroys-axcache.html, platform/gtk/accessibility/replaced-objects-in-anonymous-blocks.html are failing
1406         https://bugs.webkit.org/show_bug.cgi?id=118552
1407
1408         Reviewed by Chris Fleizach.
1409
1410         Do not assume always that we have a RenderText renderer when
1411         calling to toRenderText(), since we might be executing that part
1412         of the code due to have requested to include all the children.
1413
1414         * accessibility/AccessibilityRenderObject.cpp:
1415         (WebCore::AccessibilityRenderObject::textUnderElement): Add
1416         missing guard for RenderText, needed after r152537.
1417
1418 2013-07-11  Andrei Bucur  <abucur@adobe.com>
1419
1420         [CSS Regions] In a region chain with auto-height regions, lines get their length based only on the first region
1421         https://bugs.webkit.org/show_bug.cgi?id=118531
1422
1423         Reviewed by Alexandru Chiculita.
1424
1425         When computing the height a flow thread it's possible to overflow the maximum LayoutUnit and obtain a negative value.
1426         This leads to invalid results during layout when computing the region range and the RenderBoxRegion info for the
1427         descendant boxes of the flow thread.
1428     
1429         This issue appears especially during the auto-height algorithm because it initializes the auto-height regions
1430         height with the LayoutUnit::max() / 2 value. Summing two such regions overflows and results in a negative value.
1431
1432         The fix clamps the maximum height of the flow thread to LayoutUnit::max() / 2. This doesn't affect the auto-height
1433         algorithm because regionAtBlockOffset() will still return the correct values as the auto-height regions content
1434         is established and their height updated.
1435
1436         Tests: fast/regions/autoheight-correct-region-for-lines-2.html
1437                fast/regions/autoheight-correct-region-for-lines.html
1438
1439         * rendering/RenderBlock.cpp:
1440         (WebCore::RenderBlock::updateRegionsAndShapesBeforeChildLayout):
1441         * rendering/RenderFlowThread.cpp:
1442         (WebCore::RenderFlowThread::computeLogicalHeight):
1443         (WebCore::RenderFlowThread::setRegionRangeForBox):
1444         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
1445         * rendering/RenderFlowThread.h:
1446         * rendering/RenderRegion.cpp:
1447         (WebCore::RenderRegion::maxPageLogicalHeight):
1448
1449 2013-07-11  Timothy Hatcher  <timothy@apple.com>
1450
1451         Revert r152267 and soft link WebInspectorUI.framework again.
1452
1453         https://bugs.webkit.org/show_bug.cgi?id=118544
1454
1455         Reviewed by David Kilzer.
1456
1457         * platform/mac/SoftLinking.h: Rename SOFT_LINK_STAGED_FRAMEWORK_OPTIONAL
1458         to SOFT_LINK_STAGED_FRAMEWORK and ASSERT since we don't want to silently
1459         fail anymore when using this macro.
1460
1461 2013-07-11  Jae Hyun Park  <jae.park@company100.net>
1462
1463         [Coordinated Graphics] Parameter of commitSceneState should be const
1464         https://bugs.webkit.org/show_bug.cgi?id=118564
1465
1466         Reviewed by Noam Rosenthal.
1467
1468         Parameter of commitSceneState should be const as there should not be any
1469         modifications to the passed CoordinatedGraphicsState.
1470
1471         * platform/graphics/texmap/coordinated/CompositingCoordinator.h:
1472
1473 2013-07-11  Radu Stavila  <stavila@adobe.com>
1474
1475         NamedFlowCollection getters should follow the same pattern as HTMLCollection
1476         https://bugs.webkit.org/show_bug.cgi?id=118561
1477
1478         Reviewed by Christophe Dumez.
1479
1480         Modified item and namedItem methods from DOMNamedFlowCollection to return null instead of undefined.
1481         https://www.w3.org/Bugs/Public/show_bug.cgi?id=22617
1482         Completely removed the TreatReturnedNullObjectAs attribute as it was only used by the DOMNamedFlowCollection interface.
1483
1484         Test: fast/regions/webkit-named-flow-collection-empty-getters.html
1485
1486         * bindings/scripts/CodeGeneratorJS.pm:
1487         (GenerateImplementationFunctionCall):
1488         * bindings/scripts/IDLAttributes.txt:
1489         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
1490         (WebDOMTestObj::treatReturnedNullObjectAsUndefined):
1491         * bindings/scripts/test/CPP/WebDOMTestObj.h:
1492         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
1493         (webkit_dom_test_obj_treat_returned_null_object_as_undefined):
1494         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
1495         * bindings/scripts/test/JS/JSTestObj.cpp:
1496         (WebCore::jsTestObjPrototypeFunctionTreatReturnedNullObjectAsUndefined):
1497         * bindings/scripts/test/JS/JSTestObj.h:
1498         * bindings/scripts/test/ObjC/DOMTestObj.h:
1499         * bindings/scripts/test/ObjC/DOMTestObj.mm:
1500         (-[DOMTestObj treatReturnedNullObjectAsUndefined]):
1501         * bindings/scripts/test/TestObj.idl:
1502         * dom/DOMNamedFlowCollection.idl:
1503
1504 2013-07-11  Andreas Kling  <akling@apple.com>
1505
1506         Revert r149313: Don't check for @media rules affected by viewport changes in every layout.
1507         <rdar://problem/14277905>
1508
1509         Rubber-stamped by Antti Koivisto.
1510
1511         This changed caused more harm than good. setFrameRect() is not the only path in FrameView
1512         that can cause media queries to need invalidation.
1513
1514         * page/FrameView.cpp:
1515         (WebCore::FrameView::setFrameRect):
1516         (WebCore::FrameView::layout):
1517
1518 2013-07-11  Kangil Han  <kangil.han@samsung.com>
1519
1520         Introduce isHTMLTitleElement and toHTMLTitleElement
1521         https://bugs.webkit.org/show_bug.cgi?id=118558
1522
1523         Reviewed by Andreas Kling.
1524
1525         To enhance readability, this patch introduces isHTMLTitleElement and toHTMLTitleElement.
1526         This also helps out to reduce duplicated use of static_cast.
1527
1528         * dom/Document.cpp:
1529         (WebCore::Document::setTitle):
1530         (WebCore::Document::removeTitle):
1531         * editing/ReplaceSelectionCommand.cpp:
1532         (WebCore::removeHeadContents):
1533         * html/HTMLTitleElement.h:
1534         (WebCore::isHTMLTitleElement):
1535         (WebCore::toHTMLTitleElement):
1536
1537 2013-07-11  Patrick Gansterer  <paroga@webkit.org>
1538
1539         Remove unused Windows CE files
1540         https://bugs.webkit.org/show_bug.cgi?id=118557
1541
1542         Reviewed by Andreas Kling.
1543
1544         * platform/wince/CursorWinCE.cpp: Removed.
1545         * platform/wince/PasteboardWinCE.cpp: Removed.
1546         * platform/wince/SearchPopupMenuWinCE.cpp: Removed.
1547
1548 2013-07-11  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1549
1550         Get rid of SVGPathSeg* special casing in the bindings generator
1551         https://bugs.webkit.org/show_bug.cgi?id=118525
1552
1553         Reviewed by Kentaro Hara.
1554
1555         Have one header per SVGPathSeg* type so that we no longer need special casing
1556         for them in the JSC bindings generator.
1557
1558         No new tests, no behavior change.
1559
1560         * GNUmakefile.list.am:
1561         * Target.pri:
1562         * WebCore.vcxproj/WebCore.vcxproj:
1563         * WebCore.vcxproj/WebCore.vcxproj.filters:
1564         * WebCore.xcodeproj/project.pbxproj:
1565         * bindings/js/JSSVGPathSegCustom.cpp:
1566         * bindings/scripts/CodeGeneratorJS.pm:
1567         (AddIncludesForType):
1568         (NativeToJSValue):
1569         * svg/SVGPathElement.cpp:
1570         * svg/SVGPathSegArc.h:
1571         * svg/SVGPathSegArcAbs.h: Added.
1572         (WebCore::SVGPathSegArcAbs::create):
1573         (WebCore::SVGPathSegArcAbs::SVGPathSegArcAbs):
1574         (WebCore::SVGPathSegArcAbs::pathSegType):
1575         (WebCore::SVGPathSegArcAbs::pathSegTypeAsLetter):
1576         * svg/SVGPathSegArcRel.h: Added.
1577         (WebCore::SVGPathSegArcRel::create):
1578         (WebCore::SVGPathSegArcRel::SVGPathSegArcRel):
1579         (WebCore::SVGPathSegArcRel::pathSegType):
1580         (WebCore::SVGPathSegArcRel::pathSegTypeAsLetter):
1581         * svg/SVGPathSegCurvetoCubic.h:
1582         * svg/SVGPathSegCurvetoCubicAbs.h: Added.
1583         (WebCore::SVGPathSegCurvetoCubicAbs::create):
1584         (WebCore::SVGPathSegCurvetoCubicAbs::SVGPathSegCurvetoCubicAbs):
1585         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegType):
1586         (WebCore::SVGPathSegCurvetoCubicAbs::pathSegTypeAsLetter):
1587         * svg/SVGPathSegCurvetoCubicRel.h: Added.
1588         (WebCore::SVGPathSegCurvetoCubicRel::create):
1589         (WebCore::SVGPathSegCurvetoCubicRel::SVGPathSegCurvetoCubicRel):
1590         (WebCore::SVGPathSegCurvetoCubicRel::pathSegType):
1591         (WebCore::SVGPathSegCurvetoCubicRel::pathSegTypeAsLetter):
1592         * svg/SVGPathSegCurvetoCubicSmooth.h:
1593         * svg/SVGPathSegCurvetoCubicSmoothAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h.
1594         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::create):
1595         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::SVGPathSegCurvetoCubicSmoothAbs):
1596         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegType):
1597         (WebCore::SVGPathSegCurvetoCubicSmoothAbs::pathSegTypeAsLetter):
1598         * svg/SVGPathSegCurvetoCubicSmoothRel.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoCubicSmooth.h.
1599         (WebCore::SVGPathSegCurvetoCubicSmoothRel::create):
1600         (WebCore::SVGPathSegCurvetoCubicSmoothRel::SVGPathSegCurvetoCubicSmoothRel):
1601         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegType):
1602         (WebCore::SVGPathSegCurvetoCubicSmoothRel::pathSegTypeAsLetter):
1603         * svg/SVGPathSegCurvetoQuadratic.h:
1604         * svg/SVGPathSegCurvetoQuadraticAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h.
1605         (WebCore::SVGPathSegCurvetoQuadraticAbs::create):
1606         (WebCore::SVGPathSegCurvetoQuadraticAbs::SVGPathSegCurvetoQuadraticAbs):
1607         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegType):
1608         (WebCore::SVGPathSegCurvetoQuadraticAbs::pathSegTypeAsLetter):
1609         * svg/SVGPathSegCurvetoQuadraticRel.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadratic.h.
1610         (WebCore::SVGPathSegCurvetoQuadraticRel::create):
1611         (WebCore::SVGPathSegCurvetoQuadraticRel::SVGPathSegCurvetoQuadraticRel):
1612         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegType):
1613         (WebCore::SVGPathSegCurvetoQuadraticRel::pathSegTypeAsLetter):
1614         * svg/SVGPathSegCurvetoQuadraticSmoothAbs.h: Copied from Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmooth.h.
1615         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::create):
1616         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::SVGPathSegCurvetoQuadraticSmoothAbs):
1617         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegType):
1618         (WebCore::SVGPathSegCurvetoQuadraticSmoothAbs::pathSegTypeAsLetter):
1619         * svg/SVGPathSegCurvetoQuadraticSmoothRel.h: Renamed from Source/WebCore/svg/SVGPathSegCurvetoQuadraticSmooth.h.
1620         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::create):
1621         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::SVGPathSegCurvetoQuadraticSmoothRel):
1622         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegType):
1623         (WebCore::SVGPathSegCurvetoQuadraticSmoothRel::pathSegTypeAsLetter):
1624         * svg/SVGPathSegLinetoAbs.h: Copied from Source/WebCore/svg/SVGPathSegLineto.h.
1625         (WebCore::SVGPathSegLinetoAbs::create):
1626         (WebCore::SVGPathSegLinetoAbs::SVGPathSegLinetoAbs):
1627         (WebCore::SVGPathSegLinetoAbs::pathSegType):
1628         (WebCore::SVGPathSegLinetoAbs::pathSegTypeAsLetter):
1629         * svg/SVGPathSegLinetoHorizontal.h:
1630         * svg/SVGPathSegLinetoHorizontalAbs.h: Copied from Source/WebCore/svg/SVGPathSegLinetoHorizontal.h.
1631         (WebCore::SVGPathSegLinetoHorizontalAbs::create):
1632         (WebCore::SVGPathSegLinetoHorizontalAbs::SVGPathSegLinetoHorizontalAbs):
1633         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegType):
1634         (WebCore::SVGPathSegLinetoHorizontalAbs::pathSegTypeAsLetter):
1635         * svg/SVGPathSegLinetoHorizontalRel.h: Copied from Source/WebCore/svg/SVGPathSegLinetoHorizontal.h.
1636         (WebCore::SVGPathSegLinetoHorizontalRel::create):
1637         (WebCore::SVGPathSegLinetoHorizontalRel::SVGPathSegLinetoHorizontalRel):
1638         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegType):
1639         (WebCore::SVGPathSegLinetoHorizontalRel::pathSegTypeAsLetter):
1640         * svg/SVGPathSegLinetoRel.h: Renamed from Source/WebCore/svg/SVGPathSegLineto.h.
1641         (WebCore::SVGPathSegLinetoRel::create):
1642         (WebCore::SVGPathSegLinetoRel::SVGPathSegLinetoRel):
1643         (WebCore::SVGPathSegLinetoRel::pathSegType):
1644         (WebCore::SVGPathSegLinetoRel::pathSegTypeAsLetter):
1645         * svg/SVGPathSegLinetoVertical.h:
1646         * svg/SVGPathSegLinetoVerticalAbs.h: Copied from Source/WebCore/svg/SVGPathSegLinetoVertical.h.
1647         (WebCore::SVGPathSegLinetoVerticalAbs::create):
1648         (WebCore::SVGPathSegLinetoVerticalAbs::SVGPathSegLinetoVerticalAbs):
1649         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegType):
1650         (WebCore::SVGPathSegLinetoVerticalAbs::pathSegTypeAsLetter):
1651         * svg/SVGPathSegLinetoVerticalRel.h: Copied from Source/WebCore/svg/SVGPathSegLinetoVertical.h.
1652         (WebCore::SVGPathSegLinetoVerticalRel::create):
1653         (WebCore::SVGPathSegLinetoVerticalRel::SVGPathSegLinetoVerticalRel):
1654         (WebCore::SVGPathSegLinetoVerticalRel::pathSegType):
1655         (WebCore::SVGPathSegLinetoVerticalRel::pathSegTypeAsLetter):
1656         * svg/SVGPathSegListBuilder.cpp:
1657         * svg/SVGPathSegMovetoAbs.h: Copied from Source/WebCore/svg/SVGPathSegMoveto.h.
1658         (WebCore::SVGPathSegMovetoAbs::create):
1659         (WebCore::SVGPathSegMovetoAbs::SVGPathSegMovetoAbs):
1660         (WebCore::SVGPathSegMovetoAbs::pathSegType):
1661         (WebCore::SVGPathSegMovetoAbs::pathSegTypeAsLetter):
1662         * svg/SVGPathSegMovetoRel.h: Renamed from Source/WebCore/svg/SVGPathSegMoveto.h.
1663         (WebCore::SVGPathSegMovetoRel::create):
1664         (WebCore::SVGPathSegMovetoRel::SVGPathSegMovetoRel):
1665         (WebCore::SVGPathSegMovetoRel::pathSegType):
1666         (WebCore::SVGPathSegMovetoRel::pathSegTypeAsLetter):
1667
1668 2013-07-11  Patrick Gansterer  <paroga@webkit.org>
1669
1670         Build fix for WinCE after r152426.
1671
1672         * config.h:
1673
1674 2013-07-11  Fabienne Semeria   <fsemeria@nds.com>
1675
1676         [Qt] memory leak in WebCore::FontCache::getLastResortFallbackFont
1677         https://bugs.webkit.org/show_bug.cgi?id=118532
1678
1679         Reviewed by Allan Sandfeld Jensen.
1680
1681         * platform/graphics/qt/FontCacheQt.cpp:
1682         (WebCore::FontCache::getLastResortFallbackFont):
1683
1684 2013-07-11  Mario Sanchez Prada  <mario.prada@samsung.com>
1685
1686         [ATK] Refactor code for translating offsets between WebCore a11y and ATK
1687         https://bugs.webkit.org/show_bug.cgi?id=118179
1688
1689         Reviewed by Chris Fleizach.
1690
1691         Encapsulate better and make more clear the translation of offsets
1692         between our ATK implementation and WebCore's accessibility layer.
1693
1694         Values for offsets can differ sometimes between those two worlds
1695         due to some extra flattening we need to do in ATK based ports to
1696         properly expose the accessibility hierarchy to ATs, which
1697         sometimes means adding extra text elements in the exposed text
1698         through the AtkText interface (e.g. list items markers).
1699
1700         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
1701         (offsetAdjustmentForListItem): Helper function to refactor code
1702         needed to translate offsets from WebCore to ATK worlds. Currently
1703         related to considering list item markers in LTR text only.
1704         (webCoreOffsetToAtkOffset): Convenience function for code
1705         readability purposes. It just calls offsetAdjustmentForListItem.
1706         (atkOffsetToWebCoreOffset): Likewise.
1707         (getSelectionOffsetsForObject): Use webCoreOffsetToAtkOffset.
1708         (webkitAccessibleTextGetCaretOffset): Use webCoreOffsetToAtkOffset
1709         to translate an offset from WebCore to ATK before returning it.
1710         (webkitAccessibleTextSetSelection): Use atkOffsetToWebCoreOffset
1711         to translate an offset from WebCore to ATK before using it.
1712         (webkitAccessibleTextSetCaretOffset): Likewise.
1713
1714 2013-07-10  Sam Weinig  <sam@webkit.org>
1715
1716         Range.getClientRects() not working correctly for partially contained vertically styled text nodes
1717         <rdar://problem/14305675>
1718         https://bugs.webkit.org/show_bug.cgi?id=118447
1719
1720         Reviewed by David Hyatt.
1721
1722         Original patch by Mac Murrett, tweaked by me.
1723
1724         Test: fast/dom/Range/getClientRects-vertical.html
1725
1726         * rendering/RenderText.cpp:
1727         (WebCore::localQuadForTextBox):
1728         Use the physical accessors rather than the logical ones to get the correct metrics.
1729
1730 2013-07-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1731
1732         Reduce number of header includes in SVG
1733         https://bugs.webkit.org/show_bug.cgi?id=118474
1734
1735         Reviewed by Rob Buis.
1736
1737         Reduce number of header includes in SVG. In particular, SVGAnimatedPropertyMacros.h
1738         no longer brings SVGElement.h header include. This means that the SVGElement
1739         class can now have animated properties.
1740
1741         This patch is a prerequirement to merge SVGStyledElement into SVGElement.
1742
1743         No new tests, no behavior change.
1744
1745         * CMakeLists.txt:
1746         * GNUmakefile.list.am:
1747         * Target.pri:
1748         * WebCore.vcxproj/WebCore.vcxproj:
1749         * WebCore.vcxproj/WebCore.vcxproj.filters:
1750         * WebCore.xcodeproj/project.pbxproj:
1751         * svg/GradientAttributes.h:
1752         * svg/SVGAllInOne.cpp:
1753         * svg/SVGAnimateMotionElement.cpp:
1754         * svg/SVGAnimateMotionElement.h:
1755         * svg/SVGAnimatedTypeAnimator.cpp: Added.
1756         (WebCore::SVGElementAnimatedProperties::SVGElementAnimatedProperties):
1757         (WebCore::SVGAnimatedTypeAnimator::SVGAnimatedTypeAnimator):
1758         (WebCore::SVGAnimatedTypeAnimator::~SVGAnimatedTypeAnimator):
1759         (WebCore::SVGAnimatedTypeAnimator::calculateFromAndToValues):
1760         (WebCore::SVGAnimatedTypeAnimator::calculateFromAndByValues):
1761         (WebCore::SVGAnimatedTypeAnimator::findAnimatedPropertiesForAttributeName):
1762         * svg/SVGAnimatedTypeAnimator.h:
1763         * svg/SVGAnimationElement.h:
1764         * svg/SVGCursorElement.cpp:
1765         * svg/SVGDocumentExtensions.h:
1766         * svg/SVGElement.cpp:
1767         * svg/SVGElementInstanceList.cpp:
1768         * svg/SVGElementInstanceList.h:
1769         * svg/SVGElementRareData.h:
1770         * svg/SVGFEImageElement.cpp:
1771         * svg/SVGFilterElement.cpp:
1772         * svg/SVGFitToViewBox.h:
1773         * svg/SVGFontData.cpp:
1774         * svg/SVGFontData.h:
1775         * svg/SVGFontElement.h:
1776         * svg/SVGForeignObjectElement.cpp:
1777         * svg/SVGGlyphMap.h:
1778         * svg/SVGGradientElement.cpp:
1779         * svg/SVGMPathElement.cpp:
1780         * svg/SVGMPathElement.h:
1781         * svg/SVGPathBlender.cpp:
1782         * svg/SVGPathBlender.h:
1783         * svg/SVGPathBuilder.cpp:
1784         * svg/SVGPathBuilder.h:
1785         * svg/SVGPathParser.cpp:
1786         * svg/SVGPathParser.h:
1787         * svg/SVGPathSegListBuilder.h:
1788         * svg/SVGPathTraversalStateBuilder.cpp:
1789         * svg/SVGPathTraversalStateBuilder.h:
1790         * svg/SVGPathUtilities.h:
1791         * svg/SVGPatternElement.cpp:
1792         * svg/SVGPointList.h:
1793         * svg/SVGScriptElement.cpp:
1794         * svg/SVGStyledElement.h:
1795         * svg/SVGTests.h:
1796         * svg/SVGTextElement.h:
1797         * svg/SVGTextPathElement.cpp:
1798         * svg/SVGTransformable.h:
1799         * svg/SVGURIReference.cpp:
1800         * svg/SVGURIReference.h:
1801         * svg/SVGVKernElement.cpp:
1802         * svg/SVGVKernElement.h:
1803         * svg/SVGZoomAndPan.h:
1804         * svg/properties/SVGAnimatedProperty.cpp: Added.
1805         (WebCore::SVGAnimatedProperty::SVGAnimatedProperty):
1806         (WebCore::SVGAnimatedProperty::~SVGAnimatedProperty):
1807         (WebCore::SVGAnimatedProperty::commitChange):
1808         (WebCore::SVGAnimatedProperty::animatedPropertyCache):
1809         * svg/properties/SVGAnimatedProperty.h:
1810         * svg/properties/SVGAnimatedPropertyMacros.h:
1811         (WebCore::SVGSynchronizableAnimatedProperty::synchronize):
1812         * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
1813         * svg/properties/SVGListProperty.h:
1814
1815 2013-07-10  Dominique Leuenberger  <dimstar@opensuse.org>
1816
1817         Fix build against GTK+ 2.0
1818         https://bugs.webkit.org/show_bug.cgi?id=117895
1819
1820         Reviewed by Martin Robinson.
1821
1822         GTK2 build fails for undefined GDK_IS_X11_DISPLAY
1823         GTK 2.0 does define GDK_WINDOWING_X11,but GDK_IS_X11_DISPLAY is not
1824         present in GTK+ 2.0. A dummy defines is sufficient, as GTK 2.0 is not
1825         that multiple backend aware anyway...
1826
1827         * platform/gtk/GtkVersioning.h: Define GDK_IS_X11_DISPLAY for GTK+ 2.0
1828           and compatibility for gtk_widget_get_preferred_size()
1829         * plugins/gtk/gtk2xtbin.c: Include config.h
1830
1831 2013-07-10  Tim Horton  <timothy_horton@apple.com>
1832
1833         Deferring layer flushes can cause painting without layout being done
1834         https://bugs.webkit.org/show_bug.cgi?id=118493
1835
1836         Reviewed by Simon Fraser.
1837
1838         r147797 added a mechanism for the TileController to inform RenderLayerCompositor
1839         that it had performed an action (setNeedsDisplay, etc.) that would cause CoreAnimation
1840         to call back into us to paint in this runloop, and that it shouldn't throttle the next
1841         layer flush.
1842
1843         However, if tiles were created and left unparented (because the TileController was
1844         out-of-window), when they are later parented, we failed to inform RenderLayerCompositor
1845         that they were about to call back for painting, and so it would happily throttle the
1846         next layer flush, and layout would be out of date, and garbage and corruption could result.
1847
1848         To resolve this, rework the logic surrounding parenting existing-but-unparented tiles
1849         to ensure that they get added to the TileController's dirtyRect.
1850
1851         No new tests; the bug only reproduces under specific timing circumstances, and
1852         manifests itself as an assertion failure or garbage on the screen, so it's quite
1853         hard to make a workable test.
1854
1855         * platform/graphics/ca/mac/TileController.mm:
1856         (WebCore::TileController::revalidateTiles):
1857         - Factor out the code to parent unparented tiles so that it is shared between the
1858             created-new-tile and reparenting-existing-tile cases.
1859         - Keep track of whether we updated the frame of a pre-existing tile.
1860         - If the tile is dirty and needed to be parented (because either it's new
1861             or hadn't been parented before), add it to the dirty rect list.
1862         - If the tile changed size, add it to the dirty rect list.
1863
1864         (WebCore::TileController::ensureTilesForRect):
1865         Ditto everything from revalidateTiles.
1866
1867         (WebCore::TileController::createTileLayer):
1868         - Explicitly mark fresh tiles as needing display, so that we can depend on
1869             [WebTileLayer needsDisplay] in revalidateTiles to tell us that it's dirty.
1870
1871 2013-07-10  Eric Carlson  <eric.carlson@apple.com>
1872
1873         [Mac] every enabled text track should be listed in the track menu
1874         https://bugs.webkit.org/show_bug.cgi?id=118477
1875
1876         Reviewed by Jer Noble.
1877
1878         Test: media/video-controls-captions-trackmenu-includes-enabled-track.html
1879
1880         * html/shadow/MediaControlElements.cpp:
1881         (WebCore::MediaControlClosedCaptionsTrackListElement::updateDisplay): Don't select the
1882             "Off" menu item if a track is enabled.
1883
1884         * page/CaptionUserPreferencesMediaAF.cpp:
1885         (WebCore::CaptionUserPreferencesMediaAF::sortedTrackListForMenu): Always include a track
1886             that is showing in the menu. Add more diagnostic logging.
1887
1888 2013-07-10  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1889
1890         Remove ElementTimeControl and expose SVGAnimationElement
1891         https://bugs.webkit.org/show_bug.cgi?id=118349
1892
1893         Reviewed by Rob Buis.
1894
1895         Remove ElementTimeControl IDL interface and move its attributes
1896         to the SVGAnimationElement IDL interface as per the latest SVG2
1897         specification:
1898         https://svgwg.org/svg2-draft/animate.html#InterfaceSVGAnimationElement
1899
1900         Also remove [NoInterfaceObject] IDL extended attribute from
1901         SVGAnimationElement as it is not present in the specification.
1902
1903         This is one step towards removing IDL multiple inheritance in SVG and
1904         complying with the latest SVG2 specification.
1905
1906         No new tests, covered by existing test cases.
1907
1908         * DerivedSources.make:
1909         * GNUmakefile.list.am:
1910         * WebCore.vcxproj/WebCore.vcxproj:
1911         * WebCore.vcxproj/WebCore.vcxproj.filters:
1912         * WebCore.xcodeproj/project.pbxproj:
1913         * bindings/scripts/CodeGeneratorObjC.pm:
1914         * svg/ElementTimeControl.h: Removed.
1915         * svg/ElementTimeControl.idl: Removed.
1916         * svg/SVGAnimationElement.h:
1917         * svg/SVGAnimationElement.idl:
1918
1919 2013-07-10  Arnaud Renevier  <a.renevier@sisa.samsung.com>
1920
1921         Web Inspector: "Always enable" profiling does not work
1922         https://bugs.webkit.org/show_bug.cgi?id=118487
1923
1924         Enable profiler when loading panel if profiler is enabled in inspector
1925         settings.
1926
1927         Reviewed by Timothy Hatcher.
1928
1929         * inspector/front-end/ProfilesPanel.js:
1930
1931 2013-07-09  Roger Fong  <roger_fong@apple.com>
1932
1933         HTMLPluginElement's state should be Playing before firing mouse click event.
1934         https://bugs.webkit.org/show_bug.cgi?id=118398.
1935         <rdar://problem/14262126>
1936
1937         Reviewed by Dean Jackson.
1938
1939         Test: plugins/snapshotting/plugin-receives-click-event.html
1940
1941         * html/HTMLPlugInImageElement.cpp:
1942         (WebCore::HTMLPlugInImageElement::simulatedMouseClickTimerFired):
1943         The defaultEventHandler returns early if the state is not Playing.
1944         This is because we only want the plugin to deal with user interaction normally if the
1945         plugin is actually enabled (not being snapshotted).
1946         When we click on the snapshotted plugin to start it, we mimic what would happen to the plugin
1947         normally by dispatching another click event on top of where we just clicked.
1948         However, we were sending the click event before setting the state to Playing which meant that our
1949         simulated click was not being handled. 
1950         We should be setting this state before sending the click, not after.
1951
1952 2013-07-10  Nick Diego Yamane  <nick.yamane@openbossa.org>
1953
1954         Fix a bug in MediaStreamDescriptor::removeVideoComponent
1955         https://bugs.webkit.org/show_bug.cgi?id=118446
1956
1957         Reviewed by Eric Carlson.
1958
1959         MediaStreamDescriptor::removeVideoComponent is currently trying to
1960         remove the 'videoComponent' from the wrong vector.
1961
1962         * platform/mediastream/MediaStreamDescriptor.h:
1963         (WebCore::MediaStreamDescriptor::removeVideoComponent):
1964
1965 2013-07-10  Mario Sanchez Prada  <mario.prada@samsung.com>
1966
1967         AX: Allow requesting the full plain text for an object with textUnderElement()
1968         https://bugs.webkit.org/show_bug.cgi?id=105214
1969
1970         Reviewed by Chris Fleizach.
1971
1972         Allow specifying different function modes for textUnderElement(),
1973         so we can effectively ask for the "normal" result (e.g to retrieve
1974         test to be exposed as the 'title') or for the full text under the
1975         element (without omitting any child in the subtree). This is
1976         needed for the implementation of atk_text_get_text() in GTK/EFL.
1977
1978         * accessibility/AccessibilityObject.h: Add new enumeration to
1979         specify the different modes for textUnderElement().
1980         (WebCore::AccessibilityObject::textUnderElement): Added parameter.
1981
1982         * accessibility/AccessibilityNodeObject.cpp:
1983         (WebCore::shouldUseAccessiblityObjectInnerText): Always return
1984         'true' when using the "include all children" mode.
1985         (WebCore::AccessibilityNodeObject::textUnderElement): Updated call
1986         to shouldUseAccessiblityObjectInnerText().
1987         * accessibility/AccessibilityNodeObject.h:
1988
1989         * accessibility/AccessibilityRenderObject.cpp:
1990         (WebCore::AccessibilityRenderObject::textUnderElement): Removed
1991         GTK specific code and expand the usage of text iterators beyond
1992         text render objects, using it also when in the "include all
1993         children" mode.
1994         * accessibility/AccessibilityRenderObject.h:
1995
1996         * accessibility/atk/AccessibilityObjectAtk.cpp:
1997         (WebCore::AccessibilityObject::getLengthForTextRange): Updated
1998         call to textUnderElement(), preserving the previous behavior.
1999
2000         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2001         (webkitAccessibleTextGetText): Updated call to textUnderElement(),
2002         using the "include all children" mode.
2003
2004 2013-07-10  Sergio Correia  <sergio.correia@openbossa.org>
2005
2006         Remove the meshType from CoordinatedCustomFilterOperation
2007         https://bugs.webkit.org/show_bug.cgi?id=118529
2008
2009         Reviewed by Noam Rosenthal.
2010
2011         Following the removal of the meshType from CustomFilterOperation in r149153,
2012         remove also the meshType from CoordinatedCustomFilterOperation.
2013
2014         No new tests, no new functionality.
2015
2016         * platform/graphics/texmap/coordinated/CoordinatedCustomFilterOperation.h:
2017         (WebCore::CoordinatedCustomFilterOperation::create): Remove unused meshType parameter.
2018         (WebCore::CoordinatedCustomFilterOperation::CoordinatedCustomFilterOperation): Ditto.
2019  Ditto.
2020 2013-07-10  James Craig  <james@cookiecrook.com>
2021
2022         AX: AccessibilityNodeObject::supportsRequiredAttribute() should switch on CellRole
2023         https://bugs.webkit.org/show_bug.cgi?id=117817
2024
2025         Reviewed by Chris Fleizach.
2026
2027         CellRole supports the required attribute now for accessibility, according to ARIA spec. 
2028         Updated existing test coverage.
2029
2030         * accessibility/AccessibilityNodeObject.cpp:
2031         (WebCore::AccessibilityNodeObject::supportsRequiredAttribute):
2032
2033 2013-07-10  Csaba Osztrogonác  <ossy@webkit.org>
2034
2035         REGRESSION(r151957): WebGL textures do not show
2036         https://bugs.webkit.org/show_bug.cgi?id=118464
2037
2038         Reviewed by Christophe Dumez.
2039
2040         After r151957 decoder.frameIsCompleteAtIndex(0) doesn't trigger image decoding,
2041         we have to call decoder.createFrameAtIndex(0) explicitly to ensure it.
2042
2043         * platform/graphics/cairo/GraphicsContext3DCairo.cpp:
2044         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2045         * platform/graphics/efl/GraphicsContext3DEfl.cpp:
2046         (WebCore::GraphicsContext3D::ImageExtractor::extractImage):
2047
2048 2013-07-10  Karol Świniarski  <k.swiniarsk2@samsung.com>
2049
2050         Change recently ratified extensions prefixes from WEBKIT_WEBGL_ to WEBGL_
2051         https://bugs.webkit.org/show_bug.cgi?id=117786
2052
2053         Reviewed by Dean Jackson.
2054
2055         According to WebGL's revision 10, extensions should be named: WEBGL_lose_context,
2056         WEBGL_depth_texture, WEBGL_compressed_texture_s3tc.
2057
2058         No new tests. Covered by existing tests:
2059         LayoutTests/webgl/conformance/extensions/get-extension.html
2060         LayoutTests/webgl/conformance/context/context-lost.html
2061         LayoutTests/webgl/conformance/extensions/webgl-depth-texture.html
2062         LayoutTests/webgl/conformance/extensions/webgl-compressed-texture-s3tc.html
2063
2064         * html/canvas/WebGLRenderingContext.cpp:
2065         (WebCore::WebGLRenderingContext::getExtension):
2066         (WebCore::WebGLRenderingContext::getSupportedExtensions):
2067
2068 2013-07-09  Byungwoo Lee  <bw80.lee@samsung.com>
2069
2070         Unreviewed build fix.
2071
2072         * svg/SVGImageElement.cpp:
2073         (WebCore::SVGImageElement::SVGImageElement):
2074
2075 2013-07-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2076
2077         Introduce isSVGFontElement() and isSVGImageElement(), use them
2078         https://bugs.webkit.org/show_bug.cgi?id=118504
2079
2080         Reviewed by Benjamin Poulain.
2081
2082         Let's use isFoo() to enhance readibility in svg element classes along with html's.
2083
2084         No new tests, there is no behavior changes.
2085
2086         * loader/cache/CachedFont.cpp:
2087         (WebCore::CachedFont::getSVGFontById):
2088         * rendering/HitTestResult.cpp:
2089         (WebCore::HitTestResult::absoluteImageURL):
2090         * svg/SVGAnimateMotionElement.cpp:
2091         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
2092         * svg/SVGElement.cpp:
2093         (WebCore::SVGElement::viewportElement):
2094         * svg/SVGFontElement.cpp:
2095         (WebCore::SVGFontElement::SVGFontElement):
2096         * svg/SVGFontElement.h:
2097         (WebCore::toSVGFontElement):
2098         (WebCore::isSVGFontElement):
2099         * svg/SVGFontFaceElement.cpp:
2100         (WebCore::SVGFontFaceElement::associatedFontElement):
2101         (WebCore::SVGFontFaceElement::rebuildFontFace):
2102         * svg/SVGGlyphElement.cpp:
2103         (WebCore::SVGGlyphElement::invalidateGlyphCache):
2104         * svg/SVGHKernElement.cpp:
2105         (WebCore::SVGHKernElement::insertedInto):
2106         (WebCore::SVGHKernElement::removedFrom):
2107         * svg/SVGImageElement.cpp:
2108         (WebCore::SVGImageElement::SVGImageElement):
2109         * svg/SVGImageElement.h:
2110         (WebCore::toSVGImageElement):
2111         (WebCore::isSVGImageElement):
2112         * svg/SVGLocatable.cpp:
2113         (WebCore::isViewportElement):
2114         * svg/SVGVKernElement.cpp:
2115         (WebCore::SVGVKernElement::insertedInto):
2116         (WebCore::SVGVKernElement::removedFrom):
2117
2118 2013-07-09  Ryuan Choi  <ryuan.choi@samsung.com>
2119
2120         [EFL] Add ewk_view_device_pixel_ratio_set
2121         https://bugs.webkit.org/show_bug.cgi?id=118521
2122
2123         Reviewed by Gyuyoung Kim.
2124
2125         No new tests, covered by existing tests.
2126
2127         * dom/ViewportArguments.cpp: Remove PLATFORM(EFL) not to use deprecatedTargetDPI
2128         * dom/ViewportArguments.h: Ditto.
2129         * platform/efl/EflScreenUtilities.cpp: Removed getDPI() which is not used anymore.
2130         * platform/efl/EflScreenUtilities.h: Ditto.
2131
2132 2013-07-09  James Craig  <james@cookiecrook.com>
2133
2134         @readonly and @aria-readonly="false" are not exposed correctly to accessibility
2135         https://bugs.webkit.org/show_bug.cgi?id=118475
2136
2137         Reviewed by Chris Fleizach.
2138
2139         Account for implicit and explicit @readonly/@aria-readonly mismatches. Updated existing test coverage.
2140
2141         * accessibility/AccessibilityRenderObject.cpp:
2142         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
2143
2144 2013-07-09  Jer Noble  <jer.noble@apple.com>
2145
2146         Reviewed by Simon Fraser.
2147
2148         Remember the scroll position and restore after exiting full-screen mode.
2149         https://bugs.webkit.org/show_bug.cgi?id=61956
2150
2151         No new tests, adds a client callback used by WebKit and WebKit2 win.
2152
2153         * platform/graphics/win/FullScreenController.cpp:
2154         (FullScreenController::enterFullScreen):
2155         (FullScreenController::exitFullScreen):
2156         * platform/graphics/win/FullScreenControllerClient.h:
2157
2158 2013-07-09  Jeff Miller  <jeffm@apple.com>
2159
2160         AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate in WebCore::mac()
2161         https://bugs.webkit.org/show_bug.cgi?id=118518
2162
2163         Reviewed by Alexey Proskuryakov.
2164
2165         * platform/network/mac/AuthenticationMac.mm:
2166         (WebCore::mac):
2167         Map ProtectionSpaceAuthenticationSchemeNegotiate to NSURLAuthenticationMethodNegotiate.
2168
2169 2013-07-09  Jeff Miller  <jeffm@apple.com>
2170
2171         AuthenticationMac.mm does not handle NSURLAuthenticationMethodNegotiate
2172         https://bugs.webkit.org/show_bug.cgi?id=118517
2173
2174         Reviewed by Brady Eidson.
2175
2176         * platform/network/mac/AuthenticationMac.mm:
2177         (WebCore::core):
2178         Map "NSURLAuthenticationMethodNegotiate" to ProtectionSpaceAuthenticationSchemeNegotiate.
2179
2180 2013-07-09  peavo@outlook.com  <peavo@outlook.com>
2181
2182         [Windows] Compile fix.
2183         https://bugs.webkit.org/show_bug.cgi?id=106558
2184
2185         Reviewed by Brent Fulgham.
2186
2187         On Windows, dispatch.h needs to be included before certain CFNetwork headers.
2188
2189         * WebCorePrefix.h: Include dispatch.h.
2190
2191 2013-07-09  Mark Lam  <mark.lam@apple.com>
2192
2193         Fix 30% JSBench regression (caused by adding column numbers to stack traces).
2194         https://bugs.webkit.org/show_bug.cgi?id=118481.
2195
2196         Reviewed by Mark Hahnenberg and Geoffrey Garen.
2197
2198         Test: fast/js/line-column-numbers.html
2199
2200         Updated the bindings to use StackFrame::computeLineAndColumn(). The old
2201         StackFrame::line() and StackFrame::column() has been removed. The new
2202         algorithm always computes the 2 values together anyway. Hence it is more
2203         efficient to return them as a pair instead of doing the same computation
2204         twice for each half of the result.
2205
2206         * bindings/js/ScriptCallStackFactory.cpp:
2207         (WebCore::createScriptCallStack):
2208         (WebCore::createScriptCallStackFromException):
2209         * bindings/js/ScriptSourceCode.h:
2210         (WebCore::ScriptSourceCode::ScriptSourceCode):
2211
2212 2013-07-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2213
2214         Use toSVGFontElement() instead of static_cast<SVGFontElement*>
2215         https://bugs.webkit.org/show_bug.cgi?id=118496
2216
2217         Reviewed by Andreas Kling.
2218
2219         As a step to change static_cast with toXXX, static_cast<SVGFontElement*> can
2220         be changed with toSVGFontElement().
2221
2222         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153761
2223
2224         * svg/SVGFontElement.h:
2225         (WebCore::toSVGFontElement):
2226         * svg/SVGFontFaceElement.cpp:
2227         (WebCore::SVGFontFaceElement::rebuildFontFace):
2228         * svg/SVGGlyphElement.cpp:
2229         (WebCore::SVGGlyphElement::invalidateGlyphCache):
2230         * svg/SVGHKernElement.cpp:
2231         (WebCore::SVGHKernElement::insertedInto):
2232         (WebCore::SVGHKernElement::removedFrom):
2233         * svg/SVGVKernElement.cpp:
2234         (WebCore::SVGVKernElement::insertedInto):
2235         (WebCore::SVGVKernElement::removedFrom):
2236
2237 2013-07-09  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2238
2239         Remove support for [PassThisToCallback] extended attribute
2240         https://bugs.webkit.org/show_bug.cgi?id=118391
2241
2242         Reviewed by Kentaro Hara.
2243
2244         The [PassThisToCallback] Webkit-specific IDL extended attribute is supported
2245         by the JSC bindings generator but is no longer used. The attribute is not
2246         even documented.
2247
2248         We can therefore drop support for this from the generator to simplify the
2249         code.
2250
2251         No new tests, no behavior change.
2252
2253         * bindings/scripts/CodeGeneratorJS.pm:
2254         (GenerateCallbackImplementation):
2255         * bindings/scripts/IDLAttributes.txt:
2256         * bindings/scripts/test/JS/JSTestCallback.cpp:
2257         (WebCore::JSTestCallback::callbackRequiresThisToPass):
2258         * bindings/scripts/test/TestCallback.idl:
2259
2260 2013-07-09  Praveen R Jadhav  <praveen.j@samsung.com>
2261
2262         Update Exception handling in WebAudio.
2263         https://bugs.webkit.org/show_bug.cgi?id=118405.
2264
2265         Reviewed by Chris Rogers.
2266
2267         AudioBufferSourceNode, OscillatorNode and AnalyserNode don't
2268         propagate exception mentioned in WebAudio spec.
2269         Code updated to throw DOM exception as expected.
2270
2271         Tests: webaudio/analyser-exception.html
2272                webaudio/audiobuffersource-exception.html
2273
2274         * Modules/webaudio/AnalyserNode.cpp:
2275         (WebCore::AnalyserNode::setFftSize):
2276         (WebCore::AnalyserNode::setMinDecibels):
2277         (WebCore::AnalyserNode::setMaxDecibels):
2278         (WebCore::AnalyserNode::setSmoothingTimeConstant):
2279         * Modules/webaudio/AnalyserNode.h:
2280         * Modules/webaudio/AnalyserNode.idl:
2281         * Modules/webaudio/AudioBufferSourceNode.cpp:
2282         (WebCore::AudioBufferSourceNode::startGrain):
2283         (WebCore::AudioBufferSourceNode::noteGrainOn):
2284         * Modules/webaudio/AudioBufferSourceNode.h:
2285         * Modules/webaudio/AudioBufferSourceNode.idl:
2286         * Modules/webaudio/AudioContext.cpp:
2287         (WebCore::AudioContext::createBuffer):
2288         (WebCore::AudioContext::createScriptProcessor):
2289         (WebCore::AudioContext::createPeriodicWave):
2290         * Modules/webaudio/AudioScheduledSourceNode.cpp:
2291         (WebCore::AudioScheduledSourceNode::start):
2292         (WebCore::AudioScheduledSourceNode::stop):
2293         (WebCore::AudioScheduledSourceNode::noteOn):
2294         (WebCore::AudioScheduledSourceNode::noteOff):
2295         * Modules/webaudio/AudioScheduledSourceNode.h:
2296         * Modules/webaudio/OscillatorNode.idl:
2297
2298 2013-07-08  Martin Robinson  <mrobinson@igalia.com>
2299
2300         [CSS Grid Layout] Rename grid-{rows|columns} to grid-definition-{rows|columns}
2301         https://bugs.webkit.org/show_bug.cgi?id=103336
2302
2303         Reviewed by Tony Chang.
2304
2305         Rename -webkit-grid-{rows|columns} to -webkit-grid-definition-{rows|columns}.
2306         The latest version of the spec has renamed these properties.
2307
2308         * css/CSSComputedStyleDeclaration.cpp:
2309         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Handle the new names.
2310         * css/CSSParser.cpp:
2311         (WebCore::CSSParser::parseValue): Ditto.
2312         * css/CSSProperty.cpp:
2313         (WebCore::CSSProperty::isInheritedProperty): Ditto.
2314         * css/CSSPropertyNames.in: Add support for the new names.
2315         * css/StyleResolver.cpp:
2316         (WebCore::StyleResolver::applyProperty): Handle the new names.
2317
2318 2013-07-08  Enrica Casucci  <enrica@apple.com>
2319
2320         DeleteSelectionCommand does not handle correctly deletion with two consecutive BR element.
2321         https://bugs.webkit.org/show_bug.cgi?id=118457
2322         <rdar://problem/14160912>
2323
2324         Reviewed by Simon Fraser.
2325
2326         In DeleteSelectionCommand::handleSpecialCareBRDelete we did not
2327         handle correctly the case where we had <br><br> in the markup and
2328         nothing was being deleted. We should consider this like
2329         the case where the <br> is on the line by itself and remove it.
2330
2331         Test: editing/deleting/delete-image-followed-by-two-br.html
2332
2333         * editing/DeleteSelectionCommand.cpp:
2334         (WebCore::DeleteSelectionCommand::handleSpecialCaseBRDelete):
2335
2336 2013-07-08  Radu Stavila  <stavila@adobe.com>
2337
2338         NamedFlowCollection getters should return undefined when there's no NamedFlow
2339         https://bugs.webkit.org/show_bug.cgi?id=118463
2340
2341         Reviewed by Christophe Dumez.
2342
2343         Added new TreatReturnedNullObjectAs attribute for generated methods and set it to Undefined
2344         for the item and namedItem methods of DOMNamedFlowCollection.
2345
2346         Test: fast/regions/webkit-named-flow-collection-undefined.html
2347
2348         * bindings/scripts/CodeGeneratorJS.pm:
2349         (GenerateImplementationFunctionCall):
2350         * bindings/scripts/IDLAttributes.txt:
2351         * bindings/scripts/test/CPP/WebDOMTestObj.cpp:
2352         (WebDOMTestObj::treatReturnedNullObjectAsUndefined):
2353         * bindings/scripts/test/CPP/WebDOMTestObj.h:
2354         * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2355         (webkit_dom_test_obj_treat_returned_null_object_as_undefined):
2356         * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2357         * bindings/scripts/test/JS/JSTestObj.cpp:
2358         (WebCore::jsTestObjPrototypeFunctionTreatReturnedNullObjectAsUndefined):
2359         * bindings/scripts/test/JS/JSTestObj.h:
2360         * bindings/scripts/test/ObjC/DOMTestObj.h:
2361         * bindings/scripts/test/ObjC/DOMTestObj.mm:
2362         (-[DOMTestObj treatReturnedNullObjectAsUndefined]):
2363         * bindings/scripts/test/TestObj.idl:
2364         * dom/DOMNamedFlowCollection.idl:
2365
2366 2013-07-06 Changhun Kang <temoochin@company100.net>
2367
2368         Remove unused variables in FocusCandidate.
2369         https://bugs.webkit.org/show_bug.cgi?id=118449
2370
2371         Reviewed by Antonio Gomes.
2372
2373         The variables for parent in FocusCandidate are not used anymore.
2374
2375         No new tests. No change in behavior.
2376
2377         * page/SpatialNavigation.cpp:
2378         (WebCore::FocusCandidate::FocusCandidate):
2379         * page/SpatialNavigation.h:
2380         (WebCore::FocusCandidate::FocusCandidate):
2381
2382 2013-07-08  Chris Fleizach  <cfleizach@apple.com>
2383
2384         AX: iOS: SVG paths are not offset by the parent bounding box
2385         https://bugs.webkit.org/show_bug.cgi?id=118433
2386
2387         The path for SVG shapes is in terms of its parent's view space. We need to offset
2388         the path by that amount so that it's in the right location.
2389
2390         Reviewed by Tim Horton.
2391
2392         * accessibility/AccessibilityRenderObject.cpp:
2393         (WebCore::AccessibilityRenderObject::elementPath):
2394
2395 2013-07-08  Carlos Garcia Campos  <cgarcia@igalia.com>
2396
2397         Unreviewed. Fix make distcheck.
2398
2399         * GNUmakefile.list.am: Add missing header files.
2400
2401 2013-07-08  Ruth Fong  <ruth_fong@apple.com>
2402
2403         Fix TextTrackCue::cueIndex() to handle the null case of TextTrack::cues(() properly
2404         https://bugs.webkit.org/show_bug.cgi?id=117815
2405         <rdar://problem/14211041>
2406
2407         Reviewed by Eric Carlson.
2408
2409         Merge https://src.chromium.org/viewvc/blink?revision=153206&view=revision
2410         
2411         No new tests, only behavior change is preventing a crash in the release build.
2412         cueIndex() is only used for sorting cues, so returning an invalidCueIndex in the case
2413         where track()->cues() is null makes sense and won't modify behavior.
2414
2415         * html/track/TextTrackCue.cpp:
2416         (WebCore::TextTrackCue::cueIndex):
2417
2418 2013-07-08  Commit Queue  <commit-queue@webkit.org>
2419
2420         Unreviewed, rolling out r152416.
2421         http://trac.webkit.org/changeset/152416
2422         https://bugs.webkit.org/show_bug.cgi?id=118476
2423
2424         Wrong fix for the bug (Requested by ap on #webkit).
2425
2426         * platform/text/TextEncodingRegistry.cpp:
2427         (WebCore::newTextCodec):
2428
2429 2013-07-08  Andreas Kling  <akling@apple.com>
2430
2431         REGRESSION(r125294): A style rule with more than 8192 selectors can cause style corruption.
2432         <http://webkit.org/b/118369>
2433         <rdar://problem/14291428>
2434
2435         Reviewed by Antti Koivisto.
2436
2437         Add a semi-hard cap of 8192 selectors per CSS rule. Rules with longer selector lists will be split into
2438         multiple rules (with 8192 selectors per rule.) The style properties are shared behind the scenes
2439         so it's all pretty efficient.
2440
2441         This does generate a different CSSOM for gigantic selector lists, I've added a test to document this.
2442         Note that setting CSSStyleRule.selectorText with over 8192 selectors will now fail, the splitting into
2443         multiple rules only happens when parsing full style sheets.
2444
2445         Test: fast/css/rule-selector-overflow.html
2446
2447         * css/CSSSelectorList.cpp:
2448         (WebCore::CSSSelectorList::selectorCount):
2449
2450             Add a helper to count the number of selectors in a list (not the number of raw selector components.)
2451
2452         * css/RuleSet.h:
2453         * css/CSSStyleRule.cpp:
2454         (WebCore::CSSStyleRule::setSelectorText):
2455
2456             Add RuleData::maximumSelectorCount constant and cap CSSStyleRule.selectorText to that many selectors.
2457
2458         * css/CSSSelectorList.h:
2459         (WebCore::CSSSelectorList::adoptSelectorArray):
2460         * css/StyleRule.cpp:
2461         (WebCore::StyleRule::create):
2462         (WebCore::StyleRule::splitIntoMultipleRulesWithMaximumSelectorCount):
2463         * css/StyleRule.h:
2464         (WebCore::StyleRule::parserAdoptSelectorArray):
2465         * css/StyleSheetContents.cpp:
2466         (WebCore::StyleSheetContents::parserAppendRule):
2467
2468             The meat of this change. Split rules with >8K selectors into multiple rules with 8K selectors in each.
2469
2470         * css/StyleRule.h:
2471         (WebCore::toStyleRule):
2472
2473             Added a toStyleRule() helper for good measure.
2474
2475 2013-07-08  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2476
2477         Introduce DECLARE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro
2478         https://bugs.webkit.org/show_bug.cgi?id=118408
2479
2480         Reviewed by Philip Rogers.
2481
2482         Split DEFINE_FORWARDING_ATTRIBUTE_EVENT_LISTENER() macro into separate
2483         DECLARE and DEFINE macros to reduce the number of header includes in
2484         SVG.
2485
2486         No new tests, no behavior change.
2487
2488         * dom/EventTarget.h:
2489         * svg/SVGElementInstance.cpp:
2490         (WebCore::SVGElementInstance::create):
2491         (WebCore::SVGElementInstance::toNode):
2492         (WebCore::SVGElementInstance::ownerDocument):
2493         * svg/SVGElementInstance.h:
2494
2495 2013-07-08  Jae Hyun Park  <jae.park@company100.net>
2496
2497         [Coordinated Graphics] Rename variables in UpdateAtlas
2498         https://bugs.webkit.org/show_bug.cgi?id=118403
2499
2500         Reviewed by Noam Rosenthal.
2501
2502         As of r149292, non-composited contents layer was removed from
2503         CoordinatedGraphics. So, the variables should be renamed for
2504         clarification.
2505
2506         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp:
2507         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
2508
2509 2013-07-08  Ádám Kallai  <kadam@inf.u-szeged.hu>
2510
2511         [Qt] Incremental build fix after r145712.
2512         https://bugs.webkit.org/show_bug.cgi?id=112576.
2513
2514         Reviewed by Jocelyn Turcotte.
2515
2516         * DerivedSources.pri: Added dependence to INSPECTOR_JSON.
2517         * inspector/front-end/WebKit.qrc: Added missing JS file.
2518
2519 2013-07-08  Kihong Kwon  <kihong.kwon@samsung.com>
2520
2521         vibrate function have to return boolean value.
2522         https://bugs.webkit.org/show_bug.cgi?id=118288
2523
2524         Reviewed by Gyuyoung Kim.
2525
2526         According to latest Vibration API which is LC, vibrate() needs to return boolean value
2527         and exception code is removed also. In addition, remove condition for canceling vibration
2528         can be called when visibility state is hidden.
2529         http://www.w3.org/TR/vibration/
2530
2531         No new tests. vibration/navigator-vibration.html is changed.
2532
2533         * Modules/vibration/NavigatorVibration.cpp:
2534         (WebCore::NavigatorVibration::vibrate):
2535         * Modules/vibration/NavigatorVibration.h:
2536         * Modules/vibration/NavigatorVibration.idl:
2537         * Modules/vibration/Vibration.cpp:
2538         (WebCore::Vibration::vibrate):
2539         * Modules/vibration/Vibration.h:
2540
2541 2013-07-07  Kangil Han  <kangil.han@samsung.com>
2542
2543         Adopt is/toHTMLTableElement for code cleanup
2544         https://bugs.webkit.org/show_bug.cgi?id=118393
2545
2546         Reviewed by Andreas Kling.
2547
2548         To enhance readability, this patch adopts is/toHTMLTableElement.
2549         This also helps out to reduce duplicated use of static_cast.
2550
2551         * accessibility/AccessibilityRenderObject.cpp:
2552         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2553         * accessibility/AccessibilityTable.cpp:
2554         (WebCore::AccessibilityTable::isDataTable):
2555         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
2556         (WebCore::AccessibilityTable::title):
2557         * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
2558         (webkitAccessibleTableGetCaption):
2559         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2560         (webkitAccessibleGetDescription):
2561         * css/StyleResolver.cpp:
2562         (WebCore::StyleResolver::adjustRenderStyle):
2563         * dom/Position.cpp:
2564         (WebCore::endsOfNodeAreVisuallyDistinctPositions):
2565         * editing/DeleteSelectionCommand.cpp:
2566         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
2567         * editing/InsertLineBreakCommand.cpp:
2568         (WebCore::InsertLineBreakCommand::doApply):
2569         * editing/htmlediting.cpp:
2570         (WebCore::isNonTableCellHTMLBlockElement):
2571         * editing/markup.cpp:
2572         (WebCore::ancestorToRetainStructureAndAppearanceForBlock):
2573         * html/FTPDirectoryDocument.cpp:
2574         (WebCore::FTPDirectoryDocumentParser::loadDocumentTemplate):
2575         (WebCore::FTPDirectoryDocumentParser::createBasicDocument):
2576         * html/HTMLFormElement.cpp:
2577         (WebCore::HTMLFormElement::rendererIsNeeded):
2578         * html/HTMLTableElement.h:
2579         (WebCore::isHTMLTableElement):
2580         (WebCore::toHTMLTableElement):
2581         * html/HTMLTablePartElement.cpp:
2582         (WebCore::HTMLTablePartElement::findParentTable):
2583         * html/HTMLTableRowElement.cpp:
2584         (WebCore::HTMLTableRowElement::rowIndex):
2585         * html/HTMLTableRowsCollection.cpp:
2586         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection):
2587         (WebCore::HTMLTableRowsCollection::virtualItemAfter):
2588         * html/parser/HTMLElementStack.cpp:
2589         (WebCore::HTMLNames::isScopeMarker):
2590         (WebCore::HTMLNames::isTableScopeMarker):
2591         * html/parser/HTMLTreeBuilder.cpp:
2592         (WebCore::HTMLTreeBuilder::resetInsertionModeAppropriately):
2593         (WebCore::HTMLTreeBuilder::processCharacterBuffer):
2594         * platform/mac/HTMLConverter.mm:
2595         (-[WebHTMLConverter _computedStringForNode:property:]):
2596         * rendering/RenderObject.cpp:
2597         (WebCore::RenderObject::offsetParent):
2598         * rendering/RenderTable.cpp:
2599         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
2600         (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
2601
2602 2013-07-06  Rob Buis  <rbuis@rim.com>
2603
2604         createElement("image") creates an HTMLImageElement, although this hack should exist in parser only
2605         https://bugs.webkit.org/show_bug.cgi?id=88360
2606
2607         Reviewed by Sam Weinig.
2608
2609         Create a HTMLElement when using createElement('image'), but keep the HTML5 parser constructing HTMLImageelement for it.
2610
2611         * html/HTMLTagNames.in:
2612
2613 2013-07-06  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2614
2615         Stop hardcoding interfaces that have indexed getters returning strings
2616         https://bugs.webkit.org/show_bug.cgi?id=118414
2617
2618         Reviewed by Kentaro Hara.
2619
2620         Stop hardcoding the names of interfaces that have indexed getters returning
2621         strings in the bindings generator. Now that we use the latest Web IDL indexed
2622         getter, more information is provided in the IDL files and the generator is
2623         able to figure out if the indexed getter is returning a DOMString on its own.
2624
2625         No new tests, no behavior change.
2626
2627         * bindings/scripts/CodeGeneratorJS.pm:
2628         (GenerateGetOwnPropertySlotBody):
2629         (GenerateImplementation):
2630
2631 2013-07-05  Tim Horton  <timothy_horton@apple.com>
2632
2633         Tons of crashes on bots after r152425
2634         https://bugs.webkit.org/show_bug.cgi?id=118440
2635         <rdar://problem/14366772>
2636
2637         Reviewed by Sam Weinig.
2638
2639         Null-check the frame's page and early return. It's OK to do this
2640         because it only happens when we're being torn down.
2641
2642         * page/FrameView.cpp:
2643         (WebCore::FrameView::minimumScrollPosition):
2644         (WebCore::FrameView::maximumScrollPosition):
2645
2646 2013-07-05  Tim Horton  <timothy_horton@apple.com>
2647
2648         Fix r152265: FrameView's pagination mode is only one of two, and the logic was totally wrong
2649         https://bugs.webkit.org/show_bug.cgi?id=118439
2650         <rdar://problem/14366120>
2651
2652         Reviewed by Anders Carlsson.
2653
2654         * page/FrameView.cpp:
2655         (WebCore::FrameView::maximumScrollPosition):
2656         - Test both Page and FrameView's pagination modes.
2657         - *Don't* clamp negatives to zero if we are paginated with scroll offset set,
2658             like the original changelog claimed, but the code did the opposite.
2659         - Don't clamp in *all* pagination modes; with 'direction: RTL' it's still possible
2660             to have a negative maximum position in LTR/TB pagination modes.
2661
2662 2013-07-05  Sam Weinig  <sam@webkit.org>
2663
2664         WKPageFindStringMatches with kWKFindOptionsBackwards still doesn't work
2665         <rdar://problem/13881024>
2666         https://bugs.webkit.org/show_bug.cgi?id=118436
2667
2668         Reviewed by Tim Horton.
2669
2670         * page/Page.cpp:
2671         (WebCore::Page::findStringMatchingRanges):
2672         - When searching backwards, use END_TO_START rather than START_TO_END.
2673         - If there is no selection and we are searching backwards, we now select the last item,
2674           not the first.
2675
2676 2013-07-05  Tullio Lucena  <tullio.lucena@openbossa.org>
2677
2678         Nix upstreaming - Adding Nix render theme files
2679         https://bugs.webkit.org/show_bug.cgi?id=118368
2680
2681         Reviewed by Benjamin Poulain.
2682
2683         All files related to render theme stuff.
2684
2685         No new tests. They will be uploaded on another patch during the upstreaming process.
2686
2687         * platform/nix/RenderThemeNix.cpp: Added.
2688         * platform/nix/RenderThemeNix.h: Added.
2689         * platform/nix/ScrollbarThemeNix.cpp: Added.
2690         * platform/nix/ScrollbarThemeNix.h: Added.
2691
2692 2013-07-05  Brent Fulgham  <bfulgham@apple.com>
2693
2694         [Windows] Identify OS-level at build-time.
2695         https://bugs.webkit.org/show_bug.cgi?id=118428
2696
2697         Reviewed by Anders Carlsson.
2698
2699         * DerivedSources.make: Activate legible output features if present.
2700         * WebCorePrefix.h: Activate MSVC 2010 workarounds for CGFloat if
2701         building with VS2010.
2702         * config.h: Activate legible output features if present.
2703
2704 2013-07-05  Tim Horton  <timothy_horton@apple.com>
2705
2706         [wk2] Add API to lock the scroll position at the top or bottom of the page
2707         https://bugs.webkit.org/show_bug.cgi?id=118429
2708         <rdar://problem/14120323>
2709
2710         Reviewed by Anders Carlsson.
2711
2712         Test (API): WebKit2.ScrollPinningBehaviors
2713
2714         * WebCore.exp.in:
2715         Expose FrameView::setScrollPinningBehavior.
2716
2717         * page/FrameView.cpp:
2718         (WebCore::FrameView::FrameView):
2719         Our pinning behavior should be DoNotPin by default.
2720
2721         * page/FrameView.cpp:
2722         (WebCore::FrameView::minimumScrollPosition):
2723         (WebCore::FrameView::maximumScrollPosition):
2724         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
2725         (WebCore::ScrollingTreeScrollingNodeMac::minimumScrollPosition):
2726         (WebCore::ScrollingTreeScrollingNodeMac::maximumScrollPosition):
2727         Fix the minimum scroll position's vertical location to the maximum if
2728         we're pinned to the bottom, and vice-versa if we're pinned to the top.
2729
2730         (WebCore::FrameView::setScrollPinningBehavior): Added.
2731         If scroll pinning behavior has changed, inform ScrollingCoordinator
2732         and update scrollbars (which will also re-pin the scroll position).
2733
2734         * page/FrameView.h:
2735         Override minimumScrollPosition, add setScrollPinningBehavior,
2736         and storage for m_scrollPinningBehavior.
2737
2738         * page/scrolling/ScrollingCoordinator.h:
2739         (WebCore::ScrollingCoordinator::setScrollPinningBehavior): Added.
2740
2741         * page/scrolling/ScrollingTree.cpp:
2742         (WebCore::ScrollingTree::ScrollingTree):
2743         Our pinning behavior should be DoNotPin by default.
2744
2745         (WebCore::ScrollingTree::setScrollPinningBehavior):
2746         (WebCore::ScrollingTree::scrollPinningBehavior):
2747         Getter/setter for m_scrollPinningBehavior, scrolling-thread-safe.
2748
2749         * page/scrolling/ScrollingTree.h:
2750         * page/scrolling/mac/ScrollingCoordinatorMac.h:
2751         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2752         (WebCore::ScrollingCoordinatorMac::setScrollPinningBehavior):
2753         Inform ScrollingTree of the scroll pinning behavior change.
2754         
2755         * platform/ScrollTypes.h:
2756         Add ScrollPinningBehavior enum.
2757
2758 2013-07-05  Zalan Bujtas  <zalan@apple.com>
2759
2760         iframe constrained by max-width in full screen
2761         https://bugs.webkit.org/show_bug.cgi?id=118250
2762
2763         Reviewed by Antti Koivisto.
2764
2765         Ensure that contents inside iframe can go full screen properly.
2766
2767         Set max-width and max-height values to the default 'none', so that iframes are not
2768         constrained when entering full screen.
2769
2770         Test: fullscreen/full-screen-iframe-with-max-width-height.html
2771
2772         * css/fullscreen.css:
2773         (iframe:-webkit-full-screen):
2774
2775 2013-07-05  Eric Carlson  <eric.carlson@apple.com>
2776
2777         [Mac] .webkitClosedCaptionsVisible doesn't work with "Automatic" caption mode
2778         https://bugs.webkit.org/show_bug.cgi?id=118319
2779
2780         Reviewed by Jer Noble.
2781
2782         Track when captions are enabled with the old 'webkitClosedCaptionsVisible' attribute and
2783         consider that when determining which track should be enabled.
2784
2785         Test: media/track/track-legacyapi-with-automatic-mode.html
2786
2787         * html/HTMLMediaElement.cpp:
2788         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_webkitLegacyClosedCaptionOverride.
2789         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): Set m_webkitLegacyClosedCaptionOverride.
2790         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): Return m_webkitLegacyClosedCaptionOverride.
2791         * html/HTMLMediaElement.h:
2792
2793         * page/CaptionUserPreferencesMediaAF.cpp:
2794         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore): Don't apply "automatic"
2795             logic when captions were enabled with .webkitClosedCaptionsVisible.
2796
2797 2013-07-05  Benjamin Dupont   <bdupont@nds.com>
2798
2799         Segmentation fault occurred when ICU data library doesn't embed the expected encoding.
2800         https://bugs.webkit.org/show_bug.cgi?id=118410
2801
2802         Reviewed by Allan Sandfeld Jensen.
2803
2804         * platform/text/TextEncodingRegistry.cpp:
2805         (WebCore::newTextCodec):
2806
2807 2013-07-05  Denis Nomiyama  <d.nomiyama@samsung.com>
2808
2809         [GTK] fast/text/font-kerning.html fails
2810         https://bugs.webkit.org/show_bug.cgi?id=76048
2811
2812         Reviewed by Martin Robinson.
2813
2814         Added kerning to the list of features for hb_shade() according to FontDescription::kerning().
2815         Removed font-kerning.html from gtk/TestExpectations, which was failing before this fix.
2816
2817         * platform/graphics/harfbuzz/HarfBuzzFace.cpp:
2818         (WebCore):
2819         * platform/graphics/harfbuzz/HarfBuzzFace.h:
2820         (HarfBuzzFace):
2821         * platform/graphics/harfbuzz/HarfBuzzShaper.cpp:
2822         (WebCore::HarfBuzzShaper::setFontFeatures):
2823
2824 2013-07-05  Gwang Yoon Hwang  <ryumiel@company100.net>
2825
2826         Build fix GTK after r152404.
2827         https://bugs.webkit.org/show_bug.cgi?id=118407
2828
2829         Reviewed by Christophe Dumez.
2830
2831         * GNUmakefile.list.am:
2832
2833 2013-07-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2834
2835         Have SVGTextContentElement inherit SVGGraphicsElement
2836         https://bugs.webkit.org/show_bug.cgi?id=118351
2837
2838         Reviewed by Dirk Schulze.
2839
2840         Have SVGTextContentElement inherit SVGGraphicsElement instead of
2841         SVGStyledElement in order to match the latest SVG2 specification:
2842         https://svgwg.org/svg2-draft/text.html#InterfaceSVGTextContentElement
2843
2844         This patch also removes the SVGTransformable and SVGLocatable IDL
2845         interfaces as they are no longer needed (were merged into
2846         SVGGraphicsElement in the latest specification).
2847
2848         This is one step towards getting rid of multiple inheritance in
2849         SVG, and complying with the latest SVG2 specification.
2850
2851         No new tests, covered by existing tests.
2852
2853         * DerivedSources.make:
2854         * WebCore.xcodeproj/project.pbxproj:
2855         * bindings/scripts/CodeGeneratorJS.pm:
2856         (GetGnuVTableOffsetForType):
2857         * bindings/scripts/CodeGeneratorObjC.pm:
2858         * svg/SVGAnimateMotionElement.cpp:
2859         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
2860         * svg/SVGElement.cpp:
2861         (WebCore::SVGElement::getBoundingBox):
2862         * svg/SVGLocatable.idl: Removed.
2863         * svg/SVGTextContentElement.cpp:
2864         (WebCore::SVGTextContentElement::SVGTextContentElement):
2865         (WebCore::SVGTextContentElement::isSupportedAttribute):
2866         (WebCore::SVGTextContentElement::isPresentationAttribute):
2867         (WebCore::SVGTextContentElement::collectStyleForPresentationAttribute):
2868         (WebCore::SVGTextContentElement::parseAttribute):
2869         (WebCore::SVGTextContentElement::svgAttributeChanged):
2870         * svg/SVGTextContentElement.h:
2871         * svg/SVGTextContentElement.idl:
2872         * svg/SVGTextElement.cpp:
2873         (WebCore::SVGTextElement::SVGTextElement):
2874         (WebCore::SVGTextElement::animatedLocalTransform):
2875         * svg/SVGTextElement.h:
2876         * svg/SVGTextElement.idl:
2877         * svg/SVGTransformable.idl: Removed.
2878
2879 2013-07-03  Gavin Barraclough  <barraclough@apple.com>
2880
2881         Remove PageThrottler::m_activeThrottleBlockers
2882         https://bugs.webkit.org/show_bug.cgi?id=118375
2883
2884         Reviewed by Mark Rowe.
2885
2886         This is simply m_activityTokens.size().
2887
2888         Also, fold preventThrottling into addActivityToken & allowThrottling into removeActivityToken
2889         (these should no longer be called directly, and should not be public).
2890
2891         * page/PageThrottler.cpp:
2892         (WebCore::PageThrottler::PageThrottler):
2893             - removed m_activeThrottleBlockers
2894         (WebCore::PageThrottler::startThrottleHysteresisTimer):
2895             - m_activeThrottleBlockers -> m_activityTokens.size()
2896         (WebCore::PageThrottler::throttleHysteresisTimerFired):
2897             - m_activeThrottleBlockers -> m_activityTokens.size()
2898         (WebCore::PageThrottler::addActivityToken):
2899             - added functionality from preventThrottling
2900         (WebCore::PageThrottler::removeActivityToken):
2901             - added functionality from allowThrottling
2902         * page/PageThrottler.h:
2903             - removed preventThrottling, allowThrottling, and m_activeThrottleBlockers.
2904
2905 2013-07-01  Antti Koivisto  <antti@apple.com>
2906
2907         Take document height into account when determining when it is considered visually non-empy
2908         https://bugs.webkit.org/show_bug.cgi?id=118272
2909
2910         Reviewed by Darin Adler.
2911
2912         The current visually non-empy mechanism takes into account only the amount of contents in renderers. 
2913         Add a simple layout dependency so that we don't consider page non-empty until the document height
2914         exceed a (low) height threshold (or the load completes).
2915
2916         * page/FrameView.cpp:
2917         (WebCore::FrameView::performPostLayoutTasks):
2918         
2919             Don't send layout callbacks until we have actually some content.
2920
2921         (WebCore::FrameView::qualifiesAsVisuallyNonEmpty):
2922         (WebCore::FrameView::updateIsVisuallyNonEmpty):
2923         
2924             Factor into functions.
2925
2926         * page/FrameView.h:
2927         (WebCore::FrameView::incrementVisuallyNonEmptyCharacterCount):
2928         (WebCore::FrameView::incrementVisuallyNonEmptyPixelCount):
2929         * rendering/RenderEmbeddedObject.cpp:
2930         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
2931         * rendering/RenderHTMLCanvas.cpp:
2932         (WebCore::RenderHTMLCanvas::RenderHTMLCanvas):
2933         
2934              The size is not known but the estimate provided here is always bigger than the threshold so
2935              the functionality is unchanged.
2936
2937 2013-07-04  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2938
2939         Unreviewed build fix after r152399.
2940
2941         Add missing header include for SVGNames.h.
2942
2943         * svg/SVGImageElement.h:
2944
2945 2013-07-04  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2946
2947         Change static_cast<SVGImageElement*> with toSVGImageElement
2948         https://bugs.webkit.org/show_bug.cgi?id=118387
2949
2950         Reviewed by Andreas Kling.
2951
2952         As a step to change static_cast with toXXX, static_cast<SVGImageElement*> can
2953         be changed with toSVGImageElement().
2954
2955         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153557
2956
2957         * rendering/svg/RenderSVGImage.cpp:
2958         (WebCore::RenderSVGImage::updateImageViewport):
2959         (WebCore::RenderSVGImage::layout):
2960         (WebCore::RenderSVGImage::paintForeground):
2961         * svg/SVGImageElement.h:
2962         (WebCore::toSVGImageElement):
2963         * svg/SVGImageLoader.cpp:
2964         (WebCore::SVGImageLoader::dispatchLoadEvent):
2965
2966 2013-07-04  Brian Holt  <brian.holt@samsung.com>
2967
2968         [GTK] Leak: Free PangoFontDescription* in RenderThemeGtk3
2969         https://bugs.webkit.org/show_bug.cgi?id=118386
2970
2971         Reviewed by Carlos Garcia Campos.
2972
2973         Free PangoFontDescription* allocated by gtk_style_context_get (transfer full).
2974
2975         * platform/gtk/RenderThemeGtk3.cpp:
2976         (WebCore::spinButtonArrowSize):
2977
2978 2013-07-04  Brian Holt  <brian.holt@samsung.com>
2979
2980         [ATK] Leak: AtkAttributeSet* should be freed
2981         https://bugs.webkit.org/show_bug.cgi?id=118307
2982
2983         Reviewed by Christophe Dumez.
2984
2985         Use AtkAttributeSet* instead of GSList*.
2986
2987         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2988         (webkitAccessibleGetObjectLocale):
2989
2990 2013-07-04  Mario Sanchez Prada  <mario.prada@samsung.com>
2991
2992         [ATK] Do not expose '\n' for wrapped lines with ATK_TEXT_BOUNDARY_CHAR
2993         https://bugs.webkit.org/show_bug.cgi?id=118359
2994
2995         Reviewed by Carlos Garcia Campos.
2996
2997         Do not expose a '\n' character for every visual line break.
2998
2999         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
3000         (webkitAccessibleTextGetChar): Removed wrong code.
3001
3002 2013-07-04  Patrick Gansterer  <paroga@webkit.org>
3003
3004         Port FileSystemWin.cpp to WinCE
3005         https://bugs.webkit.org/show_bug.cgi?id=117935
3006
3007         Reviewed by Brent Fulgham.
3008
3009         Add #if !OS(WINCE) around a few lines of the code, so it can be used by the WinCE port too.
3010
3011         * PlatformWinCE.cmake:
3012         * platform/win/FileSystemWin.cpp:
3013         (WebCore::storageDirectory):
3014         * platform/wince/FileSystemWinCE.cpp: Removed.
3015
3016 2013-07-04  Balazs Kelemen  <b.kelemen@samsung.com>
3017
3018         [GStreamer] support preload="metadata"
3019         https://bugs.webkit.org/show_bug.cgi?id=116817
3020
3021         Reviewed by Eric Carlson.
3022
3023         Add appropriate behavior for preload="metadata". Delay enabling download buffering
3024         until playback is started in this case. This behavior fits with the standard quite
3025         well and this is the most exact match we can get (at least without adding too much
3026         extra complexity). What matters mostly is that we can avoid loading the media
3027         before playback but we have the first frame and the metadata.
3028
3029         Test: media/video-load-preload-metadata.html
3030
3031         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
3032         (WebCore::MediaPlayerPrivateGStreamer::prepareToPlay): Set |m_preload| to |Auto|
3033         so we will start download buffering if we did not start it yet.
3034         (WebCore::MediaPlayerPrivateGStreamer::play): Ditto.
3035         (MediaPlayerPrivateGStreamer::setDownloadBuffering): Only start download
3036         buffering if |m_preload == Auto|. Also make sure we don't clear the download
3037         flag once we started downloading because it would result in not well defined
3038         behavior and it does not really makes sense.
3039         (MediaPlayerPrivateGStreamer::setPreload): Set download buffering accordingly.
3040
3041 2013-07-03  Jae Hyun Park  <jae.park@company100.net>
3042
3043         [Coordinated Graphics] Don't use && operator in ASSERT
3044         https://bugs.webkit.org/show_bug.cgi?id=118377
3045
3046         Reviewed by Noam Rosenthal.
3047
3048         We don't use && opeartor in ASSERT because it's impossible to know which
3049         condition caused the assertion.
3050
3051         * platform/graphics/texmap/coordinated/CoordinatedBackingStore.cpp:
3052         (WebCore::CoordinatedBackingStoreTile::swapBuffers):
3053         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
3054         (WebCore::CoordinatedGraphicsLayer::~CoordinatedGraphicsLayer):
3055
3056 2013-07-03  KyungTae Kim  <ktf.kim@samsung.com>
3057
3058         [EFL] Support some more editing keyboard events
3059         https://bugs.webkit.org/show_bug.cgi?id=118346
3060
3061         Reviewed by Gyuyoung Kim.
3062
3063         For editable contents, support the shortcuts for copy, page, cut, select all, undo and redo.
3064
3065         * platform/efl/EflKeyboardUtilities.cpp:
3066
3067 2013-07-03  Chris Fleizach  <cfleizach@apple.com>
3068
3069         AX: Items the img aria role aren't inserting an object replacement character
3070         https://bugs.webkit.org/show_bug.cgi?id=118259
3071
3072         Reviewed by Tim Horton.
3073
3074         VoiceOver relies on object replacement characters being emitted when asking for selected text.
3075         This has worked if a real <img> is used, but if role="img" is used on a <div>, for example,
3076         no emission is performed, which leads to missed elements in text.
3077
3078         Test: platform/mac/accessibility/aria-image-emits-object-replacement.html
3079
3080         * editing/TextIterator.cpp:
3081         (WebCore::isRendererReplacedElement):
3082         (WebCore::TextIterator::advance):
3083
3084 2013-07-03  Kangil Han  <kangil.han@samsung.com>
3085
3086         Adopt is/toHTMLMapElement for code cleanup
3087         https://bugs.webkit.org/show_bug.cgi?id=118235
3088
3089         Reviewed by Andreas Kling.
3090
3091         To enhance readability, this patch adopts is/toHTMLMapElement.
3092         This also helps out to reduce duplicated use of static_cast.
3093
3094         * accessibility/AccessibilityRenderObject.cpp:
3095         (WebCore::AccessibilityRenderObject::getDocumentLinks):
3096         (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
3097         * dom/DocumentOrderedMap.cpp:
3098         (WebCore::keyMatchesMapName):
3099         (WebCore::keyMatchesLowercasedMapName):
3100         * dom/TreeScope.cpp:
3101         (WebCore::TreeScope::getImageMap):
3102         * html/HTMLAreaElement.cpp:
3103         (WebCore::HTMLAreaElement::imageElement):
3104         * html/HTMLMapElement.h:
3105         (WebCore::isHTMLMapElement):
3106         (WebCore::toHTMLMapElement):
3107
3108 2013-07-03  Brent Fulgham  <bfulgham@apple.com>
3109
3110         [Windows] Unreviewed build correction after r15283.
3111
3112         * WebCorePrefix.h: Remove include directive for CGFloat.h, as it
3113         is not present in all Windows build environments.
3114
3115 2013-07-03  Brent Fulgham  <bfulgham@apple.com>
3116
3117         [Windows] Exclude unsupported QuartzCore Features.
3118         https://bugs.webkit.org/show_bug.cgi?id=118374
3119
3120         Reviewed by Anders Carlsson.
3121
3122         * WebCore.vcxproj/WebCoreCG.props: Exclude a few non-Windows
3123         concepts from the QuartzCore headers.
3124
3125 2013-07-03  Gavin Barraclough  <barraclough@apple.com>
3126
3127         Simplify PageThrottler ownership.
3128         https://bugs.webkit.org/show_bug.cgi?id=118372
3129
3130         Reviewed by Sam Weinig.
3131
3132         * page/Page.cpp:
3133         (WebCore::Page::~Page):
3134             - 'clearPage' method removed - just clear the own pointer.
3135         * page/Page.h:
3136             - make m_pageThrottler an OwnPtr.
3137         * page/PageThrottler.cpp:
3138         (WebCore::PageThrottler::~PageThrottler):
3139             - moved 'setThrottled(false)' from 'clearPage' (removed).
3140         (WebCore::PageThrottler::throttlePage):
3141         (WebCore::PageThrottler::unthrottlePage):
3142             - no need to check 'm_page'
3143         * page/PageThrottler.h:
3144         (WebCore::PageThrottler::create):
3145             - create a PassOwnPtr, not PassRefPtr.
3146
3147 2013-07-03  Brent Fulgham  <bfulgham@apple.com>
3148
3149         [Windows] Updates to support changes in CoreGraphics libraries.
3150         https://bugs.webkit.org/show_bug.cgi?id=118373
3151
3152         Reviewed by Anders Carlsson.
3153
3154         * WebCorePrefix.h: Include definitions for isnan/round/roundf for versions of
3155         Visual Studio that do not provide them natively.
3156
3157 2013-07-03  Gordon Sheridan  <gordon_sheridan@apple.com>
3158
3159         Implement mechanism to detect (partially) hidden blocked plugins.
3160         https://bugs.webkit.org/show_bug.cgi?id=117998
3161
3162         Reviewed by Dean Jackson.
3163
3164         * rendering/RenderEmbeddedObject.cpp:
3165         (WebCore::RenderEmbeddedObject::replacementTextRect):
3166         Added private method for calculating the size of the replacement text for blocked plugins.
3167
3168         (WebCore::RenderEmbeddedObject::isReplacementObscured):
3169         Added public method to determine if the EMBED element used for a blocked plugin is inaccessible to the user.
3170         * rendering/RenderEmbeddedObject.h:
3171         Declare the two new methods mentioned above.
3172
3173         * WebCore.exp.in:
3174         Export RenderEmbeddedObject::isReplacementObscured().
3175
3176 2013-07-03  Jessie Berlin  <jberlin@apple.com>
3177
3178         Speculative build fix after r152340.
3179
3180         * WebCore.exp.in:
3181
3182 2013-07-03  Kangil Han  <kangil.han@samsung.com>
3183
3184         Append overloading function for isFooElement
3185         https://bugs.webkit.org/show_bug.cgi?id=118334
3186
3187         Reviewed by Antti Koivisto.
3188
3189         Node::hasTagName needs additional isElementNode() check when it is triggered.
3190         So conversion from Element* to Node* in isFooElement should be avoided.
3191         Therefore, to support both Node* and Element* as an argument of isFooElement,
3192         this patch appends overloading inline function.
3193
3194         * css/CSSStyleSheet.cpp:
3195         (WebCore::isAcceptableCSSStyleSheetParent):
3196         * css/StyleScopeResolver.cpp:
3197         (WebCore::StyleScopeResolver::scopeFor):
3198         * dom/Node.cpp:
3199         (WebCore::Node::numberOfScopedHTMLStyleChildren):
3200         * html/HTMLAnchorElement.h:
3201         (WebCore::isHTMLAnchorElement):
3202         * html/HTMLAreaElement.h:
3203         (WebCore::isHTMLAreaElement):
3204         * html/HTMLAudioElement.h:
3205         (WebCore::isHTMLAudioElement):
3206         * html/HTMLFormElement.h:
3207         (WebCore::isHTMLFormElement):
3208         * html/HTMLImageElement.h:
3209         (WebCore::isHTMLImageElement):
3210         * html/HTMLInputElement.h:
3211         (WebCore::isHTMLInputElement):
3212         * html/HTMLLabelElement.h:
3213         (WebCore::isHTMLLabelElement):
3214         * html/HTMLOptGroupElement.h:
3215         (WebCore::isHTMLOptGroupElement):
3216         * html/HTMLOptionElement.h:
3217         (WebCore::isHTMLOptionElement):
3218         * html/HTMLStyleElement.h:
3219         (WebCore::isHTMLStyleElement):
3220         (WebCore::toHTMLStyleElement):
3221         * html/HTMLTextAreaElement.h:
3222         (WebCore::isHTMLTextAreaElement):
3223
3224 2013-07-03  Balazs Kelemen  <b.kelemen@samsung.com>
3225
3226         Gif: zero filling should use memset instead of setRGBA for every pixel
3227         https://bugs.webkit.org/show_bug.cgi?id=118350
3228
3229         Reviewed by Allan Sandfeld Jensen.
3230
3231         No new tests. Actually it is not covered by existing tests. Surprisingly we haven't got pixel
3232         tests for animated images. Given that this patch is pretty trivial I don't think it's worth the
3233         cost to start introducing such tests.
3234         I added a manual test: animated-gif-dispose-background.html.
3235
3236         GIFImageDecoder::initializeFrameBuffer use a loop to fill a subrect with tranparent pixels.
3237         This is extremely ineffecient. The use case for this code path is not frequent on the web
3238         but it's still better to fix it.
3239
3240         * platform/image-decoders/ImageDecoder.cpp:
3241         (WebCore::ImageFrame::zeroFillFrameRect):
3242         * platform/image-decoders/ImageDecoder.h:
3243         * platform/image-decoders/gif/GIFImageDecoder.cpp:
3244         (WebCore::GIFImageDecoder::initFrameBuffer):
3245         Fixed indentation in addition.
3246
3247 2013-07-03  Przemyslaw Szymanski  <p.szymanski3@samsung.com>
3248
3249         TextureUnit code optimization
3250         https://bugs.webkit.org/show_bug.cgi?id=117868
3251
3252         Reviewed by Noam Rosenthal.
3253
3254         According to OpenGL ES 2.0 specification it is not possible to use both
3255         texture2D and textureCubeMap in one texture unit.
3256         This patch reduces amount of code, slightly increases rendering performance
3257         and makes WebKit more consistent with OpenGL.
3258
3259         No new tests. Covered by existing tests:
3260         LayoutTests/webgl/conformance/textures/tex-image-webgl.html
3261         LayoutTests/webgl/conformance/textures/texture-complete.html
3262
3263         * html/canvas/WebGLRenderingContext.cpp:
3264         (WebCore::WebGLRenderingContext::~WebGLRenderingContext):
3265         (WebCore::WebGLRenderingContext::reshape):
3266         (WebCore::WebGLRenderingContext::bindTexture):
3267         (WebCore::WebGLRenderingContext::deleteTexture):
3268         (WebCore::WebGLRenderingContext::getParameter):
3269         (WebCore::WebGLRenderingContext::handleNPOTTextures):
3270         (WebCore::WebGLRenderingContext::validateTextureBinding):
3271         (WebCore::WebGLRenderingContext::restoreCurrentTexture2D):
3272         * html/canvas/WebGLRenderingContext.h:
3273
3274 2013-07-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3275
3276         Stop inheriting SVGFilterPrimitiveStandardAttributes in SVG
3277         https://bugs.webkit.org/show_bug.cgi?id=118305
3278
3279         Reviewed by Kentaro Hara.
3280
3281         Stop inheriting SVGFilterPrimitiveStandardAttributes in SVG and use
3282         Web IDL implements instead to get rid of multiple inheritance and
3283         follow the latest specification:
3284         - http://www.w3.org/TR/filter-effects/#DOMInterfaces
3285
3286         No new tests, no behavior change.
3287
3288         * CMakeLists.txt:
3289         * DerivedSources.pri:
3290         * GNUmakefile.list.am:
3291         * svg/SVGFEBlendElement.idl:
3292         * svg/SVGFEColorMatrixElement.idl:
3293         * svg/SVGFEComponentTransferElement.idl:
3294         * svg/SVGFECompositeElement.idl:
3295         * svg/SVGFEConvolveMatrixElement.idl:
3296         * svg/SVGFEDiffuseLightingElement.idl:
3297         * svg/SVGFEDisplacementMapElement.idl:
3298         * svg/SVGFEDropShadowElement.idl:
3299         * svg/SVGFEFloodElement.idl:
3300         * svg/SVGFEGaussianBlurElement.idl:
3301         * svg/SVGFEImageElement.idl:
3302         * svg/SVGFEMergeElement.idl:
3303         * svg/SVGFEMorphologyElement.idl:
3304         * svg/SVGFEOffsetElement.idl:
3305         * svg/SVGFESpecularLightingElement.idl:
3306         * svg/SVGFETileElement.idl:
3307         * svg/SVGFETurbulenceElement.idl:
3308
3309 2013-07-03  Zalan Bujtas  <zalan@apple.com>
3310
3311         H&R Block 2010 Help window can not be reopened.
3312         https://bugs.webkit.org/show_bug.cgi?id=118342
3313
3314         Reviewed by Antti Koivisto.
3315
3316         http://trac.webkit.org/changeset/118916 changed the window.focus() behaviour so that
3317         only the opener can (re)focus() a particular window.
3318         H&R Block app relies on the relaxed window.focus() rules.
3319
3320         * WebCore.exp.in:
3321         * platform/RuntimeApplicationChecks.cpp:
3322         (WebCore::applicationIsHRBlock):
3323         * platform/RuntimeApplicationChecks.h:
3324
3325 2013-07-03  Zan Dobersek  <zdobersek@igalia.com>
3326
3327         Further build fixing for build configurations that disable CSS regions support.
3328
3329         * dom/PseudoElement.h: Wrap shouldMoveToFlowThread override into the ENABLE(CSS_REGIONS) build guard.
3330
3331 2013-07-03  Zan Dobersek  <zdobersek@igalia.com>
3332
3333         Unreviewed build fix after r152320 and r152345 for build configurations that enable
3334         SVG support but disable CSS regions support.
3335
3336         * svg/SVGElement.cpp: Wrap shouldMoveToFlowThread override into the ENABLE(CSS_REGIONS) build guard.
3337         * svg/SVGElement.h: Ditto.
3338
3339 2013-07-03  Radu Stavila  <stavila@adobe.com>
3340
3341         [CSS Regions] Improve implementation of elements in region being flowed to another flow thread
3342         https://bugs.webkit.org/show_bug.cgi?id=118300
3343
3344         Based on patch by Zoltán Árvai <zarvai@inf.u-szeged.hu>
3345
3346         Reviewed by Csaba Osztrogonác.
3347
3348         Fixed CSS_REGIONS guard.
3349
3350         * dom/Element.h:
3351         * dom/NodeRenderingContext.cpp:
3352         (WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
3353         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
3354
3355 2013-07-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3356
3357         Move SVGTests attributes parsing to SVGGraphicsElement
3358         https://bugs.webkit.org/show_bug.cgi?id=118292
3359
3360         Reviewed by Darin Adler.
3361
3362         Move SVGTests attributes parsing to SVGGraphicsElement instead of doing
3363         this in each of its subclasses. SVGGraphicsElement is now the one
3364         subclassing SVGTests after r152167.
3365
3366         No new tests, no behavior change.
3367
3368         * svg/SVGAElement.cpp:
3369         (WebCore::SVGAElement::isSupportedAttribute):
3370         (WebCore::SVGAElement::parseAttribute):
3371         * svg/SVGCircleElement.cpp:
3372         (WebCore::SVGCircleElement::isSupportedAttribute):
3373         (WebCore::SVGCircleElement::parseAttribute):
3374         (WebCore::SVGCircleElement::svgAttributeChanged):
3375         * svg/SVGClipPathElement.cpp:
3376         (WebCore::SVGClipPathElement::isSupportedAttribute):
3377         (WebCore::SVGClipPathElement::parseAttribute):
3378         * svg/SVGEllipseElement.cpp:
3379         (WebCore::SVGEllipseElement::isSupportedAttribute):
3380         (WebCore::SVGEllipseElement::parseAttribute):
3381         (WebCore::SVGEllipseElement::svgAttributeChanged):
3382         * svg/SVGForeignObjectElement.cpp:
3383         (WebCore::SVGForeignObjectElement::isSupportedAttribute):
3384         (WebCore::SVGForeignObjectElement::parseAttribute):
3385         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
3386         * svg/SVGGElement.cpp:
3387         (WebCore::SVGGElement::isSupportedAttribute):
3388         (WebCore::SVGGElement::parseAttribute):
3389         (WebCore::SVGGElement::svgAttributeChanged):
3390         * svg/SVGGraphicsElement.cpp:
3391         (WebCore::SVGGraphicsElement::isSupportedAttribute):
3392         (WebCore::SVGGraphicsElement::parseAttribute):
3393         (WebCore::SVGGraphicsElement::svgAttributeChanged):
3394         * svg/SVGImageElement.cpp:
3395         (WebCore::SVGImageElement::isSupportedAttribute):
3396         (WebCore::SVGImageElement::parseAttribute):
3397         (WebCore::SVGImageElement::svgAttributeChanged):
3398         * svg/SVGLineElement.cpp:
3399         (WebCore::SVGLineElement::isSupportedAttribute):
3400         (WebCore::SVGLineElement::parseAttribute):
3401         (WebCore::SVGLineElement::svgAttributeChanged):
3402         * svg/SVGPathElement.cpp:
3403         (WebCore::SVGPathElement::isSupportedAttribute):
3404         (WebCore::SVGPathElement::parseAttribute):
3405         (WebCore::SVGPathElement::svgAttributeChanged):
3406         * svg/SVGPolyElement.cpp:
3407         (WebCore::SVGPolyElement::isSupportedAttribute):
3408         (WebCore::SVGPolyElement::parseAttribute):
3409         (WebCore::SVGPolyElement::svgAttributeChanged):
3410         * svg/SVGRectElement.cpp:
3411         (WebCore::SVGRectElement::isSupportedAttribute):
3412         (WebCore::SVGRectElement::parseAttribute):
3413         (WebCore::SVGRectElement::svgAttributeChanged):
3414         * svg/SVGSVGElement.cpp:
3415         (WebCore::SVGSVGElement::parseAttribute):
3416         (WebCore::SVGSVGElement::svgAttributeChanged): Fall back to calling
3417         SVGGraphicsElement::svgAttributeChanged() instead of
3418         SVGStyledElement::svgAttributeChanged() as SVGGraphicsElement is the
3419         parent class and it takes care of parsing SVGTests attributes now.
3420         * svg/SVGUseElement.cpp:
3421         (WebCore::SVGUseElement::isSupportedAttribute):
3422         (WebCore::SVGUseElement::parseAttribute):
3423         (WebCore::SVGUseElement::svgAttributeChanged):
3424
3425 2013-07-02  Ryosuke Niwa  <rniwa@webkit.org>
3426
3427         Modernize QualifiedName by wrapping gNameCache in a function and using more early exits
3428         https://bugs.webkit.org/show_bug.cgi?id=118299
3429
3430         Reviewed by Andreas Kling.
3431
3432         Did cleanups.
3433
3434         * dom/QualifiedName.cpp:
3435         (WebCore::qualifiedNameCache): Added to wrap gNameCache.
3436         (WebCore::QualifiedName::QualifiedName):
3437         (WebCore::QualifiedName::QualifiedNameImpl::~QualifiedNameImpl):
3438         (WebCore::QualifiedName::toString): Use early exit and StringBuilder.
3439         (WebCore::QualifiedName::init): Use early exit.
3440
3441 2013-07-02  Simon Fraser  <simon.fraser@apple.com>
3442
3443         Don't set z-index: 0 on lots of elements with -webkit-overflow-scrolling: touch
3444         https://bugs.webkit.org/show_bug.cgi?id=118337
3445
3446         Reviewed by Benjamin Poulain.
3447
3448         -webkit-overflow-scrolling: touch is an inherited property that, on iOS, controls
3449         the behavior of overflow scrolling content, and causes overflow scrolling elements
3450         to become CSS stacking contexts.
3451
3452         However, the code was too aggressive in setting style->setZIndex(0), doing so
3453         for any element with overflow != hidden. Since the default for overflow is visible,
3454         that meant almost every element.
3455
3456         Previously, this didn't really matter. However, since r125693, any renderer with non-auto
3457         z-index gets a RenderLayer, and that RenderLayer will become a stacking context. The result
3458         was too many RenderLayers and incorrect stacking context behavior.
3459
3460         Fix by ensuring that -webkit-overflow-scrolling: touch  only affects elements which
3461         are actually scrollable.
3462
3463         Also move the code that does this to below the code that adjust overflow style
3464         for different elements.
3465
3466         * css/StyleResolver.cpp:
3467         (WebCore::isScrollableOverflow):
3468         (WebCore::StyleResolver::adjustRenderStyle):
3469
3470 2013-07-02  Commit Queue  <commit-queue@webkit.org>
3471
3472         Unreviewed, rolling out r152318.
3473         http://trac.webkit.org/changeset/152318
3474         https://bugs.webkit.org/show_bug.cgi?id=118333
3475
3476         This patch broke media/track/track-automatic-subtitles.html on
3477         Mac (Requested by dfarler on #webkit).
3478
3479         * page/CaptionUserPreferencesMediaAF.cpp:
3480         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore):
3481
3482 2013-07-02  Ruth Fong  <ruth_fong@apple.com>
3483
3484         Change event should not be dispatched by clicking a scrollbar of select listbox
3485         https://bugs.webkit.org/show_bug.cgi?id=118019
3486         <rdar://problem/14297760>
3487
3488         Reviewed by Dean Jackson.
3489
3490         Test: fast/forms/select/listbox-click-on-scrollbar.html
3491
3492         Merge the following:
3493         http://src.chromium.org/viewvc/blink?view=revision&revision=151689
3494         https://chromium.googlesource.com/chromium/blink/+/492549b0fcaa58a85aa0797446b62985a263704f
3495
3496         Previously, a select element with the multiple attribute would dispatch
3497         an onChanged event when the scrollbar is clicked. This patch corrects this
3498         issue by only calling listBoxOnChange(), which fires the onChanged event,
3499         when an actual option is clicked.
3500
3501         * html/HTMLSelectElement.cpp:
3502         (WebCore::HTMLSelectElement::childrenChanged): Updated to clear the list
3503         of selected items when when an <option> element is added to/deleted from its <select> element.
3504         (Without this addition, if a option was selected, and then JavaScript was used to modify
3505         the <select> element, and then the scrollbar was clicked, an onChanged event would fire
3506         because it remembers the previously selected option.)
3507
3508         (WebCore::HTMLSelectElement::listBoxOnChange):
3509
3510         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updated to
3511         only call listBoxOnChange() if at least one option is selected.
3512
3513 2013-07-02  Alex Christensen  <achristensen@apple.com>
3514
3515         Preparing Windows WebGL build system.
3516         https://bugs.webkit.org/show_bug.cgi?id=118325
3517
3518         Reviewed by Brent Fulgham.
3519
3520         * WebCore.vcxproj/WebCore.vcxproj: Added EGL files, removed unused GraphicsContext3DOpenGL.cpp.
3521         * WebCore.vcxproj/WebCore.vcxproj.filters: Added EGL filter and files, removed unused GraphicsContext3DOpenGL.cpp.
3522
3523 2013-07-02  Jessie Berlin  <jberlin@apple.com>
3524
3525         The callback for WKPageGetPlugInInformation needs info about whether or not there are any
3526         non-playing instances of the plug-in on the page
3527         https://bugs.webkit.org/show_bug.cgi?id=118330
3528
3529         Reviewed by Anders Carlsson.
3530
3531         * WebCore.exp.in:
3532         Expose a symbol so it can be used in WebKit2.
3533
3534 2013-07-02  Alex Christensen  <achristensen@apple.com>
3535
3536         Added getProcAddress implementation for Windows in OpenGLShims.
3537         https://bugs.webkit.org/show_bug.cgi?id=118312
3538
3539         Reviewed by Brent Fulgham.
3540
3541         * platform/graphics/OpenGLShims.cpp:
3542         (WebCore::getProcAddress): Added for Windows.
3543
3544 2013-07-02  Jer Noble  <jer.noble@apple.com>
3545
3546         media/unsupported-rtsp.html is failing
3547         https://bugs.webkit.org/show_bug.cgi?id=118327
3548
3549         Reviewed by Eric Carlson.
3550
3551         Fixes the media/unsupported-rtsp.html test.
3552
3553         Set the contentType field of contentInformationRequest in order to trigger AVFoundation to
3554         notice that loading failed and generate an error.
3555
3556         * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
3557         (WebCore::WebCoreAVFResourceLoader::notifyFinished):
3558
3559 2013-07-02  Alex Christensen  <achristensen@apple.com>
3560
3561         Fixed compile error in non-X11 platforms using EGL.
3562         https://bugs.webkit.org/show_bug.cgi?id=118323
3563
3564         Reviewed by Brent Fulgham.
3565
3566         * platform/graphics/egl/GLContextEGL.cpp:
3567         (WebCore::GLContextEGL::createPixmapContext): Put all X11-specific code into #if PLATFORM(X11).
3568
3569 2013-07-02  Radu Stavila  <stavila@adobe.com>
3570
3571         [CSS Regions] Improve implementation of elements in region being flowed to another flow thread
3572         https://bugs.webkit.org/show_bug.cgi?id=118300
3573
3574         Reviewed by David Hyatt.
3575
3576         Methods that must be const have been turned back into const. Code has been better organized.
3577         Performance is better. Tests have been added to.
3578
3579         * dom/Element.cpp:
3580         (WebCore::Element::detach):
3581         (WebCore::Element::setIsInsideRegion):
3582         (WebCore::Element::isInsideRegion):
3583         (WebCore::Element::shouldMoveToFlowThread):
3584         * dom/Element.h:
3585         * dom/ElementRareData.h:
3586         (WebCore::ElementRareData::isInsideRegion):
3587         (WebCore::ElementRareData::setIsInsideRegion):
3588         (WebCore::ElementRareData::ElementRareData):
3589         * dom/Node.cpp:
3590         (WebCore::Node::isRegisteredWithNamedFlow):
3591         * dom/Node.h:
3592         * dom/NodeRenderingContext.cpp:
3593         (WebCore::NodeRenderingContext::parentRenderer):
3594         (WebCore::NodeRenderingContext::shouldCreateRenderer):
3595         (WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
3596         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
3597         (WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
3598         * dom/NodeRenderingContext.h:
3599         * dom/PseudoElement.h:
3600         * dom/Text.cpp:
3601         (WebCore::Text::textRendererIsNeeded):
3602         * dom/Text.h:
3603         * rendering/FlowThreadController.cpp:
3604         (WebCore::FlowThreadController::unregisterNamedFlowContentNode):
3605         (WebCore::FlowThreadController::isContentNodeRegisteredWithAnyNamedFlow):
3606         * rendering/FlowThreadController.h:
3607         * rendering/RenderObject.h:
3608         * rendering/RenderRegion.h:
3609         * svg/SVGElement.cpp:
3610         (WebCore::SVGElement::shouldMoveToFlowThread):
3611         * svg/SVGElement.h:
3612
3613 2013-07-02  Eric Carlson  <eric.carlson@apple.com>
3614
3615         [Mac] .webkitClosedCaptionsVisible doesn't work with "Automatic" caption mode
3616         https://bugs.webkit.org/show_bug.cgi?id=118319
3617
3618         Reviewed by Darin Adler.
3619
3620         Test: media/track/track-legacyapi-with-automatic-mode.html
3621
3622         * page/CaptionUserPreferencesMediaAF.cpp:
3623         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore): Don't apply "automatic"
3624             logic when captions were enabled with .webkitClosedCaptionsVisible.
3625
3626 2013-07-02  Anders Carlsson  <andersca@apple.com>
3627
3628         Always flip the coordinate system before drawing NSViews from Widget::paint
3629         https://bugs.webkit.org/show_bug.cgi?id=118318
3630         <rdar://problem/13895483>
3631
3632         Reviewed by Beth Dakin.
3633
3634         Undo the change that would not flip on 10.9; turns out the bug was in AppKit. Also remove the
3635         _hasCanDrawSubviewsIntoLayerOrAncestor workaround since drawing works correctly now.
3636
3637         Also, pass flipped:NO when creating the NSGraphicsContext to indicate that the graphics context
3638         is unflipped as far as AppKit knows (since we flipped it earlier).
3639
3640         * platform/mac/WidgetMac.mm:
3641         (WebCore::Widget::paint):
3642
3643 2013-06-26  Robert Hogan  <robert@webkit.org>
3644
3645         empty inlines should not affect line-wrapping
3646         https://bugs.webkit.org/show_bug.cgi?id=25638
3647
3648         Reviewed by David Hyatt.
3649
3650         Don't break on empty inlines if we're in the middle of a word. I took this opportunity to
3651         refactor the series of checks we perform to establish if we can break at the current position.
3652
3653         Test: fast/text/whitespace/inline-whitespace-wrapping-11.html
3654
3655         * rendering/RenderBlockLineLayout.cpp:
3656         (WebCore::textBeginsWithBreakablePosition):
3657         (WebCore::canBreakAtThisPosition):
3658         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
3659
3660 2013-07-02  Jae Hyun Park  <jae.park@company100.net>
3661
3662         Implement CoordinatedSurface for Threaded Coordinated Graphics
3663         https://bugs.webkit.org/show_bug.cgi?id=109661
3664
3665         Reviewed by Noam Rosenthal.
3666
3667         This is a preparation patch for Threaded Coordianted Graphics.
3668
3669         This patch implements ThreadSafeCoordinatedSurface using ImageBuffer as a
3670         backend. Also, this patch moves common implementation to CoordinatedSurface to
3671         prevent duplication of code.
3672
3673         * platform/graphics/texmap/coordinated/CoordinatedSurface.cpp:
3674         (WebCore::CoordinatedSurface::CoordinatedSurface):
3675         * platform/graphics/texmap/coordinated/CoordinatedSurface.h:
3676         (WebCore::CoordinatedSurface::size):
3677         (WebCore::CoordinatedSurface::flags):
3678         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.cpp: Added.
3679         (WebCore::ThreadSafeCoordinatedSurface::create):
3680         (WebCore::ThreadSafeCoordinatedSurface::ThreadSafeCoordinatedSurface):
3681         (WebCore::ThreadSafeCoordinatedSurface::~ThreadSafeCoordinatedSurface):
3682         (WebCore::ThreadSafeCoordinatedSurface::paintToSurface):
3683         (WebCore::ThreadSafeCoordinatedSurface::copyToTexture):
3684         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.h: Added.
3685
3686 2013-07-02  Geoffrey Garen  <ggaren@apple.com>
3687
3688         plainText() is O(N^2)
3689         https://bugs.webkit.org/show_bug.cgi?id=118282
3690         <rdar://problem/14284360>
3691
3692         Reviewed by Alexey Proskuryakov.
3693
3694         * editing/TextIterator.cpp:
3695         (WebCore::plainText): Linear growth for a vector data type is O(N^2).
3696         Don't do that. Luckily, StringBuilder does the right thing automatically,
3697         so we can just delete code.
3698
3699 2013-07-02  Tim Horton  <timothy_horton@apple.com>
3700
3701         constrainScrollPositionForOverhang needs to handle scrollOrigin correctly
3702         https://bugs.webkit.org/show_bug.cgi?id=118176
3703         <rdar://problem/14301271>
3704
3705         Reviewed by Anders Carlsson.
3706
3707         Test: compositing/geometry/fixed-position-flipped-writing-mode.html
3708
3709         WebCore makes use of constrainScrollPositionForOverhang not only for
3710         constraining fixed- and sticky-positioned elements to the viewport, but
3711         also for clamping the tile cache's visible rect.
3712
3713         Therefore, constrainScrollPositionForOverhang needs to correctly take
3714         the scrollOrigin into account. The easiest way I saw to do this was to
3715         reimplement the function in terms of a pair of rect intersections
3716         between a virtual scrollable "viewport" and the document (with a bit
3717         of complication from headers and footers).
3718
3719         The first intersection is performed, then if the viewport doesn't fit,
3720         it is pushed down and to the right, from the origin. Next, we intersect
3721         again, this time pushing the rect up by the amount it overflowed the document
3722         rect from the bottom right. This performs effectively the same constraint
3723         as previously, but handles the scrollOrigin correctly and is also somewhat
3724         easier to read and understand (with pictures).
3725
3726         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
3727         (WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
3728         Subtract the scrollOrigin out of the offset passed to scrollOffsetForFixedPosition,
3729         it's expecting an offset without the origin included.
3730
3731         * platform/ScrollableArea.cpp:
3732         (WebCore::ScrollableArea::constrainScrollPositionForOverhang):
3733         Reimplement the function as described above.
3734
3735 2013-07-02  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3736
3737         Remove SVGStyledLocatableElement class
3738         https://bugs.webkit.org/show_bug.cgi?id=118283
3739
3740         Reviewed by Dirk Schulze.
3741
3742         Remove SVGStyledLocatableElement class and have SVGGraphicsElement
3743         inherit SVGStyledElement directly instead. SVGStyledLocatableElement
3744         is no longer needed and according to the specification, SVGGraphicsElement
3745         should inherit SVGStyledElement (actually SVGElement once we merge
3746         SVGStyledElement into SVGElement).
3747
3748         No new tests, no behavior change.
3749
3750         * CMakeLists.txt:
3751         * GNUmakefile.list.am:
3752         * Target.pri:
3753         * WebCore.order:
3754         * WebCore.vcxproj/WebCore.vcxproj:
3755         * WebCore.vcxproj/WebCore.vcxproj.filters:
3756         * WebCore.xcodeproj/project.pbxproj:
3757         * bindings/scripts/CodeGeneratorJS.pm:
3758         (GetGnuVTableOffsetForType):
3759         * svg/SVGAllInOne.cpp:
3760         * svg/SVGElement.cpp:
3761         (WebCore::SVGElement::getBoundingBox):
3762         * svg/SVGElement.h:
3763         * svg/SVGGraphicsElement.cpp:
3764         (WebCore::SVGGraphicsElement::SVGGraphicsElement):
3765         (WebCore::SVGGraphicsElement::parseAttribute):
3766         (WebCore::SVGGraphicsElement::svgAttributeChanged):
3767         * svg/SVGGraphicsElement.h:
3768         * svg/SVGLocatable.cpp:
3769         (WebCore::SVGLocatable::getTransformToElement):
3770         * svg/SVGStyledElement.cpp:
3771         (WebCore::SVGStyledElement::localCoordinateSpaceTransform):
3772         * svg/SVGStyledLocatableElement.cpp: Removed.
3773         * svg/SVGStyledLocatableElement.h: Removed.
3774
3775 2013-07-02  peavo@outlook.com  <peavo@outlook.com>
3776
3777         [Curl] Crash after download.
3778         https://bugs.webkit.org/show_bug.cgi?id=118303
3779
3780         Reviewed by Brent Fulgham.
3781
3782         We need to make sure that the Curl easy handle is removed from the Curl multi handle before it's freed.
3783
3784         * platform/network/curl/CurlDownload.cpp:
3785         (CurlDownloadManager::updateHandleList): Use addToCurl() and removeFromCurl() methods.
3786         (CurlDownloadManager::addToCurl): Add method to add easy handle to multi handle.
3787         (CurlDownloadManager::removeFromCurl): Add method to remove easy handle from multi handle, and then delete the handle.
3788         (CurlDownloadManager::downloadThread): Use removeFromCurl() method.
3789         (CurlDownload::~CurlDownload):
3790         * platform/network/curl/CurlDownload.h: Avoid deleting Curl easy handle in destructor.
3791
3792 2013-07-02  Radu Stavila  <stavila@adobe.com>
3793
3794         [CSSRegions] No other SVG elements except the SVGRoot must have RegionInfo objects attached
3795         https://bugs.webkit.org/show_bug.cgi?id=118295
3796
3797         Reviewed by Antti Koivisto.
3798
3799         Only the SVGRoot element can be collected in a named flow. As such, no SVG element below the root should
3800         be attached to a RenderBoxRegionInfo object.
3801
3802         A larger patch's test (https://bugs.webkit.org/show_bug.cgi?id=118300) is failing because of this.
3803         This change will be covered by that test.
3804
3805         * rendering/RenderBoxModelObject.h:
3806         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
3807         * rendering/RenderObject.h:
3808         (WebCore::RenderObject::isRenderSVGBlock):
3809         * rendering/svg/RenderSVGBlock.h:
3810
3811 2013-07-02  Kangil Han  <kangil.han@samsung.com>
3812
3813         is/toHTMLStyleElement should use Element* for its argument
3814         https://bugs.webkit.org/show_bug.cgi?id=118286
3815
3816         Reviewed by Andreas Kling.
3817
3818         To reduce unnecessary call of isElementNode(), this patch replaces argument
3819         of is/toHTMLStyleElement from Node* to Element*. Plus, use Element::hasTagName
3820         in collectActiveStyleSheets function for minor code refactoring since
3821         its cost is cheaper than Node::hasTagName.
3822
3823         * css/CSSStyleSheet.cpp:
3824         (WebCore::isAcceptableCSSStyleSheetParent):
3825         * css/StyleScopeResolver.cpp:
3826         (WebCore::StyleScopeResolver::scopeFor):
3827         * dom/DocumentStyleSheetCollection.cpp:
3828         (WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
3829         * dom/Node.cpp:
3830         (WebCore::Node::numberOfScopedHTMLStyleChildren):
3831         * html/HTMLStyleElement.h:
3832         (WebCore::isHTMLStyleElement):
3833         (WebCore::toHTMLStyleElement):
3834
3835 2013-07-02  Ryosuke Niwa  <rniwa@webkit.org>
3836
3837         Unexpose EditingPropertiesToInclude in EditingStyle.h after r151772
3838         https://bugs.webkit.org/show_bug.cgi?id=118271
3839
3840         Reviewed by Andreas Kling.
3841
3842         Don't expose EditingPropertiesToInclude in EditingStyle.h and do other cleanups as described below.
3843
3844         No new tests since there should be no behavioral change.
3845
3846         * editing/EditingStyle.cpp:
3847         (WebCore::copyEditingProperties): Use newly defined numAllEditingProperties and numInheritableEditingProperties
3848         instead of a magic number of 2.
3849         (WebCore::copyPropertiesFromComputedStyle): Renamed from editingStyleFromComputedStyle. It now takes ComputedStyleExtractor and
3850         PropertiesToInclude instead of Node* and EditingPropertiesToInclude and handles AllProperties. Also added a helper that takes Node*.
3851         (WebCore::EditingStyle::init): Calls copyPropertiesFromComputedStyle. Unfortunately, we need to special-case EditingPropertiesInEffect
3852         and not set background-color and text-decoration. This is required probably due to a bug elsewhere.
3853         (WebCore::EditingStyle::removeStyleAddedByNode):
3854         (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
3855         (WebCore::extractEditingProperties): Renamed from EditingStyle::removeAllButEditingProperties; takes PropertiesToInclude instead of
3856         EditingPropertiesToInclude since the only caller of this function, EditingStyle::mergeInlineAndImplicitStyleOfElement, was converting
3857         the type.
3858         (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement):
3859         * editing/EditingStyle.h:
3860
3861 2013-07-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3862
3863         Introduce toSVGInlineTextBox
3864         https://bugs.webkit.org/show_bug.cgi?id=118289
3865
3866         Reviewed by Andreas Kling.
3867
3868         As a step to change static_cast with toXXX, static_cast<SVGInlineTextBox*> can
3869         be changed with toSVGInlineTextBox().
3870
3871         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153345
3872
3873         * rendering/svg/RenderSVGInlineText.cpp:
3874         (WebCore::RenderSVGInlineText::positionForPoint):
3875         * rendering/svg/SVGInlineFlowBox.cpp:
3876         (WebCore::SVGInlineFlowBox::paintSelectionBackground):
3877         (WebCore::SVGInlineFlowBox::paint):
3878         (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):
3879         * rendering/svg/SVGInlineTextBox.h:
3880         (WebCore::toSVGInlineTextBox):
3881         * rendering/svg/SVGRenderTreeAsText.cpp:
3882         (WebCore::writeSVGInlineTextBoxes):
3883         * rendering/svg/SVGRootInlineBox.cpp:
3884         (WebCore::SVGRootInlineBox::paint):
3885         (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
3886         (WebCore::SVGRootInlineBox::layoutChildBoxes):
3887         (WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
3888         * rendering/svg/SVGTextQuery.cpp:
3889         (WebCore::SVGTextQuery::collectTextBoxesInFlowBox):
3890
3891 2013-07-02  Christophe Dumez  <ch.dumez@sisa.samsung.com>
3892
3893         Simplify SVGTextContentElement::elementFromRenderer()
3894         https://bugs.webkit.org/show_bug.cgi?id=118284
3895
3896         Reviewed by Andreas Kling.
3897
3898         Simplify SVGTextContentElement::elementFromRenderer() by leveraging
3899         SVGElement::isTextContent() methods instead of explicitly checking
3900         for tag names.
3901
3902         No new tests, no behavior change.
3903
3904         * svg/SVGTextContentElement.cpp:
3905         (WebCore::SVGTextContentElement::elementFromRenderer):
3906
3907 2013-07-02  Csaba Osztrogonác  <ossy@webkit.org>
3908
3909         Fix cast-align warnings in WebCore/platform/graphics/texmap/TextureMapperGL.cpp
3910         https://bugs.webkit.org/show_bug.cgi?id=118249
3911
3912         Reviewed by Allan Sandfeld Jensen.
3913
3914         * platform/graphics/texmap/TextureMapperGL.cpp:
3915         (WebCore::BitmapTextureGL::updateContents):
3916
3917 2013-07-02  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3918
3919         [Qt][WK1] Support WebGL with EGL on Linux
3920         https://bugs.webkit.org/show_bug.cgi?id=118251
3921
3922         Reviewed by Kenneth Rohde Christiansen.
3923
3924         Let GraphicsContext3D work without a GraphicsSurface.
3925
3926         * Target.pri:
3927         * platform/graphics/OpenGLShims.cpp:
3928         (WebCore::getProcAddress):
3929         * platform/graphics/qt/GraphicsContext3DQt.cpp:
3930         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
3931         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
3932
3933 2013-07-02  Catalin Badea  <badea@adobe.com>
3934
3935         [CSS-Regions] OverrideLogicalHeight used by both regions and flexbox
3936         https://bugs.webkit.org/show_bug.cgi?id=118057
3937
3938         Reviewed by David Hyatt.
3939
3940         Remove the use of overrideLogicalContentHeight() from regions and
3941         use a local variable instead. The change was needed to avoid
3942         overlapping with flexbox containers.
3943
3944         Test: fast/regions/autoheight-flexbox.html
3945
3946         * rendering/RenderFlowThread.cpp:
3947         (WebCore::RenderFlowThread::validateRegions):
3948         (WebCore::RenderFlowThread::layout):
3949         (WebCore::RenderFlowThread::applyBreakAfterContent):
3950         (WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
3951         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
3952         (WebCore::RenderFlowThread::addForcedRegionBreak):
3953         * rendering/RenderFlowThread.h:
3954         * rendering/RenderRegion.cpp:
3955         (WebCore::RenderRegion::RenderRegion):
3956         (WebCore::RenderRegion::pageLogicalHeight):
3957         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
3958         (WebCore::RenderRegion::updateRegionHasAutoLogicalHeightFlag):
3959         (WebCore::RenderRegion::layoutBlock):
3960         (WebCore::RenderRegion::updateLogicalHeight):
3961         * rendering/RenderRegion.h:
3962         (WebCore::RenderRegion::computedAutoHeight):
3963         (WebCore::RenderRegion::setComputedAutoHeight):
3964         (WebCore::RenderRegion::clearComputedAutoHeight):
3965         (WebCore::RenderRegion::hasComputedAutoHeight):
3966         * rendering/RenderView.cpp:
3967
3968 2013-07-01  Alex Christensen  <achristensen@apple.com>
3969
3970         Windows should be included in the list of platforms that can use OpenGL ES 2.
3971         https://bugs.webkit.org/show_bug.cgi?id=118264
3972
3973         Reviewed by Dean Jackson.
3974
3975         * platform/graphics/GraphicsContext3D.h: Added PLATFORM(WIN) to platforms using OpenGL ES 2.
3976
3977 2013-07-01  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
3978
3979         [GTK] Remove unsupported AC backends
3980         https://bugs.webkit.org/show_bug.cgi?id=117362
3981
3982         Reviewed by Martin Robinson.
3983
3984         * GNUmakefile.am:
3985         * GNUmakefile.list.am:
3986         * Source/WebCore/platform/graphics/PlatformLayer.h: Removed mentions of clutter
3987         and the texmap cairo backend.
3988         * platform/graphics/clutter/DrawingBufferClutter.cpp: Removed.
3989         * platform/graphics/clutter/GraphicsContext3DClutter.cpp: Removed.
3990         * platform/graphics/clutter/GraphicsContext3DPrivate.cpp: Removed.
3991         * platform/graphics/clutter/GraphicsContext3DPrivate.h: Removed.
3992         * platform/graphics/clutter/GraphicsLayerActor.cpp: Removed.
3993         * platform/graphics/clutter/GraphicsLayerActor.h: Removed.
3994         * platform/graphics/clutter/GraphicsLayerClutter.cpp: Removed.
3995         * platform/graphics/clutter/GraphicsLayerClutter.h: Removed.
3996         * platform/graphics/clutter/PlatformClutterAnimation.cpp: Removed.
3997         * platform/graphics/clutter/PlatformClutterAnimation.h: Removed.
3998         * platform/graphics/clutter/PlatformClutterLayerClient.h: Removed.
3999         * platform/graphics/clutter/TransformationMatrixClutter.cpp: Removed.
4000         * Source/WebCore/platform/graphics/transforms/TransformationMatrix.h: Removed cogl
4001         matrix type conversion.
4002
4003 2013-07-01  Alex Christensen  <achristensen@apple.com>
4004
4005         DrawingBuffer constructor and destructor were not defined for Windows.
4006         I moved duplicate code from Cairo and Qt to DrawingBuffer.cpp to be used by Qt, Cairo, and Windows.
4007         https://bugs.webkit.org/show_bug.cgi?id=118262
4008
4009         Reviewed by Dean Jackson.
4010
4011         * platform/graphics/cairo/DrawingBufferCairo.cpp: Removed duplicate DrawingBuffer constructor and destructor.
4012         * platform/graphics/gpu/DrawingBuffer.cpp:
4013         (WebCore::DrawingBuffer::DrawingBuffer):
4014         (WebCore::DrawingBuffer::~DrawingBuffer): Moved from Cairo and Qt implementation.
4015         * platform/graphics/gpu/qt/DrawingBufferQt.cpp: Removed duplicate DrawingBuffer constructor and destructor.
4016
4017 2013-07-01  Alex Christensen  <achristensen@apple.com>
4018
4019         Fixed unreachable return when GLX or EGL are used with WebGL.
4020         https://bugs.webkit.org/show_bug.cgi?id=118263
4021
4022         Reviewed by Noam Rosenthal.
4023
4024         * platform/graphics/opengl/GLPlatformContext.cpp:
4025         (WebCore::createOffScreenContext): Fixed unreachable return.
4026
4027 2013-07-01  Tim Horton  <timothy_horton@apple.com>
4028
4029         Maximum scroll position can be negative in some cases
4030         https://bugs.webkit.org/show_bug.cgi?id=118175
4031         <rdar://problem/14301217>
4032
4033         Reviewed by Anders Carlsson.
4034
4035         Test (API): WebKit2.ResizeReversePaginatedWebView
4036
4037         * page/FrameView.cpp:
4038         (WebCore::FrameView::maximumScrollPosition):
4039         * page/FrameView.h:
4040         Override maximumScrollPosition() in FrameView and don't clamp to zero if
4041         a reverse pagination mode is enabled, as it is possible (and common) to
4042         have a negative maximum scroll position with reverse pagination.
4043
4044         * platform/ScrollView.cpp:
4045         (WebCore::ScrollView::updateScrollbars):
4046         Drive-by adoption of toIntSize().
4047
4048 2013-07-01  Alex Christensen  <achristensen@apple.com>
4049
4050         Removed all references to DrawingBuffer methods unused since the removal of Chromium:
4051         DrawingBuffer::prepareBackBuffer,
4052         DrawingBuffer::requiresCopyFromBackToFrontBuffer, and
4053         DrawingBuffer::clearPlatformLayer.
4054         https://bugs.webkit.org/show_bug.cgi?id=118257
4055
4056         Reviewed by Darin Adler.
4057
4058         * platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
4059         (WebCore::DrawingBuffer::platformLayer):
4060         * platform/graphics/cairo/DrawingBufferCairo.cpp:
4061         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
4062         * platform/graphics/clutter/DrawingBufferClutter.cpp:
4063         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
4064         * platform/graphics/gpu/DrawingBuffer.cpp:
4065         (WebCore::DrawingBuffer::clear):
4066         * platform/graphics/gpu/DrawingBuffer.h:
4067         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
4068         (WebCore::DrawingBuffer::frontColorBuffer):
4069         * platform/graphics/gpu/qt/DrawingBufferQt.cpp:
4070         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
4071
4072 2013-07-01  Jochen Eisinger  <jochen@chromium.org>
4073
4074         Remove support for consumable user gestures
4075         https://bugs.webkit.org/show_bug.cgi?id=118247
4076
4077         Reviewed by Geoffrey Garen.
4078
4079         The features was not enabled on any port, and is meanwhile broken, so we
4080         should delete it.
4081
4082         No new tests, just deleting dead code.
4083
4084         * accessibility/AccessibilityNodeObject.cpp:
4085         (WebCore::AccessibilityNodeObject::increment):
4086         (WebCore::AccessibilityNodeObject::decrement):
4087         * accessibility/AccessibilityObject.cpp:
4088         (WebCore::AccessibilityObject::press):
4089         * bindings/ScriptControllerBase.cpp:
4090         (WebCore::ScriptController::executeScript):
4091         * bindings/js/ScriptController.cpp:
4092         (WebCore::ScriptController::executeScriptInWorld):
4093         * dom/UserGestureIndicator.cpp:
4094         (WebCore::isDefinite):
4095         (WebCore::UserGestureIndicator::UserGestureIndicator):
4096         (WebCore::UserGestureIndicator::~UserGestureIndicator):
4097         * dom/UserGestureIndicator.h:
4098         (WebCore::UserGestureIndicator::processingUserGesture):
4099         * inspector/InspectorFrontendClientLocal.cpp:
4100         (WebCore::InspectorFrontendClientLocal::openInNewTab):
4101         * inspector/InspectorFrontendHost.cpp:
4102         (WebCore::FrontendMenuProvider::contextMenuItemSelected):
4103         * inspector/InspectorPageAgent.cpp:
4104         (WebCore::InspectorPageAgent::navigate):
4105         * loader/NavigationScheduler.cpp:
4106         (WebCore::ScheduledURLNavigation::fire):
4107         (WebCore::ScheduledURLNavigation::didStartTimer):
4108         (WebCore::ScheduledRedirect::fire):
4109    &nb