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