H&R Block 2010 Help window can not be reopened.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-07-03  Zalan Bujtas  <zalan@apple.com>
2
3         H&R Block 2010 Help window can not be reopened.
4         https://bugs.webkit.org/show_bug.cgi?id=118342
5
6         Reviewed by Antti Koivisto.
7
8         http://trac.webkit.org/changeset/118916 changed the window.focus() behaviour so that
9         only the opener can (re)focus() a particular window.
10         H&R Block app relies on the relaxed window.focus() rules.
11
12         * WebCore.exp.in:
13         * platform/RuntimeApplicationChecks.cpp:
14         (WebCore::applicationIsHRBlock):
15         * platform/RuntimeApplicationChecks.h:
16
17 2013-07-03  Zan Dobersek  <zdobersek@igalia.com>
18
19         Further build fixing for build configurations that disable CSS regions support.
20
21         * dom/PseudoElement.h: Wrap shouldMoveToFlowThread override into the ENABLE(CSS_REGIONS) build guard.
22
23 2013-07-03  Zan Dobersek  <zdobersek@igalia.com>
24
25         Unreviewed build fix after r152320 and r152345 for build configurations that enable
26         SVG support but disable CSS regions support.
27
28         * svg/SVGElement.cpp: Wrap shouldMoveToFlowThread override into the ENABLE(CSS_REGIONS) build guard.
29         * svg/SVGElement.h: Ditto.
30
31 2013-07-03  Radu Stavila  <stavila@adobe.com>
32
33         [CSS Regions] Improve implementation of elements in region being flowed to another flow thread
34         https://bugs.webkit.org/show_bug.cgi?id=118300
35
36         Based on patch by Zoltán Árvai <zarvai@inf.u-szeged.hu>
37
38         Reviewed by Csaba Osztrogonác.
39
40         Fixed CSS_REGIONS guard.
41
42         * dom/Element.h:
43         * dom/NodeRenderingContext.cpp:
44         (WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
45         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
46
47 2013-07-03  Christophe Dumez  <ch.dumez@sisa.samsung.com>
48
49         Move SVGTests attributes parsing to SVGGraphicsElement
50         https://bugs.webkit.org/show_bug.cgi?id=118292
51
52         Reviewed by Darin Adler.
53
54         Move SVGTests attributes parsing to SVGGraphicsElement instead of doing
55         this in each of its subclasses. SVGGraphicsElement is now the one
56         subclassing SVGTests after r152167.
57
58         No new tests, no behavior change.
59
60         * svg/SVGAElement.cpp:
61         (WebCore::SVGAElement::isSupportedAttribute):
62         (WebCore::SVGAElement::parseAttribute):
63         * svg/SVGCircleElement.cpp:
64         (WebCore::SVGCircleElement::isSupportedAttribute):
65         (WebCore::SVGCircleElement::parseAttribute):
66         (WebCore::SVGCircleElement::svgAttributeChanged):
67         * svg/SVGClipPathElement.cpp:
68         (WebCore::SVGClipPathElement::isSupportedAttribute):
69         (WebCore::SVGClipPathElement::parseAttribute):
70         * svg/SVGEllipseElement.cpp:
71         (WebCore::SVGEllipseElement::isSupportedAttribute):
72         (WebCore::SVGEllipseElement::parseAttribute):
73         (WebCore::SVGEllipseElement::svgAttributeChanged):
74         * svg/SVGForeignObjectElement.cpp:
75         (WebCore::SVGForeignObjectElement::isSupportedAttribute):
76         (WebCore::SVGForeignObjectElement::parseAttribute):
77         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
78         * svg/SVGGElement.cpp:
79         (WebCore::SVGGElement::isSupportedAttribute):
80         (WebCore::SVGGElement::parseAttribute):
81         (WebCore::SVGGElement::svgAttributeChanged):
82         * svg/SVGGraphicsElement.cpp:
83         (WebCore::SVGGraphicsElement::isSupportedAttribute):
84         (WebCore::SVGGraphicsElement::parseAttribute):
85         (WebCore::SVGGraphicsElement::svgAttributeChanged):
86         * svg/SVGImageElement.cpp:
87         (WebCore::SVGImageElement::isSupportedAttribute):
88         (WebCore::SVGImageElement::parseAttribute):
89         (WebCore::SVGImageElement::svgAttributeChanged):
90         * svg/SVGLineElement.cpp:
91         (WebCore::SVGLineElement::isSupportedAttribute):
92         (WebCore::SVGLineElement::parseAttribute):
93         (WebCore::SVGLineElement::svgAttributeChanged):
94         * svg/SVGPathElement.cpp:
95         (WebCore::SVGPathElement::isSupportedAttribute):
96         (WebCore::SVGPathElement::parseAttribute):
97         (WebCore::SVGPathElement::svgAttributeChanged):
98         * svg/SVGPolyElement.cpp:
99         (WebCore::SVGPolyElement::isSupportedAttribute):
100         (WebCore::SVGPolyElement::parseAttribute):
101         (WebCore::SVGPolyElement::svgAttributeChanged):
102         * svg/SVGRectElement.cpp:
103         (WebCore::SVGRectElement::isSupportedAttribute):
104         (WebCore::SVGRectElement::parseAttribute):
105         (WebCore::SVGRectElement::svgAttributeChanged):
106         * svg/SVGSVGElement.cpp:
107         (WebCore::SVGSVGElement::parseAttribute):
108         (WebCore::SVGSVGElement::svgAttributeChanged): Fall back to calling
109         SVGGraphicsElement::svgAttributeChanged() instead of
110         SVGStyledElement::svgAttributeChanged() as SVGGraphicsElement is the
111         parent class and it takes care of parsing SVGTests attributes now.
112         * svg/SVGUseElement.cpp:
113         (WebCore::SVGUseElement::isSupportedAttribute):
114         (WebCore::SVGUseElement::parseAttribute):
115         (WebCore::SVGUseElement::svgAttributeChanged):
116
117 2013-07-02  Ryosuke Niwa  <rniwa@webkit.org>
118
119         Modernize QualifiedName by wrapping gNameCache in a function and using more early exits
120         https://bugs.webkit.org/show_bug.cgi?id=118299
121
122         Reviewed by Andreas Kling.
123
124         Did cleanups.
125
126         * dom/QualifiedName.cpp:
127         (WebCore::qualifiedNameCache): Added to wrap gNameCache.
128         (WebCore::QualifiedName::QualifiedName):
129         (WebCore::QualifiedName::QualifiedNameImpl::~QualifiedNameImpl):
130         (WebCore::QualifiedName::toString): Use early exit and StringBuilder.
131         (WebCore::QualifiedName::init): Use early exit.
132
133 2013-07-02  Simon Fraser  <simon.fraser@apple.com>
134
135         Don't set z-index: 0 on lots of elements with -webkit-overflow-scrolling: touch
136         https://bugs.webkit.org/show_bug.cgi?id=118337
137
138         Reviewed by Benjamin Poulain.
139
140         -webkit-overflow-scrolling: touch is an inherited property that, on iOS, controls
141         the behavior of overflow scrolling content, and causes overflow scrolling elements
142         to become CSS stacking contexts.
143          
144         However, the code was too aggressive in setting style->setZIndex(0), doing so
145         for any element with overflow != hidden. Since the default for overflow is visible,
146         that meant almost every element.
147         
148         Previously, this didn't really matter. However, since r125693, any renderer with non-auto
149         z-index gets a RenderLayer, and that RenderLayer will become a stacking context. The result
150         was too many RenderLayers and incorrect stacking context behavior.
151         
152         Fix by ensuring that -webkit-overflow-scrolling: touch  only affects elements which
153         are actually scrollable.
154         
155         Also move the code that does this to below the code that adjust overflow style
156         for different elements.
157
158         * css/StyleResolver.cpp:
159         (WebCore::isScrollableOverflow):
160         (WebCore::StyleResolver::adjustRenderStyle):
161
162 2013-07-02  Commit Queue  <commit-queue@webkit.org>
163
164         Unreviewed, rolling out r152318.
165         http://trac.webkit.org/changeset/152318
166         https://bugs.webkit.org/show_bug.cgi?id=118333
167
168         This patch broke media/track/track-automatic-subtitles.html on
169         Mac (Requested by dfarler on #webkit).
170
171         * page/CaptionUserPreferencesMediaAF.cpp:
172         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore):
173
174 2013-07-02  Ruth Fong  <ruth_fong@apple.com>
175
176         Change event should not be dispatched by clicking a scrollbar of select listbox
177         https://bugs.webkit.org/show_bug.cgi?id=118019
178         <rdar://problem/14297760>
179
180         Reviewed by Dean Jackson.
181
182         Test: fast/forms/select/listbox-click-on-scrollbar.html
183
184         Merge the following:
185         http://src.chromium.org/viewvc/blink?view=revision&revision=151689
186         https://chromium.googlesource.com/chromium/blink/+/492549b0fcaa58a85aa0797446b62985a263704f
187
188         Previously, a select element with the multiple attribute would dispatch
189         an onChanged event when the scrollbar is clicked. This patch corrects this
190         issue by only calling listBoxOnChange(), which fires the onChanged event, 
191         when an actual option is clicked.
192
193         * html/HTMLSelectElement.cpp:
194         (WebCore::HTMLSelectElement::childrenChanged): Updated to clear the list
195         of selected items when when an <option> element is added to/deleted from its <select> element.
196         (Without this addition, if a option was selected, and then JavaScript was used to modify 
197         the <select> element, and then the scrollbar was clicked, an onChanged event would fire 
198         because it remembers the previously selected option.)
199
200         (WebCore::HTMLSelectElement::listBoxOnChange):
201
202         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler): Updated to
203         only call listBoxOnChange() if at least one option is selected. 
204
205 2013-07-02  Alex Christensen  <achristensen@apple.com>
206
207         Preparing Windows WebGL build system.
208         https://bugs.webkit.org/show_bug.cgi?id=118325
209
210         Reviewed by Brent Fulgham.
211
212         * WebCore.vcxproj/WebCore.vcxproj: Added EGL files, removed unused GraphicsContext3DOpenGL.cpp.
213         * WebCore.vcxproj/WebCore.vcxproj.filters: Added EGL filter and files, removed unused GraphicsContext3DOpenGL.cpp.
214
215 2013-07-02  Jessie Berlin  <jberlin@apple.com>
216
217         The callback for WKPageGetPlugInInformation needs info about whether or not there are any
218         non-playing instances of the plug-in on the page
219         https://bugs.webkit.org/show_bug.cgi?id=118330
220
221         Reviewed by Anders Carlsson.
222
223         * WebCore.exp.in:
224         Expose a symbol so it can be used in WebKit2.
225
226 2013-07-02  Alex Christensen  <achristensen@apple.com>
227
228         Added getProcAddress implementation for Windows in OpenGLShims.
229         https://bugs.webkit.org/show_bug.cgi?id=118312
230
231         Reviewed by Brent Fulgham.
232
233         * platform/graphics/OpenGLShims.cpp:
234         (WebCore::getProcAddress): Added for Windows.
235
236 2013-07-02  Jer Noble  <jer.noble@apple.com>
237
238         media/unsupported-rtsp.html is failing
239         https://bugs.webkit.org/show_bug.cgi?id=118327
240
241         Reviewed by Eric Carlson.
242
243         Fixes the media/unsupported-rtsp.html test.
244
245         Set the contentType field of contentInformationRequest in order to trigger AVFoundation to 
246         notice that loading failed and generate an error.
247
248         * platform/graphics/avfoundation/objc/WebCoreAVFResourceLoader.mm:
249         (WebCore::WebCoreAVFResourceLoader::notifyFinished):
250
251 2013-07-02  Alex Christensen  <achristensen@apple.com>
252
253         Fixed compile error in non-X11 platforms using EGL.
254         https://bugs.webkit.org/show_bug.cgi?id=118323
255
256         Reviewed by Brent Fulgham.
257
258         * platform/graphics/egl/GLContextEGL.cpp:
259         (WebCore::GLContextEGL::createPixmapContext): Put all X11-specific code into #if PLATFORM(X11).
260
261 2013-07-02  Radu Stavila  <stavila@adobe.com>
262
263         [CSS Regions] Improve implementation of elements in region being flowed to another flow thread
264         https://bugs.webkit.org/show_bug.cgi?id=118300
265
266         Reviewed by David Hyatt.
267
268         Methods that must be const have been turned back into const. Code has been better organized. 
269         Performance is better. Tests have been added to.
270
271         * dom/Element.cpp:
272         (WebCore::Element::detach):
273         (WebCore::Element::setIsInsideRegion):
274         (WebCore::Element::isInsideRegion):
275         (WebCore::Element::shouldMoveToFlowThread):
276         * dom/Element.h:
277         * dom/ElementRareData.h:
278         (WebCore::ElementRareData::isInsideRegion):
279         (WebCore::ElementRareData::setIsInsideRegion):
280         (WebCore::ElementRareData::ElementRareData):
281         * dom/Node.cpp:
282         (WebCore::Node::isRegisteredWithNamedFlow):
283         * dom/Node.h:
284         * dom/NodeRenderingContext.cpp:
285         (WebCore::NodeRenderingContext::parentRenderer):
286         (WebCore::NodeRenderingContext::shouldCreateRenderer):
287         (WebCore::NodeRenderingContext::elementInsideRegionNeedsRenderer):
288         (WebCore::NodeRenderingContext::moveToFlowThreadIfNeeded):
289         (WebCore::NodeRenderingContext::createRendererForElementIfNeeded):
290         * dom/NodeRenderingContext.h:
291         * dom/PseudoElement.h:
292         * dom/Text.cpp:
293         (WebCore::Text::textRendererIsNeeded):
294         * dom/Text.h:
295         * rendering/FlowThreadController.cpp:
296         (WebCore::FlowThreadController::unregisterNamedFlowContentNode):
297         (WebCore::FlowThreadController::isContentNodeRegisteredWithAnyNamedFlow):
298         * rendering/FlowThreadController.h:
299         * rendering/RenderObject.h:
300         * rendering/RenderRegion.h:
301         * svg/SVGElement.cpp:
302         (WebCore::SVGElement::shouldMoveToFlowThread):
303         * svg/SVGElement.h:
304
305 2013-07-02  Eric Carlson  <eric.carlson@apple.com>
306
307         [Mac] .webkitClosedCaptionsVisible doesn't work with "Automatic" caption mode
308         https://bugs.webkit.org/show_bug.cgi?id=118319
309
310         Reviewed by Darin Adler.
311
312         Test: media/track/track-legacyapi-with-automatic-mode.html
313
314         * page/CaptionUserPreferencesMediaAF.cpp:
315         (WebCore::CaptionUserPreferencesMediaAF::textTrackSelectionScore): Don't apply "automatic"
316             logic when captions were enabled with .webkitClosedCaptionsVisible.
317
318 2013-07-02  Anders Carlsson  <andersca@apple.com>
319
320         Always flip the coordinate system before drawing NSViews from Widget::paint
321         https://bugs.webkit.org/show_bug.cgi?id=118318
322         <rdar://problem/13895483>
323
324         Reviewed by Beth Dakin.
325
326         Undo the change that would not flip on 10.9; turns out the bug was in AppKit. Also remove the
327         _hasCanDrawSubviewsIntoLayerOrAncestor workaround since drawing works correctly now.
328
329         Also, pass flipped:NO when creating the NSGraphicsContext to indicate that the graphics context
330         is unflipped as far as AppKit knows (since we flipped it earlier).
331
332         * platform/mac/WidgetMac.mm:
333         (WebCore::Widget::paint):
334
335 2013-06-26  Robert Hogan  <robert@webkit.org>
336
337         empty inlines should not affect line-wrapping
338         https://bugs.webkit.org/show_bug.cgi?id=25638
339
340         Reviewed by David Hyatt.
341
342         Don't break on empty inlines if we're in the middle of a word. I took this opportunity to
343         refactor the series of checks we perform to establish if we can break at the current position.
344
345         Test: fast/text/whitespace/inline-whitespace-wrapping-11.html
346
347         * rendering/RenderBlockLineLayout.cpp:
348         (WebCore::textBeginsWithBreakablePosition):
349         (WebCore::canBreakAtThisPosition):
350         (WebCore::RenderBlock::LineBreaker::nextSegmentBreak):
351
352 2013-07-02  Jae Hyun Park  <jae.park@company100.net>
353
354         Implement CoordinatedSurface for Threaded Coordinated Graphics
355         https://bugs.webkit.org/show_bug.cgi?id=109661
356
357         Reviewed by Noam Rosenthal.
358
359         This is a preparation patch for Threaded Coordianted Graphics.
360
361         This patch implements ThreadSafeCoordinatedSurface using ImageBuffer as a
362         backend. Also, this patch moves common implementation to CoordinatedSurface to
363         prevent duplication of code.
364
365         * platform/graphics/texmap/coordinated/CoordinatedSurface.cpp:
366         (WebCore::CoordinatedSurface::CoordinatedSurface):
367         * platform/graphics/texmap/coordinated/CoordinatedSurface.h:
368         (WebCore::CoordinatedSurface::size):
369         (WebCore::CoordinatedSurface::flags):
370         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.cpp: Added.
371         (WebCore::ThreadSafeCoordinatedSurface::create):
372         (WebCore::ThreadSafeCoordinatedSurface::ThreadSafeCoordinatedSurface):
373         (WebCore::ThreadSafeCoordinatedSurface::~ThreadSafeCoordinatedSurface):
374         (WebCore::ThreadSafeCoordinatedSurface::paintToSurface):
375         (WebCore::ThreadSafeCoordinatedSurface::copyToTexture):
376         * platform/graphics/texmap/coordinated/ThreadSafeCoordinatedSurface.h: Added.
377
378 2013-07-02  Geoffrey Garen  <ggaren@apple.com>
379
380         plainText() is O(N^2)
381         https://bugs.webkit.org/show_bug.cgi?id=118282
382         <rdar://problem/14284360>
383
384         Reviewed by Alexey Proskuryakov.
385
386         * editing/TextIterator.cpp:
387         (WebCore::plainText): Linear growth for a vector data type is O(N^2).
388         Don't do that. Luckily, StringBuilder does the right thing automatically,
389         so we can just delete code.
390
391 2013-07-02  Tim Horton  <timothy_horton@apple.com>
392
393         constrainScrollPositionForOverhang needs to handle scrollOrigin correctly
394         https://bugs.webkit.org/show_bug.cgi?id=118176
395         <rdar://problem/14301271>
396
397         Reviewed by Anders Carlsson.
398
399         Test: compositing/geometry/fixed-position-flipped-writing-mode.html
400
401         WebCore makes use of constrainScrollPositionForOverhang not only for
402         constraining fixed- and sticky-positioned elements to the viewport, but
403         also for clamping the tile cache's visible rect.
404
405         Therefore, constrainScrollPositionForOverhang needs to correctly take
406         the scrollOrigin into account. The easiest way I saw to do this was to
407         reimplement the function in terms of a pair of rect intersections
408         between a virtual scrollable "viewport" and the document (with a bit
409         of complication from headers and footers).
410
411         The first intersection is performed, then if the viewport doesn't fit,
412         it is pushed down and to the right, from the origin. Next, we intersect
413         again, this time pushing the rect up by the amount it overflowed the document
414         rect from the bottom right. This performs effectively the same constraint
415         as previously, but handles the scrollOrigin correctly and is also somewhat
416         easier to read and understand (with pictures).
417
418         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
419         (WebCore::ScrollingTreeScrollingNodeMac::setScrollLayerPosition):
420         Subtract the scrollOrigin out of the offset passed to scrollOffsetForFixedPosition,
421         it's expecting an offset without the origin included.
422
423         * platform/ScrollableArea.cpp:
424         (WebCore::ScrollableArea::constrainScrollPositionForOverhang):
425         Reimplement the function as described above.
426
427 2013-07-02  Christophe Dumez  <ch.dumez@sisa.samsung.com>
428
429         Remove SVGStyledLocatableElement class
430         https://bugs.webkit.org/show_bug.cgi?id=118283
431
432         Reviewed by Dirk Schulze.
433
434         Remove SVGStyledLocatableElement class and have SVGGraphicsElement
435         inherit SVGStyledElement directly instead. SVGStyledLocatableElement
436         is no longer needed and according to the specification, SVGGraphicsElement
437         should inherit SVGStyledElement (actually SVGElement once we merge
438         SVGStyledElement into SVGElement).
439
440         No new tests, no behavior change.
441
442         * CMakeLists.txt:
443         * GNUmakefile.list.am:
444         * Target.pri:
445         * WebCore.order:
446         * WebCore.vcxproj/WebCore.vcxproj:
447         * WebCore.vcxproj/WebCore.vcxproj.filters:
448         * WebCore.xcodeproj/project.pbxproj:
449         * bindings/scripts/CodeGeneratorJS.pm:
450         (GetGnuVTableOffsetForType):
451         * svg/SVGAllInOne.cpp:
452         * svg/SVGElement.cpp:
453         (WebCore::SVGElement::getBoundingBox):
454         * svg/SVGElement.h:
455         * svg/SVGGraphicsElement.cpp:
456         (WebCore::SVGGraphicsElement::SVGGraphicsElement):
457         (WebCore::SVGGraphicsElement::parseAttribute):
458         (WebCore::SVGGraphicsElement::svgAttributeChanged):
459         * svg/SVGGraphicsElement.h:
460         * svg/SVGLocatable.cpp:
461         (WebCore::SVGLocatable::getTransformToElement):
462         * svg/SVGStyledElement.cpp:
463         (WebCore::SVGStyledElement::localCoordinateSpaceTransform):
464         * svg/SVGStyledLocatableElement.cpp: Removed.
465         * svg/SVGStyledLocatableElement.h: Removed.
466
467 2013-07-02  peavo@outlook.com  <peavo@outlook.com>
468
469         [Curl] Crash after download.
470         https://bugs.webkit.org/show_bug.cgi?id=118303
471
472         Reviewed by Brent Fulgham.
473
474         We need to make sure that the Curl easy handle is removed from the Curl multi handle before it's freed.
475
476         * platform/network/curl/CurlDownload.cpp:
477         (CurlDownloadManager::updateHandleList): Use addToCurl() and removeFromCurl() methods.
478         (CurlDownloadManager::addToCurl): Add method to add easy handle to multi handle.
479         (CurlDownloadManager::removeFromCurl): Add method to remove easy handle from multi handle, and then delete the handle.
480         (CurlDownloadManager::downloadThread): Use removeFromCurl() method.
481         (CurlDownload::~CurlDownload):
482         * platform/network/curl/CurlDownload.h: Avoid deleting Curl easy handle in destructor.
483
484 2013-07-02  Radu Stavila  <stavila@adobe.com>
485
486         [CSSRegions] No other SVG elements except the SVGRoot must have RegionInfo objects attached
487         https://bugs.webkit.org/show_bug.cgi?id=118295
488
489         Reviewed by Antti Koivisto.
490
491         Only the SVGRoot element can be collected in a named flow. As such, no SVG element below the root should
492         be attached to a RenderBoxRegionInfo object.
493
494         A larger patch's test (https://bugs.webkit.org/show_bug.cgi?id=118300) is failing because of this.
495         This change will be covered by that test.
496
497         * rendering/RenderBoxModelObject.h:
498         (WebCore::RenderBoxModelObject::canHaveBoxInfoInRegion):
499         * rendering/RenderObject.h:
500         (WebCore::RenderObject::isRenderSVGBlock):
501         * rendering/svg/RenderSVGBlock.h:
502
503 2013-07-02  Kangil Han  <kangil.han@samsung.com>
504
505         is/toHTMLStyleElement should use Element* for its argument
506         https://bugs.webkit.org/show_bug.cgi?id=118286
507
508         Reviewed by Andreas Kling.
509
510         To reduce unnecessary call of isElementNode(), this patch replaces argument
511         of is/toHTMLStyleElement from Node* to Element*. Plus, use Element::hasTagName
512         in collectActiveStyleSheets function for minor code refactoring since
513         its cost is cheaper than Node::hasTagName.
514
515         * css/CSSStyleSheet.cpp:
516         (WebCore::isAcceptableCSSStyleSheetParent):
517         * css/StyleScopeResolver.cpp:
518         (WebCore::StyleScopeResolver::scopeFor):
519         * dom/DocumentStyleSheetCollection.cpp:
520         (WebCore::DocumentStyleSheetCollection::collectActiveStyleSheets):
521         * dom/Node.cpp:
522         (WebCore::Node::numberOfScopedHTMLStyleChildren):
523         * html/HTMLStyleElement.h:
524         (WebCore::isHTMLStyleElement):
525         (WebCore::toHTMLStyleElement):
526
527 2013-07-02  Ryosuke Niwa  <rniwa@webkit.org>
528
529         Unexpose EditingPropertiesToInclude in EditingStyle.h after r151772
530         https://bugs.webkit.org/show_bug.cgi?id=118271
531
532         Reviewed by Andreas Kling.
533
534         Don't expose EditingPropertiesToInclude in EditingStyle.h and do other cleanups as described below.
535
536         No new tests since there should be no behavioral change.
537
538         * editing/EditingStyle.cpp:
539         (WebCore::copyEditingProperties): Use newly defined numAllEditingProperties and numInheritableEditingProperties
540         instead of a magic number of 2.
541         (WebCore::copyPropertiesFromComputedStyle): Renamed from editingStyleFromComputedStyle. It now takes ComputedStyleExtractor and
542         PropertiesToInclude instead of Node* and EditingPropertiesToInclude and handles AllProperties. Also added a helper that takes Node*.
543         (WebCore::EditingStyle::init): Calls copyPropertiesFromComputedStyle. Unfortunately, we need to special-case EditingPropertiesInEffect
544         and not set background-color and text-decoration. This is required probably due to a bug elsewhere.
545         (WebCore::EditingStyle::removeStyleAddedByNode):
546         (WebCore::EditingStyle::removeStyleConflictingWithStyleOfNode):
547         (WebCore::extractEditingProperties): Renamed from EditingStyle::removeAllButEditingProperties; takes PropertiesToInclude instead of
548         EditingPropertiesToInclude since the only caller of this function, EditingStyle::mergeInlineAndImplicitStyleOfElement, was converting
549         the type.
550         (WebCore::EditingStyle::mergeInlineAndImplicitStyleOfElement):
551         * editing/EditingStyle.h:
552
553 2013-07-02  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
554
555         Introduce toSVGInlineTextBox
556         https://bugs.webkit.org/show_bug.cgi?id=118289
557
558         Reviewed by Andreas Kling.
559
560         As a step to change static_cast with toXXX, static_cast<SVGInlineTextBox*> can
561         be changed with toSVGInlineTextBox().
562
563         Blink merge from https://src.chromium.org/viewvc/blink?view=rev&revision=153345
564
565         * rendering/svg/RenderSVGInlineText.cpp:
566         (WebCore::RenderSVGInlineText::positionForPoint):
567         * rendering/svg/SVGInlineFlowBox.cpp:
568         (WebCore::SVGInlineFlowBox::paintSelectionBackground):
569         (WebCore::SVGInlineFlowBox::paint):
570         (WebCore::SVGInlineFlowBox::computeTextMatchMarkerRectForRenderer):
571         * rendering/svg/SVGInlineTextBox.h:
572         (WebCore::toSVGInlineTextBox):
573         * rendering/svg/SVGRenderTreeAsText.cpp:
574         (WebCore::writeSVGInlineTextBoxes):
575         * rendering/svg/SVGRootInlineBox.cpp:
576         (WebCore::SVGRootInlineBox::paint):
577         (WebCore::SVGRootInlineBox::layoutCharactersInTextBoxes):
578         (WebCore::SVGRootInlineBox::layoutChildBoxes):
579         (WebCore::reverseInlineBoxRangeAndValueListsIfNeeded):
580         * rendering/svg/SVGTextQuery.cpp:
581         (WebCore::SVGTextQuery::collectTextBoxesInFlowBox):
582
583 2013-07-02  Christophe Dumez  <ch.dumez@sisa.samsung.com>
584
585         Simplify SVGTextContentElement::elementFromRenderer()
586         https://bugs.webkit.org/show_bug.cgi?id=118284
587
588         Reviewed by Andreas Kling.
589
590         Simplify SVGTextContentElement::elementFromRenderer() by leveraging
591         SVGElement::isTextContent() methods instead of explicitly checking
592         for tag names.
593
594         No new tests, no behavior change.
595
596         * svg/SVGTextContentElement.cpp:
597         (WebCore::SVGTextContentElement::elementFromRenderer):
598
599 2013-07-02  Csaba Osztrogonác  <ossy@webkit.org>
600
601         Fix cast-align warnings in WebCore/platform/graphics/texmap/TextureMapperGL.cpp
602         https://bugs.webkit.org/show_bug.cgi?id=118249
603
604         Reviewed by Allan Sandfeld Jensen.
605
606         * platform/graphics/texmap/TextureMapperGL.cpp:
607         (WebCore::BitmapTextureGL::updateContents):
608
609 2013-07-02  Allan Sandfeld Jensen  <allan.jensen@digia.com>
610
611         [Qt][WK1] Support WebGL with EGL on Linux
612         https://bugs.webkit.org/show_bug.cgi?id=118251
613
614         Reviewed by Kenneth Rohde Christiansen.
615
616         Let GraphicsContext3D work without a GraphicsSurface.
617
618         * Target.pri:
619         * platform/graphics/OpenGLShims.cpp:
620         (WebCore::getProcAddress):
621         * platform/graphics/qt/GraphicsContext3DQt.cpp:
622         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
623         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
624
625 2013-07-02  Catalin Badea  <badea@adobe.com>
626
627         [CSS-Regions] OverrideLogicalHeight used by both regions and flexbox
628         https://bugs.webkit.org/show_bug.cgi?id=118057
629
630         Reviewed by David Hyatt.
631
632         Remove the use of overrideLogicalContentHeight() from regions and
633         use a local variable instead. The change was needed to avoid
634         overlapping with flexbox containers.
635
636         Test: fast/regions/autoheight-flexbox.html
637
638         * rendering/RenderFlowThread.cpp:
639         (WebCore::RenderFlowThread::validateRegions):
640         (WebCore::RenderFlowThread::layout):
641         (WebCore::RenderFlowThread::applyBreakAfterContent):
642         (WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
643         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
644         (WebCore::RenderFlowThread::addForcedRegionBreak):
645         * rendering/RenderFlowThread.h:
646         * rendering/RenderRegion.cpp:
647         (WebCore::RenderRegion::RenderRegion):
648         (WebCore::RenderRegion::pageLogicalHeight):
649         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
650         (WebCore::RenderRegion::updateRegionHasAutoLogicalHeightFlag):
651         (WebCore::RenderRegion::layoutBlock):
652         (WebCore::RenderRegion::updateLogicalHeight):
653         * rendering/RenderRegion.h:
654         (WebCore::RenderRegion::computedAutoHeight):
655         (WebCore::RenderRegion::setComputedAutoHeight):
656         (WebCore::RenderRegion::clearComputedAutoHeight):
657         (WebCore::RenderRegion::hasComputedAutoHeight):
658         * rendering/RenderView.cpp:
659
660 2013-07-01  Alex Christensen  <achristensen@apple.com>
661
662         Windows should be included in the list of platforms that can use OpenGL ES 2.
663         https://bugs.webkit.org/show_bug.cgi?id=118264
664
665         Reviewed by Dean Jackson.
666
667         * platform/graphics/GraphicsContext3D.h: Added PLATFORM(WIN) to platforms using OpenGL ES 2.
668
669 2013-07-01  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
670
671         [GTK] Remove unsupported AC backends
672         https://bugs.webkit.org/show_bug.cgi?id=117362
673
674         Reviewed by Martin Robinson.
675
676         * GNUmakefile.am:
677         * GNUmakefile.list.am:
678         * Source/WebCore/platform/graphics/PlatformLayer.h: Removed mentions of clutter
679         and the texmap cairo backend.
680         * platform/graphics/clutter/DrawingBufferClutter.cpp: Removed.
681         * platform/graphics/clutter/GraphicsContext3DClutter.cpp: Removed.
682         * platform/graphics/clutter/GraphicsContext3DPrivate.cpp: Removed.
683         * platform/graphics/clutter/GraphicsContext3DPrivate.h: Removed.
684         * platform/graphics/clutter/GraphicsLayerActor.cpp: Removed.
685         * platform/graphics/clutter/GraphicsLayerActor.h: Removed.
686         * platform/graphics/clutter/GraphicsLayerClutter.cpp: Removed.
687         * platform/graphics/clutter/GraphicsLayerClutter.h: Removed.
688         * platform/graphics/clutter/PlatformClutterAnimation.cpp: Removed.
689         * platform/graphics/clutter/PlatformClutterAnimation.h: Removed.
690         * platform/graphics/clutter/PlatformClutterLayerClient.h: Removed.
691         * platform/graphics/clutter/TransformationMatrixClutter.cpp: Removed.
692         * Source/WebCore/platform/graphics/transforms/TransformationMatrix.h: Removed cogl
693         matrix type conversion.
694
695 2013-07-01  Alex Christensen  <achristensen@apple.com>
696
697         DrawingBuffer constructor and destructor were not defined for Windows.
698         I moved duplicate code from Cairo and Qt to DrawingBuffer.cpp to be used by Qt, Cairo, and Windows.
699         https://bugs.webkit.org/show_bug.cgi?id=118262
700
701         Reviewed by Dean Jackson.
702
703         * platform/graphics/cairo/DrawingBufferCairo.cpp: Removed duplicate DrawingBuffer constructor and destructor.
704         * platform/graphics/gpu/DrawingBuffer.cpp:
705         (WebCore::DrawingBuffer::DrawingBuffer):
706         (WebCore::DrawingBuffer::~DrawingBuffer): Moved from Cairo and Qt implementation.
707         * platform/graphics/gpu/qt/DrawingBufferQt.cpp: Removed duplicate DrawingBuffer constructor and destructor.
708
709 2013-07-01  Alex Christensen  <achristensen@apple.com>
710
711         Fixed unreachable return when GLX or EGL are used with WebGL.
712         https://bugs.webkit.org/show_bug.cgi?id=118263
713
714         Reviewed by Noam Rosenthal.
715
716         * platform/graphics/opengl/GLPlatformContext.cpp:
717         (WebCore::createOffScreenContext): Fixed unreachable return.
718
719 2013-07-01  Tim Horton  <timothy_horton@apple.com>
720
721         Maximum scroll position can be negative in some cases
722         https://bugs.webkit.org/show_bug.cgi?id=118175
723         <rdar://problem/14301217>
724
725         Reviewed by Anders Carlsson.
726
727         Test (API): WebKit2.ResizeReversePaginatedWebView
728
729         * page/FrameView.cpp:
730         (WebCore::FrameView::maximumScrollPosition):
731         * page/FrameView.h:
732         Override maximumScrollPosition() in FrameView and don't clamp to zero if
733         a reverse pagination mode is enabled, as it is possible (and common) to
734         have a negative maximum scroll position with reverse pagination.
735
736         * platform/ScrollView.cpp:
737         (WebCore::ScrollView::updateScrollbars):
738         Drive-by adoption of toIntSize().
739
740 2013-07-01  Alex Christensen  <achristensen@apple.com>
741
742         Removed all references to DrawingBuffer methods unused since the removal of Chromium:
743         DrawingBuffer::prepareBackBuffer,
744         DrawingBuffer::requiresCopyFromBackToFrontBuffer, and
745         DrawingBuffer::clearPlatformLayer.
746         https://bugs.webkit.org/show_bug.cgi?id=118257
747
748         Reviewed by Darin Adler.
749
750         * platform/graphics/blackberry/DrawingBufferBlackBerry.cpp:
751         (WebCore::DrawingBuffer::platformLayer):
752         * platform/graphics/cairo/DrawingBufferCairo.cpp:
753         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
754         * platform/graphics/clutter/DrawingBufferClutter.cpp:
755         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
756         * platform/graphics/gpu/DrawingBuffer.cpp:
757         (WebCore::DrawingBuffer::clear):
758         * platform/graphics/gpu/DrawingBuffer.h:
759         * platform/graphics/gpu/mac/DrawingBufferMac.mm:
760         (WebCore::DrawingBuffer::frontColorBuffer):
761         * platform/graphics/gpu/qt/DrawingBufferQt.cpp:
762         (WebCore::DrawingBuffer::paintCompositedResultsToCanvas):
763
764 2013-07-01  Jochen Eisinger  <jochen@chromium.org>
765
766         Remove support for consumable user gestures
767         https://bugs.webkit.org/show_bug.cgi?id=118247
768
769         Reviewed by Geoffrey Garen.
770
771         The features was not enabled on any port, and is meanwhile broken, so we
772         should delete it.
773
774         No new tests, just deleting dead code.
775
776         * accessibility/AccessibilityNodeObject.cpp:
777         (WebCore::AccessibilityNodeObject::increment):
778         (WebCore::AccessibilityNodeObject::decrement):
779         * accessibility/AccessibilityObject.cpp:
780         (WebCore::AccessibilityObject::press):
781         * bindings/ScriptControllerBase.cpp:
782         (WebCore::ScriptController::executeScript):
783         * bindings/js/ScriptController.cpp:
784         (WebCore::ScriptController::executeScriptInWorld):
785         * dom/UserGestureIndicator.cpp:
786         (WebCore::isDefinite):
787         (WebCore::UserGestureIndicator::UserGestureIndicator):
788         (WebCore::UserGestureIndicator::~UserGestureIndicator):
789         * dom/UserGestureIndicator.h:
790         (WebCore::UserGestureIndicator::processingUserGesture):
791         * inspector/InspectorFrontendClientLocal.cpp:
792         (WebCore::InspectorFrontendClientLocal::openInNewTab):
793         * inspector/InspectorFrontendHost.cpp:
794         (WebCore::FrontendMenuProvider::contextMenuItemSelected):
795         * inspector/InspectorPageAgent.cpp:
796         (WebCore::InspectorPageAgent::navigate):
797         * loader/NavigationScheduler.cpp:
798         (WebCore::ScheduledURLNavigation::fire):
799         (WebCore::ScheduledURLNavigation::didStartTimer):
800         (WebCore::ScheduledRedirect::fire):
801         (WebCore::ScheduledRefresh::fire):
802         (WebCore::ScheduledHistoryNavigation::fire):
803         (WebCore::ScheduledFormSubmission::fire):
804         (WebCore::ScheduledFormSubmission::didStartTimer):
805         * page/DOMTimer.cpp:
806         (WebCore::DOMTimer::DOMTimer):
807         (WebCore::DOMTimer::fired):
808         * page/DOMTimer.h:
809         * page/DOMWindow.cpp:
810         (WebCore::DOMWindow::showModalDialog):
811         * page/EventHandler.cpp:
812         (WebCore::EventHandler::clear):
813         (WebCore::EventHandler::handleMousePressEvent):
814         (WebCore::EventHandler::handleMouseReleaseEvent):
815         * page/EventHandler.h:
816         * rendering/HitTestResult.cpp:
817         (WebCore::HitTestResult::toggleMediaFullscreenState):
818         (WebCore::HitTestResult::enterFullscreenForVideo):
819
820 2013-07-01  Frédéric Wang  <fred.wang@free.fr>
821
822         Add Support for mspace element
823         https://bugs.webkit.org/show_bug.cgi?id=115610
824
825         Reviewed by Chris Fleizach.
826
827         This patch adds basic support for the MathML mspace element. This is
828         important to let people control spacing of mathematical formulas.
829         Attributes width, height and depth are implemented. For the moment,
830         only nonnegative width are accepted.
831
832         * CMakeLists.txt: add references to the RenderMathMLSpace files.
833         * GNUmakefile.list.am: ditto.
834         * Target.pri: ditto.
835         * WebCore.vcxproj/WebCore.vcxproj: ditto.
836         * WebCore.vcxproj/WebCore.vcxproj.filters: ditto.
837         * WebCore.xcodeproj/project.pbxproj: ditto.
838         * css/mathml.css:
839         (mtable[columnlines="dashed"] > mtr > mtd + mtd): remove the obsolete linebreaking rule.
840         * mathml/MathMLTextElement.cpp:
841         (WebCore::MathMLTextElement::createRenderer): map mspaceTag to RenderMathMLSpace.
842         * mathml/mathattrs.in: add width, height and depth attributes
843         * mathml/mathtags.in: add mspace element
844         * rendering/mathml/RenderMathMLBlock.cpp:
845         (WebCore::parseMathMLLength): fix int to float conversion.
846         * rendering/mathml/RenderMathMLBlock.h: declare isRenderMathMLSpace.
847         (WebCore::RenderMathMLBlock::isRenderMathMLSpace):
848         * rendering/mathml/RenderMathMLSpace.cpp: Added.
849         (WebCore::RenderMathMLSpace::RenderMathMLSpace):
850         (WebCore::RenderMathMLSpace::isChildAllowed):
851         (WebCore::RenderMathMLSpace::computePreferredLogicalWidths):
852         (WebCore::RenderMathMLSpace::updateFromElement):
853         (WebCore::RenderMathMLSpace::updateLogicalWidth):
854         (WebCore::RenderMathMLSpace::updateLogicalHeight):
855         (WebCore::RenderMathMLSpace::layout):
856         (WebCore::RenderMathMLSpace::styleDidChange):
857         (WebCore::RenderMathMLSpace::firstLineBoxBaseline):
858         * rendering/mathml/RenderMathMLSpace.h: Added.
859         (WebCore::RenderMathMLSpace::isRenderMathMLSpace):
860         (WebCore::RenderMathMLSpace::renderName):
861         (WebCore::toRenderMathMLSpace):
862
863 2013-06-27  Jer Noble  <jer.noble@apple.com>
864
865         Audio in apps which embed WebViews is corrupted.
866         https://bugs.webkit.org/show_bug.cgi?id=118163
867
868         Reviewed by Maciej Stachowiak.
869
870         Add a preference, which defaults to off, which controls whether the
871         AudioSessionManager will switch to a large audio buffer setting for
872         power-savings during <video> playback.
873
874         * WebCore.exp.in:
875         * page/Settings.cpp:
876         (WebCore::Settings::setLowPowerVideoAudioBufferSizeEnabled): Added.  Simple setter.
877         * page/Settings.h:
878         (WebCore::Settings::lowPowerVideoAudioBufferSizeEnabled): Added.  Simple getter.
879         * platform/audio/mac/AudioSessionManagerMac.cpp:
880         (AudioSessionManager::updateSessionState): Only set the large audio buffer
881             size if lowPowerVideoAudioBufferSize is enabled.
882
883 2013-07-01  Brian Holt  <brian.holt@samsung.com>
884
885         [ATK] Leak: leaks in WebKitAccessibleInterfaceText
886         https://bugs.webkit.org/show_bug.cgi?id=118248
887
888         Fixed memory leaks.
889
890         Reviewed by Christophe Dumez.
891
892         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
893         (getPangoLayoutForAtk):
894         (webkitAccessibleTextGetText):
895
896 2013-07-01  Roger Fong  <roger_fong@apple.com>
897
898         Unreviewed. Make WebCore.make copy over QTMovieWin DLL's and PDB's.
899         <rdar://problem/14321403>
900
901         * WebCore.vcxproj/WebCore.make:
902
903 2013-07-01  peavo@outlook.com  <peavo@outlook.com>
904
905         [Win] Crash when scrolling page with images.
906         https://bugs.webkit.org/show_bug.cgi?id=117832
907
908         Reviewed by Brent Fulgham.
909
910         Avoid access violation by returning early from method if image frame doesn't have pixel data.
911
912         * platform/image-decoders/ImageDecoder.h:
913         (WebCore::ImageFrame::hasPixelData): Added method to check if frame has pixel data.
914         * platform/image-decoders/gif/GIFImageDecoder.cpp:
915         (WebCore::GIFImageDecoder::haveDecodedRow): Early return if frame doesn't have pixel data.
916
917 2013-07-01  Noam Rosenthal  <noam@webkit.org>
918
919         Avoid calling RenderLayerBacking::resetContentsRect() if possible
920         https://bugs.webkit.org/show_bug.cgi?id=118217
921
922         Reviewed by Simon Fraser.
923
924         Call resetContentsRect() only if the layer has a contentsLayer.
925         Otherwise the contentsRect is redundant for the GraphicsLayer.
926
927         No new tests - optimization only. This is covered by plenty of existing
928         tests in webgl/ and compositing/.
929
930         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
931         (WebCore::GraphicsLayerTextureMapper::hasContentsLayer):
932         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
933             Added hasContentsLayer calls for TextureMapper/CoordinatedGraphics
934
935         * rendering/RenderLayerBacking.cpp:
936         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
937
938 2013-07-01  Allan Sandfeld Jensen  <allan.jensen@digia.com>
939
940         [Qt] Avoid creating a QWindow for offscreen GraphicsContext3D
941         https://bugs.webkit.org/show_bug.cgi?id=118244
942
943         Reviewed by Noam Rosenthal.
944
945         In Qt 5.0 we had to create invisible windows, but in Qt 5.1
946         we can now create specific offscreen surfaces.
947
948         * platform/graphics/qt/GraphicsContext3DQt.cpp:
949         (WebCore::GraphicsContext3DPrivate::GraphicsContext3DPrivate):
950
951 2013-07-01  Allan Sandfeld Jensen  <allan.jensen@digia.com>
952
953         [Qt] Remove long unused Qt4 forward definitions
954
955         Unreviewed cleanu-up.
956
957         * platform/graphics/GraphicsContext3D.h:
958
959 2013-07-01  Antti Koivisto  <antti@apple.com>
960
961         Use DeferrableOneShotTimer for deleting decoded data
962         https://bugs.webkit.org/show_bug.cgi?id=118150
963
964         Reviewed by Andreas Kling.
965
966         Adam Barth pointed out that the virtual function for overriding the default delay doesn't work
967         as expected from base class constructor.
968
969         * loader/cache/CachedResource.cpp:
970         (WebCore::deadDecodedDataDeletionIntervalForResourceType):
971         (WebCore::CachedResource::CachedResource):
972         
973             Use static function instead of calling a virtual.
974
975         * loader/cache/CachedResource.h:
976         * loader/cache/CachedScript.cpp:
977         * loader/cache/CachedScript.h:
978
979 2013-07-01  Kangil Han  <kangil.han@samsung.com>
980
981         Adopt toHTMLTextAreaElement for code cleanup
982         https://bugs.webkit.org/show_bug.cgi?id=118226
983
984         Reviewed by Andreas Kling.
985
986         To enhance readability, this patch adopts toHTMLTextAreaElement.
987         This also helps out to reduce duplicated use of static_cast.
988
989         * accessibility/AccessibilityNodeObject.cpp:
990         (WebCore::AccessibilityNodeObject::determineAccessibilityRole):
991         (WebCore::AccessibilityNodeObject::isNativeTextControl):
992         (WebCore::AccessibilityNodeObject::isReadOnly):
993         (WebCore::AccessibilityNodeObject::text):
994         * accessibility/AccessibilityRenderObject.cpp:
995         (WebCore::AccessibilityRenderObject::setValue):
996         * css/StyleResolver.cpp:
997         (WebCore::StyleResolver::adjustRenderStyle):
998         * editing/markup.cpp:
999         (WebCore::StyledMarkupAccumulator::appendText):
1000         * html/HTMLFormControlElement.cpp:
1001         (WebCore::shouldAutofocus):
1002         * html/HTMLTextAreaElement.h:
1003         (WebCore::toHTMLTextAreaElement):
1004         * page/FocusController.cpp:
1005         (WebCore::clearSelectionIfNeeded):
1006         * rendering/HitTestResult.cpp:
1007         (WebCore::HitTestResult::isContentEditable):
1008         * rendering/RenderBox.cpp:
1009         (WebCore::RenderBox::sizesLogicalWidthToFitContent):
1010         * rendering/RenderTextControlMultiLine.cpp:
1011         (WebCore::RenderTextControlMultiLine::~RenderTextControlMultiLine):
1012         (WebCore::RenderTextControlMultiLine::preferredContentLogicalWidth):
1013         (WebCore::RenderTextControlMultiLine::computeControlLogicalHeight):
1014         * testing/Internals.cpp:
1015         (WebCore::Internals::wasLastChangeUserEdit):
1016
1017 2013-07-01  Kwang Yul Seo  <skyul@company100.net>
1018
1019         Add missing string headers that are used when LOG_DISABLED is 0.
1020         https://bugs.webkit.org/show_bug.cgi?id=118227
1021
1022         Reviewed by Andreas Kling.
1023
1024         Build fix for LOG_DISABLED=0.
1025
1026         No new tests, no behavior change.
1027
1028         * html/track/InbandTextTrack.cpp:
1029         * rendering/RenderLayerCompositor.cpp:
1030
1031 2013-06-29  Simon Fraser  <simon.fraser@apple.com>
1032
1033         Avoid calling into Objective-C every time we get the scrollbar width
1034         https://bugs.webkit.org/show_bug.cgi?id=118216
1035
1036         Reviewed by Geoffrey Garen.
1037
1038         Profiling shows that calling Scrollbar::isOverlayScrollbar() is somewhat
1039         expensive, because it calls down into Objective-C. Fix by caching in
1040         ScrollbarThemeMac whether we're using overlay scrollbars. We update this
1041         cache on creation, and when preferences change; ScrollAnimatorMac::updateScrollerStyle()
1042         is the function that gets called when the user changes the setting in System Preferences.
1043
1044         * platform/ScrollbarTheme.h:
1045         (WebCore::ScrollbarTheme::usesOverlayScrollbarsChanged):
1046         * platform/mac/ScrollAnimatorMac.mm:
1047         (WebCore::ScrollAnimatorMac::updateScrollerStyle):
1048         * platform/mac/ScrollbarThemeMac.h:
1049         * platform/mac/ScrollbarThemeMac.mm:
1050         (WebCore::ScrollbarThemeMac::preferencesChanged):
1051         (WebCore::ScrollbarThemeMac::usesOverlayScrollbars):
1052         (WebCore::ScrollbarThemeMac::usesOverlayScrollbarsChanged):
1053
1054 2013-06-29  Simon Fraser  <simon.fraser@apple.com>
1055
1056         Avoid calling isSimpleContainerCompositingLayer() an extra time
1057         https://bugs.webkit.org/show_bug.cgi?id=118218
1058
1059         Reviewed by Tim Horton.
1060
1061         containsPaintedContent() called isSimpleContainerCompositingLayer(), which
1062         is not particularly cheap. But the caller already has this information,
1063         so pass it in.
1064
1065         * rendering/RenderLayerBacking.cpp:
1066         (WebCore::RenderLayerBacking::updateDrawsContent):
1067         (WebCore::RenderLayerBacking::containsPaintedContent):
1068         * rendering/RenderLayerBacking.h:
1069
1070 2013-06-29  Simon Fraser  <simon.fraser@apple.com>
1071
1072         Avoid doing work in RenderBox::outlineBoundsForRepaint() when the repaintContainer is this
1073         https://bugs.webkit.org/show_bug.cgi?id=118215
1074
1075         Reviewed by Tim Horton.
1076
1077         When the RenderGeometryMap code path was added, RenderBox::outlineBoundsForRepaint()
1078         actually got slower if no coordinate mapping was needed. So avoid doing work when
1079         we can, including avoiding the FloatQuad construction.
1080         
1081         Speeds up scrolling overflow:scroll areas with large numbers of layer children.
1082
1083         * rendering/RenderBox.cpp:
1084         (WebCore::RenderBox::outlineBoundsForRepaint):
1085
1086 2013-06-29  Kangil Han  <kangil.han@samsung.com>
1087
1088         Adopt is/toHTMLOptGroupElement for code cleanup
1089         https://bugs.webkit.org/show_bug.cgi?id=118213
1090
1091         Reviewed by Andreas Kling.
1092
1093         To enhance readability, this patch adopts is/toHTMLOptGroupElement.
1094         This also helps out to reduce duplicated use of static_cast.
1095
1096         * accessibility/AccessibilityListBoxOption.cpp:
1097         (WebCore::AccessibilityListBoxOption::isEnabled):
1098         (WebCore::AccessibilityListBoxOption::stringValue):
1099         (WebCore::AccessibilityListBoxOption::listBoxOptionParentNode):
1100         * css/SelectorChecker.cpp:
1101         (WebCore::SelectorChecker::checkOne):
1102         * css/StyleResolver.cpp:
1103         (WebCore::StyleResolver::canShareStyleWithElement):
1104         * html/HTMLOptGroupElement.h:
1105         (WebCore::isHTMLOptGroupElement):
1106         (WebCore::toHTMLOptGroupElement):
1107         * html/HTMLOptionElement.cpp:
1108         (WebCore::HTMLOptionElement::textIndentedToRespectGroupLabel):
1109         (WebCore::HTMLOptionElement::isDisabledFormControl):
1110         * html/HTMLSelectElement.cpp:
1111         (WebCore::HTMLSelectElement::childShouldCreateRenderer):
1112         (WebCore::HTMLSelectElement::recalcListItems):
1113         * html/parser/HTMLConstructionSite.cpp:
1114         (WebCore::hasImpliedEndTag):
1115         * html/parser/HTMLElementStack.cpp:
1116         (WebCore::HTMLNames::isSelectScopeMarker):
1117         * html/parser/HTMLTreeBuilder.cpp:
1118         (WebCore::HTMLTreeBuilder::processStartTag):
1119         (WebCore::HTMLTreeBuilder::processEndTag):
1120         * rendering/RenderListBox.cpp:
1121         (WebCore::RenderListBox::updateFromElement):
1122         (WebCore::RenderListBox::paintItemForeground):
1123         * rendering/RenderMenuList.cpp:
1124         (WebCore::RenderMenuList::itemText):
1125         (WebCore::RenderMenuList::itemIsEnabled):
1126         (WebCore::RenderMenuList::itemIsLabel):
1127
1128 2013-06-29  ChangSeok Oh  <changseok.oh@collabora.com>
1129
1130         Build fix for unguarded SVGGraphicsElement
1131         https://bugs.webkit.org/show_bug.cgi?id=118214
1132
1133         Reviewed by Christophe Dumez.
1134
1135         Add the SVG condition to SVGGraphicsElement.idl
1136
1137         No new tests required since no functionality changed.
1138
1139         * svg/SVGGraphicsElement.idl:
1140
1141 2013-06-29  Kangil Han  <kangil.han@samsung.com>
1142
1143         Adopt is/toHTMLOptionElement for code cleanup
1144         https://bugs.webkit.org/show_bug.cgi?id=118212
1145
1146         Reviewed by Andreas Kling.
1147
1148         To enhance readability, this patch adopts is/toHTMLOptionElement.
1149         This also helps out to reduce duplicated use of static_cast.
1150
1151         * accessibility/AccessibilityListBoxOption.cpp:
1152         (WebCore::AccessibilityListBoxOption::isSelected):
1153         (WebCore::AccessibilityListBoxOption::canSetSelectedAttribute):
1154         (WebCore::AccessibilityListBoxOption::stringValue):
1155         (WebCore::AccessibilityListBoxOption::listBoxOptionParentNode):
1156         * accessibility/AccessibilityMenuListOption.cpp:
1157         (WebCore::AccessibilityMenuListOption::setElement):
1158         (WebCore::AccessibilityMenuListOption::isEnabled):
1159         (WebCore::AccessibilityMenuListOption::isSelected):
1160         (WebCore::AccessibilityMenuListOption::setSelected):
1161         (WebCore::AccessibilityMenuListOption::stringValue):
1162         * accessibility/AccessibilityMenuListPopup.cpp:
1163         (WebCore::AccessibilityMenuListPopup::menuListOptionAccessibilityObject):
1164         * accessibility/AccessibilityRenderObject.cpp:
1165         (WebCore::AccessibilityRenderObject::accessibilityHitTest):
1166         * css/SelectorChecker.cpp:
1167         (WebCore::SelectorChecker::checkOne):
1168         * css/StyleResolver.cpp:
1169         (WebCore::StyleResolver::canShareStyleWithElement):
1170         * html/HTMLCollection.cpp:
1171         (WebCore::isMatchingElement):
1172         * html/HTMLOptionElement.cpp:
1173         (WebCore::HTMLOptionElement::index):
1174         * html/HTMLOptionElement.h:
1175         (WebCore::isHTMLOptionElement):
1176         (WebCore::toHTMLOptionElement):
1177         * html/HTMLOptionsCollection.cpp:
1178         (WebCore::HTMLOptionsCollection::add):
1179         * html/HTMLSelectElement.cpp:
1180         (WebCore::HTMLSelectElement::hasPlaceholderLabelOption):
1181         (WebCore::HTMLSelectElement::value):
1182         (WebCore::HTMLSelectElement::setValue):
1183         (WebCore::HTMLSelectElement::childShouldCreateRenderer):
1184         (WebCore::HTMLSelectElement::nextValidIndex):
1185         (WebCore::HTMLSelectElement::saveLastSelection):
1186         (WebCore::HTMLSelectElement::setActiveSelectionAnchorIndex):
1187         (WebCore::HTMLSelectElement::updateListBoxSelection):
1188         (WebCore::HTMLSelectElement::listBoxOnChange):
1189         (WebCore::HTMLSelectElement::recalcListItems):
1190         (WebCore::HTMLSelectElement::selectedIndex):
1191         (WebCore::HTMLSelectElement::selectOption):
1192         (WebCore::HTMLSelectElement::optionToListIndex):
1193         (WebCore::HTMLSelectElement::listToOptionIndex):
1194         (WebCore::HTMLSelectElement::deselectItemsWithoutValidation):
1195         (WebCore::HTMLSelectElement::saveFormControlState):
1196         (WebCore::HTMLSelectElement::searchOptionsForValue):
1197         (WebCore::HTMLSelectElement::restoreFormControlState):
1198         (WebCore::HTMLSelectElement::appendFormData):
1199         (WebCore::HTMLSelectElement::reset):
1200         (WebCore::HTMLSelectElement::updateSelectedState):
1201         (WebCore::HTMLSelectElement::lastSelectedListIndex):
1202         (WebCore::HTMLSelectElement::optionAtIndex):
1203         (WebCore::HTMLSelectElement::accessKeySetSelectedIndex):
1204         (WebCore::HTMLSelectElement::length):
1205         * html/parser/HTMLConstructionSite.cpp:
1206         (WebCore::hasImpliedEndTag):
1207         * html/parser/HTMLElementStack.cpp:
1208         (WebCore::HTMLNames::isSelectScopeMarker):
1209         * html/parser/HTMLTreeBuilder.cpp:
1210         (WebCore::HTMLTreeBuilder::processStartTagForInBody):
1211         (WebCore::HTMLTreeBuilder::processStartTag):
1212         (WebCore::HTMLTreeBuilder::processEndTag):
1213         * rendering/RenderListBox.cpp:
1214         (WebCore::RenderListBox::updateFromElement):
1215         (WebCore::RenderListBox::addFocusRingRects):
1216         (WebCore::RenderListBox::paintItemForeground):
1217         (WebCore::RenderListBox::paintItemBackground):
1218         * rendering/RenderMenuList.cpp:
1219         (WebCore::RenderMenuList::updateOptionsWidth):
1220         (WebCore::RenderMenuList::setTextFromOption):
1221         (WebCore::RenderMenuList::itemText):
1222         (WebCore::RenderMenuList::itemIsEnabled):
1223         (WebCore::RenderMenuList::itemIsSelected):
1224         * rendering/RenderTheme.cpp:
1225         (WebCore::RenderTheme::paintSliderTicks):
1226
1227 2013-06-29  Carlos Garcia Campos  <cgarcia@igalia.com>
1228
1229         REGRESSION(151586): multipart/x-mixed-replace images are broken
1230         https://bugs.webkit.org/show_bug.cgi?id=118169
1231
1232         Reviewed by Alexey Proskuryakov.
1233
1234         When loading multipart content the resource data will change as
1235         the next part is loaded, so we need to make a copy of the data
1236         before sending it to the resource.
1237
1238         * loader/SubresourceLoader.cpp:
1239         (WebCore::SubresourceLoader::didReceiveResponse):
1240
1241 2013-06-28  Eric Carlson  <eric.carlson@apple.com>
1242
1243         [Mac] adopt new AVFoundation caption API
1244         https://bugs.webkit.org/show_bug.cgi?id=118207
1245
1246         Reviewed by Dean Jackson.
1247
1248         No new tests, I was not able to come up with a reliable layout test.
1249
1250         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1251         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1252         (WebCore::MediaPlayerPrivateAVFoundationObjC::flushCues): New, call currentTrack->resetCueValues().
1253         (-[WebCoreAVFMovieObserver outputSequenceWasFlushed:]): New delegate method.
1254
1255 2013-06-28  Kangil Han  <kangil.han@samsung.com>
1256
1257         Adopt is/toHTMLImageElement for code cleanup
1258         https://bugs.webkit.org/show_bug.cgi?id=118182
1259
1260         Reviewed by Andreas Kling.
1261
1262         To enhance readability, this patch adopts is/toHTMLImageElement.
1263         This also helps out to reduce duplicated use of static_cast.
1264
1265         * accessibility/AccessibilityNodeObject.cpp:
1266         (WebCore::AccessibilityNodeObject::isNativeImage):
1267         * accessibility/AccessibilityRenderObject.cpp:
1268         (WebCore::AccessibilityRenderObject::url):
1269         * bindings/js/JSNodeCustom.cpp:
1270         (WebCore::isReachableFromDOM):
1271         * bridge/qt/qt_pixmapruntime.cpp:
1272         (JSC::Bindings::assignToHTMLImageElement):
1273         (JSC::Bindings::QtPixmapRuntime::toQt):
1274         * dom/Clipboard.cpp:
1275         (WebCore::Clipboard::setDragImage):
1276         * dom/Node.cpp:
1277         (WebCore::Node::enclosingLinkEventParentOrSelf):
1278         * editing/Editor.cpp:
1279         (WebCore::imageElementFromImageDocument):
1280         * html/HTMLAnchorElement.cpp:
1281         (WebCore::appendServerMapMousePosition):
1282         * html/HTMLImageElement.h:
1283         (WebCore::isHTMLImageElement):
1284         (WebCore::toHTMLImageElement):
1285         * html/HTMLMapElement.cpp:
1286         (WebCore::HTMLMapElement::imageElement):
1287         * html/HTMLNameCollection.cpp:
1288         (WebCore::WindowNameCollection::nodeMatchesIfNameAttributeMatch):
1289         (WebCore::DocumentNameCollection::nodeMatchesIfIdAttributeMatch):
1290         (WebCore::DocumentNameCollection::nodeMatchesIfNameAttributeMatch):
1291         (WebCore::DocumentNameCollection::nodeMatches):
1292         * page/DragController.cpp:
1293         (WebCore::DragController::draggableElement):
1294         * page/PageSerializer.cpp:
1295         (WebCore::PageSerializer::serializeFrame):
1296         * platform/gtk/PasteboardGtk.cpp:
1297         (WebCore::getURLForImageNode):
1298         * platform/mac/HTMLConverter.mm:
1299         (+[WebHTMLConverter editingAttributedStringFromRange:]):
1300         * rendering/HitTestResult.cpp:
1301         (WebCore::HitTestResult::altDisplayString):
1302         (WebCore::HitTestResult::absoluteImageURL):
1303         * rendering/RenderImage.cpp:
1304         (WebCore::RenderImage::paintIntoRect):
1305         (WebCore::RenderImage::imageMap):
1306         (WebCore::RenderImage::updateAltText):
1307         * rendering/RenderObject.cpp:
1308         (WebCore::RenderObject::shouldRespectImageOrientation):
1309
1310 2013-06-28  Gavin Barraclough  <barraclough@apple.com>
1311
1312         PageThrottler::shouldThrottleTimers is wrong.
1313         https://bugs.webkit.org/show_bug.cgi?id=118210
1314
1315         Reviewed by Anders Carlson.
1316
1317         m_throttleState == PageNotThrottledState
1318             -> page NOT throttled, so should NOT throttle timers
1319         m_throttleState != PageNotThrottledState
1320             -> page NOT NOT throttled, so should throttle timers
1321
1322         This needs cleaning up, but for now, 1 character fix.
1323
1324         * page/PageThrottler.h:
1325         (WebCore::PageThrottler::shouldThrottleTimers):
1326             == -> !=
1327
1328 2013-06-28  Ryosuke Niwa  <rniwa@webkit.org>
1329
1330         An element with -webkit-user-select: all should be selected on single click
1331         https://bugs.webkit.org/show_bug.cgi?id=117864
1332
1333         Reviewed by Darin Adler.
1334
1335         Set m_mouseDownMayStartSelect true even when the node cannot start selection
1336         if the node was inside an element with -webkit-user-select: all.
1337
1338         Test: editing/selection/user-select-all-with-single-click.html
1339
1340         * page/EventHandler.cpp:
1341         (WebCore::canMouseDownStartSelect):
1342
1343 2013-06-28  Ryosuke Niwa  <rniwa@webkit.org>
1344
1345         Remove unused attachChildrenLazily method and make attach/detachChildren private
1346         https://bugs.webkit.org/show_bug.cgi?id=118016
1347
1348         Reviewed by Darin Adler.
1349
1350         Merge https://chromium.googlesource.com/chromium/blink/+/009520dc31c9458e0cf71cf212fa5688c4ca68b0
1351
1352         No one should be manually trying to attach or detach all their children so there's
1353         no reason for these methods to be public.
1354         
1355         In doing this I realized that attachChildrenLazily is not used and can be removed.
1356         
1357         I also realized that we were detaching all our children before the ShadowRoots which
1358         is sad since the InsertionPoints will call detach() on them as well, and then when we
1359         call ContainerNode::detach at the end of Element::detach we'll go detach them again!
1360         This patch makes it so we only go through and detach them twice instead of three times.
1361         In the future we should figure out a way to only do this once.
1362
1363         * dom/ContainerNode.h:
1364         * dom/Element.cpp:
1365         (WebCore::Element::detach):
1366
1367 2013-06-28  Alexey Proskuryakov  <ap@apple.com>
1368
1369         [Mac] Crash when loading is stopped from -didReceiveResponse
1370         https://bugs.webkit.org/show_bug.cgi?id=118209
1371         <rdar://problem/14259249>
1372
1373         Reviewed by Brady Eidson.
1374
1375         Test: TestWebKitAPI/Tests/mac/StopLoadingFromDidReceiveResponse.mm.
1376
1377         * loader/SubresourceLoader.cpp: (WebCore::SubresourceLoader::didReceiveResponse):
1378         Added yet another check for reachedTerminalState().
1379
1380 2013-06-28  Beth Dakin  <bdakin@apple.com>
1381
1382         Cached pages don't update their backing scale factor when it changes
1383         https://bugs.webkit.org/show_bug.cgi?id=118206
1384         -and-
1385         <rdar://problem/14261627>
1386
1387         Reviewed by Tim Horton.
1388
1389         It is not sufficient to mark pages in the PageCache as needing a full style 
1390         recalc. We also need to ensure that the RenderLayerCompositors for the CachesPages 
1391         get updated.
1392
1393         Keep track of whether device scale has been updated with 
1394         m_needsDeviceScaleChanged. If that has been marked true, then restore() will call 
1395         Frame::deviceOrPageScaleFactorChanged().
1396         * history/CachedPage.cpp:
1397         (WebCore::CachedPage::CachedPage):
1398         (WebCore::CachedPage::restore):
1399         * history/CachedPage.h:
1400         (WebCore::CachedPage::markForDeviceScaleChanged):
1401
1402         Propagate markForDeviceScaleChanged() to all of the CachedPages.
1403         * history/PageCache.cpp:
1404         (WebCore::PageCache::markPagesForDeviceScaleChanged):
1405         * history/PageCache.h:
1406
1407         Call PageCache::markPagesForDeviceScaleChanged()
1408         * page/Page.cpp:
1409         (WebCore::Page::setDeviceScaleFactor):
1410
1411 2013-06-28  Alex Christensen  <achristensen@apple.com>
1412
1413         Added template parameters to std::min to fix compile errors in Visual Studio x64.
1414         https://bugs.webkit.org/show_bug.cgi?id=118204
1415
1416         Reviewed by Geoffrey Garen.
1417
1418         * platform/win/PasteboardWin.cpp:
1419         (WebCore::Pasteboard::writeURLToDataObject): Added <unsigned> to std::min.
1420         (WebCore::createGlobalImageFileDescriptor): Added <int> to std::min.
1421
1422 2013-06-28  Alex Christensen  <achristensen@apple.com>
1423
1424         Added WebGL files to Windows build.
1425         https://bugs.webkit.org/show_bug.cgi?id=118200
1426
1427         Reviewed by Brent Fulgham.
1428
1429         * WebCore.vcxproj/WebCore.vcxproj: Added WebGL files, removed unused GraphicsContext3DOpenGLES.cpp.
1430         * WebCore.vcxproj/WebCore.vcxproj.filters: Added WebGL files, removed unused GraphicsContext3DOpenGLES.cpp.
1431         * platform/graphics/cairo/GLContext.cpp: Only include GLContextEGL.h or GLContextGLX.h if they're needed.
1432         * platform/graphics/cg/GraphicsContext3DCG.cpp: Only include GraphicsContext3DNEON.h if it's needed.
1433
1434 2013-06-28  Ryosuke Niwa  <rniwa@webkit.org>
1435
1436         -webkit-line-break: after-white-space sometimes truncates DOM on copy & paste
1437         https://bugs.webkit.org/show_bug.cgi?id=118164
1438
1439         Reviewed by Sam Weinig.
1440
1441         We can't assume that all subsequent ancestors contain exactly one child since they could have been
1442         added in the first if statement matching: currentNode->parentNode() != rootNode && isRemovableBlock(currentNode)
1443
1444         Exit early when we encounter such an ancestor since removing its ancestor (that contains multiple children
1445         some of which aren't in nodesToRemove) can clobber more nodes than we're allowed to remove.
1446
1447         Test: editing/pasteboard/simplfiying-markup-should-not-strip-content.html
1448
1449         * editing/SimplifyMarkupCommand.cpp:
1450         (WebCore::SimplifyMarkupCommand::doApply):
1451         (WebCore::SimplifyMarkupCommand::pruneSubsequentAncestorsToRemove):
1452
1453 2013-06-28  Gwang Yoon Hwang  <ryumiel@company100.net>
1454
1455         Coordinated Graphics: Separate CoordinatedLayerTreeHost into CoordinatedLayerTreeHost and CompositingCoordinator
1456         https://bugs.webkit.org/show_bug.cgi?id=104360
1457
1458         Reviewed by Noam Rosenthal.
1459
1460         The CoordinatedLayerTreeHost has too many responsibilities. It
1461         implements LayerTreeHost, GraphicsLayerClient,
1462         CoordinatedGraphicsLayerClient, CoordinatedImageBacking::Client,
1463         UpdateAtlas::Client, GraphicsLayerFactory and
1464         WebCustomFilterProgramProxyClient.
1465
1466         This refactoring reduces the responsibilities of CoordinatedLayerTreeHost.
1467
1468         This patch introduces a new class called CompositingCoordinator, which
1469         takes the responsibility of managing compositing resources in
1470         WebProcess.
1471
1472         CoordinatedLayerTreeHost is responsible only for the scheduling and
1473         IPC-specific stuff, which are relevant only for WebKit2.
1474
1475         No new tests, covered by existing tests.
1476
1477         * CMakeLists.txt:
1478         * Target.pri:
1479         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: Added.
1480         (WebCore::CompositingCoordinator::create):
1481         (WebCore::CompositingCoordinator::~CompositingCoordinator):
1482         (WebCore::CompositingCoordinator::CompositingCoordinator):
1483         (WebCore::CompositingCoordinator::setRootCompositingLayer):
1484         (WebCore::CompositingCoordinator::sizeDidChange):
1485         (WebCore::CompositingCoordinator::flushPendingLayerChanges):
1486         (WebCore::CompositingCoordinator::syncDisplayState):
1487         (WebCore::CompositingCoordinator::nextAnimationServiceTime):
1488         (WebCore::CompositingCoordinator::clearPendingStateChanges):
1489         (WebCore::CompositingCoordinator::initializeRootCompositingLayerIfNeeded):
1490         (WebCore::CompositingCoordinator::createRootLayer):
1491         (WebCore::CompositingCoordinator::syncLayerState):
1492         (WebCore::CompositingCoordinator::createImageBackingIfNeeded):
1493         (WebCore::CompositingCoordinator::createImageBacking):
1494         (WebCore::CompositingCoordinator::updateImageBacking):
1495         (WebCore::CompositingCoordinator::clearImageBackingContents):
1496         (WebCore::CompositingCoordinator::removeImageBacking):
1497         (WebCore::CompositingCoordinator::flushPendingImageBackingChanges):
1498         (WebCore::CompositingCoordinator::notifyAnimationStarted):
1499         (WebCore::CompositingCoordinator::notifyFlushRequired):
1500         (WebCore::CompositingCoordinator::paintContents):
1501         (WebCore::CompositingCoordinator::createGraphicsLayer):
1502         (WebCore::CompositingCoordinator::deviceScaleFactor):
1503         (WebCore::CompositingCoordinator::pageScaleFactor):
1504         (WebCore::CompositingCoordinator::createUpdateAtlas):
1505         (WebCore::CompositingCoordinator::removeUpdateAtlas):
1506         (WebCore::CompositingCoordinator::visibleContentsRect):
1507         (WebCore::CompositingCoordinator::mainContentsLayer):
1508         (WebCore::CompositingCoordinator::setVisibleContentsRect):
1509         (WebCore::CompositingCoordinator::deviceOrPageScaleFactorChanged):
1510         (WebCore::CompositingCoordinator::detachLayer):
1511         (WebCore::CompositingCoordinator::commitScrollOffset):
1512         (WebCore::CompositingCoordinator::renderNextFrame):
1513         (WebCore::CompositingCoordinator::purgeBackingStores):
1514         (WebCore::CompositingCoordinator::paintToSurface):
1515         (WebCore::CompositingCoordinator::scheduleReleaseInactiveAtlases):
1516         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
1517         * platform/graphics/texmap/coordinated/CompositingCoordinator.h: Added.
1518         (WebCore::CompositingCoordinator::clearRootLayer):
1519         (WebCore::CompositingCoordinator::rootLayer):
1520         (WebCore::CompositingCoordinator::state):
1521
1522 2013-06-28  Commit Queue  <commit-queue@webkit.org>
1523
1524         Unreviewed, rolling out r152135.
1525         http://trac.webkit.org/changeset/152135
1526         https://bugs.webkit.org/show_bug.cgi?id=118199
1527
1528         Rolling out temporary patch used for debugging the test bots
1529         (Requested by rfong on #webkit).
1530
1531         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1532         (WebCore::MediaPlayerPrivateAVFoundation::load):
1533         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
1534         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load):
1535
1536 2013-06-28  Morten Stenshorne  <mstensho@opera.com>
1537
1538         SVG relayout problem when displayed with different image box heights
1539         https://bugs.webkit.org/show_bug.cgi?id=118140
1540
1541         Reviewed by Philip Rogers.
1542
1543         If the root element is an SVG, its position and height are affected
1544         by the view height.
1545
1546         Test: svg/as-image/same-source-different-height.html
1547
1548         * rendering/RenderView.cpp:
1549         (WebCore::RenderView::layout):
1550
1551 2013-06-28  Simon Fraser  <simon.fraser@apple.com>
1552
1553         Allow some LayoutPoint and LayoutSize conversions to be inlined
1554         https://bugs.webkit.org/show_bug.cgi?id=118167
1555
1556         Reviewed by Ryosuke Niwa.
1557
1558         Construction of FloatSize from LayoutSize, and FloatPoint's move(const LayoutSize&)
1559         and moveBy(const LayoutPoint&) were not inlined, and showed up on some profiles.
1560         
1561         Make them inlined by removing the overloaded functions, and instead providing
1562         conversion operators from LayoutSize to FloatSize, and LayoutPoint to FloatPoint.
1563         Do the same to allow a LayoutRect to be converted to a FloatRect.
1564         
1565         This is nice because it removes pollution of FloatRect, FloatPoint and FloatSize with
1566         Layout* entirely.
1567         
1568         Remove Qt-specific conversions on LayoutRect, LayoutPoint and LayoutSize. Qt can
1569         convert via IntRect/FloatRect as necessary.
1570
1571         * platform/graphics/FloatPoint.cpp:
1572         * platform/graphics/FloatPoint.h:
1573         (WebCore::FloatPoint::move):
1574         (WebCore::FloatPoint::moveBy):
1575         * platform/graphics/FloatRect.cpp:
1576         * platform/graphics/FloatRect.h:
1577         * platform/graphics/FloatSize.cpp:
1578         * platform/graphics/FloatSize.h:
1579         * platform/graphics/LayoutPoint.h:
1580         (WebCore::LayoutPoint::operator FloatPoint):
1581         * platform/graphics/LayoutRect.cpp:
1582         * platform/graphics/LayoutRect.h:
1583         (WebCore::LayoutRect::operator FloatRect):
1584         * platform/graphics/LayoutSize.h:
1585         (WebCore::LayoutSize::operator FloatSize):
1586
1587 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1588
1589         Get rid of IsWorkerGlobalScope and ExtendsDOMGlobalObject extended attributes
1590         https://bugs.webkit.org/show_bug.cgi?id=118191
1591
1592         Reviewed by Kentaro Hara.
1593
1594         Remove WebKit-specific [IsWorkerGlobalScope] and [ExtendsDOMGlobalObject] IDL
1595         extended attributes and update the JSC bindings generator to figure this out
1596         on its own.
1597
1598         No new tests, no behavior change.
1599
1600         * bindings/scripts/CodeGeneratorJS.pm:
1601         (IsDOMGlobalObject):
1602         (GenerateHeader):
1603         (GenerateImplementation):
1604         (GenerateConstructorHelperMethods):
1605         * bindings/scripts/IDLAttributes.txt:
1606         * page/DOMWindow.idl:
1607         * workers/DedicatedWorkerGlobalScope.idl:
1608         * workers/SharedWorkerGlobalScope.idl:
1609         * workers/WorkerGlobalScope.idl:
1610
1611 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1612
1613         Introduce SVGGraphicsElement IDL interface
1614         https://bugs.webkit.org/show_bug.cgi?id=118178
1615
1616         Reviewed by Kentaro Hara.
1617
1618         Introduce SVGGraphicsElement IDL interface as per the latest SVG
1619         specification:
1620         - https://svgwg.org/svg2-draft/types.html#InterfaceSVGGraphicsElement
1621
1622         SVGGraphicsElement is a merge of SVGLocatable and SVGTransformable.
1623         This is one step towards simplifying inheritance in SVG and matching
1624         the latest SVG2 specification.
1625
1626         No new tests, already covered by existing tests.
1627
1628         * CMakeLists.txt:
1629         * DerivedSources.cpp:
1630         * DerivedSources.make:
1631         * DerivedSources.pri:
1632         * GNUmakefile.list.am:
1633         * Target.pri:
1634         * WebCore.order:
1635         * WebCore.vcxproj/WebCore.vcxproj:
1636         * WebCore.vcxproj/WebCore.vcxproj.filters:
1637         * WebCore.xcodeproj/project.pbxproj:
1638         * bindings/scripts/CodeGeneratorJS.pm:
1639         (GetGnuVTableOffsetForType):
1640         * rendering/svg/RenderSVGEllipse.cpp:
1641         (WebCore::RenderSVGEllipse::RenderSVGEllipse):
1642         * rendering/svg/RenderSVGEllipse.h:
1643         * rendering/svg/RenderSVGPath.cpp:
1644         (WebCore::RenderSVGPath::RenderSVGPath):
1645         * rendering/svg/RenderSVGPath.h:
1646         * rendering/svg/RenderSVGResourceClipper.cpp:
1647         (WebCore::RenderSVGResourceClipper::pathOnlyClipping):
1648         * rendering/svg/RenderSVGResourceContainer.cpp:
1649         (WebCore::RenderSVGResourceContainer::transformOnNonScalingStroke):
1650         * rendering/svg/RenderSVGResourceMarker.cpp:
1651         * rendering/svg/RenderSVGShape.cpp:
1652         (WebCore::RenderSVGShape::RenderSVGShape):
1653         (WebCore::RenderSVGShape::updateShapeFromElement):
1654         (WebCore::RenderSVGShape::layout):
1655         (WebCore::RenderSVGShape::nonScalingStrokeTransform):
1656         (WebCore::RenderSVGShape::shouldGenerateMarkerPositions):
1657         * rendering/svg/RenderSVGShape.h:
1658         * rendering/svg/RenderSVGTransformableContainer.cpp:
1659         (WebCore::RenderSVGTransformableContainer::RenderSVGTransformableContainer):
1660         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
1661         * rendering/svg/RenderSVGTransformableContainer.h:
1662         * svg/SVGAElement.cpp:
1663         (WebCore::SVGAElement::SVGAElement):
1664         (WebCore::SVGAElement::parseAttribute):
1665         (WebCore::SVGAElement::svgAttributeChanged):
1666         (WebCore::SVGAElement::defaultEventHandler):
1667         (WebCore::SVGAElement::supportsFocus):
1668         (WebCore::SVGAElement::isURLAttribute):
1669         * svg/SVGAElement.h:
1670         * svg/SVGAElement.idl:
1671         * svg/SVGAllInOne.cpp:
1672         * svg/SVGAnimateMotionElement.cpp:
1673         (WebCore::SVGAnimateMotionElement::hasValidAttributeType):
1674         * svg/SVGCircleElement.cpp:
1675         (WebCore::SVGCircleElement::SVGCircleElement):
1676         (WebCore::SVGCircleElement::parseAttribute):
1677         (WebCore::SVGCircleElement::svgAttributeChanged):
1678         * svg/SVGCircleElement.h:
1679         * svg/SVGCircleElement.idl:
1680         * svg/SVGClipPathElement.cpp:
1681         (WebCore::SVGClipPathElement::SVGClipPathElement):
1682         (WebCore::SVGClipPathElement::parseAttribute):
1683         (WebCore::SVGClipPathElement::svgAttributeChanged):
1684         (WebCore::SVGClipPathElement::childrenChanged):
1685         * svg/SVGClipPathElement.h:
1686         * svg/SVGClipPathElement.idl:
1687         * svg/SVGDefsElement.cpp:
1688         (WebCore::SVGDefsElement::SVGDefsElement):
1689         * svg/SVGDefsElement.h:
1690         * svg/SVGDefsElement.idl:
1691         * svg/SVGElement.h:
1692         (WebCore::SVGElement::isSVGGraphicsElement):
1693         * svg/SVGEllipseElement.cpp:
1694         (WebCore::SVGEllipseElement::SVGEllipseElement):
1695         (WebCore::SVGEllipseElement::parseAttribute):
1696         (WebCore::SVGEllipseElement::svgAttributeChanged):
1697         * svg/SVGEllipseElement.h:
1698         * svg/SVGEllipseElement.idl:
1699         * svg/SVGForeignObjectElement.cpp:
1700         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
1701         (WebCore::SVGForeignObjectElement::parseAttribute):
1702         (WebCore::SVGForeignObjectElement::svgAttributeChanged):
1703         (WebCore::SVGForeignObjectElement::rendererIsNeeded):
1704         * svg/SVGForeignObjectElement.h:
1705         * svg/SVGForeignObjectElement.idl:
1706         * svg/SVGGElement.cpp:
1707         (WebCore::SVGGElement::SVGGElement):
1708         (WebCore::SVGGElement::parseAttribute):
1709         (WebCore::SVGGElement::svgAttributeChanged):
1710         * svg/SVGGElement.h:
1711         * svg/SVGGElement.idl:
1712         * svg/SVGGraphicsElement.cpp: Renamed from Source/WebCore/svg/SVGStyledTransformableElement.cpp.
1713         (WebCore::SVGGraphicsElement::SVGGraphicsElement):
1714         (WebCore::SVGGraphicsElement::~SVGGraphicsElement):
1715         (WebCore::SVGGraphicsElement::getCTM):
1716         (WebCore::SVGGraphicsElement::getScreenCTM):
1717         (WebCore::SVGGraphicsElement::animatedLocalTransform):
1718         (WebCore::SVGGraphicsElement::supplementalTransform):
1719         (WebCore::SVGGraphicsElement::isSupportedAttribute):
1720         (WebCore::SVGGraphicsElement::parseAttribute):
1721         (WebCore::SVGGraphicsElement::svgAttributeChanged):
1722         (WebCore::SVGGraphicsElement::nearestViewportElement):
1723         (WebCore::SVGGraphicsElement::farthestViewportElement):
1724         (WebCore::SVGGraphicsElement::getBBox):
1725         (WebCore::SVGGraphicsElement::createRenderer):
1726         (WebCore::SVGGraphicsElement::toClipPath):
1727         * svg/SVGGraphicsElement.h: Renamed from Source/WebCore/svg/SVGStyledTransformableElement.h.
1728         (WebCore::SVGGraphicsElement::localCoordinateSpaceTransform):
1729         (WebCore::SVGGraphicsElement::synchronizeRequiredFeatures):
1730         (WebCore::SVGGraphicsElement::synchronizeRequiredExtensions):
1731         (WebCore::SVGGraphicsElement::synchronizeSystemLanguage):
1732         (WebCore::toSVGGraphicsElement):
1733         * svg/SVGGraphicsElement.idl: Copied from Source/WebCore/svg/SVGForeignObjectElement.idl.
1734         * svg/SVGImageElement.cpp:
1735         (WebCore::SVGImageElement::SVGImageElement):
1736         (WebCore::SVGImageElement::isPresentationAttribute):
1737         (WebCore::SVGImageElement::collectStyleForPresentationAttribute):
1738         (WebCore::SVGImageElement::parseAttribute):
1739         (WebCore::SVGImageElement::svgAttributeChanged):
1740         (WebCore::SVGImageElement::attach):
1741         (WebCore::SVGImageElement::insertedInto):
1742         (WebCore::SVGImageElement::addSubresourceAttributeURLs):
1743         (WebCore::SVGImageElement::didMoveToNewDocument):
1744         * svg/SVGImageElement.h:
1745         * svg/SVGImageElement.idl:
1746         * svg/SVGLineElement.cpp:
1747         (WebCore::SVGLineElement::SVGLineElement):
1748         (WebCore::SVGLineElement::parseAttribute):
1749         (WebCore::SVGLineElement::svgAttributeChanged):
1750         * svg/SVGLineElement.h:
1751         * svg/SVGLineElement.idl:
1752         * svg/SVGPathElement.cpp:
1753         (WebCore::SVGPathElement::SVGPathElement):
1754         (WebCore::SVGPathElement::parseAttribute):
1755         (WebCore::SVGPathElement::svgAttributeChanged):
1756         (WebCore::SVGPathElement::insertedInto):
1757         (WebCore::SVGPathElement::removedFrom):
1758         * svg/SVGPathElement.h:
1759         * svg/SVGPathElement.idl:
1760         * svg/SVGPatternElement.cpp:
1761         * svg/SVGPolyElement.cpp:
1762         (WebCore::SVGPolyElement::SVGPolyElement):
1763         (WebCore::SVGPolyElement::parseAttribute):
1764         (WebCore::SVGPolyElement::svgAttributeChanged):
1765         * svg/SVGPolyElement.h:
1766         * svg/SVGPolygonElement.idl:
1767         * svg/SVGPolylineElement.idl:
1768         * svg/SVGRectElement.cpp:
1769         (WebCore::SVGRectElement::SVGRectElement):
1770         (WebCore::SVGRectElement::parseAttribute):
1771         (WebCore::SVGRectElement::svgAttributeChanged):
1772         * svg/SVGRectElement.h:
1773         * svg/SVGRectElement.idl:
1774         * svg/SVGSVGElement.cpp:
1775         (WebCore::SVGSVGElement::SVGSVGElement):
1776         (WebCore::SVGSVGElement::didMoveToNewDocument):
1777         (WebCore::SVGSVGElement::parseAttribute):
1778         (WebCore::SVGSVGElement::insertedInto):
1779         (WebCore::SVGSVGElement::removedFrom):
1780         * svg/SVGSVGElement.h:
1781         * svg/SVGSVGElement.idl:
1782         * svg/SVGStyledElement.cpp:
1783         (WebCore::SVGStyledElement::localCoordinateSpaceTransform):
1784         * svg/SVGSwitchElement.cpp:
1785         (WebCore::SVGSwitchElement::SVGSwitchElement):
1786         * svg/SVGSwitchElement.h:
1787         * svg/SVGSwitchElement.idl:
1788         * svg/SVGUseElement.cpp:
1789         (WebCore::SVGUseElement::SVGUseElement):
1790         (WebCore::SVGUseElement::parseAttribute):
1791         (WebCore::SVGUseElement::insertedInto):
1792         (WebCore::SVGUseElement::removedFrom):
1793         (WebCore::SVGUseElement::svgAttributeChanged):
1794         (WebCore::SVGUseElement::toClipPath):
1795         (WebCore::SVGUseElement::finishParsingChildren):
1796         * svg/SVGUseElement.h:
1797         * svg/SVGUseElement.idl:
1798
1799 2013-06-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1800
1801         Add new schemes to content utils.
1802         https://bugs.webkit.org/show_bug.cgi?id=118181
1803
1804         Reviewed by Christophe Dumez.
1805
1806         According to latest content handler spec, new schemes are added to it.
1807         Those are "geo, magnet, sip, ssh and xmpp".
1808
1809         http://www.w3.org/html/wg/drafts/html/master/webappapis.html#custom-handlers
1810
1811         Tests: fast/dom/register-protocol-handler.html
1812                fast/dom/unregister-protocol-handler.html
1813
1814         * Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
1815         (WebCore::initProtocolHandlerWhitelist):
1816
1817 2013-06-28  Sanghyup Lee  <sh53.lee@samsung.com>
1818
1819         Avoid duplicating hostWindow() call in ScrollView.cpp
1820         https://bugs.webkit.org/show_bug.cgi?id=118168
1821
1822         Reviewed by Christophe Dumez.
1823
1824         Remove redundant hostWindow() calls in ScrollView.cpp.
1825
1826         * platform/ScrollView.cpp:
1827         (WebCore::ScrollView::scrollContents):
1828         (WebCore::ScrollView::contentsToScreen):
1829         (WebCore::ScrollView::screenToContents):
1830         (WebCore::ScrollView::repaintContentRectangle):
1831         (WebCore::ScrollView::updateOverhangAreas):
1832         (WebCore::ScrollView::addPanScrollIcon):
1833         (WebCore::ScrollView::removePanScrollIcon):
1834
1835 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1836
1837         Unreviewed, fix GTK build after r152156.
1838
1839         * GNUmakefile.list.am:
1840
1841 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1842
1843         Merge SVGLangSpace into SVGElement
1844         https://bugs.webkit.org/show_bug.cgi?id=118170
1845
1846         Reviewed by Kentaro Hara.
1847
1848         Remove SVGLangSpace IDL interface and move its attributes to SVGElement
1849         to match the latest specification and simplify inheritance in SVG:
1850         - https://svgwg.org/svg2-draft/types.html#InterfaceSVGElement
1851
1852         No new tests, no behavior change.
1853
1854         * DerivedSources.make:
1855         * WebCore.xcodeproj/project.pbxproj:
1856         * svg/SVGAElement.h:
1857         * svg/SVGAElement.idl:
1858         * svg/SVGCircleElement.h:
1859         * svg/SVGCircleElement.idl:
1860         * svg/SVGClipPathElement.h:
1861         * svg/SVGClipPathElement.idl:
1862         * svg/SVGDefsElement.h:
1863         * svg/SVGDefsElement.idl:
1864         * svg/SVGDescElement.h:
1865         * svg/SVGDescElement.idl:
1866         * svg/SVGElement.cpp:
1867         (WebCore::SVGElement::parseAttribute):
1868         * svg/SVGElement.h:
1869         * svg/SVGElement.idl:
1870         * svg/SVGEllipseElement.h:
1871         * svg/SVGEllipseElement.idl:
1872         * svg/SVGFEImageElement.h:
1873         * svg/SVGFEImageElement.idl:
1874         * svg/SVGFilterElement.h:
1875         * svg/SVGFilterElement.idl:
1876         * svg/SVGForeignObjectElement.h:
1877         * svg/SVGForeignObjectElement.idl:
1878         * svg/SVGGElement.h:
1879         * svg/SVGGElement.idl:
1880         * svg/SVGImageElement.h:
1881         * svg/SVGImageElement.idl:
1882         * svg/SVGLangSpace.idl: Removed.
1883         * svg/SVGLineElement.h:
1884         * svg/SVGLineElement.idl:
1885         * svg/SVGMarkerElement.h:
1886         * svg/SVGMarkerElement.idl:
1887         * svg/SVGMaskElement.h:
1888         * svg/SVGMaskElement.idl:
1889         * svg/SVGPathElement.h:
1890         * svg/SVGPathElement.idl:
1891         * svg/SVGPatternElement.h:
1892         * svg/SVGPatternElement.idl:
1893         * svg/SVGPolyElement.h:
1894         * svg/SVGPolygonElement.idl:
1895         * svg/SVGPolylineElement.idl:
1896         * svg/SVGRectElement.h:
1897         * svg/SVGRectElement.idl:
1898         * svg/SVGSVGElement.h:
1899         * svg/SVGSVGElement.idl:
1900         * svg/SVGStyleElement.h:
1901         * svg/SVGStyleElement.idl:
1902         * svg/SVGSwitchElement.h:
1903         * svg/SVGSwitchElement.idl:
1904         * svg/SVGSymbolElement.h:
1905         * svg/SVGSymbolElement.idl:
1906         * svg/SVGTextContentElement.h:
1907         * svg/SVGTextContentElement.idl:
1908         * svg/SVGTitleElement.h:
1909         * svg/SVGTitleElement.idl:
1910         * svg/SVGUseElement.h:
1911         * svg/SVGUseElement.idl:
1912
1913 2013-06-28  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1914
1915         Use & instead of | in the value of [CallWith]
1916         https://bugs.webkit.org/show_bug.cgi?id=118054
1917
1918         Reviewed by Kentaro Hara.
1919
1920         [CallWith=ScriptExecutionContext|ScriptState] meant that both the
1921         ScriptExecutionContext AND the ScriptState would be passed as
1922         arguments to the implementation (not one OR the other).
1923
1924         This patch changes the semantics for those IDL extended attributes
1925         to make it less confusing. Proper usage is now:
1926         [CallWith=ScriptExecutionContext&ScriptState]
1927
1928         No new tests, covered by existing bindings tests.
1929
1930         * bindings/scripts/CodeGenerator.pm:
1931         (ExtendedAttributeContains):
1932         * bindings/scripts/test/TestObj.idl:
1933         * page/Console.idl:
1934
1935 2013-06-27  Kangil Han  <kangil.han@samsung.com>
1936
1937         HTMLAudioElement doesn't have to know about isVideo function
1938         https://bugs.webkit.org/show_bug.cgi?id=118116
1939
1940         Reviewed by Eric Carlson.
1941
1942         Minor code cleanup to remove isVideo function from HTMLAudioElement.
1943         We can use default function in HTMLMediaElement as hasVideo does.
1944
1945         * html/HTMLAudioElement.h:
1946         * html/HTMLMediaElement.h:
1947         (WebCore::HTMLMediaElement::isVideo):
1948
1949 2013-06-27  Kangil Han  <kangil.han@samsung.com>
1950
1951         Adopt is/toHTMLInputElement for code cleanup
1952         https://bugs.webkit.org/show_bug.cgi?id=118130
1953
1954         Reviewed by Antti Koivisto.
1955
1956         To enhance readability, this patch adopts is/toHTMLInputElement.
1957         This also helps out to reduce duplicated use of static_cast.
1958
1959         * accessibility/AccessibilityMediaControls.cpp:
1960         (WebCore::AccessibilityMediaTimeline::valueDescription):
1961         * accessibility/AccessibilityNodeObject.cpp:
1962         (WebCore::AccessibilityNodeObject::determineAccessibilityRole):
1963         (WebCore::AccessibilityNodeObject::isNativeTextControl):
1964         (WebCore::AccessibilityNodeObject::isNativeImage):
1965         (WebCore::AccessibilityNodeObject::isInputImage):
1966         (WebCore::AccessibilityNodeObject::isReadOnly):
1967         (WebCore::AccessibilityNodeObject::valueForRange):
1968         (WebCore::AccessibilityNodeObject::maxValueForRange):
1969         (WebCore::AccessibilityNodeObject::minValueForRange):
1970         (WebCore::AccessibilityNodeObject::actionElement):
1971         (WebCore::AccessibilityNodeObject::titleElementText):
1972         (WebCore::AccessibilityNodeObject::visibleText):
1973         (WebCore::AccessibilityNodeObject::title):
1974         (WebCore::AccessibilityNodeObject::text):
1975         (WebCore::AccessibilityNodeObject::colorValue):
1976         (WebCore::accessibleNameForNode):
1977         * accessibility/AccessibilityRenderObject.cpp:
1978         (WebCore::AccessibilityRenderObject::isFileUploadButton):
1979         (WebCore::AccessibilityRenderObject::addRadioButtonGroupMembers):
1980         (WebCore::AccessibilityRenderObject::url):
1981         (WebCore::AccessibilityRenderObject::setValue):
1982         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1983         (WebCore::AccessibilityRenderObject::addTextFieldChildren):
1984         * accessibility/AccessibilitySlider.cpp:
1985         (WebCore::AccessibilitySlider::element):
1986         * accessibility/ios/AccessibilityObjectIOS.mm:
1987         (WebCore::AccessibilityObject::accessibilityPasswordFieldLength):
1988         * bindings/js/JSHTMLInputElementCustom.cpp:
1989         (WebCore::JSHTMLInputElement::selectionStart):
1990         (WebCore::JSHTMLInputElement::setSelectionStart):
1991         (WebCore::JSHTMLInputElement::selectionEnd):
1992         (WebCore::JSHTMLInputElement::setSelectionEnd):
1993         (WebCore::JSHTMLInputElement::selectionDirection):
1994         (WebCore::JSHTMLInputElement::setSelectionDirection):
1995         (WebCore::JSHTMLInputElement::setSelectionRange):
1996         * css/StyleResolver.cpp:
1997         (WebCore::StyleResolver::adjustRenderStyle):
1998         * editing/FrameSelection.cpp:
1999         (WebCore::FrameSelection::isInPasswordField):
2000         * editing/ReplaceSelectionCommand.cpp:
2001         (WebCore::ReplaceSelectionCommand::shouldPerformSmartReplace):
2002         * html/HTMLFormControlElement.cpp:
2003         (WebCore::shouldAutofocus):
2004         * html/HTMLFormElement.cpp:
2005         (WebCore::HTMLFormElement::getTextFieldValues):
2006         * html/HTMLInputElement.h:
2007         (WebCore::isHTMLInputElement):
2008         (WebCore::toHTMLInputElement):
2009         * html/RadioInputType.cpp:
2010         (WebCore::RadioInputType::handleKeydownEvent):
2011         (WebCore::RadioInputType::isKeyboardFocusable):
2012         * html/shadow/MediaControlElementTypes.cpp:
2013         (WebCore::mediaControlElementType):
2014         * html/shadow/TextControlInnerElements.cpp:
2015         (WebCore::SearchFieldResultsButtonElement::defaultEventHandler):
2016         (WebCore::SearchFieldCancelButtonElement::defaultEventHandler):
2017         (WebCore::SearchFieldCancelButtonElement::willRespondToMouseClickEvents):
2018         (WebCore::InputFieldSpeechButtonElement::defaultEventHandler):
2019         (WebCore::InputFieldSpeechButtonElement::willRespondToMouseClickEvents):
2020         (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
2021         (WebCore::InputFieldSpeechButtonElement::startSpeechInput):
2022         * loader/FormSubmission.cpp:
2023         (WebCore::FormSubmission::create):
2024         * page/Chrome.cpp:
2025         (WebCore::Chrome::setToolTip):
2026         * page/EventHandler.cpp:
2027         (WebCore::isSubmitImage):
2028         (WebCore::EventHandler::handleMousePressEvent):
2029         * page/FocusController.cpp:
2030         (WebCore::clearSelectionIfNeeded):
2031         * platform/gtk/PasteboardGtk.cpp:
2032         (WebCore::getURLForImageNode):
2033         * platform/qt/RenderThemeQt.cpp:
2034         (WebCore::RenderThemeQt::paintMediaVolumeSliderTrack):
2035         * platform/qt/RenderThemeQtMobile.cpp:
2036         (WebCore::RenderThemeQtMobile::paintSliderTrack):
2037         * rendering/HitTestResult.cpp:
2038         (WebCore::HitTestResult::altDisplayString):
2039         (WebCore::HitTestResult::absoluteImageURL):
2040         (WebCore::HitTestResult::isContentEditable):
2041         * rendering/RenderBlock.cpp:
2042         (WebCore::RenderBlock::hasLineIfEmpty):
2043         * rendering/RenderBox.cpp:
2044         (WebCore::RenderBox::sizesLogicalWidthToFitContent):
2045         * rendering/RenderButton.cpp:
2046         (WebCore::RenderButton::updateFromElement):
2047         (WebCore::RenderButton::canHaveGeneratedChildren):
2048         * rendering/RenderDetailsMarker.cpp:
2049         (WebCore::RenderDetailsMarker::isOpen):
2050         * rendering/RenderFileUploadControl.cpp:
2051         (WebCore::RenderFileUploadControl::updateFromElement):
2052         (WebCore::RenderFileUploadControl::maxFilenameWidth):
2053         (WebCore::RenderFileUploadControl::paintObject):
2054         (WebCore::RenderFileUploadControl::uploadButton):
2055         (WebCore::RenderFileUploadControl::fileTextValue):
2056         * rendering/RenderImage.cpp:
2057         (WebCore::RenderImage::updateAltText):
2058         * testing/Internals.cpp:
2059         (WebCore::Internals::selectColorInColorChooser):
2060
2061 2013-06-27  Antti Koivisto  <antti@apple.com>
2062
2063         Use DeferrableOneShotTimer for deleting decoded data
2064         https://bugs.webkit.org/show_bug.cgi?id=118150
2065
2066         Reviewed by Andreas Kling.
2067
2068         Up to 1% of page load time can be used under CachedScript::script() for restarting
2069         the decoded data deletion timer.
2070         
2071         Using DeferrableOneShotTimer instead of a plain Timer avoids unnecessary low level timer access.
2072
2073         * loader/cache/CachedResource.cpp:
2074         (WebCore::CachedResource::CachedResource):
2075         (WebCore::CachedResource::destroyDecodedDataIfNeeded):
2076         (WebCore::CachedResource::decodedDataDeletionTimerFired):
2077         (WebCore::CachedResource::decodedDataDeletionTimerDelay):
2078
2079             Adopt DeferrableOneShotTimer.
2080
2081         * loader/cache/CachedResource.h:
2082         * loader/cache/CachedScript.cpp:
2083         (WebCore::CachedScript::script):
2084         (WebCore::CachedScript::decodedDataDeletionTimerDelay):
2085         
2086             Keep using zero delay for scripts.
2087
2088         * platform/Timer.h:
2089         (WebCore::DeferrableOneShotTimer::stop):
2090         
2091             Avoid unnecessary restart after stopping and starting again.
2092
2093 2013-06-27  Anders Carlsson  <andersca@apple.com>
2094
2095         Add a new String::charactersWithNullTermination() function that returns a vector
2096         https://bugs.webkit.org/show_bug.cgi?id=118155
2097
2098         Reviewed by Andreas Kling.
2099
2100         Change calls to deprecatedCharactersWithNullTermination() to charactersWithNullTermination().data()
2101
2102         * platform/graphics/win/FontCacheWin.cpp:
2103         (WebCore::getLinkedFonts):
2104         * platform/graphics/win/FontCustomPlatformData.cpp:
2105         (WebCore::FontCustomPlatformData::fontPlatformData):
2106         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
2107         (WebCore::FontCustomPlatformData::fontPlatformData):
2108         * platform/graphics/win/IconWin.cpp:
2109         (WebCore::Icon::createIconForFiles):
2110         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2111         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):
2112         * platform/graphics/wince/FontPlatformData.cpp:
2113         (WebCore::FontPlatformData::FontPlatformData):
2114         * platform/network/curl/CurlDownload.cpp:
2115         (CurlDownload::moveFileToDestination):
2116         * platform/network/win/CookieJarWin.cpp:
2117         (WebCore::setCookiesFromDOM):
2118         (WebCore::cookiesForDOM):
2119         * platform/network/win/DownloadBundleWin.cpp:
2120         (WebCore::DownloadBundle::appendResumeData):
2121         (WebCore::DownloadBundle::extractResumeData):
2122         * platform/network/win/ResourceHandleWin.cpp:
2123         (WebCore::createInternetHandle):
2124         (WebCore::ResourceHandle::start):
2125         (WebCore::ResourceHandle::fileLoadTimer):
2126         * platform/text/win/LocaleWin.cpp:
2127         (WebCore::LCIDFromLocaleInternal):
2128         * platform/text/win/TextCodecWin.cpp:
2129         (WebCore::TextCodecWin::enumerateSupportedEncodings):
2130         * platform/win/ClipboardUtilitiesWin.cpp:
2131         (WebCore::getWebLocData):
2132         (WebCore::createGlobalData):
2133         (WebCore::setFileDescriptorData):
2134         (WebCore::getURL):
2135         (WebCore::setCFData):
2136         * platform/win/ContextMenuWin.cpp:
2137         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
2138         * platform/win/DragImageWin.cpp:
2139         (WebCore::createDragImageIconForCachedImageFilename):
2140         * platform/win/FileSystemWin.cpp:
2141         (WebCore::getFindData):
2142         (WebCore::deleteFile):
2143         (WebCore::deleteEmptyDirectory):
2144         (WebCore::pathByAppendingComponent):
2145         (WebCore::makeAllDirectories):
2146         (WebCore::pathGetFileName):
2147         (WebCore::openTemporaryFile):
2148         (WebCore::openFile):
2149         * platform/win/MIMETypeRegistryWin.cpp:
2150         (WebCore::mimeTypeForExtension):
2151         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
2152         * platform/win/PasteboardWin.cpp:
2153         (WebCore::createGlobalImageFileDescriptor):
2154         (WebCore::createGlobalHDropContent):
2155         * platform/win/PathWalker.cpp:
2156         (WebCore::PathWalker::PathWalker):
2157         * platform/win/SSLKeyGeneratorWin.cpp:
2158         (WebCore::WebCore::signedPublicKeyAndChallengeString):
2159         * platform/win/SharedBufferWin.cpp:
2160         (WebCore::SharedBuffer::createWithContentsOfFile):
2161         * platform/wince/FileSystemWinCE.cpp:
2162         (WebCore::getFileInfo):
2163         (WebCore::fileExists):
2164         (WebCore::deleteFile):
2165         (WebCore::deleteEmptyDirectory):
2166         (WebCore::makeAllDirectories):
2167         (WebCore::openTemporaryFile):
2168         (WebCore::openFile):
2169         * plugins/win/PluginDatabaseWin.cpp:
2170         (WebCore::PluginDatabase::getPluginPathsInDirectories):
2171         (WebCore::addMozillaPluginDirectories):
2172         (WebCore::addAdobeAcrobatPluginDirectory):
2173         (WebCore::addJavaPluginDirectory):
2174         * plugins/win/PluginPackageWin.cpp:
2175         (WebCore::getVersionInfo):
2176         (WebCore::PluginPackage::fetchInfo):
2177         (WebCore::PluginPackage::load):
2178         * plugins/win/PluginViewWin.cpp:
2179         (WebCore::PluginView::handlePostReadFile):
2180
2181 2013-06-27  Frédéric Wang  <fred.wang@free.fr>
2182
2183         Implement parsing of MathML lengths.
2184         https://bugs.webkit.org/show_bug.cgi?id=118053
2185
2186         Reviewed by Chris Fleizach.
2187
2188         A parsing function for MathML lengths, similar to Gecko's one, is
2189         implemented. It is currently only used to parse mfrac@linethickness but
2190         will be convenient to parse other MathML attributes in the future.
2191
2192         Tests: mathml/presentation/mfrac-linethickness1.html
2193                mathml/presentation/mfrac-linethickness2.html
2194                mathml/presentation/mfrac-linethickness3.html
2195
2196         * rendering/mathml/RenderMathMLBlock.cpp: add parsing functions
2197         (WebCore::parseMathMLLength): parsing MathML Length (number unit)
2198         (WebCore::parseNamedSpace): parsing MathML namedspaces
2199         * rendering/mathml/RenderMathMLBlock.h: declare parsing functions
2200         * rendering/mathml/RenderMathMLFraction.cpp: use the parsing function for linethickness
2201         (WebCore::RenderMathMLFraction::updateFromElement):
2202
2203 2013-06-27  Anders Carlsson  <andersca@apple.com>
2204
2205         Remove call to deprecatedCharactersWithNullTermination() in WebGL code
2206         https://bugs.webkit.org/show_bug.cgi?id=118154
2207
2208         Reviewed by Dean Jackson.
2209
2210         Remove an unneeded call to deprecatedCharactersWithNullTermination(). Ultimately, 
2211         the string we used to call it on gets converted to an UTF-8 CString that has a null character anyway.
2212
2213         * html/canvas/WebGLProgram.cpp:
2214         (WebCore::WebGLProgram::cacheActiveAttribLocations):
2215
2216 2013-06-27  Roger Fong  <roger_fong@apple.com>
2217
2218         Unreviewed. Temporarily add some stderr output to Media Engine load methods to determine which engine buildbots are using for layout tests.
2219
2220         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2221         (WebCore::MediaPlayerPrivateAVFoundation::load):
2222         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
2223         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::load):
2224
2225 2013-06-27  Anders Carlsson  <andersca@apple.com>
2226
2227         Stop using deprecatedCharactersWithNullTermination in SQLite code
2228         https://bugs.webkit.org/show_bug.cgi?id=118146
2229
2230         Reviewed by Filip Pizlo.
2231
2232         Turns out SQLite uses UTF-8 internally so we might just as well use the SQLite functions
2233         that take UTF-8 strings and do the conversion ourselves. This has the added advantage that we can
2234         use String::utf8() which returns a null-terminated string.
2235
2236         Require a version of SQLite newer than 3.6.16 so we can remove two workarounds. 3.6.16 was released
2237         4 years ago so supported port is likely to have it.
2238
2239         * platform/sql/SQLiteFileSystem.cpp:
2240         (WebCore::SQLiteFileSystem::openDatabase):
2241         Use sqlite3_open instead of sqlite3_open16.
2242
2243         * platform/sql/SQLiteFileSystem.h:
2244         Fix parameter name capitalization.
2245
2246         * platform/sql/SQLiteStatement.cpp:
2247         (WebCore::SQLiteStatement::prepare):
2248         Use sqlite3_prepare_v2. Also, pass the length of the string (including the null character), since
2249         that lets SQLite avoid a buffer copy. Remove a workaround for versions of SQLite older than 3.6.16.
2250
2251 2013-06-27  Andrew Lo  <anlo@blackberry.com>
2252
2253         [BlackBerry] Unnecessary root layer commits occur during html5 video playback
2254         https://bugs.webkit.org/show_bug.cgi?id=118147
2255
2256         Reviewed by Rob Buis.
2257         Internally reviewed by Arvid Nilsson, John Griggs.
2258
2259         Only request layer commits when layer properties change in
2260         GraphicsLayerBlackBerry::updateContentsRect and
2261         GraphicsLayerBlackBerry::setContentsToMedia.
2262         JIRA112749.
2263
2264         * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
2265         (WebCore::GraphicsLayerBlackBerry::setContentsToMedia):
2266         (WebCore::GraphicsLayerBlackBerry::updateContentsRect):
2267
2268 2013-06-27  Bem Jones-Bey  <bjonesbe@adobe.com>
2269
2270         [CSS Shapes] New positioning model: basic support for rectangle shape-outside
2271         https://bugs.webkit.org/show_bug.cgi?id=118080
2272
2273         Reviewed by David Hyatt.
2274
2275         With the latest Editor's Draft of the CSS Shapes specification,
2276         shape-outside no longer affects the positioning of floats. This is the
2277         first step in changing the implementation to reflect this
2278         specification change. The bulk of this change is reverting the code
2279         that was needed to position floats based on the bounding box of the
2280         shape.
2281
2282         Tests: csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-000.html
2283                csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-001.html
2284                csswg/submitted/shapes/shape-outside/shape-outside-floats-horizontal-rectangle-002.html
2285                csswg/submitted/shapes/shape-outside/shape-outside-floats-square-000.html
2286                csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-000.html
2287                csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-001.html
2288                csswg/submitted/shapes/shape-outside/shape-outside-floats-vertical-rectangle-002.html
2289
2290         * rendering/LayoutState.cpp:
2291         (WebCore::LayoutState::LayoutState): Revert changes to support float
2292             positioning from shape-outside.
2293         * rendering/RenderBlock.cpp:
2294         (WebCore::RenderBlock::blockSelectionGaps): Ditto.
2295         (WebCore::RenderBlock::insertFloatingObject): Ditto.
2296         (WebCore::RenderBlock::positionNewFloats): Ditto.
2297         (WebCore::RenderBlock::logicalLeftOffsetForLine): Instead of
2298             converting to shape bounding box coordinates, convert to the
2299             float's margin box coordinates.
2300         (WebCore::RenderBlock::logicalRightOffsetForLine): Ditto.
2301         (WebCore::positionForPointRespectingEditingBoundaries): Revert changes
2302             to support float positioning from shape-outside.
2303         * rendering/RenderBlock.h:
2304         (WebCore::RenderBlock::xPositionForFloatIncludingMargin): Ditto.
2305         (WebCore::RenderBlock::yPositionForFloatIncludingMargin): Ditto.
2306         * rendering/RenderBlockLineLayout.cpp:
2307         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded): Instead
2308             of converting to shape bounding box coordinates, convert to the
2309             float's margin box coordinates.
2310         * rendering/RenderBox.cpp:
2311         (WebCore::RenderBox::mapLocalToContainer): Revert changes to support
2312             float positioning from shape-outside.
2313         (WebCore::RenderBox::offsetFromContainer): Ditto.
2314         (WebCore::RenderBox::computeRectForRepaint): Ditto.
2315         (WebCore::RenderBox::layoutOverflowRectForPropagation): Ditto.
2316         * rendering/RenderBoxModelObject.cpp: Ditto.
2317         * rendering/RenderBoxModelObject.h: Ditto.
2318         * rendering/RenderInline.cpp:
2319         (WebCore::RenderInline::clippedOverflowRectForRepaint): Ditto.
2320         (WebCore::RenderInline::computeRectForRepaint): Ditto.
2321         (WebCore::RenderInline::mapLocalToContainer): Ditto.
2322         * rendering/RenderLayer.cpp:
2323         (WebCore::RenderLayer::updateLayerPosition): Ditto.
2324         (WebCore::RenderLayer::calculateClipRects): Ditto.
2325         (WebCore::RenderLayer::shouldBeNormalFlowOnly): Ditto.
2326         * rendering/RenderLayer.h:
2327         (WebCore::RenderLayer::offsetForInFlowPosition): Ditto.
2328         * rendering/RenderObject.h: Ditto.
2329         * rendering/shapes/ShapeInfo.h: Make m_renderer protected, since we
2330             now need it in the subclass to compute the segments.
2331         * rendering/shapes/ShapeOutsideInfo.cpp:
2332         (WebCore::ShapeOutsideInfo::computeSegmentsForLine): Update segment
2333             computation to use the float's margin box instead of the shape's
2334             bounding box for computing the deltas.
2335         (WebCore::ShapeOutsideInfo::leftSegmentMarginBoxDelta): This used to
2336             be leftSegmentShapeBoundingBoxDelta, which has been renamed in the
2337             obvious way.
2338         (WebCore::ShapeOutsideInfo::rightSegmentMarginBoxDelta): This used to
2339             be rightSegmentShapeBoundingBoxDelta, which has been renamed in the
2340             obvious way.
2341         * rendering/shapes/ShapeOutsideInfo.h: Revert changes to support float
2342             positioning from shape-outside.
2343         * rendering/style/RenderStyle.h: Ditto.
2344
2345 2013-06-27  Antti Koivisto  <antti@apple.com>
2346
2347         RenderLayerCompositor destructor is fragile
2348         https://bugs.webkit.org/show_bug.cgi?id=118143
2349
2350         Reviewed by Simon Fraser.
2351
2352         With iOS tile cache implementation deleting RenderLayerCompositor may end up starting a deleted timer. 
2353         This corrupts the timer heap and leads to a crash later. This happens because GraphicsLayers destructor 
2354         calls back to the RenderLayerCompositor that is being deleted. This is pretty fragile in general.
2355         
2356         No test as there is no known way to repro this with plain webkit.
2357
2358         * platform/Timer.cpp:
2359         (WebCore::TimerBase::TimerBase):
2360         (WebCore::TimerBase::~TimerBase):
2361         (WebCore::TimerBase::setNextFireTime):
2362         * platform/Timer.h:
2363         
2364             Assert that the timer is alive before starting it. This turns bugs like this into clear crash stacks
2365             instead of hard-to-debug timer heap corruptions.
2366
2367         * rendering/RenderLayerCompositor.cpp:
2368         (WebCore::RenderLayerCompositor::~RenderLayerCompositor):
2369         
2370             Take care to delete owned GraphicsLayers before proceeding with the rest of the destructor.
2371
2372 2013-06-27  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2373
2374         Update SVG interfaces to stop inheriting from SVGURIReference and SVGTests
2375         https://bugs.webkit.org/show_bug.cgi?id=118142
2376
2377         Reviewed by Ryosuke Niwa.
2378
2379         Stop inheriting from SVGURIReference and SVGTests and use IDL implements statements
2380         instead. This is one step towards getting rid of multiple inheritance in SVG (which
2381         is no longer supported by Web IDL) and matching the latest specification:
2382         - https://svgwg.org/svg2-draft/types.html#BasicDOMInterfaces
2383
2384         No new tests, no behavior change.
2385
2386         * CMakeLists.txt:
2387         * DerivedSources.pri:
2388         * GNUmakefile.list.am:
2389         * svg/SVGAElement.idl:
2390         * svg/SVGAltGlyphElement.idl:
2391         * svg/SVGAnimationElement.idl:
2392         * svg/SVGCircleElement.idl:
2393         * svg/SVGClipPathElement.idl:
2394         * svg/SVGCursorElement.idl:
2395         * svg/SVGDefsElement.idl:
2396         * svg/SVGEllipseElement.idl:
2397         * svg/SVGFEImageElement.idl:
2398         * svg/SVGFilterElement.idl:
2399         * svg/SVGForeignObjectElement.idl:
2400         * svg/SVGGElement.idl:
2401         * svg/SVGGlyphRefElement.idl:
2402         * svg/SVGGradientElement.idl:
2403         * svg/SVGImageElement.idl:
2404         * svg/SVGLineElement.idl:
2405         * svg/SVGMPathElement.idl:
2406         * svg/SVGMaskElement.idl:
2407         * svg/SVGPathElement.idl:
2408         * svg/SVGPatternElement.idl:
2409         * svg/SVGPolygonElement.idl:
2410         * svg/SVGPolylineElement.idl:
2411         * svg/SVGRectElement.idl:
2412         * svg/SVGSVGElement.idl:
2413         * svg/SVGScriptElement.idl:
2414         * svg/SVGSwitchElement.idl:
2415         * svg/SVGTRefElement.idl:
2416         * svg/SVGTextContentElement.idl:
2417         * svg/SVGTextPathElement.idl:
2418         * svg/SVGUseElement.idl:
2419
2420 2013-06-27  Ruth Fong  <ruth_fong@apple.com>
2421
2422         Polish context menus for media elements
2423         https://bugs.webkit.org/show_bug.cgi?id=118078
2424         <rdar://problem/14278960>
2425
2426         Reviewed by Eric Carlson.
2427
2428         No new tests: media/context-menu-action.html,
2429         which has been disabled by bug 116651, is used to test context menus.
2430
2431         * English.lproj/Localizable.strings: Changed "Fullscreen" to "Full Screen"
2432         and added strings "Show Controls" and "Hide Controls".
2433
2434         * page/ContextMenuController.cpp: Updated to include a new context menu item 
2435         that toggles betweeen "Show Controls" and "Hide Controls".
2436
2437         * platform/ContextMenuItem.h:
2438
2439         * platform/LocalizedStrings.cpp:
2440         * platform/LocalizedStrings.h:
2441         * platform/efl/LocalizedStringsEfl.cpp:
2442         * platform/gtk/LocalizedStringsGtk.cpp:
2443         * platform/qt/LocalizedStringsQt.cpp:
2444         Added equivalents of localized strings "Show Controls" and "Hide Controls".
2445
2446 2013-06-27  Chris Fleizach  <cfleizach@apple.com>
2447
2448         AX: IOS: crash while navigating with SVG
2449         https://bugs.webkit.org/show_bug.cgi?id=118101
2450
2451         Need to check if the SVG path exists before copying it.
2452
2453         Reviewed by Stephen Chenney.
2454
2455         Test: platform/iphone-simulator/accessibility/svg-path-crash.html
2456
2457         * accessibility/AccessibilityRenderObject.cpp:
2458         (WebCore::AccessibilityRenderObject::elementPath):
2459         * rendering/svg/RenderSVGShape.h:
2460         (WebCore::RenderSVGShape::hasPath):
2461
2462 2013-06-27  Seokju Kwon  <seokju.kwon@gmail.com>
2463
2464         Removing the redundant checks after r152078
2465         https://bugs.webkit.org/show_bug.cgi?id=118117
2466
2467         Reviewed by Simon Fraser.
2468
2469         Avoided redundant checks in RenderLayerCompositor::reasonsForCompositing() after r152078.
2470
2471         No new tests as no functionality change.
2472
2473         * inspector/InspectorLayerTreeAgent.cpp:
2474         (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
2475         * rendering/RenderLayerCompositor.cpp:
2476         (WebCore::RenderLayerCompositor::logReasonsForCompositing):
2477
2478 2013-06-27  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2479
2480         Remove [NoInterfaceObject] from WorkerGlobalScope
2481         https://bugs.webkit.org/show_bug.cgi?id=118071
2482
2483         Reviewed by Kentaro Hara.
2484
2485         Expose WorkerGlobalScope interface in worker environment as per the latest
2486         specification:
2487         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#the-workerglobalscope-common-interface
2488
2489         Also expose the SharedWorkerGlobalScope interface when the JavaScript global environment is a
2490         shared worker environment, and the DedicatedWorkerGlobalScope interface when the JavaScript
2491         global environment is a dedicated worker environment:
2492         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#sharedworkerglobalscope
2493         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#dedicatedworkerglobalscope
2494
2495         The semantics of the [GlobalContext] IDL extended attribute has changed to support this
2496         use case. The value for the extended attribute is now the name of the interface to which the
2497         Constructor attribute should be added (Window, WorkerGlobalScope, SharedWorkerGlobalScope...).
2498         It is possible to specify several interface names by using '&' as separator. For e.g.
2499         [GlobalContext=DOMWindow&WorkerGlobalScope].
2500
2501         Tests: fast/js/global-constructors-attributes-dedicated-worker.html
2502                fast/js/global-constructors-attributes-shared-worker.html
2503
2504         * CMakeLists.txt:
2505         * DerivedSources.make:
2506         * DerivedSources.pri:
2507         * GNUmakefile.am:
2508         * Modules/websockets/WebSocket.idl:
2509         * UseJSC.cmake:
2510         * bindings/scripts/CodeGeneratorJS.pm:
2511         (GenerateConstructorHelperMethods):
2512         * bindings/scripts/IDLAttributes.txt:
2513         * bindings/scripts/generate-bindings.pl:
2514         (checkIfIDLAttributesExists):
2515         * bindings/scripts/preprocess-idls.pl:
2516         * dom/MessageChannel.idl:
2517         * dom/MessageEvent.idl:
2518         * fileapi/Blob.idl:
2519         * fileapi/FileReader.idl:
2520         * fileapi/FileReaderSync.idl:
2521         * html/DOMURL.idl:
2522         * html/canvas/ArrayBuffer.idl:
2523         * html/canvas/DataView.idl:
2524         * html/canvas/Float32Array.idl:
2525         * html/canvas/Float64Array.idl:
2526         * html/canvas/Int16Array.idl:
2527         * html/canvas/Int32Array.idl:
2528         * html/canvas/Int8Array.idl:
2529         * html/canvas/Uint16Array.idl:
2530         * html/canvas/Uint32Array.idl:
2531         * html/canvas/Uint8Array.idl:
2532         * html/canvas/Uint8ClampedArray.idl:
2533         * page/EventSource.idl:
2534         * workers/DedicatedWorkerGlobalScope.idl:
2535         * workers/SharedWorkerGlobalScope.idl:
2536         * workers/WorkerGlobalScope.idl:
2537         * workers/WorkerLocation.idl:
2538         * xml/XMLHttpRequest.idl:
2539
2540 2013-06-27  Commit Queue  <commit-queue@webkit.org>
2541
2542         Unreviewed, rolling out r152074.
2543         http://trac.webkit.org/changeset/152074
2544         https://bugs.webkit.org/show_bug.cgi?id=118137
2545
2546         It caused lots of layout and API test crash on Qt Wk2.
2547         (Requested by kadam on #webkit).
2548
2549         * CMakeLists.txt:
2550         * Target.pri:
2551         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: Removed.
2552         * platform/graphics/texmap/coordinated/CompositingCoordinator.h: Removed.
2553
2554 2013-06-27  Seokju Kwon  <seokju.kwon@gmail.com>
2555
2556         Avoid duplicating hostWindow() call in FrameView::setFrameRect()
2557         https://bugs.webkit.org/show_bug.cgi?id=118115
2558
2559         Reviewed by Christophe Dumez.
2560
2561         Remove a redundant call in FrameView::setFrameRect().
2562
2563         No function change, no tests.
2564
2565         * page/FrameView.cpp:
2566         (WebCore::FrameView::scheduleAnimation):
2567
2568 2013-06-27  Xabier Rodriguez Calvar  <calvaris@igalia.com>
2569
2570         Fixing some compiler warnings
2571         https://bugs.webkit.org/show_bug.cgi?id=117791
2572
2573         Reviewed by Martin Robinson.
2574
2575         No new tests needed.
2576
2577         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2578         (webkitAccessibleTextGetTextForOffset): Fixed warning about
2579         uninitialized variable.
2580
2581 2013-06-27  Iago Toral Quiroga  <itoral@igalia.com>
2582
2583         Use consistent file names for WidgetBackingStoreGtkX11 class
2584         https://bugs.webkit.org/show_bug.cgi?id=118124
2585
2586         Reviewed by Carlos Garcia Campos.
2587
2588         * GNUmakefile.list.am:
2589         * PlatformGTK.cmake:
2590         * platform/gtk/GtkWidgetBackingStoreX11.cpp: Removed.
2591         * platform/gtk/GtkWidgetBackingStoreX11.h: Removed.
2592         * platform/gtk/WidgetBackingStoreGtkX11.cpp: Added.
2593         (WebCore::WidgetBackingStoreGtkX11::create):
2594         (WebCore::WidgetBackingStoreGtkX11::WidgetBackingStoreGtkX11):
2595         (WebCore::WidgetBackingStoreGtkX11::~WidgetBackingStoreGtkX11):
2596         (WebCore::WidgetBackingStoreGtkX11::cairoSurface):
2597         (WebCore::WidgetBackingStoreGtkX11::scroll):
2598         * platform/gtk/WidgetBackingStoreGtkX11.h: Added.
2599
2600 2013-06-27  Zoltan Arvai  <zarvai@inf.u-szeged.hu>
2601
2602         Buildfix for !ENABLE(SVG) builds.
2603
2604         Reviewed by Csaba Osztrogonác.
2605
2606         Moving RenderObject::hasAspectRatio() outside from ENABLE(SVG) guard.
2607
2608         * rendering/RenderObject.h:
2609         (WebCore::RenderObject::hasAspectRatio):
2610
2611 2013-06-27  Kangil Han  <kangil.han@samsung.com>
2612
2613         Adopt is/toHTMLLabelElement for code cleanup
2614         https://bugs.webkit.org/show_bug.cgi?id=118113
2615
2616         Reviewed by Andreas Kling.
2617
2618         To enhance readability, this patch adopts is/toHTMLLabelElement.
2619         This also helps out to reduce duplicated use of static_cast.
2620
2621         * accessibility/AXObjectCache.cpp:
2622         (WebCore::AXObjectCache::handleAttributeChanged):
2623         (WebCore::AXObjectCache::labelChanged):
2624         * accessibility/AccessibilityNodeObject.cpp:
2625         (WebCore::AccessibilityNodeObject::determineAccessibilityRole):
2626         (WebCore::AccessibilityNodeObject::labelForElement):
2627         * accessibility/AccessibilityRenderObject.cpp:
2628         (WebCore::AccessibilityRenderObject::labelElementContainer):
2629         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2630         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
2631         * dom/DocumentOrderedMap.cpp:
2632         (WebCore::keyMatchesLabelForAttribute):
2633         * dom/Element.cpp:
2634         (WebCore::Element::updateLabel):
2635         * dom/TreeScope.cpp:
2636         (WebCore::TreeScope::labelElementForId):
2637         * html/HTMLLabelElement.h:
2638         (WebCore::isHTMLLabelElement):
2639         (WebCore::toHTMLLabelElement):
2640         * html/LabelsNodeList.cpp:
2641         (WebCore::LabelsNodeList::nodeMatches):
2642
2643 2013-06-27  Peter Gal  <galpeter@inf.u-szeged.hu>
2644
2645         [curl] Fix unused variable/parameter warnings
2646         https://bugs.webkit.org/show_bug.cgi?id=118050
2647
2648         Reviewed by Christophe Dumez.
2649
2650         Commented out unused parameters and removed an unused variable in the curl backend.
2651
2652         No tests required.
2653
2654         * platform/network/curl/CredentialStorageCurl.cpp:
2655         (WebCore::CredentialStorage::getFromPersistentStorage):
2656         * platform/network/curl/DNSCurl.cpp:
2657         (WebCore::prefetchDNS):
2658         * platform/network/curl/ResourceHandleManager.cpp:
2659         (WebCore::curl_lock_callback):
2660         (WebCore::curl_unlock_callback):
2661         (WebCore::headerCallback):
2662         (WebCore::ResourceHandleManager::downloadTimerCallback):
2663
2664 2013-06-27  Csaba Osztrogonác  <ossy@webkit.org>
2665
2666         Fix cast-align warnings in WebCore/platform/graphics/cairo
2667         https://bugs.webkit.org/show_bug.cgi?id=117990
2668
2669         Reviewed by Rob Buis.
2670
2671         * platform/graphics/cairo/BitmapImageCairo.cpp:
2672         (WebCore::BitmapImage::checkForSolidColor):
2673         * platform/graphics/cairo/ImageBufferCairo.cpp:
2674         (WebCore::ImageBuffer::platformTransformColorSpace):
2675         (WebCore::getImageData):
2676         (WebCore::ImageBuffer::putByteArray):
2677
2678 2013-06-27  Szabolcs Dávid  <davidsz@inf.u-szeged.hu>
2679
2680         [curl] Add "set-cookie" to appendable headers
2681         https://bugs.webkit.org/show_bug.cgi?id=118061
2682
2683         Reviewed by Christophe Dumez.
2684
2685         Mark set-cookie as an appendable header.
2686
2687         * platform/network/curl/ResourceHandleManager.cpp:
2688         (WebCore::isAppendableHeader):
2689
2690 2013-06-27  Horia Iosif Olaru  <olaru@adobe.com>
2691
2692         Remove ENABLE_CSS_COMPOSITING guards around -webkit-background-blend mode related code. The same flag guards -webkit-blend-mode code, but those guards are not touched by this change.
2693
2694         https://bugs.webkit.org/show_bug.cgi?id=117619
2695
2696         Reviewed by Dean Jackson.
2697
2698         Test: css3/compositing/effect-background-blend-mode-tiled.html
2699
2700         * WebCore.exp.in:
2701         * bindings/generic/RuntimeEnabledFeatures.h:
2702         * css/CSSComputedStyleDeclaration.cpp:
2703         (WebCore::ComputedStyleExtractor::propertyValue):
2704         * css/CSSParser.cpp:
2705         (WebCore::CSSParser::parseValue):
2706         (WebCore::CSSParser::parseFillProperty):
2707         * css/CSSProperty.cpp:
2708         (WebCore::CSSProperty::isInheritedProperty):
2709         * css/CSSPropertyNames.in:
2710         * css/DeprecatedStyleBuilder.cpp:
2711         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2712
2713 2013-06-26  Christophe Dumez  <ch.dumez@sisa.samsung.com>
2714
2715         Rename WorkerContext to WorkerGlobalScope
2716         https://bugs.webkit.org/show_bug.cgi?id=118059
2717
2718         Reviewed by Kentaro Hara.
2719
2720         Rename WorkerContext / SharedWorkerContext / DedicatedWorkerContext to
2721         WorkerGlobalScope / SharedWorkerGlobalScope / DedicatedWorkerGlobalScope
2722         to match the latest specification:
2723         http://www.whatwg.org/specs/web-apps/current-work/multipage/workers.html#workerglobalscope
2724
2725         Those interfaces have [NoInterfaceObject] IDL extended attribute so the
2726         name did not matter much so far. However, the specification was updated
2727         and [NoInterfaceObject] was removed. We should therefore rename those
2728         interfaces as a preparation for this change.
2729
2730         No new tests, no behavior change as these interfaces are not exposed to
2731         JavaScript yet.
2732
2733         * CMakeLists.txt:
2734         * DerivedSources.cpp:
2735         * DerivedSources.make:
2736         * DerivedSources.pri:
2737         * GNUmakefile.am:
2738         * GNUmakefile.list.am:
2739         * Modules/filesystem/WorkerGlobalScopeFileSystem.cpp: Renamed from Source/WebCore/Modules/filesystem/WorkerContextFileSystem.cpp.
2740         (WebCore::WorkerGlobalScopeFileSystem::webkitRequestFileSystem):
2741         (WebCore::WorkerGlobalScopeFileSystem::webkitRequestFileSystemSync):
2742         (WebCore::WorkerGlobalScopeFileSystem::webkitResolveLocalFileSystemURL):
2743         (WebCore::WorkerGlobalScopeFileSystem::webkitResolveLocalFileSystemSyncURL):
2744         * Modules/filesystem/WorkerGlobalScopeFileSystem.h: Renamed from Source/WebCore/Modules/filesystem/WorkerContextFileSystem.h.
2745         * Modules/filesystem/WorkerGlobalScopeFileSystem.idl: Renamed from Source/WebCore/Modules/filesystem/WorkerContextFileSystem.idl.
2746         * Modules/indexeddb/IDBFactory.cpp:
2747         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.cpp: Renamed from Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.cpp.
2748         (WebCore::WorkerGlobalScopeIndexedDatabase::WorkerGlobalScopeIndexedDatabase):
2749         (WebCore::WorkerGlobalScopeIndexedDatabase::~WorkerGlobalScopeIndexedDatabase):
2750         (WebCore::WorkerGlobalScopeIndexedDatabase::supplementName):
2751         (WebCore::WorkerGlobalScopeIndexedDatabase::from):
2752         (WebCore::WorkerGlobalScopeIndexedDatabase::indexedDB):
2753         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.h: Renamed from Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.h.
2754         * Modules/indexeddb/WorkerGlobalScopeIndexedDatabase.idl: Renamed from Source/WebCore/Modules/indexeddb/WorkerContextIndexedDatabase.idl.
2755         * Modules/notifications/Notification.cpp:
2756         * Modules/notifications/NotificationCenter.cpp:
2757         * Modules/notifications/WorkerGlobalScopeNotifications.cpp: Renamed from Source/WebCore/Modules/notifications/WorkerContextNotifications.cpp.
2758         (WebCore::WorkerGlobalScopeNotifications::WorkerGlobalScopeNotifications):
2759         (WebCore::WorkerGlobalScopeNotifications::~WorkerGlobalScopeNotifications):
2760         (WebCore::WorkerGlobalScopeNotifications::supplementName):
2761         (WebCore::WorkerGlobalScopeNotifications::from):
2762         (WebCore::WorkerGlobalScopeNotifications::webkitNotifications):
2763         * Modules/notifications/WorkerGlobalScopeNotifications.h: Renamed from Source/WebCore/Modules/notifications/WorkerContextNotifications.h.
2764         * Modules/notifications/WorkerGlobalScopeNotifications.idl: Renamed from Source/WebCore/Modules/notifications/WorkerContextNotifications.idl.
2765         * Modules/webdatabase/DatabaseContext.cpp:
2766         (WebCore::DatabaseContext::allowDatabaseAccess):
2767         (WebCore::DatabaseContext::databaseExceededQuota):
2768         * Modules/webdatabase/WorkerGlobalScopeWebDatabase.cpp: Renamed from Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.cpp.
2769         (WebCore::WorkerGlobalScopeWebDatabase::openDatabase):
2770         (WebCore::WorkerGlobalScopeWebDatabase::openDatabaseSync):
2771         * Modules/webdatabase/WorkerGlobalScopeWebDatabase.h: Renamed from Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.h.
2772         (WebCore::WorkerGlobalScopeWebDatabase::WorkerGlobalScopeWebDatabase):
2773         (WebCore::WorkerGlobalScopeWebDatabase::~WorkerGlobalScopeWebDatabase):
2774         * Modules/webdatabase/WorkerGlobalScopeWebDatabase.idl: Renamed from Source/WebCore/Modules/webdatabase/WorkerContextWebDatabase.idl.
2775         * Modules/websockets/ThreadableWebSocketChannel.cpp:
2776         (WebCore::ThreadableWebSocketChannel::create):
2777         * Modules/websockets/ThreadableWebSocketChannelClientWrapper.cpp:
2778         (WebCore::ThreadableWebSocketChannelClientWrapper::processPendingTasksCallback):
2779         * Modules/websockets/WorkerThreadableWebSocketChannel.cpp:
2780         (WebCore::WorkerThreadableWebSocketChannel::WorkerThreadableWebSocketChannel):
2781         (WebCore::workerGlobalScopeDidSend):
2782         (WebCore::WorkerThreadableWebSocketChannel::Peer::send):
2783         (WebCore::workerGlobalScopeDidGetBufferedAmount):
2784         (WebCore::WorkerThreadableWebSocketChannel::Peer::bufferedAmount):
2785         (WebCore::workerGlobalScopeDidConnect):
2786         (WebCore::WorkerThreadableWebSocketChannel::Peer::didConnect):
2787         (WebCore::workerGlobalScopeDidReceiveMessage):
2788         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessage):
2789         (WebCore::workerGlobalScopeDidReceiveBinaryData):
2790         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveBinaryData):
2791         (WebCore::workerGlobalScopeDidUpdateBufferedAmount):
2792         (WebCore::WorkerThreadableWebSocketChannel::Peer::didUpdateBufferedAmount):
2793         (WebCore::workerGlobalScopeDidStartClosingHandshake):
2794         (WebCore::WorkerThreadableWebSocketChannel::Peer::didStartClosingHandshake):
2795         (WebCore::workerGlobalScopeDidClose):
2796         (WebCore::WorkerThreadableWebSocketChannel::Peer::didClose):
2797         (WebCore::workerGlobalScopeDidReceiveMessageError):
2798         (WebCore::WorkerThreadableWebSocketChannel::Peer::didReceiveMessageError):
2799         (WebCore::WorkerThreadableWebSocketChannel::Bridge::Bridge):
2800         (WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::create):
2801         (WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::~WorkerGlobalScopeDidInitializeTask):
2802         (WebCore::WorkerThreadableWebSocketChannel::WorkerGlobalScopeDidInitializeTask::WorkerGlobalScopeDidInitializeTask):
2803         (WebCore::WorkerThreadableWebSocketChannel::Bridge::mainThreadInitialize):
2804         (WebCore::WorkerThreadableWebSocketChannel::Bridge::disconnect):
2805         (WebCore::WorkerThreadableWebSocketChannel::Bridge::waitForMethodCompletion):
2806         * Modules/websockets/WorkerThreadableWebSocketChannel.h:
2807         (WebCore::WorkerThreadableWebSocketChannel::create):
2808         (WebCore::WorkerThreadableWebSocketChannel::Bridge::create):
2809         * Target.pri:
2810         * UseJSC.cmake:
2811         * WebCore.order:
2812         * WebCore.vcxproj/WebCore.vcxproj:
2813         * WebCore.vcxproj/WebCore.vcxproj.filters:
2814         * WebCore.xcodeproj/project.pbxproj:
2815         * bindings/cpp/WebDOMEventTarget.cpp:
2816         (toWebKit):
2817         * bindings/cpp/WebDOMEventTarget.h:
2818         * bindings/generic/ActiveDOMCallback.cpp:
2819         * bindings/js/DOMRequestState.h:
2820         (WebCore::DOMRequestState::DOMRequestState):
2821         * bindings/js/JSBindingsAllInOne.cpp:
2822         * bindings/js/JSDOMBinding.h:
2823         * bindings/js/JSDOMGlobalObject.cpp:
2824         (WebCore::JSDOMGlobalObject::scriptExecutionContext):
2825         (WebCore::toJSDOMGlobalObject):
2826         * bindings/js/JSDedicatedWorkerGlobalScopeCustom.cpp: Renamed from Source/WebCore/bindings/js/JSDedicatedWorkerContextCustom.cpp.
2827         (WebCore::JSDedicatedWorkerGlobalScope::postMessage):
2828         * bindings/js/JSEventListener.cpp:
2829         (WebCore::JSEventListener::handleEvent):
2830         * bindings/js/JSEventTargetCustom.cpp:
2831         (WebCore::toJS):
2832         * bindings/js/JSWorkerGlobalScopeBase.cpp: Renamed from Source/WebCore/bindings/js/JSWorkerContextBase.cpp.
2833         (WebCore::JSWorkerGlobalScopeBase::JSWorkerGlobalScopeBase):
2834         (WebCore::JSWorkerGlobalScopeBase::finishCreation):
2835         (WebCore::JSWorkerGlobalScopeBase::destroy):
2836         (WebCore::JSWorkerGlobalScopeBase::scriptExecutionContext):
2837         (WebCore::toJS):
2838         (WebCore::toJSDedicatedWorkerGlobalScope):
2839         (WebCore::toJSSharedWorkerGlobalScope):
2840         (WebCore::toJSWorkerGlobalScope):
2841         * bindings/js/JSWorkerGlobalScopeBase.h: Renamed from Source/WebCore/bindings/js/JSWorkerContextBase.h.
2842         (WebCore::JSWorkerGlobalScopeBase::impl):
2843         (WebCore::JSWorkerGlobalScopeBase::createStructure):
2844         * bindings/js/JSWorkerGlobalScopeCustom.cpp: Renamed from Source/WebCore/bindings/js/JSWorkerContextCustom.cpp.
2845         (WebCore::JSWorkerGlobalScope::visitChildren):
2846         (WebCore::JSWorkerGlobalScope::getOwnPropertySlotDelegate):
2847         (WebCore::JSWorkerGlobalScope::getOwnPropertyDescriptorDelegate):
2848         (WebCore::JSWorkerGlobalScope::importScripts):
2849         (WebCore::JSWorkerGlobalScope::setTimeout):
2850         (WebCore::JSWorkerGlobalScope::setInterval):
2851         * bindings/js/ScheduledAction.cpp:
2852         (WebCore::ScheduledAction::execute):
2853         * bindings/js/ScheduledAction.h:
2854         * bindings/js/ScriptProfiler.cpp:
2855         (WebCore::ScriptProfiler::startForWorkerGlobalScope):
2856         (WebCore::ScriptProfiler::stopForWorkerGlobalScope):
2857         * bindings/js/ScriptProfiler.h:
2858         * bindings/js/ScriptState.cpp:
2859         (WebCore::scriptStateFromWorkerGlobalScope):
2860         * bindings/js/ScriptState.h:
2861         * bindings/js/WorkerScriptController.cpp:
2862         (WebCore::WorkerScriptController::WorkerScriptController):
2863         (WebCore::WorkerScriptController::~WorkerScriptController):
2864         (WebCore::WorkerScriptController::initScript):
2865         (WebCore::WorkerScriptController::evaluate):
2866         (WebCore::WorkerScriptController::setException):
2867         (WebCore::WorkerScriptController::forbidExecution):
2868         (WebCore::WorkerScriptController::isExecutionForbidden):
2869         (WebCore::WorkerScriptController::disableEval):
2870         (WebCore::WorkerScriptController::attachDebugger):
2871         (WebCore::WorkerScriptController::detachDebugger):
2872         * bindings/js/WorkerScriptController.h:
2873         (WebCore::WorkerScriptController::workerGlobalScopeWrapper):
2874         (WebCore::WorkerScriptController::initScriptIfNeeded):
2875         * bindings/js/WorkerScriptDebugServer.cpp:
2876         (WebCore::WorkerScriptDebugServer::WorkerScriptDebugServer):
2877         (WebCore::WorkerScriptDebugServer::addListener):
2878         (WebCore::WorkerScriptDebugServer::recompileAllJSFunctions):
2879         (WebCore::WorkerScriptDebugServer::removeListener):
2880         (WebCore::WorkerScriptDebugServer::runEventLoopWhilePaused):
2881         * bindings/js/WorkerScriptDebugServer.h:
2882         * bindings/scripts/CodeGeneratorJS.pm:
2883         (GenerateHeader):
2884         (GenerateImplementation):
2885         * bindings/scripts/IDLAttributes.txt:
2886         * bindings/scripts/preprocess-idls.pl:
2887         * dom/ActiveDOMObject.cpp:
2888         * dom/EventTarget.h:
2889         * dom/EventTargetFactory.in:
2890         * dom/MessagePort.cpp:
2891         (WebCore::MessagePort::dispatchMessages):
2892         * dom/ScriptExecutionContext.cpp:
2893         (WebCore::ScriptExecutionContext::createdMessagePort):
2894         (WebCore::ScriptExecutionContext::destroyedMessagePort):
2895         (WebCore::ScriptExecutionContext::vm):
2896         * dom/ScriptExecutionContext.h:
2897         (WebCore::ScriptExecutionContext::isWorkerGlobalScope):
2898         * inspector/InjectedScriptManager.cpp:
2899         (WebCore::InjectedScriptManager::createForWorker):
2900         (WebCore::InjectedScriptManager::canAccessInspectedWorkerGlobalScope):
2901         * inspector/InjectedScriptManager.h:
2902         * inspector/InspectorConsoleInstrumentation.h:
2903         (WebCore::InspectorInstrumentation::addMessageToConsole):
2904         * inspector/InspectorInstrumentation.cpp:
2905         (WebCore::InspectorInstrumentation::didStartWorkerGlobalScopeImpl):
2906         (WebCore::InspectorInstrumentation::willEvaluateWorkerScript):
2907         (WebCore::InspectorInstrumentation::workerGlobalScopeTerminatedImpl):
2908         (WebCore::InspectorInstrumentation::instrumentingAgentsForWorkerGlobalScope):
2909         (WebCore::InspectorInstrumentation::instrumentingAgentsForNonDocumentContext):
2910         * inspector/InspectorInstrumentation.h:
2911         (WebCore::InspectorInstrumentation::didStartWorkerGlobalScope):
2912         (WebCore::InspectorInstrumentation::workerGlobalScopeTerminated):
2913         * inspector/InspectorProfilerAgent.cpp:
2914         (WebCore::WorkerProfilerAgent::WorkerProfilerAgent):
2915         (WebCore::WorkerProfilerAgent::startProfiling):
2916         (WebCore::WorkerProfilerAgent::stopProfiling):
2917         (WebCore::InspectorProfilerAgent::create):
2918         * inspector/InspectorProfilerAgent.h:
2919         * inspector/InspectorRuntimeAgent.h:
2920         * inspector/InspectorWorkerAgent.cpp:
2921         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::WorkerFrontendChannel):
2922         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::~WorkerFrontendChannel):
2923         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::proxy):
2924         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::connectToWorkerGlobalScope):
2925         (WebCore::InspectorWorkerAgent::WorkerFrontendChannel::disconnectFromWorkerGlobalScope):
2926         (WebCore::InspectorWorkerAgent::connectToWorker):
2927         (WebCore::InspectorWorkerAgent::disconnectFromWorker):
2928         (WebCore::InspectorWorkerAgent::didStartWorkerGlobalScope):
2929         (WebCore::InspectorWorkerAgent::workerGlobalScopeTerminated):
2930         (WebCore::InspectorWorkerAgent::destroyWorkerFrontendChannels):
2931         (WebCore::InspectorWorkerAgent::createWorkerFrontendChannel):
2932         * inspector/InspectorWorkerAgent.h:
2933         * inspector/InstrumentingAgents.cpp:
2934         (WebCore::instrumentationForWorkerGlobalScope):
2935         * inspector/InstrumentingAgents.h:
2936         * inspector/WorkerDebuggerAgent.cpp:
2937         (WebCore::WorkerDebuggerAgent::create):
2938         (WebCore::WorkerDebuggerAgent::WorkerDebuggerAgent):
2939         (WebCore::WorkerDebuggerAgent::~WorkerDebuggerAgent):
2940         (WebCore::WorkerDebuggerAgent::interruptAndDispatchInspectorCommands):
2941         (WebCore::WorkerDebuggerAgent::injectedScriptForEval):
2942         * inspector/WorkerDebuggerAgent.h:
2943         * inspector/WorkerInspectorController.cpp:
2944         (WebCore::WorkerInspectorController::WorkerInspectorController):
2945         (WebCore::WorkerInspectorController::connectFrontend):
2946         * inspector/WorkerInspectorController.h:
2947         * inspector/WorkerRuntimeAgent.cpp:
2948         (WebCore::WorkerRuntimeAgent::WorkerRuntimeAgent):
2949         (WebCore::WorkerRuntimeAgent::injectedScriptForEval):
2950         (WebCore::WorkerRuntimeAgent::pauseWorkerGlobalScope):
2951         * inspector/WorkerRuntimeAgent.h:
2952         (WebCore::WorkerRuntimeAgent::create):
2953         * loader/ThreadableLoader.cpp:
2954         (WebCore::ThreadableLoader::create):
2955         (WebCore::ThreadableLoader::loadResourceSynchronously):
2956         * loader/WorkerThreadableLoader.cpp:
2957         (WebCore::WorkerThreadableLoader::WorkerThreadableLoader):
2958         (WebCore::WorkerThreadableLoader::loadResourceSynchronously):
2959         (WebCore::workerGlobalScopeDidSendData):
2960         (WebCore::WorkerThreadableLoader::MainThreadBridge::didSendData):
2961         (WebCore::workerGlobalScopeDidReceiveResponse):
2962         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveResponse):
2963         (WebCore::workerGlobalScopeDidReceiveData):
2964         (WebCore::WorkerThreadableLoader::MainThreadBridge::didReceiveData):
2965         (WebCore::workerGlobalScopeDidFinishLoading):
2966         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFinishLoading):
2967         (WebCore::workerGlobalScopeDidFail):
2968         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFail):
2969         (WebCore::workerGlobalScopeDidFailAccessControlCheck):
2970         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailAccessControlCheck):
2971         (WebCore::workerGlobalScopeDidFailRedirectCheck):
2972         (WebCore::WorkerThreadableLoader::MainThreadBridge::didFailRedirectCheck):
2973         * loader/WorkerThreadableLoader.h:
2974         (WebCore::WorkerThreadableLoader::create):
2975         * loader/cache/MemoryCache.cpp:
2976         (WebCore::MemoryCache::removeRequestFromCache):
2977         * platform/blackberry/LocalFileSystemBlackBerry.cpp:
2978         (WebCore::openFileSystem):
2979         (WebCore::LocalFileSystem::deleteFileSystem):
2980         * platform/blackberry/WorkerAsyncFileSystemBlackBerry.cpp:
2981         (WebCore::WorkerAsyncFileSystemBlackBerry::WorkerAsyncFileSystemBlackBerry):
2982         (WebCore::WorkerAsyncFileSystemBlackBerry::openFileSystem):
2983         (WebCore::WorkerAsyncFileSystemBlackBerry::deleteFileSystem):
2984         * platform/blackberry/WorkerAsyncFileSystemBlackBerry.h:
2985         (WebCore::WorkerAsyncFileSystemBlackBerry::create):
2986         * platform/blackberry/WorkerAsyncFileWriterBlackBerry.h:
2987         * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.cpp:
2988         (WebCore::WorkerPlatformAsyncFileSystemCallbacks::postTaskToWorkerThread):
2989         * platform/blackberry/WorkerPlatformAsyncFileSystemCallbacks.h:
2990         * platform/blackberry/WorkerPlatformFileWriterClient.cpp:
2991         (WebCore::WorkerPlatformFileWriterClient::postTaskToWorkerThreadIfNeeded):
2992         * platform/blackberry/WorkerPlatformFileWriterClient.h:
2993         * workers/DedicatedWorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/DedicatedWorkerContext.cpp.
2994         (WebCore::DedicatedWorkerGlobalScope::create):
2995         (WebCore::DedicatedWorkerGlobalScope::DedicatedWorkerGlobalScope):
2996         (WebCore::DedicatedWorkerGlobalScope::~DedicatedWorkerGlobalScope):
2997         (WebCore::DedicatedWorkerGlobalScope::interfaceName):
2998         (WebCore::DedicatedWorkerGlobalScope::postMessage):
2999         (WebCore::DedicatedWorkerGlobalScope::importScripts):
3000         (WebCore::DedicatedWorkerGlobalScope::thread):
3001         * workers/DedicatedWorkerGlobalScope.h: Renamed from Source/WebCore/workers/DedicatedWorkerContext.h.
3002         * workers/DedicatedWorkerGlobalScope.idl: Renamed from Source/WebCore/workers/DedicatedWorkerContext.idl.
3003         * workers/DedicatedWorkerThread.cpp:
3004         (WebCore::DedicatedWorkerThread::createWorkerGlobalScope):
3005         (WebCore::DedicatedWorkerThread::runEventLoop):
3006         * workers/DedicatedWorkerThread.h:
3007         * workers/DefaultSharedWorkerRepository.cpp:
3008         (WebCore::SharedWorkerProxy::postTaskForModeToWorkerGlobalScope):
3009         (WebCore::SharedWorkerProxy::workerGlobalScopeClosed):
3010         (WebCore::SharedWorkerProxy::workerGlobalScopeDestroyed):
3011         (WebCore::SharedWorkerConnectTask::performTask):
3012         (WebCore::SharedWorkerScriptLoader::notifyFinished):
3013         (WebCore::DefaultSharedWorkerRepository::workerScriptLoaded):
3014         * workers/SharedWorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/SharedWorkerContext.cpp.
3015         (WebCore::createConnectEvent):
3016         (WebCore::SharedWorkerGlobalScope::create):
3017         (WebCore::SharedWorkerGlobalScope::SharedWorkerGlobalScope):
3018         (WebCore::SharedWorkerGlobalScope::~SharedWorkerGlobalScope):
3019         (WebCore::SharedWorkerGlobalScope::interfaceName):
3020         (WebCore::SharedWorkerGlobalScope::thread):
3021         (WebCore::SharedWorkerGlobalScope::logExceptionToConsole):
3022         * workers/SharedWorkerGlobalScope.h: Renamed from Source/WebCore/workers/SharedWorkerContext.h.
3023         (WebCore::SharedWorkerGlobalScope::name):
3024         * workers/SharedWorkerGlobalScope.idl: Renamed from Source/WebCore/workers/SharedWorkerContext.idl.
3025         * workers/SharedWorkerThread.cpp:
3026         (WebCore::SharedWorkerThread::createWorkerGlobalScope):
3027         * workers/SharedWorkerThread.h:
3028         * workers/Worker.cpp:
3029         (WebCore::Worker::Worker):
3030         (WebCore::Worker::postMessage):
3031         (WebCore::Worker::terminate):
3032         (WebCore::Worker::notifyFinished):
3033         * workers/Worker.h:
3034         * workers/WorkerGlobalScope.cpp: Renamed from Source/WebCore/workers/WorkerContext.cpp.
3035         (WebCore::CloseWorkerGlobalScopeTask::create):
3036         (WebCore::CloseWorkerGlobalScopeTask::performTask):
3037         (WebCore::CloseWorkerGlobalScopeTask::isCleanupTask):
3038         (WebCore::WorkerGlobalScope::WorkerGlobalScope):
3039         (WebCore::WorkerGlobalScope::~WorkerGlobalScope):
3040         (WebCore::WorkerGlobalScope::applyContentSecurityPolicyFromString):
3041         (WebCore::WorkerGlobalScope::scriptExecutionContext):
3042         (WebCore::WorkerGlobalScope::virtualURL):
3043         (WebCore::WorkerGlobalScope::virtualCompleteURL):
3044         (WebCore::WorkerGlobalScope::completeURL):
3045         (WebCore::WorkerGlobalScope::userAgent):
3046         (WebCore::WorkerGlobalScope::disableEval):
3047         (WebCore::WorkerGlobalScope::location):
3048         (WebCore::WorkerGlobalScope::close):
3049         (WebCore::WorkerGlobalScope::navigator):
3050         (WebCore::WorkerGlobalScope::hasPendingActivity):
3051         (WebCore::WorkerGlobalScope::postTask):
3052         (WebCore::WorkerGlobalScope::setTimeout):
3053         (WebCore::WorkerGlobalScope::clearTimeout):
3054         (WebCore::WorkerGlobalScope::clearInspector):
3055         (WebCore::WorkerGlobalScope::setInterval):
3056         (WebCore::WorkerGlobalScope::clearInterval):
3057         (WebCore::WorkerGlobalScope::importScripts):
3058         (WebCore::WorkerGlobalScope::errorEventTarget):
3059         (WebCore::WorkerGlobalScope::logExceptionToConsole):
3060         (WebCore::WorkerGlobalScope::addConsoleMessage):
3061         (WebCore::WorkerGlobalScope::addMessage):
3062         (WebCore::WorkerGlobalScope::addMessageToWorkerConsole):
3063         (WebCore::WorkerGlobalScope::isContextThread):
3064         (WebCore::WorkerGlobalScope::isJSExecutionForbidden):
3065         (WebCore::WorkerGlobalScope::eventTargetData):
3066         (WebCore::WorkerGlobalScope::ensureEventTargetData):
3067         (WebCore::WorkerGlobalScope::Observer::Observer):
3068         (WebCore::WorkerGlobalScope::Observer::~Observer):
3069         (WebCore::WorkerGlobalScope::Observer::stopObserving):
3070         (WebCore::WorkerGlobalScope::registerObserver):
3071         (WebCore::WorkerGlobalScope::unregisterObserver):
3072         (WebCore::WorkerGlobalScope::notifyObserversOfStop):
3073         (WebCore::WorkerGlobalScope::eventQueue):
3074         * workers/WorkerGlobalScope.h: Renamed from Source/WebCore/workers/WorkerContext.h.
3075         (WebCore::WorkerGlobalScope::isSharedWorkerGlobalScope):
3076         (WebCore::WorkerGlobalScope::isDedicatedWorkerGlobalScope):
3077         (WebCore::WorkerGlobalScope::url):
3078         (WebCore::WorkerGlobalScope::groupSettings):
3079         (WebCore::WorkerGlobalScope::script):
3080         (WebCore::WorkerGlobalScope::clearScript):
3081         (WebCore::WorkerGlobalScope::thread):
3082         (WebCore::WorkerGlobalScope::self):
3083         (WebCore::WorkerGlobalScope::workerInspectorController):
3084         (WebCore::WorkerGlobalScope::optionalNavigator):
3085         (WebCore::WorkerGlobalScope::optionalLocation):
3086         (WebCore::WorkerGlobalScope::isClosing):
3087         * workers/WorkerGlobalScope.idl: Renamed from Source/WebCore/workers/WorkerContext.idl.
3088         * workers/WorkerGlobalScopeProxy.h: Renamed from Source/WebCore/workers/WorkerContextProxy.h.
3089         (WebCore::WorkerGlobalScopeProxy::~WorkerGlobalScopeProxy):
3090         (WebCore::WorkerGlobalScopeProxy::PageInspector::~PageInspector):
3091         (WebCore::WorkerGlobalScopeProxy::connectToInspector):
3092         (WebCore::WorkerGlobalScopeProxy::disconnectFromInspector):
3093         (WebCore::WorkerGlobalScopeProxy::sendMessageToInspector):
3094         * workers/WorkerLoaderProxy.h:
3095         * workers/WorkerMessagingProxy.cpp:
3096         (WebCore::MessageWorkerGlobalScopeTask::create):
3097         (WebCore::MessageWorkerGlobalScopeTask::MessageWorkerGlobalScopeTask):
3098         (WebCore::MessageWorkerGlobalScopeTask::performTask):
3099         (WebCore::WorkerGlobalScopeDestroyedTask::create):
3100         (WebCore::WorkerGlobalScopeDestroyedTask::WorkerGlobalScopeDestroyedTask):
3101         (WebCore::WorkerGlobalScopeDestroyedTask::performTask):
3102         (WebCore::WorkerTerminateTask::performTask):
3103         (WebCore::PostMessageToPageInspectorTask::performTask):
3104         (WebCore::WorkerGlobalScopeProxy::create):
3105         (WebCore::WorkerMessagingProxy::WorkerMessagingProxy):
3106         (WebCore::WorkerMessagingProxy::~WorkerMessagingProxy):
3107         (WebCore::WorkerMessagingProxy::startWorkerGlobalScope):
3108         (WebCore::WorkerMessagingProxy::postMessageToWorkerGlobalScope):
3109         (WebCore::WorkerMessagingProxy::postTaskForModeToWorkerGlobalScope):
3110         (WebCore::WorkerMessagingProxy::workerObjectDestroyedInternal):
3111         (WebCore::connectToWorkerGlobalScopeInspectorTask):
3112         (WebCore::WorkerMessagingProxy::connectToInspector):
3113         (WebCore::disconnectFromWorkerGlobalScopeInspectorTask):
3114         (WebCore::WorkerMessagingProxy::disconnectFromInspector):
3115         (WebCore::dispatchOnInspectorBackendTask):
3116         (WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyed):
3117         (WebCore::WorkerMessagingProxy::workerGlobalScopeClosed):
3118         (WebCore::WorkerMessagingProxy::workerGlobalScopeDestroyedInternal):
3119         (WebCore::WorkerMessagingProxy::terminateWorkerGlobalScope):
3120         * workers/WorkerMessagingProxy.h:
3121         * workers/WorkerObjectProxy.h:
3122         * workers/WorkerReportingProxy.h:
3123         * workers/WorkerRunLoop.cpp:
3124         (WebCore::WorkerRunLoop::run):
3125         (WebCore::WorkerRunLoop::runInMode):
3126         (WebCore::WorkerRunLoop::runCleanupTasks):
3127         (WebCore::WorkerRunLoop::Task::performTask):
3128         * workers/WorkerRunLoop.h:
3129         * workers/WorkerScriptLoader.cpp:
3130         (WebCore::WorkerScriptLoader::loadSynchronously):
3131         * workers/WorkerThread.cpp:
3132         (WebCore::WorkerThread::workerThread):
3133         (WebCore::WorkerThread::runEventLoop):
3134         (WebCore::WorkerThreadShutdownFinishTask::performTask):
3135         (WebCore::WorkerThreadShutdownStartTask::performTask):
3136         (WebCore::WorkerThread::stop):
3137         * workers/WorkerThread.h:
3138         (WebCore::WorkerThread::workerGlobalScope):
3139         * xml/XMLHttpRequest.cpp:
3140         (WebCore::XMLHttpRequest::usesDashboardBackwardCompatibilityMode):
3141         (WebCore::XMLHttpRequest::responseXML):
3142
3143 2013-06-26  Sanjoy Pal  <sanjoy.pal@samsung.com>
3144
3145         Avoid redundant checks for Compositing reasons in RenderLayerCompositor
3146         https://bugs.webkit.org/show_bug.cgi?id=118114
3147
3148         Reviewed by Anders Carlsson.
3149
3150         A RenderObject can be any one of the Video, Canvas, Plugin or Iframe.
3151         Hence removing the redundant checks.
3152
3153         No new tests as no functionality change.
3154
3155         * rendering/RenderLayerCompositor.cpp:
3156         (WebCore::RenderLayerCompositor::reasonsForCompositing):
3157
3158 2013-06-26  Gwang Yoon Hwang  <ryumiel@company100.net>
3159
3160         Coordinated Graphics: Separate CoordinatedLayerTreeHost into CoordinatedLayerTreeHost and CompositingCoordinator
3161         https://bugs.webkit.org/show_bug.cgi?id=104360
3162
3163         Reviewed by Noam Rosenthal.
3164
3165         The CoordinatedLayerTreeHost has too many responsibilities. It
3166         implements LayerTreeHost, GraphicsLayerClient,
3167         CoordinatedGraphicsLayerClient, CoordinatedImageBacking::Client,
3168         UpdateAtlas::Client, GraphicsLayerFactory and
3169         WebCustomFilterProgramProxyClient.
3170
3171         This refactoring reduces the responsibilities of CoordinatedLayerTreeHost.
3172
3173         This patch introduces a new class called CompositingCoordinator, which
3174         takes the responsibility of managing compositing resources in
3175         WebProcess.
3176
3177         CoordinatedLayerTreeHost is responsible only for the scheduling and
3178         IPC-specific stuff, which are relevant only for WebKit2.
3179
3180         No new tests, covered by existing tests.
3181
3182         * CMakeLists.txt:
3183         * Target.pri:
3184         * platform/graphics/texmap/coordinated/CompositingCoordinator.cpp: Added.
3185         (WebCore::CompositingCoordinator::create):
3186         (WebCore::CompositingCoordinator::~CompositingCoordinator):
3187         (WebCore::CompositingCoordinator::CompositingCoordinator):
3188         (WebCore::CompositingCoordinator::setRootCompositingLayer):
3189         (WebCore::CompositingCoordinator::sizeDidChange):
3190         (WebCore::CompositingCoordinator::flushPendingLayerChanges):
3191         (WebCore::CompositingCoordinator::syncDisplayState):
3192         (WebCore::CompositingCoordinator::nextAnimationServiceTime):
3193         (WebCore::CompositingCoordinator::clearPendingStateChanges):
3194         (WebCore::CompositingCoordinator::initializeRootCompositingLayerIfNeeded):
3195         (WebCore::CompositingCoordinator::createRootLayer):
3196         (WebCore::CompositingCoordinator::syncLayerState):
3197         (WebCore::CompositingCoordinator::createImageBackingIfNeeded):
3198         (WebCore::CompositingCoordinator::createImageBacking):
3199         (WebCore::CompositingCoordinator::updateImageBacking):
3200         (WebCore::CompositingCoordinator::clearImageBackingContents):
3201         (WebCore::CompositingCoordinator::removeImageBacking):
3202         (WebCore::CompositingCoordinator::flushPendingImageBackingChanges):
3203         (WebCore::CompositingCoordinator::notifyAnimationStarted):
3204         (WebCore::CompositingCoordinator::notifyFlushRequired):
3205         (WebCore::CompositingCoordinator::paintContents):
3206         (WebCore::CompositingCoordinator::createGraphicsLayer):
3207         (WebCore::CompositingCoordinator::deviceScaleFactor):
3208         (WebCore::CompositingCoordinator::pageScaleFactor):
3209         (WebCore::CompositingCoordinator::createUpdateAtlas):
3210         (WebCore::CompositingCoordinator::removeUpdateAtlas):
3211         (WebCore::CompositingCoordinator::visibleContentsRect):
3212         (WebCore::CompositingCoordinator::mainContentsLayer):
3213         (WebCore::CompositingCoordinator::setVisibleContentsRect):
3214         (WebCore::CompositingCoordinator::deviceOrPageScaleFactorChanged):
3215         (WebCore::CompositingCoordinator::detachLayer):
3216         (WebCore::CompositingCoordinator::commitScrollOffset):
3217         (WebCore::CompositingCoordinator::renderNextFrame):
3218         (WebCore::CompositingCoordinator::purgeBackingStores):
3219         (WebCore::CompositingCoordinator::paintToSurface):
3220         (WebCore::CompositingCoordinator::scheduleReleaseInactiveAtlases):
3221         (WebCore::CompositingCoordinator::releaseInactiveAtlasesTimerFired):
3222         * platform/graphics/texmap/coordinated/CompositingCoordinator.h: Added.
3223         (WebCore::CompositingCoordinator::clearRootLayer):
3224         (WebCore::CompositingCoordinator::rootLayer):
3225         (WebCore::CompositingCoordinator::state):
3226
3227 2013-06-26  Kihong Kwon  <kihong.kwon@samsung.com>
3228
3229         Vibration cannot be canceled during pattern vibration.
3230         https://bugs.webkit.org/show_bug.cgi?id=117822
3231
3232         Reviewed by Gyuyoung Kim.
3233
3234         Vibration can not cancel during pattern vibration is working. If resting time which are
3235         even numbers of pattern m_isVibraing will be false and cancel will thus return early.
3236         In addition, m_timerStart needs to be stopped in the cancelVibration().
3237         If cancelVibration() is called right after m_timerStart is fired, timerStartFired
3238         function can be called even if vibration is already canceled because of timing issue of timer.
3239
3240         Test: vibration/cancelVibration-during-pattern-vibrating.html
3241
3242         * Modules/vibration/Vibration.cpp:
3243         (WebCore::Vibration::vibrate):
3244         (WebCore::Vibration::cancelVibration):
3245         (WebCore::Vibration::suspendVibration):
3246         (WebCore::Vibration::resumeVibration):
3247         (WebCore::Vibration::stopVibration):
3248         (WebCore::Vibration::timerStartFired):
3249         (WebCore::Vibration::timerStopFired):
3250         * Modules/vibration/Vibration.h:
3251
3252 2013-06-26  Anders Carlsson  <andersca@apple.com>
3253
3254         Deprecate StringImpl::charactersWithNullTermination
3255         https://bugs.webkit.org/show_bug.cgi?id=118108
3256
3257         Reviewed by Beth Dakin.
3258
3259         Rename calls to charactersWithNullTermination to deprecatedCharactersWithNullTermination.
3260
3261         * html/canvas/WebGLProgram.cpp:
3262         (WebCore::WebGLProgram::cacheActiveAttribLocations):
3263         * platform/graphics/win/FontCacheWin.cpp:
3264         (WebCore::getLinkedFonts):
3265         * platform/graphics/win/FontCustomPlatformData.cpp:
3266         (WebCore::FontCustomPlatformData::fontPlatformData):
3267         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
3268         (WebCore::FontCustomPlatformData::fontPlatformData):
3269         * platform/graphics/win/IconWin.cpp:
3270         (WebCore::Icon::createIconForFiles):
3271         * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
3272         (WebCore::MediaPlayerPrivateQuickTimeVisualContext::setUpCookiesForQuickTime):
3273         * platform/graphics/wince/FontPlatformData.cpp:
3274         (WebCore::FontPlatformData::FontPlatformData):
3275         * platform/network/curl/CurlDownload.cpp:
3276         (CurlDownload::moveFileToDestination):
3277         * platform/network/win/CookieJarWin.cpp:
3278         (WebCore::setCookiesFromDOM):
3279         (WebCore::cookiesForDOM):
3280         * platform/network/win/DownloadBundleWin.cpp:
3281         (WebCore::DownloadBundle::appendResumeData):
3282         (WebCore::DownloadBundle::extractResumeData):
3283         * platform/network/win/ResourceHandleWin.cpp:
3284         (WebCore::createInternetHandle):
3285         (WebCore::ResourceHandle::start):
3286         (WebCore::ResourceHandle::fileLoadTimer):
3287         * platform/sql/SQLiteFileSystem.cpp:
3288         (WebCore::SQLiteFileSystem::openDatabase):
3289         * platform/sql/SQLiteStatement.cpp:
3290         (WebCore::SQLiteStatement::prepare):
3291         * platform/text/win/LocaleWin.cpp:
3292         (WebCore::LCIDFromLocaleInternal):
3293         * platform/text/win/TextCodecWin.cpp:
3294         (WebCore::TextCodecWin::enumerateSupportedEncodings):
3295         * platform/win/ClipboardUtilitiesWin.cpp:
3296         (WebCore::getWebLocData):
3297         (WebCore::createGlobalData):
3298         (WebCore::setFileDescriptorData):
3299         (WebCore::getURL):
3300         (WebCore::setCFData):
3301         * platform/win/ContextMenuWin.cpp:
3302         (WebCore::ContextMenu::createPlatformContextMenuFromItems):
3303         * platform/win/DragImageWin.cpp:
3304         (WebCore::createDragImageIconForCachedImageFilename):
3305         * platform/win/FileSystemWin.cpp:
3306         (WebCore::getFindData):
3307         (WebCore::deleteFile):
3308         (WebCore::deleteEmptyDirectory):
3309         (WebCore::pathByAppendingComponent):
3310         (WebCore::makeAllDirectories):
3311         (WebCore::pathGetFileName):
3312         (WebCore::openTemporaryFile):
3313         (WebCore::openFile):
3314         * platform/win/MIMETypeRegistryWin.cpp:
3315         (WebCore::mimeTypeForExtension):
3316         (WebCore::MIMETypeRegistry::getPreferredExtensionForMIMEType):
3317         * platform/win/PasteboardWin.cpp:
3318         (WebCore::createGlobalImageFileDescriptor):
3319         (WebCore::createGlobalHDropContent):
3320         * platform/win/PathWalker.cpp:
3321         (WebCore::PathWalker::PathWalker):
3322         * platform/win/SSLKeyGeneratorWin.cpp:
3323         (WebCore::WebCore::signedPublicKeyAndChallengeString):
3324         * platform/win/SharedBufferWin.cpp:
3325         (WebCore::SharedBuffer::createWithContentsOfFile):
3326         * platform/wince/FileSystemWinCE.cpp:
3327         (WebCore::getFileInfo):
3328         (WebCore::fileExists):
3329         (WebCore::deleteFile):
3330         (WebCore::deleteEmptyDirectory):
3331         (WebCore::makeAllDirectories):
3332         (WebCore::openTemporaryFile):
3333         (WebCore::openFile):
3334         * plugins/win/PluginDatabaseWin.cpp:
3335         (WebCore::PluginDatabase::getPluginPathsInDirectories):
3336         (WebCore::addMozillaPluginDirectories):
3337         (WebCore::addAdobeAcrobatPluginDirectory):
3338         (WebCore::addJavaPluginDirectory):
3339         * plugins/win/PluginPackageWin.cpp:
3340         (WebCore::getVersionInfo):
3341         (WebCore::PluginPackage::fetchInfo):
3342         (WebCore::PluginPackage::load):
3343         * plugins/win/PluginViewWin.cpp:
3344         (WebCore::PluginView::handlePostReadFile):
3345
3346 2013-06-26  Roger Fong  <roger_fong@apple.com>
3347
3348         Add an accessibility delegate interface to AppleWin port.
3349         https://bugs.webkit.org/show_bug.cgi?id=118094.
3350
3351         Reviewed by Brent Fulgham.
3352
3353         * accessibility/win/AXObjectCacheWin.cpp: We call the page client's AXStartFrameLoad and AXFinishFrameLoad methods here, which will in turn call the AccessibilityDelegate's callbacks.
3354         (WebCore::AXObjectCache::frameLoadingEventPlatformNotification):
3355         * loader/EmptyClients.h:
3356         (WebCore::EmptyChromeClient::AXStartFrameLoad):
3357         (WebCore::EmptyChromeClient::AXFinishFrameLoad):
3358         * page/ChromeClient.h:
3359
3360 2013-06-26  Jer Noble  <jer.noble@apple.com>
3361
3362         Potential use-after-free after neutering AudioBuffer's underlying ArrayBuffer.
3363         https://bugs.webkit.org/show_bug.cgi?id=118040
3364
3365         Reviewed by Filip Pizlo.
3366
3367         Test: webaudio/audiobuffer-neuter.html
3368
3369         When creating an AudioBuffer's backing ArrayBufferView objects, mark them as 'unneuterable',
3370         meaning the underlying data will be copied in a neuter scenario rather than transferred. This
3371         means the underlying assumtions of the webaudio code can continue to assume that the memory
3372         areas owned by the ArrayBufferView will be present until the AudioBuffer is itself destroyed.
3373
3374         In order to not expose the 'unneuterable' behavior to JavaScript, return a fresh Float32Array
3375         wrapper around the ArrayBuffer object, rather than our own.
3376
3377         * Modules/webaudio/AudioBuffer.cpp:
3378         (WebCore::AudioBuffer::AudioBuffer): Mark the newly created channels as not neuterable.
3379         (WebCore::AudioBuffer::getChannelData): Return a new Float32Array object rather than a pointer to our own.
3380         * Modules/webaudio/AudioBuffer.h:
3381
3382 2013-06-26  Brent Fulgham  <bfulgham@apple.com>
3383
3384         [Windows] Unreviewed build correction after r152035.
3385
3386         * page/CaptionUserPreferencesMediaAF.cpp: Don't attempt to include CoreText.h
3387           if we do not have MediaAccessibility Framework.
3388
3389 2013-06-26  Brent Fulgham  <bfulgham@apple.com>
3390
3391         [Windows] Enable CaptionUserPreferencesMediaAF on Windows.
3392         https://bugs.webkit.org/show_bug.cgi?id=118076
3393
3394         Reviewed by Eric Carlson.
3395
3396         * WebCore.vcxproj/WebCore.vcxproj: Enable building the CaptionUserPreferencesMediaAF source file.
3397         * page/CaptionUserPreferencesMediaAF.cpp: Add soft-link commands for CoreText symbols needed in
3398           the implementation for Windows.
3399         * platform/LocalizedStrings.cpp: Enable Text Track-related strings on Windows.
3400         * platform/LocalizedStrings.h: Ditto.
3401
3402 2013-06-26  Ryosuke Niwa  <rniwa@webkit.org>
3403
3404         Speed up SVG sprites by only painting the source rect in SVGImage::draw
3405         https://bugs.webkit.org/show_bug.cgi?id=118070
3406
3407         Reviewed by Tim Horton.
3408
3409         Merge https://chromium.googlesource.com/chromium/blink/+/d359ab67fdd76a877d666dca91c311505dd27bbf.
3410
3411         * svg/graphics/SVGImage.cpp:
3412         (WebCore::SVGImage::draw):
3413
3414 2013-06-26  David Kilzer  <ddkilzer@apple.com>
3415
3416         BUILD FIX (r151981): Include HTMLAudioElement.h for ENABLE(PLUGIN_PROXY_FOR_VIDEO)
3417
3418         * css/StyleResolver.cpp:
3419         - Include HTMLAudioElement.h.
3420         - Sort headers.
3421         * rendering/RenderLayerCompositor.cpp:
3422         - Include HTMLAudioElement.h.
3423
3424 2013-06-26  Yuki Sekiguchi  <yuki.sekiguchi@access-company.com>
3425
3426         getComputedStyle().width wrong after text changed
3427         https://bugs.webkit.org/show_bug.cgi?id=106611
3428
3429         Reviewed by Dean Jackson.
3430
3431         When a new RenderText is created, NodeRenderingContext::createRendererForTextIfNeeded() sets a style to the RenderText.
3432         If a font in the new style needs transcode (e.g. Meiryo), styleDidChange() calls transformText().
3433         It sets a preferredLogicalWidthsDirty flag.
3434         After that, createRendererForTextIfNeeded() inserts the RenderText to its parent renderer.
3435         However, RenderObjectChildList::insertChildNode() doesn't set a preferredLogicalWidthsDirty flag of owner
3436         because a preferredLogicalWidthsDirty flag of the RenderText is already true.
3437
3438         Inserting new child should always sets a preferredLogicalWidthsDirty flag.
3439         Therefore, this patch called setPreferredLogicalWidthsDirty() of owner.
3440
3441         Test: fast/dynamic/empty-absolute-innerhtml-transcoding-text.html
3442
3443         * rendering/RenderObjectChildList.cpp:
3444         (WebCore::RenderObjectChildList::insertChildNode):
3445
3446 2013-06-26  Brent Fulgham  <bfulgham@apple.com>
3447
3448         Prepare CaptionUserPreferencesMac for use on Windows port.
3449         https://bugs.webkit.org/show_bug.cgi?id=118069
3450
3451         Reviewed by Eric Carlson.
3452
3453         * WebCore.vcxproj/WebCore.vcxproj: Add new files.
3454         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
3455         * WebCore.xcodeproj/project.pbxproj: Update for new file name.
3456         * page/CaptionUserPreferencesMac.h: Removed.
3457         * page/CaptionUserPreferencesMac.mm: Removed.
3458         *