Add toHTMLTableSectionElement() functions, and use it
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-01-07  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2
3         Add toHTMLTableSectionElement() functions, and use it
4         https://bugs.webkit.org/show_bug.cgi?id=126418
5
6         Reviewed by Andreas Kling.
7
8         HTMLTableSectionElement covers tbody, tfoot, and thead tags. So, we can't
9         generate isHTMLTableSectionElement() by using template. This patch add
10         toHTMLTableSectionElement() manually in order to cleanup static_cast<>.
11
12         No new tests, no behavior change.
13
14         * html/HTMLTableElement.cpp:
15         (WebCore::HTMLTableElement::tHead):
16         (WebCore::HTMLTableElement::tFoot):
17         (WebCore::HTMLTableElement::lastBody):
18         * html/HTMLTableRowElement.cpp:
19         (WebCore::HTMLTableRowElement::rowIndex):
20         * html/HTMLTableSectionElement.h:
21         * html/HTMLTagNames.in:
22
23 2014-01-07  László Langó  <llango.u-szeged@partner.samsung.com>
24
25         Remove some extra includes from SVG.
26         https://bugs.webkit.org/show_bug.cgi?id=126565
27
28         Reviewed by Dirk Schulze.
29
30         No new tests, no functionality changed.
31
32         * rendering/svg/RenderSVGBlock.cpp:
33         * rendering/svg/RenderSVGContainer.cpp:
34         * rendering/svg/RenderSVGEllipse.cpp:
35         * rendering/svg/RenderSVGEllipse.h:
36         * rendering/svg/RenderSVGHiddenContainer.cpp:
37         * rendering/svg/RenderSVGImage.cpp:
38         * rendering/svg/RenderSVGImage.h:
39         * rendering/svg/RenderSVGInlineText.cpp:
40         * rendering/svg/RenderSVGModelObject.cpp:
41         * rendering/svg/RenderSVGPath.cpp:
42         * rendering/svg/RenderSVGRect.cpp:
43         * rendering/svg/RenderSVGResource.cpp:
44         * rendering/svg/RenderSVGResourceClipper.cpp:
45         * rendering/svg/RenderSVGResourceClipper.h:
46         * rendering/svg/RenderSVGResourceContainer.cpp:
47         * rendering/svg/RenderSVGResourceFilter.cpp:
48         * rendering/svg/RenderSVGResourceFilter.h:
49         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
50         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
51         * rendering/svg/RenderSVGResourceGradient.cpp:
52         * rendering/svg/RenderSVGResourceGradient.h:
53         * rendering/svg/RenderSVGResourceLinearGradient.cpp:
54         * rendering/svg/RenderSVGResourceMarker.cpp:
55         * rendering/svg/RenderSVGResourceMarker.h:
56         * rendering/svg/RenderSVGResourceMasker.cpp:
57         * rendering/svg/RenderSVGResourceMasker.h:
58         * rendering/svg/RenderSVGResourcePattern.cpp:
59         * rendering/svg/RenderSVGResourcePattern.h:
60         * rendering/svg/RenderSVGResourceRadialGradient.cpp:
61         * rendering/svg/RenderSVGResourceSolidColor.cpp:
62         * rendering/svg/RenderSVGResourceSolidColor.h:
63         * rendering/svg/RenderSVGRoot.cpp:
64         * rendering/svg/RenderSVGShape.cpp:
65         * rendering/svg/RenderSVGText.cpp:
66         * rendering/svg/RenderSVGTransformableContainer.cpp:
67         * rendering/svg/SVGInlineFlowBox.cpp:
68         * rendering/svg/SVGInlineTextBox.cpp:
69         * rendering/svg/SVGRenderSupport.cpp:
70         * rendering/svg/SVGRenderTreeAsText.cpp:
71         * rendering/svg/SVGRenderingContext.cpp:
72         * rendering/svg/SVGResources.cpp:
73         * rendering/svg/SVGResourcesCache.cpp:
74         * rendering/svg/SVGResourcesCycleSolver.cpp:
75         * rendering/svg/SVGRootInlineBox.cpp:
76         * rendering/svg/SVGTextChunk.cpp:
77         * rendering/svg/SVGTextChunkBuilder.cpp:
78         * rendering/svg/SVGTextLayoutAttributes.h:
79         * rendering/svg/SVGTextLayoutAttributesBuilder.h:
80         * rendering/svg/SVGTextLayoutEngine.cpp:
81         * rendering/svg/SVGTextLayoutEngine.h:
82         * rendering/svg/SVGTextMetricsBuilder.h:
83         * rendering/svg/SVGTextQuery.cpp:
84         * rendering/svg/SVGTextRunRenderingContext.cpp:
85
86 2014-01-07  Krzysztof Czech  <k.czech@samsung.com>
87
88         [ATK] Expose aria-checked mixed state as ATK_STATE_INDETERMINATE
89         https://bugs.webkit.org/show_bug.cgi?id=125855
90
91         Reviewed by Mario Sanchez Prada.
92
93         Test: accessibility/aria-checked-mixed-value.html
94
95         Expose ATK_STATE_INDETERMINATE to support aria-checked mixed state
96         for radio and checkbox types.
97
98         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
99         (setAtkStateSetFromCoreObject):
100
101 2014-01-07  Mark Rowe  <mrowe@apple.com>
102
103         <https://webkit.org/b/126562> DOMProgressEvent has unspecified availability
104
105         Reviewed by Ryosuke Niwa.
106
107         * bindings/objc/PublicDOMInterfaces.h: Add DOMProgressEvent. It first appeared in 10.6.
108
109 2014-01-07  Mark Rowe  <mrowe@apple.com>
110
111         Another Mountain Lion build fix.
112
113         The Mountain Lion version of NS_DEPRECATED_MAC generates a reference to a nonexistent
114         availability macro when the introduced and deprecated versions are the same. Follow
115         AppKit's lead in working around this by defining the macros that will be referenced
116         for the various possible OS version numbers. This isn't an issue on newer versions of
117         OS X as the Foundation availability macros expand directly in to __attributes__ rather
118         than in to the legacy availability maros.
119
120         * bindings/objc/WebKitAvailability.h:
121
122 2014-01-06  Mark Rowe  <mrowe@apple.com>
123
124         Mountain Lion build fix.
125
126         * bindings/objc/WebKitAvailability.h: #define __AVAILABILITY_INTERNAL__MAC_TBD so that
127         the TBD version works on Mountain Lion. Newer OS versions use a slightly different set
128         of macros that already support this version. Add a missing #include so that defintions
129         of the Foundation availability macros can be found even if no other Foundation headers
130         were included first.
131
132 2014-01-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
133
134         Unreviewed, rolling out r161401.
135         http://trac.webkit.org/changeset/161401
136         https://bugs.webkit.org/show_bug.cgi?id=126418
137
138         REGRESSION(r161401): Break layout test on mac-wk1(Debug)
139
140         * html/HTMLTableElement.cpp:
141         (WebCore::HTMLTableElement::tHead):
142         (WebCore::HTMLTableElement::tFoot):
143         (WebCore::HTMLTableElement::lastBody):
144         * html/HTMLTableRowElement.cpp:
145         (WebCore::HTMLTableRowElement::rowIndex):
146         * html/HTMLTableSectionElement.h:
147
148 2014-01-05  Mark Rowe  <mrowe@apple.com>
149
150         <https://webkit.org/b/126500> Move Objective-C DOM bindings off the legacy WebKit availability macros
151
152         The legacy WebKit availability macros are verbose, confusing, and provide no benefit
153         over using the system availability macros directly. The original vision was that
154         they'd serve a cross-platform purpose but that never came to be.
155
156         The OS X version used in the new availability macros is based on the mapping in
157         JavaScriptCore/WebKitAvailability.h.
158
159         Part of <rdar://problem/15512304>.
160
161         Reviewed by Sam Weinig.
162
163         * bindings/objc/DOMCSS.h:
164         * bindings/objc/DOMEventException.h:
165         * bindings/objc/DOMException.h:
166         * bindings/objc/DOMExtensions.h:
167         * bindings/objc/DOMObject.h:
168         * bindings/objc/DOMRangeException.h:
169         * bindings/objc/DOMXPathException.h:
170         * bindings/objc/PublicDOMInterfaces.h:
171         * bindings/objc/WebScriptObject.h:
172         * bindings/scripts/CodeGeneratorObjC.pm:
173         (ReadPublicInterfaces):
174         (GenerateHeader): Tag enums with WK_ENUM_AVAILABLE_MAC and classes with WEBKIT_CLASS_AVAILABLE_MAC.
175         Remove the #ifs that we were previously generating now that enums are appropriately tagged.
176         * bindings/scripts/test/ObjC/DOMTestActiveDOMObject.h:
177         * bindings/scripts/test/ObjC/DOMTestActiveDOMObjectInternal.h:
178         * bindings/scripts/test/ObjC/DOMTestCallback.h:
179         * bindings/scripts/test/ObjC/DOMTestCallbackInternal.h:
180         * bindings/scripts/test/ObjC/DOMTestCustomNamedGetter.h:
181         * bindings/scripts/test/ObjC/DOMTestCustomNamedGetterInternal.h:
182         * bindings/scripts/test/ObjC/DOMTestEventConstructor.h:
183         * bindings/scripts/test/ObjC/DOMTestEventConstructorInternal.h:
184         * bindings/scripts/test/ObjC/DOMTestEventTarget.h:
185         * bindings/scripts/test/ObjC/DOMTestEventTargetInternal.h:
186         * bindings/scripts/test/ObjC/DOMTestException.h:
187         * bindings/scripts/test/ObjC/DOMTestExceptionInternal.h:
188         * bindings/scripts/test/ObjC/DOMTestGenerateIsReachable.h:
189         * bindings/scripts/test/ObjC/DOMTestGenerateIsReachableInternal.h:
190         * bindings/scripts/test/ObjC/DOMTestInterface.h:
191         * bindings/scripts/test/ObjC/DOMTestInterfaceInternal.h:
192         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.h:
193         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h:
194         * bindings/scripts/test/ObjC/DOMTestNamedConstructor.h:
195         * bindings/scripts/test/ObjC/DOMTestNamedConstructorInternal.h:
196         * bindings/scripts/test/ObjC/DOMTestNode.h:
197         * bindings/scripts/test/ObjC/DOMTestNodeInternal.h:
198         * bindings/scripts/test/ObjC/DOMTestObj.h:
199         * bindings/scripts/test/ObjC/DOMTestObjInternal.h:
200         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructors.h:
201         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructorsInternal.h:
202         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
203         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h:
204         * bindings/scripts/test/ObjC/DOMTestTypedefs.h:
205         * bindings/scripts/test/ObjC/DOMTestTypedefsInternal.h:
206         * bindings/scripts/test/ObjC/DOMattribute.h:
207         * bindings/scripts/test/ObjC/DOMattributeInternal.h:
208         * bindings/scripts/test/ObjC/DOMreadonly.h:
209         * bindings/scripts/test/ObjC/DOMreadonlyInternal.h:
210
211 2014-01-06  Ryosuke Niwa  <rniwa@webkit.org>
212
213         REGRESSION(r157851): trailing space inside an editable region could be erroneously collapsed
214         https://bugs.webkit.org/show_bug.cgi?id=126549
215
216         Reviewed by Sam Weinig.
217
218         The regression was caused by erroneous use of m_currentCharacterIsSpace in place of m_currentCharacterIsWS.
219
220         See the following two lines before the refactoring:
221         http://trac.webkit.org/browser/trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp?rev=157850#L3074
222         http://trac.webkit.org/browser/trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp?rev=157850#L3198
223
224         I've also cross-checked other places where m_currentCharacterIsSpace and m_currentCharacterIsWS are used.
225
226         Test: editing/inserting/inserting-trailing-space-and-letter.html
227
228         * rendering/line/BreakingContextInlineHeaders.h:
229         (WebCore::BreakingContext::handleText):
230
231 2014-01-06  Seokju Kwon  <seokju@webkit.org>
232
233         Web Inspector: Remove canOverrideDeviceMetrics and setDeviceMetricsOverride from protocol
234         https://bugs.webkit.org/show_bug.cgi?id=126149
235
236         Reviewed by Joseph Pecoraro.
237
238         No new tests, No changes in behavior.
239
240         These are not used anywhere in WebInspectorUI.
241         So, it removes unused Protocols and APIs.
242
243         * inspector/InspectorClient.h:
244         * inspector/InspectorPageAgent.cpp:
245         (WebCore::InspectorPageAgent::InspectorPageAgent):
246         (WebCore::InspectorPageAgent::disable):
247         * inspector/InspectorPageAgent.h:
248         * inspector/protocol/Page.json:
249
250 2014-01-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
251
252         Add toHTMLTableSectionElement() functions, and use it
253         https://bugs.webkit.org/show_bug.cgi?id=126418
254
255         Reviewed by Anders Carlsson.
256
257         HTMLTableSectionElement covers tbody, tfoot, and thead tags. So, we can't
258         generate isHTMLTableSectionElement() by using template. This patch add
259         toHTMLTableSectionElement() manually in order to cleanup static_cast<>.
260
261         No new tests, no behavior change.
262
263         * html/HTMLTableElement.cpp:
264         (WebCore::HTMLTableElement::tHead):
265         (WebCore::HTMLTableElement::tFoot):
266         (WebCore::HTMLTableElement::lastBody):
267         * html/HTMLTableRowElement.cpp:
268         (WebCore::HTMLTableRowElement::rowIndex):
269         * html/HTMLTableSectionElement.h:
270         * html/HTMLTagNames.in:
271
272 2014-01-06  Mark Rowe  <mrowe@apple.com>
273
274         <https://webkit.org/b/126559> Be more correct in dealing with NSControlSize
275
276         Reviewed by Ryosuke Niwa.
277
278         * platform/mac/ScrollbarThemeMac.mm:
279         (WebCore::scrollbarControlSizeToNSControlSize): Helper function to map from ScrollbarControlSize
280         to NSControlSize.
281         (WebCore::ScrollbarThemeMac::registerScrollbar): Use the helper rather than casting.
282         (WebCore::ScrollbarThemeMac::scrollbarThickness): Use the helper.
283         * rendering/RenderThemeMac.mm:
284         (WebCore::RenderThemeMac::progressBarRectForBounds): Update the type of the local to NSControlSize.
285         (WebCore::RenderThemeMac::paintProgressBar): Ditto.
286
287 2014-01-06  Brent Fulgham  <bfulgham@apple.com>
288
289         [WebGL] Be safer about toggling OpenGL state by using a scoped object to control setting lifetime.
290         https://bugs.webkit.org/show_bug.cgi?id=126548
291
292         Reviewed by Anders Carlsson.
293
294         No new tests since there is no change in behavior.
295
296         * GNUmakefile.list.am: Updated to build new TemporaryOpenGLSetting files.
297         * PlatformBlackBerry.cmake: Ditto
298         * PlatformEfl.cmake: Ditto
299         * PlatformGTK.cmake: Ditto
300         * PlatformNix.cmake: Ditto
301         * WebCore.vcxproj/WebCore.vcxproj: Ditto
302         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
303         * WebCore.xcodeproj/project.pbxproj: Ditto
304         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
305         (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): Use new object.
306         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
307         (WebCore::GraphicsContext3D::prepareTexture): Ditto
308         (WebCore::GraphicsContext3D::reshape): Ditto
309         * platform/graphics/opengl/TemporaryOpenGLSetting.cpp: Added.
310         (WebCore::TemporaryOpenGLSetting::TemporaryOpenGLSetting):
311         (WebCore::TemporaryOpenGLSetting::~TemporaryOpenGLSetting):
312         * platform/graphics/opengl/TemporaryOpenGLSetting.h: Added.
313
314 2014-01-06  Simon Fraser  <simon.fraser@apple.com>
315
316         Hook up the RemoteScrollingCoordinator
317         https://bugs.webkit.org/show_bug.cgi?id=126547
318
319         Reviewed by Tim Horton.
320
321         Export lots of scrolling-related symbols for use by WebKit2.
322
323         * WebCore.exp.in:
324
325 2014-01-06  Seokju Kwon  <seokju@webkit.org>
326
327         Web Inspector: Remove support for FileSystem in Frontend.
328         https://bugs.webkit.org/show_bug.cgi?id=126369
329
330         Reviewed by Joseph Pecoraro.
331
332         No new tests, No change in behavior.
333
334         Remove leftover codes from protocol after r156692.
335
336         * CMakeLists.txt:
337         * DerivedSources.make:
338         * GNUmakefile.am:
339         * inspector/InspectorFrontendClient.h:
340         * inspector/InspectorFrontendClientLocal.h:
341         * inspector/InspectorFrontendHost.cpp:
342         * inspector/InspectorFrontendHost.h:
343         * inspector/InspectorFrontendHost.idl:
344         * inspector/protocol/FileSystem.json: Removed.
345
346 2014-01-06  Zoltan Horvath  <zoltan@webkit.org>
347
348         [CSS Regions][CSS Shapes] ASSERTION FAILED: m_segmentRanges.size() < m_segments.size()
349         https://bugs.webkit.org/show_bug.cgi?id=125770
350
351         Reviewed by Bem Jones-Bey.
352
353         When we have an e.g. up-side-down triangle, when the content doesn't fit in the bottom part of the shape,
354         and the adjusted content flows into the next region with a shape, we need to update the actual shape
355         and region. Since it wasn't updated, it led to a shape mismatch, which led to assert/layout error.
356
357         Test: fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment.html
358
359         * rendering/RenderBlockLineLayout.cpp:
360         (WebiCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): Update current shape
361         and region, when adjustment occured.
362
363 2014-01-06  Seokju Kwon  <seokju@webkit.org>
364
365         Web Inspector: Get rid of Inspector/BindingVisitors.h
366         https://bugs.webkit.org/show_bug.cgi?id=126374
367
368         Reviewed by Joseph Pecoraro.
369
370         No new tests, No change in behavior.
371
372         In r161204, methods related to BindingVisitors was removed.
373
374         * GNUmakefile.list.am:
375         * WebCore.vcxproj/WebCore.vcxproj:
376         * WebCore.vcxproj/WebCore.vcxproj.filters:
377         * WebCore.xcodeproj/project.pbxproj:
378         * bindings/js/ScriptProfiler.h:
379         * inspector/BindingVisitors.h: Removed.
380         * inspector/InspectorCanvasAgent.cpp:
381         * inspector/InspectorMemoryAgent.cpp:
382
383 2014-01-06  Tim Horton  <timothy_horton@apple.com>
384
385         Add {IntRect, FloatRect}::infiniteRect() and ::isInfinite()
386         https://bugs.webkit.org/show_bug.cgi?id=126537
387
388         Reviewed by Simon Fraser.
389
390         * platform/graphics/FloatRect.h:
391         (WebCore::FloatRect::infiniteRect):
392         (WebCore::FloatRect::isInfinite):
393         * platform/graphics/IntRect.h:
394         (WebCore::IntRect::infiniteRect):
395         (WebCore::IntRect::isInfinite):
396         Add infiniteRect() and isInfinite() to FloatRect and IntRect.
397
398         * platform/graphics/ca/GraphicsLayerCA.cpp:
399         (WebCore::GraphicsLayerCA::setNeedsDisplay):
400         * rendering/PaintInfo.h:
401         (WebCore::PaintInfo::applyTransform):
402         * rendering/RenderFlowThread.cpp:
403         (WebCore::RenderFlowThread::fragmentsBoundingBox):
404         * rendering/RenderLayer.cpp:
405         (WebCore::RenderLayer::collectFragments):
406         (WebCore::RenderLayer::calculateClipRects):
407         * rendering/RenderLayerBacking.cpp:
408         (WebCore::clipBox):
409         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
410         * rendering/RenderLayerCompositor.cpp:
411         (WebCore::RenderLayerCompositor::clippedByAncestor):
412         * rendering/svg/SVGRenderingContext.cpp:
413         (WebCore::SVGRenderingContext::renderSubtreeToImageBuffer):
414         Adopt the new functions.
415
416 2014-01-06  Seokju Kwon  <seokju@webkit.org>
417
418         Web Inspector: Get rid of DOM.setFileInputFiles from Protocol
419         https://bugs.webkit.org/show_bug.cgi?id=126312
420
421         Reviewed by Joseph Pecoraro.
422
423         No new tests, No changes in behavior.
424
425         It is a dead code as all ports in WebKit don't support it.
426         And this patch removes all things related to DOM.setFileInputFiles in Frontend.
427
428         * inspector/InspectorClient.h:
429         * inspector/InspectorController.cpp:
430         (WebCore::InspectorController::InspectorController):
431         * inspector/InspectorDOMAgent.cpp:
432         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
433         * inspector/InspectorDOMAgent.h:
434         (WebCore::InspectorDOMAgent::create):
435         * inspector/protocol/DOM.json:
436
437 2014-01-06  Brent Fulgham  <bfulgham@apple.com>
438
439         [WebGL] Revise String Concatenation (Follow-up to r161247)
440         https://bugs.webkit.org/show_bug.cgi?id=126411
441
442         Reviewed by Dean Jackson.
443
444         * html/canvas/WebGLRenderingContext.cpp:
445         (WebCore::WebGLRenderingContext::getUniformLocation): Use more efficient string
446         concatenation per Darin Adler's suggestion.
447
448 2014-01-06  Brent Fulgham  <bfulgham@apple.com>
449
450         [WebGL] FBO Depth Buffer Attachment Function Improperly Clearing with 0
451         https://bugs.webkit.org/show_bug.cgi?id=126538
452         <rdar://problem/15201336>
453
454         Reviewed by Dean Jackson.
455
456         Tested by webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html
457
458         * html/canvas/WebGLFramebuffer.cpp:
459         (WebCore::WebGLFramebuffer::initializeAttachments): Clear depth buffer with 1.0f (rather than 0), to match expected
460         default (clear) buffer state for OpenGL. Using 0 would require us to flip the clear mask for the depth attachment
461         type.
462
463 2014-01-06  Simon Fraser  <simon.fraser@apple.com>
464
465         Add new files for UI-side scrolling
466         https://bugs.webkit.org/show_bug.cgi?id=126532
467
468         Reviewed by Anders Carlson.
469
470         * WebCore.xcodeproj/project.pbxproj: Make lots of scrolling-related headers Private
471         so WebKit2 can include them.
472         * page/scrolling/ScrollingCoordinator.cpp:
473         (WebCore::ScrollingCoordinator::scheduleUpdateScrollPositionForNode): Callback that
474         indicates that the given node has been scrolled asynchronously. Currently only
475         handles the main frame.
476         * page/scrolling/ScrollingCoordinator.h: Add support for type-casts of a remote subclass
477         in another namespace.
478         (WebCore::ScrollingCoordinator::isRemoteScrollingCoordinator):
479         * page/scrolling/ScrollingTree.h:
480         (WebCore::ScrollingTree::isRemoteScrollingTree):
481
482 2014-01-06  Gavin Barraclough  <barraclough@apple.com>
483
484         Move ViewState to WebCore
485         https://bugs.webkit.org/show_bug.cgi?id=126488
486
487         Reviewed by Anders Carlson.
488
489         This change also partial reverts handling of LayerHostingMode, making this
490         a separate message again. With hindsight the new way of doing this wasn't
491         in all ways simpler, and it won't make sense to move this to WebCore.
492
493         * WebCore.xcodeproj/project.pbxproj:
494         * page/ViewState.h: Added.
495             - Moved from WebKit2, will be used by Page & FocusController.
496
497 2014-01-06  Martin Robinson  <mrobinson@igalia.com>
498
499         [CMake] [GTK] Fix the build for the WebKitGTK+ developer configuration
500         https://bugs.webkit.org/show_bug.cgi?id=126505
501
502         Reviewed by Gustavo Noronha Silva.
503
504         * CMakeLists.txt: Add missing IDLS and source files to the lists.
505         * PlatformGTK.cmake: Add missing include directories and source files to the lists.
506         Use the GeoClue, GUdev, and gio-unix include paths and libraries and sort the list
507         of WebCore include directories.
508         * UseJSC.cmake: Align the sourced list with the contents of the bindings/js directory.
509
510 2014-01-06  Gavin Barraclough  <barraclough@apple.com>
511
512         Refactor NSActivity handling code from ChildProcess to UserActivity
513         https://bugs.webkit.org/show_bug.cgi?id=126330
514
515         Unreviewed speculative Windows build fix.
516
517         * WebCore.vcxproj/WebCore.vcxproj:
518             - Added UserActivity.cpp/.h.
519
520 2014-01-06  peavo@outlook.com  <peavo@outlook.com>
521
522         [Win] Link error.
523         https://bugs.webkit.org/show_bug.cgi?id=126526
524
525         Reviewed by Brent Fulgham.
526
527         * WebCore.vcxproj/WebCore.vcxproj: Include UserActivity files in build.
528         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
529
530 2014-01-06  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
531
532         [Nix] Adding screenRect implementation to PlatformScreenNix
533         https://bugs.webkit.org/show_bug.cgi?id=126231
534
535         Reviewed by Csaba Osztrogonác.
536
537         No new tests needed.
538
539         * platform/nix/PlatformScreenNix.cpp:
540         (WebCore::screenRect):
541
542 2014-01-06  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
543
544         [Nix] Adding missing platform #ifs to WebCore files
545         https://bugs.webkit.org/show_bug.cgi?id=126227
546
547         Reviewed by Csaba Osztrogonác.
548
549         No new tests needed.
550
551         * loader/EmptyClients.h:
552         * page/ChromeClient.h:
553         * page/DragController.cpp:
554         (WebCore::DragController::startDrag):
555         * platform/LocalizedStrings.h:
556
557 2014-01-06  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
558
559         [Nix] Adding new strings to LocalizedStringsNix
560         https://bugs.webkit.org/show_bug.cgi?id=126228
561
562         Reviewed by Csaba Osztrogonác.
563
564         No new tests needed.
565
566         * platform/nix/LocalizedStringsNix.cpp:
567         (WebCore::submitButtonDefaultLabel):
568         (WebCore::inputElementAltText):
569         (WebCore::resetButtonDefaultLabel):
570         (WebCore::defaultDetailsSummaryText):
571         (WebCore::searchableIndexIntroduction):
572         (WebCore::fileButtonChooseFileLabel):
573         (WebCore::fileButtonChooseMultipleFilesLabel):
574         (WebCore::fileButtonNoFileSelectedLabel):
575         (WebCore::fileButtonNoFilesSelectedLabel):
576         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
577         (WebCore::contextMenuItemTagDownloadLinkToDisk):
578         (WebCore::contextMenuItemTagCopyLinkToClipboard):
579         (WebCore::contextMenuItemTagOpenImageInNewWindow):
580         (WebCore::contextMenuItemTagDownloadImageToDisk):
581         (WebCore::contextMenuItemTagCopyImageToClipboard):
582         (WebCore::contextMenuItemTagCopyImageUrlToClipboard):
583         (WebCore::contextMenuItemTagOpenVideoInNewWindow):
584         (WebCore::contextMenuItemTagOpenAudioInNewWindow):
585         (WebCore::contextMenuItemTagDownloadVideoToDisk):
586         (WebCore::contextMenuItemTagDownloadAudioToDisk):
587         (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
588         (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
589         (WebCore::contextMenuItemTagToggleMediaControls):
590         (WebCore::contextMenuItemTagShowMediaControls):
591         (WebCore::contextMenuitemTagHideMediaControls):
592         (WebCore::contextMenuItemTagToggleMediaLoop):
593         (WebCore::contextMenuItemTagEnterVideoFullscreen):
594         (WebCore::contextMenuItemTagMediaPlay):
595         (WebCore::contextMenuItemTagMediaPause):
596         (WebCore::contextMenuItemTagMediaMute):
597         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
598         (WebCore::contextMenuItemTagCopy):
599         (WebCore::contextMenuItemTagDelete):
600         (WebCore::contextMenuItemTagSelectAll):
601         (WebCore::contextMenuItemTagUnicode):
602         (WebCore::contextMenuItemTagInputMethods):
603         (WebCore::contextMenuItemTagGoBack):
604         (WebCore::contextMenuItemTagGoForward):
605         (WebCore::contextMenuItemTagStop):
606         (WebCore::contextMenuItemTagReload):
607         (WebCore::contextMenuItemTagCut):
608         (WebCore::contextMenuItemTagPaste):
609         (WebCore::contextMenuItemTagNoGuessesFound):
610         (WebCore::contextMenuItemTagIgnoreSpelling):
611         (WebCore::contextMenuItemTagLearnSpelling):
612         (WebCore::contextMenuItemTagSearchWeb):
613         (WebCore::contextMenuItemTagLookUpInDictionary):
614         (WebCore::contextMenuItemTagOpenLink):
615         (WebCore::contextMenuItemTagIgnoreGrammar):
616         (WebCore::contextMenuItemTagSpellingMenu):
617         (WebCore::contextMenuItemTagShowSpellingPanel):
618         (WebCore::contextMenuItemTagCheckSpelling):
619         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
620         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
621         (WebCore::contextMenuItemTagFontMenu):
622         (WebCore::contextMenuItemTagBold):
623         (WebCore::contextMenuItemTagItalic):
624         (WebCore::contextMenuItemTagUnderline):
625         (WebCore::contextMenuItemTagOutline):
626         (WebCore::contextMenuItemTagInspectElement):
627         (WebCore::contextMenuItemTagRightToLeft):
628         (WebCore::contextMenuItemTagLeftToRight):
629         (WebCore::contextMenuItemTagWritingDirectionMenu):
630         (WebCore::contextMenuItemTagTextDirectionMenu):
631         (WebCore::contextMenuItemTagDefaultDirection):
632         (WebCore::searchMenuNoRecentSearchesText):
633         (WebCore::searchMenuRecentSearchesText):
634         (WebCore::searchMenuClearRecentSearchesText):
635         (WebCore::AXDefinitionText):
636         (WebCore::AXDescriptionListText):
637         (WebCore::AXDescriptionListTermText):
638         (WebCore::AXDescriptionListDetailText):
639         (WebCore::AXFooterRoleDescriptionText):
640         (WebCore::AXSearchFieldCancelButtonText):
641         (WebCore::AXButtonActionVerb):
642         (WebCore::AXRadioButtonActionVerb):
643         (WebCore::AXTextFieldActionVerb):
644         (WebCore::AXCheckedCheckBoxActionVerb):
645         (WebCore::AXUncheckedCheckBoxActionVerb):
646         (WebCore::AXLinkActionVerb):
647         (WebCore::unknownFileSizeText):
648         (WebCore::imageTitle):
649         (WebCore::AXListItemActionVerb):
650         (WebCore::localizedMediaControlElementString):
651         (WebCore::localizedMediaControlElementHelpText):
652         (WebCore::localizedMediaTimeDescription):
653         (WebCore::mediaElementLoadingStateText):
654         (WebCore::mediaElementLiveBroadcastStateText):
655         (WebCore::validationMessagePatternMismatchText):
656         (WebCore::validationMessageRangeOverflowText):
657         (WebCore::validationMessageRangeUnderflowText):
658         (WebCore::validationMessageStepMismatchText):
659         (WebCore::validationMessageTooLongText):
660         (WebCore::validationMessageTypeMismatchText):
661         (WebCore::validationMessageTypeMismatchForEmailText):
662         (WebCore::validationMessageTypeMismatchForMultipleEmailText):
663         (WebCore::validationMessageTypeMismatchForURLText):
664         (WebCore::validationMessageValueMissingText):
665         (WebCore::validationMessageValueMissingForCheckboxText):
666         (WebCore::validationMessageValueMissingForFileText):
667         (WebCore::validationMessageValueMissingForMultipleFileText):
668         (WebCore::validationMessageValueMissingForRadioText):
669         (WebCore::validationMessageValueMissingForSelectText):
670         (WebCore::validationMessageBadInputForNumberText):
671         (WebCore::missingPluginText):
672         (WebCore::AXMenuListPopupActionVerb):
673         (WebCore::AXMenuListActionVerb):
674         (WebCore::multipleFileUploadText):
675         (WebCore::crashedPluginText):
676         (WebCore::blockedPluginByContentSecurityPolicyText):
677         (WebCore::insecurePluginVersionText):
678         (WebCore::inactivePluginText):
679         (WebCore::unacceptableTLSCertificate):
680         (WebCore::textTrackClosedCaptionsText):
681         (WebCore::textTrackSubtitlesText):
682         (WebCore::textTrackOffMenuItemText):
683         (WebCore::textTrackAutomaticMenuItemText):
684         (WebCore::textTrackNoLabelText):
685         (WebCore::snapshottedPlugInLabelTitle):
686         (WebCore::snapshottedPlugInLabelSubtitle):
687
688 2014-01-06  László Langó  <lango@inf.u-szeged.hu>
689
690         Use unsigned consistently, and check for invalid casts when calling into SharedBuffer from other code.
691         https://bugs.webkit.org/show_bug.cgi?id=124579
692
693         Reviewed by Anders Carlsson.
694
695         * WebCore.exp.in:
696         * loader/NetscapePlugInStreamLoader.cpp:
697         (WebCore::NetscapePlugInStreamLoader::didReceiveData):
698         * loader/NetscapePlugInStreamLoader.h:
699         * loader/PingLoader.h:
700         * loader/ResourceBuffer.cpp:
701         (WebCore::ResourceBuffer::ResourceBuffer):
702         * loader/ResourceBuffer.h:
703         (WebCore::ResourceBuffer::create):
704         * loader/ResourceLoader.cpp:
705         (WebCore::ResourceLoader::addDataOrBuffer):
706         (WebCore::ResourceLoader::didReceiveData):
707         (WebCore::ResourceLoader::didReceiveDataOrBuffer):
708         (WebCore::ResourceLoader::willStopBufferingData):
709         * loader/ResourceLoader.h:
710         * loader/SubresourceLoader.cpp:
711         (WebCore::SubresourceLoader::didReceiveData):
712         * loader/SubresourceLoader.h:
713         * loader/appcache/ApplicationCacheGroup.cpp:
714         (WebCore::ApplicationCacheGroup::didReceiveData):
715         * loader/appcache/ApplicationCacheGroup.h:
716         * loader/mac/ResourceLoaderMac.mm:
717         (WebCore::ResourceLoader::didReceiveDataArray):
718         * platform/SharedBuffer.cpp:
719         (WebCore::SharedBuffer::SharedBuffer):
720         * platform/SharedBuffer.h:
721         (WebCore::SharedBuffer::create):
722         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
723         (ResourceHandleStreamingClient::didReceiveData):
724         * platform/network/BlobResourceHandle.cpp:
725         * platform/network/ResourceHandleClient.h:
726         (WebCore::ResourceHandleClient::didReceiveData):
727         (WebCore::ResourceHandleClient::willStopBufferingData):
728         * platform/network/SynchronousLoaderClient.cpp:
729         (WebCore::SynchronousLoaderClient::didReceiveData):
730         * platform/network/SynchronousLoaderClient.h:
731         * platform/network/blackberry/BlobStream.cpp:
732         (WebCore::BlobStream::didReceiveData):
733         * platform/network/blackberry/BlobStream.h:
734         * platform/network/blackberry/ResourceHandleBlackBerry.cpp:
735         (WebCore::WebCoreSynchronousLoader::didReceiveData):
736         * platform/network/curl/ResourceHandleCurl.cpp:
737         (WebCore::WebCoreSynchronousLoader::didReceiveData):
738         * platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
739         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
740         * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
741         (-[WebCoreResourceHandleAsOperationQueueDelegate connection:willStopBufferingData:]):
742         * platform/network/soup/ResourceHandleSoup.cpp:
743         (WebCore::WebCoreSynchronousLoader::didReceiveData):
744         * platform/network/win/ResourceHandleWin.cpp:
745         (WebCore::WebCoreSynchronousLoader::didReceiveData):
746
747 2014-01-06  Andreas Kling  <akling@apple.com>
748
749         RenderBlock::clone() should return RenderPtr.
750         <https://webkit.org/b/126513>
751
752         Reviewed by Antti Koivisto.
753
754         * rendering/RenderBlock.h:
755         * rendering/RenderBlock.cpp:
756         (WebCore::RenderBlock::clone):
757
758             Tweaked to return RenderPtr<RenderBlock>.
759
760         (WebCore::RenderBlock::splitBlocks):
761
762             Store cloned RenderBlocks in RenderPtrs. Use leakPtr() to sink
763             them into ownership-taking APIs that still use raw pointers.
764
765         * rendering/RenderPtr.h:
766
767             Add a simple static_pointer_cast for RenderPtr&&.
768
769 2014-01-06  Andreas Kling  <akling@apple.com>
770
771         RenderInline::clone() should return RenderPtr.
772         <https://webkit.org/b/126514>
773
774         Reviewed by Antti Koivisto.
775
776         * rendering/RenderInline.h:
777         * rendering/RenderInline.cpp:
778         (WebCore::RenderInline::clone):
779
780             Tweaked to return RenderPtr<RenderInline>.
781
782         (WebCore::RenderInline::splitInlines):
783
784             Store cloned RenderInlines in RenderPtrs. Use leakPtr() to sink
785             them into ownership-taking APIs that still use raw pointers.
786
787 2014-01-06  Gurpreet Kaur  <k.gurpreet@samsung.com>
788
789         <hr> appears gray instead of green because of color attribute is defined followed by noshade attribute
790         https://bugs.webkit.org/show_bug.cgi?id=17674
791
792         Reviewed by Simon Fraser.
793
794         The noshade attribute is a boolean attribute and when set on hr element
795         it shows a gray color. When there is color attribute the default gray
796         color should be replaced by the color mentioned by the color attribute.
797         Firefox and IE show the same behaviour but Webkit is different. Making
798         the behaviour of Webkit similiar to Firefox and IE's behaviour.
799
800         Test: fast/dom/HTMLHrElement/hr-color-noshade-attribute.html
801
802         * html/HTMLHRElement.cpp:
803         (WebCore::HTMLHRElement::collectStyleForPresentationAttribute):
804         When the color attribute is present that value is applied and the 
805         default gray color is ignored. Incase of no color attribute the default
806         gray color is applied.
807
808 2014-01-06  Mark Rowe  <mrowe@apple.com>
809
810         <https://webkit.org/b/126499> Move WebKit off the legacy WebKit availability macros
811
812         The legacy WebKit availability macros are verbose, confusing, and provide no benefit
813         over using the system availability macros directly. The original vision was that
814         they'd serve a cross-platform purpose but that never came to be.
815
816         Since WebKit1 is API on OS X but SPI on iOS, some indirection is still needed in the
817         availability macros to allow the headers to advertise the API as unavailable on OS X
818         without interfering with the ability to build on iOS. This is achieved by defining
819         WEBKIT-prefixed versions of the Foundation availability macros that are defined to
820         their NS-prefixed equivalents. The installed headers are post-processed to map these
821         macros back to their Foundation equivalents.
822
823         Part of <rdar://problem/15512304>.
824
825         Reviewed by Sam Weinig.
826
827         * WebCore.xcodeproj/project.pbxproj:
828         * bindings/objc/WebKitAvailability.h: Added. This lives at the WebCore level since it
829         will be needed by the Objective-C DOM bindings.
830
831 2014-01-05  Simon Fraser  <simon.fraser@apple.com>
832
833         Move responsibility for remote layer tree committing to RemoteLayerTreeDrawingArea
834         https://bugs.webkit.org/show_bug.cgi?id=126501
835
836         Reviewed by Sam Weinig.
837
838         Add type-safe casting to GraphicsLayer.
839
840         * platform/graphics/GraphicsLayer.h:
841         (WebCore::GraphicsLayer::isGraphicsLayerCA):
842         (WebCore::GraphicsLayer::isGraphicsLayerCARemote):
843         * platform/graphics/ca/GraphicsLayerCA.h:
844         (WebCore::GraphicsLayerCA::isGraphicsLayerCA):
845
846 2014-01-05  Martin Robinson  <mrobinson@igalia.com>
847
848         [GTK] [CMake] Ensure that the autotools build and the CMake install the same files
849         https://bugs.webkit.org/show_bug.cgi?id=116379
850
851         Reviewed by Gustavo Noronha Silva.
852
853         * PlatformGTK.cmake: Reformat some install directives to be consistent with the rest of them.
854         Install the GObject DOM bindings headers.
855
856 2014-01-05  Andreas Kling  <akling@apple.com>
857
858         Use lineageOfType to simplify two rendering helpers.
859         <https://webkit.org/b/126498>
860
861         Reviewed by Antti Koivisto.
862
863         * rendering/RenderRuby.cpp:
864         (WebCore::findRubyRunParent):
865         * rendering/svg/SVGRenderSupport.cpp:
866         (WebCore::SVGRenderSupport::findTreeRootObject):
867
868             Simplify two functions that walk their parent chain to find the
869             closest ancestor of a certain type.
870
871         * rendering/RenderRubyRun.h:
872
873             Add requisite isRendererOfType<RenderRubyRun>().
874
875 2014-01-05  Csaba Osztrogonác  <ossy@webkit.org>
876
877         Fix the Mac build too.
878
879         * page/PageThrottler.h:
880
881 2014-01-05  Csaba Osztrogonác  <ossy@webkit.org>
882
883         Weekend URTBF after r161319 to make non Mac builds work again.
884
885         * page/PageThrottler.h:
886
887 2014-01-05  Gavin Barraclough  <barraclough@apple.com>
888
889         Move process suppression of WebProcess to Page (from UIProcess)
890         https://bugs.webkit.org/show_bug.cgi?id=126480
891
892         Reviewed by Sam Weinig.
893
894         Let each page take a UserActivity rather than having to coalesce this state, and take different activity
895         tokens for normal visibility and suppression disabled, so we can see why the process is not suppressed.
896
897         * WebCore.exp.in:
898         * page/Page.cpp:
899         (WebCore::Page::setIsVisuallyIdle):
900         * page/Page.h:
901             - setThrottled -> setIsVisuallyIdle.
902         * page/PageThrottler.cpp:
903         (WebCore::PageThrottler::PageThrottler):
904             - Initialize m_visuallyNonIdle.
905         (WebCore::PageThrottler::~PageThrottler):
906             - setThrottled -> setIsVisuallyIdle.
907         (WebCore::PageThrottler::setIsVisuallyIdle):
908             - Use m_visuallyNonIdle to disable supression when the page is not visually idle.
909         * page/PageThrottler.h:
910             - setThrottled -> setIsVisuallyIdle, added m_visuallyNonIdle.
911
912 2014-01-04  Sam Weinig  <sam@webkit.org>
913
914         Move a few more functions from RenderBlock to RenderBlockFlow
915         https://bugs.webkit.org/show_bug.cgi?id=126494
916
917         Reviewed by Andreas Kling.
918
919         * rendering/RenderBlock.h:
920         * rendering/RenderBlockFlow.h:
921         (WebCore::RenderBlockFlow::adjustInlineDirectionLineBounds):
922         * rendering/RenderBlockLineLayout.cpp:
923         (WebCore::RenderBlockFlow::textAlignmentForLine):
924         (WebCore::RenderBlockFlow::updateLogicalWidthForAlignment):
925         (WebCore::RenderBlockFlow::startAlignedOffsetForLine):
926         These are only used by RenderBlockFlow, so move them there.
927
928 2014-01-04  Simon Fraser  <simon.fraser@apple.com>
929
930         Prepare the ScrollingTree for remote use
931         https://bugs.webkit.org/show_bug.cgi?id=126493
932
933         Reviewed by Sam Weinig.
934
935         When committing the scrolling tree, we clone the ScrollingStateTree
936         to hand off to another thread, or (in future) to encode to send to the
937         UI process. During this cloning process, two types of layer transformations
938         take place: for threaded scrolling, we replace GraphicsLayer with PlatformLayers.
939         For remote scrolling, we'll replace GraphicsLayers with PlatformLayerIDs.
940         Allow the ScrollingCoordinator to specify which type of transformation occurs
941         by giving ScrollingStateTree a LayerRepresentation::Type member,
942         which is consulted during ScrollingStateNode cloning.
943         
944         Also only copy layers that have changed to avoid setting dirty bits.
945         
946         Expose some other stuff on ScrollingStateTree which will be needed for
947         remote scrolling.
948
949         * page/scrolling/ScrollingStateFixedNode.cpp:
950         (WebCore::ScrollingStateFixedNode::syncLayerPositionForViewportRect):
951         * page/scrolling/ScrollingStateNode.cpp:
952         (WebCore::ScrollingStateNode::ScrollingStateNode):
953         * page/scrolling/ScrollingStateNode.h:
954         (WebCore::LayerRepresentation::operator GraphicsLayer::PlatformLayerID):
955         (WebCore::LayerRepresentation::toRepresentation):
956         (WebCore::ScrollingStateNode::changedProperties):
957         (WebCore::ScrollingStateNode::setChangedProperties):
958         (WebCore::ScrollingStateNode::parentNodeID):
959         * page/scrolling/ScrollingStateScrollingNode.cpp:
960         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
961         * page/scrolling/ScrollingStateStickyNode.cpp:
962         (WebCore::ScrollingStateStickyNode::syncLayerPositionForViewportRect):
963         * page/scrolling/ScrollingStateTree.cpp:
964         (WebCore::ScrollingStateTree::ScrollingStateTree):
965         (WebCore::ScrollingStateTree::commit):
966         (WebCore::ScrollingStateTree::setRemovedNodes):
967         (WebCore::ScrollingStateTree::stateNodeForID):
968         * page/scrolling/ScrollingStateTree.h:
969         (WebCore::ScrollingStateTree::nodeCount):
970         (WebCore::ScrollingStateTree::nodeMap):
971         (WebCore::ScrollingStateTree::preferredLayerRepresentation):
972         (WebCore::ScrollingStateTree::setPreferredLayerRepresentation):
973         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
974         (WebCore::ScrollingCoordinatorMac::commitTreeState):
975
976 2014-01-04  Sam Weinig  <sam@webkit.org>
977
978         Move LineBreaker functions to LineBreaker.cpp
979         https://bugs.webkit.org/show_bug.cgi?id=126491
980
981         Reviewed by Simon Fraser.
982
983         - Moves LineBreaker::nextLineBreak() and LineBreaker::nextSegmentBreak() to
984           LineBreaker.cpp from RenderBlockLineLayout.cpp
985         - Moves requiresIndent() to LineWidth.h/cpp from RenderBlockLineLayout.cpp
986           so it can be shared.
987         - Adds missing inline specifier to BreakingContext::handleEndOfLine() to avoid
988           duplicate symbols.
989
990         * rendering/RenderBlockLineLayout.cpp:
991         (WebCore::updateLogicalInlinePositions):
992         (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
993         * rendering/line/BreakingContextInlineHeaders.h:
994         (WebCore::BreakingContext::handleEndOfLine):
995         * rendering/line/LineBreaker.cpp:
996         (WebCore::LineBreaker::nextLineBreak):
997         (WebCore::LineBreaker::nextSegmentBreak):
998         * rendering/line/LineWidth.cpp:
999         (WebCore::requiresIndent):
1000         * rendering/line/LineWidth.h:
1001
1002 2014-01-04  Martin Robinson  <mrobinson@igalia.com>
1003
1004         [GTK] [CMake] Fix the video and audio build
1005         https://bugs.webkit.org/show_bug.cgi?id=126464
1006
1007         Reviewed by Philippe Normand.
1008
1009         * PlatformGTK.cmake: Complete the audio and video source lists.
1010
1011 2014-01-04  Zan Dobersek  <zdobersek@igalia.com>
1012
1013         Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
1014         https://bugs.webkit.org/show_bug.cgi?id=126439
1015
1016         Reviewed by Andreas Kling.
1017
1018         Instead of relying on std::pair and std::make_pair symbols being present in the current scope
1019         through the pair and make_pair symbols, the std:: specifier should be used explicitly.
1020
1021         * Modules/webdatabase/DatabaseTracker.cpp:
1022         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
1023         * accessibility/AXObjectCache.h:
1024         * accessibility/AccessibilityARIAGridCell.cpp:
1025         (WebCore::AccessibilityARIAGridCell::rowIndexRange):
1026         (WebCore::AccessibilityARIAGridCell::columnIndexRange):
1027         * accessibility/AccessibilityARIAGridCell.h:
1028         * accessibility/AccessibilityObject.h:
1029         * accessibility/AccessibilityRenderObject.cpp:
1030         (WebCore::AccessibilityRenderObject::mathPrescripts):
1031         (WebCore::AccessibilityRenderObject::mathPostscripts):
1032         * accessibility/AccessibilityTable.cpp:
1033         (WebCore::AccessibilityTable::cellForColumnAndRow):
1034         * accessibility/AccessibilityTableCell.cpp:
1035         (WebCore::AccessibilityTableCell::rowIndexRange):
1036         (WebCore::AccessibilityTableCell::columnIndexRange):
1037         * accessibility/AccessibilityTableCell.h:
1038         * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
1039         (webkitAccessibleTableGetColumnAtIndex):
1040         (webkitAccessibleTableGetRowAtIndex):
1041         (webkitAccessibleTableGetColumnExtentAt):
1042         (webkitAccessibleTableGetRowExtentAt):
1043         (webkitAccessibleTableGetColumnHeader):
1044         (webkitAccessibleTableGetRowHeader):
1045         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
1046         (-[WebAccessibilityObjectWrapper accessibilityHeaderElements]):
1047         (-[WebAccessibilityObjectWrapper accessibilityRowRange]):
1048         (-[WebAccessibilityObjectWrapper accessibilityColumnRange]):
1049         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
1050         (convertMathPairsToNSArray):
1051         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1052         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
1053         * bindings/js/SerializedScriptValue.cpp:
1054         * dom/ContainerNode.cpp:
1055         * dom/StyledElement.cpp:
1056         (WebCore::attributeNameSort):
1057         * html/MediaFragmentURIParser.cpp:
1058         (WebCore::MediaFragmentURIParser::parseTimeFragment):
1059         * html/parser/HTMLMetaCharsetParser.h:
1060         * inspector/ContentSearchUtils.cpp:
1061         (WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):
1062         (WebCore::ContentSearchUtils::searchInTextByLines):
1063         * inspector/DOMPatchSupport.cpp:
1064         (WebCore::DOMPatchSupport::diff):
1065         (WebCore::DOMPatchSupport::innerPatchChildren):
1066         * inspector/DOMPatchSupport.h:
1067         * inspector/InspectorAgent.cpp:
1068         (WebCore::InspectorAgent::enable):
1069         (WebCore::InspectorAgent::evaluateForTestInFrontend):
1070         * inspector/InspectorAgent.h:
1071         * loader/FormSubmission.cpp:
1072         (WebCore::FormSubmission::create):
1073         * loader/cache/CachedImage.cpp:
1074         (WebCore::CachedImage::brokenImage):
1075         * loader/cache/CachedImage.h:
1076         * platform/URL.cpp:
1077         (WebCore::findHostnamesInMailToURL):
1078         (WebCore::encodeHostnames):
1079         * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
1080         * platform/graphics/FontCache.cpp:
1081         (WebCore::FontCache::getCachedFontData):
1082         * platform/graphics/WidthIterator.cpp:
1083         * platform/network/HTTPHeaderMap.cpp:
1084         (WebCore::HTTPHeaderMap::adopt):
1085         * platform/network/ResourceResponseBase.cpp:
1086         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
1087         (WebCore::parseCacheHeader):
1088         * platform/text/AtomicStringKeyedMRUCache.h:
1089         * platform/text/LineBreakIteratorPoolICU.h:
1090         * rendering/InlineFlowBox.h:
1091         * rendering/RenderImage.cpp:
1092         (WebCore::RenderImage::imageSizeForError):
1093         (WebCore::RenderImage::paintReplaced):
1094         * rendering/RenderTableSection.cpp:
1095         (WebCore::RenderTableSection::cachedCollapsedBorder):
1096         * rendering/RenderTableSection.h:
1097         * rendering/svg/SVGTextRunRenderingContext.cpp:
1098         (WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):
1099         * svg/SVGAnimatedAngle.cpp:
1100         (WebCore::SVGAnimatedAngleAnimator::constructFromString):
1101         (WebCore::SVGAnimatedAngleAnimator::addAnimatedTypes):
1102         (WebCore::SVGAnimatedAngleAnimator::calculateAnimatedValue):
1103         * svg/SVGAnimatedIntegerOptionalInteger.cpp:
1104         (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::constructFromString):
1105         (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::addAnimatedTypes):
1106         (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::calculateAnimatedValue):
1107         * svg/SVGAnimatedNumberOptionalNumber.cpp:
1108         (WebCore::SVGAnimatedNumberOptionalNumberAnimator::constructFromString):
1109         (WebCore::SVGAnimatedNumberOptionalNumberAnimator::addAnimatedTypes):
1110         (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateAnimatedValue):
1111         * svg/SVGAnimatedType.cpp:
1112         (WebCore::SVGAnimatedType::createIntegerOptionalInteger):
1113         (WebCore::SVGAnimatedType::createNumberOptionalNumber):
1114         * svg/SVGAnimatedType.h:
1115         (WebCore::SVGAnimatedType::integerOptionalInteger):
1116         (WebCore::SVGAnimatedType::numberOptionalNumber):
1117         * svg/SVGAnimatedTypeAnimator.h:
1118         (WebCore::SVGAnimatedTypeAnimator::constructFromBaseValues):
1119         (WebCore::SVGAnimatedTypeAnimator::resetFromBaseValues):
1120         * svg/SVGParserUtilities.h:
1121         * svg/animation/SMILTimeContainer.h:
1122
1123 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1124
1125         Attempt to fix EFL build.
1126
1127         * page/scrolling/ScrollingStateTree.cpp:
1128         (WebCore::ScrollingStateTree::setHasChangedProperties):
1129
1130 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1131
1132         Clean up the means of committing the scrolling state tree
1133         https://bugs.webkit.org/show_bug.cgi?id=126482
1134
1135         Reviewed by Tim Horton.
1136
1137         ScrollingStateNodes would manually call scrollingStateTree().setHasChangedProperties()
1138         after setPropertyChanged() in lots of places, which was repetitive, and
1139         AsyncScrollingCoordinator manually called scheduleTreeStateCommit() in many places.
1140         
1141         Clean up both of these with a clearer trigger for state tree commits.
1142         ScrollingStateNodes::setPropertyChanged() calls ScrollingStateTree::setHasChangedProperties(),
1143         which turns around and tells the ScrollingCoordinator that the state tree became dirty.
1144
1145         * page/scrolling/AsyncScrollingCoordinator.cpp:
1146         (WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
1147         (WebCore::AsyncScrollingCoordinator::scrollingStateTreePropertiesChanged):
1148         (WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
1149         (WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
1150         (WebCore::AsyncScrollingCoordinator::updateScrollingNode):
1151         (WebCore::AsyncScrollingCoordinator::updateViewportConstrainedNode):
1152         (WebCore::AsyncScrollingCoordinator::setScrollLayerForNode):
1153         (WebCore::AsyncScrollingCoordinator::setCounterScrollingLayerForNode):
1154         (WebCore::AsyncScrollingCoordinator::setHeaderLayerForNode):
1155         (WebCore::AsyncScrollingCoordinator::setFooterLayerForNode):
1156         (WebCore::AsyncScrollingCoordinator::setNonFastScrollableRegionForNode):
1157         (WebCore::AsyncScrollingCoordinator::setWheelEventHandlerCountForNode):
1158         (WebCore::AsyncScrollingCoordinator::setScrollBehaviorForFixedElementsForNode):
1159         (WebCore::AsyncScrollingCoordinator::setScrollbarPaintersFromScrollbarsForNode):
1160         (WebCore::AsyncScrollingCoordinator::setSynchronousScrollingReasons):
1161         * page/scrolling/AsyncScrollingCoordinator.h:
1162         * page/scrolling/ScrollingStateFixedNode.cpp:
1163         (WebCore::ScrollingStateFixedNode::updateConstraints):
1164         * page/scrolling/ScrollingStateNode.cpp:
1165         (WebCore::ScrollingStateNode::setPropertyChanged):
1166         (WebCore::ScrollingStateNode::setLayer):
1167         * page/scrolling/ScrollingStateNode.h:
1168         * page/scrolling/ScrollingStateScrollingNode.cpp:
1169         (WebCore::ScrollingStateScrollingNode::setViewportRect):
1170         (WebCore::ScrollingStateScrollingNode::setTotalContentsSize):
1171         (WebCore::ScrollingStateScrollingNode::setScrollOrigin):
1172         (WebCore::ScrollingStateScrollingNode::setScrollableAreaParameters):
1173         (WebCore::ScrollingStateScrollingNode::setFrameScaleFactor):
1174         (WebCore::ScrollingStateScrollingNode::setNonFastScrollableRegion):
1175         (WebCore::ScrollingStateScrollingNode::setWheelEventHandlerCount):
1176         (WebCore::ScrollingStateScrollingNode::setSynchronousScrollingReasons):
1177         (WebCore::ScrollingStateScrollingNode::setScrollBehaviorForFixedElements):
1178         (WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):
1179         (WebCore::ScrollingStateScrollingNode::setHeaderHeight):
1180         (WebCore::ScrollingStateScrollingNode::setFooterHeight):
1181         (WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
1182         (WebCore::ScrollingStateScrollingNode::setHeaderLayer):
1183         (WebCore::ScrollingStateScrollingNode::setFooterLayer):
1184         * page/scrolling/ScrollingStateStickyNode.cpp:
1185         (WebCore::ScrollingStateStickyNode::updateConstraints):
1186         * page/scrolling/ScrollingStateTree.cpp:
1187         (WebCore::ScrollingStateTree::create):
1188         (WebCore::ScrollingStateTree::ScrollingStateTree):
1189         (WebCore::ScrollingStateTree::setHasChangedProperties):
1190         (WebCore::ScrollingStateTree::didRemoveNode):
1191         * page/scrolling/ScrollingStateTree.h:
1192         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1193         (WebCore::ScrollingCoordinatorMac::scheduleTreeStateCommit):
1194         * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
1195         (WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars):
1196
1197 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1198
1199         Try to fix CoordinatedGraphics build after r161303. Remove implementations
1200         which are now in the cross-platform file.
1201
1202         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
1203         (WebCore::ScrollingCoordinatorCoordinatedGraphics::detachFromStateTree):
1204         (WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode):
1205         * page/scrolling/coordinatedgraphics/ScrollingStateNodeCoordinatedGraphics.cpp:
1206         * page/scrolling/coordinatedgraphics/ScrollingStateScrollingNodeCoordinatedGraphics.cpp:
1207
1208 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1209
1210         Simplify ScrollingStateNode references to various layer types
1211         https://bugs.webkit.org/show_bug.cgi?id=126477
1212
1213         Reviewed by Tim Horton.
1214         
1215         ScrollingStateNodes referenced both GraphicsLayer and PlatformLayers, in
1216         confusing ways. In the main thread they have a GraphicsLayer*, but need
1217         to check to see if the underlying PlatformLayer changed. Then, when
1218         cloned to commit to the scrolling thread, they drop the GraphicsLayer
1219         and store a PlatformLayer.
1220         
1221         Hide the complexity (and prepare for the future) by adding LayerRepresentation,
1222         which wraps various different flavors of layers, and knows how to check whether
1223         the PlatformLayer underlying a GraphicsLayer changed.
1224         
1225         ScrollingStateNode layer setters then just take and compare LayerRepresentations.
1226         Copy constructors convert to a PlatformLayer representation (though not really
1227         in the right place currently), and ScrollingTreeNodes get PlatformLayers.
1228
1229         * page/scrolling/AsyncScrollingCoordinator.cpp:
1230         (WebCore::AsyncScrollingCoordinator::updateScrollingNode):
1231         (WebCore::AsyncScrollingCoordinator::setScrollLayerForNode):
1232         * page/scrolling/ScrollingStateFixedNode.cpp:
1233         (WebCore::ScrollingStateFixedNode::syncLayerPositionForViewportRect):
1234         * page/scrolling/ScrollingStateNode.cpp:
1235         (WebCore::ScrollingStateNode::ScrollingStateNode):
1236         (WebCore::ScrollingStateNode::setLayer):
1237         * page/scrolling/ScrollingStateNode.h:
1238         (WebCore::LayerRepresentation::LayerRepresentation):
1239         (WebCore::LayerRepresentation::operator GraphicsLayer*):
1240         (WebCore::LayerRepresentation::operator PlatformLayer*):
1241         (WebCore::LayerRepresentation::operator GraphicsLayer::PlatformLayerID):
1242         (WebCore::LayerRepresentation::operator ==):
1243         (WebCore::LayerRepresentation::toPlatformLayer):
1244         (WebCore::LayerRepresentation::representsGraphicsLayer):
1245         (WebCore::LayerRepresentation::representsPlatformLayer):
1246         (WebCore::LayerRepresentation::representsPlatformLayerID):
1247         (WebCore::ScrollingStateNode::layer):
1248         * page/scrolling/ScrollingStateScrollingNode.cpp:
1249         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
1250         (WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
1251         (WebCore::ScrollingStateScrollingNode::setHeaderLayer):
1252         (WebCore::ScrollingStateScrollingNode::setFooterLayer):
1253         * page/scrolling/ScrollingStateScrollingNode.h:
1254         * page/scrolling/ScrollingStateStickyNode.cpp:
1255         (WebCore::ScrollingStateStickyNode::syncLayerPositionForViewportRect):
1256         * page/scrolling/mac/ScrollingStateNodeMac.mm:
1257         * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
1258         * page/scrolling/mac/ScrollingTreeFixedNode.mm:
1259         (WebCore::ScrollingTreeFixedNode::updateBeforeChildren):
1260         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1261         (WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
1262         * page/scrolling/mac/ScrollingTreeStickyNode.mm:
1263         (WebCore::ScrollingTreeStickyNode::updateBeforeChildren):
1264
1265 2014-01-03  Brent Fulgham  <bfulgham@apple.com>
1266
1267         [WebGL] Blit operation from Multisample FBO to rendering FBO must ignore GL_SCISSOR test
1268         https://bugs.webkit.org/show_bug.cgi?id=126470
1269         <rdar://problem/15201370>
1270
1271         Reviewed by Dean Jackson.
1272
1273         Covered by webgl/1.0.2/resources/webgl_test_files/conformance/rendering/gl-scissor-test.html
1274
1275         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
1276         (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): Temporarily deactivate the GL_SCISSOR
1277         test while we do our blit, then reactivate if necessary.
1278
1279 2014-01-03  Brent Fulgham  <bfulgham@apple.com>
1280
1281         [WebGL] CGLPixelFormat should specify SampleBuffer and Sample count when using MSAA
1282         https://bugs.webkit.org/show_bug.cgi?id=126468
1283
1284         Reviewed by Dean Jackson.
1285
1286         Covered by webgl/1.0.2/resources/webgl_test_files/conformance/rendering/gl-scissor-test.html
1287
1288         * platform/graphics/mac/GraphicsContext3DMac.mm:
1289         (WebCore::setPixelFormat): Add kCGLPFAMultisample, kCGLPFASampleBuffers (and count), and
1290         kCGLPFASamples (and count) to our pixel format when 'antialias=true'.
1291         (WebCore::GraphicsContext3D::GraphicsContext3D): Pass a new 'antialias' flag to the setPixelFormat
1292         method so we can turn on MSAA features when needed.
1293
1294 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1295
1296         Give all PlatformCALayers a PlatformLayerID, not just remote ones
1297         https://bugs.webkit.org/show_bug.cgi?id=126466
1298
1299         Reviewed by Tim Horton.
1300
1301         The ScrollingStateTree has references to both GraphicsLayers and PlatformLayers
1302         which is confusing, and is necessary because the underlying PlatformLayer
1303         inside a GraphicsLayer can change. In order to hide some of this complexity,
1304         expose GraphicsLayer::primaryLayerID() which is a PlatformLayerID that clients
1305         can hold onto to test for underlying layer swapping.
1306         
1307         Also constify LayerType m_layerType on PlatformCALayer, which required
1308         cleaning up the construction of PlatformCALayerMac in the case where a
1309         PlatformCALayerMac is wrapping an existing CALayer (which happens for video).
1310
1311         * WebCore.exp.in:
1312         * platform/graphics/GraphicsLayer.h:
1313         (WebCore::GraphicsLayer::primaryLayerID):
1314         * platform/graphics/ca/GraphicsLayerCA.cpp:
1315         (WebCore::GraphicsLayerCA::primaryLayerID):
1316         * platform/graphics/ca/GraphicsLayerCA.h:
1317         * platform/graphics/ca/PlatformCALayer.cpp:
1318         (WebCore::generateLayerID):
1319         (WebCore::PlatformCALayer::PlatformCALayer):
1320         * platform/graphics/ca/PlatformCALayer.h:
1321         (WebCore::PlatformCALayer::layerID):
1322         * platform/graphics/ca/mac/PlatformCALayerMac.h:
1323         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1324         (PlatformCALayerMac::create):
1325         (PlatformCALayerMac::PlatformCALayerMac):
1326         (PlatformCALayerMac::commonInit):
1327
1328 2014-01-03  Andreas Kling  <akling@apple.com>
1329
1330         Add lineageOfType renderer iterator and start using it.
1331         <https://webkit.org/b/126456>
1332
1333         Add a convenient way to iterate over a renderers ancestry *including*
1334         the starting point renderer (if it meets the type criteria.)
1335
1336         This works just like lineageOfType for Elements.
1337
1338         Reviewed by Geoffrey Garen.
1339
1340         * rendering/RenderAncestorIterator.h:
1341         (WebCore::lineageOfType):
1342
1343             Added. Returns an adapter for walking a renderer's entire lineage
1344             matching any renderer of the given type.
1345
1346         * rendering/RenderBoxModelObject.h:
1347         * rendering/RenderLayerModelObject.h:
1348
1349             Add the requisite isRendererOfType<T> helpers.
1350
1351         * rendering/RenderBox.cpp:
1352         (WebCore::RenderBox::enclosingFloatPaintingLayer):
1353         * rendering/RenderObject.cpp:
1354         (WebCore::RenderObject::enclosingLayer):
1355         (WebCore::RenderObject::enclosingBox):
1356         (WebCore::RenderObject::enclosingBoxModelObject):
1357
1358             Simplify with lineageOfType. Added some FIXMEs about functions
1359             that should return references instead of pointers.
1360
1361 2014-01-03  Martin Robinson  <mrobinson@igalia.com>
1362
1363         Small build fix for the GTK+ CMake port
1364
1365         * PlatformGTK.cmake: Add an IDL file that is missing from the list of IDLs
1366         used to generate GObject DOM bindings.
1367
1368 2014-01-03  Daniel Bates  <dabates@apple.com>
1369
1370         [iOS] Upstream WebCore/css changes
1371         https://bugs.webkit.org/show_bug.cgi?id=126237
1372
1373         Reviewed by Simon Fraser.
1374
1375         * css/CSSComputedStyleDeclaration.cpp:
1376         (WebCore::ComputedStyleExtractor::propertyValue): Added iOS-specific code and FIXME comment.
1377         * css/CSSParser.cpp:
1378         (WebCore::CSSParserContext::CSSParserContext): Ditto.
1379         (WebCore::CSSParser::parseValue): Ditto.
1380         * css/CSSPropertyNames.in: Added property -webkit-composition-fill-color. Also added FIXME comment.
1381         * css/CSSValueKeywords.in: Added iOS-specific -apple-system-* values.
1382         * css/DeprecatedStyleBuilder.cpp:
1383         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Added iOS-specific code and FIXME comments.
1384         * css/MediaFeatureNames.h: Added media feature -webkit-video-playable-inline.
1385         * css/MediaQueryEvaluator.cpp:
1386         (WebCore::isRunningOnIPhoneOrIPod): Added. Also added FIXME comment.
1387         (WebCore::video_playable_inlineMediaFeatureEval): Added.
1388         * css/StyleResolver.cpp:
1389         (WebCore::StyleResolver::canShareStyleWithElement): Substitute toHTMLMediaElement() for toMediaElement().
1390         (WebCore::StyleResolver::applyProperty): Added iOS-specific code and FIXME comment.
1391         * css/html.css: Added iOS-specific CSS styles.
1392         (input, textarea, keygen, select, button, isindex):
1393         (isindex):
1394         (input[type="date"]):
1395         (input[type="datetime"]):
1396         (input[type="datetime-local"]):
1397         (input[type="month"]):
1398         (input[type="time"]):
1399         (textarea):
1400         (input:-webkit-autofill):
1401         (input[type="radio"], input[type="checkbox"]):
1402         (input[type="button"], input[type="submit"], input[type="reset"], input[type="file"]::-webkit-file-upload-button, button):
1403         (input[type="range"]::-webkit-slider-thumb, input[type="range"]::-webkit-media-slider-thumb):
1404         (input[type="range"]::-webkit-slider-thumb:active):
1405         (input:disabled, textarea:disabled):
1406         (input[readonly], textarea[readonly]):
1407         (textarea::-webkit-input-placeholder):
1408         (input[type="checkbox"]):
1409         (input[type="radio"]):
1410         (input[type="checkbox"]:checked, input[type="radio"]:checked):
1411         (input[type="checkbox"]:checked:disabled, input[type="radio"]:checked:disabled):
1412         (select:focus):
1413         (select):
1414         * css/mathml.css: Added iOS-specific CSS styles.
1415         (math, mfenced > *):
1416         (mo, mfenced):
1417         * css/mediaControlsiOS.css: Added.
1418         * css/svg.css: Added iOS-specific CSS styles.
1419         (text, tspan, tref):
1420
1421 2014-01-03  Brent Fulgham  <bfulgham@apple.com>
1422
1423         [WebGL] glScissor test is not accounted for when generating internal rendering textures.
1424         https://bugs.webkit.org/show_bug.cgi?id=126455
1425         <rdar://problem/15744206>
1426
1427         Reviewed by Dean Jackson.
1428
1429         Covered by webgl/1.0.2/conformance/rendering/gl-scissor-test.html
1430
1431         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
1432         (WebCore::GraphicsContext3D::prepareTexture): Check state of GL_SCISSOR_TEST and GL_DITHER, deactivate them during
1433         our internal drawing, then turn them back on for further processing.
1434
1435 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1436
1437         Maybe fix Windows build.
1438
1439         * WebCore.vcxproj/copyForwardingHeaders.cmd:
1440
1441 2014-01-03  Jer Noble  <jer.noble@apple.com>
1442
1443         [MediaControls][iOS] Enable JavaScript Media Controls on iOS.
1444         https://bugs.webkit.org/show_bug.cgi?id=126440
1445
1446         Reviewed by Eric Carlson.
1447
1448         Drive-by misspelling fix, and add a convenience function to check if the
1449         controls are currently hidden:
1450         * Modules/mediacontrols/mediaControlsApple.js:
1451         (Controller.prototype.handleWrapperMouseMove):
1452         (Controller.prototype.handleWrapperMouseOut):
1453         (Controller.prototype.updatePlaying):
1454         (Controller.prototype.controlsAreHidden): Added.
1455
1456         Add a new subclass of Controller for iOS and a matching CSS:
1457         * Modules/mediacontrols/mediaControlsiOS.css: Added.
1458         * Modules/mediacontrols/mediaControlsiOS.js: Added.
1459         (createControls): Override the createControls() in mediaControlsApple.js.
1460         (ControllerIOS): Define a new class.
1461         (ControllerIOS.prototype.inheritFrom): Convenience method to mixin parent
1462             prototype methods.
1463         (ControllerIOS.prototype.createBase): Override, listen for touches instead of mouse events.
1464         (ControllerIOS.prototype.createControls): Ditto.
1465         (ControllerIOS.prototype.configureInlineControls): Override, only add play, timeline, and full
1466             screen butttons.
1467         (ControllerIOS.prototype.configureFullScreenControls): Override, and add no buttons.
1468         (ControllerIOS.prototype.handlePlayButtonTouchStart): Activate.
1469         (ControllerIOS.prototype.handlePlayButtonTouchEnd): De-activate and do action.
1470         (ControllerIOS.prototype.handlePlayButtonTouchCancel): De-activate and cancel.
1471         (ControllerIOS.prototype.handleWrapperTouchStart): Show controls.
1472         (ControllerIOS.prototype.handlePanelTouchStart): Disable video selection.
1473         (ControllerIOS.prototype.handlePanelTouchEnd): Re-enable video selection.
1474         (ControllerIOS.prototype.handlePanelTouchCancel): Ditto.
1475
1476         Drive-by fix to enable the JavaScript controls when the plugin is disabled:
1477         * html/HTMLMediaElement.cpp:
1478         (WebCore::HTMLMediaElement::parseAttribute):
1479
1480         Add the iOS JavaScript by appending it to the generic (Apple) JavaScript:
1481         * rendering/RenderThemeIOS.mm:
1482         (WebCore::RenderThemeIOS::mediaControlsScript):
1483
1484         Add new files to project:
1485         * DerivedSources.make:
1486         * WebCore.xcodeproj/project.pbxproj:
1487
1488 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1489
1490         Allow the ChromeClient to provide a custom ScrollingCoordinator
1491         https://bugs.webkit.org/show_bug.cgi?id=126450
1492
1493         Reviewed by Tim Horton.
1494         
1495         Some platforms will want to provide a custom ScrollingCoordinator, so let
1496         them do so by asking ChromeClient first for one.
1497
1498         * page/ChromeClient.h:
1499         (WebCore::ChromeClient::createScrollingCoordinator):
1500         * page/Page.cpp:
1501         (WebCore::Page::scrollingCoordinator):
1502
1503 2014-01-03  Andreas Kling  <akling@apple.com>
1504
1505         Deploy more child renderer iterators in RenderBlockFlow.
1506         <https://webkit.org/b/126434>
1507
1508         Reviewed by Sam Weinig.
1509
1510         * rendering/RenderBlockFlow.cpp:
1511         (WebCore::shouldCheckLines):
1512
1513             Make this helper take a RenderBlockFlow instead of a RenderObject
1514             and simplified it a bit. RenderDeprecatedFlexibleBox does not
1515             derive from RenderBlockFlow so those checks can be omitted.
1516
1517         (WebCore::RenderBlockFlow::layoutBlock):
1518         (WebCore::RenderBlockFlow::markAllDescendantsWithFloatsForLayout):
1519         (WebCore::RenderBlockFlow::lineAtIndex):
1520         (WebCore::RenderBlockFlow::lineCount):
1521         (WebCore::RenderBlockFlow::clearTruncation):
1522
1523             Use childrenOfType to iterate over block and block-flow children.
1524             Tweaked some early return/continue to reduce nesting.
1525
1526 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
1527
1528         Allow different types of ScrollingTrees to have different types of ScrollingTreeNode subclasses
1529         https://bugs.webkit.org/show_bug.cgi?id=126445
1530
1531         Reviewed by Tim Horton.
1532         
1533         Make it possible to have ScrollingTree subclasses with different subclasses of ScrollingTreeNodes,
1534         by giving ScrollingTree a pure virtual createNode() function. ThreadedScrollingTree implements
1535         this, and then delegates node creation to its AsyncScrollingCoordinator (since we have
1536         a ScrollingCoordinatorMac but no real need for a ThreadedScrollingTreeMac).
1537         
1538         Also made ThreadedScrollingTree's m_scrollingCoordinator an AsyncScrollingCoordinator,
1539         since by definition a threaded scrolling tree uses an async coordinator.
1540
1541         * page/scrolling/AsyncScrollingCoordinator.h:
1542         * page/scrolling/ScrollingTree.cpp:
1543         (WebCore::ScrollingTree::updateTreeFromStateNode):
1544         * page/scrolling/ScrollingTree.h:
1545         * page/scrolling/ScrollingTreeScrollingNode.h:
1546         * page/scrolling/ThreadedScrollingTree.cpp:
1547         (WebCore::ThreadedScrollingTree::create):
1548         (WebCore::ThreadedScrollingTree::ThreadedScrollingTree):
1549         (WebCore::ThreadedScrollingTree::createNode):
1550         * page/scrolling/ThreadedScrollingTree.h:
1551         * page/scrolling/mac/ScrollingCoordinatorMac.h:
1552         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1553         (WebCore::ScrollingCoordinatorMac::createScrollingTreeNode):
1554         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
1555         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
1556         (WebCore::ScrollingTreeScrollingNodeMac::create):
1557
1558 2014-01-03  Gavin Barraclough  <barraclough@apple.com>
1559
1560         Refactor NSActivity handling code from ChildProcess to UserActivity
1561         https://bugs.webkit.org/show_bug.cgi?id=126330
1562
1563         Unreviewed build fix.
1564
1565         * platform/UserActivity.h:
1566             - case fix.
1567
1568 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
1569
1570         Refactor NSActivity handling code from ChildProcess to UserActivity
1571         https://bugs.webkit.org/show_bug.cgi?id=126330
1572
1573         Reviewed by Sam Weinig.
1574
1575         UserActivity is a mechanism to express to the operating system (where appropriate)
1576         that a user initiated activity is taking place, and as such that resources should be
1577         made available to the process accordingly.
1578
1579         Currently we hold a single NSActivity, at the WebKit layer. This refactoring allows us
1580         to hold different activity tokens for different user actions (which simplifies the
1581         handling, and aides debugging since the token can more accurately express the activity
1582         taking place), and also will allow us to avoid the layering difficulty of calling back
1583         up the stack to WebKit to register that an activity is taking place.
1584
1585         * WebCore.xcodeproj/project.pbxproj:
1586             - added new files.
1587         * platform/UserActivity.cpp: Added.
1588         (WebCore::UserActivity::UserActivity):
1589             - nop implementation - ignore description.
1590         (WebCore::UserActivity::beginActivity):
1591         (WebCore::UserActivity::endActivity):
1592             - nop implementation - just inc/dec m_count.
1593         * platform/UserActivity.h: Added.
1594         (WebCore::UserActivity::isActive):
1595             - returns true if one or more instance of this activity is in progress.
1596         * platform/mac/UserActivityMac.mm: Added.
1597         (WebCore::UserActivity::UserActivity):
1598             - constructor accepts one argument, a description string.
1599         (WebCore::UserActivity::isValid):
1600             - used by assertions.
1601         (WebCore::UserActivity::beginActivity):
1602         (WebCore::UserActivity::endActivity):
1603             - track start/end of an activity - calls to these methods should be balanced.
1604         (WebCore::UserActivity::hysteresisTimerFired):
1605               - used to implement hysteresis in releasing  NSActivity.
1606
1607 2014-01-03  Alexey Proskuryakov  <ap@apple.com>
1608
1609         Line ending conversion should be able to handle strings with null chars
1610         https://bugs.webkit.org/show_bug.cgi?id=126202
1611
1612         This is a merge from Blink.
1613
1614         Reviewed by Alexey Proskuryakov.
1615
1616         Test: http/tests/local/formdata/send-form-data-with-string-containing-null.html
1617
1618         * platform/text/LineEnding.cpp: (WebCore::normalizeToCROrLF): Do it right.
1619
1620 2014-01-03  Alberto Garcia  <berto@igalia.com>
1621
1622         WebKit-GTK 1.8.1 does not build on OS X 10.7
1623         https://bugs.webkit.org/show_bug.cgi?id=88407
1624
1625         Reviewed by Carlos Garcia Campos.
1626
1627         Replace non-portable 'echo -n' with 'true'.
1628
1629         * GNUmakefile.am:
1630
1631 2014-01-03  peavo@outlook.com  <peavo@outlook.com>
1632
1633         [WinCairo] Compile error.
1634         https://bugs.webkit.org/show_bug.cgi?id=126428
1635
1636         Reviewed by Brent Fulgham.
1637
1638         The NativeImagePtr type is not an CGImageRef on WinCairo, cannot use CFRetain.
1639
1640         * loader/cache/MemoryCache.cpp: Replace USE(CF) with USE(CG).
1641         * loader/cache/MemoryCache.h: Ditto.
1642
1643 2014-01-03  Hans Muller  <hmuller@adobe.com>
1644
1645         [CSS Shapes] Simplify FloatRoundedRect, BoxShape construction
1646         https://bugs.webkit.org/show_bug.cgi?id=125995
1647
1648         Reviewed by Andreas Kling.
1649
1650         Cleanup of various internal Shape issues:
1651         - Removed unnecessary Shape() initialization list entries in Shape subclasses
1652           per https://bugs.webkit.org/show_bug.cgi?id=125548#c2.
1653         - Used const references instead of pointers for non-deprecated Shape:createShape() logic.
1654         - Replaced createShape() overloads for Rasters and Boxes with functions named
1655           createRasterShape() and createBoxShape().
1656         - Added a FloatRoundedRect::Radii() constructor to reduce the parameter list
1657           length of the FloatRoundedRect constructor in createBoxShape().
1658
1659         There are no new tests, this is just internal refactoring.
1660
1661         * platform/graphics/FloatRoundedRect.h:
1662         (WebCore::FloatRoundedRect::Radii::Radii):
1663         * rendering/shapes/BoxShape.h:
1664         (WebCore::BoxShape::BoxShape):
1665         * rendering/shapes/PolygonShape.h:
1666         (WebCore::PolygonShape::PolygonShape):
1667         * rendering/shapes/RasterShape.h:
1668         (WebCore::RasterShape::RasterShape):
1669         * rendering/shapes/RectangleShape.h:
1670         (WebCore::RectangleShape::RectangleShape):
1671         * rendering/shapes/Shape.cpp:
1672         (WebCore::createInsetShape):
1673         (WebCore::Shape::createShape):
1674         (WebCore::Shape::createRasterShape):
1675         (WebCore::Shape::createBoxShape):
1676         * rendering/shapes/Shape.h:
1677         * rendering/shapes/ShapeInfo.cpp:
1678         (WebCore::ShapeInfo<RenderType>::computedShape):
1679
1680 2014-01-03  Andreas Kling  <akling@apple.com>
1681
1682         Remove unused Document::openSearchDescriptionURL().
1683         <https://webkit.org/b/126419>
1684
1685         Reviewed by Antti Koivisto.
1686
1687         * dom/Document.h:
1688         * dom/Document.cpp:
1689
1690             Scrub leftovers from the defunct Chromium port.
1691
1692 2014-01-03  Jinwoo Song  <jinwoo7.song@samsung.com>
1693
1694         VibrationPattern should allocate an single vector instance for single integer input
1695         https://bugs.webkit.org/show_bug.cgi?id=126417
1696
1697         Reviewed by Gyuyoung Kim.
1698
1699         When the Vibration pattern is set with a single integer, the VibrationPattern should
1700         be set with this integer as a vibration time. But the VibrationPattern(unsigned vector) was
1701         initialized with a single parameter, the vibration time, so the time was used to set
1702         the size of vector.
1703
1704         * Modules/vibration/NavigatorVibration.cpp:
1705         (WebCore::NavigatorVibration::vibrate):
1706
1707 2014-01-02  Jaehun Lim  <ljaehun.lim@samsung.com>
1708
1709         IconController.cpp needs to include <wtf/text/CString.h>
1710         https://bugs.webkit.org/show_bug.cgi?id=126415
1711
1712         Reviewed by Gyuyoung Kim.
1713
1714         Build fails in IconController.cpp when ICONDATABASE is disabled.
1715         WebKit/Source/WebCore/loader/icon/IconController.cpp:124:110: error: invalid use of incomplete type ‘class WTF::CString’
1716         IconController.cpp needs #include <wtf/text/CString.h>.
1717
1718         No new tests. Just build fix.
1719
1720         * loader/icon/IconController.cpp: Add #include statement.
1721
1722 2014-01-02  Ryuan Choi  <ryuan.choi@samsung.com>
1723
1724         [EFL] Previous scrollbar is remained sometimes
1725         https://bugs.webkit.org/show_bug.cgi?id=126414
1726
1727         Reviewed by Gyuyoung Kim.
1728
1729         * platform/efl/ScrollbarEfl.cpp:
1730         (ScrollbarEfl::invalidate):
1731         Updated scrollbar visibility in Scrollbar::invalidate().
1732         * platform/efl/ScrollbarEfl.h:
1733         Removed show()/hide() which never been called() for scrollbar.
1734
1735 2014-01-02  Brent Fulgham  <bfulgham@apple.com>
1736
1737         [WebGL] Correct symbol lookup logic to handle 1-element arrays
1738         https://bugs.webkit.org/show_bug.cgi?id=126411
1739         <rdar://problem/15394564>
1740
1741         Reviewed by Dean Jackson.
1742
1743         Tested by revisions to webgl/1.0.2/conformance/glsl/misc/shader-with-array-of-structs-containing-arrays.html
1744
1745         * html/canvas/WebGLRenderingContext.cpp:
1746         (WebCore::WebGLRenderingContext::getUniformLocation): Revise to
1747         handle access to zeroeth element of the array.
1748
1749 2014-01-02  Myles C. Maxfield  <mmaxfield@apple.com>
1750
1751         Crash in WebCore::translateIntersectionPointsToSkipInkBoundaries
1752         https://bugs.webkit.org/show_bug.cgi?id=126252
1753
1754         Reviewed by Alexey Proskuryakov.
1755
1756         lastIntermediate was a iterator pointing into a Vector, which was being re-used
1757         even while appending to the Vector. If any of the append operators triggered
1758         a realloc, the iterator would point to the old free'ed memory.
1759
1760         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-crash-many-gaps.html
1761
1762         * rendering/InlineTextBox.cpp:
1763         (WebCore::translateIntersectionPointsToSkipInkBoundaries):
1764
1765 2014-01-02  Brent Fulgham  <bfulgham@apple.com>
1766
1767         [WebGL] Correct symbol lookup logic to handle 1-element arrays
1768         https://bugs.webkit.org/show_bug.cgi?id=126411
1769         <rdar://problem/15394564>
1770
1771         Reviewed by Dean Jackson.
1772
1773         * html/canvas/WebGLRenderingContext.cpp:
1774         (WebCore::WebGLRenderingContext::getUniformLocation): Revise code to handle the case of single-element
1775         arrays.
1776
1777 2014-01-02  Sam Weinig  <sam@webkit.org>
1778
1779         Update Promises to the https://github.com/domenic/promises-unwrapping spec
1780         https://bugs.webkit.org/show_bug.cgi?id=120954
1781
1782         Reviewed by Filip Pizlo.
1783
1784         * ForwardingHeaders/runtime/JSPromiseDeferred.h: Added.
1785         * ForwardingHeaders/runtime/JSPromiseResolver.h: Removed.
1786         * bindings/js/JSDOMGlobalObjectTask.cpp:
1787         (WebCore::JSGlobalObjectTask::JSGlobalObjectTask):
1788         * bindings/js/JSDOMGlobalObjectTask.h:
1789         * bindings/js/JSDOMPromise.cpp:
1790         (WebCore::DeferredWrapper::DeferredWrapper):
1791         (WebCore::DeferredWrapper::promise):
1792         (WebCore::DeferredWrapper::resolve):
1793         (WebCore::DeferredWrapper::reject):
1794         * bindings/js/JSDOMPromise.h:
1795         (WebCore::DeferredWrapper::resolve):
1796         (WebCore::DeferredWrapper::reject):
1797         (WebCore::DeferredWrapper::resolve<String>):
1798         (WebCore::DeferredWrapper::resolve<bool>):
1799         (WebCore::char>>):
1800         (WebCore::DeferredWrapper::reject<String>):
1801         * bindings/js/JSDOMWindowBase.cpp:
1802         (WebCore::JSDOMWindowBase::queueTaskToEventLoop):
1803         * bindings/js/JSDOMWindowBase.h:
1804         * bindings/js/JSSubtleCryptoCustom.cpp:
1805         (WebCore::JSSubtleCrypto::encrypt):
1806         (WebCore::JSSubtleCrypto::decrypt):
1807         (WebCore::JSSubtleCrypto::sign):
1808         (WebCore::JSSubtleCrypto::verify):
1809         (WebCore::JSSubtleCrypto::digest):
1810         (WebCore::JSSubtleCrypto::generateKey):
1811         (WebCore::JSSubtleCrypto::importKey):
1812         (WebCore::JSSubtleCrypto::exportKey):
1813         (WebCore::JSSubtleCrypto::wrapKey):
1814         (WebCore::JSSubtleCrypto::unwrapKey):
1815         * bindings/js/JSWorkerGlobalScopeBase.cpp:
1816         (WebCore::JSWorkerGlobalScopeBase::queueTaskToEventLoop):
1817         * bindings/js/JSWorkerGlobalScopeBase.h:
1818
1819 2014-01-02  Tim Horton  <timothy_horton@apple.com>
1820
1821         ImageBufferBackingStoreCache should use DeferrableOneShotTimer
1822         https://bugs.webkit.org/show_bug.cgi?id=126155
1823
1824         Reviewed by Anders Carlsson.
1825
1826         Since ImageBufferBackingStoreCache's purge timer is pushed out every time
1827         a backing store is deallocated, we can easily waste a lot of time rescheduling
1828         the timer. Since it's a cache purge timer and doesn't need that kind of precision,
1829         adopt DeferrableOneShotTimer, which is much more performant when deferred frequently.
1830
1831         * platform/graphics/cg/ImageBufferBackingStoreCache.cpp:
1832         (WebCore::ImageBufferBackingStoreCache::ImageBufferBackingStoreCache):
1833         (WebCore::ImageBufferBackingStoreCache::timerFired):
1834         (WebCore::ImageBufferBackingStoreCache::schedulePurgeTimer):
1835         * platform/graphics/cg/ImageBufferBackingStoreCache.h:
1836
1837 2014-01-02  Myles C. Maxfield  <mmaxfield@apple.com>
1838
1839         Allow ImageBuffer to re-use IOSurfaces
1840         https://bugs.webkit.org/show_bug.cgi?id=125477
1841
1842         Reviewed by Geoff Garen. Modifications reviewed by Tim Horton.
1843
1844         This patch is taken from r160945, but the modifications to ImageBufferCG.cpp
1845         have been reverted.
1846
1847         This test adds a static class, ImageBufferBackingStoreCache, that vends 
1848         IOSurfaces. It remembers IOSurfaces that have been returned to it until 
1849         a configurable timeout. 
1850
1851         The storage used by this class is in the form of a HashMap from a 
1852         bucketed size to the IOSurface. There are many other data structures 
1853         that could be used, but this implementation gives a 80% hit rate on 
1854         normal browsing of some example sites with Canvas and 
1855         text-decoration-skip: ink. Because the buckets are fairly 
1856         small (rounding the width and height up to multiples of 8), traversing the 
1857         bucket contents takes on average 2 steps.  
1858
1859         Test: fast/canvas/canvas-backing-store-reuse.html 
1860
1861         * WebCore.xcodeproj/project.pbxproj: Added new caching class 
1862         * platform/graphics/cg/ImageBufferBackingStoreCache.cpp: Added. 
1863         (WebCore::createIOSurface): Copied from ImageBufferCG.cpp 
1864         (WebCore::ImageBufferBackingStoreCache::timerFired): Forget the cache 
1865         contents 
1866         (WebCore::ImageBufferBackingStoreCache::schedulePurgeTimer): 
1867         (WebCore::ImageBufferBackingStoreCache::get): Static getter 
1868         (WebCore::ImageBufferBackingStoreCache::ImageBufferBackingStoreCache): 
1869         (WebCore::ImageBufferBackingStoreCache::insertIntoCache): Memory-management 
1870         creation function 
1871         (WebCore::ImageBufferBackingStoreCache::takeFromCache): Memory-management 
1872         deletion function 
1873         (WebCore::ImageBufferBackingStoreCache::isAcceptableSurface): Does this cached 
1874         IOSurface fit the bill? 
1875         (WebCore::ImageBufferBackingStoreCache::tryTakeFromCache): Lookup 
1876         a bucket and walk through its contents 
1877         (WebCore::ImageBufferBackingStoreCache::getOrAllocate): Public function 
1878         for clients who want a IOSurface from the cache 
1879         (WebCore::ImageBufferBackingStoreCache::deallocate): Public 
1880         function for clients to return an IOSurface to the pool 
1881         * platform/graphics/cg/ImageBufferBackingStoreCache.h: Added. 
1882         (WebCore::ImageBuffer::ImageBuffer): 
1883         (WebCore::ImageBuffer::~ImageBuffer): 
1884
1885 2014-01-02  Piotr Grad  <p.grad@samsung.com>
1886
1887         Video-seek-with-negative-playback was flaky.
1888         https://bugs.webkit.org/show_bug.cgi?id=126379
1889
1890         Reviewed by Eric Carlson.
1891
1892         No new tests. Covered by existing tests.
1893
1894         m_player->setRate() should be called before updating m_playbackRate, because potentiallyPlaying() depends
1895         on endedPlayback(), which checks m_playbackRate.
1896
1897         * html/HTMLMediaElement.cpp:
1898         (WebCore::HTMLMediaElement::setPlaybackRate):
1899
1900 2014-01-02  Daniel Bates  <dabates@apple.com>
1901
1902         [iOS] Tapping any link crashes in WebCore::EventHandler::mouseMoved()
1903         (also crashes when scrolling certain sites)
1904         https://bugs.webkit.org/show_bug.cgi?id=126401
1905         <rdar://problem/15739334>
1906
1907         Reviewed by Tim Horton.
1908
1909         * page/ios/EventHandlerIOS.mm:
1910         (WebCore::currentEventSlot): Make the shared variable have static-storage duration.
1911
1912 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
1913
1914         Remove WindowIsVisible
1915         https://bugs.webkit.org/show_bug.cgi?id=126270
1916
1917         Reviewed by Tim Horton.
1918
1919         We currently track visibility in two ways - ViewState::IsVisible and ViewState::WindowIsVisible.
1920         The latter detects that the content is hidden in fewer cases than the former, and as such, the
1921         former is always preferable.
1922
1923         This affects the hidden state provided to FocusController::contentAreaDidShowOrHide and to
1924         Plugin::windowVisibilityChanged.
1925
1926         * WebCore.exp.in:
1927         * page/FocusController.cpp:
1928         (WebCore::FocusController::FocusController):
1929         (WebCore::FocusController::setContentIsVisible):
1930         * page/FocusController.h:
1931             - rename ContainingWindowIsVisible -> ContentIsVisible.
1932
1933 2014-01-02  Gavin Barraclough  <barraclough@apple.com>
1934
1935         Merge didMoveOnscreen / page visibility to isVisible
1936         https://bugs.webkit.org/show_bug.cgi?id=126268
1937
1938         Reviewed by Tim Horton.
1939
1940         The onscreen state most closely tracks view visibility (though currently
1941         also tracks a mix of in-window state). Make more consistent, simplify,
1942         and move all animation suspension logic to Page, so it can be controlled
1943         by the PageThrottler.
1944
1945         * WebCore.exp.in:
1946         * page/EventHandler.cpp:
1947         (WebCore::EventHandler::fakeMouseMoveEventTimerFired):
1948         * page/FrameView.cpp:
1949         (WebCore::FrameView::shouldSetCursor):
1950         * page/Page.cpp:
1951         (WebCore::Page::Page):
1952             - initialize new variables.
1953         (WebCore::Page::setIsVisible):
1954             - merge setVisibilityState, didMoveOnscreen, willMoveOffscreen.
1955         (WebCore::Page::setIsPrerender):
1956             - switches visibility state from hidden to prerender.
1957         (WebCore::Page::visibilityState):
1958             - computed from m_isVisible, m_isPrerender.
1959         (WebCore::Page::hiddenPageCSSAnimationSuspensionStateChanged):
1960             - m_visibilityState -> m_isVisible.
1961         * page/Page.h:
1962             - remove didMoveOnscreen/willMoveOffscreen
1963               m_isOnscreen & m_visibilityState -> m_isVisible & m_isPrerender
1964               setVisibilityState -> setIsVisible & setIsPrerender.
1965         (WebCore::Page::isVisible):
1966             - isOnscreen -> isVisible.
1967
1968 2014-01-02  Oliver Hunt  <oliver@apple.com>
1969
1970         Update bindings test results
1971
1972         * bindings/scripts/test/JS/JSTestActiveDOMObject.cpp:
1973         (WebCore::jsTestActiveDOMObjectConstructor):
1974         * bindings/scripts/test/JS/JSTestCustomNamedGetter.cpp:
1975         (WebCore::jsTestCustomNamedGetterConstructor):
1976         * bindings/scripts/test/JS/JSTestEventConstructor.cpp:
1977         (WebCore::jsTestEventConstructorConstructor):
1978         * bindings/scripts/test/JS/JSTestEventTarget.cpp:
1979         (WebCore::jsTestEventTargetConstructor):
1980         * bindings/scripts/test/JS/JSTestException.cpp:
1981         (WebCore::jsTestExceptionConstructor):
1982         * bindings/scripts/test/JS/JSTestGenerateIsReachable.cpp:
1983         (WebCore::jsTestGenerateIsReachableConstructor):
1984         * bindings/scripts/test/JS/JSTestInterface.cpp:
1985         (WebCore::jsTestInterfaceConstructor):
1986         * bindings/scripts/test/JS/JSTestMediaQueryListListener.cpp:
1987         (WebCore::jsTestMediaQueryListListenerConstructor):
1988         * bindings/scripts/test/JS/JSTestNamedConstructor.cpp:
1989         (WebCore::jsTestNamedConstructorConstructor):
1990         * bindings/scripts/test/JS/JSTestNode.cpp:
1991         (WebCore::jsTestNodeConstructor):
1992         * bindings/scripts/test/JS/JSTestObj.cpp:
1993         (WebCore::jsTestObjConstructor):
1994         * bindings/scripts/test/JS/JSTestOverloadedConstructors.cpp:
1995         (WebCore::jsTestOverloadedConstructorsConstructor):
1996         * bindings/scripts/test/JS/JSTestSerializedScriptValueInterface.cpp:
1997         (WebCore::jsTestSerializedScriptValueInterfaceConstructor):
1998         * bindings/scripts/test/JS/JSTestTypedefs.cpp:
1999         (WebCore::jsTestTypedefsConstructor):
2000         * bindings/scripts/test/JS/JSattribute.cpp:
2001         (WebCore::jsattributeConstructor):
2002         * bindings/scripts/test/JS/JSreadonly.cpp:
2003         (WebCore::jsreadonlyConstructor):
2004
2005 2013-12-23  Oliver Hunt  <oliver@apple.com>
2006
2007         Refactor PutPropertySlot to be aware of custom properties
2008         https://bugs.webkit.org/show_bug.cgi?id=126187
2009
2010         Reviewed by Antti Koivisto.
2011
2012         Update the bindings code generation and custom objects
2013         to the new function signatures
2014
2015         * bindings/js/JSDOMWindowCustom.cpp:
2016         (WebCore::JSDOMWindow::put):
2017         * bindings/objc/WebScriptObject.mm:
2018         (-[WebScriptObject setValue:forKey:]):
2019         * bindings/scripts/CodeGeneratorJS.pm:
2020         (GenerateImplementation):
2021         * bindings/scripts/test/JS/JSTestInterface.cpp:
2022         (WebCore::JSTestInterface::putByIndex):
2023         * bridge/NP_jsobject.cpp:
2024         (_NPN_SetProperty):
2025
2026 2014-01-02  Simon Fraser  <simon.fraser@apple.com>
2027
2028         Add AsyncScrollingCoordinator, which is a base class for threaded and future remote ScrollingCoordinators
2029         https://bugs.webkit.org/show_bug.cgi?id=126389
2030
2031         Reviewed by Tim Horton.
2032
2033         Add AsyncScrollingCoordinator, a ScrollingCoordinator that knows about ScrollingStateTrees
2034         and ScrollingTrees, but leaves it up to subclasses to decide when and how to commit.
2035
2036         * WebCore.xcodeproj/project.pbxproj: Added AsyncScrollingCoordinator.*
2037         * page/scrolling/AsyncScrollingCoordinator.cpp: Copied from Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.mm.
2038         (WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
2039         (WebCore::AsyncScrollingCoordinator::~AsyncScrollingCoordinator):
2040         (WebCore::AsyncScrollingCoordinator::frameViewLayoutUpdated):
2041         (WebCore::AsyncScrollingCoordinator::frameViewRootLayerDidChange):
2042         (WebCore::AsyncScrollingCoordinator::requestScrollPositionUpdate):
2043         (WebCore::AsyncScrollingCoordinator::scrollableAreaScrollbarLayerDidChange):
2044         (WebCore::AsyncScrollingCoordinator::attachToStateTree):
2045         (WebCore::AsyncScrollingCoordinator::detachFromStateTree):
2046         (WebCore::AsyncScrollingCoordinator::clearStateTree):
2047         (WebCore::AsyncScrollingCoordinator::syncChildPositions):
2048         (WebCore::AsyncScrollingCoordinator::ensureRootStateNodeForFrameView):
2049         (WebCore::AsyncScrollingCoordinator::updateScrollingNode):
2050         (WebCore::AsyncScrollingCoordinator::updateViewportConstrainedNode):
2051         (WebCore::AsyncScrollingCoordinator::setScrollLayerForNode):
2052         (WebCore::AsyncScrollingCoordinator::setCounterScrollingLayerForNode):
2053         (WebCore::AsyncScrollingCoordinator::setHeaderLayerForNode):
2054         (WebCore::AsyncScrollingCoordinator::setFooterLayerForNode):
2055         (WebCore::AsyncScrollingCoordinator::setNonFastScrollableRegionForNode):
2056         (WebCore::AsyncScrollingCoordinator::setWheelEventHandlerCountForNode):
2057         (WebCore::AsyncScrollingCoordinator::setScrollBehaviorForFixedElementsForNode):
2058         (WebCore::AsyncScrollingCoordinator::setScrollbarPaintersFromScrollbarsForNode):
2059         (WebCore::AsyncScrollingCoordinator::setSynchronousScrollingReasons):
2060         (WebCore::AsyncScrollingCoordinator::updateMainFrameScrollLayerPosition):
2061         (WebCore::AsyncScrollingCoordinator::recomputeWheelEventHandlerCountForFrameView):
2062         (WebCore::AsyncScrollingCoordinator::isRubberBandInProgress):
2063         (WebCore::AsyncScrollingCoordinator::setScrollPinningBehavior):
2064         (WebCore::AsyncScrollingCoordinator::scrollingStateTreeAsText):
2065         * page/scrolling/AsyncScrollingCoordinator.h: Copied from Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.h.
2066         (WebCore::AsyncScrollingCoordinator::scrollingTree):
2067         (WebCore::AsyncScrollingCoordinator::setScrollingTree):
2068         (WebCore::AsyncScrollingCoordinator::scrollingStateTree):
2069         (WebCore::AsyncScrollingCoordinator::releaseScrollingTree):
2070         * page/scrolling/ScrollingCoordinator.h: Add casting support.
2071         (WebCore::ScrollingCoordinator::isAsyncScrollingCoordinator):
2072         * page/scrolling/ThreadedScrollingTree.h: commitNewTreeState() needs to be public.
2073         * page/scrolling/mac/ScrollingCoordinatorMac.h:
2074         * page/scrolling/mac/ScrollingCoordinatorMac.mm: Lots of code moved to AsyncScrollingCoordinator.
2075         (WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
2076         (WebCore::ScrollingCoordinatorMac::~ScrollingCoordinatorMac):
2077         (WebCore::ScrollingCoordinatorMac::pageDestroyed):
2078         (WebCore::ScrollingCoordinatorMac::commitTreeStateIfNeeded):
2079         (WebCore::ScrollingCoordinatorMac::handleWheelEvent):
2080         (WebCore::ScrollingCoordinatorMac::scheduleTreeStateCommit):
2081         (WebCore::ScrollingCoordinatorMac::commitTreeState):
2082         (WebCore::ScrollingCoordinatorMac::updateTiledScrollingIndicator):
2083
2084 2014-01-02  Andreas Kling  <akling@apple.com>
2085
2086         Simplify the insides of DocumentSharedObjectPool and reduce memory usage.
2087
2088         Merging Blink r164152 by Elliott Sprehn.
2089
2090         Instead of storing an OwnPtr to an object that has a pointer to the
2091         ShareableElementData as well as a pointer into the ShareableElementData
2092         and the length we can just store a RefPtr to the SharableElementData.
2093
2094         This also reduces the memory usage of the pool by 2 pointers per entry.
2095
2096         * dom/DocumentSharedObjectPool.h:
2097         * dom/DocumentSharedObjectPool.cpp:
2098         (WebCore::attributeHash):
2099         (WebCore::hasSameAttributes):
2100         (WebCore::DocumentSharedObjectPool::cachedShareableElementDataWithAttributes):
2101
2102 2014-01-02  Dirk Schulze  <krit@webkit.org>
2103
2104         Support <box> values computed style for 'clip-path' property
2105         https://bugs.webkit.org/show_bug.cgi?id=126148
2106
2107         Reviewed by Simon Fraser.
2108
2109         Calculate computed style for 'clip-path' property.
2110
2111         Updated tests to check for computed style.
2112
2113         * css/BasicShapeFunctions.cpp: Add box value bounding-box.
2114         (WebCore::valueForBox):
2115         (WebCore::boxForValue):
2116         * css/CSSComputedStyleDeclaration.cpp: Return the computed style
2117             for 'clip-path'.
2118         (WebCore::ComputedStyleExtractor::propertyValue):
2119         * css/DeprecatedStyleBuilder.cpp: Create CSSValueLists for 'clip-th'.
2120         (WebCore::ApplyPropertyClipPath::applyValue):
2121         * rendering/ClipPathOperation.h: Add bounding-box value.
2122         (WebCore::ShapeClipPathOperation::pathForReferenceRect):
2123         (WebCore::ShapeClipPathOperation::setReferenceBox):
2124         (WebCore::ShapeClipPathOperation::referenceBox):
2125         (WebCore::BoxClipPathOperation::create):
2126         (WebCore::BoxClipPathOperation::pathForReferenceRect):
2127         (WebCore::BoxClipPathOperation::referenceBox):
2128         (WebCore::BoxClipPathOperation::BoxClipPathOperation):
2129         * rendering/shapes/ShapeInfo.h: Add bounding-box value.
2130         (WebCore::ShapeInfo::setShapeSize):
2131         (WebCore::ShapeInfo::logicalTopOffset):
2132         (WebCore::ShapeInfo::logicalLeftOffset):
2133         * rendering/style/BasicShapes.cpp: Add bounding-box value.
2134         (WebCore::BasicShape::referenceBoxSize):
2135         * rendering/style/BasicShapes.h:
2136
2137 2014-01-02  Antti Koivisto  <antti@apple.com>
2138
2139         Always resolve style from root
2140         https://bugs.webkit.org/show_bug.cgi?id=126380
2141
2142         Reviewed by Andreas Kling.
2143         
2144         Forced style resolve that does not start from the root is never really correct. 
2145         Remove the few remaining instances.
2146
2147         * dom/ShadowRoot.cpp:
2148         (WebCore::ShadowRoot::setResetStyleInheritance):
2149         
2150             Update style asynchronously.
2151
2152         * dom/ShadowRoot.h:
2153         * dom/Text.h:
2154         * html/HTMLPlugInImageElement.cpp:
2155         (WebCore::HTMLPlugInImageElement::createElementRenderer):
2156         (WebCore::HTMLPlugInImageElement::documentWillSuspendForPageCache):
2157         (WebCore::HTMLPlugInImageElement::documentDidResumeFromPageCache):
2158         
2159             Delete the render tree synchronously on suspend and rebuild it asynchronously on resume.
2160             No need for m_customStyleForPageCache hack.
2161
2162         * html/HTMLPlugInImageElement.h:
2163         
2164             Remove m_customStyleForPageCache.
2165
2166         * style/StyleResolveTree.cpp:
2167         * style/StyleResolveTree.h:
2168         
2169             Remove Element version of resolveTree from the interface.
2170
2171         * svg/SVGUseElement.h:
2172
2173 2014-01-02  Antti Koivisto  <antti@apple.com>
2174
2175         Remove PlaceholderDocument
2176         https://bugs.webkit.org/show_bug.cgi?id=126382
2177
2178         Reviewed by Andreas Kling.
2179
2180         Remove PlaceholderDocument class and replace it with a bit in Document.
2181
2182         * WebCore.xcodeproj/project.pbxproj:
2183         * dom/Document.cpp:
2184         (WebCore::Document::Document):
2185         (WebCore::Document::createRenderTree):
2186         * dom/Document.h:
2187         
2188             Also make Synthesized a construction flag instead of a boolean parameter.
2189
2190         (WebCore::Document::createNonRenderedPlaceholder):
2191         * html/HTMLDocument.cpp:
2192         (WebCore::HTMLDocument::HTMLDocument):
2193         * html/HTMLDocument.h:
2194         (WebCore::HTMLDocument::create):
2195         (WebCore::HTMLDocument::createSynthesizedDocument):
2196         * loader/DocumentWriter.cpp:
2197         (WebCore::DocumentWriter::createDocument):
2198         * loader/PlaceholderDocument.cpp: Removed.
2199         * loader/PlaceholderDocument.h: Removed.
2200         * pdf/ios/PDFDocument.h:
2201         (WebCore::PDFDocument::PDFDocument):
2202
2203 2014-01-01  Antti Koivisto  <antti@apple.com>
2204
2205         Remove public attachRenderTree
2206         https://bugs.webkit.org/show_bug.cgi?id=126368
2207
2208         Reviewed by Andreas Kling.
2209
2210         Remove the remaining explicit render tree construction.
2211
2212         * dom/Document.cpp:
2213         (WebCore::Document::createRenderTree):
2214         
2215            Use recalcStyle() instead of calling attachRenderTree directly.
2216
2217         * html/HTMLViewSourceDocument.cpp:
2218         (WebCore::HTMLViewSourceDocument::addText):
2219         
2220             Remove forgotten attachTextRenderer.
2221
2222         * html/shadow/InsertionPoint.cpp:
2223         (WebCore::InsertionPoint::InsertionPoint):
2224         
2225             Remove willAttachRenderers/didAttachRenderers hack.
2226
2227         * html/shadow/InsertionPoint.h:
2228         (WebCore::toInsertionPoint):
2229         * loader/PlaceholderDocument.cpp:
2230         (WebCore::PlaceholderDocument::createRenderTree):
2231         
2232             Seriously, nothing to do here.
2233
2234         * style/StyleResolveTree.cpp:
2235         (WebCore::Style::attachDistributedChildren):
2236         (WebCore::Style::attachChildren):
2237         (WebCore::Style::detachDistributedChildren):
2238         (WebCore::Style::detachChildren):
2239         
2240             Making attaching and detaching distributed insertion point children part of ResolveTree internals.
2241
2242         * style/StyleResolveTree.h:
2243         
2244             Remove interfaces with no clients.
2245
2246 2014-01-01  Seokju Kwon  <seokju@webkit.org>
2247
2248         Remove stale ScriptProfiler methods
2249         https://bugs.webkit.org/show_bug.cgi?id=126373
2250
2251         Reviewed by Darin Adler.
2252
2253         No new tests, No change behavior. 
2254
2255         * bindings/js/ScriptProfiler.h: Remove dead code.
2256
2257 2014-01-01  Andreas Kling  <akling@apple.com>
2258
2259         Remove ChromeClient::fullScreenRendererChanged().
2260         <https://webkit.org/b/126370>
2261
2262         This hook was added in r75277 to notify WebFullScreenController when
2263         the full screen renderer changed. In r110216 the code was refactored,
2264         making this notification unnecessary.
2265
2266         Reviewed by Antti Koivisto.
2267
2268 2014-01-01  Simon Fraser  <simon.fraser@apple.com>
2269
2270         Fix the build by exposing some more scrolling state node headers
2271         as Private in WebCore.framework.
2272
2273         * WebCore.xcodeproj/project.pbxproj:
2274
2275 2014-01-01  Ryuan Choi  <ryuan.choi@samsung.com>
2276
2277         [EFL] Unreviewed build fix after r160903 when ACCESSIBILITY is disabled
2278
2279         * accessibility/AccessibilityObject.h:
2280         (WebCore::AccessibilityObject::children):
2281
2282 2014-01-01  Andreas Kling  <akling@apple.com>
2283
2284         RenderScrollbar: Map of scrollbar parts should use RenderPtr.
2285         <https://webkit.org/b/126367>
2286
2287         Turn RenderScrollbar::m_parts into HashMap of RenderPtrs. This makes
2288         renderer destruction automatic and lets us remove some code.
2289
2290         Reviewed by Antti Koivisto.
2291
2292         * rendering/RenderPtr.h:
2293
2294             Add HashTraits for RenderPtr so we can use them as values in
2295             WTF hash tables.
2296
2297         * rendering/RenderScrollbar.h:
2298         * rendering/RenderScrollbar.cpp:
2299         (WebCore::RenderScrollbar::~RenderScrollbar):
2300         (WebCore::RenderScrollbar::setParent):
2301         (WebCore::RenderScrollbar::updateScrollbarParts):
2302         (WebCore::RenderScrollbar::updateScrollbarPart):
2303
2304             Remove now-unneeded kludges of logic to manually delete scrollbar
2305             part renderers in various scenarios.
2306
2307 2014-01-01  Antti Koivisto  <antti@apple.com>
2308
2309         Remove reattachRenderTree
2310         https://bugs.webkit.org/show_bug.cgi?id=126366
2311
2312         Reviewed by Andreas Kling.
2313
2314         Remove the last remaining client.
2315
2316         * html/HTMLSelectElement.cpp:
2317         (WebCore::HTMLSelectElement::parseAttribute):
2318         
2319             Reconstruct render tree asynchronously.
2320
2321         (WebCore::HTMLSelectElement::scrollToSelection):
2322         (WebCore::HTMLSelectElement::setOptionsChangedOnRenderer):
2323         (WebCore::HTMLSelectElement::selectOption):
2324         
2325             It is not safe to cast the renderer based on usesMenuList test. Switch to RenderObject::isMenuList test.
2326
2327         (WebCore::HTMLSelectElement::parseMultipleAttribute):
2328         
2329             Reconstruct render tree asynchronously.
2330
2331         (WebCore::HTMLSelectElement::platformHandleKeydownEvent):
2332         (WebCore::HTMLSelectElement::menuListDefaultEventHandler):
2333         (WebCore::HTMLSelectElement::defaultEventHandler):
2334         * style/StyleResolveTree.cpp:
2335         * style/StyleResolveTree.h:
2336         
2337             Remove the function.
2338
2339 2014-01-01  Simon Fraser  <simon.fraser@apple.com>
2340
2341         Create a ThreadedScrollingTree subclass of ScrollingTree, and push all knowledge of the scrolling thread into it
2342         https://bugs.webkit.org/show_bug.cgi?id=126362
2343
2344         Reviewed by Sam Weinig.
2345
2346         Eventually we'll have a ScrollingTree in situations where there is no scrolling
2347         thread, so make the ScrollingTree base class thread-agnostic (but threadsafe),
2348         and subclass it in ThreadedScrollingTree for scrolling-thread-specific functionality.
2349         
2350         The ScrollingTree base class also no longer needs to know about the
2351         ScrollingCoordinator.
2352
2353         ScrollingCoordinatorMac creates a ThreadedScrollingTree.
2354
2355         * WebCore.exp.in:
2356         * WebCore.xcodeproj/project.pbxproj: Add ThreadedScrollingTree.*
2357         Make some headers Private that we'll need in WebKit2 soon.
2358         * page/scrolling/ScrollingStateTree.h: Drive-by cleanup: clone() was unimplemented.
2359         * page/scrolling/ScrollingTree.cpp:
2360         (WebCore::ScrollingTree::ScrollingTree):
2361         (WebCore::ScrollingTree::~ScrollingTree):
2362         (WebCore::ScrollingTree::shouldHandleWheelEventSynchronously): Wrap up some logic that
2363         involves taking the mutex, so ThreadedScrollingTree can conveniently call it.
2364         (WebCore::ScrollingTree::handleWheelEvent):
2365         (WebCore::ScrollingTree::commitNewTreeState):
2366         (WebCore::ScrollingTree::setMainFrameScrollPosition):
2367         (WebCore::ScrollingTree::isHandlingProgrammaticScroll):
2368         * page/scrolling/ScrollingTree.h:
2369         (WebCore::ScrollingTree::isThreadedScrollingTree):
2370         (WebCore::ScrollingTree::invalidate):
2371         * page/scrolling/ThreadedScrollingTree.cpp: Added.
2372         (WebCore::ThreadedScrollingTree::create):
2373         (WebCore::ThreadedScrollingTree::ThreadedScrollingTree):
2374         (WebCore::ThreadedScrollingTree::~ThreadedScrollingTree):
2375         (WebCore::ThreadedScrollingTree::tryToHandleWheelEvent):
2376         (WebCore::ThreadedScrollingTree::handleWheelEvent):
2377         (WebCore::derefScrollingCoordinator):
2378         (WebCore::ThreadedScrollingTree::invalidate):
2379         (WebCore::ThreadedScrollingTree::commitNewTreeState):
2380         (WebCore::ThreadedScrollingTree::updateMainFrameScrollPosition):
2381         (WebCore::ThreadedScrollingTree::handleWheelEventPhase):
2382         * page/scrolling/ThreadedScrollingTree.h: Added.
2383         (WebCore::ThreadedScrollingTree::isThreadedScrollingTree):
2384         * page/scrolling/mac/ScrollingCoordinatorMac.h:
2385         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2386         (WebCore::ScrollingCoordinatorMac::ScrollingCoordinatorMac):
2387         (WebCore::ScrollingCoordinatorMac::handleWheelEvent):
2388
2389 2014-01-01  Andreas Kling  <akling@apple.com>
2390
2391         FrameView: Store scroll corner renderer in a RenderPtr.
2392         <https://webkit.org/b/126364>
2393
2394         Make FrameView::m_scrollCorner a RenderPtr<RenderScrollbarPart> and
2395         remove two manual destroy() calls.
2396
2397         Reviewed by Antti Koivisto.
2398
2399 2014-01-01  Antti Koivisto  <antti@apple.com>
2400
2401         Remove elementChildren/elementDescendants shorthands
2402         https://bugs.webkit.org/show_bug.cgi?id=126363
2403
2404         Reviewed by Anders Carlsson.
2405
2406         Just use childrenOfType<Element>/descendantsOfType<Element> instead. They are not that much longer
2407         and consistency is valuable.
2408
2409         * accessibility/AccessibilityNodeObject.cpp:
2410         (WebCore::AccessibilityNodeObject::canvasHasFallbackContent):
2411         (WebCore::siblingWithAriaRole):
2412         * accessibility/AccessibilityTable.cpp:
2413         (WebCore::AccessibilityTable::isDataTable):
2414         * css/StyleInvalidationAnalysis.cpp:
2415         (WebCore::StyleInvalidationAnalysis::invalidateStyle):
2416         * dom/ChildNodeList.cpp:
2417         (WebCore::ChildNodeList::namedItem):
2418         * dom/Document.cpp:
2419         (WebCore::Document::buildAccessKeyMap):
2420         (WebCore::Document::childrenChanged):
2421         * dom/Element.cpp:
2422         (WebCore::Element::resetComputedStyle):
2423         * dom/ElementChildIterator.h:
2424         * dom/ElementDescendantIterator.h:
2425         * dom/SelectorQuery.cpp:
2426         (WebCore::elementsForLocalName):
2427         (WebCore::anyElement):
2428         (WebCore::SelectorDataList::executeSingleTagNameSelectorData):
2429         (WebCore::SelectorDataList::executeSingleClassNameSelectorData):
2430         (WebCore::SelectorDataList::executeSingleSelectorData):
2431         (WebCore::SelectorDataList::executeSingleMultiSelectorData):
2432         * editing/ApplyStyleCommand.cpp:
2433         (WebCore::ApplyStyleCommand::cleanupUnstyledAppleStyleSpans):
2434         * editing/ReplaceSelectionCommand.cpp:
2435         (WebCore::removeHeadContents):
2436         * editing/markup.cpp:
2437         (WebCore::completeURLs):
2438         * html/HTMLFieldSetElement.cpp:
2439         (WebCore::HTMLFieldSetElement::refreshElementsIfNeeded):
2440         * html/HTMLObjectElement.cpp:
2441         (WebCore::HTMLObjectElement::containsJavaApplet):
2442         * loader/PlaceholderDocument.cpp:
2443         (WebCore::PlaceholderDocument::createRenderTree):
2444         * rendering/RenderChildIterator.h:
2445         * svg/SVGSVGElement.cpp:
2446         (WebCore::SVGSVGElement::getElementById):
2447         * svg/SVGUseElement.cpp:
2448         (WebCore::subtreeContainsDisallowedElement):
2449         (WebCore::removeDisallowedElementsFromSubtree):
2450
2451 2014-01-01  Antti Koivisto  <antti@apple.com>
2452
2453         Do less synchronous render tree construction
2454         https://bugs.webkit.org/show_bug.cgi?id=126359
2455
2456         Reviewed by Anders Carlsson.
2457
2458         Remove some now-unnecessary attachRenderTree calls.
2459
2460         * html/HTMLDetailsElement.cpp:
2461         (WebCore::HTMLDetailsElement::parseAttribute):
2462         * html/HTMLInputElement.cpp:
2463         (WebCore::HTMLInputElement::parseAttribute):
2464         * html/HTMLObjectElement.cpp:
2465         (WebCore::HTMLObjectElement::renderFallbackContent):
2466         * html/HTMLPlugInElement.cpp:
2467         (WebCore::HTMLPlugInElement::didAddUserAgentShadowRoot):
2468         * html/HTMLPlugInImageElement.cpp:
2469         (WebCore::HTMLPlugInImageElement::willRecalcStyle):
2470         (WebCore::HTMLPlugInImageElement::createShadowIFrameSubtree):
2471         (WebCore::HTMLPlugInImageElement::restartSnapshottedPlugIn):
2472         * html/HTMLViewSourceDocument.cpp:
2473         (WebCore::HTMLViewSourceDocument::createContainingTable):
2474         (WebCore::HTMLViewSourceDocument::addSpanWithClassName):
2475         (WebCore::HTMLViewSourceDocument::addLine):
2476         (WebCore::HTMLViewSourceDocument::finishLine):
2477         (WebCore::HTMLViewSourceDocument::addBase):
2478         (WebCore::HTMLViewSourceDocument::addLink):
2479         * xml/XMLErrors.cpp:
2480         (WebCore::XMLErrors::insertErrorMessageBlock):
2481
2482 2014-01-01  Simon Fraser  <simon.fraser@apple.com>
2483
2484         Updating the scrolling tree should use references to state nodes
2485         https://bugs.webkit.org/show_bug.cgi?id=126360
2486
2487         Reviewed by Anders Carlsson.
2488
2489         Change functions related to ScrollingTreeNode updating to take
2490         const references to state nodes rather than pointers.
2491
2492         * page/scrolling/ScrollingStateNode.h:
2493         (WebCore::ScrollingStateNode::hasChangedProperty):
2494         * page/scrolling/ScrollingTree.cpp:
2495         (WebCore::ScrollingTree::commitNewTreeState):
2496         (WebCore::ScrollingTree::updateTreeFromStateNode): The node can be nil so
2497         this continues to take a pointer.
2498         (WebCore::ScrollingTree::removeDestroyedNodes):
2499         * page/scrolling/ScrollingTree.h:
2500         * page/scrolling/ScrollingTreeNode.h:
2501         (WebCore::ScrollingTreeNode::updateAfterChildren):
2502         * page/scrolling/ScrollingTreeScrollingNode.cpp:
2503         (WebCore::ScrollingTreeScrollingNode::updateBeforeChildren):
2504         * page/scrolling/ScrollingTreeScrollingNode.h:
2505         * page/scrolling/mac/ScrollingTreeFixedNode.h:
2506         * page/scrolling/mac/ScrollingTreeFixedNode.mm:
2507         (WebCore::ScrollingTreeFixedNode::updateBeforeChildren):
2508         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.h:
2509         * page/scrolling/mac/ScrollingTreeScrollingNodeMac.mm:
2510         (WebCore::ScrollingTreeScrollingNodeMac::updateBeforeChildren):
2511         (WebCore::ScrollingTreeScrollingNodeMac::updateAfterChildren):
2512         * page/scrolling/mac/ScrollingTreeStickyNode.h:
2513         * page/scrolling/mac/ScrollingTreeStickyNode.mm:
2514         (WebCore::ScrollingTreeStickyNode::updateBeforeChildren):
2515
2516 2014-01-01  Simon Fraser  <simon.fraser@apple.com>
2517
2518         Add a typedef for PlatformLayerID on GraphicsLayer, and migrate RemoteLayerTreeTransaction to use it
2519         https://bugs.webkit.org/show_bug.cgi?id=126346
2520
2521         Reviewed by Tim Horton.
2522
2523         Remote scrolling tree code is soon going to use RemoteLayerTreeTransaction::LayerID,
2524         so it makes more sense to put this layerID type on GraphicsLayer as
2525         GraphicsLayer::PlatformLayerID.
2526         
2527         Also add some type cast macros for PlatformCALayer and subclasses, and use them
2528         where appropriate.
2529
2530         * platform/graphics/GraphicsLayer.h:
2531         * platform/graphics/ca/GraphicsLayerCA.cpp:
2532         (WebCore::GraphicsLayerCA::setName):
2533         * platform/graphics/ca/PlatformCALayer.h:
2534         (WebCore::PlatformCALayer::isPlatformCALayerMac):
2535         (WebCore::PlatformCALayer::isPlatformCALayerRemote):
2536         (WebCore::PlatformCALayer::PlatformCALayer):
2537         * platform/graphics/ca/mac/PlatformCALayerMac.h:
2538
2539 2013-12-31  Simon Fraser  <simon.fraser@apple.com>
2540
2541         ScrollingStateNodes should have a reference to the ScrollingStateTree
2542         https://bugs.webkit.org/show_bug.cgi?id=126348
2543
2544         Reviewed by Sam Weinig.
2545
2546         Make ScrollingStateNodes always belong to a ScrollingStateTree, and thus
2547         have a reference to the tree rather than a pointer. When cloning nodes,
2548         they are adopted by a new ScrollingStateTree, which adds them to its
2549         node map (which didn't happen before).
2550         
2551         In subclasses access the ScrollingStateTree through a member function.
2552
2553         * page/scrolling/ScrollingStateFixedNode.cpp:
2554         (WebCore::ScrollingStateFixedNode::create):
2555         (WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
2556         (WebCore::ScrollingStateFixedNode::clone):
2557         (WebCore::ScrollingStateFixedNode::updateConstraints):
2558         * page/scrolling/ScrollingStateFixedNode.h:
2559         * page/scrolling/ScrollingStateNode.cpp:
2560         (WebCore::ScrollingStateNode::ScrollingStateNode):
2561         (WebCore::ScrollingStateNode::cloneAndReset):
2562         (WebCore::ScrollingStateNode::cloneAndResetChildren):
2563         (WebCore::ScrollingStateNode::willBeRemovedFromStateTree):
2564         * page/scrolling/ScrollingStateNode.h:
2565         (WebCore::ScrollingStateNode::scrollingStateTree):
2566         * page/scrolling/ScrollingStateScrollingNode.cpp:
2567         (WebCore::ScrollingStateScrollingNode::create):
2568         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
2569         (WebCore::ScrollingStateScrollingNode::clone):
2570         (WebCore::ScrollingStateScrollingNode::setViewportRect):
2571         (WebCore::ScrollingStateScrollingNode::setTotalContentsSize):
2572         (WebCore::ScrollingStateScrollingNode::setScrollOrigin):
2573         (WebCore::ScrollingStateScrollingNode::setScrollableAreaParameters):
2574         (WebCore::ScrollingStateScrollingNode::setFrameScaleFactor):
2575         (WebCore::ScrollingStateScrollingNode::setNonFastScrollableRegion):
2576         (WebCore::ScrollingStateScrollingNode::setWheelEventHandlerCount):
2577         (WebCore::ScrollingStateScrollingNode::setSynchronousScrollingReasons):
2578         (WebCore::ScrollingStateScrollingNode::setScrollBehaviorForFixedElements):
2579         (WebCore::ScrollingStateScrollingNode::setRequestedScrollPosition):
2580         (WebCore::ScrollingStateScrollingNode::setHeaderHeight):
2581         (WebCore::ScrollingStateScrollingNode::setFooterHeight):
2582         * page/scrolling/ScrollingStateScrollingNode.h:
2583         * page/scrolling/ScrollingStateStickyNode.cpp:
2584         (WebCore::ScrollingStateStickyNode::create):
2585         (WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
2586         (WebCore::ScrollingStateStickyNode::clone):
2587         (WebCore::ScrollingStateStickyNode::updateConstraints):
2588         * page/scrolling/ScrollingStateStickyNode.h:
2589         * page/scrolling/ScrollingStateTree.cpp:
2590         (WebCore::ScrollingStateTree::attachNode):
2591         (WebCore::ScrollingStateTree::commit):
2592         (WebCore::ScrollingStateTree::addNode):
2593         * page/scrolling/ScrollingStateTree.h:
2594         * page/scrolling/mac/ScrollingStateNodeMac.mm:
2595         (WebCore::ScrollingStateNode::setScrollLayer):
2596         * page/scrolling/mac/ScrollingStateScrollingNodeMac.mm:
2597         (WebCore::ScrollingStateScrollingNode::setCounterScrollingLayer):
2598         (WebCore::ScrollingStateScrollingNode::setHeaderLayer):
2599         (WebCore::ScrollingStateScrollingNode::setFooterLayer):
2600         (WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars):
2601
2602 2013-12-31  Simon Fraser  <simon.fraser@apple.com>
2603
2604         Give ScrollingStateNodes a nodeType()
2605         https://bugs.webkit.org/show_bug.cgi?id=126347
2606
2607         Reviewed by Tim Horton.
2608
2609         When we start serializing ScrollingStateNodes to send to the UI process,
2610         it's more convenient if they have a nodeType member rather than virtual functions,
2611         so give them one, and fix the casting macros to use it. This allows us to use
2612         a switch() on node creation, so the compiler will tell us if we forgot to create
2613         a node type.
2614
2615         * page/scrolling/ScrollingStateFixedNode.cpp:
2616         (WebCore::ScrollingStateFixedNode::ScrollingStateFixedNode):
2617         * page/scrolling/ScrollingStateFixedNode.h:
2618         * page/scrolling/ScrollingStateNode.cpp:
2619         (WebCore::ScrollingStateNode::ScrollingStateNode):
2620         * page/scrolling/ScrollingStateNode.h: const ScrollingNodeType field
2621         (can't be modified after construction), and move the m_scrollingStateTree
2622         member after it (the awkward protected:/private: will be cleaned up in a later patch).
2623         (WebCore::ScrollingStateNode::nodeType):
2624         * page/scrolling/ScrollingStateScrollingNode.cpp:
2625         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
2626         * page/scrolling/ScrollingStateScrollingNode.h:
2627         * page/scrolling/ScrollingStateStickyNode.cpp:
2628         (WebCore::ScrollingStateStickyNode::ScrollingStateStickyNode):
2629         * page/scrolling/ScrollingStateStickyNode.h:
2630         * page/scrolling/ScrollingTree.cpp:
2631         (WebCore::ScrollingTree::updateTreeFromStateNode):
2632
2633 2013-12-31  Andreas Kling  <akling@apple.com>
2634
2635         Out-of-line RenderStyle substructure copying helpers.
2636         <https://webkit.org/b/126340>
2637
2638         This shrinks the .access() calls by moving memory allocation logic
2639         out-of-line, though I'm really doing this to make Instruments.app
2640         allocations output more readable.
2641
2642         Writes to e.g 'font' or 'color' will now be grouped under a single
2643         StyleInheritedData::copy() call instead of being spread out over
2644         setFontDescription(), setLineHeight(), setColor(), etc.
2645
2646         Reviewed by Anders Carlsson.
2647
2648 2013-12-31  Andreas Kling  <akling@apple.com>
2649
2650         RenderListItem should store its marker in a RenderPtr.
2651         <https://webkit.org/b/126298>
2652
2653         Make RenderListItem::m_marker a RenderPtr<RenderListMarker> and
2654         remove two manual destroy() calls. Tweaked code to reduce nesting.
2655
2656         Reviewed by Anders Carlsson.
2657
2658 2013-12-31  Andreas Kling  <akling@apple.com>
2659
2660         Element's renderer factory should return RenderPtrs.
2661         <https://webkit.org/b/126318>
2662
2663         Rename Element::createRenderer() to createElementRenderer() and have
2664         it return RenderPtr<RenderElement>. Propagate signature until it
2665         builds again.
2666
2667         We leakPtr() the renderer at two call sites when handing things over
2668         to raw pointer API. This'll get tidied up in subsequent patches.
2669
2670         Reviewed by Sam Weinig.
2671
2672 2013-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
2673
2674         [SOUP] Return early in ResourceHandle::receivedCancellation if the load has already cancelled
2675         https://bugs.webkit.org/show_bug.cgi?id=126287
2676
2677         Reviewed by Martin Robinson.
2678
2679         This situation can happen when using the network process, because
2680         the ReceivedCancellation message can be received when the resource
2681         loader has already been removed, but the authentication challenge
2682         still has a reference to the ResourceHandleClient.
2683
2684         * platform/network/soup/ResourceHandleSoup.cpp:
2685         (WebCore::ResourceHandle::receivedCancellation):
2686
2687 2013-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
2688
2689         [SOUP] The initiating page is lost after a redirection
2690         https://bugs.webkit.org/show_bug.cgi?id=126293
2691
2692         Reviewed by Martin Robinson.
2693
2694         The initiating page id is attached to the initial soup request
2695         object, but not to the one created after a redirection.
2696
2697         * platform/network/soup/ResourceHandleSoup.cpp:
2698         (WebCore::createSoupRequestAndMessageForHandle): Call
2699         setSoupRequestInitiatingPageIDFromNetworkingContext() here if the
2700         soup request is created successfully.
2701         (WebCore::ResourceHandle::start): Remove the call to
2702         setSoupRequestInitiatingPageIDFromNetworkingContext().
2703
2704 2013-12-31  Carlos Garcia Campos  <cgarcia@igalia.com>
2705
2706         [SOUP] Implement ResourceHandle::continueWillSendRequest()
2707         https://bugs.webkit.org/show_bug.cgi?id=126291
2708
2709         Reviewed by Martin Robinson.
2710
2711         * platform/network/soup/ResourceHandleSoup.cpp:
2712         (WebCore::continueAfterWillSendRequest): Helper function that
2713         continues with the load after willSendRequest has been called.
2714         (WebCore::doRedirect): Call continueAfterWillSendRequest() when
2715         client doesn't use async callbacks.
2716         (WebCore::ResourceHandle::continueWillSendRequest): Call
2717         continueAfterWillSendRequest().
2718
2719 2013-12-30  Carlos Garcia Campos  <cgarcia@igalia.com>
2720
2721         [SOUP] willSendRequest doesn't work after a redirect
2722         https://bugs.webkit.org/show_bug.cgi?id=126290
2723
2724         Reviewed by Martin Robinson.
2725
2726         The problem is that we are creating the new soup request for the
2727         redirect before calling ResourceHandleClient::willSendRequest() so
2728         that any change made to the request by the client is ignored.
2729
2730         * platform/network/soup/ResourceHandleSoup.cpp:
2731         (WebCore::doRedirect): Create the new soup request and soup
2732         message for the redirect after calling willSendRequest() on the
2733         client.
2734
2735 2013-12-30  Andreas Kling  <akling@apple.com>
2736
2737         InputType should return input renderers wrapped in RenderPtr.
2738         <https://webkit.org/b/126307>
2739
2740         Rename InputType::createRenderer() to createInputRenderer() and
2741         make it return RenderPtr<RenderElement>. Also made it non-const.
2742
2743         Reviewed by Anders Carlsson.
2744
2745 2013-12-30  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2746
2747         Cleanup static_cast<HTMLFormElement*> by using toHTMLFormElement()
2748         https://bugs.webkit.org/show_bug.cgi?id=126309
2749
2750         Reviewed by Andreas Kling.
2751
2752         To detect bad type casts, it would be good to use toHTMLFormElement() instead of
2753         using manual type cast. Additionally FORM_ASSOCIATED_ELEMENT_TYPE_CASTS is introduced newly
2754         to do it.
2755
2756         No new tests, no behavior changes.
2757
2758         * html/FormAssociatedElement.h:
2759         * html/HTMLFormControlElement.h:
2760         * html/HTMLFormElement.cpp:
2761         (WebCore::HTMLFormElement::submitImplicitly):
2762         (WebCore::HTMLFormElement::validateInteractively):
2763         (WebCore::HTMLFormElement::submit):
2764         (WebCore::HTMLFormElement::reset):
2765         (WebCore::HTMLFormElement::defaultButton):
2766         (WebCore::HTMLFormElement::checkInvalidControlsAndCollectUnhandled):
2767         (WebCore::HTMLFormElement::documentDidResumeFromPageCache):
2768         * loader/FormSubmission.cpp:
2769         (WebCore::FormSubmission::create):
2770
2771 2013-12-30  Anders Carlsson  <andersca@apple.com>
2772
2773         Replace yield() and pauseBriefly() with std::this_thread::yield()
2774         https://bugs.webkit.org/show_bug.cgi?id=126105
2775
2776         Reviewed by Sam Weinig.
2777
2778         * platform/sql/SQLiteDatabase.cpp:
2779         (WebCore::SQLiteDatabase::interrupt):
2780
2781 2013-12-30  Andreas Kling  <akling@apple.com>
2782
2783         Rename createRenderObject() to createRenderer().
2784
2785         Somewhat rubber-stamped by Antti Koivisto.
2786
2787 2013-12-30  Andreas Kling  <akling@apple.com>
2788
2789         Document should store its RenderView in a RenderPtr.
2790         <https://webkit.org/b/126299>
2791
2792         Make Document::m_renderView a RenderPtr<RenderView> and remove one
2793         manual destroy() call. Also removed the setRenderView() helper and
2794         inlined it at the two call sites.
2795
2796         Reviewed by Antti Koivisto.
2797
2798 2013-12-30  Martin Robinson  <mrobinson@igalia.com>
2799
2800         [CMake] [GTK] Add support for GObject introspection
2801         https://bugs.webkit.org/show_bug.cgi?id=126162
2802
2803         Reviewed by Daniel Bates.
2804
2805         * PlatformGTK.cmake: Build a list of WebKitDOM headers and expose it to the
2806         parent scope of the build.
2807
2808 2013-12-30  Andreas Kling  <akling@apple.com>
2809
2810         Text::createTextRenderer() should return a RenderPtr.
2811         <https://webkit.org/b/126292>
2812
2813         Make createTextRenderer() return a RenderPtr and remove one manual
2814         destroy() call. Also, since it should always return a valid object,
2815         I turned a null check into an assertion instead.
2816
2817         Reviewed by Antti Koivisto.
2818
2819 2013-12-30  Antti Koivisto  <antti@apple.com>
2820
2821         Remove attachChild
2822         https://bugs.webkit.org/show_bug.cgi?id=126288
2823
2824         Reviewed by Andreas Kling.
2825
2826         * dom/ContainerNode.cpp:
2827         (WebCore::destroyRenderTreeIfNeeded):
2828         
2829             Rename detachChild and move the tests here.
2830
2831         (WebCore::ContainerNode::takeAllChildrenFrom):
2832         
2833             No need to call attachRenderTree explicitly anymore.
2834
2835         (WebCore::ContainerNode::removeBetween):
2836
2837 2013-12-29  Andreas Kling  <akling@apple.com>
2838
2839         RenderLayer: Store corner and resizer renderers in RenderPtrs.
2840         <https://webkit.org/b/126274>
2841
2842         Turn RenderLayer::m_scrollCorner and m_resizer into RenderPtrs.
2843         Removed manual destroy() calls as appropriate. Also tweaked some
2844         code to reduce nesting.
2845
2846         Reviewed by Anders Carlsson.
2847
2848 2013-12-30  Antti Koivisto  <antti@apple.com>
2849
2850         XML document builder should create render tree asynchronously
2851         https://bugs.webkit.org/show_bug.cgi?id=126285
2852
2853         Reviewed by Andreas Kling.
2854         
2855         Stop creating renderers explicitly. 
2856         Fix SVG <use> element to not rely on parse time render tree construction.
2857
2858         * svg/SVGUseElement.cpp:
2859         (WebCore::SVGUseElement::svgAttributeChanged):
2860         
2861             Remove renderer check, we may not have created the render tree yet.
2862
2863         (WebCore::SVGUseElement::willAttachRenderers):
2864         
2865             Switch to willAttachRenderers from willRecalcStyle. The latter is only called as long as style
2866             recalc doesn't start creating new renderers.
2867
2868         (WebCore::SVGUseElement::invalidateShadowTree):
2869         
2870             Remove renderer check, we may not have created the render tree yet. 
2871             Invalidate with ReconstructRenderTree so willAttachRenderers will always get called.
2872
2873         * svg/SVGUseElement.h:
2874         * xml/parser/XMLDocumentParser.cpp:
2875         (WebCore::XMLDocumentParser::exitText):
2876         * xml/parser/XMLDocumentParserLibxml2.cpp:
2877         (WebCore::XMLDocumentParser::startElementNs):
2878         (WebCore::XMLDocumentParser::cdataBlock):
2879         
2880             Remove explicit call to attachRenderTree. The render tree will be created lazily.
2881
2882 2013-12-29  Joone Hur  <joone.hur@intel.com>
2883
2884         Reverted r156742. The same fix was reverted from Blink due to heap-use-after-free on ClusterFuzz.
2885         https://bugs.webkit.org/show_bug.cgi?id=126275
2886
2887         https://codereview.chromium.org/102993011
2888
2889         Reviewed by Darin Adler.
2890
2891         * rendering/RenderBlock.cpp:
2892         (WebCore::RenderBlock::updateFirstLetter):
2893
2894 2013-12-29  ChangSeok Oh  <changseok.oh@collabora.com>
2895
2896         Remove unused functions in GraphicsContext3D.cpp
2897         https://bugs.webkit.org/show_bug.cgi?id=126265
2898
2899         Reviewed by Andreas Kling.
2900
2901         platformGraphicsContext3D, platformTexture and platformLayer in GC3D.cpp
2902         seem not used by any ports.
2903
2904         No new tests, no functionality changed.
2905
2906         * platform/graphics/GraphicsContext3D.cpp:
2907
2908 2013-12-29  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2909
2910         Fix build error on 64bit debug build.
2911         https://bugs.webkit.org/show_bug.cgi?id=126248
2912
2913         r161076 used ‘%lli’(for long long int) for int64_t(aka long int).
2914         However, in a 64bit compile, int64_t is 'long int', not a 'long long int'.
2915         To support 32bit and 64bit, we use static_cast<long long>.
2916
2917         * Modules/indexeddb/IDBTransactionBackend.cpp:
2918         (WebCore::IDBTransactionBackend::commit):
2919
2920 2013-12-29  Antti Koivisto  <antti@apple.com>
2921
2922         Remove some accidental commented out code.
2923
2924         * testing/Internals.cpp:
2925         (WebCore::Internals::mallocStatistics):
2926
2927 2013-12-29  Antti Koivisto  <antti@apple.com>
2928
2929         Fix build.
2930
2931         * xml/parser/XMLDocumentParser.cpp:
2932
2933 2013-12-29  Antti Koivisto  <antti@apple.com>
2934
2935         Remove Node::attached()
2936         https://bugs.webkit.org/show_bug.cgi?id=126276
2937
2938         Reviewed by Sam Weinig.
2939
2940         Node::attached() is poorly defined. Replace it with renderer() and inRenderedDocument() tests as appropriate.
2941         
2942         Also remove some unnecessary explicit attachRenderTree/detachRenderTree calls from the tree builders.
2943
2944 2013-12-29  Andreas Kling  <akling@apple.com>
2945
2946         RenderLayer: Store reflection renderer in a RenderPtr.
2947         <https://webkit.org/b/126273>
2948
2949         Reviewed by Anders Carlsson.
2950
2951         * rendering/RenderLayer.h:
2952         * rendering/RenderLayer.cpp:
2953         (WebCore::RenderLayer::RenderLayer):
2954         (WebCore::RenderLayer::calculateClipRects):
2955
2956             Turn RenderLayer::m_reflection into a RenderPtr<RenderReplica>
2957             instead of a raw pointer.
2958
2959         * WebCore.xcodeproj/project.pbxproj:
2960
2961             Add RenderPtr.h to private headers.
2962
2963 2013-12-28  Andreas Kling  <akling@apple.com>
2964
2965         Add an owning smart pointer for RenderObjects and start using it.
2966         <https://webkit.org/b/126251>
2967
2968         This patch adds a RenderPtr pointer, essentially an OwnPtr for
2969         RenderObjects. The difference is that RenderPtr destroys the object
2970         by calling destroy() on it.
2971
2972         This is necessary to implement the willBeDestroyed() mechanism in
2973         RenderObject that notifies renderers just before they are about to
2974         be deleted, while they can still do tree traversal, etc.
2975
2976         I also added a make_unique-alike helper so you can write:
2977
2978             auto renderer = createRenderObject<RenderImage>(...);
2979
2980         Put it all to use by making ContentData::createRenderer() return
2981         RenderPtr<RenderObject> instead of raw RenderObject*.
2982
2983         Reviewed by Antti Koivisto.
2984
2985 2013-12-28  Benjamin Poulain  <benjamin@webkit.org>
2986
2987         Add a missing include path for GTK
2988         https://bugs.webkit.org/show_bug.cgi?id=126257
2989
2990         Reviewed by Philippe Normand.
2991
2992         * GNUmakefile.am:
2993
2994 2013-12-28  Carlos Garcia Campos  <cgarcia@igalia.com>
2995
2996         Unreviewed. Update GObject DOM symbols file after r160733.
2997
2998         * bindings/gobject/webkitdom.symbols:
2999
3000 2013-12-28  Carlos Garcia Campos  <cgarcia@igalia.com>
3001
3002         [GTK] Downloads are broken with the network process enabled
3003         https://bugs.webkit.org/show_bug.cgi?id=126131
3004
3005         Reviewed by Martin Robinson.
3006
3007         The problem is that the network process crashes when trying to
3008         convert the handle to a download, because at that point the
3009         download has finished and the handle is NULL. This happens because
3010         we are not implementing ResourceHandle::continueDidReceiveResponse().
3011
3012         * platform/network/soup/ResourceHandleSoup.cpp:
3013         (WebCore::nextMultipartResponsePartCallback): Call
3014         continueAfterDidReceiveResponse() when not using async callbacks.
3015         (WebCore::sendRequestCallback): Ditto.
3016         (WebCore::continueAfterDidReceiveResponse): Helper function that
3017         continues the load after didReceiveResponse.
3018         (WebCore::ResourceHandle::continueDidReceiveResponse): Call
3019         continueAfterDidReceiveResponse().
3020
3021 2013-12-27  Daniel Bates  <dabates@apple.com>
3022
3023         Another attempt to fix the Windows build after <http://trac.webkit.org/changeset/161106>
3024         (https://bugs.webkit.org/show_bug.cgi?id=126180)
3025
3026         * WebCore.vcxproj/WebCore.vcxproj.filters: Add files platform/audio/{AudioSession, AudioSessionListener}.h
3027         * WebCore.vcxproj/WebCoreCommon.props: Add directory WebCore/platform/audio to the list of
3028         include directories.
3029
3030 2013-12-27  Daniel Bates  <dabates@apple.com>
3031
3032         Attempt to fix the Windows build after <http://trac.webkit.org/changeset/161106>
3033         (https://bugs.webkit.org/show_bug.cgi?id=126180)
3034
3035         Add files platform/audio/AudioSession.{cpp, h} and platform/audio/AudioSessionListener.h
3036         to the Visual Studio project. Note, the contents of these files are guarded by USE(AUDIO_SESSION),
3037         which is only enabled on Mac and iOS at the time of writing.
3038
3039         I thought to try this approach to fix the build so as to avoid adding an extraneous
3040         USE(AUDIO_SESSION)-guard around the #include "AudioSession.h" in Settings.cpp since
3041         the contents of the file AudioSession.h is guarded by USE(AUDIO_SESSION).
3042
3043         * WebCore.vcxproj/WebCore.vcxproj:
3044
3045 2013-12-27  Daniel Bates  <dabates@apple.com>
3046
3047         [iOS] Upstream WebCore/page changes
3048         https://bugs.webkit.org/show_bug.cgi?id=126180
3049
3050         Reviewed by Darin Adler.
3051
3052         * WebCore.xcodeproj/project.pbxproj:
3053         * dom/EventNames.h:
3054         (WebCore::EventNames::isGestureEventType): Added.
3055         * page/AlternativeTextClient.h: Do not define WTF_USE_DICTATION_ALTERNATIVES when building for iOS.
3056         * page/Chrome.cpp:
3057         (WebCore::Chrome::Chrome):
3058         (WebCore::Chrome::dispatchViewportPropertiesDidChange): Added; guarded by PLATFORM(IOS).
3059         (WebCore::Chrome::setCursor): Make this an empty function when building for iOS.
3060         (WebCore::Chrome::setCursorHiddenUntilMouseMoves): Ditto.
3061         (WebCore::Chrome::didReceiveDocType): Added; iOS-specific.
3062         * page/Chrome.h:
3063         (WebCore::Chrome::setDispatchViewportDataDidChangeSuppressed): Added; guarded by PLATFORM(IOS).
3064         * page/ChromeClient.h:
3065         (WebCore::ChromeClient::didFlushCompositingLayers): Added; guarded by PLATFORM(IOS).
3066         (WebCore::ChromeClient::fetchCustomFixedPositionLayoutRect): Added; guarded by PLATFORM(IOS).
3067         (WebCore::ChromeClient::updateViewportConstrainedLayers): Added; guarded by PLATFORM(IOS).
3068         * page/DOMTimer.cpp:
3069         (WebCore::DOMTimer::install): Added iOS-specific code.
3070         (WebCore::DOMTimer::fired): Ditto.
3071         * page/DOMWindow.cpp:
3072         (WebCore::DOMWindow::DOMWindow): Ditto.
3073         (WebCore::DOMWindow::innerHeight): Ditto.
3074         (WebCore::DOMWindow::innerWidth): Ditto.
3075         (WebCore::DOMWindow::scrollX): Ditto.
3076         (WebCore::DOMWindow::scrollY): Ditto.
3077         (WebCore::DOMWindow::scrollBy): Ditto.
3078         (WebCore::DOMWindow::scrollTo): Ditto.
3079         (WebCore::DOMWindow::clearTimeout): Ditto.
3080         (WebCore::DOMWindow::addEventListener): Ditto.
3081         (WebCore::DOMWindow::incrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
3082         (WebCore::DOMWindow::decrementScrollEventListenersCount): Added; guarded by PLATFORM(IOS).
3083         (WebCore::DOMWindow::resetAllGeolocationPermission): Added; Also added FIXME comment.
3084         (WebCore::DOMWindow::removeEventListener): Added iOS-specific code.
3085         (WebCore::DOMWindow::dispatchEvent): Modified to prevent dispatching duplicate pageshow and pagehide
3086         events per <http://www.whatwg.org/specs/web-apps/current-work/multipage/history.html#event-pageshow>.
3087         (WebCore::DOMWindow::removeAllEventListeners): Added iOS-specific code.
3088         * page/DOMWindow.h:
3089         * page/DOMWindow.idl: Added IOS_GESTURE_EVENTS-guarded attributes: ongesture{change, end, start}. Also
3090         added IOS_TOUCH_EVENTS-guarded attributes: {Touch, TouchList}Constructor.
3091         * page/EditorClient.h:
3092         * page/EventHandler.cpp:
3093         (WebCore::EventHandler::EventHandler): Added iOS-specific code.
3094         (WebCore::EventHandler::clear): Ditto.
3095         (WebCore::EventHandler::startPanScrolling): Make this an empty function when building for iOS.
3096         (WebCore::EventHandler::handleMousePressEvent): Modified to invalidate a click when the clicked node is
3097         null. Also, opt out of code for updating the scrollbars as UIKit manages scrollbars on iOS.
3098         (WebCore::EventHandler::handleMouseMoveEvent): Opt of code for updating the scrollbars and cursor when building on iOS.
3099         (WebCore::hitTestResultInFrame): Made this a file-local static function since it's only used in EventHandler.cpp.
3100         (WebCore::EventHandler::dispatchSyntheticTouchEventIfEnabled): Added iOS-specific code.
3101         * page/EventHandler.h:
3102         * page/FocusController.h:
3103         * page/Frame.cpp:
3104         (WebCore::Frame::Frame): Added iOS-specific code.
3105         (WebCore::Frame::scrollOverflowLayer): Added; iOS-specific.
3106         (WebCore::Frame::overflowAutoScrollTimerFired): Added; iOS-specific.
3107         (WebCore::Frame::startOverflowAutoScroll): Added; iOS-specific.
3108         (WebCore::Frame::checkOverflowScroll): Added; iOS-specific.
3109         (WebCore::Frame::willDetachPage): Added iOS-specific code.
3110         (WebCore::Frame::createView): Ditto.
3111         (WebCore::Frame::setSelectionChangeCallbacksDisabled): Added; iOS-specific.
3112         (WebCore::Frame::selectionChangeCallbacksDisabled): Added; iOS-specific.
3113         * page/Frame.h:
3114         (WebCore::Frame::timersPaused): Added; guarded by PLATFORM(IOS).
3115         * page/FrameView.cpp:
3116         (WebCore::FrameView::FrameView): Added iOS-specific code.
3117         (WebCore::FrameView::clear): Ditto.
3118         (WebCore::FrameView::flushCompositingStateForThisFrame): Ditto.
3119         (WebCore::FrameView::graphicsLayerForPlatformWidget): Added.
3120         (WebCore::FrameView::scheduleLayerFlushAllowingThrottling): Added.
3121         (WebCore::FrameView::layout): Added iOS-specific code.
3122         (WebCore::countRenderedCharactersInRenderObjectWithThreshold): Added; helper function used by FrameView::renderedCharactersExceed().
3123         Also added FIXME comment.
3124         (WebCore::FrameView::renderedCharactersExceed): Added.
3125         (WebCore::FrameView::visibleContentsResized): Added iOS-specific code.
3126         (WebCore::FrameView::adjustTiledBackingCoverage): Ditto.
3127         (WebCore::FrameView::performPostLayoutTasks): Ditto.
3128         (WebCore::FrameView::sendResizeEventIfNeeded): Ditto.
3129         (WebCore::FrameView::paintContents): Added iOS-specific code. Also added FIXME comments.
3130         (WebCore::FrameView::setUseCustomFixedPositionLayoutRect): Added; iOS-specific.
3131         (WebCore::FrameView::setCustomFixedPositionLayoutRect): Added; iOS-specific.
3132         (WebCore::FrameView::updateFixedPositionLayoutRect): Added; iOS-specific.
3133         * page/FrameView.h:
3134         * page/Navigator.cpp:
3135         (WebCore::Navigator::standalone): Added; iOS-specific.
3136         * page/Navigator.h:
3137         * page/Navigator.idl: Added WTF_PLATFORM_IOS-guarded attribute: standalone. Also added FIXME comment.
3138         * page/NavigatorBase.cpp:
3139         (WebCore::NavigatorBase::platform): Added iOS-specific code.
3140         * page/Page.h:
3141         (WebCore::Page::hasCustomHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
3142         to remove this method.
3143         (WebCore::Page::customHTMLTokenizerTimeDelay): Added; guarded by PLATFORM(IOS). Also added FIXME comment
3144         to remove this method.
3145         * page/PageGroup.cpp:
3146         (WebCore::PageGroup::removeVisitedLink): Added.
3147         * page/PageGroup.h:
3148         * page/Settings.cpp:
3149         (WebCore::Settings::Settings):
3150         (WebCore::Settings::setScriptEnabled): Added; guarded by PLATFORM(IOS).
3151         (WebCore::Settings::setStandalone): Added; guarded by PLATFORM(IOS).
3152         (WebCore::Settings::setAudioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
3153         (WebCore::Settings::audioSessionCategoryOverride): Added; guarded by PLATFORM(IOS).
3154         (WebCore::Settings::setNetworkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
3155         (WebCore::Settings::networkDataUsageTrackingEnabled): Added; guarded by PLATFORM(IOS).
3156         (WebCore::sharedNetworkInterfaceNameGlobal): Added; guarded by PLATFORM(IOS).
3157         (WebCore::Settings::setNetworkInterfaceName): Added; guarded by PLATFORM(IOS).
3158         (WebCore::Settings::networkInterfaceName): Added; guarded by PLATFORM(IOS).
3159         * page/Settings.h:
3160         (WebCore::Settings::setMaxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
3161         (WebCore::Settings::maxParseDuration): Added; guarded by PLATFORM(IOS). Also added FIXME comment.
3162         (WebCore::Settings::standalone): Added; guarded by PLATFORM(IOS).
3163         (WebCore::Settings::setTelephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
3164         (WebCore::Settings::telephoneNumberParsingEnabled): Added; guarded by PLATFORM(IOS).
3165         (WebCore::Settings::setMediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
3166         (WebCore::Settings::mediaDataLoadsAutomatically): Added; guarded by PLATFORM(IOS).
3167         (WebCore::Settings::setShouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
3168         (WebCore::Settings::shouldTransformsAffectOverflow): Added; guarded by PLATFORM(IOS).
3169         (WebCore::Settings::setShouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
3170         (WebCore::Settings::shouldDispatchJavaScriptWindowOnErrorEvents): Added; guarded by PLATFORM(IOS).
3171         (WebCore::Settings::setAlwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
3172         (WebCore::Settings::alwaysUseBaselineOfPrimaryFont): Added; guarded by PLATFORM(IOS).
3173         (WebCore::Settings::setAlwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).
3174         (WebCore::Settings::alwaysUseAcceleratedOverflowScroll): Added; guarded by PLATFORM(IOS).
3175         * page/Settings.in: Added IOS_AIRPLAY-guarded setting: mediaPlaybackAllowsAirPlay.
3176         * page/animation/CSSPropertyAnimation.cpp:
3177         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap): Added iOS-specific code and FIXME comment.
3178         * page/ios/EventHandlerIOS.mm: Added.
3179         * page/ios/FrameIOS.mm: Added.
3180         * page/mac/ChromeMac.mm:
3181         * page/mac/PageMac.cpp:
3182         (WebCore::Page::addSchedulePair): Opt out of code when building for iOS.
3183         (WebCore::Page::removeSchedulePair): Ditto.
3184         * page/mac/SettingsMac.mm:
3185         (WebCore::Settings::shouldEnableScreenFontSubstitutionByDefault): Added iOS-specific code.
3186         * page/mac/WebCoreFrameView.h:
3187
3188 2013-12-27  Gavin Barraclough  <barraclough@apple.com>
3189
3190         Merge PageVisibilityState & ViewState::IsVisible in WebKit2
3191         https://bugs.webkit.org/show_bug.cgi?id=126214
3192
3193         Reviewed by Alexey Proskuryakov.
3194
3195         WebKit2 redundantly tracks the visibility of the view through two mechanisms - the visibility
3196         state, and the view state. Remove visibility state from the WebKit2 layer. The visibility
3197         state also tracks the prerender state - so split this out and handle it separately (a change
3198         we should make in WebCore, too).
3199
3200         WebCore - changes the API tests exposed a bug, a view should only ever come out of the
3201         prerender state when it becomes visible - redundant notifications that the view is still
3202         hidden should be ignored.
3203
3204         * page/Page.cpp:
3205         (WebCore::Page::setVisibilityState):
3206             - ignore visibility state change to hidden, if the current state is prerender.
3207
3208 2013-12-27  Joseph Pecoraro  <pecoraro@apple.com>
3209
3210         Unreviewed Windows build fix for r160946.
3211
3212         Add another file to the Windows InspectorAllInOne.cpp.
3213
3214         * inspector/InspectorAllInOne.cpp:
3215
3216 2013-12-27  Commit Queue  <commit-queue@webkit.org>
3217
3218         Unreviewed, rolling out r161096.
3219         http://trac.webkit.org/changeset/161096
3220         https://bugs.webkit.org/show_bug.cgi?id=126256
3221
3222         Made lots of tests crash (Requested by ap on #webkit).
3223
3224         * dom/ContainerNode.cpp:
3225         (WebCore::ContainerNode::insertBefore):
3226         (WebCore::ContainerNode::replaceChild):
3227         (WebCore::willRemoveChildren):
3228         (WebCore::ContainerNode::appendChild):
3229         * dom/Document.cpp:
3230         (WebCore::Document::visibilityStateChanged):
3231         (WebCore::Document::moveNodeIteratorsToNewDocument):
3232         (WebCore::Document::updateRangesAfterChildrenChanged):
3233         (WebCore::Document::nodeChildrenWillBeRemoved):
3234         (WebCore::Document::nodeWillBeRemoved):
3235         (WebCore::Document::textInserted):
3236         (WebCore::Document::textRemoved):
3237         (WebCore::Document::textNodesMerged):
3238         (WebCore::Document::textNodeSplit):
3239         (WebCore::Document::documentWillSuspendForPageCache):
3240         (WebCore::Document::documentDidResumeFromPageCache):
3241         (WebCore::Document::mediaVolumeDidChange):
3242         (WebCore::Document::privateBrowsingStateDidChange):
3243         (WebCore::Document::captionPreferencesChanged):
3244         (WebCore::Document::validateAutoSizingNodes):
3245         (WebCore::Document::resetAutoSizingNodes):
3246         (WebCore::Document::webkitExitFullscreen):
3247         * dom/MutationObserver.cpp:
3248         (WebCore::MutationObserver::disconnect):
3249         (WebCore::MutationObserver::getObservedNodes):
3250         (WebCore::MutationObserver::deliver):
3251         * dom/MutationObserverInterestGroup.cpp:
3252         (WebCore::MutationObserverInterestGroup::isOldValueRequested):
3253         (WebCore::MutationObserverInterestGroup::enqueueMutationRecord):
3254         * dom/MutationObserverRegistration.cpp:
3255         (WebCore::MutationObserverRegistration::clearTransientRegistrations):
3256         (WebCore::MutationObserverRegistration::addRegistrationNodesToSet):
3257         * dom/Node.cpp:
3258         (WebCore::Node::dumpStatistics):
3259         (WebCore::Document::invalidateNodeListAndCollectionCaches):
3260         (WebCore::NodeListsNodeData::invalidateCaches):
3261         (WebCore::Node::didMoveToNewDocument):
3262         (WebCore::collectMatchingObserversForMutation):
3263         (WebCore::Node::notifyMutationObserversNodeWillDetach):
3264         * dom/NodeRareData.h:
3265         (WebCore::NodeListsNodeData::adoptDocument):
3266         * dom/ScriptExecutionContext.cpp:
3267         (WebCore::ScriptExecutionContext::~ScriptExecutionContext):
3268         (WebCore::ScriptExecutionContext::canSuspendActiveDOMObjects):
3269         (WebCore::ScriptExecutionContext::suspendActiveDOMObjects):
3270         (WebCore::ScriptExecutionContext::resumeActiveDOMObjects):
3271         (WebCore::ScriptExecutionContext::stopActiveDOMObjects):
3272         (WebCore::ScriptExecutionContext::closeMessagePorts):
3273         (WebCore::ScriptExecutionContext::adjustMinimumTimerInterval):
3274         (WebCore::ScriptExecutionContext::didChangeTimerAlignmentInterval):
3275         * dom/WebKitNamedFlow.cpp:
3276         (WebCore::WebKitNamedFlow::getRegionsByContent):
3277         (WebCore::WebKitNamedFlow::getRegions):
3278         (WebCore::WebKitNamedFlow::getContent):
3279
3280 2013-12-26  Sam Weinig  <sam@webkit.org>
3281
3282         Convert some of WebCore/dom over to range-for loops
3283         https://bugs.webkit.org/show_bug.cgi?id=126250
3284
3285         Reviewed by Andreas Kling.
3286
3287         * dom/ContainerNode.cpp:
3288         * dom/Document.cpp:
3289         * dom/MutationObserver.cpp:
3290         * dom/MutationObserverInterestGroup.cpp:
3291         * dom/MutationObserverRegistration.cpp:
3292         * dom/Node.cpp:
3293         * dom/NodeRareData.h:
3294         * dom/ScriptExecutionContext.cpp:
3295         * dom/WebKitNamedFlow.cpp:
3296
3297 2013-12-26  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3298
3299         [Nix] Cleanup Source/WebCore/PlatformNix.cmake
3300         https://bugs.webkit.org/show_bug.cgi?id=126226
3301
3302         Reviewed by Csaba Osztrogonác.
3303
3304         No new tests needed.
3305
3306         * PlatformNix.cmake:
3307
3308 2013-12-26  Joseph Pecoraro  <pecoraro@apple.com>
3309
3310         Unreviewed attempt at Windows build fix.
3311
3312         I think Window's "AllInOne.cpp" is causing a using namespace JSC
3313         to cause naming conflicts between Inspector::TypeBuilder::Debugger::types
3314         and JSC::types. So removing the ambiguity.
3315
3316         * inspector/InjectedScript.cpp:
3317         (WebCore::InjectedScript::getProperties):
3318         (WebCore::InjectedScript::wrapCallFrames):
3319
3320 2013-12-22  Andreas Kling  <akling@apple.com>
3321
3322         Make Text::createTextRenderer() take a const RenderStyle&.
3323         <https://webkit.org/b/126136>
3324
3325         Nuke a FIXME about constifying a RenderStyle& local.
3326
3327         Reviewed by Anders Carlsson.
3328
3329 2013-12-22  Andreas Kling  <akling@apple.com>
3330
3331         Move more inlines from RenderObject to RenderElement.
3332         <https://webkit.org/b/126134>
3333
3334         Lift some inline functions that use style() from RenderObject over
3335         to RenderElement, making them branchless.
3336
3337         Reviewed by Anders Carlsson.
3338
3339 2013-12-26  ChangSeok Oh  <changseok.oh@collabora.com>
3340
3341         Unreviewed build fix after r159526.
3342         isBoxValue is used at out of ENABLE_CSS_SHAPES gaurd. It causes a compile failure.
3343         So I moved isBoxValue to out side of ENABLE_CSS_SHAPES.
3344
3345         * css/CSSParser.cpp:
3346
3347 2013-12-25  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3348
3349         Set m_pos as private in InlineIterator, and use getter and setter functions.
3350         https://bugs.webkit.org/show_bug.cgi?id=125614
3351
3352         Reviewed by Alexey Proskuryakov.
3353
3354         InlineIterator has been exported m_pos as public directly though it is member variable.
3355         This patch set it as private, and add getter/setter functions for it.
3356
3357         No new tests, no behavior changes.
3358
3359         * rendering/InlineIterator.h:
3360         (WebCore::InlineIterator::setOffset):
3361         (WebCore::operator==):
3362         (WebCore::operator!=):
3363         (WebCore::InlineBidiResolver::appendRun):
3364         * rendering/RenderBlockLineLayout.cpp:
3365         (WebCore::RenderBlockFlow::appendRunsForObject):
3366         (WebCore::constructBidiRunsForLine):
3367         (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
3368         (WebCore::RenderBlockFlow::matchedEndLine):
3369         (WebCore::LineBreaker::nextSegmentBreak):
3370         * rendering/line/BreakingContextInlineHeaders.h:
3371         (WebCore::BreakingContext::handleBR):
3372         (WebCore::BreakingContext::handleFloat):
3373         (WebCore::iteratorIsBeyondEndOfRenderCombineText):
3374         (WebCore::ensureCharacterGetsLineBox):
3375         (WebCore::BreakingContext::handleText):
3376         (WebCore::checkMidpoints):
3377         (WebCore::BreakingContext::handleEndOfLine):
3378         * rendering/line/TrailingObjects.cpp:
3379         (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
3380
3381 2013-12-25  Kim Byung Jun  <bj1987.kim@samsung.com>
3382
3383         [EFL] Delete file.edc and file_*.png.
3384         https://bugs.webkit.org/show_bug.cgi?id=125134
3385
3386         Reviewed by Gyuyoung Kim.
3387
3388         File_theme uses button form.
3389
3390         * platform/efl/DefaultTheme/CMakeLists.txt:
3391         * platform/efl/DefaultTheme/default.edc:
3392         * platform/efl/DefaultTheme/widget/file/file.edc: Removed.
3393         * platform/efl/DefaultTheme/widget/file/file_focus.png: Removed.
3394         * platform/efl/DefaultTheme/widget/file/file_hover.png: Removed.
3395         * platform/efl/DefaultTheme/widget/file/file_normal.png: Removed.
3396         * platform/efl/DefaultTheme/widget/file/file_press.png: Removed.
3397
3398 2013-12-25  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3399
3400         [Nix] Adding createDragImageIconForCachedImageFilename method to DragImageNix
3401         https://bugs.webkit.org/show_bug.cgi?id=126230
3402
3403         Reviewed by Daniel Bates.
3404
3405         Also returning nullptr in other functions that were returning 0 as a pointer.
3406
3407         * platform/nix/DragImageNix.cpp:
3408         (WebCore::createDragImageFromImage):
3409         (WebCore::createDragImageIconForCachedImage):
3410         (WebCore::createDragImageIconForCachedImageFilename):
3411
3412 2013-12-25  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3413
3414         [Nix] Fixing DragData::asFragment signature in DragDataNix.cpp
3415         https://bugs.webkit.org/show_bug.cgi?id=126229
3416
3417         Reviewed by Daniel Bates.
3418
3419         * platform/nix/DragDataNix.cpp:
3420         (WebCore::DragData::asFragment):
3421
3422 2013-12-25  Commit Queue  <commit-queue@webkit.org>
3423
3424         Unreviewed, rolling out r161033 and r161074.
3425         http://trac.webkit.org/changeset/161033
3426         http://trac.webkit.org/changeset/161074
3427         https://bugs.webkit.org/show_bug.cgi?id=126240
3428
3429         Oliver says that a rollout would be better (Requested by ap on
3430         #webkit).
3431
3432         * bindings/js/JSDOMWindowCustom.cpp:
3433         (WebCore::JSDOMWindow::put):
3434         * bindings/objc/WebScriptObject.mm:
3435         (-[WebScriptObject setValue:forKey:]):
3436         * bindings/scripts/CodeGeneratorJS.pm:
3437         (GenerateImplementation):
3438         * bindings/scripts/test/JS/JSTestInterface.cpp:
3439         (WebCore::JSTestInterface::putByIndex):
3440         * bridge/NP_jsobject.cpp:
3441         (_NPN_SetProperty):
3442
3443 2013-12-25  Brady Eidson  <beidson@apple.com>
3444
3445         DatabaseProcess: Implement version changing
3446         https://bugs.webkit.org/show_bug.cgi?id=126099
3447
3448         Reviewed by Sam Weinig.
3449
3450         No new tests (No change in WebCore behavior).
3451
3452         * Modules/indexeddb/IDBTransactionBackend.cpp:
3453         (WebCore::IDBTransactionBackend::commit): Update some logging.
3454
3455         * Modules/indexeddb/IDBTransactionBackendOperations.cpp:
3456         (WebCore::IDBDatabaseBackend::VersionChangeOperation::perform): Move some things that used to be in
3457           IDBServerConnectionLevelDB::changeDatabaseVersion to this cross-platform location.
3458         * Modules/indexeddb/IDBTransactionBackendOperations.h:
3459         (WebCore::IDBDatabaseBackend::VersionChangeOperation::transaction):
3460
3461         * Modules/indexeddb/leveldb/IDBServerConnectionLevelDB.cpp:
3462         (WebCore::IDBServerConnectionLevelDB::changeDatabaseVersion): Move the actual updating of the database backend
3463           metadata to the VersionChangeOperation.
3464
3465 2013-12-25  Martin Robinson  <mrobinson@igalia.com>
3466
3467         [GTK] [CMake] Clean up generated sources directories