4c0b333edb1b597ca1590e92d6a8b949941f3a3c
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
2
3         Web Inspector: Push InspectorAgent down into JSC, give JSC an InspectorController
4         https://bugs.webkit.org/show_bug.cgi?id=126763
5
6         Reviewed by Timothy Hatcher.
7
8         No new tests, no observable change in functionality.
9
10         * CMakeLists.txt:
11         * ForwardingHeaders/inspector/agent/InspectorAgent.h: Added.
12         * GNUmakefile.list.am:
13         * WebCore.vcxproj/WebCore.vcxproj:
14         * WebCore.vcxproj/WebCore.vcxproj.filters:
15         * WebCore.xcodeproj/project.pbxproj:
16         * inspector/InspectorAllInOne.cpp:
17         InspectorAgent moved to JavaScriptCore. Include forwarding header.
18
19         * inspector/PageConsoleAgent.cpp:
20         (WebCore::PageConsoleAgent::PageConsoleAgent):
21         (WebCore::PageConsoleAgent::~PageConsoleAgent):
22         * inspector/PageConsoleAgent.h:
23         (WebCore::PageConsoleAgent::create):
24         * inspector/InspectorApplicationCacheAgent.cpp:
25         * inspector/InspectorApplicationCacheAgent.h:
26         InspectorAgent was not used by these files, remove it.
27
28         * inspector/CommandLineAPIHost.cpp:
29         * inspector/CommandLineAPIHost.h:
30         (WebCore::CommandLineAPIHost::init):
31         * inspector/InspectorInstrumentation.cpp:
32         * inspector/InstrumentingAgents.h:
33         (WebCore::InstrumentingAgents::inspectorAgent):
34         (WebCore::InstrumentingAgents::setInspectorAgent):
35         Switch to Inspector::InspectorAgent where applicable.
36
37         * inspector/InspectorController.cpp:
38         (WebCore::InspectorController::InspectorController):
39         * inspector/InspectorController.h:
40         Manually add InspectorAgent to the InstrumentingAgents. It is one
41         of the agents that is always available in InstrumentingAgents.
42
43 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
44
45        Add TextAutoSizing.* for iOS, and fix DeviceOrientationController creation.
46
47         * WebCore.xcodeproj/project.pbxproj:
48         * dom/Document.cpp:
49         (WebCore::Document::Document):
50         * rendering/TextAutoSizing.cpp: Added.
51         (WebCore::cloneRenderStyleWithState):
52         (WebCore::TextAutoSizingKey::TextAutoSizingKey):
53         (WebCore::TextAutoSizingKey::~TextAutoSizingKey):
54         (WebCore::TextAutoSizingKey::operator=):
55         (WebCore::TextAutoSizingKey::ref):
56         (WebCore::TextAutoSizingKey::deref):
57         (WebCore::TextAutoSizingValue::numNodes):
58         (WebCore::TextAutoSizingValue::addNode):
59         (WebCore::TextAutoSizingValue::adjustNodeSizes):
60         (WebCore::TextAutoSizingValue::reset):
61         * rendering/TextAutoSizing.h: Added.
62         (WebCore::TextAutoSizingKey::doc):
63         (WebCore::TextAutoSizingKey::style):
64         (WebCore::TextAutoSizingKey::isValidDoc):
65         (WebCore::TextAutoSizingKey::isValidStyle):
66         (WebCore::TextAutoSizingKey::deletedKeyDoc):
67         (WebCore::TextAutoSizingKey::deletedKeyStyle):
68         (WebCore::operator==):
69         (WebCore::TextAutoSizingHash::hash):
70         (WebCore::TextAutoSizingHash::equal):
71         (WebCore::TextAutoSizingValue::create):
72         (WebCore::TextAutoSizingValue::TextAutoSizingValue):
73
74 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
75
76         Fix GraphicsLayerCA.o for iOS. Unreviewed build fix.
77
78         Use of systemMemoryLevel was missing include of SystemMemory.h.
79
80         * platform/graphics/ca/GraphicsLayerCA.cpp:
81
82 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
83
84         Fix iOS build.
85
86         * bindings/objc/DOM.mm:
87         (-[DOMRange renderedImageForcingBlackText:renderedImageForcingBlackText:]):
88         * bindings/objc/DOMExtensions.h:
89         * platform/DragImage.h:
90
91 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
92
93         Fix iOS build.
94         
95         Generated DOMTouch* and DOMGesture* files need to be in the project.
96         Exclude them on Mac via EXCLUDED_SOURCE_FILE_NAMES_macosx.
97         
98         Use TARGET_OS_IPHONE instead of TARGET_OS_EMBEDDED in DOMPrivate.h
99
100         * Configurations/WebCore.xcconfig:
101         * WebCore.xcodeproj/project.pbxproj:
102         * bindings/objc/DOMPrivate.h:
103
104 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
105
106         Fix RenderThemeIOS.o for iOS. Unreviewed build fix.
107
108         Typo referring to generated name. Should be "iOS" not "IOS".
109
110         * rendering/RenderThemeIOS.mm:
111         (WebCore::RenderThemeIOS::mediaControlsScript):
112
113 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
114
115         Fix WebAccessibilityObjectWrapperIOS.o for iOS. Unreviewed build fix.
116
117         The upstreamed WebAccessibilityObjectWrapperIOS.mm was out of date, e.g.
118         it was using GSFonts. Just upstream a newer version of the file. Also
119         explicitly namespace qualify std::pair.
120
121         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
122         (AXAttributeStringSetStyle):
123
124 2014-01-10  Jinwoo Song  <jinwoo7.song@samsung.com>
125
126         Remove willRespondToTouchEvents() which was used by chromium port
127         https://bugs.webkit.org/show_bug.cgi?id=126739
128
129         Reviewed by Alexey Proskuryakov.
130
131         willRespondToTouchEvents() was added to check if a node listens to touch events in r126945.
132         However, it is not used anywhere after chromium port is removed.
133
134         * dom/Node.cpp:
135         * dom/Node.h:
136
137 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
138
139         Fix SystemVersionMac.o for iOS. Unreviewed build fix.
140
141         Add missing expected function. Maybe we can avoid including
142         this file entirely on iOS, there was already a FIXME.
143
144         * platform/mac/SystemVersionMac.mm:
145         (WebCore::systemMarketingVersion):
146
147 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
148
149         Fix JSDOMWindowBase.o for iOS. Unreviewed build fix.
150
151         Add missing iOS method declarations.
152
153         * bindings/js/JSDOMWindowBase.h:
154
155 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
156
157         Fix InputType.o for iOS. Unreviewed build fix.
158
159         The RuntimeEnabledFeatures function pointer type should have a
160         const qualifier, because the implementations are all const.
161
162         * html/InputType.cpp:
163
164 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
165
166         Fix MediaPlayerPrivateIOS.o for iOS. Unreviewed build fix.
167
168         Add missing MediaPlayerProxy Objective C methods and forward declarations.
169
170         * platform/graphics/mac/MediaPlayerProxy.h:
171
172 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
173
174         Fix FrameSelection.o for iOS. Unreviewed build fix.
175
176         r160966 renamed rendererIsEditable to hasEditableStyle.
177
178         * editing/FrameSelection.cpp:
179         (WebCore::FrameSelection::setSelectionFromNone):
180
181 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
182
183         Fix DragData.o for iOS. Unreviewed build fix.
184
185         String m_pasteboardName is unused on iOS, so ifdef it out.
186
187         * platform/DragData.h:
188
189 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
190
191         Fix FrameIOS.o for iOS. Unreviewed build fix.
192
193         Remove stale include to file that no longer exists. It was not needed.
194
195         * page/ios/FrameIOS.mm:
196
197 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
198
199         Fix MonthInputType.o for iOS. Unreviewed build fix.
200
201         When ENABLE_INPUT_MULTIPLE_FIELDS_UI was removed in r150876,
202         the wrong class name lingered. Fix it to be the base class.
203
204         * html/TimeInputType.cpp:
205         (WebCore::TimeInputType::TimeInputType):
206
207 2014-01-10  Andy Estes  <aestes@apple.com>
208
209         [iOS] Build fix: make sure WTF_PLATFORM_IOS is defined when preprocessing
210
211         * DerivedSources.make:
212         * bindings/scripts/preprocessor.pm:
213         (applyPreprocessor):
214
215 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
216
217         Use TARGET_OS_IPHONE in this API file, and #if TARGET_OS_MAC
218         for a non-iOS function.
219
220         * bindings/objc/DOMExtensions.h:
221
222 2014-01-10  David Kilzer  <ddkilzer@apple.com>
223
224         Clean up architectures in xcconfig files
225         <http://webkit.org/b/126794>
226
227         Reviewed by Andy Estes.
228
229         * Configurations/Base.xcconfig:
230         * Configurations/WebCore.xcconfig: Remove armv6.
231         * DerivedSources.make: Remove armv6, armv7f. Sort.
232         - Add new arch.
233
234 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
235
236         Fix iOS build
237
238         * Configurations/WebCore.xcconfig:
239         * css/DeprecatedStyleBuilder.cpp:
240         (WebCore::ApplyPropertyLineHeightForIOSTextAutosizing::applyValue):
241
242 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
243
244         Fix iOS build.
245         
246         * html/DateTimeLocalInputType.h:
247         (WebCore::DateTimeLocalInputType::DateTimeLocalInputType):
248         * loader/ios/DiskImageCacheIOS.h:
249
250 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
251
252         iOS build fix: add StyleRareInheritedData::compositionFillColor
253
254         * rendering/style/RenderStyle.h:
255         * rendering/style/StyleRareInheritedData.cpp:
256         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
257         (WebCore::StyleRareInheritedData::operator==):
258         * rendering/style/StyleRareInheritedData.h:
259
260 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
261
262         Fix MonthInputType.o for iOS. Unreviewed build fix.
263
264         When ENABLE_INPUT_MULTIPLE_FIELDS_UI was removed in r150876, the
265         BaseMonthInputType typedef was removed. However a use of it lingered.
266         Changing to match the base class name.
267
268         * html/MonthInputType.h:
269         (WebCore::MonthInputType::MonthInputType):
270
271 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
272
273         Fix RenderButton.o for iOS. Unreviewed build fix.
274
275         Missing prototype in header for override of the layout method.
276
277         * rendering/RenderButton.h:
278
279 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
280
281         A couple of iOS build fixes.
282
283         * accessibility/ios/AXObjectCacheIOS.mm:
284         (WebCore::AXObjectCache::handleFocusedUIElementChanged):
285         * html/canvas/CanvasRenderingContext2D.cpp:
286         (WebCore::CanvasRenderingContext2D::drawImage):
287
288 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
289
290         Fix PlatformScreenIOS.mm for iOS. Unreviewed build fix.
291
292         PlatformScreen.h removed screenVerticalDPI and screenHorizontalDPI in r132419,
293         so remove the stale implementations on iOS. Also, add a notImplemented version
294         of screenColorProfile, which matches Mac and is unused in WebCore for this port.
295
296         * platform/ios/PlatformScreenIOS.mm:
297         (WebCore::screenColorProfile):
298
299 2014-01-10  Anders Carlsson  <andersca@apple.com>
300
301         CTTE FrameTree
302         https://bugs.webkit.org/show_bug.cgi?id=126795
303
304         Reviewed by Tim Horton.
305
306         * page/Frame.cpp:
307         (WebCore::Frame::Frame):
308         * page/FrameTree.cpp:
309         (WebCore::FrameTree::transferChild):
310         (WebCore::FrameTree::appendChild):
311         (WebCore::FrameTree::actuallyAppendChild):
312         (WebCore::FrameTree::uniqueChildName):
313         (WebCore::FrameTree::scopedChild):
314         (WebCore::FrameTree::scopedChildCount):
315         (WebCore::FrameTree::child):
316         (WebCore::FrameTree::find):
317         (WebCore::FrameTree::isDescendantOf):
318         (WebCore::FrameTree::traverseNext):
319         (WebCore::FrameTree::traverseNextWithWrap):
320         (WebCore::FrameTree::traversePreviousWithWrap):
321         (WebCore::FrameTree::deepLastChild):
322         (WebCore::FrameTree::top):
323         * page/FrameTree.h:
324         (WebCore::FrameTree::FrameTree):
325
326 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
327
328         Fix iOS build.
329
330         * loader/ResourceLoader.h:
331
332 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
333
334         Fix iOS build.
335
336         * platform/graphics/ImageSource.h:
337         (WebCore::ImageSource::acceleratedImageDecodingEnabled):
338         (WebCore::ImageSource::setAcceleratedImageDecodingEnabled):
339
340 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
341
342         Unreviewed EFL build fix after r161678.
343
344         static_cast a size_t to unsigned long for %lu format string.
345
346         * page/Console.cpp:
347         (WebCore::internalAddMessage):
348
349 2014-01-10  Benjamin Poulain  <bpoulain@apple.com>
350
351         Remove the BlackBerry port from trunk
352         https://bugs.webkit.org/show_bug.cgi?id=126715
353
354         Reviewed by Anders Carlsson.
355
356         * html/canvas/WebGLRenderingContext.cpp:
357         (WebCore::WebGLRenderingContext::readPixels):
358         * platform/graphics/ImageBuffer.cpp:
359         * platform/graphics/ImageBufferData.h:
360         * platform/graphics/IntPoint.h:
361         * platform/graphics/IntRect.h:
362         * platform/graphics/IntSize.h:
363         * platform/graphics/MediaPlayer.cpp:
364         * platform/graphics/NativeImagePtr.h:
365         * platform/graphics/OpenGLESShims.h:
366         * platform/graphics/Path.cpp:
367         (WebCore::Path::addPathForRoundedRect):
368         * platform/graphics/Path.h:
369         * platform/graphics/PlatformLayer.h:
370         * platform/graphics/filters/CustomFilterValidatedProgram.cpp:
371         * platform/graphics/filters/CustomFilterValidatedProgram.h:
372         * platform/graphics/filters/FilterOperation.h:
373         * platform/graphics/gpu/DrawingBuffer.cpp:
374         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
375         * platform/graphics/opengl/Extensions3DOpenGLES.cpp:
376         (WebCore::Extensions3DOpenGLES::getGraphicsResetStatusARB):
377         * platform/graphics/opengl/Extensions3DOpenGLES.h:
378         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
379         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
380         (WebCore::GraphicsContext3D::prepareTexture):
381         (WebCore::GraphicsContext3D::bindFramebuffer):
382         (WebCore::GraphicsContext3D::compileShader):
383         (WebCore::GraphicsContext3D::copyTexImage2D):
384         (WebCore::GraphicsContext3D::copyTexSubImage2D):
385         * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp:
386         (WebCore::GraphicsContext3D::readPixels):
387         (WebCore::GraphicsContext3D::readPixelsAndConvertToBGRAIfNecessary):
388         (WebCore::GraphicsContext3D::reshapeFBOs):
389         * platform/network/NetworkStateNotifier.h:
390         * platform/network/ResourceHandle.h:
391         * platform/network/ResourceHandleInternal.h:
392         * platform/network/ResourceRequestBase.cpp:
393
394 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
395
396         Fix CharsetData.cpp build for iOS
397         https://bugs.webkit.org/show_bug.cgi?id=126792
398
399         Reviewed by Mark Rowe.
400
401         CharsetData.cpp should have an empty CharsetTable list for iOS.
402         Achieve this with an iOS-specific encodings.txt file.
403
404         * DerivedSources.make:
405         * WebCore.xcodeproj/project.pbxproj:
406         * platform/text/mac/ios-encodings.txt: Added.
407
408 2014-01-10  Anders Carlsson  <andersca@apple.com>
409
410         CTTE in NavigationScheduler
411         https://bugs.webkit.org/show_bug.cgi?id=126788
412
413         Reviewed by Tim Horton.
414
415         * inspector/InspectorInstrumentation.cpp:
416         (WebCore::InspectorInstrumentation::frameScheduledNavigationImpl):
417         (WebCore::InspectorInstrumentation::frameClearedScheduledNavigationImpl):
418         * inspector/InspectorInstrumentation.h:
419         (WebCore::InspectorInstrumentation::frameScheduledNavigation):
420         (WebCore::InspectorInstrumentation::frameClearedScheduledNavigation):
421         * inspector/InspectorPageAgent.cpp:
422         (WebCore::InspectorPageAgent::frameScheduledNavigation):
423         (WebCore::InspectorPageAgent::frameClearedScheduledNavigation):
424         * inspector/InspectorPageAgent.h:
425         * loader/NavigationScheduler.cpp:
426         (WebCore::ScheduledNavigation::shouldStartTimer):
427         (WebCore::ScheduledNavigation::didStartTimer):
428         (WebCore::ScheduledNavigation::didStopTimer):
429         (WebCore::NavigationScheduler::NavigationScheduler):
430         (WebCore::NavigationScheduler::clear):
431         (WebCore::NavigationScheduler::shouldScheduleNavigation):
432         (WebCore::NavigationScheduler::scheduleRedirect):
433         (WebCore::NavigationScheduler::mustLockBackForwardList):
434         (WebCore::NavigationScheduler::scheduleLocationChange):
435         (WebCore::NavigationScheduler::scheduleFormSubmission):
436         (WebCore::NavigationScheduler::scheduleRefresh):
437         (WebCore::NavigationScheduler::scheduleHistoryNavigation):
438         (WebCore::NavigationScheduler::timerFired):
439         (WebCore::NavigationScheduler::schedule):
440         (WebCore::NavigationScheduler::startTimer):
441         (WebCore::NavigationScheduler::cancel):
442         * loader/NavigationScheduler.h:
443         * page/Frame.cpp:
444         (WebCore::Frame::Frame):
445
446 2014-01-10  Myles C. Maxfield  <mmaxfield@apple.com>
447
448         CSS word-spacing property does not obey percentages
449         https://bugs.webkit.org/show_bug.cgi?id=126674
450
451         Reviewed by Simon Fraser.
452
453         One change between CSS2.1 and CSS3 is that the word-spacing CSS property can
454         take percentages (of the width of the space character) in CSS3. In order to
455         implement this, the datatype must be changed from a float to a Length, which
456         can hold percentage values. Then, during layout, we can query the width of
457         the space character and update the Font's word-spacing value appropriately.
458         However, the RenderStyle still holds on to the Length (as a rare inherited
459         value).
460
461         Tests: fast/css3-text/css3-word-spacing-percentage/word-spacing-change-font.html
462                fast/css3-text/css3-word-spacing-percentage/word-spacing-percentage-parse.html
463                fast/css3-text/css3-word-spacing-percentage/word-spacing-percentage.html
464
465         * css/CSSComputedStyleDeclaration.cpp:
466         (WebCore::ComputedStyleExtractor::propertyValue): Use Font's computed value instead
467         of style's Length value.
468         * css/CSSParser.cpp:
469         (WebCore::CSSParser::parseValue): word-spacing and letter-spacing no longer are
470         parsed the same way.
471         * css/DeprecatedStyleBuilder.cpp:
472         (WebCore::ApplyPropertyWordSpacing::applyValue): Construct a length from a given
473         CSSValue and set the style's word spacing with it.
474         (WebCore::ApplyPropertyWordSpacing::createHandler):
475         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder): Use ApplyPropertyWordSpacing.
476         * page/animation/CSSPropertyAnimation.cpp:
477         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
478         * rendering/RenderBlockLineLayout.cpp:
479         (WebCore::setLogicalWidthForTextRun): Use Font's computed value instead
480         of style's Length value.
481         * rendering/RenderText.cpp:
482         (WebCore::RenderText::computePreferredLogicalWidths): Ditto.
483         * rendering/SimpleLineLayout.cpp:
484         (WebCore::SimpleLineLayout::canUseFor): Opt-out of the SimpleLineLayout
485         if either the percentage or the length is nonzero.
486         * rendering/line/BreakingContextInlineHeaders.h:
487         (WebCore::BreakingContext::handleText): Use Font's computed value instead
488         of style's Length value.
489         * rendering/style/RenderStyle.cpp:
490         (WebCore::RenderStyle::wordSpacing):
491         (WebCore::RenderStyle::setWordSpacing): Consult the Font's space with to compute
492         percentage values, but hold on to the original Length.
493         * rendering/style/RenderStyle.h:
494         * rendering/style/StyleRareInheritedData.cpp:
495         * rendering/style/StyleRareInheritedData.h: Hold on to the specified Length
496
497 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
498
499         Fix the iOS build.
500
501         * platform/audio/mac/MediaSessionManagerMac.cpp:
502
503 2014-01-10  Simon Fraser  <simon.fraser@apple.com>
504
505         iOS doesn't have <OpenGL/gl.h>; fix iOS build.
506
507         * platform/graphics/opengl/TemporaryOpenGLSetting.cpp:
508
509 2014-01-10  Andy Estes  <aestes@apple.com>
510
511         [iOS] Build Fix: Properly add $SDKROOT/usr/local/include/ to the search path when building PublicDOMInterfaces.h
512
513         * bindings/scripts/CodeGeneratorObjC.pm:
514         (ReadPublicInterfaces):
515
516 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
517
518         Web Inspector: Remove unimplemented or static ScriptDebugServer features
519         https://bugs.webkit.org/show_bug.cgi?id=126784
520
521         Reviewed by Timothy Hatcher.
522
523         These features are unimplemented in the backend, and unused by the
524         current frontend. Most deal with features that were supported by v8
525         and are as yet unimplemented by JSC. If we decide to add such features
526         we can reimplement without conforming to an old implementation.
527
528         * bindings/js/ScriptDebugServer.cpp:
529         * bindings/js/ScriptDebugServer.h:
530         * bindings/js/ScriptProfiler.h:
531         * inspector/InspectorDebuggerAgent.cpp:
532         (WebCore::InspectorDebuggerAgent::disable):
533         * inspector/InspectorDebuggerAgent.h:
534         * inspector/InspectorPageAgent.cpp:
535         (WebCore::InspectorPageAgent::reload):
536         (WebCore::InspectorPageAgent::frameNavigated):
537         * inspector/InspectorPageAgent.h:
538         * inspector/InspectorProfilerAgent.cpp:
539         * inspector/InspectorProfilerAgent.h:
540         * inspector/PageDebuggerAgent.cpp:
541         (WebCore::PageDebuggerAgent::didClearMainFrameWindowObject):
542         * inspector/protocol/Page.json:
543         * inspector/protocol/Profiler.json:
544
545 2014-01-10  David Kilzer  <ddkilzer@apple.com>
546
547         [iOS] Remove unused variable from TileGrid::dropTilesBetweenRects()
548
549         Fixes the following build error:
550
551             WebCore/platform/ios/TileGrid.mm:88:23: error: unused variable 'end' [-Werror,-Wunused-variable]
552                 TileMap::iterator end = m_tiles.end();
553                                   ^
554
555         * platform/ios/TileGrid.mm:
556         (WebCore::TileGrid::dropTilesBetweenRects): Remove unused
557         variable now that the for loop uses an auto iterator.
558
559 2014-01-10  Dean Jackson  <dino@apple.com>
560
561         Implement OES texture half float linear
562         https://bugs.webkit.org/show_bug.cgi?id=125060
563
564         Reviewed by Brent Fulgham.
565
566         Test: fast/canvas/webgl/oes-texture-half-float-linear.html
567
568         * CMakeLists.txt: Add new files.
569         * DerivedSources.cpp: Ditto.
570         * DerivedSources.make: Generate new file from IDL.
571         * GNUmakefile.list.am: Add new files.
572         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
573         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
574         * WebCore.xcodeproj/project.pbxproj: New files for OESTextureHalfFloatLinear.
575
576         * bindings/js/JSWebGLRenderingContextCustom.cpp:
577         (WebCore::toJS): Map from extension name to native object.
578
579         * html/canvas/OESTextureHalfFloatLinear.cpp: Added. New files. These are boiler-plate.
580         * html/canvas/OESTextureHalfFloatLinear.h: Added.
581         * html/canvas/OESTextureHalfFloatLinear.idl: Added.
582
583         * html/canvas/WebGLExtension.h: Add new enum for the new extension.
584
585         * html/canvas/WebGLRenderingContext.cpp:
586         (WebCore::WebGLRenderingContext::getExtension): Create the extension object if the
587         context is asked for one.
588         (WebCore::WebGLRenderingContext::getSupportedExtensions): Add the new extension to the
589         list of supported extensions. Actually remember to do it this time :)
590         (WebCore::WebGLRenderingContext::checkTextureCompleteness): Need to check for the half-float
591         extension as well, and update the log message.
592         * html/canvas/WebGLRenderingContext.h: New extension object.
593
594         * html/canvas/WebGLTexture.cpp:
595         (WebCore::WebGLTexture::WebGLTexture):
596         (WebCore::WebGLTexture::needToUseBlackTexture): Check for half-float type.
597         (WebCore::WebGLTexture::update): Mark a texture as half-float if necessary.
598         * html/canvas/WebGLTexture.h:
599
600         * platform/graphics/Extensions3D.h: Add a comment about the new extension.
601         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
602         (WebCore::Extensions3DOpenGL::supportsExtension): This extension is available
603         when GL_ARB_texture_float is supported, so add the name to the translation.
604
605 2014-01-10  Brent Fulgham  <bfulgham@apple.com>
606
607         [WebGL] Correct uniform input validation for texture sampler uniform
608         https://bugs.webkit.org/show_bug.cgi?id=126775
609
610         Reviewed by Dean Jackson.
611
612         Added fast/canvas/webgl/uniform-samplers-test.html
613
614         * html/canvas/WebGLRenderingContext.cpp:
615         (WebCore::WebGLRenderingContext::uniform1iv): Access Int32Array data properly.
616
617 2014-01-10  Manuel Rego Casasnovas  <rego@igalia.com>
618
619         [GTK] Unreviewed build fix after r161644.
620
621         * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
622         (WebCore::MediaStreamAudioSourceNode::setFormat):
623
624 2014-01-10  Anders Carlsson  <andersca@apple.com>
625
626         Remove an unused FrameLoader function
627         https://bugs.webkit.org/show_bug.cgi?id=126785
628
629         Reviewed by Beth Dakin.
630
631         * WebCore.exp.in:
632         * loader/FrameLoader.cpp:
633         (WebCore::FrameLoader::setState):
634         * loader/FrameLoader.h:
635
636 2014-01-10  Benjamin Poulain  <bpoulain@apple.com>
637
638         Remove the BlackBerry port from trunk
639         https://bugs.webkit.org/show_bug.cgi?id=126715
640
641         Reviewed by Anders Carlsson.
642
643         * platform/MIMETypeRegistry.cpp:
644         (WebCore::initializeSupportedImageMIMETypesForEncoding):
645         * platform/PlatformKeyboardEvent.h:
646         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
647         * platform/PlatformMouseEvent.h:
648         * platform/PlatformTouchEvent.h:
649         (WebCore::PlatformTouchEvent::PlatformTouchEvent):
650         * platform/PlatformTouchPoint.h:
651         * platform/ScrollAnimatorNone.cpp:
652         (WebCore::ScrollAnimator::create):
653         * platform/URL.cpp:
654         (WebCore::URL::parse):
655         (WebCore::portAllowed):
656         * platform/Widget.h:
657         * platform/graphics/ANGLEWebKitBridge.h:
658         * platform/graphics/DisplayRefreshMonitor.cpp:
659         (WebCore::DisplayRefreshMonitor::DisplayRefreshMonitor):
660         * platform/graphics/DisplayRefreshMonitor.h:
661         * platform/graphics/FloatPoint.h:
662         * platform/graphics/FloatRect.h:
663         * platform/graphics/FloatSize.h:
664         * platform/graphics/FontCache.h:
665         * platform/graphics/FontPlatformData.h:
666         * platform/graphics/GlyphBuffer.h:
667         * platform/graphics/Gradient.cpp:
668         * platform/graphics/Gradient.h:
669         * platform/graphics/GraphicsContext.h:
670         * platform/graphics/GraphicsContext3D.h:
671
672 2014-01-10  Timothy Hatcher  <timothy@apple.com>
673
674         Clean up and fix some issues with stdout formatting of console messages.
675
676         * Fix URLs not printing line numbers unless column number is > 0.
677         * Change "CONSOLEAPI" to "CONSOLE" for the source.
678         * Clean up how console.trace outputs and print URL, line and column for each frame.
679         * Print "(unknown)" for anonymous and native code call frames.
680
681         https://bugs.webkit.org/show_bug.cgi?id=126767
682
683         Reviewed by Joseph Pecoraro.
684
685         * page/Console.cpp:
686         (WebCore::internalAddMessage):
687         * page/PageConsole.cpp:
688         (WebCore::PageConsole::printSourceURLAndPosition):
689         (WebCore::PageConsole::printMessageSourceAndLevelPrefix):
690         * page/PageConsole.h:
691
692 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
693
694         [iOS] Fill in missing WebCoreThread function pointers
695         https://bugs.webkit.org/show_bug.cgi?id=126776
696
697         Reviewed by Timothy Hatcher.
698
699         * platform/ios/wak/WebCoreThreadSystemInterface.cpp:
700         (InitWebCoreThreadSystemInterface):
701
702 2014-01-10  Yongjun Zhang  <yongjun_zhang@apple.com>
703
704         Clear unparented tiled layers on memory pressure.
705         https://bugs.webkit.org/show_bug.cgi?id=126737
706
707         Reviewed by Simon Fraser.
708
709         TileController hold unparented tiles for a short period of time (1 -3 sec); we should clear these unparented
710         tiles immediately if we are under memory pressure.
711         
712         The patch does 3 things to improve the behavior:
713         1) When the system free memory is low (<35%), reduce the tiling threshold.  This could reduce
714         the peak memory usage when system is under low memory since we will convert more web layers into
715         tiled backing.
716         2) Under memory pressure, immediately clear all unparented tiles.
717         3) Add a cap (16 tiles) to limit the total number of unparented tiles in TileController's.
718
719         * WebCore.exp.in:
720         * WebCore.xcodeproj/project.pbxproj: Add a new class TileControllerMemoryHandler.
721         * platform/graphics/ca/GraphicsLayerCA.cpp:
722         (WebCore::GraphicsLayerCA::requiresTiledLayer):  Use a smaller tiling threshold if the system free memory is low.
723         * platform/graphics/ca/mac/TileController.h:
724         (WebCore::TileController::numberOfUnparentedTiles):
725         * platform/graphics/ca/mac/TileController.mm:
726         (WebCore::TileController::startedNewCohort):
727         (WebCore::TileController::removeUnparentedTilesNow): Remove all unparentd tiles.
728         * platform/ios/MemoryPressureHandlerIOS.mm:
729         * platform/ios/TileControllerMemoryHandlerIOS.cpp: Added.
730         (WebCore::TileControllerMemoryHandler::removeTileController):
731         (WebCore::TileControllerMemoryHandler::totalUnparentedTiledLayers):
732         (WebCore::TileControllerMemoryHandler::tileControllerGainUnparentedTiles):
733         (WebCore::TileControllerMemoryHandler::trimUnparentedTilesToTarget): Trims the number of unparented tiles until
734             it reaches the target.
735         (WebCore::tileControllerMemoryHandler):
736         * platform/ios/TileControllerMemoryHandlerIOS.h: Added.
737         (WebCore::TileControllerMemoryHandler::TileControllerMemoryHandler):
738
739 2014-01-10  Joseph Pecoraro  <pecoraro@apple.com>
740
741         [CSS Blending] Log blending as a layer creation reason in the WI
742         https://bugs.webkit.org/show_bug.cgi?id=126159
743
744         Reviewed by Timothy Hatcher.
745
746         * inspector/InspectorLayerTreeAgent.cpp:
747         (WebCore::InspectorLayerTreeAgent::reasonsForCompositingLayer):
748         * inspector/protocol/LayerTree.json:
749
750 2014-01-10  Andy Estes  <aestes@apple.com>
751
752         Fix some iOS build errors during bindings generation.
753
754         * bindings/objc/PublicDOMInterfaces.h: Included
755         WebKitAdditions/PublicDOMInterfacesIOS.h and change
756         -[DOMRGBColor color] to return a CGColorRef on iOS.
757
758 2014-01-10  Timothy Hatcher  <timothy@apple.com>
759
760         Prevent some resources from showing up in Web Inspector as years in duration.
761
762         No WebKit port passed a monotonic time to InspectorInstrumentation::didFinishLoading -- except Chromium.
763
764         https://bugs.webkit.org/show_bug.cgi?id=126760
765
766         Reviewed by Joseph Pecoraro.
767
768         * inspector/InspectorInstrumentation.cpp:
769         (WebCore::InspectorInstrumentation::didFinishLoadingImpl):
770         Revert part of r102961 to use finishTime as-is and not expect a monotonic time.
771
772 2014-01-10  Dirk Schulze  <krit@webkit.org>
773
774         Make clipping path from basic-shapes relative to <box> value
775         https://bugs.webkit.org/show_bug.cgi?id=126206
776
777         Reviewed by Simon Fraser.
778
779         Tests: css3/masking/clip-path-circle-border-box.html
780                css3/masking/clip-path-circle-bounding-box.html
781                css3/masking/clip-path-circle-content-box.html
782                css3/masking/clip-path-circle-margin-box.html
783                css3/masking/clip-path-circle-padding-box.html
784
785         * rendering/RenderLayer.cpp:
786         (WebCore::RenderLayer::setupClipPath): Add switch to differ between boxes
787             and use different reference boxes to size the clipping path.
788
789 2014-01-10  Youenn Fablet  <youennf@gmail.com>
790
791
792         Correctly set XHR loadend attributes (loaded and total).
793         https://bugs.webkit.org/show_bug.cgi?id=120828
794
795         Reviewed by Alexey Proskuryakov.
796         
797         Added correct initialization of lengthComputable, loaded and total attributes 
798         to XHR ProgressEvent events (load, loadstart, loadend, abort, error and timeout).
799
800         XMLHttpRequestProgressEventThrottle and XMLHttpRequestUpload now keep persistent knowledge 
801         of m_loaded and m_total values with this patch.
802         
803         Code refactoring to handle event dispatching in case of error in a single manner.
804         XMLHttpRequestProgressEventThrottle::dispatchProgressEvent is renamed as dispatchThrottledProgressEvent
805         XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadend is replaced by dispatchProgressEvent(const AtomicString&)
806         
807         Fixed assertion issues over bug 120828 patch
808
809         Tests: http/tests/xmlhttprequest/loadstart-event-init.html
810                http/tests/xmlhttprequest/onabort-progressevent-attributes.html
811                http/tests/xmlhttprequest/onload-progressevent-attributes.html
812                http/tests/xmlhttprequest/upload-onabort-progressevent-attributes.html
813                http/tests/xmlhttprequest/upload-onload-progressevent-attributes.html
814
815         * xml/XMLHttpRequest.cpp:
816         (WebCore::XMLHttpRequest::callReadyStateChangeListener): changed readystatechange event from ProgressEvent to Event (not cancellable, not bubblable) to better match the spec 
817         (WebCore::XMLHttpRequest::createRequest):
818         (WebCore::XMLHttpRequest::abort): code refactoring to handle error event dispatching in a single way
819         (WebCore::XMLHttpRequest::networkError): code refactoring to handle error event dispatching in a single way
820         (WebCore::XMLHttpRequest::abortError): code refactoring to handle error event dispatching in a single way
821         (WebCore::XMLHttpRequest::didSendData):
822         (WebCore::XMLHttpRequest::didReceiveData):
823         (WebCore::XMLHttpRequest::dispatchErrorEvents): dispatch progress events in case of error
824         (WebCore::XMLHttpRequest::didTimeout): code refactoring to handle error event dispatching in a single way
825         * xml/XMLHttpRequest.h:
826         * xml/XMLHttpRequestProgressEventThrottle.cpp: before the patch, the fact that a progress event is being throttled is stored indirectly (m_loaded or m_total not equal to zero). With the patch, this information is stored in m_hasThrottledProgressEvent. The m_loaded and m_total values are no longer set back to zero after a progress event is dispatched. This allows using these values to correctly initialize other ProgressEvent events (in particular loadend, abort, timeout...) 
827         (WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
828         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchThrottledProgressEvent): always update the new m_loaded and m_total values. If progress event is not sent as part of the function call, store the fact that a progress event is being throttled through m_hasThrottledProgressEvent. 
829         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): used to send any ProgressEvent event that is not be throttled
830         (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent): after the call, no progress event is throttled anymore
831         (WebCore::XMLHttpRequestProgressEventThrottle::fired): after the call, no progress event is throttled anymore
832         (WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch):
833         (WebCore::XMLHttpRequestProgressEventThrottle::suspend):
834         * xml/XMLHttpRequestProgressEventThrottle.h: introduced m_hasThrottledProgressEvent which stores whether a progress event is being throttled and m_computableLength which is used to initialize ProgressEvent computableLength
835         * xml/XMLHttpRequestUpload.cpp:
836         (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
837         (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
838         * xml/XMLHttpRequestUpload.h: introduced m_loaded, m_total and m_lengthComputable, similarly to XMLHttpRequestProgressEventThrottle
839
840 2014-01-10  Bear Travis  <betravis@adobe.com>
841
842         [CSS Shapes] Change parseBasicShape to return a CSSPrimitiveValue
843         https://bugs.webkit.org/show_bug.cgi?id=126713
844
845         Reviewed by Dirk Schulze.
846
847         Avoid the duplicated code wrapping the CSSBasicShape in a CSSPrimitiveValue
848         by having parseBasicShape return a CSSPrimitiveValue reference.
849
850         Refactoring, no new tests.
851
852         * css/CSSParser.cpp:
853         (WebCore::CSSParser::parseShapeProperty):
854         (WebCore::CSSParser::parseClipPath):
855         (WebCore::CSSParser::parseBasicShape):
856         * css/CSSParser.h:
857
858 2014-01-10  Piotr Grad  <p.grad@samsung.com>
859
860         Possible crash in ApplicationCache::removeResource.
861         https://bugs.webkit.org/show_bug.cgi?id=126695
862
863         Reviewed by Alexey Proskuryakov.
864
865         No new tests.
866
867         Iterator variable was used after it was removed.
868
869         * loader/appcache/ApplicationCache.cpp:
870         (WebCore::ApplicationCache::removeResource):
871
872 2014-01-10  Daniel Bates  <dabates@apple.com>
873
874         Another build fix for the Production Mac build following <http://trac.webkit.org/changeset/161638>
875         (https://bugs.webkit.org/show_bug.cgi?id=126698)
876
877         Move the logic for appending the port-specific IDL files {Touch, TouchEvent, TouchList}.idl to the
878         list of binding IDLs (BINDING_IDLS) before the definition of variables DOM_CLASSES and JS_DOM_HEADERS
879         so that we generate the DOM and JS bindings for these IDLs.
880
881         * DerivedSources.make:
882
883 2014-01-10  Anders Carlsson  <andersca@apple.com>
884
885         Remove supportMultipleWindows setting
886         https://bugs.webkit.org/show_bug.cgi?id=126772
887
888         Reviewed by Beth Dakin.
889
890         This setting was added in https://bugs.webkit.org/show_bug.cgi?id=99716 for the Chromium port
891         and is unused by everyone else so get rid of it.
892
893         * loader/FrameLoader.cpp:
894         (WebCore::createWindow):
895         * page/ContextMenuController.cpp:
896         (WebCore::openNewWindow):
897         * page/Settings.in:
898
899 2014-01-10  Benjamin Poulain  <bpoulain@apple.com>
900
901         Remove the BlackBerry port from trunk
902         https://bugs.webkit.org/show_bug.cgi?id=126715
903
904         Reviewed by Anders Carlsson.
905
906         * dom/TouchEvent.cpp:
907         (WebCore::TouchEvent::TouchEvent):
908         (WebCore::TouchEvent::initTouchEvent):
909         * dom/TouchEvent.h:
910         * dom/ViewportArguments.cpp:
911         * dom/ViewportArguments.h:
912         * history/HistoryItem.h:
913         * loader/PingLoader.cpp:
914         (WebCore::PingLoader::loadImage):
915         (WebCore::PingLoader::sendPing):
916         (WebCore::PingLoader::sendViolationReport):
917         * loader/appcache/ApplicationCacheGroup.cpp:
918         (WebCore::ApplicationCacheGroup::createResourceHandle):
919         * loader/cache/CachedResource.cpp:
920         (WebCore::CachedResource::load):
921         * loader/icon/IconLoader.cpp:
922         (WebCore::IconLoader::startLoading):
923         * page/NavigatorBase.cpp:
924         * page/Settings.cpp:
925         * page/scrolling/ScrollingCoordinator.cpp:
926         (WebCore::ScrollingCoordinator::create):
927         * platform/Cursor.cpp:
928         * platform/Cursor.h:
929         (WebCore::Cursor::Cursor):
930         * platform/DragData.h:
931         * platform/DragImage.h:
932         * plugins/PluginDatabase.cpp:
933         (WebCore::PluginDatabase::defaultPluginDirectories):
934         (WebCore::PluginDatabase::isPreferredPluginDirectory):
935         * rendering/RenderLayerBacking.cpp:
936         (WebCore::RenderLayerBacking::paintsIntoWindow):
937         * rendering/RenderObject.cpp:
938         (WebCore::RenderObject::shouldRespectImageOrientation):
939         * testing/Internals.cpp:
940         (WebCore::Internals::getCurrentCursorInfo):
941         * workers/DefaultSharedWorkerRepository.cpp:
942         (WebCore::SharedWorkerScriptLoader::load):
943         * workers/Worker.cpp:
944         (WebCore::Worker::create):
945         * workers/WorkerGlobalScope.cpp:
946         (WebCore::WorkerGlobalScope::importScripts):
947         * workers/WorkerScriptLoader.cpp:
948         (WebCore::WorkerScriptLoader::createResourceRequest):
949         * workers/WorkerScriptLoader.h:
950         * xml/XMLHttpRequest.cpp:
951         (WebCore::XMLHttpRequest::createRequest):
952
953 2014-01-10  Benjamin Poulain  <bpoulain@apple.com>
954
955         Remove the BlackBerry port from trunk
956         https://bugs.webkit.org/show_bug.cgi?id=126715
957
958         Reviewed by Anders Carlsson.
959
960         * Modules/navigatorcontentutils/NavigatorContentUtils.cpp:
961         (WebCore::initProtocolHandlerWhitelist):
962         * UseJSC.cmake:
963         * bindings/generic/RuntimeEnabledFeatures.cpp:
964         (WebCore::RuntimeEnabledFeatures::RuntimeEnabledFeatures):
965         * bindings/js/GCController.cpp:
966         (WebCore::GCController::GCController):
967         (WebCore::GCController::garbageCollectSoon):
968         * bindings/js/GCController.h:
969
970 2014-01-10  Daniel Bates  <dabates@apple.com>
971
972         Fix the WebCore, WebKit build targets following <http://trac.webkit.org/changeset/161638>
973         (https://bugs.webkit.org/show_bug.cgi?id=126698)
974
975         Tell Xcode that the supported platforms for all WebKit targets are iOS and OS X.
976
977         * Configurations/Base.xcconfig:
978
979 2014-01-09  Andy Estes  <aestes@apple.com>
980
981         [iOS] Upstream iOS changes to MigrateHeaders.make
982         https://bugs.webkit.org/show_bug.cgi?id=126731
983
984         Reviewed by David Kilzer.
985
986         * WebCore.xcodeproj/project.pbxproj: Mark an iOS-specific header at
987         Private that will later be migrated by WebKit.
988
989 2014-01-10  Daniel Bates  <dabates@apple.com>
990
991         Fix the Production Mac build following <http://trac.webkit.org/changeset/161638>
992         (https://bugs.webkit.org/show_bug.cgi?id=126698)
993
994         Substitute JAVASCRIPTCORE_PRIVATE_HEADERS_DIR_Production_ for JAVASCRIPTCORE_PRIVATE_HEADERS_Production_.
995
996         * Configurations/WebCore.xcconfig:
997
998 2014-01-10  Anders Carlsson  <andersca@apple.com>
999
1000         Add a missing include.
1001
1002         * Modules/webdatabase/DatabaseManager.h:
1003
1004 2014-01-10  Anders Carlsson  <andersca@apple.com>
1005
1006         Use STL threading primitives in DatabaseDetails and DatabaseManager
1007         https://bugs.webkit.org/show_bug.cgi?id=126759
1008
1009         Reviewed by Geoffrey Garen.
1010
1011         * Modules/webdatabase/DatabaseDetails.h:
1012         (WebCore::DatabaseDetails::DatabaseDetails):
1013         (WebCore::DatabaseDetails::threadID):
1014         * Modules/webdatabase/DatabaseManager.cpp:
1015         (WebCore::DatabaseManager::existingDatabaseContextFor):
1016         (WebCore::DatabaseManager::registerDatabaseContext):
1017         (WebCore::DatabaseManager::unregisterDatabaseContext):
1018         (WebCore::DatabaseManager::didConstructDatabaseContext):
1019         (WebCore::DatabaseManager::didDestructDatabaseContext):
1020         (WebCore::DatabaseManager::addProposedDatabase):
1021         (WebCore::DatabaseManager::removeProposedDatabase):
1022         (WebCore::DatabaseManager::fullPathForDatabase):
1023         (WebCore::DatabaseManager::detailsForNameAndOrigin):
1024         * Modules/webdatabase/DatabaseManager.h:
1025
1026 2014-01-10  Commit Queue  <commit-queue@webkit.org>
1027
1028         Unreviewed, rolling out r161629.
1029         http://trac.webkit.org/changeset/161629
1030         https://bugs.webkit.org/show_bug.cgi?id=126762
1031
1032         Fails svg/custom/conditional-processing-2.html (Requested by
1033         ap on #webkit).
1034
1035         * svg/SVGSwitchElement.cpp:
1036         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
1037         * svg/SVGTests.cpp:
1038         (WebCore::SVGTests::hasExtension):
1039         (WebCore::SVGTests::isValid):
1040
1041 2014-01-10  ChangSeok Oh  <changseok.oh@collabora.com>
1042
1043         Unreviewed build fix since r161589.
1044
1045         The changeset causes a compile failure with --no-svg.
1046
1047         * platform/graphics/FontFastPath.cpp:
1048         (WebCore::Font::drawGlyphBuffer):
1049
1050 2014-01-10  Przemyslaw Szymanski  <p.szymanski3@samsung.com>
1051
1052         [WebGL] Removing unnecessary pointer checks
1053         https://bugs.webkit.org/show_bug.cgi?id=124046
1054
1055         Reviewed by Brent Fulgham.
1056
1057         We do not need to check for a null array three times in
1058         the same call. Let's just do it once!
1059
1060         No new tests. Covered by existing ones.
1061
1062         * html/canvas/WebGLBuffer.cpp:
1063         (WebCore::WebGLBuffer::associateBufferData):
1064
1065 2014-01-10  Daniel Bates  <dabates@apple.com>
1066
1067         Speculative build fix for Windows following <http://trac.webkit.org/changeset/161638>
1068         (https://bugs.webkit.org/show_bug.cgi?id=126698)
1069
1070         Reviewed by David Kilzer.
1071
1072         * bindings/scripts/preprocessor.pm:
1073         (applyPreprocessor):
1074
1075 2014-01-10  Przemyslaw Szymanski  <p.szymanski3@samsung.com>
1076
1077         [WebGL] Wrong condition order in the if statement
1078         https://bugs.webkit.org/show_bug.cgi?id=125000
1079
1080         Reviewed by Brent Fulgham.
1081
1082         We should only pay the cost of string comparison once. The
1083         current logic requires a string comparison every time we
1084         pass through the function. Instead, by reordering the statements
1085         we can short-circuit through the boolean test after the initial
1086         setup is complete.
1087
1088         No new tests. No behaviour changes.
1089
1090         * platform/graphics/opengl/Extensions3DOpenGLES.cpp:
1091         (WebCore::Extensions3DOpenGLES::supportsExtension):
1092
1093 2014-01-10  Anders Carlsson  <andersca@apple.com>
1094
1095         CTTE in AudioContext::AutoLocker
1096         https://bugs.webkit.org/show_bug.cgi?id=126758
1097
1098         Reviewed by Antti Koivisto.
1099
1100         * Modules/webaudio/AudioBasicInspectorNode.cpp:
1101         (WebCore::AudioBasicInspectorNode::connect):
1102         (WebCore::AudioBasicInspectorNode::disconnect):
1103         * Modules/webaudio/AudioBufferSourceNode.cpp:
1104         (WebCore::AudioBufferSourceNode::setBuffer):
1105         * Modules/webaudio/AudioContext.cpp:
1106         (WebCore::AudioContext::refNode):
1107         (WebCore::AudioContext::deleteMarkedNodes):
1108         (WebCore::AudioContext::removeMarkedSummingJunction):
1109         * Modules/webaudio/AudioContext.h:
1110         (WebCore::AudioContext::AutoLocker::AutoLocker):
1111         (WebCore::AudioContext::AutoLocker::~AutoLocker):
1112         * Modules/webaudio/AudioNode.cpp:
1113         (WebCore::AudioNode::connect):
1114         (WebCore::AudioNode::disconnect):
1115         (WebCore::AudioNode::setChannelCount):
1116         (WebCore::AudioNode::setChannelCountMode):
1117         (WebCore::AudioNode::setChannelInterpretation):
1118         (WebCore::AudioNode::enableOutputsIfNecessary):
1119         * Modules/webaudio/MediaElementAudioSourceNode.cpp:
1120         (WebCore::MediaElementAudioSourceNode::setFormat):
1121         * Modules/webaudio/WaveShaperNode.cpp:
1122         (WebCore::WaveShaperNode::setOversample):
1123
1124 2014-01-10  Antti Koivisto  <antti@apple.com>
1125
1126         Use element iterators more
1127         https://bugs.webkit.org/show_bug.cgi?id=126756
1128
1129         Reviewed by Anders Carlsson.
1130
1131         * dom/VisitedLinkState.cpp:
1132         (WebCore::VisitedLinkState::invalidateStyleForAllLinks):
1133         (WebCore::VisitedLinkState::invalidateStyleForLink):
1134         * html/HTMLMeterElement.cpp:
1135         (WebCore::HTMLMeterElement::renderMeter):
1136         * html/HTMLProgressElement.cpp:
1137         (WebCore::HTMLProgressElement::renderProgress):
1138         * html/shadow/ContentDistributor.cpp:
1139         (WebCore::ContentDistributor::ensureInsertionPointList):
1140         * style/StyleResolveTree.cpp:
1141
1142 2014-01-10  Daniel Bates  <dabates@apple.com>
1143
1144         Attempt to fix the iOS build after <http://trac.webkit.org/changeset/161589>
1145         (https://bugs.webkit.org/show_bug.cgi?id=126654)
1146
1147         * platform/audio/ios/AudioSessionIOS.mm: Import header PassOwnPtr.h so that we can use adoptPtr().
1148
1149 2014-01-10  Daniel Bates  <dabates@apple.com>
1150
1151         Attempt to fix the build after <http://trac.webkit.org/changeset/161638>
1152         (https://bugs.webkit.org/show_bug.cgi?id=126698)
1153
1154         Substitute tab characters for space characters.
1155
1156         * DerivedSources.make:
1157
1158 2014-01-10  Anders Carlsson  <andersca@apple.com>
1159
1160         DOMWindow::showModalDialog should use std::function
1161         https://bugs.webkit.org/show_bug.cgi?id=126753
1162
1163         Reviewed by Antti Koivisto.
1164
1165         * bindings/js/JSDOMWindowCustom.cpp:
1166         (WebCore::DialogHandler::dialogCreated):
1167         (WebCore::JSDOMWindow::showModalDialog):
1168         * page/DOMWindow.cpp:
1169         (WebCore::DOMWindow::createWindow):
1170         (WebCore::DOMWindow::showModalDialog):
1171         * page/DOMWindow.h:
1172
1173 2014-01-10  Daniel Bates  <dabates@apple.com>
1174
1175         [iOS] Upstream WebCore and Tools miscellaneous changes
1176         https://bugs.webkit.org/show_bug.cgi?id=126698
1177
1178         Reviewed by David Kilzer.
1179
1180         * Configurations/Base.xcconfig:
1181         * Configurations/WebCore.xcconfig:
1182         * Configurations/WebCoreTestSupport.xcconfig:
1183         * Configurations/iOS.xcconfig: Added.
1184         * DerivedSources.make:
1185         * English.lproj/Localizable.strings:
1186         * Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.cpp: Copied from Source/WebCore/editing/TextAffinity.h.
1187         (WebCore::stringForPlaybackTargetAvailability):
1188         (WebCore::WebKitPlaybackTargetAvailabilityEvent::WebKitPlaybackTargetAvailabilityEvent):
1189         * Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.h: Added.
1190         (WebCore::WebKitPlaybackTargetAvailabilityEventInit::WebKitPlaybackTargetAvailabilityEventInit):
1191         (WebCore::WebKitPlaybackTargetAvailabilityEvent::~WebKitPlaybackTargetAvailabilityEvent):
1192         (WebCore::WebKitPlaybackTargetAvailabilityEvent::create):
1193         (WebCore::WebKitPlaybackTargetAvailabilityEvent::availability):
1194         * Modules/airplay/WebKitPlaybackTargetAvailabilityEvent.idl: Copied from Source/WebCore/editing/DeleteButton.h.
1195         * Modules/geolocation/Geolocation.cpp:
1196         (WebCore::Geolocation::Geolocation):
1197         (WebCore::Geolocation::canSuspend):
1198         (WebCore::Geolocation::suspend):
1199         (WebCore::Geolocation::resume):
1200         (WebCore::Geolocation::resumeTimerFired):
1201         (WebCore::Geolocation::resetAllGeolocationPermission):
1202         (WebCore::Geolocation::stop):
1203         (WebCore::Geolocation::setIsAllowed):
1204         (WebCore::Geolocation::positionChanged):
1205         (WebCore::Geolocation::setError):
1206         * Modules/geolocation/Geolocation.h:
1207         * Modules/geolocation/NavigatorGeolocation.cpp:
1208         (WebCore::NavigatorGeolocation::resetAllGeolocationPermission):
1209         * Modules/geolocation/NavigatorGeolocation.h:
1210         * Modules/speech/SpeechSynthesis.cpp:
1211         (WebCore::SpeechSynthesis::SpeechSynthesis):
1212         (WebCore::SpeechSynthesis::speak):
1213         * Modules/speech/SpeechSynthesis.h:
1214         (WebCore::SpeechSynthesis::userGestureRequiredForSpeechStart):
1215         (WebCore::SpeechSynthesis::removeBehaviorRestriction):
1216         * Modules/webaudio/AudioContext.cpp:
1217         * Modules/webaudio/AudioContext.h:
1218         * Modules/webaudio/AudioScheduledSourceNode.cpp:
1219         * Modules/webdatabase/Database.cpp:
1220         * Modules/webdatabase/DatabaseBackendBase.cpp:
1221         (WebCore::DatabaseBackendBase::performOpenAndVerify):
1222         (WebCore::DatabaseBackendBase::incrementalVacuumIfNeeded):
1223         * Modules/webdatabase/DatabaseContext.cpp:
1224         (WebCore::DatabaseContext::DatabaseContext):
1225         (WebCore::DatabaseContext::databaseThread):
1226         (WebCore::DatabaseContext::setPaused):
1227         * Modules/webdatabase/DatabaseContext.h:
1228         * Modules/webdatabase/DatabaseManagerClient.h:
1229         * Modules/webdatabase/DatabaseTask.cpp:
1230         (WebCore::DatabaseTask::performTask):
1231         (WebCore::Database::DatabaseTransactionTask::shouldPerformWhilePaused):
1232         * Modules/webdatabase/DatabaseTask.h:
1233         * Modules/webdatabase/DatabaseThread.cpp:
1234         (WebCore::DatabaseThread::DatabaseThread):
1235         (WebCore::DatabaseThread::requestTermination):
1236         (WebCore::DatabaseUnpauseTask::create):
1237         (WebCore::DatabaseUnpauseTask::shouldPerformWhilePaused):
1238         (WebCore::DatabaseUnpauseTask::DatabaseUnpauseTask):
1239         (WebCore::DatabaseUnpauseTask::doPerformTask):
1240         (WebCore::DatabaseUnpauseTask::debugTaskName):
1241         (WebCore::DatabaseThread::setPaused):
1242         (WebCore::DatabaseThread::handlePausedQueue):
1243         (WebCore::DatabaseThread::databaseThread):
1244         * Modules/webdatabase/DatabaseThread.h:
1245         * Modules/webdatabase/DatabaseTracker.cpp:
1246         (WebCore::DatabaseTracker::setQuota):
1247         (WebCore::DatabaseTracker::deleteOrigin):
1248         (WebCore::DatabaseTracker::deleteDatabase):
1249         (WebCore::DatabaseTracker::deleteDatabaseFile):
1250         (WebCore::DatabaseTracker::removeDeletedOpenedDatabases):
1251         (WebCore::isZeroByteFile):
1252         (WebCore::DatabaseTracker::deleteDatabaseFileIfEmpty):
1253         (WebCore::DatabaseTracker::openDatabaseMutex):
1254         (WebCore::DatabaseTracker::emptyDatabaseFilesRemovalTaskWillBeScheduled):
1255         (WebCore::DatabaseTracker::emptyDatabaseFilesRemovalTaskDidFinish):
1256         (WebCore::DatabaseTracker::setDatabasesPaused):
1257         * Modules/webdatabase/DatabaseTracker.h:
1258         * Modules/webdatabase/SQLTransactionBackend.cpp:
1259         (WebCore::SQLTransactionBackend::shouldPerformWhilePaused):
1260         * Modules/webdatabase/SQLTransactionBackend.h:
1261         * Resources/DictationPhraseWithAlternativesDot.png: Added.
1262         * Resources/DictationPhraseWithAlternativesDot@2x.png: Added.
1263         * Resources/SpellingDot.png: Added.
1264         * Resources/SpellingDot@2x.png: Added.
1265         * Resources/decrementArrow.tiff: Added.
1266         * Resources/hScrollControl_left.png: Added.
1267         * Resources/hScrollControl_middle.png: Added.
1268         * Resources/hScrollControl_right.png: Added.
1269         * Resources/incrementArrow.tiff: Added.
1270         * Resources/markedLeft.png: Added.
1271         * Resources/markedMiddle.png: Added.
1272         * Resources/markedRight.png: Added.
1273         * Resources/vScrollControl_bottom.png: Added.
1274         * Resources/vScrollControl_middle.png: Added.
1275         * Resources/vScrollControl_top.png: Added.
1276         * WebCore.xcodeproj/project.pbxproj:
1277         * bindings/js/GCController.cpp:
1278         (WebCore::GCController::garbageCollectNow):
1279         (WebCore::GCController::releaseExecutableMemory):
1280         * bindings/js/GCController.h:
1281         * bindings/js/JSCallbackData.h:
1282         (WebCore::JSCallbackData::~JSCallbackData):
1283         * bindings/js/JSDOMWindowBase.cpp:
1284         (WebCore::JSDOMWindowBase::supportsProfiling):
1285         (WebCore::JSDOMWindowBase::shouldInterruptScriptBeforeTimeout):
1286         (WebCore::JSDOMWindowBase::commonVM):
1287         (WebCore::JSDOMWindowBase::commonVMExists):
1288         (WebCore::JSDOMWindowBase::commonVMInternal):
1289         * bindings/js/JSDOMWindowCustom.cpp:
1290         (WebCore::JSDOMWindow::touch):
1291         (WebCore::JSDOMWindow::touchList):
1292         * bindings/js/JSDeviceOrientationEventCustom.cpp:
1293         (WebCore::JSDeviceOrientationEvent::webkitCompassHeading):
1294         (WebCore::JSDeviceOrientationEvent::webkitCompassAccuracy):
1295         (WebCore::JSDeviceOrientationEvent::initDeviceOrientationEvent):
1296         * bindings/js/JSMainThreadExecState.h:
1297         * bindings/js/JSTouchCustom.cpp:
1298         * bindings/js/JSTouchListCustom.cpp:
1299         * bindings/js/PageScriptDebugServer.cpp:
1300         (WebCore::PageScriptDebugServer::didContinue):
1301         * bindings/js/ScriptController.cpp:
1302         (WebCore::ScriptController::initializeThreading):
1303         * bindings/js/ScriptDebugServer.cpp:
1304         (WebCore::ScriptDebugServer::handlePause):
1305         * bindings/js/ios/TouchConstructors.cpp: Added.
1306         * bindings/objc/DOM.mm:
1307         (WebCore::wkQuadFromFloatQuad):
1308         (WebCore::kit):
1309         (WebCore::min4):
1310         (WebCore::max4):
1311         (WebCore::emptyQuad):
1312         (-[WKQuadObject initWithQuad:]):
1313         (-[WKQuadObject quad]):
1314         (-[WKQuadObject boundingBox]):
1315         (-[DOMNode boundingBox]):
1316         (-[DOMNode absoluteQuad]):
1317         (-[DOMNode absoluteQuadAndInsideFixedPosition:]):
1318         (-[DOMNode boundingBoxUsingTransforms]):
1319         (-[DOMNode lineBoxQuads]):
1320         (-[DOMNode _linkElement]):
1321         (-[DOMNode hrefURL]):
1322         (-[DOMNode hrefTarget]):
1323         (-[DOMNode hrefFrame]):
1324         (-[DOMNode hrefLabel]):
1325         (-[DOMNode hrefTitle]):
1326         (-[DOMNode boundingFrame]):
1327         (-[DOMNode innerFrameQuad]):
1328         (-[DOMNode computedFontSize]):
1329         (-[DOMNode nextFocusNode]):
1330         (-[DOMNode previousFocusNode]):
1331         (-[DOMRange boundingBox]):
1332         (-[DOMRange renderedImageForcingBlackText:renderedImageForcingBlackText:]):
1333         (-[DOMElement _font]):
1334         (-[DOMHTMLLinkElement _mediaQueryMatchesForOrientation:]):
1335         (-[DOMHTMLLinkElement _mediaQueryMatches]):
1336         * bindings/objc/DOMEvents.h:
1337         * bindings/objc/DOMEvents.mm:
1338         (kitClass):
1339         * bindings/objc/DOMExtensions.h:
1340         * bindings/objc/DOMHTML.mm:
1341         (-[DOMHTMLElement scrollYOffset]):
1342         (-[DOMHTMLElement setScrollXOffset:scrollYOffset:]):
1343         (-[DOMHTMLElement setScrollXOffset:scrollYOffset:adjustForIOSCaret:]):
1344         (-[DOMHTMLElement absolutePosition::::]):
1345         (-[DOMHTMLInputElement _autocapitalizeType]):
1346         (-[DOMHTMLTextAreaElement _autocapitalizeType]):
1347         (-[DOMHTMLInputElement setValueWithChangeEvent:]):
1348         (-[DOMHTMLInputElement setValueAsNumberWithChangeEvent:]):
1349         * bindings/objc/DOMInternal.h:
1350         * bindings/objc/DOMInternal.mm:
1351         (wrapperCacheLock):
1352         (getDOMWrapper):
1353         (addDOMWrapper):
1354         (removeDOMWrapper):
1355         * bindings/objc/DOMPrivate.h:
1356         * bindings/objc/DOMUIKitExtensions.h: Added.
1357         * bindings/objc/DOMUIKitExtensions.mm: Added.
1358         * bindings/objc/PublicDOMInterfaces.h:
1359         * bindings/scripts/CodeGeneratorJS.pm:
1360         (GenerateHeaderContentHeader):
1361         (GenerateImplementationContentHeader):
1362         (GenerateHeader):
1363         (GenerateImplementation):
1364         (GenerateCallbackImplementation):
1365         * bindings/scripts/CodeGeneratorObjC.pm:
1366         (ReadPublicInterfaces):
1367         (GetClassName):
1368         (IsCoreFoundationType):
1369         (GetObjCType):
1370         (AddIncludesForType):
1371         (GenerateHeader):
1372         (GenerateImplementation):
1373         (WriteData):
1374         * bindings/scripts/IDLAttributes.txt:
1375         * bindings/scripts/preprocessor.pm:
1376         (applyPreprocessor):
1377         * bridge/objc/objc_class.mm:
1378         (JSC::Bindings::ObjcClass::fieldNamed):
1379         * bridge/objc/objc_instance.mm:
1380         * config.h:
1381         * dom/Document.cpp:
1382         (WebCore::Document::addAutoSizingNode):
1383         * dom/Document.h:
1384         * dom/Document.idl:
1385         * dom/ios/TouchEvents.cpp: Added.
1386         * editing/ApplyStyleCommand.cpp:
1387         (WebCore::ApplyStyleCommand::applyBlockStyle):
1388         * editing/CompositeEditCommand.cpp:
1389         (WebCore::EditCommandComposition::unapply):
1390         (WebCore::CompositeEditCommand::apply):
1391         (WebCore::CompositeEditCommand::inputText):
1392         (WebCore::CompositeEditCommand::replaceTextInNodePreservingMarkers):
1393         (WebCore::CompositeEditCommand::moveParagraphs):
1394         * editing/CompositeEditCommand.h:
1395         * editing/DeleteButton.h:
1396         * editing/DeleteButtonController.cpp:
1397         (WebCore::DeleteButtonController::enable):
1398         (WebCore::DeleteButtonController::disable):
1399         * editing/DeleteSelectionCommand.cpp:
1400         (WebCore::DeleteSelectionCommand::doApply):
1401         * editing/DeleteSelectionCommand.h:
1402         * editing/EditAction.h:
1403         * editing/EditCommand.h:
1404         (WebCore::EditCommand::isInsertTextCommand):
1405         * editing/EditingStyle.cpp:
1406         * editing/Editor.cpp:
1407         (WebCore::ClearTextCommand::ClearTextCommand):
1408         (WebCore::ClearTextCommand::editingAction):
1409         (WebCore::ClearTextCommand::CreateAndApply):
1410         (WebCore::Editor::handleTextEvent):
1411         (WebCore::Editor::clearText):
1412         (WebCore::Editor::insertDictationPhrases):
1413         (WebCore::Editor::setDictationPhrasesAsChildOfElement):
1414         (WebCore::Editor::confirmMarkedText):
1415         (WebCore::Editor::setTextAsChildOfElement):
1416         (WebCore::Editor::notifyComponentsOnChangedSelection):
1417         (WebCore::Editor::ensureLastEditCommandHasCurrentSelectionIfOpenForMoreTyping):
1418         (WebCore::Editor::copy):
1419         (WebCore::Editor::setBaseWritingDirection):
1420         (WebCore::Editor::setComposition):
1421         (WebCore::Editor::showSpellingGuessPanel):
1422         (WebCore::Editor::markMisspellingsAfterTypingToWord):
1423         (WebCore::Editor::markMisspellingsOrBadGrammar):
1424         (WebCore::Editor::changeBackToReplacedString):
1425         (WebCore::Editor::updateMarkersForWordsAffectedByEditing):
1426         (WebCore::Editor::setIgnoreCompositionSelectionChange):
1427         (WebCore::Editor::changeSelectionAfterCommand):
1428         (WebCore::Editor::shouldChangeSelection):
1429         (WebCore::Editor::respondToChangedSelection):
1430         (WebCore::Editor::resolveTextCheckingTypeMask):
1431         * editing/Editor.h:
1432         * editing/EditorCommand.cpp:
1433         (WebCore::executeClearText):
1434         (WebCore::enabledCopy):
1435         (WebCore::enabledCut):
1436         (WebCore::enabledClearText):
1437         (WebCore::createCommandMap):
1438         * editing/FrameSelection.cpp:
1439         (WebCore::FrameSelection::FrameSelection):
1440         (WebCore::FrameSelection::setSelection):
1441         (WebCore::FrameSelection::modifyExtendingRight):
1442         (WebCore::FrameSelection::modifyExtendingForward):
1443         (WebCore::FrameSelection::modifyMovingRight):
1444         (WebCore::FrameSelection::modifyMovingForward):
1445         (WebCore::FrameSelection::modifyExtendingLeft):
1446         (WebCore::FrameSelection::modifyExtendingBackward):
1447         (WebCore::FrameSelection::modifyMovingLeft):
1448         (WebCore::FrameSelection::modifyMovingBackward):
1449         (WebCore::FrameSelection::setSelectedRange):
1450         (WebCore::FrameSelection::focusedOrActiveStateChanged):
1451         (WebCore::FrameSelection::updateAppearance):
1452         (WebCore::FrameSelection::shouldDeleteSelection):
1453         (WebCore::FrameSelection::revealSelection):
1454         (WebCore::FrameSelection::setSelectionFromNone):
1455         (WebCore::FrameSelection::shouldChangeSelection):
1456         (WebCore::FrameSelection::expandSelectionToElementContainingCaretSelection):
1457         (WebCore::FrameSelection::elementRangeContainingCaretSelection):
1458         (WebCore::FrameSelection::expandSelectionToWordContainingCaretSelection):
1459         (WebCore::FrameSelection::wordRangeContainingCaretSelection):
1460         (WebCore::FrameSelection::expandSelectionToStartOfWordContainingCaretSelection):
1461         (WebCore::FrameSelection::characterInRelationToCaretSelection):
1462         (WebCore::FrameSelection::characterBeforeCaretSelection):
1463         (WebCore::FrameSelection::characterAfterCaretSelection):
1464         (WebCore::FrameSelection::wordOffsetInRange):
1465         (WebCore::FrameSelection::spaceFollowsWordInRange):
1466         (WebCore::FrameSelection::selectionAtDocumentStart):
1467         (WebCore::FrameSelection::selectionAtSentenceStart):
1468         (WebCore::FrameSelection::selectionAtWordStart):
1469         (WebCore::FrameSelection::rangeByMovingCurrentSelection):
1470         (WebCore::FrameSelection::rangeByExtendingCurrentSelection):
1471         (WebCore::FrameSelection::selectRangeOnElement):
1472         (WebCore::FrameSelection::wordSelectionContainingCaretSelection):
1473         (WebCore::FrameSelection::actualSelectionAtSentenceStart):
1474         (WebCore::FrameSelection::rangeByAlteringCurrentSelection):
1475         (WebCore::FrameSelection::clearCurrentSelection):
1476         (WebCore::FrameSelection::setCaretBlinks):
1477         (WebCore::FrameSelection::setCaretColor):
1478         * editing/FrameSelection.h:
1479         (WebCore::FrameSelection::suppressCloseTyping):
1480         (WebCore::FrameSelection::restoreCloseTyping):
1481         (WebCore::FrameSelection::setUpdateAppearanceEnabled):
1482         (WebCore::FrameSelection::suppressScrolling):
1483         (WebCore::FrameSelection::restoreScrolling):
1484         * editing/InsertIntoTextNodeCommand.cpp:
1485         (WebCore::InsertIntoTextNodeCommand::doReapply):
1486         * editing/InsertIntoTextNodeCommand.h:
1487         * editing/InsertTextCommand.h:
1488         * editing/ReplaceSelectionCommand.cpp:
1489         (WebCore::ReplaceSelectionCommand::doApply):
1490         * editing/TextAffinity.h:
1491         * editing/TextCheckingHelper.cpp:
1492         * editing/TextGranularity.h:
1493         * editing/TextIterator.cpp:
1494         (WebCore::isRendererReplacedElement):
1495         * editing/TypingCommand.cpp:
1496         (WebCore::TypingCommand::ensureLastEditCommandHasCurrentSelectionIfOpenForMoreTyping):
1497         (WebCore::TypingCommand::markMisspellingsAfterTyping):
1498         (WebCore::TypingCommand::deleteKeyPressed):
1499         (WebCore::TypingCommand::forwardDeleteKeyPressed):
1500         (WebCore::FriendlyEditCommand::setEndingSelection):
1501         (WebCore::TypingCommand::setEndingSelectionOnLastInsertCommand):
1502         * editing/TypingCommand.h:
1503         * editing/VisiblePosition.h:
1504         (WebCore::operator<):
1505         (WebCore::operator>):
1506         (WebCore::operator<=):
1507         (WebCore::operator>=):
1508         * editing/VisibleSelection.cpp:
1509         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity):
1510         (WebCore::VisibleSelection::adjustSelectionToAvoidCrossingEditingBoundaries):
1511         * editing/VisibleUnits.cpp:
1512         (WebCore::previousBoundary):
1513         (WebCore::nextBoundary):
1514         (WebCore::startOfDocument):
1515         (WebCore::endOfDocument):
1516         (WebCore::directionIsDownstream):
1517         (WebCore::atBoundaryOfGranularity):
1518         (WebCore::withinTextUnitOfGranularity):
1519         (WebCore::nextCharacterBoundaryInDirection):
1520         (WebCore::nextWordBoundaryInDirection):
1521         (WebCore::nextSentenceBoundaryInDirection):
1522         (WebCore::nextLineBoundaryInDirection):
1523         (WebCore::nextParagraphBoundaryInDirection):
1524         (WebCore::nextDocumentBoundaryInDirection):
1525         (WebCore::positionOfNextBoundaryOfGranularity):
1526         (WebCore::enclosingTextUnitOfGranularity):
1527         (WebCore::distanceBetweenPositions):
1528         (WebCore::wordRangeFromPosition):
1529         (WebCore::closestWordBoundaryForPosition):
1530         * editing/VisibleUnits.h:
1531         * editing/ios/DictationCommandIOS.cpp: Added.
1532         * editing/ios/DictationCommandIOS.h: Added.
1533         (WebCore::DictationCommandIOS::create):
1534         (WebCore::DictationCommandIOS::editingAction):
1535         * editing/mac/FrameSelectionMac.mm:
1536         (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
1537         * fileapi/AsyncFileStream.cpp:
1538         * generate-export-file: Added.
1539         * inspector/InspectorCounters.h:
1540         * inspector/InspectorFrontendHost.h:
1541         * make-export-file-generator:
1542         * plugins/PluginPackage.h:
1543         * plugins/PluginViewBase.h:
1544         (WebCore::PluginViewBase::willProvidePluginLayer):
1545         (WebCore::PluginViewBase::attachPluginLayer):
1546         (WebCore::PluginViewBase::detachPluginLayer):
1547         * style/StyleResolveForDocument.cpp:
1548         (WebCore::Style::resolveForDocument):
1549         * style/StyleResolveTree.cpp:
1550         (WebCore::Style::elementImplicitVisibility):
1551         * testing/Internals.cpp:
1552         (WebCore::Internals::getCurrentCursorInfo):
1553         (WebCore::Internals::isSelectPopupVisible):
1554         * workers/WorkerThread.cpp:
1555         (WebCore::WorkerThread::workerThread):
1556
1557 2014-01-10  Daniel Bates  <dabates@apple.com>
1558
1559         Fix the iOS build after <http://trac.webkit.org/changeset/161589>
1560         (https://bugs.webkit.org/show_bug.cgi?id=126654)
1561
1562         * platform/graphics/ios/MediaPlayerPrivateIOS.h:
1563         (WebCore::MediaPlayerPrivateIOS::engineDescription): Adding missing return keyword.
1564
1565 2014-01-10  Andrei Bucur  <abucur@adobe.com>
1566
1567         [CSS Regions] Remove unused CSSParser::parseFlowThread
1568         https://bugs.webkit.org/show_bug.cgi?id=126749
1569
1570         Reviewed by Antti Koivisto.
1571
1572         There are two versions of CSSParser::parseFlowThread. Remove the unused one:
1573         bool parseFlowThread(const String& flowName);
1574
1575         Tests: No tests, code cleanup.
1576
1577         * css/CSSParser.cpp:
1578         * css/CSSParser.h:
1579
1580 2014-01-10  Alex Christensen  <achristensen@webkit.org>
1581
1582         [WinCairo] Build fix after r161589.
1583         https://bugs.webkit.org/show_bug.cgi?id=126747
1584
1585         Reviewed by Anders Carlsson.
1586
1587         * platform/network/ResourceHandle.cpp:
1588         Include NotImplemented.h for all platforms.
1589
1590 2014-01-10  Anders Carlsson  <andersca@apple.com>
1591
1592         Convert some for loops over to range-based for
1593         https://bugs.webkit.org/show_bug.cgi?id=126752
1594
1595         Reviewed by Antti Koivisto.
1596
1597         * inspector/InspectorApplicationCacheAgent.cpp:
1598         (WebCore::InspectorApplicationCacheAgent::buildArrayForApplicationCacheResources):
1599         * loader/appcache/ApplicationCache.cpp:
1600         (WebCore::ApplicationCache::clearStorageID):
1601         * loader/appcache/ApplicationCacheGroup.cpp:
1602         (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
1603         (WebCore::ApplicationCacheGroup::clearStorageID):
1604         * loader/appcache/ApplicationCacheHost.cpp:
1605         (WebCore::ApplicationCacheHost::fillResourceList):
1606         * loader/appcache/ApplicationCacheResource.cpp:
1607         (WebCore::ApplicationCacheResource::estimatedSizeInStorage):
1608         * loader/appcache/ApplicationCacheStorage.cpp:
1609         (WebCore::ApplicationCacheStorage::cacheGroupForURL):
1610         * loader/archive/ArchiveFactory.cpp:
1611         (WebCore::ArchiveFactory::registerKnownArchiveMIMETypes):
1612         * page/animation/AnimationController.cpp:
1613         (WebCore::AnimationControllerPrivate::styleAvailable):
1614         (WebCore::AnimationControllerPrivate::startTimeResponse):
1615
1616 2014-01-10  Anders Carlsson  <andersca@apple.com>
1617
1618         Tighten up two functions in the inspector code
1619         https://bugs.webkit.org/show_bug.cgi?id=126751
1620
1621         Reviewed by Antti Koivisto.
1622
1623         * inspector/InspectorInstrumentation.cpp:
1624         (WebCore::InspectorInstrumentation::frameStartedLoadingImpl):
1625         (WebCore::InspectorInstrumentation::frameStoppedLoadingImpl):
1626         * inspector/InspectorInstrumentation.h:
1627         (WebCore::InspectorInstrumentation::frameStartedLoading):
1628         (WebCore::InspectorInstrumentation::frameStoppedLoading):
1629         * inspector/InspectorPageAgent.cpp:
1630         (WebCore::InspectorPageAgent::frameStartedLoading):
1631         (WebCore::InspectorPageAgent::frameStoppedLoading):
1632         * inspector/InspectorPageAgent.h:
1633
1634 2014-01-10  Antti Koivisto  <antti@apple.com>
1635
1636         Crash when mutating SVG text with transform
1637         https://bugs.webkit.org/show_bug.cgi?id=126744
1638
1639         Reviewed by Dirk Schulze.
1640
1641         Test: svg/custom/mutation-text-transform-crash.html
1642         
1643         Text-transform property triggers subtreeTextDidChange when an SVG text renderer is
1644         being added to the render tree. The function assumes the child is already fully in the tree
1645         but in this case we are still in middle of adding it.
1646
1647         * rendering/svg/RenderSVGText.cpp:
1648         (WebCore::RenderSVGText::subtreeTextDidChange):
1649         
1650             Bail out if the changed RenderSVGInlineText can't be found from m_layoutAttributes.
1651             This means that subtreeChildWasAdded hasn't been invoked yet for it and there is nothing
1652             to update. The required updates will happen in subtreeChildWasAdded.
1653
1654 2014-01-10  Frédéric Wang  <fred.wang@free.fr>
1655
1656         [SVG] Accept HTML and MathML namespaces as valid requiredExtensions
1657         https://bugs.webkit.org/show_bug.cgi?id=88188
1658
1659         Reviewed by Dirk Schulze.
1660
1661         When HTML and MathML are used as foreign objects of an SVG image, it is
1662         important for Web authors to be able to specify a fallback content for
1663         SVG-only readers or browsers without MathML support. We rely on the
1664         requiredExtensions for that purpose and we use the XHTML/MathML
1665         namespaces as suggested in SVG Tiny 1.2 and implemented in Gecko.
1666
1667         Tests: svg/custom/conditional-processing-1.svg
1668                svg/custom/conditional-processing-2.html
1669                svg/dom/SVGTests.html
1670
1671         * svg/SVGSwitchElement.cpp: Remove an incorrect FIXME comment and replace it with a reference to bug 74749.
1672         (WebCore::SVGSwitchElement::childShouldCreateRenderer):
1673         * svg/SVGTests.cpp: Check if the list of required extensions contains only the XHTML/MathML namespaces.
1674         (WebCore::SVGTests::hasExtension):
1675         (WebCore::SVGTests::isValid):
1676
1677 2014-01-10  Mihai Tica  <mitica@adobe.com>
1678
1679         Add support for blendmode to Core Animation layer.
1680         Patch by Rik Cabanier, Dean Jackson and Mihai Tica.
1681
1682         https://bugs.webkit.org/show_bug.cgi?id=99200
1683
1684         Reviewed by Dirk Schulze.
1685
1686         Tests: css3/compositing/blend-mode-layers.html
1687                css3/compositing/blend-mode-overflow.html
1688                css3/compositing/blend-mode-reflection.html
1689                css3/compositing/blend-mode-should-not-have-compositing-layer.html
1690                css3/compositing/blend-mode-simple.html
1691
1692         * WebCore.exp.in: export PlatformCALayer::setBlendMode for WebKit::PlatformCALayerRemote
1693         * WebCore.xcodeproj/project.pbxproj: Add PlatformCAFiltersMac.h
1694         * platform/graphics/GraphicsLayer.cpp: add blendMode member
1695         (WebCore::GraphicsLayer::GraphicsLayer):
1696         * platform/graphics/GraphicsLayer.h:
1697         (WebCore::GraphicsLayer::blendMode):
1698         (WebCore::GraphicsLayer::setBlendMode):
1699         * platform/graphics/ca/GraphicsLayerCA.cpp:
1700         (WebCore::GraphicsLayerCA::setBlendMode):
1701         (WebCore::GraphicsLayerCA::commitLayerChangesBeforeSublayers): add call to updateBlendMode()
1702         (WebCore::GraphicsLayerCA::updateBlendMode):
1703         * platform/graphics/ca/GraphicsLayerCA.h:
1704         * platform/graphics/ca/PlatformCAFilters.h:
1705         * platform/graphics/ca/PlatformCALayer.h:
1706         * platform/graphics/ca/mac/PlatformCAFiltersMac.h: Added.
1707         * platform/graphics/ca/mac/PlatformCAFiltersMac.mm:
1708         (PlatformCAFilters::setBlendingFiltersOnLayer): set a compositing CAFilter on CALayer
1709         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
1710         (PlatformCALayer::setBlendMode): call to PlatformCAFilters::setBlendingFiltersOnLayer
1711         * rendering/RenderLayerBacking.cpp:
1712         (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer):
1713         (WebCore::RenderLayerBacking::updateBlendMode):
1714         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
1715         (WebCore::RenderLayerBacking::setBlendMode):
1716         * rendering/RenderLayerBacking.h:
1717         * rendering/RenderLayerCompositor.cpp:
1718         (WebCore::CompositingState::CompositingState): add m_subtreeHasBlending member
1719         (WebCore::RenderLayerCompositor::computeCompositingRequirements): promote layer if subtree has blending
1720         (WebCore::RenderLayerCompositor::reasonsForCompositing):
1721         (WebCore::RenderLayerCompositor::logReasonsForCompositing): log blending reason
1722         (WebCore::RenderLayerCompositor::requiresCompositingForIndirectReason): add blending reason
1723         * rendering/RenderLayerCompositor.h:
1724
1725 2014-01-10  Andrei Bucur  <abucur@adobe.com>
1726
1727         [CSS Regions] Implement visual overflow computation for inline elements
1728         https://bugs.webkit.org/show_bug.cgi?id=125291
1729
1730         Reviewed by David Hyatt.
1731
1732         The patch implements visual overflow computation for inline elements per region. The algorithm
1733         uses the container region of each root line box to determine the lines in a region generated by
1734         a RenderInline. The overflow of a RenderInline inside a region is the smallest rectangle that fits
1735         all the line boxes belonging to that region.
1736
1737         The patch also correctly flips for writing mode the overflow of a renderer before clipping with it.
1738
1739         Tests: fast/regions/overflow-in-variable-width-regions-inline-bt.html
1740                fast/regions/overflow-in-variable-width-regions-inline-continuation.html
1741                fast/regions/overflow-in-variable-width-regions-inline-lr.html
1742                fast/regions/overflow-in-variable-width-regions-inline-rl.html
1743                fast/regions/overflow-in-variable-width-regions-inline.html
1744
1745         * rendering/RenderFlowThread.cpp:
1746         (WebCore::RenderFlowThread::objectShouldPaintInFlowRegion):
1747         * rendering/RenderInline.cpp:
1748         (WebCore::RenderInline::updateAlwaysCreateLineBoxes): Always create line boxes for RenderInline
1749         (WebCore::RenderInline::linesVisualOverflowBoundingBoxInRegion):
1750         * rendering/RenderInline.h:
1751         * rendering/RenderLayer.cpp:
1752         (WebCore::RenderLayer::calculateClipRects):
1753         * rendering/RenderRegion.cpp:
1754         (WebCore::RenderRegion::visualOverflowRectForBox):
1755         (WebCore::RenderRegion::visualOverflowRectForBoxForPropagation):
1756         * rendering/RenderRegion.h:
1757
1758 2014-01-09  Jer Noble  <jer.noble@apple.com>
1759
1760         [Mac] .mp3 media document controls missing their background
1761         https://bugs.webkit.org/show_bug.cgi?id=126683
1762
1763         Reviewed by Eric Carlson.
1764
1765         Test: media/media-document-audio-controls-visible.html
1766
1767         <video> elements in a media document are created with an intrinsic size of 300x1,
1768         with the expectation that either the size will be updated if the media has a video
1769         track, or the controls will visibly overflow if the media is audio-only. Since the
1770         shadow root is a flex-box, the panel was being collapsed to 1px high, so give the panel
1771         a minimum height to prevent that. Also, disable "fading out" the controls in a
1772         media document for an audio-only file by adding a "no-video" class to the panel
1773         and adding a media document-only rule to force the controls to always be visible.
1774
1775         * Modules/mediacontrols/mediaControlsApple.css:
1776         (video:-webkit-full-page-media::-webkit-media-controls-panel.no-video):
1777         (audio::-webkit-media-controls-panel):
1778         * Modules/mediacontrols/mediaControlsApple.js:
1779         (Controller): Call updateHasVideo().
1780         (Controller.prototype.addVideoListeners): Add video track listeners.
1781         (Controller.prototype.removeVideoListeners): Remove same.
1782         (Controller.prototype.updateHasVideo): Add a 'no-video' class to the panel if
1783             the video element has no video tracks.
1784
1785 2014-01-09  Anders Carlsson  <andersca@apple.com>
1786
1787         Clean up ProgressTracker a little
1788         https://bugs.webkit.org/show_bug.cgi?id=126738
1789
1790         Reviewed by Dan Bernstein.
1791
1792         Use Frame& where the frame can never be null, avoid an extra hash lookup and
1793         switch the m_progressItems map over to std::unique_ptr.
1794
1795         * inspector/InspectorInstrumentation.h:
1796         (WebCore::InspectorInstrumentation::frameStartedLoading):
1797         * loader/FrameLoader.cpp:
1798         (WebCore::FrameLoader::FrameProgressTracker::~FrameProgressTracker):
1799         (WebCore::FrameLoader::FrameProgressTracker::progressStarted):
1800         (WebCore::FrameLoader::FrameProgressTracker::progressCompleted):
1801         * loader/ProgressTracker.cpp:
1802         (WebCore::ProgressTracker::progressStarted):
1803         (WebCore::ProgressTracker::progressCompleted):
1804         (WebCore::ProgressTracker::incrementProgress):
1805         * loader/ProgressTracker.h:
1806         * loader/ResourceLoadNotifier.cpp:
1807         (WebCore::ResourceLoadNotifier::didReceiveData):
1808
1809 2014-01-09  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
1810
1811         Fix a build break on EFL debug build
1812         https://bugs.webkit.org/show_bug.cgi?id=126735
1813
1814         Reviewed by Anders Carlsson.
1815
1816         No new tests, just build fix.
1817
1818         * platform/ThreadTimers.cpp:
1819         (WebCore::ThreadTimers::sharedTimerFiredInternal):  Add parentheses.
1820
1821 2014-01-09  Anders Carlsson  <andersca@apple.com>
1822
1823         Remove unused FrameLoader member functions
1824         https://bugs.webkit.org/show_bug.cgi?id=126734
1825
1826         Reviewed by Andreas Kling.
1827
1828         * loader/FrameLoader.cpp:
1829         * loader/FrameLoader.h:
1830
1831 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
1832
1833         Unreviewed Windows build fix for r161563.
1834
1835         Remove stale forward declaration causing namespace ambiguity
1836         later on in a Windows AllInOne file that picked it up. Also
1837         remove a few stale functions that are not used and accidentally
1838         got added back in when the file changed names.
1839
1840         * bindings/js/ScriptGlobalObject.h:
1841
1842 2014-01-09  Dean Jackson  <dino@apple.com>
1843
1844         [WebGL] Expose texture_float_linear and texture_half_float to getSupportedExtensions
1845         https://bugs.webkit.org/show_bug.cgi?id=126732
1846
1847         Reviewed by Tim Horton.
1848
1849         When I added support for these two extensions, I forgot to add their
1850         names to the list in getSupportedExtensions.
1851
1852         Covered by the Khronos test: conformance/extensions/get-extension.html
1853
1854         * html/canvas/WebGLRenderingContext.cpp:
1855         (WebCore::WebGLRenderingContext::getSupportedExtensions): Add OES_texture_float_linear
1856         and OES_texture_half_float if the WebGL context supports them.
1857
1858 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
1859
1860         Revert r161611, incorrect fix, will fix better.
1861
1862         * bindings/js/ScriptGlobalObject.h:
1863
1864 2014-01-09  Jer Noble  <jer.noble@apple.com>
1865
1866         [Mac] Scrubbing performance of HD content with software decoding is poor.
1867         https://bugs.webkit.org/show_bug.cgi?id=126705
1868
1869         Reviewed by Eric Carlson.
1870
1871         Instead of issuing a new seek before the previous one completes, wait until that seek's
1872         completion handler is called, and then issue the new seek. This has the added benefit of
1873         coalescing multiple incoming seeks so that only the last one is acted upon.
1874
1875         Save the parameters passed into seekToTime and bind them together in a std::function
1876         to be replayed once the in-flight seek completes. To handle the case where a completion
1877         handler fires after the media player is destroyed, add a weakPtrFactory and pass a
1878         WeakPtr into the completion handler.
1879         
1880         Clean up some ivars which are no longer necessary: remove m_seekCount and m_seekTime.
1881
1882         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
1883         (WebCore::MediaPlayerPrivateAVFoundation::MediaPlayerPrivateAVFoundation): Initialize the
1884             WeakPtrFactory.
1885         (WebCore::MediaPlayerPrivateAVFoundation::seekWithTolerance):
1886         (WebCore::MediaPlayerPrivateAVFoundation::seeking): m_seekTime -> m_seeking.
1887         (WebCore::MediaPlayerPrivateAVFoundation::seekCompleted):
1888         * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
1889         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
1890         (WebCore::MediaPlayerPrivateAVFoundationObjC::createWeakPtr):
1891         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
1892         (WebCore::MediaPlayerPrivateAVFoundationObjC::MediaPlayerPrivateAVFoundationObjC):
1893         (WebCore::MediaPlayerPrivateAVFoundationObjC::seekToTime):
1894         (WebCore::MediaPlayerPrivateAVFoundationObjC::finishSeek):
1895
1896 2014-01-08  Jer Noble  <jer.noble@apple.com>
1897
1898         [MSE][Mac] Report the intrinsic size of the media element
1899         https://bugs.webkit.org/show_bug.cgi?id=125156
1900
1901         Reviewed by Eric Carlson.
1902
1903         * WebCore.xcodeproj/project.pbxproj:
1904         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h:
1905         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm:
1906         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::naturalSize): Pass to MediaSourcePrivateAVFObjC.
1907         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::sizeChanged): Added; Pass to MediaPlayer.
1908         * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h:
1909         * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm:
1910         (WebCore::MediaSourcePrivateAVFObjC::naturalSize): Return the union of the naturalSizes of all active buffers.
1911         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h:
1912         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm:
1913         (WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset): Notify the media player that the size changed.
1914         (WebCore::SourceBufferPrivateAVFObjC::naturalSize): Return the size of the selected video track.
1915         * platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h:
1916         * platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.mm: Renamed from Source/WebCore/platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.cpp.
1917         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::assetTrack): Made const.
1918         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::naturalSize): Return the size of the AVAssetTrack.
1919
1920 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
1921
1922         Unreviewed Windows build fix for r161563.
1923
1924         Remove stale forward declaration causing namespace ambiguity
1925         later on in a Windows AllInOne file that picked it up.
1926
1927         * bindings/js/ScriptGlobalObject.h:
1928
1929 2014-01-09  Simon Fraser  <simon.fraser@apple.com>
1930
1931         Enable async scrolling for iOS
1932         https://bugs.webkit.org/show_bug.cgi?id=126730
1933
1934         Reviewed by Tim Horton.
1935
1936         Turn on ENABLE_ASYNC_SCROLLING for iOS.
1937         
1938         Disable rubber-banding and scrollbar-related Mac code for PLATFORM(IOS),
1939         provide stubs for scrolling nodes and scrolling state nodes, and an
1940         iOS scrolling tree, and scrolling coordinator.
1941         
1942         Move crollingCoordinator::create() into the platform implementation file.
1943
1944         * page/scrolling/ScrollingCoordinator.cpp:
1945         (WebCore::ScrollingCoordinator::create):
1946         * page/scrolling/ScrollingStateScrollingNode.cpp:
1947         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
1948         (WebCore::ScrollingStateScrollingNode::setScrollbarPaintersFromScrollbars):
1949         * page/scrolling/ScrollingStateScrollingNode.h:
1950         * page/scrolling/ScrollingTree.h:
1951         (WebCore::ScrollingTree::isScrollingTreeIOS):
1952         * page/scrolling/ThreadedScrollingTree.h:
1953         * page/scrolling/ios/ScrollingCoordinatorIOS.h: Copied from Source/WebKit2/UIProcess/Scrolling/RemoteScrollingTree.h.
1954         * page/scrolling/ios/ScrollingCoordinatorIOS.mm: Copied from Source/WebCore/page/scrolling/mac/ScrollingCoordinatorMac.mm.
1955         (WebCore::ScrollingCoordinator::create):
1956         (WebCore::ScrollingCoordinatorIOS::ScrollingCoordinatorIOS):
1957         (WebCore::ScrollingCoordinatorIOS::~ScrollingCoordinatorIOS):
1958         (WebCore::ScrollingCoordinatorIOS::pageDestroyed):
1959         (WebCore::ScrollingCoordinatorIOS::commitTreeStateIfNeeded):
1960         (WebCore::ScrollingCoordinatorIOS::scheduleTreeStateCommit):
1961         (WebCore::ScrollingCoordinatorIOS::scrollingStateTreeCommitterTimerFired):
1962         (WebCore::ScrollingCoordinatorIOS::commitTreeState):
1963         (WebCore::ScrollingCoordinatorIOS::createScrollingTreeNode):
1964         * page/scrolling/ios/ScrollingTreeIOS.cpp: Added.
1965         (WebCore::ScrollingTreeIOS::create):
1966         (WebCore::ScrollingTreeIOS::ScrollingTreeIOS):
1967         (WebCore::ScrollingTreeIOS::~ScrollingTreeIOS):
1968         (WebCore::derefScrollingCoordinator):
1969         (WebCore::ScrollingTreeIOS::invalidate):
1970         (WebCore::ScrollingTreeIOS::commitNewTreeState):
1971         (WebCore::ScrollingTreeIOS::updateMainFrameScrollPosition):
1972         (WebCore::ScrollingTreeIOS::createNode):
1973         * page/scrolling/ios/ScrollingTreeIOS.h: Copied from Source/WebCore/page/scrolling/ThreadedScrollingTree.h.
1974         * page/scrolling/ios/ScrollingTreeScrollingNodeIOS.h: Added.
1975         * page/scrolling/ios/ScrollingTreeScrollingNodeIOS.mm: Added.
1976         (WebCore::ScrollingTreeScrollingNodeIOS::create):
1977         (WebCore::ScrollingTreeScrollingNodeIOS::ScrollingTreeScrollingNodeIOS):
1978         (WebCore::ScrollingTreeScrollingNodeIOS::~ScrollingTreeScrollingNodeIOS):
1979         (WebCore::ScrollingTreeScrollingNodeIOS::updateBeforeChildren):
1980         (WebCore::ScrollingTreeScrollingNodeIOS::updateAfterChildren):
1981         (WebCore::ScrollingTreeScrollingNodeIOS::scrollPosition):
1982         (WebCore::ScrollingTreeScrollingNodeIOS::setScrollPosition):
1983         (WebCore::ScrollingTreeScrollingNodeIOS::setScrollPositionWithoutContentEdgeConstraints):
1984         (WebCore::ScrollingTreeScrollingNodeIOS::setScrollLayerPosition):
1985         (WebCore::ScrollingTreeScrollingNodeIOS::minimumScrollPosition):
1986         (WebCore::ScrollingTreeScrollingNodeIOS::maximumScrollPosition):
1987         (WebCore::ScrollingTreeScrollingNodeIOS::scrollBy):
1988         (WebCore::ScrollingTreeScrollingNodeIOS::scrollByWithoutContentEdgeConstraints):
1989         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1990         (WebCore::ScrollingCoordinator::create):
1991         * page/scrolling/mac/ScrollingTreeFixedNode.mm:
1992         * page/scrolling/mac/ScrollingTreeStickyNode.mm:
1993
1994 2014-01-09  Myles C. Maxfield  <mmaxfield@apple.com>
1995
1996         text-decoration-skip: ink does not work with line wraps
1997         https://bugs.webkit.org/show_bug.cgi?id=126729
1998
1999         Reviewed by Simon Fraser.
2000
2001         InlineTextBox's m_start and m_length fields are offsets into the renderer's string,
2002         not the generated TextRun. Because of this distinction, when multiple InlineTextBoxes
2003         were constructed for the same element, all the subsequent elements would use incorrect
2004         indices and therefore not have skipping decorations.
2005
2006         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html
2007
2008         * platform/graphics/Font.h:
2009         * platform/graphics/mac/FontMac.mm:
2010         (WebCore::Font::dashesForIntersectionsWithRect):
2011         * rendering/InlineTextBox.cpp:
2012         (WebCore::drawSkipInkUnderline):
2013         (WebCore::InlineTextBox::paintDecoration):
2014         * rendering/TextPainter.cpp:
2015         (WebCore::TextPainter::dashesForIntersectionsWithRect):
2016         * rendering/TextPainter.h:
2017
2018 2014-01-09  Benjamin Poulain  <bpoulain@apple.com>
2019
2020         Remove remaining blackberry files I could find in WebCore
2021         https://bugs.webkit.org/show_bug.cgi?id=126715
2022
2023         Reviewed by Anders Carlsson.
2024
2025         * PlatformBlackBerry.cmake: Removed.
2026         * Resources/blackberry: Removed.
2027         * css/mediaControlsBlackBerry.css: Removed.
2028         * css/mediaControlsBlackBerryFullscreen.css: Removed.
2029         * css/themeBlackBerry.css: Removed.
2030         * editing/blackberry: Removed.
2031         * history/blackberry: Removed.
2032         * html/shadow/MediaControlsBlackBerry.cpp: Removed.
2033         * html/shadow/MediaControlsBlackBerry.h: Removed.
2034         * page/blackberry: Removed.
2035         * page/scrolling/blackberry: Removed.
2036         * plugins/blackberry: Removed.
2037
2038 2014-01-09  Brent Fulgham  <bfulgham@apple.com>
2039
2040         [WebGL] Return filtered results for getProgramParameter for ACTIVE_ATTRIBUTES and ACTIVE_UNIFORMS
2041         https://bugs.webkit.org/show_bug.cgi?id=126718
2042         <rdar://problem/15202048>
2043
2044         Reviewed by Dean Jackson.
2045
2046         Covered by webgl/conformance/ogles/GL/biuDepthRange/biuDepthRange_001_to_002.html and
2047         webgl/conformance/ogles/GL/gl_FragCoord/gl_FragCoord_001_to_003.html.
2048
2049         * html/canvas/WebGLRenderingContext.cpp:
2050         (WebCore::WebGLRenderingContext::getActiveAttrib): Added loging.
2051         (WebCore::WebGLRenderingContext::getActiveUniform): Added logging.
2052         (WebCore::WebGLRenderingContext::getAttribLocation): Drive-by-fix. Return
2053         -1 on link failure (an invalid location) rather than 0 (a valid
2054         location) when link fails.
2055         (WebCore::WebGLRenderingContext::getProgramParameter): Use new
2056         method to return filtered count.
2057         (WebCore::WebGLRenderingContext::getUniformLocation): Use nullptr
2058         rather than returning 0.
2059         * platform/graphics/GraphicsContext3D.h:
2060         (WebCore::GraphicsContext3D::ActiveShaderSymbolCounts::ActiveShaderSymbolCounts):
2061         (WebCore::GraphicsContext3D::ActiveShaderSymbolCounts::countForType):
2062         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
2063         (WebCore::GraphicsContext3D::precisionsMatch): Drive-by-fix. Don't
2064         copy giant objects to read a single value.
2065         (WebCore::GraphicsContext3D::compileShader): Release filtered count
2066         when we change shader source code.
2067         (WebCore::GraphicsContext3D::getActiveAttribImpl): Renamed from getActiveAttrib.
2068         (WebCore::GraphicsContext3D::getActiveAttrib): Maps filtered indices to
2069         real OpenGL indices.
2070         (WebCore::GraphicsContext3D::getActiveUniformImpl): Renamed from getActiveUniform.
2071         (WebCore::GraphicsContext3D::getActiveUniform): Maps filtered indices to
2072         real OpenGL indices.
2073         (WebCore::GraphicsContext3D::originalSymbolName): Use C++11 loop.
2074         (WebCore::GraphicsContext3D::getAttribLocation): Added logging.
2075         (WebCore::GraphicsContext3D::getNonBuiltinActiveSymbolCount): Added.
2076         (WebCore::GraphicsContext3D::getShaderiv): Const correctness.
2077         (WebCore::GraphicsContext3D::getShaderInfoLog): Ditto.
2078         (WebCore::GraphicsContext3D::getShaderSource): Ditto.
2079
2080 2014-01-09  Zoltan Horvath  <zoltan@webkit.org>
2081
2082         [CSS Shapes] First line gets incorrectly adjusted in shape-inside due to rounding
2083         https://bugs.webkit.org/show_bug.cgi?id=126601
2084
2085         Reviewed by Bem Jones-Bey.
2086
2087         In order to get consistent results of the first fit position of the content in shapes,
2088         firstIncludedIntervalLogicalTop should take a FloatSize rather than LayoutSize for
2089         minLogicalIntervalSize, because LayoutSize clamps the float value to int, when subpixel-layout
2090         is disabled, thus firstIncludedIntervalLogicalTop could end up calculating with an unprecize
2091         value. This change modifies firstIncludedIntervalLogicalTop to take FloatSize consistently.
2092
2093         Test: fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit.html
2094
2095         * rendering/shapes/BoxShape.cpp:
2096         (WebCore::BoxShape::firstIncludedIntervalLogicalTop):
2097         * rendering/shapes/BoxShape.h:
2098         * rendering/shapes/PolygonShape.cpp:
2099         (WebCore::PolygonShape::firstIncludedIntervalLogicalTop):
2100         * rendering/shapes/PolygonShape.h:
2101         * rendering/shapes/RasterShape.cpp:
2102         (WebCore::RasterShape::firstIncludedIntervalLogicalTop):
2103         * rendering/shapes/RasterShape.h:
2104         * rendering/shapes/RectangleShape.cpp:
2105         (WebCore::RectangleShape::firstIncludedIntervalLogicalTop):
2106         * rendering/shapes/RectangleShape.h:
2107         * rendering/shapes/Shape.h:
2108         * rendering/shapes/ShapeInsideInfo.cpp:
2109         (WebCore::ShapeInsideInfo::adjustLogicalLineTop):
2110         (WebCore::ShapeInsideInfo::computeFirstFitPositionForFloat):
2111
2112 2014-01-09  Andy Estes  <aestes@apple.com>
2113
2114         [iOS] Upstream WAK
2115         https://bugs.webkit.org/show_bug.cgi?id=126724
2116
2117         Reviewed by David Kilzer.
2118
2119         * Configurations/WebCore.xcconfig: Excluded new iOS-specific Private
2120         headers on the Mac build.
2121         * WebCore.xcodeproj/project.pbxproj: Added new files to the project.
2122         * platform/ios/wak/WAKAppKitStubs.h: Added.
2123         * platform/ios/wak/WAKAppKitStubs.m: Added.
2124         * platform/ios/wak/WAKClipView.h: Added.
2125         * platform/ios/wak/WAKClipView.m: Added.
2126         * platform/ios/wak/WAKResponder.h: Added.
2127         * platform/ios/wak/WAKResponder.m: Added.
2128         * platform/ios/wak/WAKScrollView.h: Added.
2129         * platform/ios/wak/WAKScrollView.mm: Added.
2130         * platform/ios/wak/WAKView.h: Added.
2131         * platform/ios/wak/WAKView.mm: Added.
2132         * platform/ios/wak/WAKViewPrivate.h: Added.
2133         * platform/ios/wak/WAKWindow.h: Added.
2134         * platform/ios/wak/WAKWindow.mm: Added.
2135         * platform/ios/wak/WKContentObservation.cpp: Added.
2136         * platform/ios/wak/WKContentObservation.h: Added.
2137         * platform/ios/wak/WKGraphics.h: Added.
2138         * platform/ios/wak/WKGraphics.mm: Added.
2139         * platform/ios/wak/WKTypes.h: Added.
2140         * platform/ios/wak/WKUtilities.c: Added.
2141         * platform/ios/wak/WKUtilities.h: Added.
2142         * platform/ios/wak/WKView.h: Added.
2143         * platform/ios/wak/WKView.mm: Added.
2144         * platform/ios/wak/WKViewPrivate.h: Added.
2145         * platform/ios/wak/WebCoreThread.h: Added.
2146         * platform/ios/wak/WebCoreThread.mm: Added.
2147         * platform/ios/wak/WebCoreThreadInternal.h: Added.
2148         * platform/ios/wak/WebCoreThreadMessage.h: Added.
2149         * platform/ios/wak/WebCoreThreadRun.cpp: Added.
2150         * platform/ios/wak/WebCoreThreadRun.h: Added.
2151         * platform/ios/wak/WebCoreThreadSafe.h: Added.
2152         * platform/ios/wak/WebCoreThreadSystemInterface.cpp: Added.
2153         * platform/ios/wak/WebCoreThreadSystemInterface.h: Added.
2154
2155 2014-01-09  Daniel Bates  <dabates@apple.com>
2156
2157         Another attempt to fix the Windows build following <http://trac.webkit.org/changeset/161589>
2158         (https://bugs.webkit.org/show_bug.cgi?id=126654)
2159
2160         * platform/network/cf/ResourceRequest.h: Always declare ResourceRequest::updateFromDelegatePreservingOldHTTPBody()
2161         instead of only declaring it when building without CFNetwork.
2162
2163 2014-01-09  Daniel Bates  <dabates@apple.com>
2164
2165         Attempt to fix the Windows build following <http://trac.webkit.org/changeset/161589>
2166         (https://bugs.webkit.org/show_bug.cgi?id=126654)
2167
2168         For some reason, the Windows build is unhappy that NeverDestroyed<FontCache> calls the private constructor
2169         FontCache::FontCache() despite being a friend class of FontCache. Use DEFINE_STATIC_LOCAL instead of
2170         NeverDestroyed<> for now. I'll look to investigate this issue offline.
2171
2172         * platform/graphics/FontCache.cpp:
2173         (WebCore::fontCache):
2174         * platform/graphics/FontCache.h:
2175
2176 2014-01-09  Benjamin Poulain  <bpoulain@apple.com>
2177
2178         Remove blackberry from WebCore/platform
2179         https://bugs.webkit.org/show_bug.cgi?id=126715
2180
2181         Reviewed by Anders Carlsson.
2182
2183         * platform/blackberry: Removed.
2184         * platform/graphics/blackberry: Removed.
2185         * platform/graphics/filters/blackberry: Removed.
2186         * platform/image-decoders/blackberry: Removed.
2187         * platform/mediastream/blackberry: Removed.
2188         * platform/network/blackberry: Removed.
2189         * platform/text/blackberry: Removed.
2190
2191 2014-01-09  Alexey Proskuryakov  <ap@apple.com>
2192
2193         Fix a copy-paste mistake in an include guard.
2194
2195         Rubber-stamped by Sam Weinig.
2196
2197         * crypto/parameters/CryptoAlgorithmRsaKeyParamsWithHash.h:
2198
2199 2014-01-09  Anders Carlsson  <andersca@apple.com>
2200
2201         History::StateObjectType should be a strong enum
2202         https://bugs.webkit.org/show_bug.cgi?id=126725
2203
2204         Reviewed by Beth Dakin.
2205
2206         * bindings/js/JSHistoryCustom.cpp:
2207         (WebCore::JSHistory::pushState):
2208         (WebCore::JSHistory::replaceState):
2209         * loader/HistoryController.cpp:
2210         (WebCore::HistoryController::pushState):
2211         * page/History.cpp:
2212         (WebCore::History::stateObjectAdded):
2213         * page/History.h:
2214
2215 2014-01-09  Daniel Bates  <dabates@apple.com>
2216
2217         Attempt to fix the Mountain Lion Release (32-bit) build following <http://trac.webkit.org/changeset/161589>
2218         (https://bugs.webkit.org/show_bug.cgi?id=126654)
2219
2220         * platform/ios/WebEvent.h:
2221         * platform/ios/WebEvent.mm:
2222
2223 2014-01-09  Daniel Bates  <dabates@apple.com>
2224
2225         [iOS] Upstream WebCore/platform changes
2226         https://bugs.webkit.org/show_bug.cgi?id=126654
2227
2228         Rubber-stamped by David Kilzer.
2229
2230         * WebCore.exp.in:
2231         * WebCore.xcodeproj/project.pbxproj:
2232         * platform/ContentFilter.h:
2233         * platform/DragData.h:
2234         * platform/FileChooser.cpp:
2235         (WebCore::FileChooser::chooseMediaFiles):
2236         * platform/FileChooser.h:
2237         * platform/FileSystem.cpp:
2238         (WebCore::setMetadataURL):
2239         * platform/FileSystem.h:
2240         * platform/KillRingNone.cpp:
2241         * platform/LocalizedStrings.cpp:
2242         (WebCore::fileButtonChooseMediaFileLabel):
2243         (WebCore::fileButtonChooseMultipleMediaFilesLabel):
2244         (WebCore::fileButtonNoMediaFileSelectedLabel):
2245         (WebCore::fileButtonNoMediaFilesSelectedLabel):
2246         * platform/LocalizedStrings.h:
2247         * platform/Logging.h:
2248         * platform/MIMETypeRegistry.cpp:
2249         (WebCore::initializeSupportedImageMIMETypes):
2250         (WebCore::initializeSupportedNonImageMimeTypes):
2251         (WebCore::initializeUnsupportedTextMIMETypes):
2252         * platform/MemoryPressureHandler.cpp:
2253         (WebCore::MemoryPressureHandler::MemoryPressureHandler):
2254         * platform/MemoryPressureHandler.h:
2255         * platform/PlatformKeyboardEvent.h:
2256         (WebCore::PlatformKeyboardEvent::event):
2257         * platform/PlatformMouseEvent.h:
2258         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
2259         * platform/PlatformScreen.h:
2260         * platform/RuntimeApplicationChecks.cpp:
2261         (WebCore::mainBundleIsEqualTo):
2262         * platform/RuntimeApplicationChecksIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
2263         * platform/RuntimeApplicationChecksIOS.mm: Added.
2264         * platform/ScrollAnimator.cpp:
2265         (WebCore::ScrollAnimator::handleTouchEvent):
2266         * platform/ScrollAnimator.h:
2267         * platform/ScrollTypes.h:
2268         * platform/ScrollView.cpp:
2269         (WebCore::ScrollView::unscaledVisibleContentSize):
2270         (WebCore::ScrollView::visibleContentRect):
2271         * platform/ScrollView.h:
2272         (WebCore::ScrollView::actualScrollX):
2273         (WebCore::ScrollView::actualScrollY):
2274         * platform/ScrollableArea.cpp:
2275         (WebCore::ScrollableArea::handleTouchEvent):
2276         (WebCore::ScrollableArea::isPinnedInBothDirections):
2277         (WebCore::ScrollableArea::isPinnedHorizontallyInDirection):
2278         (WebCore::ScrollableArea::isPinnedVerticallyInDirection):
2279         * platform/ScrollableArea.h:
2280         (WebCore::ScrollableArea::isTouchScrollable):
2281         (WebCore::ScrollableArea::isOverflowScroll):
2282         (WebCore::ScrollableArea::didStartScroll):
2283         (WebCore::ScrollableArea::didEndScroll):
2284         (WebCore::ScrollableArea::didUpdateScroll):
2285         (WebCore::ScrollableArea::setIsUserScroll):
2286         (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMinimumPosition):
2287         (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMaximumPosition):
2288         (WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition):
2289         (WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition):
2290         * platform/Scrollbar.cpp:
2291         * platform/Scrollbar.h:
2292         * platform/SharedBuffer.cpp:
2293         (WebCore::SharedBuffer::SharedBuffer):
2294         (WebCore::SharedBuffer::createPurgeableBuffer):
2295         (WebCore::SharedBuffer::data):
2296         * platform/SharedBuffer.h:
2297         (WebCore::SharedBuffer::shouldUsePurgeableMemory):
2298         * platform/SuddenTermination.h:
2299         * platform/Supplementable.h:
2300         (WebCore::Supplementable::provideSupplement):
2301         (WebCore::Supplementable::removeSupplement):
2302         (WebCore::Supplementable::requireSupplement):
2303         * platform/SystemMemory.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
2304         * platform/ThreadCheck.h:
2305         * platform/ThreadGlobalData.cpp:
2306         (WebCore::ThreadGlobalData::ThreadGlobalData):
2307         (WebCore::ThreadGlobalData::destroy):
2308         (WebCore::ThreadGlobalData::setWebCoreThreadData):
2309         (WebCore::threadGlobalData):
2310         * platform/ThreadGlobalData.h:
2311         * platform/ThreadTimers.cpp:
2312         (WebCore::ThreadTimers::ThreadTimers):
2313         (WebCore::ThreadTimers::sharedTimerFiredInternal):
2314         * platform/Timer.cpp:
2315         (WebCore::TimerBase::start):
2316         (WebCore::TimerBase::stop):
2317         (WebCore::TimerBase::setNextFireTime):
2318         * platform/Timer.h:
2319         (WebCore::TimerBase::isActive):
2320         * platform/URL.cpp:
2321         (WebCore::enableURLSchemeCanonicalization):
2322         (WebCore::equal):
2323         (WebCore::URL::parse):
2324         * platform/URL.h:
2325         * platform/Widget.h:
2326         * platform/audio/ios/AudioDestinationIOS.cpp:
2327         * platform/audio/ios/AudioDestinationIOS.h:
2328         * platform/audio/ios/AudioFileReaderIOS.cpp: Copied from Source/WebCore/platform/audio/mac/AudioFileReaderMac.cpp.
2329         (WebCore::createAudioBufferList):
2330         (WebCore::destroyAudioBufferList):
2331         (WebCore::AudioFileReader::AudioFileReader):
2332         (WebCore::AudioFileReader::~AudioFileReader):
2333         (WebCore::AudioFileReader::readProc):
2334         (WebCore::AudioFileReader::getSizeProc):
2335         (WebCore::AudioFileReader::createBus):
2336         (WebCore::createBusFromAudioFile):
2337         (WebCore::createBusFromInMemoryAudioFile):
2338         * platform/audio/ios/AudioFileReaderIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
2339         (WebCore::AudioFileReader::data):
2340         (WebCore::AudioFileReader::dataSize):
2341         * platform/audio/ios/AudioSessionIOS.mm:
2342         (SOFT_LINK_POINTER):
2343         (-[WebAudioSessionHelper initWithCallback:WebCore::]):
2344         (-[WebAudioSessionHelper dealloc]):
2345         (-[WebAudioSessionHelper interruption:]):
2346         (WebCore::AudioSession::setCategory):
2347         * platform/audio/mac/AudioDestinationMac.cpp:
2348         * platform/audio/mac/AudioFileReaderMac.cpp:
2349         (WebCore::AudioFileReader::AudioFileReader):
2350         (WebCore::createBusFromAudioFile):
2351         (WebCore::createBusFromInMemoryAudioFile):
2352         * platform/audio/mac/AudioSessionMac.cpp:
2353         * platform/audio/mac/MediaSessionManagerMac.cpp:
2354         (MediaSessionManager::updateSessionState):
2355         * platform/cf/SharedBufferCF.cpp:
2356         (WebCore::SharedBuffer::SharedBuffer):
2357         * platform/cf/URLCF.cpp:
2358         * platform/cocoa/KeyEventCocoa.mm:
2359         (WebCore::windowsKeyCodeForCharCode):
2360         * platform/graphics/BitmapImage.cpp:
2361         (WebCore::BitmapImage::BitmapImage):
2362         (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
2363         (WebCore::BitmapImage::cacheFrame):
2364         (WebCore::BitmapImage::cacheFrameInfo):
2365         (WebCore::BitmapImage::updateSize):
2366         (WebCore::BitmapImage::originalSize):
2367         (WebCore::BitmapImage::originalSizeRespectingOrientation):
2368         (WebCore::BitmapImage::dataChanged):
2369         (WebCore::BitmapImage::ensureFrameInfoIsCached):
2370         (WebCore::BitmapImage::frameAtIndex):
2371         (WebCore::BitmapImage::frameIsCompleteAtIndex):
2372         (WebCore::BitmapImage::frameDurationAtIndex):
2373         (WebCore::BitmapImage::frameHasAlphaAtIndex):
2374         (WebCore::BitmapImage::frameOrientationAtIndex):
2375         (WebCore::BitmapImage::startAnimation):
2376         (WebCore::BitmapImage::internalAdvanceAnimation):
2377         * platform/graphics/BitmapImage.h:
2378         (WebCore::FrameData::FrameData):
2379         * platform/graphics/Color.cpp:
2380         (WebCore::Color::isDark):
2381         * platform/graphics/Color.h:
2382         * platform/graphics/DisplayRefreshMonitor.h:
2383         * platform/graphics/FloatPoint.h:
2384         * platform/graphics/FloatRect.h:
2385         * platform/graphics/FloatSize.h:
2386         * platform/graphics/Font.cpp:
2387         (WebCore::Font::drawText):
2388         (WebCore::Font::width):
2389         * platform/graphics/Font.h:
2390         * platform/graphics/FontCache.cpp:
2391         (initFontCacheLockOnce):
2392         (FontLocker::FontLocker):
2393         (FontLocker::~FontLocker):
2394         (WebCore::fontCache):
2395         (WebCore::FontCache::getCachedFontPlatformData):
2396         (WebCore::FontCache::getCachedFontData):
2397         (WebCore::FontCache::releaseFontData):
2398         (WebCore::FontCache::purgeInactiveFontDataIfNeeded):
2399         (WebCore::FontCache::purgeInactiveFontData):
2400         * platform/graphics/FontCache.h:
2401         * platform/graphics/FontFastPath.cpp:
2402         (WebCore::Font::drawSimpleText):
2403         (WebCore::Font::drawGlyphBuffer):
2404         * platform/graphics/FontGlyphs.h:
2405         * platform/graphics/FontPlatformData.cpp:
2406         (WebCore::FontPlatformData::FontPlatformData):
2407         * platform/graphics/FontPlatformData.h:
2408         (WebCore::FontPlatformData::font):
2409         (WebCore::FontPlatformData::roundsGlyphAdvances):
2410         (WebCore::FontPlatformData::hash):
2411         (WebCore::FontPlatformData::hashTableDeletedFontValue):
2412         * platform/graphics/GlyphPageTreeNode.cpp:
2413         (WebCore::GlyphPageTreeNode::initializePage):
2414         * platform/graphics/GraphicsContext.cpp:
2415         (WebCore::GraphicsContext::GraphicsContext):
2416         (WebCore::GraphicsContext::drawRaisedEllipse):
2417         (WebCore::GraphicsContext::drawText):
2418         (WebCore::GraphicsContext::drawBidiText):
2419         (WebCore::GraphicsContext::clipRoundedRect):
2420         (WebCore::GraphicsContext::emojiDrawingEnabled):
2421         (WebCore::GraphicsContext::setEmojiDrawingEnabled):
2422         * platform/graphics/GraphicsContext.h:
2423         (WebCore::GraphicsContextState::GraphicsContextState):
2424         * platform/graphics/GraphicsContext3D.h:
2425         * platform/graphics/GraphicsLayer.cpp:
2426         (WebCore::GraphicsLayer::willBeDestroyed):
2427         * platform/graphics/GraphicsLayer.h:
2428         (WebCore::GraphicsLayer::contentsLayerForMedia):
2429         (WebCore::GraphicsLayer::pixelAlignmentOffset):
2430         (WebCore::GraphicsLayer::hasFlattenedPerspectiveTransform):
2431         * platform/graphics/Icon.h:
2432         * platform/graphics/Image.cpp:
2433         (WebCore::Image::drawTiled):
2434         * platform/graphics/ImageSource.h:
2435         (WebCore::ImageSource::isSubsampled):
2436         * platform/graphics/IntPoint.h:
2437         * platform/graphics/IntRect.h:
2438         * platform/graphics/IntSize.h:
2439         * platform/graphics/MediaPlayer.cpp:
2440         (WebCore::installedMediaEngines):
2441         (WebCore::MediaPlayer::isCurrentPlaybackTargetWireless):
2442         (WebCore::MediaPlayer::showPlaybackTargetPicker):
2443         (WebCore::MediaPlayer::hasWirelessPlaybackTargets):
2444         (WebCore::MediaPlayer::wirelessVideoPlaybackDisabled):
2445         (WebCore::MediaPlayer::setWirelessVideoPlaybackDisabled):
2446         (WebCore::MediaPlayer::setHasPlaybackTargetAvailabilityListeners):
2447         (WebCore::MediaPlayer::currentPlaybackTargetIsWirelessChanged):
2448         (WebCore::MediaPlayer::playbackTargetAvailabilityChanged):
2449         (WebCore::MediaPlayer::attributeChanged):
2450         (WebCore::MediaPlayer::readyForPlayback):
2451         (WebCore::MediaPlayer::volumeChanged):
2452         * platform/graphics/MediaPlayer.h:
2453         (WebCore::MediaPlayerClient::mediaPlayerCurrentPlaybackTargetIsWirelessChanged):
2454         (WebCore::MediaPlayerClient::mediaPlayerPlaybackTargetAvailabilityChanged):
2455         * platform/graphics/MediaPlayerPrivate.h:
2456         (WebCore::MediaPlayerPrivateInterface::volume):
2457         (WebCore::MediaPlayerPrivateInterface::isCurrentPlaybackTargetWireless):
2458         (WebCore::MediaPlayerPrivateInterface::showPlaybackTargetPicker):
2459         (WebCore::MediaPlayerPrivateInterface::hasWirelessPlaybackTargets):
2460         (WebCore::MediaPlayerPrivateInterface::wirelessVideoPlaybackDisabled):
2461         (WebCore::MediaPlayerPrivateInterface::setWirelessVideoPlaybackDisabled):
2462         (WebCore::MediaPlayerPrivateInterface::setHasPlaybackTargetAvailabilityListeners):
2463         (WebCore::MediaPlayerPrivateInterface::attributeChanged):
2464         (WebCore::MediaPlayerPrivateInterface::readyForPlayback):
2465         * platform/graphics/SimpleFontData.cpp:
2466         (WebCore::SimpleFontData::SimpleFontData):
2467         * platform/graphics/SimpleFontData.h:
2468         * platform/graphics/StringTruncator.cpp:
2469         (WebCore::centerTruncateToBuffer):
2470         (WebCore::rightTruncateToBuffer):
2471         (WebCore::rightClipToCharacterBuffer):
2472         (WebCore::rightClipToWordBuffer):
2473         (WebCore::leftTruncateToBuffer):
2474         (WebCore::truncateString):
2475         (WebCore::StringTruncator::centerTruncate):
2476         (WebCore::StringTruncator::rightTruncate):
2477         (WebCore::StringTruncator::leftTruncate):
2478         (WebCore::StringTruncator::rightClipToCharacter):
2479         (WebCore::StringTruncator::rightClipToWord):
2480         * platform/graphics/StringTruncator.h:
2481         * platform/graphics/TextTrackRepresentation.cpp:
2482         * platform/graphics/WidthIterator.h:
2483         (WebCore::WidthIterator::supportsTypesettingFeatures):
2484         * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:
2485         (WebCore::AVTrackPrivateAVFObjCImpl::label):
2486         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2487         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded):
2488         (WebCore::wkAVAssetResolvedURL):
2489         * platform/graphics/blackberry/FontBlackBerry.cpp:
2490         (WebCore::Font::drawComplexText):
2491         * platform/graphics/ca/GraphicsLayerCA.cpp:
2492         (WebCore::supportsAcceleratedFilterAnimations):
2493         (WebCore::GraphicsLayerCA::setContentsToImage):
2494         (WebCore::GraphicsLayerCA::contentsLayerForMedia):
2495         (WebCore::GraphicsLayerCA::computeVisibleRect):
2496         (WebCore::GraphicsLayerCA::updateGeometry):
2497         (WebCore::GraphicsLayerCA::ensureStructuralLayer):
2498         (WebCore::GraphicsLayerCA::updateContentsRects):
2499         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
2500         (WebCore::GraphicsLayerCA::setupContentsLayer):
2501         (WebCore::GraphicsLayerCA::mediaLayerMustBeUpdatedOnMainThread):
2502         (WebCore::GraphicsLayerCA::computePixelAlignment):
2503         * platform/graphics/ca/GraphicsLayerCA.h:
2504         * platform/graphics/ca/PlatformCAFilters.h:
2505         * platform/graphics/ca/PlatformCALayer.h:
2506         * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
2507         (WebCore::currentRunLoop):
2508         (WebCore::LayerFlushScheduler::schedule):
2509         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2510         (-[WebAnimationDelegate animationDidStart:]):
2511         (PlatformCALayerMac::setContentsScale):
2512         (PlatformCALayer::isWebLayer):
2513         (PlatformCALayer::setBoundsOnMainThread):
2514         (PlatformCALayer::setPositionOnMainThread):
2515         (PlatformCALayer::setAnchorPointOnMainThread):
2516         (PlatformCALayer::setTileSize):
2517         * platform/graphics/ca/mac/TileController.mm:
2518         (WebCore::TileController::platformCALayerPaintContents):
2519         (WebCore::TileController::removeAllTiles):
2520         (WebCore::TileController::removeAllSecondaryTiles):
2521         (WebCore::TileController::removeTilesInCohort):
2522         (WebCore::TileController::revalidateTiles):
2523         (WebCore::TileController::createTileLayer):
2524         * platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:
2525         (WebCore::Font::drawComplexText):
2526         * platform/graphics/cg/BitmapImageCG.cpp:
2527         (WebCore::FrameData::clear):
2528         (WebCore::BitmapImage::BitmapImage):
2529         (WebCore::BitmapImage::checkForSolidColor):
2530         (WebCore::BitmapImage::draw):
2531         (WebCore::BitmapImage::copyUnscaledFrameAtIndex):
2532         * platform/graphics/cg/ColorCG.cpp:
2533         (WebCore::createCGColorWithDeviceWhite):
2534         (WebCore::createCGColorWithDeviceRGBA):
2535         (WebCore::Color::Color):
2536         * platform/graphics/cg/FloatPointCG.cpp:
2537         * platform/graphics/cg/FloatRectCG.cpp:
2538         * platform/graphics/cg/FloatSizeCG.cpp:
2539         * platform/graphics/cg/GradientCG.cpp:
2540         * platform/graphics/cg/GraphicsContextCG.cpp:
2541         (WebCore::sRGBColorSpaceRef):
2542         (WebCore::setStrokeAndFillColor):
2543         (WebCore::GraphicsContext::platformInit):
2544         * platform/graphics/cg/ImageBufferCG.cpp:
2545         (WebCore::createIOSurface):
2546         (WebCore::ImageBuffer::ImageBuffer):
2547         (WebCore::ImageBuffer::draw):
2548         (WebCore::jpegUTI):
2549         (WebCore::utiFromMIMEType):
2550         * platform/graphics/cg/ImageBufferDataCG.cpp:
2551         (WebCore::ImageBufferData::getData):
2552         (WebCore::ImageBufferData::putData):
2553         * platform/graphics/cg/ImageBufferDataCG.h:
2554         * platform/graphics/cg/ImageCG.cpp:
2555         (WebCore::drawPatternCallback):
2556         (WebCore::Image::drawPattern):
2557         * platform/graphics/cg/ImageSourceCG.cpp:
2558         (WebCore::ImageSource::ImageSource):
2559         (WebCore::imageSourceOptions):
2560         (WebCore::ImageSource::imageSourceOptions):
2561         (WebCore::ImageSource::frameSizeAtIndex):
2562         (WebCore::ImageSource::originalSize):
2563         (WebCore::ImageSource::createFrameAtIndex):
2564         * platform/graphics/cg/ImageSourceCGMac.mm:
2565         * platform/graphics/cg/IntPointCG.cpp:
2566         * platform/graphics/cg/IntRectCG.cpp:
2567         * platform/graphics/cg/IntSizeCG.cpp:
2568         * platform/graphics/cg/PDFDocumentImage.cpp:
2569         * platform/graphics/cg/PathCG.cpp:
2570         * platform/graphics/cg/PatternCG.cpp:
2571         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
2572         (WebCore::FontPlatformData::FontPlatformData):
2573         (WebCore::FontPlatformData::~FontPlatformData):
2574         (WebCore::FontPlatformData::platformDataInit):
2575         (WebCore::FontPlatformData::platformDataAssign):
2576         (WebCore::FontPlatformData::platformIsEqual):
2577         (WebCore::FontPlatformData::setFont):
2578         (WebCore::FontPlatformData::allowsLigatures):
2579         (WebCore::FontPlatformData::ctFont):
2580         * platform/graphics/ios/DisplayRefreshMonitorIOS.mm: Added.
2581         (WebCore::DisplayRefreshMonitor::~DisplayRefreshMonitor):
2582         (WebCore::DisplayRefreshMonitor::requestRefreshCallback):
2583         (WebCore::DisplayRefreshMonitor::displayLinkFired):
2584         * platform/graphics/ios/FontCacheIOS.mm: Added.
2585         * platform/graphics/ios/FontServicesIOS.h: Added.
2586         * platform/graphics/ios/FontServicesIOS.mm: Added.
2587         (WebCore::FontServicesIOS::FontServicesIOS):
2588         * platform/graphics/ios/GraphicsContext3DIOS.h: Added.
2589         * platform/graphics/ios/IconIOS.mm: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.cpp.
2590         * platform/graphics/ios/InbandTextTrackPrivateAVFIOS.h: Copied from Source/WebCore/platform/graphics/cg/ImageBufferDataCG.h.
2591         (WebCore::InbandTextTrackPrivateAVFIOS::create):
2592         (WebCore::InbandTextTrackPrivateAVFIOS::internalID):
2593         * platform/graphics/ios/InbandTextTrackPrivateAVFIOS.mm: Copied from Source/WebCore/platform/graphics/mac/IntRectMac.mm.
2594         (WebCore::InbandTextTrackPrivateAVFIOS::InbandTextTrackPrivateAVFIOS):
2595         (WebCore::InbandTextTrackPrivateAVFIOS::~InbandTextTrackPrivateAVFIOS):
2596         (WebCore::InbandTextTrackPrivateAVFIOS::kind):
2597         * platform/graphics/ios/MediaPlayerPrivateIOS.h: Added.
2598         * platform/graphics/ios/MediaPlayerPrivateIOS.mm: Added.
2599         * platform/graphics/ios/SimpleFontDataIOS.mm: Added.
2600         (WebCore::fontFamilyShouldNotBeUsedForArabic):
2601         (WebCore::fontHasVerticalGlyphs):
2602         (WebCore::SimpleFontData::platformInit):
2603         (WebCore::SimpleFontData::platformCharWidthInit):
2604         (WebCore::SimpleFontData::platformCreateScaledFontData):
2605         (WebCore::SimpleFontData::containsCharacters):
2606         (WebCore::SimpleFontData::determinePitch):
2607         (WebCore::SimpleFontData::platformWidthForGlyph):
2608         * platform/graphics/ios/TextTrackRepresentationIOS.h: Copied from Source/WebCore/platform/graphics/TextTrackRepresentation.cpp.
2609         * platform/graphics/ios/TextTrackRepresentationIOS.mm: Added.
2610         * platform/graphics/mac/ColorMac.h:
2611         * platform/graphics/mac/ComplexTextController.cpp:
2612         (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
2613         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
2614         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
2615         * platform/graphics/mac/FloatPointMac.mm:
2616         * platform/graphics/mac/FloatRectMac.mm:
2617         * platform/graphics/mac/FloatSizeMac.mm:
2618         * platform/graphics/mac/FontCacheMac.mm:
2619         * platform/graphics/mac/FontComplexTextMac.cpp:
2620         (WebCore::Font::drawComplexText):
2621         (WebCore::Font::fontDataForCombiningCharacterSequence):
2622         * platform/graphics/mac/FontCustomPlatformData.cpp:
2623         * platform/graphics/mac/FontMac.mm:
2624         (WebCore::showLetterpressedGlyphsWithAdvances):
2625         (WebCore::Font::drawGlyphs):
2626         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
2627         (WebCore::GlyphPage::fill):
2628         * platform/graphics/mac/GraphicsContext3DMac.mm:
2629         (WebCore::GraphicsContext3D::GraphicsContext3D):
2630         (WebCore::GraphicsContext3D::~GraphicsContext3D):
2631         (WebCore::GraphicsContext3D::setRenderbufferStorageFromDrawable):
2632         (WebCore::GraphicsContext3D::makeContextCurrent):
2633         (WebCore::GraphicsContext3D::endPaint):
2634         * platform/graphics/mac/GraphicsContextMac.mm:
2635         (WebCore::GraphicsContext::drawFocusRing):
2636         (WebCore::createDotPattern):
2637         (WebCore::GraphicsContext::drawLineForDocumentMarker):
2638         * platform/graphics/mac/IconMac.mm:
2639         * platform/graphics/mac/ImageMac.mm:
2640         (WebCore::BitmapImage::invalidatePlatformData):
2641         * platform/graphics/mac/IntPointMac.mm:
2642         * platform/graphics/mac/IntRectMac.mm:
2643         * platform/graphics/mac/IntSizeMac.mm:
2644         * platform/graphics/mac/MediaPlayerProxy.h:
2645         * platform/graphics/mac/SimpleFontDataCoreText.cpp:
2646         * platform/graphics/mac/SimpleFontDataMac.mm:
2647         * platform/graphics/mac/WebGLLayer.h:
2648         * platform/graphics/mac/WebGLLayer.mm:
2649         (-[WebGLLayer copyImageSnapshotWithColorSpace:]):
2650         (-[WebGLLayer display]):
2651         * platform/graphics/mac/WebLayer.mm:
2652         (WebCore::drawLayerContents):
2653         (-[WebSimpleLayer display]):
2654         (-[WebSimpleLayer drawInContext:]):
2655         * platform/graphics/mac/WebTiledLayer.mm:
2656         (+[WebTiledLayer shouldDrawOnMainThread]):
2657         (-[WebTiledLayer display]):
2658         (-[WebTiledLayer drawInContext:]):
2659         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
2660         (WebCore::Extensions3DOpenGL::blitFramebuffer):
2661         (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
2662         (WebCore::Extensions3DOpenGL::supportsExtension):
2663         (WebCore::Extensions3DOpenGL::drawBuffersEXT):
2664         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
2665         (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
2666         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2667         (WebCore::GraphicsContext3D::reshapeFBOs):
2668         (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary):
2669         (WebCore::GraphicsContext3D::renderbufferStorage):
2670         (WebCore::GraphicsContext3D::getIntegerv):
2671         (WebCore::GraphicsContext3D::texImage2D):
2672         (WebCore::GraphicsContext3D::depthRange):
2673         (WebCore::GraphicsContext3D::clearDepth):
2674         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
2675         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
2676         * platform/graphics/transforms/TransformationMatrix.cpp:
2677         (WebCore::TransformationMatrix::multiply):
2678         * platform/graphics/win/FontWin.cpp:
2679         (WebCore::Font::drawComplexText):
2680         * platform/graphics/wince/FontWinCE.cpp:
2681         (WebCore::Font::drawComplexText):
2682         * platform/ios/ContentFilterIOS.mm: Copied from Source/WebCore/platform/ContentFilter.h.
2683         * platform/ios/DeviceMotionClientIOS.h: Added.
2684         (WebCore::DeviceMotionClientIOS::create):
2685         * platform/ios/DeviceMotionClientIOS.mm: Added.
2686         * platform/ios/DeviceOrientationClientIOS.h: Added.
2687         (WebCore::DeviceOrientationClientIOS::create):
2688         * platform/ios/DeviceOrientationClientIOS.mm: Added.
2689         * platform/ios/KeyEventIOS.mm:
2690         * platform/ios/MIMETypeRegistryIOS.mm: Copied from Source/WebCore/platform/network/mac/CredentialStorageMac.mm.
2691         * platform/ios/MemoryPressureHandlerIOS.mm: Added.
2692         * platform/ios/PasteboardIOS.mm:
2693         (WebCore::Pasteboard::write):
2694         (WebCore::Pasteboard::resourceMIMEType):
2695         (WebCore::Pasteboard::writePlainText):
2696         (WebCore::Pasteboard::read):
2697         (WebCore::supportedImageTypes):
2698         (WebCore::Pasteboard::supportedPasteboardTypes):
2699         (WebCore::Pasteboard::hasData):
2700         (WebCore::Pasteboard::readString):
2701         * platform/ios/PlatformEventFactoryIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
2702         * platform/ios/PlatformEventFactoryIOS.mm: Added.
2703         * platform/ios/PlatformPasteboardIOS.mm:
2704         (WebCore::PlatformPasteboard::write):
2705         * platform/ios/PlatformScreenIOS.mm: Added.
2706         * platform/ios/PlatformSpeechSynthesizerIOS.mm: Added.
2707         * platform/ios/SSLKeyGeneratorIOS.cpp: Added.
2708         * platform/ios/ScrollAnimatorIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
2709         * platform/ios/ScrollAnimatorIOS.mm: Added.
2710         * platform/ios/ScrollViewIOS.mm: Added.
2711         * platform/ios/ScrollbarThemeIOS.h: Added.
2712         * platform/ios/ScrollbarThemeIOS.mm: Added.
2713         * platform/ios/SelectionRect.cpp: Added.
2714         * platform/ios/SelectionRect.h: Added.
2715         * platform/ios/SoundIOS.mm: Copied from Source/WebCore/platform/text/mac/CharsetData.h.
2716         * platform/ios/SystemMemoryIOS.cpp: Added.
2717         * platform/ios/ThemeIOS.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
2718         * platform/ios/ThemeIOS.mm: Copied from Source/WebCore/platform/KillRingNone.cpp.
2719         * platform/ios/TileCache.h: Added.
2720         (WebCore::TileCache::isSpeculativeTileCreationEnabled):
2721         * platform/ios/TileCache.mm: Added.
2722         * platform/ios/TileGrid.h: Added.
2723         * platform/ios/TileGrid.mm: Added.
2724         * platform/ios/TileGridTile.h: Copied from Source/WebCore/platform/ContentFilter.h.
2725         * platform/ios/TileGridTile.mm: Added.
2726         * platform/ios/TileLayer.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
2727         * platform/ios/TileLayer.mm: Added.
2728         * platform/ios/TileLayerPool.mm: Added.
2729         * platform/ios/WebCoreMotionManager.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
2730         * platform/ios/WebCoreMotionManager.mm: Added.
2731         * platform/ios/WebCoreSystemInterfaceIOS.h: Added.
2732         * platform/ios/WebCoreSystemInterfaceIOS.mm: Added.
2733         * platform/ios/WebEvent.h: Added.
2734         * platform/ios/WebEvent.mm: Added.
2735         * platform/ios/WidgetIOS.mm: Added.
2736         * platform/mac/DisplaySleepDisabler.cpp:
2737         (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
2738         (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):
2739         * platform/mac/DisplaySleepDisabler.h:
2740         * platform/mac/FileSystemMac.mm:
2741         * platform/mac/KillRingMac.mm:
2742         * platform/mac/MemoryPressureHandlerMac.mm:
2743         (WebCore::MemoryPressureHandler::install):
2744         (WebCore::MemoryPressureHandler::releaseMemory):
2745         * platform/mac/PlatformClockCM.mm:
2746         (PlatformClockCM::PlatformClockCM):
2747         * platform/mac/SoftLinking.h:
2748         * platform/mac/SystemVersionMac.mm:
2749         * platform/mac/WebCoreFullScreenPlaceholderView.h:
2750         * platform/mac/WebCoreFullScreenPlaceholderView.mm:
2751         * platform/mac/WebCoreFullScreenWarningView.h:
2752         * platform/mac/WebCoreFullScreenWarningView.mm:
2753         * platform/mac/WebCoreFullScreenWindow.h:
2754         * platform/mac/WebCoreFullScreenWindow.mm:
2755         * platform/mac/WebCoreNSCellExtras.h:
2756         * platform/mac/WebCoreNSCellExtras.m:
2757         * platform/mac/WebCoreSystemInterface.h:
2758         * platform/mac/WebFontCache.mm:
2759         (+[WebFontCache fontWithFamily:traits:size:]):
2760         * platform/network/BlobRegistry.cpp:
2761         * platform/network/BlobRegistryImpl.cpp:
2762         * platform/network/Credential.h:
2763         * platform/network/CredentialStorage.cpp:
2764         (WebCore::CredentialStorage::set):
2765         (WebCore::CredentialStorage::clearCredentials):
2766         * platform/network/CredentialStorage.h:
2767         * platform/network/NetworkStateNotifier.h:
2768         * platform/network/ResourceHandle.cpp:
2769         (WebCore::builtinResourceHandleConstructorMap):
2770         (WebCore::ResourceHandle::continueWillSendRequest):
2771         (WebCore::ResourceHandle::continueDidReceiveResponse):
2772         (WebCore::ResourceHandle::continueShouldUseCredentialStorage):
2773         (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
2774         * platform/network/ResourceRequestBase.cpp:
2775         (WebCore::ResourceRequestBase::setDefaultAllowCookies):
2776         (WebCore::ResourceRequestBase::defaultAllowCookies):
2777         * platform/network/ResourceRequestBase.h:
2778         (WebCore::ResourceRequestBase::ResourceRequestBase):
2779         * platform/network/cf/CredentialStorageCFNet.cpp:
2780         (WebCore::CredentialStorage::saveToPersistentStorage):
2781         * platform/network/cf/DNSCFNet.cpp:
2782         * platform/network/cf/ProxyServerCFNet.cpp:
2783         * platform/network/cf/ResourceRequest.h:
2784         (WebCore::ResourceRequest::ResourceRequest):
2785         (WebCore::ResourceRequest::setMainResourceRequest):
2786         (WebCore::ResourceRequest::isMainResourceRequest):
2787         * platform/network/cf/ResourceRequestCFNet.cpp:
2788         (WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody):
2789         (WebCore::ResourceRequest::doUpdateResourceRequest):
2790         (WebCore::ResourceRequest::applyWebArchiveHackForMail):
2791         (WebCore::initializeHTTPConnectionSettingsOnStartup):
2792         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2793         (WebCore::SocketStreamHandle::reportErrorToClient):
2794         * platform/network/ios/NetworkStateNotifierIOS.cpp: Copied from Source/WebCore/platform/KillRingNone.cpp.
2795         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
2796         (WebCore::NetworkStateNotifier::setIsOnLine):
2797         * platform/network/ios/QuickLook.h: Added.
2798         * platform/network/ios/QuickLook.mm: Added.
2799         * platform/network/ios/ResourceHandleIOS.mm: Added.
2800         * platform/network/ios/WebCoreURLResponseIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
2801         * platform/network/ios/WebCoreURLResponseIOS.mm: Added.
2802         * platform/network/mac/AuthenticationMac.mm:
2803         (WebCore::mac):
2804         * platform/network/mac/CredentialStorageMac.mm:
2805         (WebCore::CredentialStorage::saveToPersistentStorage):
2806         * platform/network/mac/ResourceErrorMac.mm:
2807         (dictionaryThatCanCode):
2808         (-[WebCustomNSURLError encodeWithCoder:]):
2809         (NSErrorFromCFError):
2810         (WebCore::ResourceError::nsError):
2811         * platform/network/mac/ResourceHandleMac.mm:
2812         (WebCore::synchronousWillSendRequestEnabled):
2813         (WebCore::ResourceHandle::createNSURLConnection):
2814         (WebCore::ResourceHandle::start):
2815         (WebCore::ResourceHandle::schedule):
2816         (WebCore::ResourceHandle::unschedule):
2817         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
2818         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
2819         * platform/network/mac/ResourceRequestMac.mm:
2820         (WebCore::ResourceRequest::ResourceRequest):
2821         (WebCore::ResourceRequest::updateNSURLRequest):
2822         (WebCore::ResourceRequest::applyWebArchiveHackForMail):
2823         (WebCore::ResourceRequest::useQuickLookResourceCachingQuirks):
2824         * platform/network/mac/UTIUtilities.mm:
2825         * platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
2826         (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
2827         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
2828         (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
2829         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
2830         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
2831         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
2832         * platform/sql/SQLiteDatabase.h:
2833         (WebCore::SQLiteDatabase::sqlite3Handle):
2834         * platform/sql/SQLiteFileSystem.cpp:
2835         (WebCore::SQLiteFileSystem::truncateDatabaseFile):
2836         * platform/sql/SQLiteFileSystem.h:
2837         * platform/sql/SQLiteTransaction.cpp:
2838         (WebCore::SQLiteTransaction::begin):
2839         (WebCore::SQLiteTransaction::commit):
2840         (WebCore::SQLiteTransaction::rollback):
2841         (WebCore::SQLiteTransaction::stop):
2842         * platform/sql/ios/SQLiteDatabaseTracker.cpp: Added.
2843         * platform/sql/ios/SQLiteDatabaseTracker.h: Copied from Source/WebCore/platform/MemoryPressureHandler.cpp.
2844         * platform/sql/ios/SQLiteDatabaseTrackerClient.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
2845         * platform/text/PlatformLocale.cpp:
2846         * platform/text/PlatformLocale.h:
2847         * platform/text/TextBreakIteratorICU.cpp:
2848         (WebCore::cursorMovementIterator):
2849         * platform/text/TextCodecICU.cpp:
2850         (WebCore::TextCodecICU::registerEncodingNames):
2851         (WebCore::TextCodecICU::registerCodecs):
2852         * platform/text/TextEncodingRegistry.cpp:
2853         (WebCore::extendTextCodecMaps):
2854         * platform/text/cf/HyphenationCF.cpp:
2855         (WebCore::canHyphenate):
2856         * platform/text/ios/LocalizedDateCache.h: Copied from Source/WebCore/platform/MemoryPressureHandler.h.
2857         * platform/text/ios/LocalizedDateCache.mm: Added.
2858         * platform/text/mac/CharsetData.h:
2859         * platform/text/mac/LocaleMac.h:
2860         * platform/text/mac/LocaleMac.mm:
2861         (WebCore::LocaleMac::formatDateTime):
2862         (WebCore::LocaleMac::maximumWidthForDateType):
2863         * platform/text/mac/TextBoundaries.mm:
2864         (WebCore::isSkipCharacter):
2865         (WebCore::isWhitespaceCharacter):
2866         (WebCore::isWordDelimitingCharacter):
2867         (WebCore::isSymbolCharacter):
2868         (WebCore::isAmbiguousBoundaryCharacter):
2869         (WebCore::tokenizerForString):
2870         (WebCore::findSimpleWordBoundary):
2871         (WebCore::findComplexWordBoundary):
2872         (WebCore::findWordBoundary):
2873         (WebCore::findNextWordFromIndex):
2874         * platform/text/mac/TextCodecMac.cpp:
2875         * platform/text/mac/TextCodecMac.h:
2876
2877 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
2878
2879         Web Inspector: Consolidate developerExtrasEnabled to just InspectorEnvironment
2880         https://bugs.webkit.org/show_bug.cgi?id=126717
2881
2882         Reviewed by Timothy Hatcher.
2883
2884         They all route to InspectorEnvironment::developerExtrasEnabled, so make
2885         InspectorEnvironment available to all agents through InstrumentingAgents
2886         and use that where needed.
2887
2888         * inspector/InspectorAgent.cpp:
2889         (WebCore::InspectorAgent::InspectorAgent):
2890         * inspector/InspectorAgent.h:
2891         (WebCore::InspectorAgent::create):
2892         * inspector/InspectorConsoleAgent.cpp:
2893         (WebCore::InspectorConsoleAgent::addMessageToConsole):
2894         (WebCore::InspectorConsoleAgent::didFinishXHRLoading):
2895         (WebCore::InspectorConsoleAgent::didReceiveResponse):
2896         (WebCore::InspectorConsoleAgent::didFailLoading):
2897         (WebCore::InspectorConsoleAgent::addConsoleMessage):
2898         * inspector/InspectorConsoleAgent.h:
2899         * inspector/InspectorController.cpp:
2900         (WebCore::InspectorController::InspectorController):
2901         (WebCore::InspectorController::enabled):
2902         * inspector/InspectorInstrumentation.cpp:
2903         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
2904         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
2905         (WebCore::InspectorInstrumentation::frameDocumentUpdatedImpl):
2906         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
2907         (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
2908         * inspector/InstrumentingAgents.cpp:
2909         (WebCore::InstrumentingAgents::InstrumentingAgents):
2910         * inspector/InstrumentingAgents.h:
2911         (WebCore::InstrumentingAgents::create):
2912         (WebCore::InstrumentingAgents::inspectorEnvironment):
2913         * inspector/PageConsoleAgent.cpp:
2914         * inspector/PageConsoleAgent.h:
2915         * inspector/WorkerConsoleAgent.cpp:
2916         * inspector/WorkerConsoleAgent.h:
2917         * inspector/WorkerInspectorController.cpp:
2918         (WebCore::WorkerInspectorController::WorkerInspectorController):
2919
2920 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
2921
2922         Web Inspector: Remove Unnecessary InspectorAgent parameters
2923         https://bugs.webkit.org/show_bug.cgi?id=126712
2924
2925         Reviewed by Timothy Hatcher.
2926
2927         * inspector/InspectorController.cpp:
2928         (WebCore::InspectorController::InspectorController):
2929         * inspector/InspectorDOMDebuggerAgent.cpp:
2930         (WebCore::InspectorDOMDebuggerAgent::create):
2931         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
2932         * inspector/InspectorDOMDebuggerAgent.h:
2933         * inspector/InspectorPageAgent.cpp:
2934         (WebCore::InspectorPageAgent::create):
2935         (WebCore::InspectorPageAgent::InspectorPageAgent):
2936         * inspector/InspectorPageAgent.h:
2937
2938 2014-01-09  Antti Koivisto  <antti@apple.com>
2939
2940         Remove an accidentally left-behind static_cast.
2941
2942         * dom/ElementDescendantIterator.h:
2943         (WebCore::ElementDescendantIteratorAdapter<ElementType>::beginAt):
2944
2945 2014-01-09  Antti Koivisto  <antti@apple.com>
2946
2947         Replace ElementIteratorAdapter find() with beginAt()
2948         https://bugs.webkit.org/show_bug.cgi?id=126714
2949
2950         Reviewed by Andreas Kling.
2951
2952         ElementIteratorAdapter find() would return iterator for the argument element if it was
2953         of correct type and in the right subtree. This is not really what you would expect from find()
2954         so replace it with a simple beginAt() iterator construction function.
2955
2956         * dom/DocumentOrderedMap.cpp:
2957         (WebCore::DocumentOrderedMap::getAllElementsById):
2958         * dom/ElementChildIterator.h:
2959         (WebCore::ElementChildIteratorAdapter<ElementType>::beginAt):
2960         (WebCore::ElementChildConstIteratorAdapter<ElementType>::beginAt):
2961         * dom/ElementDescendantIterator.h:
2962         (WebCore::ElementDescendantIteratorAdapter<ElementType>::beginAt):
2963         (WebCore::ElementDescendantConstIteratorAdapter<ElementType>::beginAt):
2964         * html/HTMLFormElement.cpp:
2965         (WebCore::HTMLFormElement::formElementIndex):
2966         * html/HTMLTableRowsCollection.cpp:
2967         (WebCore::HTMLTableRowsCollection::rowAfter):
2968
2969 2014-01-09  Brian Burg  <bburg@apple.com>
2970
2971         REGRESSION (r160152): Selection drag snapshot doesn't appear or has the wrong content on Retina
2972         https://bugs.webkit.org/show_bug.cgi?id=125375
2973
2974         Reviewed by Darin Adler.
2975
2976         Move scaling of drag images by the device scale factor out of DragClient
2977         and into WebCore. This removes several redundant copies and scaling operations.
2978
2979         Fix scaling bugs that were cancelled out by over-allocating the backing store.
2980
2981         * page/DragController.cpp:
2982         (WebCore::DragController::startDrag): Scale the drag image for a link
2983         according to the device scale factor before giving it to the OS.
2984
2985         (WebCore::DragController::doImageDrag): Scale the drag image for an image
2986         according to the device scale factor before giving it to the OS.
2987
2988         * page/FrameSnapshotting.cpp:
2989         (WebCore::snapshotFrameRect): Don't pre-scale or clip the snapshot. The
2990         ImageBuffer does this already.
2991
2992         * platform/DragImage.cpp:
2993         (WebCore::createDragImageFromSnapshot): Don't scale the backing store
2994         when copying an ImageBuffer into an Image.
2995
2996         * platform/graphics/cg/ImageBufferCG.cpp:
2997         (WebCore::ImageBuffer::copyImage): Draw the image in user-space coordinates,
2998         not in backing-store coordinates. Remove unnecessary assertions. Crop the
2999         buffer before drawing the image into it.
3000
3001 2014-01-09  Myles C. Maxfield  <mmaxfield@apple.com>
3002
3003         Narrow underlines are too tall
3004         https://bugs.webkit.org/show_bug.cgi?id=126708
3005
3006         Reviewed by Simon Fraser.
3007
3008         I made a typo in r158392 and used was settings the line rect's
3009         height equal to its width. No one noticed because of the subsequent
3010         if statement.
3011
3012         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-tall-underlines.html
3013
3014         * platform/graphics/cg/GraphicsContextCG.cpp:
3015         (WebCore::computeLineBoundsAndAntialiasingModeForText):
3016
3017 2014-01-09  Antti Koivisto  <antti@apple.com>
3018
3019         DocumentOrderedMap should use iterator
3020         https://bugs.webkit.org/show_bug.cgi?id=126696
3021
3022         Reviewed by Andreas Kling.
3023
3024         * dom/DocumentOrderedMap.cpp:
3025         (WebCore::keyMatchesId):
3026         (WebCore::keyMatchesName):
3027         (WebCore::keyMatchesMapName):
3028         (WebCore::keyMatchesLowercasedMapName):
3029         (WebCore::keyMatchesLowercasedUsemap):
3030         (WebCore::keyMatchesLabelForAttribute):
3031         (WebCore::keyMatchesWindowNamedItem):
3032         (WebCore::keyMatchesDocumentNamedItem):
3033         
3034             Switch to Element references.
3035
3036         (WebCore::DocumentOrderedMap::add):
3037         (WebCore::DocumentOrderedMap::remove):
3038         (WebCore::DocumentOrderedMap::get):
3039         (WebCore::DocumentOrderedMap::getAllElementsById):
3040         
3041              Use element iterator instead of ElementTraversal.
3042
3043         * dom/DocumentOrderedMap.h:
3044
3045 2014-01-09  Beth Dakin  <bdakin@apple.com>
3046
3047         Margin tiles are not repainted when background color changes
3048         https://bugs.webkit.org/show_bug.cgi?id=126541
3049         -and corresponding-
3050         <rdar://problem/15578131>
3051
3052         Reviewed by Simon Fraser.
3053
3054         This patch adds an optional parameter to GraphicsLayer::setNeedsDisplayInRect, 
3055         RenderLayerBacking::setContentsNeedDisplay(), and 
3056         RenderLayer::setBackingNeedsRepaint() that is used to determine whether or not to 
3057         clip the invalidation rect to the size of the layer. Then whenever the margin 
3058         needs to be repainted, we can call setNeedsDisplayInRect() with a rect that 
3059         includes the margin, and also indicate that it should not be clipped.
3060
3061         GraphicsLayer now takes an optional parameter which is an enum called 
3062         ShouldClipToLayer.
3063         * WebCore.exp.in:
3064         * platform/graphics/GraphicsLayer.h:
3065         * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
3066         (WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
3067         * platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
3068         * platform/graphics/ca/GraphicsLayerCA.cpp:
3069         (WebCore::GraphicsLayerCA::setNeedsDisplayInRect):
3070         * platform/graphics/ca/GraphicsLayerCA.h:
3071         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
3072         (WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
3073         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
3074         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
3075         (WebCore::CoordinatedGraphicsLayer::setNeedsDisplayInRect):
3076         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
3077
3078         Make TileController::bounds() a virtual function, and declare it on TiledBacking 
3079         so that we can call it from RenderLayerBacking.
3080         * platform/graphics/TiledBacking.h:
3081         * platform/graphics/ca/mac/TileController.h:
3082
3083         RenderLayer also now takes an optional parameter which is an enum called 
3084         ShouldClipToLayer.
3085         * rendering/RenderLayer.cpp:
3086         (WebCore::RenderLayer::calculateClipRects):
3087         * rendering/RenderLayer.h:
3088
3089         If the margin needs to be repainted, call GraphicsLayer::setNeedsDisplayInRect 
3090         with a big enough rect and a ShouldClipToLayer value of DoNotClipToLayer.
3091         * rendering/RenderLayerBacking.cpp:
3092         (WebCore::RenderLayerBacking::setContentsNeedDisplay):
3093         * rendering/RenderLayerBacking.h:
3094
3095         Whenever all of the root contents need to be repainted the margin will also need 
3096         to be repainted, so call setBackingNeedsRepaint() with the new parameter 
3097         indicating the the invalidation should NOT be clipped to the layer size.
3098         * rendering/RenderView.cpp:
3099         (WebCore::RenderView::repaintRootContents):
3100
3101 2014-01-09  Bear Travis  <betravis@adobe.com>
3102
3103         [CSS Shapes] Factor the ReferenceBox type out of BasicShapes
3104         https://bugs.webkit.org/show_bug.cgi?id=126648
3105
3106         Reviewed by Dirk Schulze.
3107
3108         Moving ReferenceBox out of BasicShapes and into RenderStyleConstants
3109         as the LayoutBox enum. Most of the changes are removing the BasicShape
3110         namespace.
3111
3112         Refactoring, no new tests.
3113
3114         * css/BasicShapeFunctions.cpp:
3115         (WebCore::valueForBox):
3116         (WebCore::boxForValue):
3117         (WebCore::valueForBasicShape):
3118         (WebCore::basicShapeForValue):
3119         * css/BasicShapeFunctions.h:
3120         * css/CSSBasicShapes.cpp:
3121         (WebCore::CSSBasicShapeRectangle::cssText):
3122         (WebCore::CSSBasicShapeRectangle::equals):
3123         (WebCore::CSSBasicShapeCircle::cssText):
3124         (WebCore::CSSBasicShapeCircle::equals):
3125         (WebCore::CSSDeprecatedBasicShapeCircle::cssText):
3126         (WebCore::CSSDeprecatedBasicShapeCircle::equals):
3127         (WebCore::CSSBasicShapeEllipse::cssText):
3128         (WebCore::CSSBasicShapeEllipse::equals):
3129         (WebCore::CSSDeprecatedBasicShapeEllipse::cssText):
3130         (WebCore::CSSDeprecatedBasicShapeEllipse::equals):
3131         (WebCore::CSSBasicShapePolygon::cssText):
3132         (WebCore::CSSBasicShapePolygon::equals):
3133         (WebCore::CSSBasicShapeInsetRectangle::cssText):
3134         (WebCore::CSSBasicShapeInsetRectangle::equals):
3135         (WebCore::CSSBasicShapeInset::cssText):
3136         * css/CSSBasicShapes.h:
3137         (WebCore::CSSBasicShape::layoutBox):
3138         (WebCore::CSSBasicShape::setLayoutBox):
3139         * css/CSSComputedStyleDeclaration.cpp:
3140         (WebCore::ComputedStyleExtractor::propertyValue):
3141         * css/CSSParser.cpp:
3142         (WebCore::CSSParser::parseShapeProperty):
3143         * css/DeprecatedStyleBuilder.cpp:
3144         (WebCore::ApplyPropertyClipPath::applyValue):
3145         (WebCore::ApplyPropertyShape::applyValue):
3146         * rendering/ClipPathOperation.h:
3147         (WebCore::ShapeClipPathOperation::setReferenceBox):
3148         (WebCore::ShapeClipPathOperation::referenceBox):
3149         (WebCore::ShapeClipPathOperation::ShapeClipPathOperation):
3150         (WebCore::BoxClipPathOperation::create):
3151         (WebCore::BoxClipPathOperation::referenceBox):
3152         (WebCore::BoxClipPathOperation::BoxClipPathOperation):
3153         * rendering/shapes/Shape.cpp:
3154         (WebCore::Shape::createLayoutBoxShape):
3155         * rendering/shapes/Shape.h:
3156         * rendering/shapes/ShapeInfo.cpp:
3157         (WebCore::ShapeInfo<RenderType>::computedShape):
3158         * rendering/shapes/ShapeInfo.h:
3159         (WebCore::ShapeInfo::setShapeSize):
3160         (WebCore::ShapeInfo::logicalTopOffset):
3161         (WebCore::ShapeInfo::logicalLeftOffset):
3162         * rendering/shapes/ShapeInsideInfo.h:
3163         * rendering/shapes/ShapeOutsideInfo.h:
3164         * rendering/style/BasicShapes.cpp:
3165         (WebCore::BasicShape::canBlend):
3166         (WebCore::BasicShape::referenceBoxSize):
3167         * rendering/style/BasicShapes.h:
3168         (WebCore::BasicShape::layoutBox):
3169         (WebCore::BasicShape::setLayoutBox):
3170         (WebCore::BasicShape::BasicShape):
3171         * rendering/style/RenderStyleConstants.h:
3172         * rendering/style/ShapeValue.h:
3173         (WebCore::ShapeValue::createLayoutBoxValue):
3174         (WebCore::ShapeValue::layoutBox):
3175         (WebCore::ShapeValue::ShapeValue):
3176
3177 2014-01-09  Tim Horton  <timothy_horton@apple.com>
3178
3179         PDFDocumentImage can be very slow to do the initial paint
3180         https://bugs.webkit.org/show_bug.cgi?id=126633
3181         <rdar://problem/15770980>
3182
3183         Reviewed by Simon Fraser.
3184
3185         * platform/graphics/cg/PDFDocumentImage.cpp:
3186         (WebCore::PDFDocumentImage::PDFDocumentImage):
3187         (WebCore::PDFDocumentImage::size):
3188         (WebCore::transformContextForPainting):
3189         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
3190         (WebCore::applyRotationForPainting):
3191         (WebCore::PDFDocumentImage::drawPDFPage):
3192         * platform/graphics/cg/PDFDocumentImage.h:
3193         * platform/graphics/mac/PDFDocumentImageMac.mm:
3194         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
3195         Store rotation from the PDF in degrees, since it can
3196         only be 0, 90, 180, or 270, and don't do any trig to
3197         perform the rotation, to avoid introducing minor rounding
3198         issues in the size.
3199
3200         Once we're going to paint, if the difference between the
3201         computed scale for each axis is due only to integer rounding
3202         of the image size, use the same scale for both axes, to avoid
3203         a CG slow-path which occurs whenever the scale is nonuniform.
3204
3205 2014-01-09  Antti Koivisto  <antti@apple.com>
3206
3207         Disconnect child frames iteratively
3208         https://bugs.webkit.org/show_bug.cgi?id=126700
3209
3210         Reviewed by Andreas Kling.
3211
3212         Use descendant iterator instead of recursion for traversal.
3213
3214         * dom/ContainerNode.cpp:
3215         (WebCore::willRemoveChild):
3216         (WebCore::willRemoveChildren):
3217         (WebCore::ContainerNode::disconnectDescendantFrames):
3218         * dom/ContainerNodeAlgorithms.cpp:
3219         (WebCore::assertConnectedSubrameCountIsConsistent):
3220         (WebCore::collectFrameOwners):
3221         (WebCore::disconnectSubframes):
3222         
3223             Get rid of the strange ChildFrameDisconnector class in favor of a function.
3224
3225         * dom/ContainerNodeAlgorithms.h:
3226         (WebCore::disconnectSubframesIfNeeded):
3227
3228 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
3229
3230         Unreviewed Windows build fix for r161563.
3231
3232         Remove reference to removed file.
3233
3234         * bindings/js/JSBindingsAllInOne.cpp:
3235
3236 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
3237
3238         Web Inspector: Move InjectedScript classes into JavaScriptCore
3239         https://bugs.webkit.org/show_bug.cgi?id=126598
3240
3241         Part 6: Put it all together. Make WebCore use the JavaScriptCore InjectedScript files.
3242
3243         Reviewed by Timothy Hatcher.
3244
3245         * CMakeLists.txt:
3246         * DerivedSources.cpp:
3247         * DerivedSources.make:
3248         * GNUmakefile.list.am:
3249         * UseJSC.cmake:
3250         * WebCore.vcxproj/WebCore.vcxproj:
3251         * WebCore.vcxproj/WebCore.vcxproj.filters:
3252         * WebCore.xcodeproj/project.pbxproj:
3253         Remove old InjectedScript files.
3254
3255         * ForwardingHeaders/inspector/InjectedScript.h: Added.
3256         * ForwardingHeaders/inspector/InjectedScriptBase.h: Added.
3257         * ForwardingHeaders/inspector/InjectedScriptHost.h: Added.
3258         * ForwardingHeaders/inspector/InjectedScriptManager.h: Added.
3259         * ForwardingHeaders/inspector/InjectedScriptModule.h: Added.
3260         * ForwardingHeaders/inspector/InspectorEnvironment.h: Added.
3261         Expose headers to WebCore.
3262
3263         * inspector/InspectorController.h:
3264         * inspector/InspectorController.cpp:
3265         (WebCore::InspectorController::InspectorController):
3266         (WebCore::InspectorController::developerExtrasEnabled):
3267         (WebCore::InspectorController::canAccessInspectedScriptState):
3268         (WebCore::InspectorController::functionCallHandler):
3269         (WebCore::InspectorController::evaluateHandler):
3270         (WebCore::InspectorController::willCallInjectedScriptFunction):
3271         (WebCore::InspectorController::didCallInjectedScriptFunction):
3272         * inspector/WorkerInspectorController.h:
3273         * inspector/WorkerInspectorController.cpp:
3274         (WebCore::WorkerInspectorController::WorkerInspectorController):
3275         (WebCore::WorkerInspectorController::functionCallHandler):
3276         (WebCore::WorkerInspectorController::evaluateHandler):
3277         (WebCore::WorkerInspectorController::willCallInjectedScriptFunction):
3278         (WebCore::WorkerInspectorController::didCallInjectedScriptFunction):
3279         Make both InspectorControllers in WebCore be InspectorEnvironments.
3280
3281         * bindings/js/JSMainThreadExecState.h:
3282         * bindings/js/JSMainThreadExecState.cpp:
3283         (WebCore::evaluateHandlerFromAnyThread):
3284         Make JSC::evaluate wrapper like the existing JSC::call wrapper.
3285         These will be the ScriptFunctionCall implementations when debugging
3286         a WebCore::Page or worker, instead of the pure JSC versions.
3287
3288         * inspector/PageInjectedScriptHost.h: Copied from Source/WebCore/inspector/CommandLineAPIModule.h.
3289         * inspector/PageInjectedScriptHost.cpp: Copied from Source/WebCore/inspector/PageInjectedScriptManager.cpp.
3290         (WebCore::PageInjectedScriptHost::type):
3291         (WebCore::PageInjectedScriptHost::isHTMLAllCollection):
3292         WebCore InjectedScriptHost implementation for DOM type handling.
3293
3294         * inspector/PageInjectedScriptManager.h:
3295         * inspector/PageInjectedScriptManager.cpp:
3296         (WebCore::PageInjectedScriptManager::PageInjectedScriptManager):
3297         (WebCore::PageInjectedScriptManager::discardInjectedScriptsFor):
3298         WebCore InjectedScriptManager implementation for CommandLineAPI and
3299         specialized DOMWindow injected script management.
3300
3301         * bindings/js/JSBindingsAllInOne.cpp:
3302         * inspector/CommandLineAPIHost.cpp:
3303         * inspector/CommandLineAPIHost.h:
3304         * inspector/CommandLineAPIModule.cpp:
3305         (WebCore::CommandLineAPIModule::host):
3306         * inspector/CommandLineAPIModule.h:
3307         * inspector/ConsoleMessage.cpp:
3308         (WebCore::ConsoleMessage::addToFrontend):
3309         * inspector/ConsoleMessage.h:
3310         * inspector/InjectedScriptCanvasModule.cpp:
3311         (WebCore::InjectedScriptCanvasModule::InjectedScriptCanvasModule):
3312         * inspector/InjectedScriptCanvasModule.h:
3313         * inspector/InspectorAllInOne.cpp:
3314         * inspector/InspectorCanvasAgent.cpp:
3315         * inspector/InspectorCanvasAgent.h:
3316         (WebCore::InspectorCanvasAgent::create):
3317         * inspector/InspectorConsoleAgent.cpp:
3318         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
3319         * inspector/InspectorConsoleAgent.h:
3320         * inspector/InspectorDOMAgent.cpp:
3321         * inspector/InspectorDOMAgent.h:
3322         (WebCore::InspectorDOMAgent::create):
3323         * inspector/InspectorDebuggerAgent.cpp:
3324         * inspector/InspectorDebuggerAgent.h:
3325         (WebCore::InspectorDebuggerAgent::injectedScriptManager):
3326         * inspector/InspectorHeapProfilerAgent.cpp:
3327         (WebCore::InspectorHeapProfilerAgent::create):
3328         (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
3329         * inspector/InspectorHeapProfilerAgent.h:
3330         * inspector/InspectorIndexedDBAgent.cpp:
3331         * inspector/InspectorIndexedDBAgent.h:
3332         (WebCore::InspectorIndexedDBAgent::create):
3333         * inspector/InspectorPageAgent.cpp:
3334         * inspector/InspectorPageAgent.h:
3335         * inspector/InspectorProfilerAgent.cpp:
3336         (WebCore::PageProfilerAgent::PageProfilerAgent):
3337         (WebCore::InspectorProfilerAgent::create):
3338         (WebCore::WorkerProfilerAgent::WorkerProfilerAgent):
3339         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
3340         * inspector/InspectorProfilerAgent.h:
3341         * inspector/InspectorRuntimeAgent.cpp:
3342         * inspector/InspectorRuntimeAgent.h:
3343         (WebCore::InspectorRuntimeAgent::injectedScriptManager):
3344         * inspector/PageConsoleAgent.cpp:
3345         (WebCore::PageConsoleAgent::PageConsoleAgent):
3346         * inspector/PageConsoleAgent.h:
3347         (WebCore::PageConsoleAgent::create):
3348         * inspector/PageDebuggerAgent.cpp:
3349         * inspector/PageDebuggerAgent.h:
3350         * inspector/PageRuntimeAgent.cpp:
3351         * inspector/PageRuntimeAgent.h:
3352         (WebCore::PageRuntimeAgent::create):
3353         * inspector/WorkerConsoleAgent.cpp:
3354         (WebCore::WorkerConsoleAgent::WorkerConsoleAgent):
3355         * inspector/WorkerConsoleAgent.h:
3356         (WebCore::WorkerConsoleAgent::create):
3357         * inspector/WorkerDebuggerAgent.cpp:
3358         * inspector/WorkerDebuggerAgent.h:
3359         * inspector/WorkerRuntimeAgent.cpp:
3360         * inspector/WorkerRuntimeAgent.h:
3361         (WebCore::WorkerRuntimeAgent::create):
3362         Switch to using the Inspector namespace and JSC InjectedScript files.
3363
3364         * bindings/js/JSInjectedScriptManager.cpp: Removed.
3365         * inspector/InjectedScript.h: Removed.
3366         * inspector/InjectedScriptHost.cpp: Removed.
3367         * inspector/InjectedScriptHost.h: Removed.
3368         * inspector/InjectedScriptHost.idl: Removed.
3369
3370
3371         Part 4: Move all inspector scripts into JavaScriptCore and update generators.
3372
3373         With the updated location switch to using the appropriate INSPECTOR_SCRIPTS_DIR
3374         variable which defines where the scripts are.
3375
3376         * CMakeLists.txt:
3377         * DerivedSources.make:
3378         * GNUmakefile.am:
3379         * GNUmakefile.list.am:
3380         * WebCore.vcxproj/WebCore.vcxproj:
3381         * WebCore.vcxproj/WebCore.vcxproj.filters:
3382         * WebCore.xcodeproj/project.pbxproj:
3383
3384
3385         Part 1: Extract InspectorInstrumentationCookie class from InspectorInstrumentation.
3386
3387         Currently InjectedScriptBase uses InspectorInstrumentation directly
3388         to track calling into JavaScript for timeline purposes. We will remove
3389         the direct call from InjectedScriptBase and extracting the Cookie class
3390         will make that easier.
3391
3392         * CMakeLists.txt:
3393         * GNUmakefile.list.am:
3394         * WebCore.vcxproj/WebCore.vcxproj:
3395         * WebCore.vcxproj/WebCore.vcxproj.filters:
3396         * WebCore.xcodeproj/project.pbxproj:
3397         * inspector/InspectorAllInOne.cpp:
3398         * inspector/InspectorInstrumentation.cpp:
3399         * inspector/InspectorInstrumentation.h:
3400         * inspector/InspectorInstrumentationCookie.cpp: Added.
3401         (WebCore::InspectorInstrumentationCookie::InspectorInstrumentationCookie):
3402         (WebCore::InspectorInstrumentationCookie::operator=):
3403         (WebCore::InspectorInstrumentationCookie::~InspectorInstrumentationCookie):
3404         * inspector/InspectorInstrumentationCookie.h: Added.
3405         (WebCore::InspectorInstrumentationCookie::isValid):
3406         (WebCore::InspectorInstrumentationCookie::instrumentingAgents):
3407         (WebCore::InspectorInstrumentationCookie::hasMatchingTimelineAgentId):
3408
3409 2014-01-09  Pascal Jacquemart  <p.jacquemart@samsung.com>
3410
3411         Cannot select multiple non-adjacent items in a multiple select control with the keyboard only
3412         https://bugs.webkit.org/show_bug.cgi?id=15816
3413
3414         Reviewed by Chris Fleizach.
3415
3416         Test: fast/forms/listbox-non-contiguous-keyboard-selection.html
3417
3418         * html/HTMLSelectElement.cpp:
3419         (WebCore::HTMLSelectElement::HTMLSelectElement):
3420         New member m_allowsNonContiguousSelection defaults to false
3421         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
3422         Tracking CTRL modifier to start multiple non contiguous selection
3423         * html/HTMLSelectElement.h: New member m_allowsNonContiguousSelection
3424         (WebCore::HTMLSelectElement::allowsNonContiguousSelection): New getter
3425         * rendering/RenderListBox.cpp:
3426         (WebCore::RenderListBox::addFocusRingRects):
3427         Following implementation made for spatial navigation
3428
3429 2014-01-09  Seokju Kwon  <seokju@webkit.org>
3430
3431         Web Inspector: Remove unused overriding protocols.
3432         https://bugs.webkit.org/show_bug.cgi?id=126630
3433
3434         Reviewed by Timothy Hatcher.
3435
3436         No new tests, No change in behavior.
3437
3438         Remove unused overriding protocols as these are not used anymore in Frontned.
3439         -Page.setGeolocationOverride
3440         -Page.clearGeolocationOverride
3441         -Page.canOverrideGeolocation
3442         -Page.setDeviceOrientationOverride
3443         -Page.clearDeviceOrientationOverride
3444         -Page.canOverrideGeolocation
3445         -Network.setUserAgentOverride
3446
3447         * Modules/geolocation/GeolocationController.cpp:
3448         (WebCore::GeolocationController::GeolocationController):
3449         (WebCore::GeolocationController::create):
3450         (WebCore::GeolocationController::positionChanged):
3451         (WebCore::provideGeolocationTo):
3452         * Modules/geolocation/GeolocationController.h:
3453         * dom/DeviceOrientationController.cpp:
3454         (WebCore::DeviceOrientationController::DeviceOrientationController):
3455         (WebCore::DeviceOrientationController::create):
3456         (WebCore::DeviceOrientationController::didChangeDeviceOrientation):
3457         (WebCore::provideDeviceOrientationTo):
3458         * dom/DeviceOrientationController.h:
3459         * inspector/InspectorInstrumentation.cpp:
3460         * inspector/InspectorInstrumentation.h:
3461         * inspector/InspectorPageAgent.cpp:
3462         (WebCore::InspectorPageAgent::InspectorPageAgent):
3463         * inspector/InspectorPageAgent.h:
3464         * inspector/InspectorResourceAgent.cpp:
3465         (WebCore::InspectorResourceAgent::disable):
3466         * inspector/InspectorResourceAgent.h:
3467         * inspector/protocol/Network.json:
3468         * inspector/protocol/Page.json:
3469         * loader/FrameLoader.cpp:
3470         (WebCore::FrameLoader::userAgent):
3471
3472 2014-01-09  Andrei Bucur  <abucur@adobe.com>
3473
3474         [CSSRegions] Move regions auto-size code into RenderNamedFlowFragment
3475         https://bugs.webkit.org/show_bug.cgi?id=122959
3476
3477         Reviewed by Mihnea Ovidenie.
3478
3479         Move the auto-height logic from RenderRegion to RenderNamedFlowFragment because it's
3480         used only by the CSS Regions implementation.
3481
3482         Bug 126642 covers the auto-height logic move from RenderFlowThread to RenderNamedFlowThread.
3483
3484         Tests: No new tests, just refactorings.
3485
3486         * rendering/RenderFlowThread.cpp:
3487         (WebCore::RenderFlowThread::styleDidChange):
3488         (WebCore::RenderFlowThread::validateRegions):
3489         (WebCore::RenderFlowThread::isAutoLogicalHeightRegionsCountConsistent):
3490         (WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
3491         (WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout):
3492         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
3493         (WebCore::RenderFlowThread::addForcedRegionBreak):
3494         * rendering/RenderMultiColumnSet.h:
3495         * rendering/RenderNamedFlowFragment.cpp:
3496         (WebCore::RenderNamedFlowFragment::RenderNamedFlowFragment):
3497         (WebCore::RenderNamedFlowFragment::styleDidChange):
3498         (WebCore::RenderNamedFlowFragment::incrementAutoLogicalHeightCount):
3499         (WebCore::RenderNamedFlowFragment::decrementAutoLogicalHeightCount):
3500         (WebCore::RenderNamedFlowFragment::updateRegionHasAutoLogicalHeightFlag):
3501         (WebCore::RenderNamedFlowFragment::updateLogicalHeight):
3502         (WebCore::RenderNamedFlowFragment::pageLogicalHeight):
3503         (WebCore::RenderNamedFlowFragment::layoutBlock):
3504         (WebCore::RenderNamedFlowFragment::attachRegion):
3505         (WebCore::RenderNamedFlowFragment::detachRegion):
3506         * rendering/RenderNamedFlowFragment.h:
3507         * rendering/RenderRegion.cpp:
3508         (WebCore::RenderRegion::RenderRegion):
3509         (WebCore::RenderRegion::pageLogicalHeight):
3510         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
3511         (WebCore::RenderRegion::isLastRegion):
3512         (WebCore::RenderRegion::styleDidChange):
3513         (WebCore::RenderRegion::attachRegion):
3514         (WebCore::RenderRegion::detachRegion):
3515         * rendering/RenderRegion.h:
3516         * rendering/RenderRegionSet.h:
3517         * rendering/RenderTreeAsText.cpp:
3518         (WebCore::writeRenderRegionList):
3519
3520 2014-01-09  Antti Koivisto  <antti@apple.com>
3521
3522         Switch HTMLTableRowsCollection from Traversal<> to iterators
3523         https://bugs.webkit.org/show_bug.cgi?id=126684
3524
3525         Reviewed by Andreas Kling.
3526
3527         This is the last remaining client of Traversal<> outside the iterator implementation.
3528
3529         * dom/ElementChildIterator.h:
3530         (WebCore::ElementChildIteratorAdapter<ElementType>::find):
3531         (WebCore::ElementChildConstIteratorAdapter<ElementType>::find):
3532         
3533             Add find with the same semantics as ElementDescendantIterator::find.
3534
3535         * html/HTMLTableRowsCollection.cpp:
3536         (WebCore::HTMLTableRowsCollection::rowAfter):
3537         (WebCore::HTMLTableRowsCollection::lastRow):
3538
3539 2014-01-08  Carlos Garcia Campos  <cgarcia@igalia.com>
3540
3541         REGRESSION(r161176): http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials.html is failing on GTK
3542         https://bugs.webkit.org/show_bug.cgi?id=126518
3543
3544         Reviewed by Martin Robinson.
3545
3546         Clear the credentials before calling willSendRequest on the client
3547         to avoid sending the credentials to the API layer, but apply them
3548         again to the request right before creating the new SoupRequest.
3549
3550         * platform/network/soup/ResourceHandleSoup.cpp:
3551         (WebCore::continueAfterWillSendRequest):
3552         (WebCore::doRedirect):
3553
3554 2014-01-08  Commit Queue  <commit-queue@webkit.org>
3555
3556         Unreviewed, rolling out r161532.
3557         http://trac.webkit.org/changeset/161532
3558         https://bugs.webkit.org/show_bug.cgi?id=126677
3559
3560         Caused lots of assertion failures (Requested by ap on
3561         #webkit).
3562
3563         * xml/XMLHttpRequest.cpp:
3564         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
3565         (WebCore::XMLHttpRequest::createRequest):
3566         (WebCore::XMLHttpRequest::abort):
3567         (WebCore::XMLHttpRequest::networkError):
3568         (WebCore::XMLHttpRequest::abortError):
3569         (WebCore::XMLHttpRequest::didSendData):
3570         (WebCore::XMLHttpRequest::didReceiveData):
3571         (WebCore::XMLHttpRequest::didTimeout):
3572         * xml/XMLHttpRequest.h:
3573         * xml/XMLHttpRequestProgressEventThrottle.cpp:
3574         (WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
3575         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent):
3576         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadEnd):
3577         (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent):
3578         (WebCore::XMLHttpRequestProgressEventThrottle::fired):
3579         (WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch):
3580         (WebCore::XMLHttpRequestProgressEventThrottle::suspend):
3581         * xml/XMLHttpRequestProgressEventThrottle.h:
3582         * xml/XMLHttpRequestUpload.cpp:
3583         (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
3584         (WebCore::XMLHttpRequestUpload::dispatchEventAndLoadEnd):
3585         * xml/XMLHttpRequestUpload.h:
3586
3587 2014-01-08  Brian Burg  <bburg@apple.com>
3588
3589         Clean up confusing names and calculations in image-dragging functions
3590         https://bugs.webkit.org/show_bug.cgi?id=126661
3591
3592         Reviewed by Timothy Hatcher.
3593
3594         No new tests.
3595
3596         * page/DragController.cpp:
3597         (WebCore::DragController::doImageDrag): rename variables and
3598         simplify the calculation of the image's scaled origin.
3599
3600         * platform/DragImage.cpp:
3601         (WebCore::fitDragImageToMaxSize): rename variables.
3602
3603 2014-01-08  Seokju Kwon  <seokju@webkit.org>
3604
3605         Web Inspector: Remove InspectorClient::captureScreenshot()
3606         https://bugs.webkit.org/show_bug.cgi?id=126616
3607
3608         Reviewed by Joseph Pecoraro.
3609
3610         No new tests, No change in behavior.
3611
3612         Remove leftover mothod as Page.captureScreenshot API was removed in r160202.
3613
3614         * inspector/InspectorClient.h:
3615
3616 2014-01-08  Youenn Fablet  <youennf@gmail.com>
3617
3618         Correctly set XHR loadend attributes (loaded and total).
3619         https://bugs.webkit.org/show_bug.cgi?id=120828
3620
3621         Reviewed by Alexey Proskuryakov.
3622         
3623         Added correct initialization of lengthComputable, loaded and total attributes 
3624         to XHR ProgressEvent events (load, loadstart, loadend, abort, error and timeout).
3625
3626         XMLHttpRequestProgressEventThrottle and XMLHttpRequestUpload now keep persistent knowledge 
3627         of m_loaded and m_total values with this patch.
3628         
3629         Code refactoring to handle event dispatching in case of error in a single manner.
3630         XMLHttpRequestProgressEventThrottle::dispatchProgressEvent is renamed as dispatchThrottledProgressEvent
3631         XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadend is replaced by dispatchProgressEvent(const AtomicString&)
3632
3633         Tests: http/tests/xmlhttprequest/loadstart-event-init.html
3634                http/tests/xmlhttprequest/onabort-progressevent-attributes.html
3635                http/tests/xmlhttprequest/onload-progressevent-attributes.html
3636                http/tests/xmlhttprequest/upload-onabort-progressevent-attributes.html
3637                http/tests/xmlhttprequest/upload-onload-progressevent-attributes.html
3638
3639         * xml/XMLHttpRequest.cpp:
3640         (WebCore::XMLHttpRequest::callReadyStateChangeListener): changed readystatechange event from ProgressEvent to Event (not cancellable, not bubblable) to better match the spec 
3641         (WebCore::XMLHttpRequest::createRequest):
3642         (WebCore::XMLHttpRequest::abort): code refactoring to handle error event dispatching in a single way
3643         (WebCore::XMLHttpRequest::networkError): code refactoring to handle error event dispatching in a single way
3644         (WebCore::XMLHttpRequest::abortError): code refactoring to handle error event dispatching in a single way
3645         (WebCore::XMLHttpRequest::didSendData):
3646         (WebCore::XMLHttpRequest::didReceiveData):
3647         (WebCore::XMLHttpRequest::dispatchErrorEvents): dispatch progress events in case of error
3648         (WebCore::XMLHttpRequest::didTimeout): code refactoring to handle error event dispatching in a single way
3649         * xml/XMLHttpRequest.h:
3650         * xml/XMLHttpRequestProgressEventThrottle.cpp: before the patch, the fact that a progress event is being throttled is stored indirectly (m_loaded or m_total not equal to zero). With the patch, this information is stored in m_hasThrottledProgressEvent. The m_loaded and m_total values are no longer set back to zero after a progress event is dispatched. This allows using these values to correctly initialize other ProgressEvent events (in particular loadend, abort, timeout...) 
3651         (WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
3652         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchThrottledProgressEvent): always update the new m_loaded and m_total values. If progress event is not sent as part of the function call, store the fact that a progress event is being throttled through m_hasThrottledProgressEvent. 
3653         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): used to send any ProgressEvent event that is not be throttled
3654         (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent): after the call, no progress event is throttled anymore
3655         (WebCore::XMLHttpRequestProgressEventThrottle::fired): after the call, no progress event is throttled anymore
3656         (WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch):
3657         (WebCore::XMLHttpRequestProgressEventThrottle::suspend):
3658         * xml/XMLHttpRequestProgressEventThrottle.h: introduced m_hasThrottledProgressEvent which stores whether a progress event is being throttled and m_computableLength which is used to initialize ProgressEvent computableLength
3659         * xml/XMLHttpRequestUpload.cpp:
3660         (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
3661         (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
3662         * xml/XMLHttpRequestUpload.h: introduced m_loaded, m_total and m_lengthComputable, similarly to XMLHttpRequestProgressEventThrottle
3663
3664 2014-01-08  Tim Horton  <timothy_horton@apple.com>
3665
3666         TileController can fail to receive exposedRect from the drawing area if set at the wrong time
3667         https://bugs.webkit.org/show_bug.cgi?id=126536
3668
3669         Reviewed by Simon Fraser.
3670
3671         * WebCore.exp.in:
3672         Export some things.
3673
3674         * page/FrameView.cpp:
3675         (WebCore::FrameView::FrameView):
3676         (WebCore::FrameView::setExposedRect):
3677         Store the exposed rect on FrameView. When it changes, if the main frame
3678         has a TiledBacking, inform it of the change.
3679
3680         * page/FrameView.h:
3681         * platform/graphics/TiledBacking.h:
3682         * platform/graphics/ca/mac/TileController.h:
3683         * platform/graphics/ca/mac/TileController.mm:
3684         (WebCore::TileController::TileController):
3685         (WebCore::TileController::tilesWouldChangeForVisibleRect):
3686         (WebCore::TileController::computeTileCoverageRect):
3687         (WebCore::TileController::revalidateTiles):
3688         (WebCore::TileController::updateTileCoverageMap):
3689         Make use of the fact that we can test if a rect is infinite
3690         instead of having a separate boolean property for that.
3691
3692         * rendering/RenderLayerBacking.cpp:
3693         (WebCore::RenderLayerBacking::RenderLayerBacking):
3694         (WebCore::computeTileCoverage):
3695         Push the FrameView's cached exposed rect down into the TiledBacking when it is created.
3696         We only support clipping for the main frame TileController for now.
3697
3698 2014-01-07  Myles C. Maxfield  <mmaxfield@apple.com>
3699
3700         a fractional value of the css letter-spacing property is not rendered as expected
3701         https://bugs.webkit.org/show_bug.cgi?id=20606
3702
3703         Reviewed by Simon Fraser.
3704
3705         This turns on fractional letter-spacing and word-spacing CSS values.
3706         It is taken mostly from Blink r153727 and iOS. Updating the relevant
3707         types is all that is necessary
3708
3709         Existing tests have been updated.
3710
3711         * css/DeprecatedStyleBuilder.cpp:
3712         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
3713         * page/animation/CSSPropertyAnimation.cpp:
3714         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
3715         * platform/graphics/Font.cpp:
3716         (WebCore::Font::Font):
3717         (WebCore::Font::width):
3718         * platform/graphics/Font.h:
3719         (WebCore::Font::wordSpacing):
3720         (WebCore::Font::letterSpacing):
3721         (WebCore::Font::setWordSpacing):
3722         (WebCore::Font::setLetterSpacing):
3723         * rendering/style/RenderStyle.cpp:
3724         (WebCore::RenderStyle::wordSpacing):
3725         (WebCore::RenderStyle::letterSpacing):
3726         (WebCore::RenderStyle::setWordSpacing):
3727         (WebCore::RenderStyle::setLetterSpacing):
3728         * rendering/style/RenderStyle.h:
3729
3730 2014-01-08  Anders Carlsson  <andersca@apple.com>
3731
3732         Add WTF::StringView and use it for grammar checking
3733         https://bugs.webkit.org/show_bug.cgi?id=126644
3734
3735         Reviewed by Antti Koivisto.
3736
3737         Use a StringView in TextCheckerClient::checkTextOfParagraph to avoid upconverting strings unnecessarily.
3738
3739         * editing/TextCheckingHelper.cpp:
3740         (WebCore::checkTextOfParagraph):
3741         Pass a StringView to TextCheckerClient::checkTextOfParagraph.
3742         
3743         * loader/EmptyClients.h:
3744         Update for TextCheckerClient changes.
3745
3746         * platform/text/TextCheckerClient.h:
3747         Change TextCheckerClient::checkTextOfParagraph to take a StringView.
3748         
3749 2014-01-08  Eric Carlson  <eric.carlson@apple.com>
3750
3751         Unreviewed Windows build fix attempt after r161481.
3752
3753         * WebCore.vcxproj/copyForwardingHeaders.cmd:
3754
3755 2014-01-08  Andreas Kling  <akling@apple.com>
3756
3757         Deploy RenderPtr in RenderMathMLOperator::updateFromElement().
3758         <https://webkit.org/b/126628>
3759
3760         Reviewed by Antti Koivisto.
3761
3762         * rendering/mathml/RenderMathMLOperator.cpp:
3763         (WebCore::RenderMathMLOperator::updateFromElement):
3764
3765             Use RenderPtr/createRenderer for renderer creation.
3766             Removed an unnecessary null check (text is always created.)
3767             Also use RenderStyle::createAnonymousStyleWithDisplay()
3768             helper to shorten down the code a bit.
3769
3770 2014-01-08  Alberto Garcia  <berto@igalia.com>
3771
3772         Fix some compilation warnings
3773         https://bugs.webkit.org/show_bug.cgi?id=126635
3774
3775         Reviewed by Csaba Osztrogonác.
3776
3777         Remove code that is no longer being used.
3778
3779         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3780         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
3781         * platform/gtk/PopupMenuGtk.cpp:
3782         * platform/gtk/RedirectedXCompositeWindow.h:
3783
3784 2014-01-08  Zan Dobersek  <zdobersek@igalia.com>
3785
3786         [Automake] Scripts for generated build targets do not necessarily produce their output
3787         https://bugs.webkit.org/show_bug.cgi?id=126378
3788
3789         Reviewed by Carlos Garcia Campos.
3790
3791         * GNUmakefile.am: Touch the build targets that are generated through helper scripts that don't
3792         assure the output is generated every time the script is invoked, most commonly due to unchanged
3793         * bindings/gobject/GNUmakefile.am: Simply move the gdom-gen-symbols file into the output file
3794         instead of copying it if the contents differ and removing it. This again ensures that the output
3795         file is always newer than its dependencies, even if the input hasn't changed.
3796
3797 2014-01-08  Frédéric Wang  <fred.wang@free.fr>
3798
3799         Remove invalid comments from mathtags.ing
3800         https://bugs.webkit.org/show_bug.cgi?id=126629
3801
3802         Reviewed by Chris Fleizach.
3803
3804         * mathml/mathtags.in:
3805
3806 2014-01-08  Andreas Kling  <akling@apple.com>
3807
3808         RenderMathMLRow::createAnonymousWithParentRenderer() should return RenderPtr.
3809         <https://webkit.org/b/126631>
3810
3811         Reviewed by Antti Koivisto.
3812
3813         * rendering/mathml/RenderMathMLRow.h:
3814         * rendering/mathml/RenderMathMLRow.cpp:
3815         (WebCore::RenderMathMLRow::createAnonymousWithParentRenderer):
3816
3817             Tweak to return RenderPtr<RenderMathMLRow> and removed comment(!)
3818             about how this should return a smart pointer. Also take the
3819             parent renderer as a RenderMathMLRoot& instead of a RenderObject*
3820             since that's all we ever pass.
3821
3822         * rendering/mathml/RenderMathMLRoot.cpp:
3823         (WebCore::RenderMathMLRoot::addChild):
3824
3825             Updated for new createAnonymousWithParentRenderer() signature.
3826
3827 2014-01-08  Mario Sanchez Prada  <mario.prada@samsung.com>
3828
3829         AX: Make roleValue() return DescriptionListRole for <dl> elements
3830         https://bugs.webkit.org/show_bug.cgi?id=126579
3831
3832         Reviewed by Chris Fleizach.
3833
3834         Implement AccessibilityList::roleValue() so it will return
3835         ListRole or DescriptionListRole depending on the type of list.
3836
3837         No new tests needed, as no new functionality was added and ports
3838         should still be exposing the right role for <dl> elements
3839
3840         * accessibility/AccessibilityList.cpp:
3841         (WebCore::AccessibilityList::roleValue): Implemented.
3842         * accessibility/AccessibilityList.h:
3843
3844         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3845         (atkRole): Removed extra checks for objects with ListRole role.
3846
3847 2014-01-08  Andreas Kling  <akling@apple.com>
3848
3849         createMathMLOperator() should return RenderPtr.
3850         <https://webkit.org/b/126622>
3851
3852         Reviewed by Antti Koivisto.
3853
3854         * rendering/mathml/RenderMathMLFenced.h:
3855         * rendering/mathml/RenderMathMLFenced.cpp:
3856         (WebCore::RenderMathMLFenced::createMathMLOperator):
3857
3858             Make this return a RenderPtr<RenderMathMLOperator>.
3859
3860         (WebCore::RenderMathMLFenced::makeFences):
3861         (WebCore::RenderMathMLFenced::addChild):
3862
3863             Updated for the new createMathMLOperator() signature.
3864
3865 2014-01-07  Antti Koivisto  <antti@apple.com>
3866
3867         REGRESSION (r161195): Acid2 regression tests frequently fail
3868         https://bugs.webkit.org/show_bug.cgi?id=126432
3869
3870         Reviewed by Anders Carlsson.
3871         
3872         We would occasionally dump the render tree before the actual last resource on the page was loaded.
3873         The problematic resource is an image loaded by an <object> tag nested as fallback of another <object>.
3874
3875         * html/HTMLObjectElement.cpp:
3876         (WebCore::HTMLObjectElement::renderFallbackContent):
3877         
3878             Force style recalc when rendering fallback content. The current mechanism for triggering the fallback content load
3879             requires a style recalc.
3880
3881 2014-01-07  Andreas Kling  <akling@apple.com>
3882
3883         createAnonymousMathMLBlock() should return RenderPtr.
3884         <https://webkit.org/b/126583>
3885
3886         Reviewed by Antti Koivisto.
3887
3888         * rendering/mathml/RenderMathMLBlock.h:
3889         * rendering/mathml/RenderMathMLBlock.cpp:
3890         (WebCore::RenderMathMLBlock::createAnonymousMathMLBlock):
3891
3892             Make this return a RenderPtr<RenderMathMLBlock> and removed the
3893             EDisplay argument since it was always using the default (FLEX.)
3894
3895         * rendering/mathml/RenderMathMLFraction.cpp:
3896         (WebCore::RenderMathMLFraction::addChild):
3897
3898             Updated for the new createAnonymousMathMLBlock() signature.
3899
3900 2014-01-07  Eric Carlson  <eric.carlson@apple.com>
3901
3902         Teach MediaSessionManager to manage interruptions
3903         https://bugs.webkit.org/show_bug.cgi?id=126530
3904
3905         Reviewed by Sam Weinig.
3906
3907         Tests: media/video-interruption-active-when-element-created.html
3908                media/video-interruption-with-resume-allowing-play.html
3909                media/video-interruption-with-resume-not-allowing-play.html
3910
3911         * WebCore.exp.in: Export functions needed by Internals.
3912
3913         Add MediaSession and MediaSessionManager.
3914         * CMakeLists.txt:
3915         * GNUmakefile.list.am:
3916         * WebCore.vcxproj/WebCore.vcxproj:
3917         * WebCore.vcxproj/WebCore.vcxproj.filters:
3918         * WebCore.xcodeproj/project.pbxproj:
3919
3920         Automatically pause/play for interruptions. Move media restriction management to a MediaSession.
3921         * html/HTMLMediaElement.cpp:
3922         (WebCore::HTMLMediaElement::HTMLMediaElement): Get rid of m_loadInitiatedByUserGesture and m_userStartedPlayback,
3923             they aren't needed.
3924         (WebCore::HTMLMediaElement::load): Ditto.
3925         (WebCore::HTMLMediaElement::loadInternal): Use the media session to manage restrictions.
3926         (WebCore::HTMLMediaElement::play): Remove redundant iOS code. Postpone playback if called 
3927             during an interruption.
3928         (WebCore::HTMLMediaElement::pause): Remember to not resume playback when it ends if called during
3929             an interruption.
3930         (WebCore::HTMLMediaElement::potentiallyPlaying): Rearrange code to make it easier to understand.
3931         (WebCore::HTMLMediaElement::couldPlayIfEnoughData): Ditto.
3932         (WebCore::HTMLMediaElement::pausedForUserInteraction): Return true if paused because of an interruption.
3933         (WebCore::HTMLMediaElement::removeBehaviorsRestrictionsAfterFirstUserGesture): Be explicit about
3934             which restrictions are removed.
3935         (WebCore::HTMLMediaElement::mediaType): MediaSessionManager::<Type> -> MediaSession::<Type>.
3936         (WebCore::HTMLMediaElement::beginInterruption): New.
3937         (WebCore::HTMLMediaElement::endInterruption): Ditto.
3938         * html/HTMLMediaElement.h:
3939
3940         Pulled MediaSessionManagerToken out of MediaSessionManager.cpp, added functionality to manage interruptions.
3941         * platform/audio/MediaSession.cpp: Added.
3942         (WebCore::MediaSession::create):
3943         (WebCore::MediaSession::MediaSession):
3944         (WebCore::MediaSession::~MediaSession):
3945         (WebCore::MediaSession::beginInterruption): Inform client of interruption state change.
3946         (WebCore::MediaSession::endInterruption): Ditto.
3947         * platform/audio/MediaSession.h: Added.
3948
3949         * platform/audio/MediaSessionManager.cpp:
3950         (WebCore::MediaSessionManager::MediaSessionManager): Initialize interruption counter.
3951         (WebCore::MediaSessionManager::has): MediaType is defined in MediaSession.
3952         (WebCore::MediaSessionManager::count): Ditto.
3953         (WebCore::MediaSessionManager::beginInterruption): Inform all clients of interruption start if
3954             not already in an interruption.
3955         (WebCore::MediaSessionManager::endInterruption): Inform all clients if interruption has ended.
3956         (WebCore::MediaSessionManager::addSession): Renamed from addToken. Set session interruption state.
3957         (WebCore::MediaSessionManager::removeSession): Renamed from removeToken.
3958         * platform/audio/MediaSessionManager.h:
3959
3960         * platform/audio/mac/AudioDestinationMac.cpp:
3961         (WebCore::AudioDestinationMac::AudioDestinationMac): MediaSessionManagerToken -> MediaSession.
3962         * platform/audio/mac/AudioDestinationMac.h:
3963
3964         * platform/audio/mac/MediaSessionManagerMac.cpp:
3965         (MediaSessionManager::updateSessionState): Ditto.
3966
3967         Make it possible for tests to begin and end interruptions.
3968         * testing/Internals.cpp:
3969         (WebCore::Internals::beginMediaSessionInterruption):
3970         (WebCore::Internals::endMediaSessionInterruption):
3971         * testing/Internals.h:
3972         * testing/Internals.idl:
3973
3974 2014-01-07  Seokju Kwon  <seokju@webkit.org>
3975
3976         Web Inspector: Remove leftover 'device metrics' code
3977         https://bugs.webkit.org/show_bug.cgi?id=126607
3978
3979         Reviewed by Joseph Pecoraro.
3980
3981         No new tests, No changes in behavior.
3982
3983         Removes unused code related to 'device metrics'.
3984
3985         * css/MediaQueryEvaluator.cpp:
3986         (WebCore::device_heightMediaFeatureEval):
3987         (WebCore::device_widthMediaFeatureEval):
3988         * inspector/InspectorClient.h:
3989         * inspector/InspectorInstrumentation.cpp:
3990         * inspector/InspectorInstrumentation.h:
3991         * inspector/InspectorPageAgent.cpp:
3992         (WebCore::InspectorPageAgent::InspectorPageAgent):
3993         (WebCore::InspectorPageAgent::disable):
3994         (WebCore::InspectorPageAgent::didLayout):
3995         * inspector/InspectorPageAgent.h:
3996         * page/DOMWindow.cpp:
3997         (WebCore::DOMWindow::innerHeight):
3998         (WebCore::DOMWindow::innerWidth):
3999         * page/Screen.cpp:
4000         (WebCore::Screen::height):
4001         (WebCore::Screen::width):
4002         * rendering/TextAutosizer.cpp:
4003         (WebCore::TextAutosizer::processSubtree):
4004
4005 2014-01-02  Andy Estes  <aestes@apple.com>
4006
4007         [iOS] Upstream remainder of minimal-ui viewport changes
4008         https://bugs.webkit.org/show_bug.cgi?id=126410
4009
4010         Reviewed by Sam Weinig.
4011
4012         * dom/ViewportArguments.h:
4013
4014 2014-01-07  Victor Costan  <costan@gmail.com>
4015
4016         createElementNS handles element name 'xmlns' correctly.
4017         https://bugs.webkit.org/show_bug.cgi?id=126553
4018
4019         Reviewed by Alexey Proskuryakov.
4020
4021         Tests: fast/dom/createElementNS-namespace-errors.html
4022                fast/dom/setAttributeNS-namespace-errors.html
4023
4024         * dom/Document.cpp:
4025         (WebCore::Document::hasValidNamespaceForElements): updated to match DOM3/DOM4 spec.
4026         (WebCore::Document::hasValidNamespaceForAttributes): updated to match DOM3/DOM4 spec.
4027
4028 2014-01-07  Jer Noble  <jer.noble@apple.com>
4029
4030         PlatformLayer containing scrollbars does not disappear when setting overflow:hidden on page root, until resize.
4031         https://bugs.webkit.org/show_bug.cgi?id=116051
4032
4033         Reviewed by Simon Fraser.
4034
4035         Move the pre-existing call to addedOrRemovedScrollbar() outside of the else-statement
4036         in updateScrollbars() so that changes made in the if-statement cause the scrollbar
4037         layers to be updated. The scrollbarAddedOrRemoved local variable guarding access to
4038         addedOrRemovedScrollbar() is already being set (but never checked) inside the if-statement.
4039
4040         * platform/ScrollView.cpp:
4041  &n