Replace ScriptState with JSC::ExecState
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-09-13  Sam Weinig  <sam@webkit.org>
2
3         Replace ScriptState with JSC::ExecState
4         https://bugs.webkit.org/show_bug.cgi?id=121336
5
6         Reviewed by Darin Adler.
7
8         * Modules/indexeddb/IDBCursor.h:
9         * Modules/indexeddb/IDBObjectStore.h:
10         * bindings/js/JSInjectedScriptHostCustom.cpp:
11         * bindings/js/JSInjectedScriptManager.cpp:
12         * bindings/js/JSNodeCustom.cpp:
13         * bindings/js/JSNodeFilterCondition.h:
14         * bindings/js/ScriptController.cpp:
15         * bindings/js/ScriptDebugServer.cpp:
16         * bindings/js/ScriptDebugServer.h:
17         * bindings/js/ScriptEventListener.cpp:
18         * bindings/js/ScriptEventListener.h:
19         * bindings/js/ScriptFunctionCall.cpp:
20         * bindings/js/ScriptFunctionCall.h:
21         * bindings/js/ScriptObject.cpp:
22         * bindings/js/ScriptObject.h:
23         * bindings/js/ScriptProfiler.cpp:
24         * bindings/js/ScriptProfiler.h:
25         * bindings/js/ScriptState.cpp:
26         * bindings/js/ScriptState.h:
27         * bindings/js/ScriptValue.cpp:
28         * bindings/js/ScriptValue.h:
29         * bindings/js/SerializedScriptValue.cpp:
30         * bindings/js/SerializedScriptValue.h:
31         * dom/Document.cpp:
32         * dom/Document.h:
33         * dom/NodeFilter.cpp:
34         * dom/NodeFilter.h:
35         * dom/NodeFilterCondition.cpp:
36         * dom/NodeFilterCondition.h:
37         * dom/NodeIterator.cpp:
38         * dom/NodeIterator.h:
39         * dom/ScriptExecutionContext.cpp:
40         * dom/ScriptExecutionContext.h:
41         * dom/Traversal.cpp:
42         * dom/Traversal.h:
43         * dom/TreeWalker.cpp:
44         * dom/TreeWalker.h:
45         * inspector/ConsoleMessage.cpp:
46         * inspector/ConsoleMessage.h:
47         * inspector/InjectedScript.h:
48         * inspector/InjectedScriptBase.cpp:
49         * inspector/InjectedScriptBase.h:
50         * inspector/InjectedScriptCanvasModule.cpp:
51         * inspector/InjectedScriptCanvasModule.h:
52         * inspector/InjectedScriptHost.cpp:
53         * inspector/InjectedScriptHost.h:
54         * inspector/InjectedScriptManager.cpp:
55         * inspector/InjectedScriptManager.h:
56         * inspector/InjectedScriptModule.cpp:
57         * inspector/InjectedScriptModule.h:
58         * inspector/InspectorAgent.cpp:
59         * inspector/InspectorCanvasAgent.cpp:
60         * inspector/InspectorCanvasAgent.h:
61         * inspector/InspectorConsoleAgent.cpp:
62         * inspector/InspectorConsoleAgent.h:
63         * inspector/InspectorConsoleInstrumentation.h:
64         * inspector/InspectorDOMAgent.cpp:
65         * inspector/InspectorDebuggerAgent.cpp:
66         * inspector/InspectorDebuggerAgent.h:
67         * inspector/InspectorFrontendClientLocal.cpp:
68         * inspector/InspectorFrontendHost.cpp:
69         * inspector/InspectorIndexedDBAgent.cpp:
70         * inspector/InspectorInstrumentation.cpp:
71         * inspector/InspectorInstrumentation.h:
72         * inspector/PageConsoleAgent.cpp:
73         * inspector/PageDebuggerAgent.cpp:
74         * inspector/PageRuntimeAgent.cpp:
75         * inspector/PageRuntimeAgent.h:
76         * inspector/ScriptArguments.cpp:
77         * inspector/ScriptArguments.h:
78         * inspector/ScriptDebugListener.h:
79         * inspector/WorkerDebuggerAgent.cpp:
80         * inspector/WorkerRuntimeAgent.cpp:
81         * page/Console.cpp:
82         * page/Console.h:
83         * page/ContentSecurityPolicy.cpp:
84         * page/ContentSecurityPolicy.h:
85         * page/PageConsole.cpp:
86         * page/PageConsole.h:
87         * workers/WorkerGlobalScope.cpp:
88         * workers/WorkerGlobalScope.h:
89
90 2013-09-13  Sam Weinig  <sam@webkit.org>
91
92         Chrome, DragController and FocusController should hold onto a Page&
93         https://bugs.webkit.org/show_bug.cgi?id=121325
94
95         Reviewed by Anders Carlsson.
96
97         * editing/FrameSelection.cpp:
98         * editing/FrameSelection.h:
99         * page/Chrome.cpp:
100         (WebCore::Chrome::Chrome):
101         (WebCore::Chrome::scroll):
102         (WebCore::Chrome::createWindow):
103         (WebCore::canRunModalIfDuringPageDismissal):
104         (WebCore::Chrome::runBeforeUnloadConfirmPanel):
105         (WebCore::Chrome::runJavaScriptAlert):
106         (WebCore::Chrome::runJavaScriptConfirm):
107         (WebCore::Chrome::runJavaScriptPrompt):
108         (WebCore::Chrome::mouseDidMoveOverElement):
109         (WebCore::Chrome::setToolTip):
110         (WebCore::Chrome::windowScreenDidChange):
111         * page/Chrome.h:
112         * page/DragController.cpp:
113         * page/DragController.h:
114         * page/mac/DragControllerMac.mm:
115         * page/FocusController.cpp:
116         * page/FocusController.h:
117         * page/Page.cpp:
118         (WebCore::Page::Page):
119         * page/PageGroupLoadDeferrer.cpp:
120         * page/PageGroupLoadDeferrer.h:
121         Take references where possible.
122
123 2013-09-13  Anders Carlsson  <andersca@apple.com>
124
125         Use nullptr instead of 0 in calls to HashMap::add
126         https://bugs.webkit.org/show_bug.cgi?id=121322
127
128         Reviewed by Sam Weinig.
129
130         * bridge/IdentifierRep.cpp:
131         (WebCore::IdentifierRep::get):
132         * css/CSSFontFaceSource.cpp:
133         (WebCore::CSSFontFaceSource::getFontData):
134         * css/CSSFontSelector.cpp:
135         (WebCore::CSSFontSelector::getFontFace):
136         * css/CSSSegmentedFontFace.cpp:
137         (WebCore::CSSSegmentedFontFace::getFontData):
138         * css/CSSValuePool.cpp:
139         (WebCore::CSSValuePool::createFontFamilyValue):
140         (WebCore::CSSValuePool::createFontFaceValue):
141         * dom/ChildListMutationScope.cpp:
142         (WebCore::ChildListMutationAccumulator::getOrCreate):
143         * dom/Document.cpp:
144         (WebCore::Document::getCSSCanvasElement):
145         * dom/NodeRareData.h:
146         (WebCore::NodeListsNodeData::addCacheWithAtomicName):
147         (WebCore::NodeListsNodeData::addCacheWithName):
148         (WebCore::NodeListsNodeData::addCacheWithQualifiedName):
149         * loader/appcache/ApplicationCacheStorage.cpp:
150         (WebCore::ApplicationCacheStorage::findOrCreateCacheGroup):
151         * page/PageGroup.cpp:
152         (WebCore::PageGroup::pageGroup):
153         * page/animation/AnimationController.cpp:
154         (WebCore::AnimationControllerPrivate::ensureCompositeAnimation):
155         * platform/mac/ScrollbarThemeMac.mm:
156         (WebCore::ScrollbarThemeMac::registerScrollbar):
157         * storage/StorageNamespaceImpl.cpp:
158         (WebCore::StorageNamespaceImpl::localStorageNamespace):
159
160 2013-09-13  Sam Weinig  <sam@webkit.org>
161
162         ContextMenuController should hold onto a Page&
163         https://bugs.webkit.org/show_bug.cgi?id=121320
164
165         Reviewed by Anders Carlsson.
166
167         * page/ContextMenuController.cpp:
168         (WebCore::ContextMenuController::ContextMenuController):
169         (WebCore::ContextMenuController::~ContextMenuController):
170         (WebCore::ContextMenuController::showContextMenu):
171         (WebCore::ContextMenuController::contextMenuItemSelected):
172         (WebCore::ContextMenuController::checkOrEnableIfNeeded):
173         (WebCore::ContextMenuController::showContextMenuAt):
174         * page/ContextMenuController.h:
175         Store the Page and ContextMenuClient as references.
176
177         * page/Page.cpp:
178         (WebCore::Page::Page):
179         Pass the Page and ContextMenuClient as references and switch to using createOwned<>().
180
181 2013-09-13  Tim Horton  <timothy_horton@apple.com>
182
183         Apply OVERRIDE and FINAL to Image subclasses and clean them up
184         https://bugs.webkit.org/show_bug.cgi?id=121086
185
186         Reviewed by Alexey Proskuryakov.
187
188         Everything other than the copious application of OVERRIDE and FINAL
189         is explicitly called out below.
190
191         * WebCore.exp.in:
192         Export the correct version of getCGImageRef for use by WebKit2.
193
194         * platform/graphics/BitmapImage.cpp:
195         * platform/graphics/BitmapImage.h:
196         Drive-by inline isBitmapImage.
197         Move create(HBITMAP) to be near the other create() functions.
198         Move all of the members private.
199         Devirtualize frameCount().
200         Move notSolidColor() near the other solid color functions.
201
202         * platform/graphics/CrossfadeGeneratedImage.cpp:
203         (WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
204         (WebCore::CrossfadeGeneratedImage::drawPattern):
205         * platform/graphics/GeneratorGeneratedImage.cpp:
206         (WebCore::GeneratorGeneratedImage::draw):
207         (WebCore::GeneratorGeneratedImage::drawPattern):
208         Use size() and setContainerSize() instead of directly accessing a
209         superclass' (now private, previously protected) members.
210
211         * platform/graphics/CrossfadeGeneratedImage.h:
212         * platform/graphics/GeneratedImage.h:
213         Make m_size private, I don't think we do protected members.
214         
215         * platform/graphics/GeneratorGeneratedImage.h:
216         Make all the members private.
217
218         * svg/graphics/SVGImage.h:
219         * svg/graphics/SVGImageForContainer.h:
220
221 2013-09-13  Alexey Proskuryakov  <ap@apple.com>
222
223         [Mac] WebCore Web Inspector files are only copied as part of clean build
224         https://bugs.webkit.org/show_bug.cgi?id=121316
225
226         Reviewed by Timothy Hatcher.
227
228         Removed insufficient dependencies to make the phase run unconditionally.
229
230         * WebCore.xcodeproj/project.pbxproj:
231
232 2013-09-13  Eric Carlson  <eric.carlson@apple.com>
233
234         CodeGeneratorJS doesn't generate header includes for sequence<type>
235         https://bugs.webkit.org/show_bug.cgi?id=121314
236
237         Reviewed by Dean Jackson.
238
239         * bindings/scripts/CodeGeneratorJS.pm:
240         (SkipIncludeHeader): Don't return false for sequence and array types.
241         (AddIncludesForType): Do add includes for sequence and array types.
242         (GenerateCallbackImplementation):
243         * bindings/scripts/test/JS/JSTestTypedefs.cpp: Regenerated
244         * bindings/scripts/test/JS/JSTestTypedefs.h: Ditto.
245         * bindings/scripts/test/TestTypedefs.idl: Add a method that takes a sequence<TestEventTarget>.
246
247 2013-09-13  Andreas Kling  <akling@apple.com>
248
249         CTTE: RenderSVGResourcePattern always has an SVGPatternElement.
250         <https://webkit.org/b/121313>
251
252         Reviewed by Anders Carlsson.
253
254         This renderer is never anonymous. Tighten things up with a patternElement()
255         reference getter. Removed some unnecessary null checks and assertions.
256
257 2013-09-13  Darin Adler  <darin@apple.com>
258
259         Remove layering-violating Pasteboard::plainText function (for all platforms now)
260         https://bugs.webkit.org/show_bug.cgi?id=121312
261
262         Reviewed by Antti Koivisto.
263
264         * editing/Editor.cpp:
265         (WebCore::Editor::pasteAsPlainTextWithPasteboard): Call readPlainTextFromPasteboard
266         on all platforms, not just Mac and EFL. Also call canSmartReplaceWithPasteboard with
267         a reference instead of a pointer.
268         (WebCore::Editor::readPlainTextFromPasteboard): Added. This is a cross-platform
269         version of what was previously a Mac-only function.
270         (WebCore::Editor::plainTextFromPasteboard): Added. This is the simple non-Mac version
271         of this function.
272         (WebCore::Editor::pasteWithPasteboard): Updated to call canSmartReplaceWithPasteboard
273         with a reference.
274         (WebCore::Editor::canSmartReplaceWithPasteboard): Updated to take a reference.
275
276         * editing/Editor.h: Make readPlainTextFromPasteboard cross-platform instead of
277         Mac-only. Also changed argument to canSmartReplaceWithPasteboard to be a reference.
278         Also added private plainTextFromPasteboard function.
279
280         * editing/mac/EditorMac.mm:
281         (WebCore::Editor::pasteWithPasteboard): Updated to call canSmartReplaceWithPasteboard
282         with a reference.
283         (WebCore::Editor::plainTextFromPasteboard): Added. Contains the Mac-specific parts
284         of the readPlainTextFromPasteboard function.
285
286         * platform/Pasteboard.h: Fixed a conditional in the PasteboardPlainText struct to
287         omit iOS. Removed the layering-voiolating plainText function.
288
289         * platform/blackberry/PasteboardBlackBerry.cpp:
290         (WebCore::Pasteboard::read): Renamed from plainText and updated to new calling
291         convention.
292         * platform/gtk/PasteboardGtk.cpp:
293         (WebCore::Pasteboard::read): Ditto.
294         * platform/ios/PasteboardIOS.mm:
295         (WebCore::Pasteboard::read): Ditto.
296         * platform/nix/PasteboardNix.cpp:
297         (WebCore::Pasteboard::read): Ditto.
298         * platform/qt/PasteboardQt.cpp:
299         (WebCore::Pasteboard::read): Ditto.
300         * platform/win/PasteboardWin.cpp:
301         (WebCore::Pasteboard::read): Ditto.
302
303 2013-09-13  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
304
305         [GTK] Move to the new web inspector
306         https://bugs.webkit.org/show_bug.cgi?id=120647
307
308         Reviewed by Carlos Garcia Campos.
309
310         No tests for the new inspector UI as of yet.
311
312         * GNUmakefile.am: no longer install the deprecated inspector UI files.
313         * WebCore.exp.in: add SchemeRegistry symbol that is now used.
314
315 2013-09-13  Darin Adler  <darin@apple.com>
316
317         Try to fix Qt build.
318
319         * platform/qt/PasteboardQt.cpp:
320         (WebCore::Pasteboard::write): Update variable name at one place I missed.
321
322 2013-09-13  Arvid Nilsson  <anilsson@rim.com>
323
324         [BlackBerry] Scrolling and zooming is slow when Flash plugin visible
325         https://bugs.webkit.org/show_bug.cgi?id=120618
326
327         Reviewed by Anders Carlsson.
328         Internally reviewed by Jacky Jiang.
329
330         JIRA 490823
331         Compositing Flash plugin content triggered a workaround for a graphics
332         driver quirk. The workaround was actually related to WebGL, not Flash,
333         back when we used glCopyTexImage to implement WebGL double buffering
334         (see PR 148933 and 150228 for more details of the old implementation).
335
336         Originally, both WebGL and plugin layers added themselves to the
337         LayerRenderer::m_layersLockingTextureResources list. Now only plugin
338         layers use this list.
339         The glCopyTexImage code was removed long ago, and WebGL now uses the
340         EGLImage-based double buffering approach implemented in
341         EGLImageLayerWebKitThread and EGLImageLayerCompositingThreadClient.
342
343         Fixed by removing the now obsolete workaround, a call to "glFinish".
344         This considerably improves the frame rate of zooming and scrolling when
345         Flash content is visible.
346
347         Improvement in frame rate not appropriate to test using layout tests,
348         could easily result in flaky test.
349
350         * platform/graphics/blackberry/LayerRenderer.cpp:
351         (WebCore::LayerRenderer::compositeLayers):
352
353 2013-09-13  Zoltan Horvath  <zoltan@webkit.org>
354
355         Move LineLayoutState class to LineLayoutState.h
356         https://bugs.webkit.org/show_bug.cgi?id=121263
357
358         Reviewed by Ryosuke Niwa.
359
360         I added bitfields, reordered the members and a functions too.
361
362         No new tests, no behavior change.
363
364         * rendering/LineLayoutState.h: Added.
365         (WebCore::LineLayoutState::LineLayoutState):
366         (WebCore::LineLayoutState::markForFullLayout):
367         (WebCore::LineLayoutState::isFullLayout):
368         (WebCore::LineLayoutState::usesRepaintBounds):
369         (WebCore::LineLayoutState::setRepaintRange):
370         (WebCore::LineLayoutState::updateRepaintRangeFromBox):
371         (WebCore::LineLayoutState::endLineMatched):
372         (WebCore::LineLayoutState::setEndLineMatched):
373         (WebCore::LineLayoutState::checkForFloatsFromLastLine):
374         (WebCore::LineLayoutState::setCheckForFloatsFromLastLine):
375         (WebCore::LineLayoutState::lineInfo):
376         (WebCore::LineLayoutState::endLineLogicalTop):
377         (WebCore::LineLayoutState::setEndLineLogicalTop):
378         (WebCore::LineLayoutState::endLine):
379         (WebCore::LineLayoutState::setEndLine):
380         (WebCore::LineLayoutState::lastFloat):
381         (WebCore::LineLayoutState::setLastFloat):
382         (WebCore::LineLayoutState::floats):
383         (WebCore::LineLayoutState::floatIndex):
384         (WebCore::LineLayoutState::setFloatIndex):
385         (WebCore::LineLayoutState::adjustedLogicalLineTop):
386         (WebCore::LineLayoutState::setAdjustedLogicalLineTop):
387         (WebCore::LineLayoutState::flowThread):
388         (WebCore::LineLayoutState::setFlowThread):
389         * rendering/RenderBlockLineLayout.cpp: Remove LineLayoutState.
390
391 2013-09-13  Darin Adler  <darin@apple.com>
392
393         Remove layering-violating Pasteboard::writeURL (for all platforms now)
394         https://bugs.webkit.org/show_bug.cgi?id=121306
395
396         Reviewed by Antti Koivisto.
397
398         * editing/Editor.cpp:
399         (WebCore::Editor::copyURL): Move the contents of the writeURLToPasteboard function
400         in here.
401
402         * editing/Editor.h: Removed Mac-specific writeURLToPasteboard, added private
403         Mac-specific fillInUserVisibleForm function for the one Mac-specific part of writing URLs.
404
405         * editing/efl/EditorEfl.cpp: Deleted Editor::writeURLToPasteboard.
406
407         * editing/mac/EditorMac.mm: Deleted Editor::writeURLToPasteboard, moving the code
408         into copyURL.
409         (WebCore::Editor::fillInUserVisibleForm): Added.
410
411         * page/DragController.cpp:
412         (WebCore::DragController::startDrag): Call copyURL instead of writeURL or
413         writeURLToPasteboard.
414
415         * platform/Pasteboard.h: Fixed up the PasteboardURL struct so it's suitable for
416         cross-platform use. Removed the writeURL function. Removed the Frame* argument from
417         the Windows-specific writeURLToDataObject function.
418
419         * platform/blackberry/PasteboardBlackBerry.cpp:
420         (WebCore::Pasteboard::write): Renamed/refactored from writeURL.
421         * platform/gtk/PasteboardGtk.cpp:
422         (WebCore::Pasteboard::write): Ditto.
423         * platform/nix/PasteboardNix.cpp:
424         (WebCore::Pasteboard::write): Ditto.
425         * platform/qt/PasteboardQt.cpp:
426         (WebCore::Pasteboard::write): Ditto.
427         * platform/win/PasteboardWin.cpp:
428         (WebCore::Pasteboard::writeURLToDataObject): Removed unused Frame* argument.
429         (WebCore::Pasteboard::write): Renamed/refactored from writeURL.
430
431 2013-09-13  Chris Fleizach  <cfleizach@apple.com>
432
433         AX: AXPress does not work in SVG
434         https://bugs.webkit.org/show_bug.cgi?id=121248
435
436         Reviewed by Mario Sanchez Prada.
437
438         Implement accessKeyAction() on SVGElements, which is what accessibility code
439         uses in order to activate Elements.
440
441         Test: accessibility/svg-element-press.html
442
443         * svg/SVGElement.cpp:
444         (WebCore::SVGElement::accessKeyAction):
445         * svg/SVGElement.h:
446
447 2013-09-13  Andreas Kling  <akling@apple.com>
448
449         [CTTE] RenderSVGTransformableContainer is never anonymous.
450         <https://webkit.org/b/121304>
451
452         Reviewed by Anders Carlsson.
453
454         This renderer is never anonymous. Tighten things up with a graphicsElement()
455         reference getter.
456
457 2013-09-13  Andreas Kling  <akling@apple.com>
458
459         [CTTE] RenderSVGImage always has a SVGImageElement.
460         <https://webkit.org/b/121301>
461
462         Reviewed by Anders Carlsson.
463
464         This renderer is never anonymous, and always has a corresponding SVGImageElement.
465
466 2013-09-13  Andreas Kling  <akling@apple.com>
467
468         [CTTE] Tighter element types for RenderSVGShape and subclasses.
469         <https://webkit.org/b/121302>
470
471         Reviewed by Antti Koivisto.
472
473         Codify the following:
474
475         - RenderSVGPath always has an SVGGraphicsElement.
476         - RenderSVGEllipse always has an SVGGraphicsElement.
477         - RenderSVGRect always has an SVGRectElement.
478         - RenderSVGShape always has an SVGGraphicsElement.
479
480         None of these renderers are ever anonymous, so delete element() and provide
481         strongly typed reference getters instead.
482
483 2013-09-13  Andreas Kling  <akling@apple.com>
484
485         [CTTE] RenderSVGResourceFilterPrimitive always has an SVGFilterPrimitiveStandardAttributes.
486         <https://webkit.org/b/121300>
487
488         Reviewed by Anders Carlsson.
489
490         This renderer is never anonymous, and always has a corresponding SVGFilterPrimitiveStandardAttributes element. 
491
492 2013-09-12  Darin Adler  <darin@apple.com>
493
494         Finish removing layer-violating code from Pasteboard (just for Mac during this first step)
495         https://bugs.webkit.org/show_bug.cgi?id=121279
496
497         Reviewed by Anders Carlsson.
498
499         * editing/Editor.h: Added webContentFromPasteboard member function, private nested class
500         WebContentReader, private createFragmentForImageResourceAndAddResource and
501         createFragmentAndAddResources member functions.
502
503         * editing/mac/EditorMac.mm: Re-sorted includes and added some.
504         (WebCore::Editor::pasteWithPasteboard): Call the new webContentFromPasteboard function.
505         (WebCore::Editor::insertParagraphSeparatorInQuotedContent): Comment tweak.
506         (WebCore::styleForSelectionStart): Removed an unneeded call to String::impl.
507         (WebCore::Editor::readPlainTextFromPasteboard): Updated to use an isURL boolean instead
508         of a separate string named "url".
509         (WebCore::Editor::WebContentReader::readWebArchive): Added. Contains reworked code that
510         was originally in Pasteboard::documentFragment.
511         (WebCore::Editor::WebContentReader::readFilenames): Ditto.
512         (WebCore::Editor::WebContentReader::readHTML): Ditto.
513         (WebCore::Editor::WebContentReader::readRTFD): Ditto.
514         (WebCore::Editor::WebContentReader::readRTF): Ditto.
515         (WebCore::Editor::WebContentReader::readImage): Ditto.
516         (WebCore::Editor::WebContentReader::readURL): Ditto.
517         (WebCore::Editor::WebContentReader::readPlainText): Ditto.
518         (WebCore::Editor::webContentFromPasteboard): Added. Uses WebContentReader to read the
519         content from the pasteboard.
520         (WebCore::Editor::createFragmentForImageResourceAndAddResource): Added. Helper used
521         by code above.
522         (WebCore::Editor::createFragmentAndAddResources): Ditto.
523
524         * platform/Pasteboard.h: Added new PasteboardWebContentReader abstract class so
525         client can get the various types of pasteboard content and stop on the kind it
526         can handle. Improved comments and formatting a bit. Removed documentFragment
527         when compiling for PLATFORM(MAC).
528
529         * platform/mac/DragDataMac.mm:
530         (WebCore::DragData::asFragment): Changed to use Editor::webContentFromPasteboard.
531
532         * platform/mac/PasteboardMac.mm:
533         (WebCore::Pasteboard::read): Updated the plain text overload of this for changes
534         to the struct that holds the result. Added a new web content overload of this,
535         which retains the pasteboard-reading part of Pasteboard::documentFragment, but
536         omits the document fragment construction part.
537
538 2013-09-13  Andreas Kling  <akling@apple.com>
539
540         [CTTE] RenderSVGText always has a SVGTextElement.
541         <https://webkit.org/b/121299>
542
543         Reviewed by Antti Koivisto.
544
545         This renderer is never anonymous, and always has a corresponding <svg> element.
546         Tighten this up and remove some pointless assertions.
547
548 2013-09-13  Allan Sandfeld Jensen  <allan.jensen@digia.com>
549
550         Remove support for QXmlStream as the XML parser.
551         https://bugs.webkit.org/show_bug.cgi?id=121229
552
553         Reviewed by Andreas Kling.
554
555         Remove the implementation and all the #ifdef related to it.
556
557         * Target.pri:
558         * WebCore.pri:
559         * dom/TransformSource.h:
560         * xml/XMLErrors.h:
561         * xml/XSLStyleSheet.h:
562         * xml/XSLTProcessor.h:
563         * xml/parser/XMLDocumentParser.cpp:
564         (WebCore::XMLDocumentParser::enterText):
565         (WebCore::toString):
566         (WebCore::XMLDocumentParser::exitText):
567         (WebCore::XMLDocumentParser::insertErrorMessageBlock):
568         * xml/parser/XMLDocumentParser.h:
569         * xml/parser/XMLDocumentParserQt.cpp: Removed.
570
571 2013-09-13  Andreas Kling  <akling@apple.com>
572
573         [CTTE] RenderSVGViewportContainer always has a SVGSVGElement.
574         <https://webkit.org/b/121297>
575
576         Reviewed by Antti Koivisto.
577
578         This renderer is never anonymous, and always has a corresponding <svg> element.
579         Tighten this up and remove some pointless null checks and type checks.
580
581 2013-09-13  Andreas Kling  <akling@apple.com>
582
583         [CTTE] RenderSVGRoot always has a SVGSVGElement.
584         <https://webkit.org/b/121293>
585
586         Reviewed by Antti Koivisto.
587
588         This renderer is never anonymous, and always has a corresponding <svg> element.
589         Tighten this up and remove some pointless null checks and assertions.
590
591 2013-09-13  Andreas Kling  <akling@apple.com>
592
593         Remove support for anonymous deprecated flexboxes.
594         <https://webkit.org/b/121288>
595
596         Reviewed by Antti Koivisto.
597
598         There are no remaining internal clients of RenderDeprecatedFlexibleBox,
599         Nuke a FIXME from r143643 where the move to basing renderers on new flexbox started.
600
601         This was the only user of anonymous deprecated flexbox, so removed the ability to
602         construct those.
603
604         Also removed some Chrome-related feature observation gunk from constructor.
605
606 2013-09-13  Andreas Kling  <akling@apple.com>
607
608         [CTTE] RenderMultiColumnBlock is never anonymous.
609         <https://webkit.org/b/121292>
610
611         Reviewed by Antti Koivisto.
612
613         Hide element() and provide existingElement() instead, returning an Element&.
614
615 2013-09-13  Andreas Kling  <akling@apple.com>
616
617         [CTTE] RenderGrid is never anonymous.
618         <https://webkit.org/b/121290>
619
620         Reviewed by Antti Koivisto.
621
622         Hide element() and provide existingElement() instead, returning an Element&.
623
624 2013-09-13  Andreas Kling  <akling@apple.com>
625
626         [CTTE] RenderTableCaption is never anonymous.
627         <https://webkit.org/b/121289>
628
629         Reviewed by Antti Koivisto.
630
631         Hide element() and provide existingElement() instead, returning an Element&.
632
633 2013-09-13  Andreas Kling  <akling@apple.com>
634
635         [CTTE] RenderTableCol is never anonymous.
636         <https://webkit.org/b/121286>
637
638         Reviewed by Antti Koivisto.
639
640         Hide element() and provide existingElement() instead, returning an Element&.
641         Removed one bogus null check that was exposed.
642
643 2013-09-13  Andreas Kling  <akling@apple.com>
644
645         [CTTE] RenderListItem is never anonymous.
646         <https://webkit.org/b/121285>
647
648         Reviewed by Antti Koivisto.
649
650         Hide element() and provide existingElement() instead, returning an Element&.
651         Removed some bogus assertions that were exposed by this.
652
653 2013-09-13  Andreas Kling  <akling@apple.com>
654
655         [CTTE] Tighter element types for RenderSVGInline and subclasses.
656         <https://webkit.org/b/121283>
657
658         Reviewed by Antti Koivisto.
659
660         Codify the following:
661
662         - RenderSVGInline always has an SVGGraphicsElement.
663         - RenderSVGTextPath always has an SVGTextPathElement.
664         - RenderSVGTSpan always has an SVGTextPositioningElement.
665
666         None of these renderers are ever anonymous, so delete element() and provide
667         strongly typed reference getters instead.
668
669 2013-09-13  Andreas Kling  <akling@apple.com>
670
671         [CTTE] RenderFileUploadControl always has a HTMLInputElement.
672         <https://webkit.org/b/121278>
673
674         Reviewed by Darin Adler.
675
676         RenderFileUploadControl is never anonymous and always has a corresponding HTMLInputElement.
677
678 2013-09-13  Andreas Kling  <akling@apple.com>
679
680         [CTTE] RenderFieldset always has a HTMLFieldSetElement.
681         <https://webkit.org/b/121277>
682
683         Reviewed by Darin Adler.
684
685         RenderFieldset is never anonymous and always has a corresponding HTMLFieldSetElement.
686
687 2013-09-13  Andreas Kling  <akling@apple.com>
688
689         [CTTE] RenderButton always has a HTMLFormControlElement.
690         <https://webkit.org/b/121281>
691
692         Reviewed by Antti Koivisto.
693
694         RenderButton is never anonymous and has either a <button> or an <input> element,
695         and their nearest shared ancestor is HTMLFormControlElement.
696
697 2013-09-13  Darin Adler  <darin@apple.com>
698
699         Give actions in Range class NON_SHOUTING_NAMES
700         https://bugs.webkit.org/show_bug.cgi?id=121280
701
702         Reviewed by Andreas Kling.
703
704         * dom/Range.cpp:
705         (WebCore::Range::deleteContents):
706         (WebCore::Range::processContents):
707         (WebCore::Range::processContentsBetweenOffsets):
708         (WebCore::Range::processNodes):
709         (WebCore::Range::processAncestorsAndTheirSiblings):
710         (WebCore::Range::extractContents):
711         (WebCore::Range::cloneContents):
712         * dom/Range.h:
713         Just let do-webcore-rename do its thing.
714         - DELETE_CONTENTS -> Delete
715         - EXTRACT_CONTENTS -> Extract
716         - CLONE_CONTENTS -> Clone
717
718 2013-09-12  Santosh Mahto  <santosh.ma@samsung.com>
719
720         [EFL]Background Style of element not visible because of  default theme style
721         https://bugs.webkit.org/show_bug.cgi?id=117405
722
723         Reviewed by Gyuyoung Kim.
724
725         When select element is styled with css background property(color/image) the styling
726         gets hidden by Combo box non transparent image. This patch handle the
727         case and transparent images are used when select image is styled. So
728         now background-color and background-image are visible across the Combo box
729         
730         The code is added to support css styling of other theme control,
731         Basically an extra signal is emitted to edje which change the state 
732         of edje object whenever the control is styled.
733
734         Covered by existing test case, updated the test expected image.
735
736         * platform/efl/DefaultTheme/CMakeLists.txt:
737         * platform/efl/DefaultTheme/widget/combo/combo.edc:
738         * platform/efl/DefaultTheme/widget/combo/combo_focus_button_transparent.png: Added.
739         * platform/efl/DefaultTheme/widget/combo/combo_focus_transparent.png: Added.
740         * platform/efl/DefaultTheme/widget/combo/combo_hover_button_transparent.png: Added.
741         * platform/efl/DefaultTheme/widget/combo/combo_hover_transparent.png: Added.
742         * platform/efl/DefaultTheme/widget/combo/combo_normal_button_transparent.png: Added.
743         * platform/efl/DefaultTheme/widget/combo/combo_normal_transparent.png: Added.
744         * platform/efl/DefaultTheme/widget/combo/combo_press_button_transparent.png: Added.
745         * platform/efl/DefaultTheme/widget/combo/combo_press_transparent.png: Added.
746         * platform/efl/RenderThemeEfl.cpp:
747         (WebCore::RenderThemeEfl::applyEdjeStateFromForm):
748         (WebCore::RenderThemeEfl::isControlStyled):
749         (WebCore::RenderThemeEfl::paintThemePart):
750         * platform/efl/RenderThemeEfl.h:
751
752 2013-09-12  Andreas Kling  <akling@apple.com>
753
754         [CTTE] RenderMenuList always has a HTMLSelectElement.
755         <https://webkit.org/b/121276>
756
757         Reviewed by Anders Carlsson.
758
759         This renderer is never anonymous and always has a corresponding HTMLSelectElement.
760         Deleted element() in favor of HTMLSelectElement& selectElement().
761
762 2013-09-12  Andreas Kling  <akling@apple.com>
763
764         [CTTE] Tighten RenderTextControl element typing.
765         <https://webkit.org/b/121275>
766
767         Reviewed by Anders Carlsson.
768
769         Codify these invariants:
770
771         - RenderTextControl always has a HTMLTextFormControl.
772         - RenderSearchField always has a HTMLInputElement.
773         - RenderTextControlSingleLine always has a HTMLInputElement.
774
775         None of these renderers are ever anonymous. Deleted element() and added
776         strongly typed reference getters instead.
777
778 2013-09-12  Andreas Kling  <akling@apple.com>
779
780         [CTTE] RenderListMarker is always anonymous and owned by RenderListItem.
781         <https://webkit.org/b/121274>
782
783         Reviewed by Anders Carlsson.
784
785         Store a RenderListItem& instead of a pointer in RenderListMarker.
786         Deleted the element() function since list markers are always anonymous.
787
788 2013-09-12  Andreas Kling  <akling@apple.com>
789
790         [CTTE] RenderListBox's element is always a HTMLSelectElement.
791         <https://webkit.org/b/121273>
792
793         Reviewed by Anders Carlsson.
794
795         Hide element() on RenderListBox and make selectElement() return a reference
796         since this renderer cannot be anonymous.
797
798 2013-09-12  Andreas Kling  <akling@apple.com>
799
800         [CTTE] RenderHTMLCanvas's element is always a HTMLCanvasElement.
801         <https://webkit.org/b/121272>
802
803         Reviewed by Anders Carlsson.
804
805         Add RenderHTMLCanvas::canvasElement(), hiding element().
806         This function also returns a reference since this renderer cannot be anonymous.
807
808 2013-09-12  Andreas Kling  <akling@apple.com>
809
810         [CTTE] RenderTextControlMultiLine's element is always a HTMLTextAreaElement.
811         <https://webkit.org/b/121271>
812
813         Reviewed by Anders Carlsson.
814
815         Add RenderTextControlMultiLine::textAreaElement(), hiding element().
816         This function also returns a reference since this renderer cannot be anonymous.
817
818 2013-09-12  Tim Horton  <timothy_horton@apple.com>
819
820         [mac] Cache rendered image in PDFDocumentImage
821         https://bugs.webkit.org/show_bug.cgi?id=121207
822
823         Reviewed by Simon Fraser.
824
825         Tests: fast/images/pdf-as-image-too-big.html
826
827         * loader/cache/CachedImage.cpp:
828         (WebCore::CachedImage::createImage):
829         PDFDocumentImage takes a ImageObserver now so that it can report
830         decoded data size changes to the memory cache.
831
832         * platform/graphics/Image.h:
833         (WebCore::Image::isPDFDocumentImage): Added.
834
835         * platform/graphics/cg/PDFDocumentImage.cpp:
836         (WebCore::PDFDocumentImage::PDFDocumentImage):
837         PDFDocumentImage takes a ImageObserver now so that it can report
838         decoded data size changes to the memory cache.
839
840         (WebCore::PDFDocumentImage::applyRotationForPainting):
841         Fix up some comments, and use GraphicsContext instead of CG API.
842
843         (WebCore::PDFDocumentImage::cacheParametersMatch):
844         Determine whether our cached image is still valid, given the new
845         destination's size, CTM scale, and source rect.
846
847         (WebCore::transformContextForPainting): Added.
848
849         (WebCore::PDFDocumentImage::updateCachedImageIfNeeded):
850         Cache a rendered bitmap of the PDF. Invalidate the cache if cacheParametersMatch
851         decides that the parameters don't match, unless we're painting in low quality mode,
852         in which case we'll scale the existing image (and then fully repaint when the
853         high-quality repaint timer fires).
854         Inform the memory cache of our new size.
855
856         (WebCore::PDFDocumentImage::draw):
857         Update the cached image if needed.
858         Paint the cached image into the context if it's available (which it might not be,
859         if the image is way too big and the allocation fails). Otherwise, paint straight
860         into the context as we previously did.
861
862         (WebCore::PDFDocumentImage::destroyDecodedData):
863         Throw away the cached image if requested.
864
865         (WebCore::PDFDocumentImage::decodedSize):
866         (WebCore::PDFDocumentImage::drawPDFPage):
867         Drive-by use GraphicsContext instead of CG directly.
868
869         * platform/graphics/cg/PDFDocumentImage.h:
870         (WebCore::PDFDocumentImage::create):
871         Override isPDFDocumentImage().
872         Add storage for the cached image buffer and various cache parameters.
873
874         * rendering/ImageQualityController.cpp:
875         (WebCore::ImageQualityController::shouldPaintAtLowQuality):
876         PDFDocumentImage is also interested in/capable of low-quality painting now.
877
878 2013-09-12  Tim Horton  <timothy_horton@apple.com>
879
880         Image doesn't always repaint at high quality in all tiles after a live resize
881         https://bugs.webkit.org/show_bug.cgi?id=121244
882
883         Reviewed by Darin Adler.
884
885         Currently, ImageQualityController removes an image from its low-quality-images
886         list from inside shouldPaintAtLowQuality, if this is the first paint outside
887         of a live resize, but does not force the renderer to repaint in its entirety.
888
889         However, there's no guarantee we've invalidated the whole renderer, so this can
890         leave some parts of the image painted in low-quality.
891
892         This just removes a short-circuit, instead using the ordinary high-quality-repaint
893         timer to ensure that the entire renderer is repainted.
894
895         No new test; all attempts have failed, as this depends on tiled drawing
896         and a live resize occurring.
897
898         * rendering/ImageQualityController.cpp:
899         (WebCore::ImageQualityController::shouldPaintAtLowQuality):
900
901 2013-09-12  Brent Fulgham  <bfulgham@apple.com>
902
903         [EFL] Speculative build fix after r155638.
904
905         * platform/efl/PasteboardEfl.cpp: Add include for PassRefPtr, which
906         is no longer implicitly included.
907
908 2013-09-12  Simon Fraser  <simon.fraser@apple.com>
909
910         Avoid extra scrollbar-related layouts for overlay scrollbars
911         https://bugs.webkit.org/show_bug.cgi?id=121267
912
913         Reviewed by Beth Dakin.
914
915         If ScrollView::updateScrollbars() detected that scrollbars were added
916         and removed, it would call contentsResized(), which calls setNeedsLayout(),
917         followed by visibleContentsResized() which would trigger layout. There is no
918         point doing this with overlay scrollbars, so avoid it by having 
919         setHas*Scrollbar() return true if the addition/removal of a scrollbar changed
920         the available width.
921         
922         No tests: we can't test overlay scrollbars in tests.
923
924         * page/FrameView.cpp:
925         (WebCore::FrameView::setContentsSize): Drive-by assertion that
926         checks that the unsigned m_deferSetNeedsLayouts doesn't wrap when
927         decremented.
928         * platform/ScrollView.cpp:
929         (WebCore::ScrollView::setHasHorizontalScrollbar): Return true if the addition/removal
930         changed available space.
931         (WebCore::ScrollView::setHasVerticalScrollbar): Ditto.
932         (WebCore::ScrollView::updateScrollbars): Only set sendContentResizedNotification
933         if available space was changed by addition/removal of scrollbars.
934         * platform/ScrollView.h:
935
936 2013-09-12  Zoltan Horvath  <zoltan@webkit.org>
937
938         [CSS Shapes] Rename shapeContainingBlockHeight to shapeContainingBlockLogicalHeight
939         https://bugs.webkit.org/show_bug.cgi?id=121252
940
941         Reviewed by Oliver Hunt.
942
943         No new tests, no behavior change.
944
945         * rendering/RenderBlockLineLayout.cpp:
946         (WebCore::pushShapeContentOverflowBelowTheContentBox):
947         * rendering/shapes/ShapeInfo.h:
948         (WebCore::ShapeInfo::shapeContainingBlockLogicalHeight):
949
950 2013-09-12  Samuel White  <samuel_white@apple.com>
951
952         <meter> element AXValue is listed as a writable value
953         https://bugs.webkit.org/show_bug.cgi?id=117650
954
955         Reviewed by Chris Fleizach.
956
957         No new tests, updated existing accessibility/meter-element.html test
958         to check writability. Changed meter element value to be unwritable.
959
960         * accessibility/AccessibilityRenderObject.cpp:
961         (WebCore::AccessibilityRenderObject::canSetValueAttribute):
962
963 2013-09-12  Renata Hodovan  <reni@webkit.org>
964
965         [Qt] SHOULD NEVER BE REACHED is touched WebCore::InputType::createStepRange
966         https://bugs.webkit.org/show_bug.cgi?id=121148
967
968         Reviewed by Kent Tamura.
969
970         Non-steppable input types must not rendered as slider even if its webkit-apperance style
971         property is set to slider-vertical/horizontal.
972
973         Test: platform/qt/fast/forms/range/slider-crash-on-input.html
974
975         * platform/qt/RenderThemeQStyle.cpp:
976         (WebCore::RenderThemeQStyle::paintSliderTrack):
977
978 2013-09-12  Ryosuke Niwa  <rniwa@webkit.org>
979
980         Qt and Windows build fix.
981
982         * page/animation/CSSPropertyAnimation.cpp:
983
984 2013-09-11  Ryosuke Niwa  <rniwa@webkit.org>
985
986         Encapsulate globals in CSSPropertyAnimation.cpp
987         https://bugs.webkit.org/show_bug.cgi?id=121205
988
989         Reviewed by Antti Koivisto.
990
991         Encapsulated the globals inside a newly added CSSPropertyAnimationWrapperMap. Also removed the circular
992         dependency from ShorthandPropertyWrapper's constructor to CSSPropertyAnimationWrapperMap::instance().
993         The circular dependency still exists in ensurePropertyMap but I'm going to remove it in the bug 121199.
994
995         * page/animation/CSSPropertyAnimation.cpp:
996         (WebCore::ShorthandPropertyWrapper::ShorthandPropertyWrapper): Takes a Vector of longhand wrappers instead of
997         calling wrapperForProperty in the middle of constructing the very table. This circular dependency is now
998         encapsulated in CSSPropertyAnimationWrapperMap::ensurePropertyMap.
999         (WebCore::CSSPropertyAnimationWrapperMap::instance): Added.
1000         (WebCore::CSSPropertyAnimationWrapperMap::wrapperForProperty): Renamed from WebCore::wrapperForProperty.
1001         (WebCore::CSSPropertyAnimationWrapperMap::wrapperForIndex): Added.
1002         (WebCore::CSSPropertyAnimationWrapperMap::size): Added.
1003         (WebCore::CSSPropertyAnimationWrapperMap::addPropertyWrapper): Renamed from WebCore::addPropertyWrapper. Also
1004         cleaned up boolean logics to use early exits instead of nested ifs.
1005         (WebCore::CSSPropertyAnimationWrapperMap::addShorthandProperties): Renamed from WebCore::addShorthandProperties.
1006         (WebCore::CSSPropertyAnimationWrapperMap::ensurePropertyMap): Renamed from WebCore::ensurePropertyMap.
1007         Added an alias gPropertyWrappers for m_propertyWrappers; this aliasing will be removed in the bug 121199.
1008         (WebCore::CSSPropertyAnimation::blendProperties):
1009         (WebCore::CSSPropertyAnimation::animationOfPropertyIsAccelerated):
1010         (WebCore::CSSPropertyAnimation::animatableShorthandsAffectingProperty):
1011         (WebCore::CSSPropertyAnimation::propertiesEqual):
1012         (WebCore::CSSPropertyAnimation::getPropertyAtIndex):
1013         (WebCore::CSSPropertyAnimation::getNumProperties):
1014         * page/animation/CSSPropertyAnimation.h:
1015         * rendering/style/RenderStyle.h:
1016
1017 2013-09-12  Anders Carlsson  <andersca@apple.com>
1018
1019         SharedBuffer::createNSData should return a RetainPtr<NSData>
1020         https://bugs.webkit.org/show_bug.cgi?id=121237
1021
1022         Reviewed by Darin Adler.
1023
1024         This makes memory management cleared and fixes a leak in PDFDocumentImage::createPDFDocument.
1025         We use a RetainPtr subclass as a stopgap measure to prevent code that does [buffer->createNSData() autorelease]
1026         from compiling and crashing due to the NSData object being overreleased.
1027
1028         * loader/ResourceBuffer.h:
1029         * loader/mac/ResourceBuffer.mm:
1030         (WebCore::ResourceBuffer::createNSData):
1031         * platform/SharedBuffer.h:
1032         (WebCore::SharedBuffer::NSDataRetainPtr::NSDataRetainPtr):
1033         * platform/graphics/mac/PDFDocumentImageMac.mm:
1034         (WebCore::PDFDocumentImage::createPDFDocument):
1035         * platform/mac/HTMLConverter.mm:
1036         (-[WebHTMLConverter _addAttachmentForElement:URL:needsParagraph:usePlaceholder:]):
1037         (fileWrapperForURL):
1038         * platform/mac/PasteboardMac.mm:
1039         (WebCore::fileWrapper):
1040         (WebCore::Pasteboard::read):
1041         (WebCore::documentFragmentWithRTF):
1042         (WebCore::fragmentFromWebArchive):
1043         * platform/mac/PlatformPasteboardMac.mm:
1044         (WebCore::PlatformPasteboard::setBufferForType):
1045         * platform/mac/SharedBufferMac.mm:
1046         (WebCore::SharedBuffer::createNSData):
1047
1048 2013-09-12  Timothy Hatcher  <timothy@apple.com>
1049
1050         Remove more Timeline stuff we don't use
1051         https://bugs.webkit.org/show_bug.cgi?id=121246
1052
1053         Reviewed by Joseph Pecoraro.
1054
1055         * inspector/InspectorController.cpp:
1056         * inspector/InspectorController.h:
1057         * inspector/InspectorDOMDebuggerAgent.cpp:
1058         * inspector/InspectorDOMDebuggerAgent.h:
1059         * inspector/InspectorProfilerAgent.cpp:
1060         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1061         * inspector/InspectorProfilerAgent.h:
1062         * inspector/InspectorTimelineAgent.cpp:
1063         (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
1064         * inspector/InspectorTimelineAgent.h:
1065
1066 2013-09-12  Christophe Dumez  <ch.dumez@sisa.samsung.com>
1067
1068         [EFL] Get rid of layering violations in PasteboardEfl.cpp
1069         https://bugs.webkit.org/show_bug.cgi?id=121241
1070
1071         Reviewed by Darin Adler.
1072
1073         Get rid of layering violations in PasteboardEfl.cpp. For now, just mimic
1074         the Mac port to avoid divergences and leave port-specific functions
1075         unimplemented as the EFL port does not support the pasteboard functionality
1076         yet.
1077
1078         No new tests, no behavior change.
1079
1080         * PlatformEfl.cmake:
1081         * editing/Editor.cpp:
1082         (WebCore::Editor::pasteAsPlainTextWithPasteboard):
1083         (WebCore::Editor::cut):
1084         (WebCore::Editor::copy):
1085         (WebCore::Editor::copyURL):
1086         (WebCore::Editor::copyImage):
1087         * editing/Editor.h:
1088         * editing/efl/EditorEfl.cpp: Added.
1089         (WebCore::Editor::writeSelectionToPasteboard):
1090         (WebCore::Editor::writeURLToPasteboard):
1091         (WebCore::Editor::writeImageToPasteboard):
1092         (WebCore::Editor::readPlainTextFromPasteboard):
1093         (WebCore::Editor::pasteWithPasteboard):
1094         * page/DragController.cpp:
1095         (WebCore::DragController::startDrag):
1096         * platform/Pasteboard.h:
1097         * platform/efl/PasteboardEfl.cpp:
1098
1099 2013-09-12  Alberto Garcia  <berto@igalia.com>
1100
1101         [GTK] Unreviewed build fix after r155635.
1102
1103         Include DragData.h
1104
1105         * platform/gtk/PasteboardGtk.cpp:
1106
1107 2013-09-12  Brent Fulgham  <bfulgham@apple.com>
1108
1109         [Windows] Build fix after r155635.
1110
1111         Rubber Stamped by Darin Adler.
1112
1113         * platform/Pasteboard.h: Add missing compile guards for Windows port.
1114
1115 2013-09-12  Darin Adler  <darin@apple.com>
1116
1117         Reorganize Pasteboard.h to make it easier to read, and express plan for future work
1118         https://bugs.webkit.org/show_bug.cgi?id=121234
1119
1120         Reviewed by Anders Carlsson.
1121
1122         * platform/Pasteboard.h: Move Mac/iOS-specific pasteboard names to the bottom of the
1123         file rather than putting them up with forward declarations before the class. Removed
1124         unneeded forward class declarations. Changed #if statements about migration to the
1125         more modern non-layering-violation API to list platforms not yet migrated, rather than
1126         listing platforms that have migrated (Mac). Move conditional code down below the
1127         uncondiditional code so it's easier to see what the class is doing. Move layering-
1128         violation code down to the bottom too, so it's easier to see the future class without
1129         having the design mistakes mixed in. Sort platform-specific sections in alphabetical
1130         order instead of random order. Did the destructor in a cleaner way so the #if is out
1131         of the way after the class rather than in the class. Removed WebSmartPastePboardType,
1132         WebURLPboardType, and WebURLsWithTitlesPboard declarations, since they are only used
1133         inside the PasteboardMac.mm source file.
1134
1135         * platform/ios/PasteboardIOS.mm: Aded a FIXME comment.
1136         * platform/mac/PasteboardMac.mm: Made the constants for pasteboard types be actual
1137         constants, rather than global variables.
1138
1139 2013-09-12  Tamas Czene  <tczene@inf.u-szeged.hu>
1140
1141         [curl] Use utf8 for headers in CurlDownload.
1142         https://bugs.webkit.org/show_bug.cgi?id=120413
1143
1144         Reviewed by Brent Fulgham.
1145
1146         * platform/network/curl/CurlDownload.cpp:
1147         (WebCore::CurlDownload::headerCallback):
1148
1149 2013-09-12  Peter Gal  <galpeter@inf.u-szeged.hu>
1150
1151         [curl] Improve multipart response handling
1152         https://bugs.webkit.org/show_bug.cgi?id=117735
1153
1154         Reviewed by Brent Fulgham.
1155
1156         The multipart/x-mixed-replace mime type in responses are ignored
1157         with the curl network backend. To handle such responses the
1158         MultipartHandle is introduced which will split the content using
1159         the boundary specified by the mime type.
1160
1161         There are already existing tests (http/tests/multipart).
1162
1163         * WebCore.vcxproj/WebCore.vcxproj:
1164         * WebCore.vcxproj/WebCore.vcxproj.filters:
1165         * platform/network/HTTPParsers.cpp:
1166         (WebCore::parseHTTPHeader):
1167         * platform/network/HTTPParsers.h:
1168         * platform/network/ResourceHandleInternal.h:
1169         * platform/network/curl/MultipartHandle.cpp: Added.
1170         (WebCore::MultipartHandle::extractBoundary):
1171         (WebCore::MultipartHandle::matchForBoundary):
1172         (WebCore::MultipartHandle::checkForBoundary):
1173         (WebCore::MultipartHandle::parseHeadersIfPossible):
1174         (WebCore::MultipartHandle::contentReceived):
1175         (WebCore::MultipartHandle::processContent):
1176         (WebCore::MultipartHandle::contentEnded):
1177         (WebCore::MultipartHandle::didReceiveData):
1178         (WebCore::MultipartHandle::didReceiveResponse):
1179         * platform/network/curl/MultipartHandle.h: Added.
1180         (WebCore::MultipartHandle::MultipartHandle):
1181         (WebCore::MultipartHandle::~MultipartHandle):
1182         * platform/network/curl/ResourceHandleManager.cpp:
1183         (WebCore::writeCallback):
1184         (WebCore::headerCallback):
1185         (WebCore::ResourceHandleManager::downloadTimerCallback):
1186
1187 2013-09-12  Andreas Kling  <akling@apple.com>
1188
1189         Remove RenderApplet.
1190         <https://webkit.org/b/121231>
1191
1192         Reviewed by Darin Adler.
1193
1194         Add a RenderEmbeddedObject::createForApplet(HTMLAppletElement&) and nuke
1195         the RenderApplet class from orbit.
1196
1197 2013-09-12  Brent Fulgham  <bfulgham@apple.com>
1198
1199         [Windows] Build fix after r155621
1200
1201         Rubber-stamped by Anders Carlsson.
1202
1203         See also https://bugs.webkit.org/show_bug.cgi?id=121235 for
1204         why this was necessary.
1205
1206         * css/MediaQueryEvaluator.cpp: Work around VS compiler bug.
1207         * dom/make_names.pl: Ditto.
1208         * loader/archive/ArchiveFactory.cpp: Ditto.
1209         * rendering/svg/SVGPathData.cpp: Ditto.
1210
1211 2013-09-12  Anders Carlsson  <andersca@apple.com>
1212
1213         SharedBuffer::createCFData should return RetainPtr<CFDataRef>
1214         https://bugs.webkit.org/show_bug.cgi?id=121230
1215
1216         Reviewed by Darin Adler.
1217
1218         * loader/ResourceBuffer.cpp:
1219         (WebCore::ResourceBuffer::createCFData):
1220         * loader/ResourceBuffer.h:
1221         * loader/archive/cf/LegacyWebArchive.cpp:
1222         (WebCore::LegacyWebArchive::createPropertyListRepresentation):
1223         (WebCore::LegacyWebArchive::create):
1224         * platform/SharedBuffer.h:
1225         * platform/cf/SharedBufferCF.cpp:
1226         (WebCore::SharedBuffer::createCFData):
1227         * platform/graphics/cg/ImageSourceCG.cpp:
1228         (WebCore::ImageSource::setData):
1229         * platform/graphics/cg/PDFDocumentImage.cpp:
1230         (WebCore::PDFDocumentImage::createPDFDocument):
1231         * platform/graphics/mac/FontCustomPlatformData.cpp:
1232         (WebCore::createFontCustomPlatformData):
1233         * platform/mac/SharedBufferMac.mm:
1234         (WebCore::SharedBuffer::createCFData):
1235
1236 2013-09-12  Zoltan Horvath  <zoltan@webkit.org>
1237
1238         Move LineInfo class into LineInfo.h
1239         https://bugs.webkit.org/show_bug.cgi?id=121191
1240
1241         Reviewed by David Hyatt.
1242
1243         No new tests, no behavior change.
1244
1245         * GNUmakefile.list.am:
1246         * Target.pri:
1247         * WebCore.vcxproj/WebCore.vcxproj:
1248         * WebCore.xcodeproj/project.pbxproj:
1249         * rendering/LineInfo.h: Added.
1250         (WebCore::LineInfo::LineInfo):
1251         (WebCore::LineInfo::isFirstLine):
1252         (WebCore::LineInfo::isLastLine):
1253         (WebCore::LineInfo::isEmpty):
1254         (WebCore::LineInfo::previousLineBrokeCleanly):
1255         (WebCore::LineInfo::floatPaginationStrut):
1256         (WebCore::LineInfo::runsFromLeadingWhitespace):
1257         (WebCore::LineInfo::resetRunsFromLeadingWhitespace):
1258         (WebCore::LineInfo::incrementRunsFromLeadingWhitespace):
1259         (WebCore::LineInfo::setFirstLine):
1260         (WebCore::LineInfo::setLastLine):
1261         (WebCore::LineInfo::setEmpty):
1262         (WebCore::LineInfo::setPreviousLineBrokeCleanly):
1263         (WebCore::LineInfo::setFloatPaginationStrut):
1264         * rendering/RenderBlockLineLayout.cpp:
1265
1266 2013-09-12  Bem Jones-Bey  <bjonesbe@adobe.com>
1267
1268         [CSS Shapes] Remove unnecessarily complex template from ShapeInfo classes
1269         https://bugs.webkit.org/show_bug.cgi?id=121213
1270
1271         Reviewed by Darin Adler.
1272
1273         These classes were trying to be way too clever, and as a result were
1274         hard to read and hard to debug. Replace the complex templated method
1275         calls with virtual methods to make these classes much easier to
1276         understand and maintain.
1277
1278         No new tests, no behavior change.
1279
1280         * rendering/shapes/ShapeInfo.cpp:
1281         (WebCore::::computedShape):
1282         (WebCore::::computeSegmentsForLine):
1283         * rendering/shapes/ShapeInfo.h:
1284         * rendering/shapes/ShapeInsideInfo.cpp:
1285         (WebCore::ShapeInsideInfo::getShapeValue):
1286         * rendering/shapes/ShapeInsideInfo.h:
1287         (WebCore::ShapeInsideInfo::computeSegmentsForLine):
1288         (WebCore::ShapeInsideInfo::ShapeInsideInfo):
1289         * rendering/shapes/ShapeOutsideInfo.cpp:
1290         (WebCore::ShapeOutsideInfo::computeSegmentsForLine):
1291         (WebCore::ShapeOutsideInfo::getShapeValue):
1292         * rendering/shapes/ShapeOutsideInfo.h:
1293         (WebCore::ShapeOutsideInfo::ShapeOutsideInfo):
1294
1295 2013-09-12  Zoltan Horvath  <zoltan@webkit.org>
1296
1297         [CSS Shapes] Turn shape's logicalwidth/height into a LayoutSize
1298         https://bugs.webkit.org/show_bug.cgi?id=121187
1299
1300         Reviewed by David Hyatt.
1301
1302         No new tests, no behavior change.
1303
1304         * rendering/shapes/ShapeInfo.cpp:
1305         (WebCore::::computedShape):
1306         * rendering/shapes/ShapeInfo.h:
1307         (WebCore::ShapeInfo::setShapeSize):
1308         (WebCore::ShapeInfo::shapeContainingBlockHeight):
1309
1310 2013-09-12  Darin Adler  <darin@apple.com>
1311
1312         Move layering-violating code from Pasteboard::plainText into Editor (Mac only at first)
1313         https://bugs.webkit.org/show_bug.cgi?id=121075
1314
1315         Reviewed by Anders Carlsson.
1316
1317         * editing/Editor.cpp:
1318         (WebCore::Editor::pasteAsPlainTextBypassingDHTML): Pass pasteboard as a reference.
1319         (WebCore::Editor::pasteAsPlainTextWithPasteboard): Use readPlainTextFromPasteboard
1320         for Mac. Also update to take a reference.
1321         (WebCore::Editor::paste): Pass pasteboard as a reference.
1322         (WebCore::Editor::pasteAsPlainText): Ditto.
1323         * editing/Editor.h: Ditto.
1324
1325         * editing/mac/EditorMac.mm:
1326         (WebCore::Editor::readSelectionFromPasteboard): Pass pasteboard as a reference.
1327         (WebCore::Editor::readPlainTextFromPasteboard): Added. The declaration of this
1328         was added (by mistake) in an earlier patch. This has code that used to be inside
1329         Pasteboard::plainText.
1330
1331         * platform/Pasteboard.h: Added PasteboardPlainText. Reorganized functions in the
1332         Pasteboard class and added some FIXMEs. Sorted platforms alphabetically and grouped
1333         functions together and data members separate from them.
1334
1335         * platform/mac/DragDataMac.mm:
1336         (WebCore::DragData::asPlainText): Updated to call readPlainTextFromPasteboard.
1337         (WebCore::DragData::asURL): Tweaked style of unused parameter.
1338
1339         * platform/mac/PasteboardMac.mm:
1340         (WebCore::Pasteboard::read): Renamed this from plainText, and refactored so that
1341         the data goes out in the PasteboardPlainText structure.
1342
1343 2013-09-12  Gurpreet Kaur  <k.gurpreet@samsung.com>
1344
1345         CSS Unit vw in border-width maps to 0px.
1346         https://bugs.webkit.org/show_bug.cgi?id=109229
1347
1348         Reviewed by Darin Adler.
1349
1350         Border and outline properties were not applied incase
1351         its values were given in vh/vw units.
1352
1353         Tests: fast/css/viewport-height-border.html
1354                fast/css/viewport-height-outline.html
1355                fast/css/viewport-width-border.html
1356                fast/css/viewport-width-outline.html
1357
1358         * css/CSSPrimitiveValue.cpp:
1359         (WebCore::CSSPrimitiveValue::computeLengthDouble):
1360         Added case CSS_VH and CSS_VW. 
1361         * css/CSSPrimitiveValue.h:
1362         (WebCore::CSSPrimitiveValue::isViewportPercentageWidth):
1363         (WebCore::CSSPrimitiveValue::isViewportPercentageHeight):
1364         Added APIs to check the unit type(CSS_VW and CSS_VH). 
1365         * css/DeprecatedStyleBuilder.cpp:
1366         (WebCore::ApplyPropertyComputeLength::applyValue):
1367         Calculating the border values which has been specified
1368         in vh/vw units.The vh/vw units are calcultated as percent
1369         of viewport height and viewport width respectively.
1370
1371 2013-09-12  Jocelyn Turcotte  <jocelyn.turcotte@digia.com>
1372
1373         [Coordinated Graphics] Fix the build on MacOS 10.9
1374         https://bugs.webkit.org/show_bug.cgi?id=121225
1375
1376         Reviewed by Darin Adler.
1377
1378         * platform/graphics/surfaces/mac/GraphicsSurfaceMac.cpp:
1379
1380 2013-09-12  Mark Lam  <mark.lam@apple.com>
1381
1382         Change debug hooks to pass sourceID and position info via the DebuggerCallFrame.
1383         https://bugs.webkit.org/show_bug.cgi?id=121214.
1384
1385         Reviewed by Geoffrey Garen.
1386
1387         No new tests.
1388
1389         Also changed the Inspector's JavaScriptCallFrame to get the sourceID and
1390         position info from its DebuggerCallFrame instead of caching those values.
1391
1392         * bindings/js/JavaScriptCallFrame.cpp:
1393         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
1394         * bindings/js/JavaScriptCallFrame.h:
1395         (WebCore::JavaScriptCallFrame::create):
1396         (WebCore::JavaScriptCallFrame::invalidate):
1397         (WebCore::JavaScriptCallFrame::sourceID):
1398         (WebCore::JavaScriptCallFrame::position):
1399         (WebCore::JavaScriptCallFrame::line):
1400         (WebCore::JavaScriptCallFrame::column):
1401         (WebCore::JavaScriptCallFrame::update):
1402         * bindings/js/ScriptDebugServer.cpp:
1403         (WebCore::ScriptDebugServer::createCallFrame):
1404         (WebCore::ScriptDebugServer::updateCallFrameAndPauseIfNeeded):
1405         (WebCore::ScriptDebugServer::callEvent):
1406         (WebCore::ScriptDebugServer::atStatement):
1407         (WebCore::ScriptDebugServer::returnEvent):
1408         (WebCore::ScriptDebugServer::exception):
1409         (WebCore::ScriptDebugServer::willExecuteProgram):
1410         (WebCore::ScriptDebugServer::didExecuteProgram):
1411         (WebCore::ScriptDebugServer::didReachBreakpoint):
1412         * bindings/js/ScriptDebugServer.h:
1413         * bindings/js/WorkerScriptDebugServer.cpp:
1414         (WebCore::WorkerScriptDebugServer::willExecuteProgram):
1415         * bindings/js/WorkerScriptDebugServer.h:
1416
1417 2013-09-12  peavo@outlook.com  <peavo@outlook.com>
1418
1419         [WinCairo] Compile errors, missing include.
1420         https://bugs.webkit.org/show_bug.cgi?id=121222
1421
1422         Reviewed by Brent Fulgham.
1423
1424         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp: Include required header.
1425         * platform/win/DragImageCairoWin.cpp: Include required header.
1426
1427 2013-09-12  Vivek Galatage  <vivek.vg@samsung.com>
1428
1429         XMLSerializer.serializeToString() should throw exception for invalid node value.
1430         https://bugs.webkit.org/show_bug.cgi?id=121209
1431
1432         Reviewed by Darin Adler.
1433
1434         FF and Opera 12 (pre blink/webkit) throw exception in case the node value is invalid.
1435         Blink sends an empty string as the result of serializeToString operation with invalid node.
1436         We should match with other browsers for throwing it as an exception.
1437
1438         Blink review URL: https://chromiumcodereview.appspot.com/23532055/
1439
1440         Test: fast/dom/xmlserializer-serialize-to-string-exception.html
1441
1442         * xml/XMLSerializer.cpp:
1443         (WebCore::XMLSerializer::serializeToString):
1444
1445 2013-09-12  Zalan Bujtas  <zalan@apple.com>
1446
1447         Crash in ScrollingStateStickyNode::updateConstraints
1448         https://bugs.webkit.org/show_bug.cgi?id=119638
1449
1450         Reviewed by Simon Fraser.
1451
1452         Ensure when a scrolling state node is removed from the state tree,
1453         we remove both the current node and all its children from the
1454         associated m_stateNodeMap lookup table.
1455
1456         Test: fast/css/sticky/multiple-layers-sticky-crash.html
1457
1458         * page/scrolling/ScrollingStateNode.cpp:
1459         (WebCore::ScrollingStateNode::removeChild):
1460         (WebCore::ScrollingStateNode::willBeRemovedFromStateTree):
1461         * page/scrolling/ScrollingStateNode.h:
1462
1463 2013-09-12  Zalan Bujtas  <zalan@apple.com>
1464
1465         REGRESSION (r132516): Javascript menu text incorrectly disappearing and reappearing
1466         https://bugs.webkit.org/show_bug.cgi?id=101047
1467
1468         Reviewed by Simon Fraser.
1469
1470         Compositing layers keep track of ancestors' clipping by constructing the RenderLayerBacking::m_ancestorClippingLayer.
1471         It helps setting up the proper clipping context for the corresponding graphics layer.
1472         When a RenderObject's clipping style changes, it needs to propagate this change not only
1473         to the associated RenderLayer, but also to the descendants', if applicable.
1474         Before r132516, it was mainly covered by initiating full style recalcs, which ensured that
1475         style recalc on the descendant rendering tree took care of creating/destroying
1476         RenderLayerBacking::m_ancestorClippingLayer at every compositing layer node. Without the full
1477         recalc, the clipping of the compositing render layers and the corresponding render subtrees can get out of sync.
1478         This patch updates the clipping context on the descendant subtree, when the clipping behaviour
1479         changes on a render node.
1480
1481         Tests: compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants.html
1482                compositing/overflow/clipping-behaviour-change-is-not-propagated-to-descendants2.html
1483
1484         * rendering/RenderLayer.cpp:
1485         (WebCore::RenderLayer::updateDescendantClippingContext):
1486         (WebCore::RenderLayer::styleChanged):
1487         * rendering/RenderLayer.h:
1488         * rendering/RenderLayerBacking.cpp:
1489         (WebCore::RenderLayerBacking::~RenderLayerBacking):
1490         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
1491         (WebCore::RenderLayerBacking::updateAncestorClippingLayer):
1492         (WebCore::RenderLayerBacking::updateDescendantClippingLayer):
1493         * rendering/RenderLayerBacking.h:
1494
1495 2013-09-12  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
1496
1497         Remove home-brewed nullptr
1498         https://bugs.webkit.org/show_bug.cgi?id=119624
1499
1500         Reviewed by Anders Carlsson.
1501
1502         The standard C++11 nullptr and std::nullptr_t type should be used now.
1503
1504         * bindings/js/JSDOMBinding.h:
1505
1506 2013-09-12  Samuel White  <samuel_white@apple.com>
1507
1508         <meter> element text value exposed as AXTitle; should be exposing AXValueDescription
1509         https://bugs.webkit.org/show_bug.cgi?id=117651
1510
1511         Reviewed by Mario Sanchez Prada.
1512
1513         No new tests, updated accessibility/meter-element to handle platform specific output.
1514
1515         * accessibility/AccessibilityObject.cpp:
1516         (WebCore::AccessibilityObject::isMeter):
1517         * accessibility/AccessibilityObject.h:
1518         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1519         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
1520
1521 2013-09-12  Santosh Mahto  <santosh.ma@samsung.com>
1522
1523         class WeekInputType invokes wrong constructor
1524         https://bugs.webkit.org/show_bug.cgi?id=120768
1525
1526         Reviewed by Andreas Kling.
1527
1528         Correcting wrong constuctor invocation.
1529
1530         * html/WeekInputType.h:
1531         (WebCore::WeekInputType::WeekInputType):
1532
1533 2013-09-12  Samuel White  <samuel_white@apple.com>
1534
1535         AX: Self-referencing aria-labelledby only uses contents.
1536         https://bugs.webkit.org/show_bug.cgi?id=120814
1537
1538         Reviewed by Mario Sanchez Prada.
1539
1540         Implemented additional 'Text Alternative Computation' steps documented at:
1541         http://www.w3.org/WAI/PF/aria/complete#textalternativecomputation. This allows us to remove
1542         our raw text node iteration that was previously forcing us to do our computation incorrectly.
1543         Element content is now sourced using textUnderElement (step 2C of the computation).
1544
1545         Test: accessibility/self-referencing-aria-labelledby.html
1546
1547         * accessibility/AccessibilityNodeObject.cpp:
1548         (WebCore::accessibleNameForNode):
1549         (WebCore::AccessibilityNodeObject::accessibilityDescriptionForElements):
1550
1551 2013-09-12  Commit Queue  <commit-queue@webkit.org>
1552
1553         Unreviewed, rolling out r155597.
1554         http://trac.webkit.org/changeset/155597
1555         https://bugs.webkit.org/show_bug.cgi?id=121220
1556
1557         broke windows build because there's no ews :( (Requested by
1558         thorton on #webkit).
1559
1560         * WebCore.exp.in:
1561         * platform/graphics/BitmapImage.cpp:
1562         (WebCore::BitmapImage::isBitmapImage):
1563         * platform/graphics/BitmapImage.h:
1564         (WebCore::BitmapImage::create):
1565         * platform/graphics/CrossfadeGeneratedImage.cpp:
1566         (WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
1567         (WebCore::CrossfadeGeneratedImage::drawPattern):
1568         * platform/graphics/CrossfadeGeneratedImage.h:
1569         (WebCore::CrossfadeGeneratedImage::setContainerSize):
1570         (WebCore::CrossfadeGeneratedImage::usesContainerSize):
1571         (WebCore::CrossfadeGeneratedImage::hasRelativeWidth):
1572         (WebCore::CrossfadeGeneratedImage::hasRelativeHeight):
1573         (WebCore::CrossfadeGeneratedImage::size):
1574         * platform/graphics/GeneratedImage.h:
1575         (WebCore::GeneratedImage::hasSingleSecurityOrigin):
1576         (WebCore::GeneratedImage::setContainerSize):
1577         (WebCore::GeneratedImage::usesContainerSize):
1578         (WebCore::GeneratedImage::hasRelativeWidth):
1579         (WebCore::GeneratedImage::hasRelativeHeight):
1580         (WebCore::GeneratedImage::size):
1581         (WebCore::GeneratedImage::destroyDecodedData):
1582         (WebCore::GeneratedImage::decodedSize):
1583         * platform/graphics/GeneratorGeneratedImage.cpp:
1584         (WebCore::GeneratorGeneratedImage::draw):
1585         (WebCore::GeneratorGeneratedImage::drawPattern):
1586         * platform/graphics/GeneratorGeneratedImage.h:
1587         (WebCore::GeneratorGeneratedImage::GeneratorGeneratedImage):
1588         * svg/graphics/SVGImage.h:
1589         (WebCore::SVGImage::isSVGImage):
1590         (WebCore::SVGImage::usesContainerSize):
1591         (WebCore::SVGImage::destroyDecodedData):
1592         (WebCore::SVGImage::decodedSize):
1593         * svg/graphics/SVGImageForContainer.h:
1594         (WebCore::SVGImageForContainer::destroyDecodedData):
1595         (WebCore::SVGImageForContainer::decodedSize):
1596
1597 2013-09-12  Andreas Kling  <akling@apple.com>
1598
1599         RenderWidget elements are always HTMLFrameOwnerElement subclasses.
1600         <https://webkit.org/b/121217>
1601
1602         Reviewed by Antti Koivisto.
1603
1604         Make RenderWidget constructor take HTMLFrameOwnerElement* and update subclasses
1605         with even tighter types where possible.
1606
1607         Also added RenderWidget::frameOwnerElement() and deleted element().
1608         Removed a handful of unnecessary type checks that were exposed by this.
1609
1610 2013-09-11  Tim Horton  <timothy_horton@apple.com>
1611
1612         Apply OVERRIDE and FINAL to Image subclasses and clean them up
1613         https://bugs.webkit.org/show_bug.cgi?id=121086
1614
1615         Reviewed by Alexey Proskuryakov.
1616
1617         Everything other than the copious application of OVERRIDE and FINAL
1618         is explicitly called out below.
1619
1620         * WebCore.exp.in:
1621         Export the correct version of getCGImageRef for use by WebKit2.
1622
1623         * platform/graphics/BitmapImage.cpp:
1624         * platform/graphics/BitmapImage.h:
1625         Drive-by inline isBitmapImage.
1626         Move create(HBITMAP) to be near the other create() functions.
1627         Move all of the members and quite a few functions from protected to private.
1628         Devirtualize frameCount().
1629         Move notSolidColor() near the other solid color functions.
1630
1631         * platform/graphics/CrossfadeGeneratedImage.cpp:
1632         (WebCore::CrossfadeGeneratedImage::CrossfadeGeneratedImage):
1633         (WebCore::CrossfadeGeneratedImage::drawPattern):
1634         * platform/graphics/GeneratorGeneratedImage.cpp:
1635         (WebCore::GeneratorGeneratedImage::draw):
1636         (WebCore::GeneratorGeneratedImage::drawPattern):
1637         Use size() and setContainerSize() instead of directly accessing a
1638         superclass' (now private, previously protected) members.
1639
1640         * platform/graphics/CrossfadeGeneratedImage.h:
1641         * platform/graphics/GeneratedImage.h:
1642         Make m_size private, I don't think we do protected members.
1643         
1644         * platform/graphics/GeneratorGeneratedImage.h:
1645         Make all the members private.
1646
1647         * svg/graphics/SVGImage.h:
1648         * svg/graphics/SVGImageForContainer.h:
1649
1650 2013-09-11  Rashmi Shyamasundar  <rashmi.s2@samsung.com>
1651
1652         Canvas fillText and measureText handle ideographic spaces differently
1653         https://bugs.webkit.org/show_bug.cgi?id=108881
1654
1655         Reviewed by Darin Adler.
1656
1657         According to spec for text preparation algorithm
1658         http://www.whatwg.org/specs/web-apps/current-work/multipage/the-canvas-element.html#text-preparation-algorithm
1659         all the space characters mentioned in the spec
1660         http://www.whatwg.org/specs/web-apps/current-work/multipage/common-microsyntaxes.html#space-character
1661         should be replaced by U+0020 space character.
1662         The canvas functions fillText and measureText should run the text preparation algorithm.
1663         This patch modifies the canvas functions drawTextInternal and measureText to conform to the above spec.
1664
1665         Tests: fast/canvas/canvas-measureText-ideographicSpace.html
1666
1667         * html/canvas/CanvasRenderingContext2D.cpp:
1668         (WebCore::shouldSpaceBeReplaced):
1669         (WebCore::replaceCharacterInString):
1670         (WebCore::CanvasRenderingContext2D::measureText):
1671         (WebCore::CanvasRenderingContext2D::drawTextInternal):
1672
1673 2013-09-11  Andreas Kling  <akling@apple.com>
1674
1675         Fix Windows build.
1676
1677         * rendering/RenderingAllInOne.cpp:
1678
1679 2013-09-11  Andreas Kling  <akling@apple.com>
1680
1681         Merge RenderPart into RenderWidget.
1682         <https://webkit.org/b/121200>
1683
1684         Reviewed by Anders Carlsson.
1685
1686         Remove the RenderPart class and move its functionality into RenderWidget.
1687         It was acting as a pointless extra layer between RenderWidget and renderers
1688         for embedded objects, frames and iframes.
1689
1690 2013-09-11  Geoffrey Garen  <ggaren@apple.com>
1691
1692         Removed some unused functions from the debugger interface
1693         https://bugs.webkit.org/show_bug.cgi?id=121194
1694
1695         Reviewed by Joseph Pecoraro.
1696
1697         We plan to use the "evaluate" API and debugger activation property access for all the features we need.
1698
1699         * inspector/JavaScriptCallFrame.idl: These are the interfaces I removed.
1700
1701         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
1702         * inspector/InjectedScript.cpp:
1703         * inspector/InjectedScript.h:
1704         * inspector/InjectedScriptSource.js:
1705         * inspector/Inspector.json:
1706         * inspector/InspectorDebuggerAgent.cpp:
1707         (WebCore::InspectorDebuggerAgent::setScriptSource):
1708         * inspector/InspectorDebuggerAgent.h:
1709         * inspector/JavaScriptCallFrame.idl:
1710         * inspector/front-end/RemoteObject.js:
1711         (WebInspector.RemoteObject.prototype.):
1712         (WebInspector.RemoteObject.prototype.setPropertyValue): These files are mechanical removals of code that used
1713         or implemented the interfaces I removed.
1714
1715 2013-09-11  Vivek Galatage  <vivek.vg@samsung.com>
1716
1717         DOMParser.parseFromString() should support creating HTML Document with mime-type text/html
1718         https://bugs.webkit.org/show_bug.cgi?id=120826
1719
1720         Reviewed by Darin Adler.
1721
1722         The specification http://domparsing.spec.whatwg.org/#the-domparser-interface for DOMParser.parseFromString()
1723         allows the document creation if the mimeType is one of the supported types:
1724         ["text/html", "text/xml", "application/xml", "application/xhtml+xml", "image/svg+xml"]
1725
1726         Also script elements get marked unexecutable and the contents of noscript get parsed as markup.
1727
1728         blink review URL: https://codereview.chromium.org/23903014/
1729
1730         Test: fast/dom/domparser-parsefromstring-mimetype-support.html
1731
1732         * xml/DOMParser.cpp:
1733         (WebCore::DOMParser::parseFromString):
1734
1735 2013-09-11  Hans Muller  <hmuller@adobe.com>
1736
1737         [CSS Shapes] Improve the performance of image valued shapes
1738         https://bugs.webkit.org/show_bug.cgi?id=120211
1739
1740         Reviewed by Alexandru Chiculita.
1741
1742         Replaced the implementation of RasterShapeIntervals with one based on the
1743         new ShapeInterval<int> class. This eliminates the dependency the Region class
1744         and delivers a 10X layout speedup for large image valued shapes.
1745
1746         This a just an implementation refactoring, no new tests were needed.
1747
1748         * rendering/shapes/RasterShape.cpp:
1749         (WebCore::RasterShapeIntervals::appendInterval): Renamed this method, it was called addInterval().
1750         (WebCore::shapeIntervalsContain):
1751         (WebCore::RasterShapeIntervals::contains):
1752         (WebCore::RasterShapeIntervals::getIntervalsInLine):
1753         (WebCore::compareX1):
1754         (WebCore::RasterShapeIntervals::firstIncludedIntervalY):
1755         (WebCore::RasterShapeIntervals::getIncludedIntervals):
1756         (WebCore::RasterShapeIntervals::getExcludedIntervals):
1757         (WebCore::RasterShape::getExcludedIntervals):
1758         (WebCore::RasterShape::getIncludedIntervals):
1759         * rendering/shapes/RasterShape.h:
1760         (WebCore::RasterShapeIntervals::RasterShapeIntervals): The constructor now takes a size argument which is used to allocate IntShapeIntervals storage.
1761         (WebCore::RasterShapeIntervals::size):
1762         (WebCore::RasterShapeIntervals::bounds):
1763         (WebCore::RasterShapeIntervals::isEmpty):
1764         (WebCore::RasterShapeIntervals::getIntervals):
1765         * rendering/shapes/Shape.cpp:
1766         (WebCore::Shape::createShape): Use appendInterval() instead of addInterval() (see above) and the new RasterShapeIntervals constructor.
1767
1768 2013-09-11  Eric Carlson  <eric.carlson@apple.com>
1769
1770         [MediaStream API] Updating NavigatorUserMediaError to match the spec
1771         https://bugs.webkit.org/show_bug.cgi?id=120880
1772
1773         Reviewed by Darin Adler.
1774         
1775         Merge https://chromium.googlesource.com/chromium/blink/+/f07305e49ddebaa166f5dee514bcc881a8efd341
1776         by Tommy Widenflycht.
1777
1778         The Blink change did not have any test changes because they don't appear to have any tests 
1779         for NavigatorUserMediaError. I can't add tests now because the MediaStream feature isn't enabled 
1780         yet, so https://bugs.webkit.org/show_bug.cgi?id=121182 tracks adding tests.
1781
1782         * Modules/mediastream/NavigatorUserMediaError.h:
1783         (WebCore::NavigatorUserMediaError::create):
1784         (WebCore::NavigatorUserMediaError::name):
1785         (WebCore::NavigatorUserMediaError::message):
1786         (WebCore::NavigatorUserMediaError::constraintName):
1787         (WebCore::NavigatorUserMediaError::NavigatorUserMediaError):
1788         * Modules/mediastream/NavigatorUserMediaError.idl:
1789         * Modules/mediastream/UserMediaRequest.cpp:
1790         (WebCore::UserMediaRequest::fail):
1791         (WebCore::UserMediaRequest::failConstraint):
1792         * Modules/mediastream/UserMediaRequest.h:
1793
1794 2013-09-11  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1795
1796         MediaStream API: Remove LocalMediaStream
1797         https://bugs.webkit.org/show_bug.cgi?id=120875
1798
1799         blink merge: https://chromium.googlesource.com/chromium/blink/+/81643ee3fe048a64fa8931132e1294fa2c8e821a
1800
1801         Reviewed by Eric Carlson.
1802
1803         Existing tests were updated.
1804
1805         * CMakeLists.txt:
1806         * DerivedSources.make:
1807         * GNUmakefile.list.am:
1808         * Modules/mediastream/LocalMediaStream.cpp: Removed.
1809         * Modules/mediastream/LocalMediaStream.h: Removed.
1810         * Modules/mediastream/LocalMediaStream.idl: Removed.
1811         * Modules/mediastream/MediaStream.cpp:
1812         (WebCore::MediaStream::stop):
1813         * Modules/mediastream/MediaStream.h:
1814         * Modules/mediastream/MediaStream.idl:
1815         * Modules/mediastream/NavigatorUserMediaSuccessCallback.h:
1816         * Modules/mediastream/NavigatorUserMediaSuccessCallback.idl:
1817         * Modules/mediastream/UserMediaRequest.cpp:
1818         (WebCore::UserMediaRequest::succeed):
1819         * Modules/mediastream/UserMediaRequest.h:
1820         * Modules/webaudio/AudioContext.cpp:
1821         (WebCore::AudioContext::createMediaStreamSource):
1822         * Modules/webaudio/MediaStreamAudioDestinationNode.cpp:
1823         (WebCore::MediaStreamAudioDestinationNode::MediaStreamAudioDestinationNode):
1824         * WebCore.xcodeproj/project.pbxproj:
1825         * dom/EventTarget.h:
1826         * dom/EventTargetFactory.in:
1827         * platform/mediastream/MediaStreamDescriptor.h:
1828
1829 2013-09-11  Timothy Hatcher  <timothy@apple.com>
1830
1831         Remove PlatformInstrumentation since we don't show decode or resize in the new Web Inspector
1832         https://bugs.webkit.org/show_bug.cgi?id=121181
1833
1834         Reviewed by Joseph Pecoraro.
1835
1836         * CMakeLists.txt:
1837         * GNUmakefile.list.am:
1838         * Target.pri:
1839         * WebCore.order:
1840         * WebCore.vcxproj/WebCore.vcxproj:
1841         * WebCore.vcxproj/WebCore.vcxproj.filters:
1842         * WebCore.xcodeproj/project.pbxproj:
1843         * inspector/InspectorTimelineAgent.cpp:
1844         (WebCore::InspectorTimelineAgent::willPaint):
1845         (WebCore::InspectorTimelineAgent::didCompleteCurrentRecord):
1846         (WebCore::InspectorTimelineAgent::InspectorTimelineAgent):
1847         (WebCore::InspectorTimelineAgent::pushCurrentRecord):
1848         (WebCore::InspectorTimelineAgent::clearRecordStack):
1849         * inspector/InspectorTimelineAgent.h:
1850         * platform/PlatformInstrumentation.cpp: Removed.
1851         * platform/PlatformInstrumentation.h: Removed.
1852         * platform/image-decoders/bmp/BMPImageDecoder.cpp:
1853         (WebCore::BMPImageDecoder::frameBufferAtIndex):
1854         * platform/image-decoders/gif/GIFImageDecoder.cpp:
1855         (WebCore::GIFImageDecoder::frameBufferAtIndex):
1856         * platform/image-decoders/ico/ICOImageDecoder.cpp:
1857         (WebCore::ICOImageDecoder::frameBufferAtIndex):
1858         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1859         (WebCore::JPEGImageDecoder::frameBufferAtIndex):
1860         * platform/image-decoders/png/PNGImageDecoder.cpp:
1861         (WebCore::PNGImageDecoder::frameBufferAtIndex):
1862         * platform/image-decoders/webp/WEBPImageDecoder.cpp:
1863         (WebCore::WEBPImageDecoder::frameBufferAtIndex):
1864
1865 2013-09-11  Brent Fulgham  <bfulgham@apple.com>
1866
1867         [Windows] Avoid converting from IntSize->SIZE->IntSize.
1868         https://bugs.webkit.org/show_bug.cgi?id=121180
1869
1870         Reviewed by Anders Carlsson.
1871
1872         * platform/graphics/BitmapImage.h: Take const IntSize* as
1873         argument, rather than LPSIZE.
1874         * platform/graphics/Image.h: Ditto.
1875         (WebCore::Image::getHBITMAPOfSize):
1876         * platform/graphics/win/ImageCGWin.cpp:
1877         (WebCore::BitmapImage::getHBITMAPOfSize): Use passed-in
1878         IntSize, rather than converting from SIZE.
1879         * platform/graphics/win/ImageCairoWin.cpp:
1880         (WebCore::BitmapImage::getHBITMAPOfSize): Ditto.
1881
1882 2013-09-11  Zoltan Horvath  <zoltan@webkit.org>
1883
1884         Unreviewed debug build fix after r155567.
1885
1886         * rendering/LineWidth.cpp:
1887         (WebCore::LineWidth::LineWidth):
1888
1889 2013-09-11  Zoltan Horvath  <zoltan@webkit.org>
1890
1891         Move LineWidth out of RenderBlockLineLayout
1892         https://bugs.webkit.org/show_bug.cgi?id=121107
1893
1894         Reviewed by David Hyatt.
1895
1896         Move LineWidth class and related code into LineWidth.{h,cpp}.
1897
1898         No new tests, no behavior change.
1899
1900         * CMakeLists.txt:
1901         * GNUmakefile.list.am:
1902         * Target.pri:
1903         * WebCore.vcxproj/WebCore.vcxproj:
1904         * WebCore.xcodeproj/project.pbxproj:
1905         * rendering/LineWidth.cpp: Added.
1906         (WebCore::LineWidth::applyOverhang):
1907         (WebCore::LineWidth::fitBelowFloats):
1908         * rendering/LineWidth.h: Added.
1909         (WebCore::logicalHeightForLine):
1910         (WebCore::LineWidth::LineWidth):
1911         (WebCore::LineWidth::fitsOnLine):
1912         (WebCore::LineWidth::fitsOnLineIncludingExtraWidth):
1913         (WebCore::LineWidth::fitsOnLineExcludingTrailingWhitespace):
1914         (WebCore::LineWidth::currentWidth):
1915         (WebCore::LineWidth::uncommittedWidth):
1916         (WebCore::LineWidth::committedWidth):
1917         (WebCore::LineWidth::availableWidth):
1918         (WebCore::LineWidth::addUncommittedWidth):
1919         (WebCore::LineWidth::commit):
1920         (WebCore::LineWidth::setTrailingWhitespaceWidth):
1921         (WebCore::LineWidth::shouldIndentText):
1922         (WebCore::LineWidth::computeAvailableWidthFromLeftAndRight):
1923         (WebCore::LineWidth::fitsOnLineExcludingTrailingCollapsedWhitespace):
1924         (WebCore::LineWidth::updateAvailableWidth):
1925         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
1926         * rendering/RenderBlockLineLayout.cpp:
1927
1928 2013-09-11  Ryosuke Niwa  <rniwa@webkit.org>
1929
1930         HTMLEntityTable could use char to reduce binary size
1931         https://bugs.webkit.org/show_bug.cgi?id=121176
1932
1933         Reviewed by Anders Carlsson.
1934
1935         Use LChar instead.
1936
1937         * html/parser/HTMLEntityParser.cpp:
1938         (WebCore::HTMLEntityParser::consumeNamedEntity):
1939         * html/parser/HTMLEntityTable.h:
1940         (WebCore::HTMLEntityTableEntry::lastCharacter):
1941         * html/parser/create-html-entity-table:
1942
1943 2013-09-11  Brent Fulgham  <bfulgham@apple.com>
1944
1945         [Windows] Revise GDI Create Functions to use GDIObject Smart Pointer.
1946         https://bugs.webkit.org/show_bug.cgi?id=121100
1947
1948         Reviewed by Anders Carlsson.
1949
1950         * platform/graphics/FontPlatformData.h: Use GDIObject instead of bare pointer.
1951         * platform/graphics/win/FontCacheWin.cpp:
1952         (WebCore::createGDIFont): No longer need to leak the pointer; use move semantic
1953         to pass ownership to FontPlatformData.
1954         (WebCore::FontCache::createFontPlatformData):
1955         * platform/graphics/win/FontCustomPlatformData.cpp:
1956         (WebCore::FontCustomPlatformData::fontPlatformData): Use move operation.
1957         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
1958         (WebCore::FontCustomPlatformData::fontPlatformData): Ditto.
1959         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1960         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1961         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
1962         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1963         * platform/graphics/win/FontPlatformDataWin.cpp:
1964         (WebCore::FontPlatformData::FontPlatformData): Ditto.
1965         * platform/graphics/win/GlyphPageTreeNodeCairoWin.cpp:
1966         (WebCore::GlyphPage::fill): Use HWndDC smart pointer instead of bare HDC.
1967         * platform/graphics/win/SimpleFontDataWin.cpp:
1968         (WebCore::SimpleFontData::platformCreateScaledFontData): Use move operation.
1969         * platform/win/DragImageCGWin.cpp:
1970         (WebCore::allocImage): Change to use GDIObject.
1971         (WebCore::scaleDragImage): Use smart pointers to avoid manual deallocs.
1972         (WebCore::createDragImageFromImage): Ditto.
1973         * platform/win/DragImageCairoWin.cpp:
1974         (WebCore::allocImage): Change to use GDIObject.
1975         (WebCore::scaleDragImage): Use smart pointers to avoid manual deallocs.
1976         (WebCore::createDragImageFromImage): Ditto.
1977         * platform/win/DragImageWin.cpp:
1978         (WebCore::createDragImageForLink): Update for GDIObject.
1979         * platform/win/PopupMenuWin.cpp:
1980         (WebCore::PopupMenuWin::PopupMenuWin): Switch to GDIObject.
1981         (WebCore::PopupMenuWin::~PopupMenuWin): Remove uneeded deallocs.
1982         (WebCore::PopupMenuWin::paint): Update for GDIObject.
1983         * platform/win/PopupMenuWin.h: Use smart pointers instead of bare GDI objects.
1984
1985 2013-09-11  Patrick Gansterer  <paroga@webkit.org>
1986
1987         Fix animations with !USE(ACCELERATED_COMPOSITING) after r147792.
1988         https://bugs.webkit.org/show_bug.cgi?id=121159
1989
1990         Reviewed by Simon Fraser.
1991
1992         CSSPropertyAnimation::blendProperties() is available always
1993         and needs to be called to make the animations work.
1994
1995         * page/animation/ImplicitAnimation.cpp:
1996         (WebCore::ImplicitAnimation::animate):
1997         * page/animation/KeyframeAnimation.cpp:
1998         (WebCore::KeyframeAnimation::animate):
1999
2000 2013-09-11  David Hyatt  <hyatt@apple.com>
2001
2002         Move all collapsing margin code out of RenderBlock and into RenderBlockFlow.
2003         https://bugs.webkit.org/show_bug.cgi?id=121049
2004
2005         Reviewed by Dean Jackson.
2006
2007         This patch begins the migration of the rare data struct of RenderBlock into
2008         RenderBlockFlow. During this process we will temporarily have rare data structs
2009         in both places, but ultimately all of the members are going to move down into
2010         RenderBlockFlow, and if any don't, they will get forced into a hash.
2011         
2012         For this patch, the margin information is being shifted out of RenderBlock and into
2013         RenderBlockFlow. Any functions that refer to MarginValues or to MarginInfo also got
2014         moved down into RenderBlockFlow. Most of block child layout is now in RenderBlockFlow
2015         after this patch.
2016         
2017         Note that in many cases the code didn't simply move. There is some type tightening
2018         that happened as well, i.e., places that look for RenderBlock can now look for
2019         RenderBlockFlow instead and let RenderBlock execute the base RenderBox functions.
2020
2021         * rendering/RenderBlock.cpp:
2022         (WebCore::RenderBlock::RenderBlock):
2023         (WebCore::RenderBlock::setPaginationStrut):
2024         (WebCore::RenderBlock::setPageLogicalOffset):
2025         (WebCore::RenderBlock::setBreakAtLineToAvoidWidow):
2026         * rendering/RenderBlock.h:
2027         (WebCore::RenderBlock::setLineGridBox):
2028         (WebCore::RenderBlock::setShapeInsideInfo):
2029         (WebCore::RenderBlock::RenderBlockRareData::RenderBlockRareData):
2030         * rendering/RenderBlockFlow.cpp:
2031         (WebCore::RenderBlockFlow::MarginInfo::MarginInfo):
2032         (WebCore::RenderBlockFlow::RenderBlockFlow):
2033         (WebCore::RenderBlockFlow::layoutBlockChild):
2034         (WebCore::RenderBlockFlow::adjustPositionedBlock):
2035         (WebCore::RenderBlockFlow::adjustFloatingBlock):
2036         (WebCore::RenderBlockFlow::marginValuesForChild):
2037         (WebCore::RenderBlockFlow::collapseMargins):
2038         (WebCore::RenderBlockFlow::clearFloatsIfNeeded):
2039         (WebCore::RenderBlockFlow::marginBeforeEstimateForChild):
2040         (WebCore::RenderBlockFlow::estimateLogicalTopPosition):
2041         (WebCore::RenderBlockFlow::setCollapsedBottomMargin):
2042         (WebCore::RenderBlockFlow::handleAfterSideOfBlock):
2043         (WebCore::RenderBlockFlow::setMaxMarginBeforeValues):
2044         (WebCore::RenderBlockFlow::setMaxMarginAfterValues):
2045         (WebCore::RenderBlockFlow::setMustDiscardMarginBefore):
2046         (WebCore::RenderBlockFlow::setMustDiscardMarginAfter):
2047         (WebCore::RenderBlockFlow::mustDiscardMarginBefore):
2048         (WebCore::RenderBlockFlow::mustDiscardMarginAfter):
2049         (WebCore::RenderBlockFlow::mustDiscardMarginBeforeForChild):
2050         (WebCore::RenderBlockFlow::mustDiscardMarginAfterForChild):
2051         (WebCore::RenderBlockFlow::mustSeparateMarginBeforeForChild):
2052         (WebCore::RenderBlockFlow::mustSeparateMarginAfterForChild):
2053         (WebCore::inNormalFlow):
2054         (WebCore::RenderBlockFlow::applyBeforeBreak):
2055         (WebCore::RenderBlockFlow::applyAfterBreak):
2056         (WebCore::RenderBlockFlow::adjustBlockChildForPagination):
2057         * rendering/RenderBlockFlow.h:
2058         (WebCore::RenderBlockFlow::MarginValues::MarginValues):
2059         (WebCore::RenderBlockFlow::MarginValues::positiveMarginBefore):
2060         (WebCore::RenderBlockFlow::MarginValues::negativeMarginBefore):
2061         (WebCore::RenderBlockFlow::MarginValues::positiveMarginAfter):
2062         (WebCore::RenderBlockFlow::MarginValues::negativeMarginAfter):
2063         (WebCore::RenderBlockFlow::MarginValues::setPositiveMarginBefore):
2064         (WebCore::RenderBlockFlow::MarginValues::setNegativeMarginBefore):
2065         (WebCore::RenderBlockFlow::MarginValues::setPositiveMarginAfter):
2066         (WebCore::RenderBlockFlow::MarginValues::setNegativeMarginAfter):
2067         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::RenderBlockFlowRareData):
2068         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::positiveMarginBeforeDefault):
2069         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::negativeMarginBeforeDefault):
2070         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::positiveMarginAfterDefault):
2071         (WebCore::RenderBlockFlow::RenderBlockFlowRareData::negativeMarginAfterDefault):
2072         (WebCore::RenderBlockFlow::MarginInfo::setAtBeforeSideOfBlock):
2073         (WebCore::RenderBlockFlow::MarginInfo::setAtAfterSideOfBlock):
2074         (WebCore::RenderBlockFlow::MarginInfo::clearMargin):
2075         (WebCore::RenderBlockFlow::MarginInfo::setHasMarginBeforeQuirk):
2076         (WebCore::RenderBlockFlow::MarginInfo::setHasMarginAfterQuirk):
2077         (WebCore::RenderBlockFlow::MarginInfo::setDeterminedMarginBeforeQuirk):
2078         (WebCore::RenderBlockFlow::MarginInfo::setPositiveMargin):
2079         (WebCore::RenderBlockFlow::MarginInfo::setNegativeMargin):
2080         (WebCore::RenderBlockFlow::MarginInfo::setPositiveMarginIfLarger):
2081         (WebCore::RenderBlockFlow::MarginInfo::setNegativeMarginIfLarger):
2082         (WebCore::RenderBlockFlow::MarginInfo::setMargin):
2083         (WebCore::RenderBlockFlow::MarginInfo::setCanCollapseMarginAfterWithChildren):
2084         (WebCore::RenderBlockFlow::MarginInfo::setDiscardMargin):
2085         (WebCore::RenderBlockFlow::MarginInfo::atBeforeSideOfBlock):
2086         (WebCore::RenderBlockFlow::MarginInfo::canCollapseWithMarginBefore):
2087         (WebCore::RenderBlockFlow::MarginInfo::canCollapseWithMarginAfter):
2088         (WebCore::RenderBlockFlow::MarginInfo::canCollapseMarginBeforeWithChildren):
2089         (WebCore::RenderBlockFlow::MarginInfo::canCollapseMarginAfterWithChildren):
2090         (WebCore::RenderBlockFlow::MarginInfo::quirkContainer):
2091         (WebCore::RenderBlockFlow::MarginInfo::determinedMarginBeforeQuirk):
2092         (WebCore::RenderBlockFlow::MarginInfo::hasMarginBeforeQuirk):
2093         (WebCore::RenderBlockFlow::MarginInfo::hasMarginAfterQuirk):
2094         (WebCore::RenderBlockFlow::MarginInfo::positiveMargin):
2095         (WebCore::RenderBlockFlow::MarginInfo::negativeMargin):
2096         (WebCore::RenderBlockFlow::MarginInfo::discardMargin):
2097         (WebCore::RenderBlockFlow::MarginInfo::margin):
2098         (WebCore::RenderBlockFlow::maxPositiveMarginBefore):
2099         (WebCore::RenderBlockFlow::maxNegativeMarginBefore):
2100         (WebCore::RenderBlockFlow::maxPositiveMarginAfter):
2101         (WebCore::RenderBlockFlow::maxNegativeMarginAfter):
2102         (WebCore::RenderBlockFlow::initMaxMarginValues):
2103         * rendering/RenderDeprecatedFlexibleBox.cpp:
2104         (WebCore::RenderDeprecatedFlexibleBox::layoutBlock):
2105         * rendering/RenderTable.cpp:
2106         (WebCore::RenderTable::layout):
2107
2108 2013-09-11  Myles C. Maxfield  <mmaxfield@apple.com>
2109
2110         Fix nested unicode-bidi: isolate
2111         https://bugs.webkit.org/show_bug.cgi?id=120504
2112
2113         Reviewed by Darin Adler.
2114
2115         When we have a nested isolate renderer if the outer isolate has a text
2116         and this text is not the first child, the isolated chain is not
2117         rendered correctly. This happens because constructBidiRunsForSegment
2118         uses always the first inner isolated renderer as isolated inline
2119         container. This patch fixes the behavior described changing
2120         containingIsolate to find the right isolated container.
2121
2122         Merged from Blink: https://chromium.googlesource.com/chromium/blink/+/840a57050eade39dd04dde0c6603e129b783151c
2123
2124         Tests: fast/text/international/unicode-bidi-isolate-nested-first-child-text.html
2125                fast/text/international/unicode-bidi-isolate-nested-simple.html
2126
2127         * rendering/InlineIterator.h:
2128         (WebCore::containingIsolate):
2129         * rendering/RenderBlockLineLayout.cpp:
2130         (WebCore::constructBidiRunsForSegment):
2131
2132 2013-09-11  Alexey Proskuryakov  <ap@apple.com>
2133
2134         https://bugs.webkit.org/show_bug.cgi?id=121169
2135         media/track/track-cue-rendering-vertical.html is flaky on Mac
2136
2137         Reviewed by Eric Carlson.
2138
2139         * html/shadow/MediaControlElements.cpp:
2140         (WebCore::MediaControlTextTrackContainerElement::updateSizes): Added a FIXME.
2141
2142 2013-09-11  Anders Carlsson  <andersca@apple.com>
2143
2144         Stop using deleteAllValues in SVG code
2145         https://bugs.webkit.org/show_bug.cgi?id=121172
2146
2147         Reviewed by Antti Koivisto.
2148
2149         Use OwnPtr for values instead.
2150
2151         * rendering/svg/RenderSVGResourceClipper.cpp:
2152         (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper):
2153         (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
2154         (WebCore::RenderSVGResourceClipper::removeClientFromCache):
2155         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
2156         * rendering/svg/RenderSVGResourceClipper.h:
2157         * rendering/svg/RenderSVGResourceFilter.cpp:
2158         (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
2159         (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
2160         (WebCore::RenderSVGResourceFilter::removeClientFromCache):
2161         (WebCore::RenderSVGResourceFilter::applyResource):
2162         (WebCore::RenderSVGResourceFilter::postApplyResource):
2163         (WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
2164         * rendering/svg/RenderSVGResourceFilter.h:
2165         * rendering/svg/RenderSVGResourceMasker.cpp:
2166         (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker):
2167         (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
2168         (WebCore::RenderSVGResourceMasker::removeClientFromCache):
2169         (WebCore::RenderSVGResourceMasker::applyResource):
2170         * rendering/svg/RenderSVGResourceMasker.h:
2171
2172 2013-09-11  Ryosuke Niwa  <rniwa@webkit.org>
2173
2174         Make the table static const.
2175
2176         * css/makeprop.pl:
2177
2178 2013-09-11  Timothy Hatcher  <timothy@apple.com>
2179
2180         Remove TimelineTraceEventProcessor since no current ports use it
2181         https://bugs.webkit.org/show_bug.cgi?id=121171
2182
2183         Reviewed by Joseph Pecoraro.
2184
2185         * CMakeLists.txt:
2186         * GNUmakefile.list.am:
2187         * Target.pri:
2188         * WebCore.vcxproj/WebCore.vcxproj:
2189         * WebCore.vcxproj/WebCore.vcxproj.filters:
2190         * WebCore.xcodeproj/project.pbxproj:
2191         * inspector/InspectorAllInOne.cpp:
2192         * inspector/InspectorClient.h:
2193         * inspector/InspectorInstrumentation.cpp:
2194         * inspector/InspectorInstrumentation.h:
2195         * inspector/InspectorTimelineAgent.cpp:
2196         (WebCore::InspectorTimelineAgent::start):
2197         (WebCore::InspectorTimelineAgent::stop):
2198         * inspector/InspectorTimelineAgent.h:
2199         * inspector/TimelineTraceEventProcessor.cpp: Removed.
2200         * inspector/TimelineTraceEventProcessor.h: Removed.
2201
2202 2013-09-11  Commit Queue  <commit-queue@webkit.org>
2203
2204         Unreviewed, rolling out r155519.
2205         http://trac.webkit.org/changeset/155519
2206         https://bugs.webkit.org/show_bug.cgi?id=121174
2207
2208         Included regression test fails, and an existing test started
2209         to crash (Requested by ap on #webkit).
2210
2211         * dom/Document.cpp:
2212         (WebCore::Document::hoveredElementDidDetach):
2213         * page/EventHandler.cpp:
2214         (WebCore::EventHandler::EventHandler):
2215         (WebCore::EventHandler::clear):
2216         (WebCore::EventHandler::handleMouseMoveEvent):
2217         (WebCore::EventHandler::scheduleHoverStateUpdate):
2218         (WebCore::EventHandler::hoverTimerFired):
2219         * page/EventHandler.h:
2220
2221 2013-09-11  Anders Carlsson  <andersca@apple.com>
2222
2223         Stop using deleteAllValues in SVG code
2224         https://bugs.webkit.org/show_bug.cgi?id=121172
2225
2226         Reviewed by Antti Koivisto.
2227
2228         Use OwnPtr for values instead.
2229
2230         * rendering/svg/RenderSVGResourceClipper.cpp:
2231         (WebCore::RenderSVGResourceClipper::~RenderSVGResourceClipper):
2232         (WebCore::RenderSVGResourceClipper::removeAllClientsFromCache):
2233         (WebCore::RenderSVGResourceClipper::removeClientFromCache):
2234         (WebCore::RenderSVGResourceClipper::applyClippingToContext):
2235         * rendering/svg/RenderSVGResourceClipper.h:
2236         * rendering/svg/RenderSVGResourceFilter.cpp:
2237         (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
2238         (WebCore::RenderSVGResourceFilter::removeAllClientsFromCache):
2239         (WebCore::RenderSVGResourceFilter::removeClientFromCache):
2240         (WebCore::RenderSVGResourceFilter::applyResource):
2241         (WebCore::RenderSVGResourceFilter::postApplyResource):
2242         (WebCore::RenderSVGResourceFilter::primitiveAttributeChanged):
2243         * rendering/svg/RenderSVGResourceFilter.h:
2244         * rendering/svg/RenderSVGResourceMasker.cpp:
2245         (WebCore::RenderSVGResourceMasker::~RenderSVGResourceMasker):
2246         (WebCore::RenderSVGResourceMasker::removeAllClientsFromCache):
2247         (WebCore::RenderSVGResourceMasker::removeClientFromCache):
2248         (WebCore::RenderSVGResourceMasker::applyResource):
2249         * rendering/svg/RenderSVGResourceMasker.h:
2250
2251 2013-09-10  Simon Fraser  <simon.fraser@apple.com>
2252
2253         REGRESSION (143483): overflow:hidden doesn't quash big repaints from text-indent: -9999px
2254         https://bugs.webkit.org/show_bug.cgi?id=121137
2255
2256         Reviewed by Ryosuke Niwa.
2257         
2258         The change in r143483 made it so that negative text-indent gets added
2259         to visual oveflow even when we have overflow:hidden, which is really bad
2260         because it causes large repaints (and large layers) for a common-on-the-web
2261         pattern.
2262         
2263         Revert the change, and add a new test to make sure it doesn't regress.
2264         
2265         I can't reproduce the bug it was trying to fix with the change reverted.
2266
2267         Tests: compositing/geometry/negative-text-indent-with-overflow-hidden-layer.html
2268                fast/repaint/negative-text-indent-with-overflow-hidden.html
2269
2270         * rendering/RenderBlock.cpp:
2271         (WebCore::RenderBlock::computeOverflow):
2272
2273 2013-09-10  Simon Fraser  <simon.fraser@apple.com>
2274
2275         Optionally show visual and layout overflow rects in layer tree dumps
2276         https://bugs.webkit.org/show_bug.cgi?id=121135
2277
2278         Reviewed by Beth Dakin.
2279
2280         When calling showLayerTree() from the debugger, show overflow rects
2281         (visaul and layout) for renderers.
2282         
2283         Does not affect test output.
2284
2285         * rendering/RenderLayer.cpp:
2286         (showLayerTree): Pass the new flag to show overflow rects.
2287         * rendering/RenderTreeAsText.cpp:
2288         (WebCore::RenderTreeAsText::writeRenderObject): Print the rects.
2289         (WebCore::write): Don't force layout on subframes if the "dont' layout"
2290         flag is set.
2291         * rendering/RenderTreeAsText.h: New flag.
2292
2293 2013-09-11  Chris Fleizach  <cfleizach@apple.com>
2294
2295         AX: WebKit exposes AXTitleUIElement incorrectly on checkboxes and radio buttons
2296         https://bugs.webkit.org/show_bug.cgi?id=121039
2297
2298         Reviewed by Sam Weinig.
2299
2300         Stop hiding <label> elements for radio buttons and checkboxes (and using the text inside them for the AXTitle).
2301         Instead, expose the <label> element as the titleUIElement if appropriate for the input.
2302
2303         This implies:
2304            1) The web will no longer match MacOS behavior exactly (the text and the checkbox control are combined on MacOS into one element)
2305            2) But, the user will now be able to explore the <label> element which may include links or other important controls.
2306         I think sacrificing 1) here is a good tradeoff. The user will likely never know the difference in terms of output.
2307
2308         Test: platform/mac/accessibility/label-elements-exposed-as-title-ui-elements.html
2309
2310         * accessibility/AccessibilityNodeObject.cpp:
2311         (WebCore::AccessibilityNodeObject::titleElementText):
2312         (WebCore::AccessibilityNodeObject::title):
2313         * accessibility/AccessibilityRenderObject.cpp:
2314         (WebCore::AccessibilityRenderObject::hasTextAlternative):
2315         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
2316
2317 2013-09-11  Andreas Kling  <akling@apple.com>
2318
2319         Remove unnecessary Document::frame() null checks in rendererIsNeeded().
2320         <https://webkit.org/b/121166>
2321
2322         Reviewed by Anders Carlsson.
2323
2324         rendererIsNeeded() is only called during style resolve, which only happens
2325         while there's a Frame present.
2326
2327         * html/HTMLEmbedElement.cpp:
2328         (WebCore::HTMLEmbedElement::rendererIsNeeded):
2329         * html/HTMLMediaElement.cpp:
2330         (WebCore::HTMLMediaElement::rendererIsNeeded):
2331         * html/HTMLObjectElement.cpp:
2332         * html/HTMLObjectElement.h:
2333
2334 2013-09-11  Csaba Osztrogon√°c  <ossy@webkit.org>
2335
2336         ARM buildfix after r155491
2337         https://bugs.webkit.org/show_bug.cgi?id=121152
2338
2339         Reviewed by Anders Carlsson.
2340
2341         FELightingNEON.cpp and FELightingNEON.h is inside COMPILER(GCC) guard, so it's safe to use GCC attribute.
2342
2343         * platform/graphics/cpu/arm/filters/FELightingNEON.cpp: Use __aligned__ GCC attribute directly.
2344         * platform/graphics/cpu/arm/filters/FELightingNEON.h: Use __aligned__ GCC attribute instead of ugly template magic.
2345         (WebCore::FELighting::platformApplyNeon):
2346
2347 2013-09-11  peavo@outlook.com  <peavo@outlook.com>
2348
2349         [WinCairo] Compile errors.
2350         https://bugs.webkit.org/show_bug.cgi?id=121153
2351
2352         Reviewed by Brent Fulgham.
2353
2354         * page/win/FrameCairoWin.cpp:
2355         (WebCore::imageFromRect): Return empty GDIObject.
2356         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
2357         (WebCore::FontCustomPlatformData::fontPlatformData): Get actual handle from GDIObject.
2358
2359 2013-09-11  Darin Adler  <darin@apple.com>
2360
2361         Rework CSS parser, eliminating "floating" concept and using %destructor
2362         https://bugs.webkit.org/show_bug.cgi?id=121161
2363
2364         Reviewed by Antti Koivisto.
2365
2366         This is some basic improvement, but there is still room for a lot more
2367         consistent approach and formatting in this file. There is a mix of code that
2368         works by side effects in the CSSParser class and code that works with the
2369         values that bison generates in the union that is more or less random. And
2370         the data structures seem too costly, with too much heap allocation. And the
2371         CSSParser class has grown massive, with a mix of both function for use by
2372         code that wants to trigger parsing, and helper functions called by code in
2373         the grammar file. All of that can benefit from more refinement in the future.
2374
2375         * css/CSSGrammar.y.in: Made some incremental improvements to the structure
2376         of the grammar file, including:
2377         - Breaking up the %union so types are declared next to their use
2378         - Eliminating one shift/reduce conflict caused by two "maybe_space" in a row
2379         - Breaking the conditional sections out into their own sections instead of
2380           scattering them in with the other code.
2381         - Eliminating unused return values in productions such as charset,
2382           ignored_charset, namespace, margin_box, invalid_rule, save_block,
2383           invalid_at, and declarations_and_margins.
2384         - Adding %destructor to productions that return values that need to be deleted
2385           or deref'd. This removes the need for CSSParser to separately track these
2386           as "floating" to clean up in case of errors.
2387         - Removing unneeded productions such as media_feature, region_selector,
2388           attr_name, and medium.
2389         - Removing explicit code blocks that just say "$$ = $1" or empty blocks when
2390           there is no return type, since those are default.
2391         - Formatting many productions on single lines since I find them easier to read.
2392           Later I think we could make many more CSSParser functions and make even
2393           more of the production single lines in the grammar file.
2394         - Using adoptPtr, adoptRef, delete, deref, leakPtr, and leakRef to put
2395           heap allocated values into and out of the union without storage leaks.
2396           
2397         * css/CSSParser.cpp:
2398         (WebCore::CSSParser::~CSSParser): Remove the now-unneeded deleteAllValues for
2399         the various colections of floating things.
2400         (WebCore::CSSParser::createFilterRule): Don't put the rule into m_parsedRules,
2401         just return a PassRefPtr instead.
2402         (WebCore::CSSParser::createImportRule): Ditto.
2403         (WebCore::CSSParser::createMediaRule): Ditto.
2404         (WebCore::CSSParser::createEmptyMediaRule): Ditto.
2405         (WebCore::CSSParser::createSupportsRule): Ditto.
2406         (WebCore::CSSParser::createKeyframesRule): Ditto.
2407         (WebCore::CSSParser::createStyleRule): Ditto.
2408         (WebCore::CSSParser::createFontFaceRule): Ditto.
2409         (WebCore::CSSParser::createHostRule): Ditto.
2410         (WebCore::CSSParser::rewriteSpecifiersWithNamespaceIfNeeded): Got rid of the
2411         unused return value from this function and changed it to to take a reference
2412         instead of a pointer.
2413         (WebCore::CSSParser::rewriteSpecifiersWithElementName): Ditto.
2414         (WebCore::CSSParser::rewriteSpecifiers): Changed this to take and return OwnPtr.
2415         (WebCore::CSSParser::createPageRule): Don't put rule into m_parsedRules, return
2416         PassRefPtr instead.
2417         (WebCore::CSSParser::createSelectorVector): Added. Used to implement the
2418         optimization where we recycle a single selector vector. Not sure we still need
2419         this, or maybe we need more optimizations like it, but for now keep it.
2420         (WebCore::CSSParser::recycleSelectorVector): Ditto.
2421         (WebCore::CSSParser::createRegionRule): Don't put rule into m_parsedRules, return
2422         PassRefPtr instead.
2423         (WebCore::CSSParser::createMarginAtRule): Got rid of unused return value.
2424         When this function is implemented for real, we might add a return value.
2425         (WebCore::CSSParser::createKeyframe): Don't put keyframe into m_parsedKeyframes,
2426         return PassRefPtr instead.
2427         (WebCore::CSSParser::createViewportRule): Don't put rule into m_parsedRules, return
2428         PassRefPtr instead.
2429
2430         * css/CSSParser.h: Removed many now-needed functions to manage floating items.
2431         Changed rule creation functions to return PassRefPtr. Other changes as mentioned above.
2432
2433         * css/CSSParserValues.cpp:
2434         (WebCore::destroy): Added.
2435         (WebCore::CSSParserValueList::~CSSParserValueList): Updated to call destroy.
2436         * css/CSSParserValues.h: Ditto.
2437
2438 2013-09-11  Mario Sanchez Prada  <mario.prada@samsung.com>
2439
2440         [GTK] Remove Gail dependency from build system for GTK3
2441         https://bugs.webkit.org/show_bug.cgi?id=119673
2442
2443         Reviewed by Gustavo Noronha Silva.
2444
2445         * GNUmakefile.am: Removed GAIL_CFLAGS.
2446         * PlatformGTK.cmake: Removed GAIL3_INCLUDE_DIRS and GAIL3_LIBRARIES.
2447
2448 2013-09-11  Andreas Kling  <akling@apple.com>
2449
2450         Remove Widget::widgetPositionsUpdated().
2451         <https://webkit.org/b/121160>
2452
2453         Reviewed by Anders Carlsson.
2454
2455         Remove this no-op virtual that was only used by chromium.
2456
2457 2013-09-11  Andreas Kling  <akling@apple.com>
2458
2459         Page::backForward() should return a reference.
2460         <https://webkit.org/b/121151>
2461
2462         Reviewed by Anders Carlsson.
2463
2464         There is always a BackForwardController, so make backForward() return a reference.
2465         Also made it store a Page& internally since it's tied to the lifetime of Page.
2466
2467 2013-09-11  Mikhail Pozdnyakov  <mikhail.pozdnyakov@intel.com>
2468
2469         WTF::OwnPtr should behave similarly with the rest of WTF smart pointers
2470         https://bugs.webkit.org/show_bug.cgi?id=120773
2471
2472         Reviewed by Anders Carlsson.
2473
2474         Before the change OwnPtr could take either the pointer type or the pointed-to type, which was bad
2475         for the following reasons:
2476         - It distinguished OwnPtr behaviour from other WTF smart pointer classes behaviour (so it was confusing for the Client).
2477         - It was potential error-prone as it actually modified the type given by the Client in opaque way.
2478
2479         * page/animation/CSSPropertyAnimation.cpp:
2480         (WebCore::PropertyWrapperShadow::blendSimpleOrMatchedShadowLists):
2481         (WebCore::PropertyWrapperShadow::blendMismatchedShadowLists):
2482
2483 2013-09-11  Andreas Kling  <akling@apple.com>
2484
2485         FrameView: Tighten widget handling code.
2486         <https://webkit.org/b/121155>
2487
2488         Reviewed by Antti Koivisto.
2489
2490         Harden typing in this code to work with RenderEmbeddedObject& instead of RenderObject*.
2491         Functions and members renamed to reflect that they only deal with embedded objects.
2492
2493         * html/HTMLPlugInImageElement.h:
2494         (WebCore::toHTMLPlugInImageElement):
2495
2496             Add a toHTMLPlugInImageElement that takes an Element&.
2497
2498         * html/HTMLTagNames.in:
2499
2500             Generate type helpers for applet and embed elements.
2501
2502         * page/FrameView.h:
2503         * page/FrameView.cpp:
2504         (WebCore::FrameView::addEmbeddedObjectToUpdate):
2505         (WebCore::FrameView::removeEmbeddedObjectToUpdate):
2506         (WebCore::FrameView::updateEmbeddedObjects):
2507         (WebCore::FrameView::updateEmbeddedObject):
2508
2509             Re-ordered this function in early return style. Change locals into references.
2510
2511         * rendering/RenderEmbeddedObject.cpp:
2512         (WebCore::RenderEmbeddedObject::~RenderEmbeddedObject):
2513         (WebCore::RenderEmbeddedObject::layout):
2514         * rendering/RenderSnapshottedPlugIn.cpp:
2515         (WebCore::RenderSnapshottedPlugIn::layout):
2516
2517             Updated for new FrameView function signatures.
2518
2519 2013-09-11  Patrick Gansterer  <paroga@webkit.org>
2520
2521         [CMake] Split out generic Windows files into its own file
2522         https://bugs.webkit.org/show_bug.cgi?id=119514
2523
2524         Reviewed by Gyuyoung Kim.
2525
2526         This allows us to add smaller CMakeLists.txt files when
2527         adding additional Windows ports.
2528
2529         * PlatformWin.cmake: Copied from Source/WebCore/PlatformWinCE.cmake.
2530         * PlatformWinCE.cmake:
2531
2532 2013-09-11  Mario Sanchez Prada  <mario.prada@samsung.com>
2533
2534         [GTK] Get rid of Pango/Gail dependencies in accessibility for ATK
2535         https://bugs.webkit.org/show_bug.cgi?id=114867
2536
2537         Reviewed by Martin Robinson.
2538
2539         Removed all trace of Gail and Pango specific code from the AtkText
2540         implementation, now everything has been reimplemented.
2541
2542         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2543         (webkitAccessibleTextGetTextForOffset): Removed fallback code
2544         relying in Gail/Pango, now all the related code has been
2545         removed. Also, replaced the collection of if statements with a
2546         switch, for better readability of the code.
2547
2548 2013-09-11  Allan Sandfeld Jensen  <allan.jensen@digia.com>
2549
2550         Mouseenter/-leave not triggered when element under cursor is moved/removed
2551         https://bugs.webkit.org/show_bug.cgi?id=120786
2552
2553         Reviewed by Antonio Gomes.
2554
2555         When a hovered element is detached it will now emit a fake mousemove event
2556         similar to what happens when a hovered element has CSS display set to none.
2557
2558         Test: fast/events/mouseenterleave-detached-element.html
2559
2560         * dom/Document.cpp:
2561         (WebCore::Document::hoveredElementDidDetach):
2562         * page/EventHandler.cpp:
2563         (WebCore::EventHandler::EventHandler):
2564         (WebCore::EventHandler::clear):
2565         (WebCore::EventHandler::handleMouseMoveEvent):
2566         * page/EventHandler.h:
2567
2568 2013-09-11  Krzysztof Czech  <k.czech@samsung.com>
2569
2570         [ATK] Adds mapping MenuItemRadioRole to ATK
2571         https://bugs.webkit.org/show_bug.cgi?id=121149
2572
2573         Reviewed by Mario Sanchez Prada.
2574
2575         Adds mapping MenuItemRadioRole to ATK.
2576
2577         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2578         (atkRole):
2579
2580 2013-09-10  Mario Sanchez Prada  <mario.prada@samsung.com>
2581
2582         [GTK] Reimplement atk_text_get_text_*_offset for LINE boundaries
2583         https://bugs.webkit.org/show_bug.cgi?id=114872
2584
2585         Reviewed by Gustavo Noronha Silva.
2586
2587         Re-implement these functions without using GailTextUtil nor Pango.
2588
2589         * accessibility/atk/WebKitAccessibleInterfaceText.cpp:
2590         (lineAtPositionForAtkBoundary): New helper function to find the
2591         line at a given position considering values of AtkTextBoundary.
2592         (webkitAccessibleTextLineForBoundary): New function,
2593         implementing atk_text_get_text_*_offset for LINE.
2594         (webkitAccessibleTextGetTextForOffset): Replace usage of Gail for
2595         LINE boundaries with webkitAccessibleTextLineForBoundary().
2596
2597 2013-09-11  Andreas Kling  <akling@apple.com>
2598
2599         Missed one BackForwardListImpl.h in the last commit.
2600
2601         * history/BackForwardList.cpp:
2602
2603 2013-09-11  Andreas Kling  <akling@apple.com>
2604
2605         Rename BackForwardListImpl.{cpp,h} => BackForwardClient.{cpp,h}
2606
2607         Rubber-stamped by Antti Koivisto.
2608
2609 2013-09-10  Ryosuke Niwa  <rniwa@webkit.org>
2610
2611         CSSProperty::isInheritedProperty is large
2612         https://bugs.webkit.org/show_bug.cgi?id=121083
2613
2614         Reviewed by Sam Weinig.
2615
2616         Support [Inherited] option in makeprop.pl and generate CSSProperty::isInheritedProperty in CSSPropertyNames.cpp
2617         using a lookup table. We can pack the table better by using bitfield in the future but I think boolean lookup
2618         table is a good first cut.
2619
2620         Updated CSSPropertyNames.in and SVGCSSPropertyNames.in to use the new option and removed the old code from
2621         CSSProperty.cpp.
2622
2623         * css/CSSProperty.cpp:
2624         * css/CSSPropertyNames.in:
2625         * css/SVGCSSPropertyNames.in:
2626         * css/makeprop.pl:
2627
2628 2013-09-11  Andreas Kling  <akling@apple.com>
2629
2630         Rename BackForwardListImpl => BackForwardList.
2631         <https://webkit.org/b/121146>
2632
2633         Reviewed by Antti Koivisto.
2634
2635         Nuke another old FIXME.
2636
2637 2013-09-11  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2638
2639         Generate more HTML type checks and casting
2640         https://bugs.webkit.org/show_bug.cgi?id=121080
2641
2642         Reviewed by Andreas Kling.
2643
2644         Clean-up remained functions of HTML elements using auto-generated isFooElement(),
2645         and replace toFooElement() with ELEMENT_TYPE_CASTS() macro.
2646
2647         Besides this patch clean-up unnecessary checks which are being supported by
2648         auto-generated isFooElement().
2649
2650         No new tests, no behavior change.
2651
2652         * accessibility/atk/AXObjectCacheAtk.cpp:
2653         (WebCore::notifyChildrenSelectionChange):
2654         * html/HTMLFrameElementBase.h:
2655         (WebCore::toHTMLFrameElementBase):
2656         * html/HTMLIFrameElement.h:
2657         * html/HTMLImageLoader.cpp:
2658         (WebCore::HTMLImageLoader::dispatchLoadEvent):
2659         (WebCore::HTMLImageLoader::notifyFinished):
2660         * html/HTMLObjectElemenaeh:
2661         * html/HTMLOptionsCollection.cpp:
2662         (WebCore::HTMLOptionsCollection::HTMLOptionsCollection):
2663         * html/HTMLSelectElement.h:
2664         * html/HTMLTagNames.in:
2665         * html/HTMLVideoElement.h:
2666         * html/shadow/HTMLContentElement.h:
2667         * loader/ImageLoader.cpp:
2668         (WebCore::ImageLoader::dispatchPendingBeforeLoadEvent):
2669         * loader/archive/cf/LegacyWebArchive.cpp:
2670         (WebCore::LegacyWebArchive::create):
2671         * page/PageSerializer.cpp:
2672         (WebCore::frameOwnerURLAttributeName):
2673         * page/SpatialNavigation.cpp:
2674         (WebCore::canScrollInDirection):
2675         * platform/gtk/PasteboardGtk.cpp:
2676         (WebCore::getURLForImageNode):
2677         * plugins/IFrameShimSupport.cpp:
2678         (WebCore::getPluginOcclusions):
2679         * rendering/HitTestResult.cpp:
2680         (WebCore::HitTestResult::mediaSupportsFullscreen):
2681         (WebCore::HitTestResult::mediaElement):
2682         (WebCore::HitTestResult::enterFullscreenForVideo):
2683         (WebCore::HitTestResult::mediaIsVideo):
2684
2685         * rendering/RenderLayerCompositor.cpp:
2686         (WebCore::RenderLayerCompositor::requiresCompositingForVideo):
2687         * rendering/RenderListBox.cpp:
2688         (WebCore::RenderListBox::RenderListBox):
2689         * rendering/RenderMenuList.cpp:
2690         (WebCore::RenderMenuList::RenderMenuList):
2691         * testing/Internals.cpp:
2692         (WebCore::Internals::isSelectPopupVisible):
2693
2694 2013-09-11  Chris Fleizach  <cfleizach@apple.com>
2695
2696         AX: Mac platform is not using accessibilityTitle from the Base implementation
2697         https://bugs.webkit.org/show_bug.cgi?id=121109
2698
2699         Reviewed by Sam Weinig.
2700
2701         Remove the Mac platform overrides of accessibilityTitle, Description, HelpText. 
2702         The Base implementation has these and we can share them between iOS and Mac
2703
2704         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
2705         (-[WebAccessibilityObjectWrapperBase accessibilityTitle]):
2706         (-[WebAccessibilityObjectWrapperBase accessibilityDescription]):
2707         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2708
2709 2013-09-11  Andreas Kling  <akling@apple.com>
2710
2711         Rename BackForwardList.h => BackForwardClient.h
2712
2713         Rubber-stamped by Antti Koivisto.
2714
2715 2013-09-11  Andreas Kling  <akling@apple.com>
2716
2717         Rename BackForwardList => BackForwardClient.
2718         <https://webkit.org/b/121143>
2719
2720         Reviewed by Antti Koivisto.
2721
2722         Nuke a 3 year old FIXME about renaming this class.
2723
2724 2013-09-10  Daniel Bates  <dabates@apple.com>
2725
2726         [iOS] Upstream text autosizing
2727         https://bugs.webkit.org/show_bug.cgi?id=121111
2728
2729         Reviewed by Andy Estes and Sam Weinig.
2730
2731         Tests: platform/iphone-simulator/text-autosizing/anonymous-block.html
2732                platform/iphone-simulator/text-autosizing/contenteditable.html
2733                platform/iphone-simulator/text-autosizing/first-letter.html
2734                platform/iphone-simulator/text-autosizing/font-family-case-insensitive.html
2735                platform/iphone-simulator/text-autosizing/lists.html
2736                platform/iphone-simulator/text-autosizing/overflow.html
2737                platform/iphone-simulator/text-autosizing/percent-adjust-length-line-height.html
2738                platform/iphone-simulator/text-autosizing/percent-adjust-number-line-height.html
2739                platform/iphone-simulator/text-autosizing/percent-adjust-percent-line-height.html
2740
2741         * WebCore.exp.in:
2742         * WebCore.xcodeproj/project.pbxproj:
2743         * css/CSSComputedStyleDeclaration.cpp:
2744         (WebCore::ComputedStyleExtractor::propertyValue):
2745         * css/CSSParser.cpp:
2746         (WebCore::isValidKeywordPropertyAndValue):
2747         (WebCore::CSSParser::parseValue):
2748         * css/CSSProperty.cpp:
2749         (WebCore::CSSProperty::isInheritedProperty):
2750         * css/CSSPropertyNames.in: Add property -webkit-text-size-adjust.
2751         * css/DeprecatedStyleBuilder.cpp:
2752         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue): Added.
2753         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyInitialValue): Added.
2754         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyInheritValue): Added.
2755         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::createHandler): Added.
2756         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
2757         * css/StyleResolver.cpp:
2758         (WebCore::StyleResolver::updateFont):
2759         (WebCore::StyleResolver::applyProperties): Add COMPILE_ASSERT to ensure that
2760         all properties that affect font size, including -webkit-text-size-adjust, are
2761         resolved before properties that depend on them; see <rdar://problem/13522835>.
2762         (WebCore::StyleResolver::applyProperty):
2763         (WebCore::StyleResolver::checkForTextSizeAdjust): Added.
2764         * css/StyleResolver.h:
2765         * dom/Document.cpp:
2766         (WebCore::TextAutoSizingTraits::constructDeletedValue): Added.
2767         (WebCore::TextAutoSizingTraits::isDeletedValue): Added.
2768         (WebCore::Document::detach):
2769         (WebCore::Document::addAutoSizingNode): Added.
2770         (WebCore::Document::validateAutoSizingNodes): Added.
2771         (WebCore::Document::resetAutoSizingNodes): Added.
2772         * dom/Document.h:
2773         * editing/EditingStyle.cpp:
2774         * page/Frame.h: Add declarations for setTextAutosizingWidth(), textAutosizingWidth().
2775         * page/FrameView.cpp:
2776         (WebCore::FrameView::layout):
2777         * page/Settings.in: Generate setter and getter for setting minimumZoomFontSize.
2778         * platform/graphics/Font.h:
2779         (WebCore::Font::equalForTextAutoSizing): Added.
2780         * platform/graphics/FontDescription.cpp:
2781         (WebCore::FontDescription::familiesEqualForTextAutoSizing): Added.
2782         * platform/graphics/FontDescription.h:
2783         (WebCore::FontDescription::equalForTextAutoSizing): Added.
2784         * rendering/RenderBlock.cpp:
2785         (WebCore::RenderBlock::RenderBlock):
2786         (WebCore::isVisibleRenderText): Added.
2787         (WebCore::resizeTextPermitted): Added.
2788         (WebCore::RenderBlock::immediateLineCount): Added.
2789         (WebCore::isNonBlocksOrNonFixedHeightListItems): Added.
2790         (WebCore::oneLineTextMultiplier): Added.
2791         (WebCore::textMultiplier): Added.
2792         (WebCore::RenderBlock::adjustComputedFontSizes): Added.
2793         * rendering/RenderBlock.h:
2794         (WebCore::RenderBlock::resetComputedFontSize): Added.
2795         * rendering/RenderObject.cpp:
2796         (WebCore::RenderObject::traverseNext): Added.
2797         (WebCore::includeNonFixedHeight): Added.
2798         (WebCore::RenderObject::adjustComputedFontSizesOnBlocks): Added.
2799         (WebCore::RenderObject::resetTextAutosizing): Added.
2800         * rendering/RenderObject.h:
2801         * rendering/RenderText.cpp:
2802         (WebCore::RenderText::RenderText):
2803         * rendering/RenderText.h:
2804         (WebCore::RenderText::candidateComputedTextSize): Added.
2805         (WebCore::RenderText::setCandidateComputedTextSize): Added.
2806         * rendering/style/RenderStyle.cpp:
2807         (WebCore::computeFontHash):
2808         (WebCore::RenderStyle::hashForTextAutosizing): Added.
2809         (WebCore::RenderStyle::equalForTextAutosizing): Added.
2810         (WebCore::RenderStyle::changeRequiresLayout):
2811         (WebCore::RenderStyle::specifiedLineHeight): Added; iOS-specific variant.
2812         We should reconcile this getter with the getter of the same name that is
2813         compiled when building with IOS_TEXT_AUTOSIZING disabled.
2814         (WebCore::RenderStyle::setSpecifiedLineHeight): Added.
2815         * rendering/style/RenderStyle.h:
2816         (WebCore::RenderStyle::initialSpecifiedLineHeight): Added.
2817         (WebCore::RenderStyle::initialTextSizeAdjust): Added.
2818         (WebCore::RenderStyle::setTextSizeAdjust): Added.
2819         (WebCore::RenderStyle::textSizeAdjust): Added.
2820         * rendering/style/StyleInheritedData.cpp:
2821         (WebCore::StyleInheritedData::StyleInheritedData):
2822         (WebCore::StyleInheritedData::operator==):
2823         * rendering/style/StyleInheritedData.h:
2824         * rendering/style/StyleRareInheritedData.cpp:
2825         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2826         (WebCore::StyleRareInheritedData::operator==):
2827         * rendering/style/StyleRareInheritedData.h:
2828         * rendering/style/TextSizeAdjustment.h: Added.
2829         (TextSizeAdjustment::TextSizeAdjustment):
2830         (TextSizeAdjustment::percentage):
2831         (TextSizeAdjustment::multiplier):
2832         (TextSizeAdjustment::isAuto):
2833         (TextSizeAdjustment::isNone):
2834         (TextSizeAdjustment::isPercentage):
2835         (TextSizeAdjustment::operator == ):
2836         (TextSizeAdjustment::operator != ):
2837
2838 2013-09-10  Chris Fleizach  <cfleizach@apple.com>
2839
2840         AX: AXValue/AXMenuItemMarkChar not defined for menuitemradio (should be false (0) with aria-checked=mixed | undefined)
2841         https://bugs.webkit.org/show_bug.cgi?id=120372
2842
2843         Reviewed by Mario Sanchez Prada.
2844
2845         Add new roles to make the distinction between menu item, menu item radio and menu item checkbox.
2846         Expose AXValue for menu items, so that they can convey the, on/off/mixed state of aria-checked.
2847
2848         Test: platform/mac/accessibility/menu-item-values.html
2849
2850         * accessibility/AccessibilityNodeObject.cpp:
2851         (WebCore::AccessibilityNodeObject::isMenuRelated):
2852         (WebCore::AccessibilityNodeObject::isMenuItem):
2853         (WebCore::AccessibilityNodeObject::isChecked):
2854         (WebCore::AccessibilityNodeObject::actionElement):
2855         (WebCore::AccessibilityNodeObject::visibleText):
2856         (WebCore::AccessibilityNodeObject::title):
2857         * accessibility/AccessibilityObject.cpp:
2858         (WebCore::createARIARoleMap):
2859         (WebCore::AccessibilityObject::checkboxOrRadioValue):
2860         * accessibility/AccessibilityObject.h:
2861         * accessibility/AccessibilityRenderObject.cpp:
2862         (WebCore::AccessibilityRenderObject::computeAccessibilityIsIgnored):
2863         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
2864         (-[WebAccessibilityObjectWrapper accessibilityCanFuzzyHitTest]):
2865         (-[WebAccessibilityObjectWrapper accessibilityTraits]):
2866         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2867         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
2868         (createAccessibilityRoleMap):
2869         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
2870
2871 2013-09-10  Anders Carlsson  <andersca@apple.com>
2872
2873         Remove wtf/Alignment.h
2874         https://bugs.webkit.org/show_bug.cgi?id=121077
2875
2876         Reviewed by Andreas Kling.
2877
2878         * platform/PODArena.h:
2879         (WebCore::PODArena::minAlignment):
2880         * platform/graphics/cpu/arm/filters/FELightingNEON.h:
2881         (WebCore::FELighting::platformApplyNeon):
2882
2883 2013-09-10  Zoltan Horvath  <zoltan@webkit.org>
2884
2885         [Qt] Add FloatingObjects.h to Target.pri
2886         https://bugs.webkit.org/show_bug.cgi?id=121117
2887
2888         Reviewed by Andreas Kling.
2889
2890         No new tests, no behavior change.
2891
2892         * Target.pri:
2893
2894 2013-09-10  Sergio Correia  <sergio.correia@openbossa.org>
2895
2896         Fix EFL build after r155477
2897         https://bugs.webkit.org/show_bug.cgi?id=121126
2898
2899         Reviewed by Antonio Gomes.
2900
2901         No new tests, build fix.
2902
2903         * CMakeLists.txt: MediaStreamComponent.cpp and MediaStreamDescriptor.cpp
2904         were added with an incorrect path.
2905
2906 2013-09-10  Andreas Kling  <akling@apple.com>
2907
2908         AnimationController should have a Frame& internally.
2909         <https://webkit.org/b/121078>
2910
2911         Reviewed by Anders Carlsson.
2912
2913         The AnimationController is owned by the Frame so make the back-pointer
2914         a reference. This knocks off a couple of null checks.
2915
2916 2013-09-10  Anders Carlsson  <andersca@apple.com>
2917
2918         More WTF/Alignment.h removal
2919         https://bugs.webkit.org/show_bug.cgi?id=121125
2920
2921         Reviewed by Andreas Kling.
2922
2923         * platform/PODArena.h:
2924
2925 2013-09-10  Eric Carlson  <eric.carlson@apple.com>
2926
2927         Make MediaStream objects ScriptWrappable
2928         https://bugs.webkit.org/show_bug.cgi?id=120879
2929
2930         Reviewed by Jer Noble.
2931
2932         * Modules/mediastream/MediaStream.h: Inherit from ScriptWrappable.
2933         * Modules/mediastream/MediaStreamTrack.h: Ditto.
2934         * Modules/mediastream/RTCDTMFSender.h: Ditto.
2935         * Modules/mediastream/RTCDataChannel.h: Ditto.
2936         * Modules/mediastream/RTCIceCandidate.h: Ditto.
2937         * Modules/mediastream/RTCPeerConnection.h: Ditto.
2938         * Modules/mediastream/RTCSessionDescription.h: Ditto.
2939         * Modules/mediastream/RTCStatsReport.h: Ditto.
2940         * Modules/mediastream/RTCStatsResponse.h: Ditto.
2941
2942 2013-09-10  Eric Carlson  <eric.carlson@apple.com>
2943
2944         Split MediaStreamDescriptor.h and MediaStreamComponent.h into .h and .cpp
2945         https://bugs.webkit.org/show_bug.cgi?id=120878
2946
2947         Reviewed by Jer Noble.
2948
2949         No new tests, no functional change.
2950
2951         * CMakeLists.txt: Add MediaStreamComponent.cpp and MediaStreamDescriptor.cpp.
2952         * GNUmakefile.list.am: Ditto.
2953
2954         * Modules/mediastream/LocalMediaStream.cpp:
2955         (WebCore::LocalMediaStream::create): MediaStreamDescriptor::create() doesn't take a UUID.
2956
2957         * Modules/mediastream/MediaStream.cpp:
2958         (WebCore::createFromSourceVectors): Ditto.
2959
2960         * WebCore.xcodeproj/project.pbxproj: Add MediaStreamComponent.cpp and MediaStreamDescriptor.cpp.
2961
2962         * platform/mediastream/MediaStreamComponent.cpp: Added.
2963         * platform/mediastream/MediaStreamComponent.h:
2964
2965         * platform/mediastream/MediaStreamDescriptor.cpp: Added.
2966         * platform/mediastream/MediaStreamDescriptor.h:
2967
2968 2013-09-10  Brent Fulgham  <bfulgham@apple.com>
2969
2970         [Windows] Create SharedGDIObject Class Template
2971         https://bugs.webkit.org/show_bug.cgi?id=121037
2972
2973         Reviewed by Anders Carlsson.
2974
2975         * WebCore.vcxproj/WebCore.vcxproj: Remove RefCountedGDIHandle.h, and
2976         add new SharedGDIObject.h file.
2977         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
2978         * platform/graphics/FontPlatformData.h:
2979         (WebCore::FontPlatformData::hfont): Switch to new SharedGDIObject.
2980         * platform/graphics/win/FontPlatformDataCGWin.cpp:
2981         (WebCore::FontPlatformData::FontPlatformData): Ditto.
2982         * platform/graphics/win/FontPlatformDataCairoWin.cpp:
2983         (WebCore::FontPlatformData::FontPlatformData): Ditto.
2984         * platform/graphics/win/FontPlatformDataWin.cpp:
2985         (WebCore::FontPlatformData::FontPlatformData): Ditto.
2986         * platform/graphics/win/RefCountedGDIHandle.h: Removed.
2987         * platform/graphics/win/SharedGDIObject.h: Added.
2988         (WebCore::SharedGDIObject::create):
2989         (WebCore::SharedGDIObject::get):
2990         (WebCore::SharedGDIObject::hash):
2991         (WebCore::SharedGDIObject::SharedGDIObject):
2992
2993 2013-09-10  Tim Horton  <timothy_horton@apple.com>
2994
2995         [mac] PDFDocumentImage should use PDFKit to draw
2996         https://bugs.webkit.org/show_bug.cgi?id=120651
2997         <rdar://problem/12810731>
2998
2999         Unreviewed hopeful build fix.
3000
3001         * platform/graphics/mac/PDFDocumentImageMac.mm:
3002
3003 2013-09-10  Tim Horton  <timothy_horton@apple.com>
3004
3005         [mac] PDFDocumentImage should use PDFKit to draw
3006         https://bugs.webkit.org/show_bug.cgi?id=120651
3007         <rdar://problem/12810731>
3008
3009         Reviewed by Alexey Proskuryakov.
3010
3011         Use PDFKit to draw PDF-in-<img> on Mac, so that annotations in PDF are painted.
3012
3013         Test: fast/images/pdf-as-image-with-annotations.html
3014
3015         * WebCore.xcodeproj/project.pbxproj:
3016         Add PDFDocumentImageMac.mm.
3017
3018         * platform/graphics/cg/PDFDocumentImage.cpp:
3019         (WebCore::PDFDocumentImage::PDFDocumentImage):
3020         We don't need to initialize m_document anymore because it's now a RetainPtr.
3021         Initialize m_hasPage to false.
3022
3023         (WebCore::PDFDocumentImage::~PDFDocumentImage):
3024         We don't need to manually release our CGPDFDocumentRef anymore because it's now a RetainPtr.
3025
3026         (WebCore::PDFDocumentImage::size):
3027         Use expandedIntSize for explicitness.
3028
3029         (WebCore::PDFDocumentImage::applyRotationForPainting):
3030         Rename adjustCTM to applyRotationForPainting, and move the one non-rotation related transformation out.
3031         We need to do this because PDFKit applies the rotation transformation itself, so we don't need to.
3032         Also, explicitly use std::min instead of importing the whole std namespace.
3033
3034         (WebCore::PDFDocumentImage::dataChanged):
3035         Assert that we don't re-enter dataChanged after we've created a document,
3036         because it seems like that shouldn't happen - we only create a document when
3037         we've supposedly received all data, and it would be nice if we didn't have
3038         all this varying code to deal with SharedBuffers changing out from under each other.
3039         Factor the code to create a CGPDFDocumentRef out into createPDFDocument, so we can
3040         replace it with a different implementation that creates a PDFDocument.
3041
3042         (WebCore::PDFDocumentImage::setCurrentPage):
3043         Make all page-number-related things unsigned, since they are in CG and PDFKit,
3044         and add m_hasPage to denote whether we've acquired a valid page yet.
3045         Factor code to retrieve the PDF box bounds into computeBoundsForCurrentPage.
3046         Remove setCurrentPage itself, as we never use a page other than the first page;
3047         we will call computeBoundsForCurrentPage and set hasPage in dataChanged, now.
3048
3049         (WebCore::PDFDocumentImage::draw):
3050         Fix a weird comment.
3051         Factor code that actually draws the PDF out into drawPDFPage.
3052
3053         The rest of the functions in this file are only built for USE(CG) && !PLATFORM(MAC):
3054
3055         (WebCore::PDFDocumentImage::createPDFDocument):
3056         Factored out of dataChanged(). Use the PLATFORM(MAC) way of making a
3057         CGDataProvider from a SharedBuffer everywhere; we're already using it on
3058         iOS, and it should also work for Windows, the only other USE(CG) platform.
3059         Since we only createPDFDocument() after all data has been received, remove
3060         the comment about the SharedBuffer being secretly written to behind its back.
3061
3062         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
3063         Factored out of setCurrentPage().
3064         Use deg2rad since we have it.
3065
3066         (WebCore::PDFDocumentImage::pageCount):
3067         (WebCore::PDFDocumentImage::drawPDFPage):
3068         Factored out of draw().
3069         Reduced an unnecessary transform (we were effectively doing mediaBox.origin - cropBox.origin - mediaBox.origin).
3070
3071         * platform/graphics/cg/PDFDocumentImage.h:
3072         Unindent all the things, as we don't indent the first level inside a namespace scope.
3073         Forward-declare PDFDocument.
3074         Make m_currentPage unsigned as it should be.
3075         Add m_hasPage.
3076         Make m_document a PDFDocument on PLATFORM(MAC) and a CGPDFDocumentRef on other platforms.
3077
3078         * platform/graphics/mac/PDFDocumentImageMac.mm: Added.
3079         Soft-link in PDFKit and specifically the PDFDocument class.
3080
3081         (WebCore::PDFDocumentImage::createPDFDocument):
3082         Create our PDFDocument from the SharedBuffer's NSData directly. This shouldn't be a problem
3083         (with respect to the SharedBuffer's data being appended to in secret), because we've waited
3084         for the document to finish loading before getting here.
3085
3086         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
3087         Ask PDFKit for the page's media and crop boxes; it automatically performs the correct fallback.
3088         Ask PDFKit for the page's rotation.
3089
3090         (WebCore::PDFDocumentImage::pageCount):
3091         Ask PDFKit for the page count.
3092
3093         (WebCore::PDFDocumentImage::drawPDFPage):
3094         Paint the current page of the PDF. Note that we do not apply the rotation here
3095         via applyRotationForPainting because PDFKit will do it itself.
3096         Save and restore two bits of CG state which aren't saved and restored with the
3097         graphics state, as PDFKit can mutate them above us (<rdar://problem/14951759>).
3098
3099         * platform/mac/SoftLinking.h:
3100         I couldn't find any clients of SOFT_LINK_FRAMEWORK_IN_CORESERVICES_UMBRELLA,
3101         so I made it the more generic SOFT_LINK_FRAMEWORK_IN_UMBRELLA, taking the name
3102         of the umbrella framework and the subframework, so I could use it to soft link
3103         Quartz.framework's PDFKit.framework.
3104
3105 2013-09-10  Tim Horton  <timothy_horton@apple.com>
3106
3107         [mac] <progress> has rendering artifacts along the bottom
3108         https://bugs.webkit.org/show_bug.cgi?id=120865
3109         <rdar://problem/11571240>
3110
3111         Reviewed by Simon Fraser.
3112
3113         Allow RenderTheme to force the height of a <progress> bar.
3114
3115         Test: platform/mac/fast/forms/indeterminate-progress-inline-height.html
3116
3117         * rendering/RenderProgress.cpp:
3118         (WebCore::RenderProgress::computeLogicalHeight):
3119         Borrowed from RenderMeter, allow the theme to override the size of the progress bar.
3120
3121         * rendering/RenderProgress.h:
3122         Drive-by add OVERRIDE to a few things.
3123
3124         * rendering/RenderTheme.cpp:
3125         (WebCore::RenderTheme::progressBarRectForBounds):
3126         * rendering/RenderTheme.h:
3127         Add a default implementation of progressBarRectForBounds that just passes the bounds through.
3128
3129         * rendering/RenderThemeMac.h:
3130         * rendering/RenderThemeMac.mm:
3131         (WebCore::RenderThemeMac::progressBarRectForBounds):
3132         Override progressBarRectForBounds; the implementation is factored out of paintProgressBar.
3133
3134         (WebCore::RenderThemeMac::paintProgressBar):
3135         Make use of the factored-out progressBarRectForBounds().
3136
3137         Drive-by apply the device scale factor to the progress bar's image buffer,
3138         so that it is rendered at 2x on appropriate hardware. Also, multiply the
3139         progress animation phase by the device scale factor, as the phase value seems
3140         to be proportional to the actual pixel offset of the animation; without this,
3141         the animation would appear to progress half as slowly in HiDPI.
3142
3143 2013-09-10  Chris Fleizach  <cfleizach@apple.com>
3144
3145         AX: Expose DOM ID and ClassList to AX APIs for automation and AT element hashes
3146         https://bugs.webkit.org/show_bug.cgi?id=120552
3147
3148         Reviewed by Darin Adler.
3149
3150         Add Mac support for exposing the DOM ID and DOM class list so that accessibility
3151         clients can leverage that information.
3152
3153         Test: platform/mac/accessibility/id-class-attributes.html
3154
3155         * accessibility/AccessibilityObject.cpp:
3156         (WebCore::AccessibilityObject::domIdentifier):
3157         (WebCore::AccessibilityObject::domClassList):
3158         * accessibility/AccessibilityObject.h:
3159         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3160         (-[WebAccessibilityObjectWrapper accessibilityAttributeNames]):
3161         (convertStringsToNSArray):
3162         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
3163
3164 2013-09-10  Denis Nomiyama  <d.nomiyama@samsung.com>
3165
3166         [GTK] accessibility/loading-iframe-sends-notification.html is failing
3167         https://bugs.webkit.org/show_bug.cgi?id=98370
3168
3169         Reviewed by Chris Fleizach.
3170
3171         Enabled AXLayoutComplete on the GTK platform.
3172
3173         No new tests are required because this feature will use an existing
3174         accessibility layout test that is currently failing on the GTK+ platform
3175         (e.g. loading-iframe-sends-notification.html).
3176
3177         * accessibility/atk/AXObjectCacheAtk.cpp:
3178         (WebCore::AXObjectCache::postPlatformNotification): Send layout-complete
3179         signal in case of AXLayoutComplete.
3180         * dom/Document.cpp:
3181         (WebCore::Document::implicitClose): Enabled AXLayoutComplete on the GTK
3182         platform.
3183         * page/FrameView.cpp:
3184         (WebCore::FrameView::layout): Enabled AXLayoutComplete on the GTK
3185         platform.
3186
3187 2013-09-09  Brent Fulgham  <bfulgham@apple.com>
3188
3189         [Windows] Change from using OwnPtr<GDI Stuff> to new GDIObject template.
3190         https://bugs.webkit.org/show_bug.cgi?id=120778
3191
3192         Reviewed by Anders Carlsson.
3193
3194         Change code to use a GDI-specific smart pointer, rather than OwnPtr. This
3195         is a first step to simplifying OwnPtr. It also gets rid of some Windows-
3196         specific code in WTF.
3197
3198         * WebCore.vcxproj/WebCore.vcxproj: Add the new header file.
3199         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
3200         * page/win/FrameCGWin.cpp:
3201         (WebCore::imageFromRect): Switch to GDIObject.
3202         * page/win/FrameCairoWin.cpp:
3203         (WebCore::imageFromRect): Switch to GDIObject.
3204         * page/win/FrameWin.cpp:
3205         (WebCore::imageFromSelection): Switch to GDIObject.
3206         (WebCore::Frame::dragImageForSelection): Ditto.
3207         (WebCore::Frame::nodeImage): Ditto.
3208         * page/win/FrameWin.h:
3209         * platform/graphics/ca/win/CACFLayerTreeHost.cpp:
3210         (WebCore::getDirtyRects): Switch from OwnPtr to GDIObject.
3211         * platform/graphics/win/FontCacheWin.cpp:
3212         (WebCore::createGDIFont): Switch to GDIObject.
3213         (WebCore::FontCache::createFontPlatformData): Ditto.
3214         * platform/graphics/win/FontCustomPlatformData.cpp:
3215         (WebCore::FontCustomPlatformData::fontPlatformData): Switch to GDIObject.
3216         * platform/graphics/win/FontCustomPlatformDataCairo.cpp:
3217         (WebCore::FontCustomPlatformData::fontPlatformData): Switch to GDIObject.
3218         * platform/graphics/win/GraphicsContextCGWin.cpp:
3219         (WebCore::GraphicsContext::releaseWindowsContext): Switch to GDIObject.
3220         * platform/graphics/win/GraphicsContextCairoWin.cpp:
3221         (WebCore::GraphicsContext::releaseWindowsContext): Switch to GDIObject.
3222         * platform/graphics/win/GraphicsContextWin.cpp:
3223         (WebCore::GraphicsContext::getWindowsContext): Switch to GDIObject.
3224         * platform/graphics/win/SimpleFontDataWin.cpp:
3225         (WebCore::SimpleFontData::platformCreateScaledFontData): Switch to GDIObject.
3226         * platform/win/CursorWin.cpp:
3227         (WebCore::createSharedCursor): Switch to GDIObject.
3228         * platform/win/DragImageCGWin.cpp:
3229         (WebCore::scaleDragImage): Switch to GDIObject.
3230         (WebCore::createDragImageFromImage):
3231         * platform/win/DragImageCairoWin.cpp: 
3232         (WebCore::scaleDragImage): Switch to GDIObject.
3233         (WebCore::createDragImageFromImage): Ditto.
3234         * platform/win/DragImageWin.cpp:
3235         (WebCore::createDragImageForLink): Switch to GDIObject.
3236         * platform/win/PasteboardWin.cpp:
3237         (WebCore::Pasteboard::writeImage): Switch to GDIObject.
3238         * platform/win/ScrollbarThemeWin.cpp:
3239         (WebCore::ScrollbarThemeWin::paintTrackPiece): Switch to GDIObject.
3240         * plugins/win/PluginViewWin.cpp:
3241         (WebCore::PluginView::updatePluginWidget): Switch to GDIObject.
3242         (WebCore::PluginView::snapshot): Ditto.
3243         * rendering/RenderThemeWin.cpp:
3244         (WebCore::drawControl): Switch to GDIObject.
3245
3246 2013-09-10  Allan Sandfeld Jensen  <allan.jensen@digia.com>
3247
3248         REGRESSION (r147454): Youtube annotation links to new window broken
3249         https://bugs.webkit.org/show_bug.cgi?id=114242
3250
3251         Reviewed by Anders Carlsson.
3252
3253         Set the UserGestureIndicator to allow popups the same way the issue was solved for WebKit2.
3254
3255         * plugins/PluginView.cpp:
3256         (WebCore::PluginView::performRequest):
3257
3258 2013-09-10  Alberto Garcia  <berto@igalia.com>
3259
3260         [GTK] The code generator produces a warning if a parameter can be NULL
3261         https://bugs.webkit.org/show_bug.cgi?id=121093
3262
3263         Reviewed by Christophe Dumez.
3264
3265         Return an empty string instead of an undefined value if a
3266         particular parameter doesn't need to be checked.
3267
3268         * bindings/scripts/CodeGeneratorGObject.pm:
3269         (GetGReturnMacro):
3270
3271 2013-09-10  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3272
3273         MediaStream API: Enhance MediaStreamDescriptor add/remove component
3274         https://bugs.webkit.org/show_bug.cgi?id=120874
3275
3276         Merge blink https://chromium.googlesource.com/chromium/blink/+/67fcacf13ce922a762d7a1c6fb9e1b8e51e662ea
3277
3278         Reviewed by Eric Carlson.
3279
3280         No new tests needed.
3281
3282         * Modules/mediastream/MediaStream.cpp:
3283         (WebCore::MediaStream::addTrack):
3284         (WebCore::MediaStream::removeTrack):
3285         (WebCore::MediaStream::addRemoteTrack):
3286         (WebCore::MediaStream::removeRemoteTrack):
3287         * platform/mediastream/MediaStreamDescriptor.h:
3288         (WebCore::MediaStreamDescriptor::addRemoteTrack):
3289         (WebCore::MediaStreamDescriptor::removeRemoteTrack):
3290         (WebCore::MediaStreamDescriptor::addComponent):
3291         (WebCore::MediaStreamDescriptor::removeComponent):
3292
3293 2013-09-10  Andreas Kling  <akling@apple.com>
3294
3295         toFooElement() should use static_cast, not reinterpret_cast.
3296         <https://webkit.org/b/121087>
3297
3298         Reviewed by Antti Koivisto.
3299
3300         reinterpret_cast is not safe for downcasting with multiple inheritance.
3301         Add a ELEMENT_TYPE_CASTS(classname) macro that goes after class definitions.
3302         It expands into the following methods:
3303
3304             - FooElement* toFooElement(Node*)
3305             - const FooElement* toFooElement(const Node*)
3306             - FooElement& toFooElement(Node&)
3307             - const FooElement& toFooElement(const Node&)
3308
3309         As a bonus, it also adds these to catch unnecessary casting:
3310
3311             - void toFooElement(const Node*)
3312             - void toFooElement(const Node&)
3313
3314         There might be a more clever way of doing this, but this gets us to a
3315         correct place so we can think in peace.
3316
3317         * bridge/qt/qt_pixmapruntime.cpp:
3318         (JSC::Bindings::assignToHTMLImageElement):
3319         (JSC::Bindings::QtPixmapRuntime::toQt):
3320         * dom/Element.h:
3321         (WebCore::isElement):
3322         * dom/make_names.pl:
3323         (printTypeHelpers):
3324         * html/HTMLAnchorElement.h:
3325         * html/HTMLAreaElement.h:
3326         * html/HTMLAudioElement.h:
3327         * html/HTMLBaseElement.h:
3328         * html/HTMLCanvasElement.h:
3329         * html/HTMLElement.h:
3330         (WebCore::isHTMLElement):
3331         * html/HTMLFieldSetElement.h:
3332         * html/HTMLFormElement.h:
3333         * html/HTMLFrameSetElement.h:
3334         * html/HTMLImageElement.h:
3335         * html/HTMLInputElement.h:
3336         * html/HTMLLabelElement.h:
3337         * html/HTMLLegendElement.h:
3338         * html/HTMLMapElement.h:
3339         * html/HTMLMeterElement.h:
3340         * html/HTMLOptGroupElement.h:
3341         * html/HTMLOptionElement.h:
3342         * html/HTMLParamElement.h:
3343         * html/HTMLProgressElement.h:
3344         * html/HTMLScriptElement.h:
3345         * html/HTMLSourceElement.h:
3346         * html/HTMLStyleElement.h:
3347         * html/HTMLTableElement.h:
3348         * html/HTMLTableRowElement.h:
3349         * html/HTMLTextAreaElement.h:
3350         * html/HTMLTitleElement.h:
3351         * html/HTMLTrackElement.h:
3352         * svg/SVGAltGlyphDefElement.h:
3353         * svg/SVGAltGlyphElement.h:
3354         * svg/SVGAltGlyphItemElement.h:
3355         * svg/SVGAnimateMotionElement.h:
3356         * svg/SVGAnimateTransformElement.h:
3357         * svg/SVGCircleElement.h:
3358         * svg/SVGClipPathElement.h:
3359         * svg/SVGCursorElement.h:
3360         * svg/SVGEllipseElement.h:
3361         * svg/SVGFEDistantLightElement.h:
3362         * svg/SVGFEFuncAElement.h:
3363         * svg/SVGFEFuncBElement.h:
3364         * svg/SVGFEFuncGElement.h:
3365         * svg/SVGFEFuncRElement.h:
3366         * svg/SVGFEMergeNodeElement.h:
3367         * svg/SVGFEPointLightElement.h:
3368         * svg/SVGFESpotLightElement.h:
3369         * svg/SVGFilterElement.h:
3370         * svg/SVGFontElement.h:
3371         * svg/SVGFontFaceElement.h:
3372         * svg/SVGFontFaceNameElement.h:
3373         * svg/SVGFontFaceSrcElement.h:
3374         * svg/SVGFontFaceUriElement.h:
3375         * svg/SVGForeignObjectElement.h:
3376         * svg/SVGGlyphElement.h:
3377         * svg/SVGGlyphRefElement.h:
3378         * svg/SVGHKernElement.h:
3379         * svg/SVGImageElement.h:
3380         * svg/SVGLineElement.h:
3381         * svg/SVGLinearGradientElement.h:
3382         * svg/SVGMPathElement.h:
3383         * svg/SVGMarkerElement.h:
3384         * svg/SVGMaskElement.h:
3385         * svg/SVGMissingGlyphElement.h:
3386         * svg/SVGPathElement.h:
3387         * svg/SVGPatternElement.h:
3388         * svg/SVGRadialGradientElement.h:
3389         * svg/SVGRectElement.h:
3390         * svg/SVGSVGElement.h:
3391         * svg/SVGScriptElement.h:
3392         * svg/SVGStyleElement.h:
3393         * svg/SVGTextElement.h:
3394         * svg/SVGTextPathElement.h:
3395         * svg/SVGTitleElement.h:
3396         * svg/SVGUseElement.h:
3397         * svg/SVGVKernElement.h:
3398         * svg/SVGViewElement.h:
3399
3400 2013-09-10  Mario Sanchez Prada  <mario.prada@samsung.com>
3401
3402         [GTK] Test /webkit/atk/getTextInParagraphAndBodyModerate fails
3403         https://bugs.webkit.org/show_bug.cgi?id=105538
3404
3405         Reviewed by Chris Fleizach.
3406
3407         Expose '\n' for linebreaks when they were explicitly set by the
3408         author of the web content with a <br> tag.
3409
3410         Tests: accessibility/paragraph-with-linebreaks.html
3411
3412         * accessibility/AccessibilityNodeObject.cpp:
3413         (WebCore::shouldAddSpaceBeforeAppendingNextElement): Helper
3414         function to decide when to append spaces when building the text
3415         under an element, considering line breaks.
3416         (WebCore::AccessibilityNodeObject::textUnderElement): Use the
3417         shouldAddSpaceBeforeAppendingNextElement() function here.
3418         * accessibility/AccessibilityRenderObject.cpp:
3419         (WebCore::AccessibilityRenderObject::textUnderElement): Return the
3420         renderer's text for accessibility objects exposing <br> elements.
3421         * html/parser/HTMLParserIdioms.h:
3422         (WebCore::isHTMLSpaceButNotLineBreak): New helper function, useful
3423         to be passed to other functions like simplifyWhiteSpace().
3424
3425 2013-09-10  Arpita Bahuguna  <a.bah@samsung.com>
3426
3427         When deleting editable content, typing style should be reset when moving into another node.
3428         https://bugs.webkit.org/show_bug.cgi?id=120726
3429
3430         Reviewed by Ryosuke Niwa.
3431
3432         When moving from one text node to the other, while deleting characters,
3433         the deleted text node's style was being applied to any new characters
3434         added into the existing text node.
3435
3436         Typing Style in the frame selection maintains the editing style for the
3437         deleted text node, so that if new characters are inserted at the position
3438         of the deleted text node, it's style can be applied to them.
3439
3440         However, when moving into another text node, we should reset or clear the
3441         typing style maintained by the frame selection. This ensures that any new
3442         content inserted within the existing node does not take on any uncleared
3443         style of the deleted node.
3444
3445         Test: editing/deleting/maintain-style-after-delete.html
3446
3447         * editing/DeleteSelectionCommand.cpp:
3448         (WebCore::DeleteSelectionCommand::saveTypingStyleState):
3449         Calling clearTypingStyle() on frame selection whenever deletion occurs
3450         within the same text node. Thus any existing typing styleh held by the
3451         frame selection shall be cleared.
3452
3453 2013-09-09  Darin Adler  <darin@apple.com>
3454
3455         Some refinements in FrameView::layout
3456         https://bugs.webkit.org/show_bug.cgi?id=121076
3457
3458         Reviewed by Andreas Kling.
3459
3460         * page/FrameView.cpp:
3461         (WebCore::FrameView::layout): Use a reference for the document in
3462         this function since code assumes it's non-null anyway. Change code to
3463         only call styleResolverIfExists once. Rewrite comments about blocks
3464         and the scopes they create for better clarity. Make m_nestedLayoutCount
3465         easier to read. Use HTMLElement* for the pointer to the body element.
3466         Moved the call to calculateScrollbarModesForLayout in so we don't
3467         waste time doing it for subtree layouts. Get rid of the unhelpful
3468         currentHMode and currentVMode local variables. Get rid of an extra
3469         block scope we did not need.
3470
3471 2013-09-09  Santosh Mahto  <santosh.ma@samsung.com>
3472
3473         Adding "explicit" keyword in DOM related classes constructor
3474         https://bugs.webkit.org/show_bug.cgi?id=121031
3475
3476         Reviewed by Ryosuke Niwa.
3477
3478         Added the explicit keyword in constructors.
3479
3480         * dom/ActiveDOMObject.h:
3481         * dom/ContainerNode.h:
3482         * dom/DocumentStyleSheetCollection.h:
3483         * dom/ElementAncestorIterator.h:
3484         * dom/ElementData.h:
3485         * dom/ElementRareData.h:
3486         * dom/EventListenerMap.h:
3487         * dom/QualifiedName.h:
3488         (WebCore::QualifiedName::QualifiedName):
3489         * dom/TreeScope.h:
3490         * dom/ViewportArguments.h:
3491         (WebCore::ViewportArguments::ViewportArguments):
3492         * dom/VisitedLinkState.h:
3493
3494 2013-09-09  Andreas Kling  <akling@apple.com>
3495
3496         Remove unreviewed gunk I just accidentally committed :|
3497
3498 2013-09-09  Andreas Kling  <akling@apple.com>
3499
3500         HTMLTextAreaElement no longer needs custom style resolve callbacks.
3501         <https://webkit.org/b/121073>
3502
3503         Reviewed by Ryosuke Niwa.
3504
3505         After r155408 HTMLTextAreaElement doesn't override didAttachRenderer() anymore,
3506         so we don't need to fire callbacks on textarea elements during style resolve.
3507
3508         * html/HTMLTextAreaElement.cpp:
3509         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
3510
3511 2013-09-09  Andreas Kling  <akling@apple.com>
3512
3513         ScriptController should have a Frame& internally.
3514         <https://webkit.org/b/121071>
3515
3516         Reviewed by Anders Carlsson.
3517
3518         Change ScriptController::m_frame to a reference since it's tied to
3519         the lifetime of the owning Frame.
3520
3521 2013-09-09  Andreas Kling  <akling@apple.com>
3522
3523         ScriptRunner should have a Document& internally.
3524         <https://webkit.org/b/121072>
3525
3526         Reviewed by Anders Carlsson.
3527
3528         Change ScriptRunner::m_document to a reference since it's tied to
3529         the lifetime of the Document.
3530
3531 2013-09-09  Andreas Kling  <akling@apple.com>
3532
3533         Ref-ify more stack guards.
3534         <https://webkit.org/b/121070>
3535
3536         Rubber-stamped by Anders Carlsson.
3537
3538         RefPtr<Foo> protect(this) => Ref<Foo> protect(*this).
3539
3540 2013-09-09  Andreas Kling  <akling@apple.com>
3541
3542         Generate more SVG type checks and conversions.
3543         <https://webkit.org/b/121066>
3544
3545         Reviewed by Anders Carlsson.
3546
3547         Switch another slew of SVG elements to auto-generated isFooElement()
3548         and toFooElement() helpers.
3549
3550         Removed now-unnecessary casts and assertions as appropriate.
3551         Converted some simple loops to childrenOfType iteration instead of
3552         traversing child Nodes.
3553
3554         PS. This patch also adds const versions of toFooElement().
3555
3556 2013-09-09  Dean Jackson  <dino@apple.com>
3557
3558         [WebGL] Allow multithreaded OpenGL contexts
3559         https://bugs.webkit.org/show_bug.cgi?id=121062
3560
3561         Reviewed by Simon Fraser.
3562
3563         Expose a new preference "multithreadedWebGLEnabled".
3564
3565         Also examine the value of that preference and, on Mac,
3566         tell the CGLContext that it should go to multithreaded mode.
3567
3568         * html/canvas/WebGLRenderingContext.cpp:
3569         (WebCore::WebGLRenderingContext::create): Look at the value of the new setting, and
3570         toggle a flag on the context attributes.
3571         * page/Settings.in: New Setting "multithreadedWebGLEnabled".
3572         * platform/graphics/GraphicsContext3D.h:
3573         (WebCore::GraphicsContext3D::Attributes::Attributes): Add a "multithreaded" flag.
3574         * platform/graphics/mac/GraphicsContext3DMac.mm:
3575         (WebCore::GraphicsContext3D::GraphicsContext3D): If the context attributes
3576         suggest we should, tell the OpenGL context to go into multithreaded mode.
3577
3578 2013-09-09  Ryosuke Niwa  <rniwa@webkit.org>
3579
3580         Remove HTMLTextFormControl::fixPlaceholderRenderer
3581         https://bugs.webkit.org/show_bug.cgi?id=121058
3582
3583         Reviewed by Kent Tamura.
3584
3585         HTMLTextFormControl::fixPlaceholderRenderer was added in r118733 to swap the order in which placeholder appears.
3586         Namely, when a text form control element is focused, placeholder should be rendered behind the text for the caret
3587         to render on top of, not behind, the placeholder text.  However, we can achieve the same effect by changing
3588         the order of elements in the shadow DOM instead of manually manipuating the render tree as the assertion failure
3589         mentioned in the change log is a bogus one.
3590
3591         Cleaned up the code by removing HTMLTextFormControl::fixPlaceholderRenderer and changed the order in which inner
3592         text element and placeholder element appear. Also fixed the assertion in Position's constructor.
3593
3594         * dom/Position.cpp:
3595         (WebCore::Position::Position): The original assertion was bogus. What we don't want have is for a Position to be
3596         before or after a shadow root. It's fine for it be anchroed against the shadow root as long as it's inside.
3597
3598         * html/HTMLTextAreaElement.cpp:
3599         (WebCore::HTMLTextAreaElement::updatePlaceholderText): Insert the placeholder before the inner text element.
3600         * html/HTMLTextAreaElement.h:
3601         * html/HTMLTextFormControlElement.cpp:
3602         * html/HTMLTextFormControlElement.h:
3603         * html/TextFieldInputType.cpp:
3604         (WebCore::TextFieldInputType::updatePlaceholderText): Ditto.
3605         * html/TextFieldInputType.h:
3606
3607 2013-09-09  Andreas Kling  <akling@apple.com>
3608
3609         Hide node() below RenderSVGModelObject, use element() instead.
3610         <https://webkit.org/b/121051>
3611
3612         Reviewed by Darin Adler.
3613
3614         This was almost already there, just delete node() and add an element() that returns a SVGElement*.
3615         The SVG render tree is crazy casual about compile-time types, this is only scratching the surface.
3616
3617 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3618
3619         Fixing EFL build
3620         https://bugs.webkit.org/show_bug.cgi?id=121048
3621
3622         Reviewed by Darin Adler.
3623
3624         No new tests needed.
3625
3626         * platform/efl/RenderThemeEfl.cpp:
3627         (WebCore::RenderThemeEfl::applyEdjeRTLState):
3628
3629 2013-09-09  Bem Jones-Bey  <bjonesbe@adobe.com>
3630
3631         Move Floats out of RenderBlock
3632         https://bugs.webkit.org/show_bug.cgi?id=120779
3633
3634         Reviewed by Alexandru Chiculita.
3635
3636         Move FloatingObject, FloatingObjects and related code into
3637         FloatingObjects.{h,cpp}. This not only makes the code more readable
3638         and maintainable, it also will allow for more decoupling of
3639         RenderBlock and the FloatingObjects, hopefully making it possible for
3640         FloatingObjects to be more central and not need to have one for each
3641         RenderBlock that is affected by floats.
3642
3643         No new tests, no behavior change.
3644
3645         * CMakeLists.txt:
3646         * GNUmakefile.list.am:
3647         * Target.pri:
3648         * WebCore.vcxproj/WebCore.vcxproj:
3649         * WebCore.xcodeproj/project.pbxproj:
3650         * rendering/FloatingObjects.cpp: Added.
3651         (WebCore::ComputeFloatOffsetAdapter::ComputeFloatOffsetAdapter):
3652         (WebCore::ComputeFloatOffsetAdapter::lowValue):
3653         (WebCore::ComputeFloatOffsetAdapter::highValue):
3654         (WebCore::ComputeFloatOffsetAdapter::outermostFloat):
3655         (WebCore::FloatingObjects::FloatingObjects):
3656         (WebCore::FloatingObjects::~FloatingObjects):
3657         (WebCore::FloatingObjects::clearLineBoxTreePointers):
3658         (WebCore::FloatingObjects::clear):
3659         (WebCore::FloatingObjects::increaseObjectsCount):
3660         (WebCore::FloatingObjects::decreaseObjectsCount):
3661         (WebCore::FloatingObjects::intervalForFloatingObject):
3662         (WebCore::FloatingObjects::addPlacedObject):
3663         (WebCore::FloatingObjects::removePlacedObject):
3664         (WebCore::FloatingObjects::add):
3665         (WebCore::FloatingObjects::remove):
3666         (WebCore::FloatingObjects::computePlacedFloatsTree):
3667         (WebCore::FloatingObjects::logicalLeftOffset):
3668         (WebCore::FloatingObjects::logicalRightOffset):
3669         (WebCore::rangesIntersect):
3670         (WebCore::::updateOffsetIfNeeded):
3671         (WebCore::::collectIfNeeded):
3672         (WebCore::::getHeightRemaining):
3673         (WebCore::::string):
3674         * rendering/FloatingObjects.h: Added.
3675         (WebCore::FloatingObject::FloatingObject):
3676         (WebCore::FloatingObject::clone):
3677         (WebCore::FloatingObject::type):
3678         (WebCore::FloatingObject::renderer):
3679         (WebCore::FloatingObject::isPlaced):
3680         (WebCore::FloatingObject::setIsPlaced):
3681         (WebCore::FloatingObject::x):
3682         (WebCore::FloatingObject::maxX):
3683         (WebCore::FloatingObject::y):
3684         (WebCore::FloatingObject::maxY):
3685         (WebCore::FloatingObject::width):
3686         (WebCore::FloatingObject::height):
3687         (WebCore::FloatingObject::setX):
3688         (WebCore::FloatingObject::setY):
3689         (WebCore::FloatingObject::setWidth):
3690         (WebCore::FloatingObject::setHeight):
3691         (WebCore::FloatingObject::frameRect):
3692         (WebCore::FloatingObject::setFrameRect):
3693         (WebCore::FloatingObject::paginationStrut):
3694         (WebCore::FloatingObject::setPaginationStrut):
3695         (WebCore::FloatingObject::isInPlacedTree):
3696         (WebCore::FloatingObject::setIsInPlacedTree):
3697         (WebCore::FloatingObject::shouldPaint):
3698         (WebCore::FloatingObject::setShouldPaint):
3699         (WebCore::FloatingObject::isDescendant):
3700         (WebCore::FloatingObject::setIsDescendant):
3701         (WebCore::FloatingObject::setRenderer):
3702         (WebCore::FloatingObject::originatingLine):
3703         (WebCore::FloatingObject::setOriginatingLine):
3704         (WebCore::FloatingObject::logicalTop):
3705         (WebCore::FloatingObject::logicalBottom):
3706         (WebCore::FloatingObject::logicalLeft):
3707         (WebCore::FloatingObject::logicalRight):
3708         (WebCore::FloatingObject::logicalWidth):
3709         (WebCore::FloatingObject::pixelSnappedLogicalTop):
3710         (WebCore::FloatingObject::pixelSnappedLogicalBottom):
3711         (WebCore::FloatingObject::pixelSnappedLogicalLeft):
3712         (WebCore::FloatingObject::pixelSnappedLogicalRight):
3713         (WebCore::FloatingObject::setLogicalTop):
3714         (WebCore::FloatingObject::setLogicalLeft):
3715         (WebCore::FloatingObject::setLogicalHeight):
3716         (WebCore::FloatingObject::setLogicalWidth):
3717         (WebCore::FloatingObjectHashFunctions::hash):
3718         (WebCore::FloatingObjectHashFunctions::equal):
3719         (WebCore::FloatingObjectHashTranslator::hash):
3720         (WebCore::FloatingObjectHashTranslator::equal):
3721         (WebCore::FloatingObjects::setHorizontalWritingMode):
3722         (WebCore::FloatingObjects::hasLeftObjects):
3723         (WebCore::FloatingObjects::hasRightObjects):
3724         (WebCore::FloatingObjects::set):
3725         (WebCore::FloatingObjects::placedFloatsTree):
3726         * rendering/RenderBlock.cpp:
3727         (WebCore::RenderBlock::RenderBlock):
3728         (WebCore::RenderBlock::insertFloatingObject):
3729         * rendering/RenderBlock.h:
3730         * rendering/RenderBlockLineLayout.cpp:
3731         (WebCore::LineWidth::shrinkAvailableWidthForNewFloatIfNeeded):
3732         (WebCore::LineLayoutState::lastFloat):
3733         (WebCore::LineLayoutState::setLastFloat):
3734         * rendering/RenderView.cpp:
3735         (WebCore::RenderView::intervalArena):
3736
3737 2013-09-09  David Hyatt  <hyatt@apple.com>
3738
3739         REGRESSION (r155377): Convert the media elements that were RenderBlocks to RenderBlockFlows
3740         https://bugs.webkit.org/show_bug.cgi?id=121052
3741
3742         Reviewed by Anders Carlsson.
3743
3744         Convert a couple of media renderers that I missed from RenderBlock to RenderBlockFlow.
3745         The previous patch that I landed added asserts that get triggered now when this
3746         situation occurs.
3747
3748         * rendering/RenderMediaControlElements.cpp:
3749         (WebCore::RenderMediaVolumeSliderContainer::RenderMediaVolumeSliderContainer):
3750         (WebCore::RenderMediaVolumeSliderContainer::layout):
3751         (WebCore::RenderTextTrackContainerElement::RenderTextTrackContainerElement):
3752         (WebCore::RenderTextTrackContainerElement::layout):
3753         * rendering/RenderMediaControlElements.h:
3754
3755 2013-09-09  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3756
3757         [Bug Fix] Calling m_audioComponents.remove in removeAudioComponent (MediaStreamDescriptor)
3758         https://bugs.webkit.org/show_bug.cgi?id=121034
3759
3760         Reviewed by Eric Carlson.
3761
3762         No new tests needed.
3763
3764         * platform/mediastream/MediaStreamDescriptor.h:
3765         (WebCore::MediaStreamDescriptor::removeAudioComponent):
3766
3767 2013-09-09  Anders Carlsson  <andersca@apple.com>
3768
3769         Stop using WTF type traits in WebCore
3770         https://bugs.webkit.org/show_bug.cgi?id=121042
3771
3772         Reviewed by Andreas Kling.
3773
3774         Replace uses of WTF type traits in CrossThreadCopier with a simpler solution
3775         that uses std::is_convertible_to and some helpers.
3776
3777         * dom/CrossThreadTask.h:
3778         * platform/CrossThreadCopier.h:
3779         * platform/MainThreadTask.h:
3780
3781 2013-09-06  Ryosuke Niwa  <rniwa@webkit.org>
3782
3783         Internals should always cause a layout before calling into TextIterator
3784         https://bugs.webkit.org/show_bug.cgi?id=120891
3785
3786         Reviewed by Antti Koivisto.
3787
3788         Inspired by https://chromium.googlesource.com/chromium/blink/+/5fee5da7b04a710171c79bd6e87eca3533188e45.
3789
3790         Force a layout in the constructors of TextIterator, and SimplifiedBackwardsTextIterator and remove
3791         superfluous calls to updateLayout() in other places.
3792
3793         As much as I hate for a constructor to have a side effect like this, I couldn't think of a better place
3794         to update the layout. Unfortunately, we're slowly moving away from manually createing TextIterator and
3795         wrapping them in a static function.
3796
3797         * editing/TextIterator.cpp:
3798         (WebCore::TextIterator::TextIterator):
3799         (WebCore::SimplifiedBackwardsTextIterator::SimplifiedBackwardsTextIterator):
3800         (WebCore::TextIterator::rangeFromLocationAndLength):
3801         (WebCore::findPlainText):
3802
3803 2013-09-09  David Hyatt  <hyatt@apple.com>
3804
3805         Move layoutBlock and layoutBlockChildren into RenderBlockFlow
3806         https://bugs.webkit.org/show_bug.cgi?id=121036
3807
3808         Reviewed by Dean Jackson.
3809
3810         Move layoutBlock into RenderBlockFlow and make the base class version of
3811         the method ASSERT_NOT_REACHED. Begin the process of moving block layout 
3812         into RenderBlockFlow by putting layoutBlockChildren there as well.
3813         
3814         This patch also puts clearFloats into RenderBlockFlow and just ditches the
3815         SVG-specific forceLayoutInlineChildren by letting RenderSVGText do what it
3816         needs in its own file.
3817
3818         Convert RenderListBox to be a RenderBlockFlow, since this is necessary for it
3819         to get the correct layoutBlock method.
3820         
3821         Patch RenderRegion to call RenderBlockFlow::layoutBlock rather than RenderBlock::layoutBlock.
3822         
3823         Fix run-ins so that they create block flows rather than blocks, and restrict run-ins to
3824         only be block flows.
3825
3826         * rendering/RenderBlock.cpp:
3827         (WebCore::RenderBlock::layoutBlock):
3828         (WebCore::RenderBlock::createReplacementRunIn):
3829         (WebCore::RenderBlock::moveRunInUnderSiblingBlockIfNeeded):
3830         * rendering/RenderBlock.h:
3831         * rendering/RenderBlockFlow.cpp:
3832         (WebCore::RenderBlockFlow::clearFloats):
3833         (WebCore::RenderBlockFlow::layoutBlock):
3834         (WebCore::RenderBlockFlow::layoutBlockChildren):
3835         * rendering/RenderBlockFlow.h:
3836         * rendering/RenderBlockLineLayout.cpp:
3837         (WebCore::RenderBlockFlow::layoutInlineChildren):
3838         * rendering/RenderListBox.cpp:
3839         (WebCore::RenderListBox::RenderListBox):
3840         (WebCore::RenderListBox::layout):
3841         (WebCore::RenderListBox::paintObject):
3842         (WebCore::RenderListBox::addFocusRingRects):
3843         (WebCore::RenderListBox::nodeAtPoint):
3844         * rendering/RenderListBox.h:
3845         * rendering/RenderRegion.cpp:
3846         (WebCore::RenderRegion::paintObject):
3847         (WebCore::RenderRegion::styleDidChange):
3848         (WebCore::RenderRegion::layoutBlock):
3849         (WebCore::RenderRegion::insertedIntoTree):
3850         (WebCore::RenderRegion::willBeRemovedFromTree):
3851         (WebCore::RenderRegion::computeIntrinsicLogicalWidths):
3852         (WebCore::RenderRegion::computePreferredLogicalWidths):
3853         (WebCore::RenderRegion::updateLogicalHeight):
3854         * rendering/RenderTextControlSingleLine.cpp:
3855         (WebCore::RenderTextControlSingleLine::layout):
3856         * rendering/svg/RenderSVGText.cpp:
3857         (WebCore::RenderSVGText::layout):
3858
3859 2013-09-09  Antti Koivisto  <antti@apple.com>
3860
3861         Try to fix GTK build.
3862         
3863         Not reviewed.
3864
3865         * accessibility/AccessibilityTable.cpp:
3866         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
3867
3868 2013-09-09  Antti Koivisto  <antti@apple.com>
3869
3870         Hide node() below RenderLayerModelObject, use element() instead
3871         https://bugs.webkit.org/show_bug.cgi?id=121038
3872
3873         Reviewed by Dave Hyatt.
3874
3875         Switch all call sites to element(). Remove now unnecessary casts, type checks and dead code.
3876         Make constructors below RenderLayerModelObject take an Element instead of a ContainerNode.
3877         
3878         This also removes a branch from many hasTagName() and isFooElement() calls.
3879
3880         * accessibility/AccessibilityRenderObject.cpp:
3881         (WebCore::startOfContinuations):
3882         * accessibility/AccessibilityTable.cpp:
3883         (WebCore::AccessibilityTable::isDataTable):
3884         * accessibility/AccessibilityTableCell.cpp:
3885         (WebCore::AccessibilityTableCell::titleUIElement):
3886         * accessibility/AccessibilityTableColumn.cpp:
3887         (WebCore::AccessibilityTableColumn::headerObjectForSection):
3888         * editing/markup.cpp:
3889         (WebCore::highestAncestorToWrapMarkup):
3890         * html/HTMLTableCellElement.cpp:
3891         (WebCore::HTMLTableCellElement::cellAbove):
3892         * html/shadow/SliderThumbElement.cpp:
3893         (WebCore::RenderSliderThumb::updateAppearance):
3894         (WebCore::RenderSliderContainer::computeLogicalHeight):
3895         (WebCore::RenderSliderContainer::layout):
3896         * page/Frame.cpp:
3897         (WebCore::Frame::frameForWidget):
3898         * rendering/RenderBlock.cpp:
3899         (WebCore::OverflowEventDispatcher::~OverflowEventDispatcher):
3900         (WebCore::RenderBlock::RenderBlock):
3901         (WebCore::RenderBlock::clone):
3902         (WebCore::RenderBlock::createReplacementRunIn):
3903         (WebCore::RenderBlock::paintObject):
3904         (WebCore::RenderBlock::isSelectionRoot):
3905         (WebCore::RenderBlock::nodeForHitTest):
3906         (WebCore::RenderBlock::hasLineIfEmpty):
3907         (WebCore::RenderBlock::addFocusRingRects):
3908         * rendering/RenderBlock.h:
3909         * rendering/RenderBlockFlow.cpp:
3910         (WebCore::RenderBlockFlow::RenderBlockFlow):
3911         * rendering/RenderBlockFlow.h:
3912         * rendering/RenderBlockLineLayout.cpp:
3913         (WebCore::RenderBlock::addOverflowFromInlineChildren):
3914         * rendering/RenderBox.cpp:
3915         (WebCore::RenderBox::RenderBox):
3916         (WebCore::RenderBox::updateFromStyle):
3917         (WebCore::RenderBox::scroll):
3918         (WebCore::RenderBox::logicalScroll):
3919         (WebCore::RenderBox::canBeProgramaticallyScrolled):
3920         (WebCore::RenderBox::nodeAtPoint):
3921         (WebCore::RenderBox::paintCustomHighlight):
3922         (WebCore::RenderBox::computeLogicalWidthInRegion):
3923         (WebCore::RenderBox::sizesLogicalWidthToFitContent):
3924         (WebCore::RenderBox::localCaretRect):
3925         * rendering/RenderBox.h:
3926         * rendering/RenderBoxModelObject.cpp:
3927         (WebCore::RenderBoxModelObject::RenderBoxModelObject):
3928         * rendering/RenderBoxModelObject.h:
3929         * rendering/RenderButton.cpp:
3930         (WebCore::RenderButton::updateFromElement):
3931         (WebCore::RenderButton::canHaveGeneratedChildren):
3932         * rendering/RenderButton.h:
3933         * rendering/RenderEmbeddedObject.cpp:
3934         (WebCore::RenderEmbeddedObject::paintContents):
3935         (WebCore::RenderEmbeddedObject::isReplacementObscured):
3936         (WebCore::RenderEmbeddedObject::layout):
3937         (WebCore::RenderEmbeddedObject::viewCleared):
3938         (WebCore::RenderEmbeddedObject::handleUnavailablePluginIndicatorEvent):
3939         * rendering/RenderFileUploadControl.cpp:
3940         (WebCore::RenderFileUploadControl::updateFromElement):
3941         (WebCore::RenderFileUploadControl::maxFilenameWidth):
3942         (WebCore::RenderFileUploadControl::paintObject):
3943         (WebCore::RenderFileUploadControl::computeIntrinsicLogicalWidths):
3944         (WebCore::RenderFileUploadControl::uploadButton):
3945         (WebCore::RenderFileUploadControl::fileTextValue):
3946         * rendering/RenderFrame.cpp:
3947         (WebCore::RenderFrame::edgeInfo):
3948         (WebCore::RenderFrame::viewCleared):
3949         * rendering/RenderFrameBase.cpp:
3950         (WebCore::RenderFrameBase::layoutWithFlattening):
3951         * rendering/RenderFrameSet.cpp:
3952         (WebCore::RenderFrameSet::frameSet):
3953         * rendering/RenderHTMLCanvas.cpp:
3954         (WebCore::RenderHTMLCanvas::requiresLayer):
3955         (WebCore::RenderHTMLCanvas::paintReplaced):
3956         (WebCore::RenderHTMLCanvas::canvasSizeChanged):
3957         * rendering/RenderIFrame.cpp:
3958         (WebCore::RenderIFrame::isSeamless):
3959         (WebCore::RenderIFrame::flattenFrame):
3960         * rendering/RenderImage.cpp:
3961         (WebCore::RenderImage::imageChanged):
3962         (WebCore::RenderImage::paintAreaElementFocusRing):
3963         (WebCore::RenderImage::areaElementFocusChanged):
3964         (WebCore::RenderImage::paintIntoRect):
3965         (WebCore::RenderImage::imageMap):
3966         (WebCore::RenderImage::nodeAtPoint):
3967         (WebCore::RenderImage::updateAltText):
3968         * rendering/RenderInline.cpp:
3969         (WebCore::RenderInline::clone):
3970         (WebCore::RenderInline::hitTestCulledInline):
3971         (WebCore::RenderInline::updateHitTestResult):
3972         * rendering/RenderInline.h:
3973         * rendering/RenderLayer.cpp:
3974         (WebCore::RenderLayer::RenderLayer):
3975         (WebCore::RenderLayer::~RenderLayer):
3976         (WebCore::RenderLayer::name):
3977         (WebCore::RenderLayer::isTransparent):
3978         (WebCore::RenderLayer::scrollTo):
3979         (WebCore::RenderLayer::resize):
3980         (WebCore::RenderLayer::filterNeedsRepaint):
3981         * rendering/RenderLayerBacking.cpp:
3982         (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
3983         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
3984         * rendering/RenderLayerCompositor.cpp:
3985         (WebCore::RenderLayerCompositor::frameContentsCompositor):
3986         * rendering/RenderLayerFilterInfo.cpp:
3987         (WebCore::RenderLayer::FilterInfo::notifyFinished):
3988         (WebCore::RenderLayer::FilterInfo::updateReferenceFilterClients):
3989         (WebCore::RenderLayer::FilterInfo::notifyCustomFilterProgramLoaded):
3990         * rendering/RenderLayerModelObject.cpp:
3991         (WebCore::RenderLayerModelObject::RenderLayerModelObject):
3992         * rendering/RenderLayerModelObject.h:
3993         (WebCore::RenderLayerModelObject::element):
3994         * rendering/RenderListBox.cpp:
3995         (WebCore::RenderListBox::selectElement):
3996         (WebCore::RenderListBox::paintItemForeground):
3997         (WebCore::RenderListBox::paintItemBackground):
3998         (WebCore::RenderListBox::scrollTo):
3999         (WebCore::RenderListBox::createScrollbar):
4000         * rendering/RenderListItem.cpp:
4001         (WebCore::isList):
4002         (WebCore::enclosingList):
4003         (WebCore::nextListItem):
4004         (WebCore::previousListItem):
4005         (WebCore::RenderListItem::calcValue):
4006         (WebCore::RenderListItem::explicitValueChanged):
4007         (WebCore::RenderListItem::setExplicitValue):
4008         (WebCore::RenderListItem::clearExplicitValue):
4009         (WebCore::previousOrNextItem):
4010         (WebCore::RenderListItem::updateListMarkerNumbers):
4011         * rendering/RenderMarquee.cpp:
4012         (WebCore::RenderMarquee::marqueeSpeed):
4013         * rendering/RenderMedia.cpp:
4014         (WebCore::RenderMedia::mediaElement):
4015         * rendering/RenderMediaControlElements.cpp:
4016         (WebCore::RenderMediaControlTimelineContainer::layout):
4017         (WebCore::RenderTextTrackContainerElement::layout):
4018         * rendering/RenderMenuList.cpp:
4019         (WebCore::RenderMenuList::selectElement):
4020         (WebCore::RenderMenuList::valueChanged):
4021         (WebCore::RenderMenuList::createScrollbar):
4022         * rendering/RenderMeter.cpp:
4023         (WebCore::RenderMeter::meterElement):
4024         * rendering/RenderPart.cpp:
4025         (WebCore::RenderPart::requiresAcceleratedCompositing):
4026         (WebCore::RenderPart::embeddedContentBox):
4027         * rendering/RenderProgress.cpp:
4028         (WebCore::RenderProgress::progressElement):
4029         * rendering/RenderReplaced.cpp:
4030         (WebCore::RenderReplaced::positionForPoint):
4031         (WebCore::RenderReplaced::isSelected):
4032         * rendering/RenderSearchField.cpp:
4033         (WebCore::RenderSearchField::autosaveName):
4034         (WebCore::RenderSearchField::createScrollbar):
4035         * rendering/RenderSlider.cpp:
4036         (WebCore::RenderSlider::layout):
4037         (WebCore::RenderSlider::inDragMode):
4038         * rendering/RenderSnapshottedPlugIn.cpp:
4039         (WebCore::RenderSnapshottedPlugIn::plugInImageElement):
4040         * rendering/RenderTable.cpp:
4041         (WebCore::RenderTable::convertStyleLogicalWidthToComputedWidth):
4042         (WebCore::RenderTable::convertStyleLogicalHeightToComputedHeight):
4043         (WebCore::RenderTable::nodeAtPoint):
4044         * rendering/RenderTableCell.cpp:
4045         (WebCore::RenderTableCell::parseColSpanFromDOM):
4046         (WebCore::RenderTableCell::parseRowSpanFromDOM):
4047         (WebCore::RenderTableCell::updateColAndRowSpanFlags):
4048         (WebCore::RenderTableCell::colSpanOrRowSpanChanged):
4049         (WebCore::RenderTableCell::computePreferredLogicalWidths):
4050         * rendering/RenderTableCol.cpp:
4051         (WebCore::RenderTableCol::updateFromElement):
4052         * rendering/RenderTextControl.cpp:
4053         (WebCore::RenderTextControl::textFormControlElement):
4054         (WebCore::RenderTextControl::adjustInnerTextStyle):
4055         (WebCore::RenderTextControl::updateFromElement):
4056         (WebCore::RenderTextControl::layoutSpecialExcludedChild):