text-decoration-skip: ink does not work with line wraps
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2014-01-09  Myles C. Maxfield  <mmaxfield@apple.com>
2
3         text-decoration-skip: ink does not work with line wraps
4         https://bugs.webkit.org/show_bug.cgi?id=126729
5
6         Reviewed by Simon Fraser.
7
8         InlineTextBox's m_start and m_length fields are offsets into the renderer's string,
9         not the generated TextRun. Because of this distinction, when multiple InlineTextBoxes
10         were constructed for the same element, all the subsequent elements would use incorrect
11         indices and therefore not have skipping decorations.
12
13         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-ink-multiline.html
14
15         * platform/graphics/Font.h:
16         * platform/graphics/mac/FontMac.mm:
17         (WebCore::Font::dashesForIntersectionsWithRect):
18         * rendering/InlineTextBox.cpp:
19         (WebCore::drawSkipInkUnderline):
20         (WebCore::InlineTextBox::paintDecoration):
21         * rendering/TextPainter.cpp:
22         (WebCore::TextPainter::dashesForIntersectionsWithRect):
23         * rendering/TextPainter.h:
24
25 2014-01-09  Benjamin Poulain  <bpoulain@apple.com>
26
27         Remove remaining blackberry files I could find in WebCore
28         https://bugs.webkit.org/show_bug.cgi?id=126715
29
30         Reviewed by Anders Carlsson.
31
32         * PlatformBlackBerry.cmake: Removed.
33         * Resources/blackberry: Removed.
34         * css/mediaControlsBlackBerry.css: Removed.
35         * css/mediaControlsBlackBerryFullscreen.css: Removed.
36         * css/themeBlackBerry.css: Removed.
37         * editing/blackberry: Removed.
38         * history/blackberry: Removed.
39         * html/shadow/MediaControlsBlackBerry.cpp: Removed.
40         * html/shadow/MediaControlsBlackBerry.h: Removed.
41         * page/blackberry: Removed.
42         * page/scrolling/blackberry: Removed.
43         * plugins/blackberry: Removed.
44
45 2014-01-09  Brent Fulgham  <bfulgham@apple.com>
46
47         [WebGL] Return filtered results for getProgramParameter for ACTIVE_ATTRIBUTES and ACTIVE_UNIFORMS
48         https://bugs.webkit.org/show_bug.cgi?id=126718
49         <rdar://problem/15202048>
50
51         Reviewed by Dean Jackson.
52
53         Covered by webgl/conformance/ogles/GL/biuDepthRange/biuDepthRange_001_to_002.html and
54         webgl/conformance/ogles/GL/gl_FragCoord/gl_FragCoord_001_to_003.html.
55
56         * html/canvas/WebGLRenderingContext.cpp:
57         (WebCore::WebGLRenderingContext::getActiveAttrib): Added loging.
58         (WebCore::WebGLRenderingContext::getActiveUniform): Added logging.
59         (WebCore::WebGLRenderingContext::getAttribLocation): Drive-by-fix. Return
60         -1 on link failure (an invalid location) rather than 0 (a valid
61         location) when link fails.
62         (WebCore::WebGLRenderingContext::getProgramParameter): Use new
63         method to return filtered count.
64         (WebCore::WebGLRenderingContext::getUniformLocation): Use nullptr
65         rather than returning 0.
66         * platform/graphics/GraphicsContext3D.h:
67         (WebCore::GraphicsContext3D::ActiveShaderSymbolCounts::ActiveShaderSymbolCounts):
68         (WebCore::GraphicsContext3D::ActiveShaderSymbolCounts::countForType):
69         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
70         (WebCore::GraphicsContext3D::precisionsMatch): Drive-by-fix. Don't
71         copy giant objects to read a single value.
72         (WebCore::GraphicsContext3D::compileShader): Release filtered count
73         when we change shader source code.
74         (WebCore::GraphicsContext3D::getActiveAttribImpl): Renamed from getActiveAttrib.
75         (WebCore::GraphicsContext3D::getActiveAttrib): Maps filtered indices to
76         real OpenGL indices.
77         (WebCore::GraphicsContext3D::getActiveUniformImpl): Renamed from getActiveUniform.
78         (WebCore::GraphicsContext3D::getActiveUniform): Maps filtered indices to
79         real OpenGL indices.
80         (WebCore::GraphicsContext3D::originalSymbolName): Use C++11 loop.
81         (WebCore::GraphicsContext3D::getAttribLocation): Added logging.
82         (WebCore::GraphicsContext3D::getNonBuiltinActiveSymbolCount): Added.
83         (WebCore::GraphicsContext3D::getShaderiv): Const correctness.
84         (WebCore::GraphicsContext3D::getShaderInfoLog): Ditto.
85         (WebCore::GraphicsContext3D::getShaderSource): Ditto.
86
87 2014-01-09  Zoltan Horvath  <zoltan@webkit.org>
88
89         [CSS Shapes] First line gets incorrectly adjusted in shape-inside due to rounding
90         https://bugs.webkit.org/show_bug.cgi?id=126601
91
92         Reviewed by Bem Jones-Bey.
93
94         In order to get consistent results of the first fit position of the content in shapes,
95         firstIncludedIntervalLogicalTop should take a FloatSize rather than LayoutSize for
96         minLogicalIntervalSize, because LayoutSize clamps the float value to int, when subpixel-layout
97         is disabled, thus firstIncludedIntervalLogicalTop could end up calculating with an unprecize
98         value. This change modifies firstIncludedIntervalLogicalTop to take FloatSize consistently.
99
100         Test: fast/shapes/shape-inside/shape-inside-polygon-rounded-first-fit.html
101
102         * rendering/shapes/BoxShape.cpp:
103         (WebCore::BoxShape::firstIncludedIntervalLogicalTop):
104         * rendering/shapes/BoxShape.h:
105         * rendering/shapes/PolygonShape.cpp:
106         (WebCore::PolygonShape::firstIncludedIntervalLogicalTop):
107         * rendering/shapes/PolygonShape.h:
108         * rendering/shapes/RasterShape.cpp:
109         (WebCore::RasterShape::firstIncludedIntervalLogicalTop):
110         * rendering/shapes/RasterShape.h:
111         * rendering/shapes/RectangleShape.cpp:
112         (WebCore::RectangleShape::firstIncludedIntervalLogicalTop):
113         * rendering/shapes/RectangleShape.h:
114         * rendering/shapes/Shape.h:
115         * rendering/shapes/ShapeInsideInfo.cpp:
116         (WebCore::ShapeInsideInfo::adjustLogicalLineTop):
117         (WebCore::ShapeInsideInfo::computeFirstFitPositionForFloat):
118
119 2014-01-09  Andy Estes  <aestes@apple.com>
120
121         [iOS] Upstream WAK
122         https://bugs.webkit.org/show_bug.cgi?id=126724
123
124         Reviewed by David Kilzer.
125
126         * Configurations/WebCore.xcconfig: Excluded new iOS-specific Private
127         headers on the Mac build.
128         * WebCore.xcodeproj/project.pbxproj: Added new files to the project.
129         * platform/ios/wak/WAKAppKitStubs.h: Added.
130         * platform/ios/wak/WAKAppKitStubs.m: Added.
131         * platform/ios/wak/WAKClipView.h: Added.
132         * platform/ios/wak/WAKClipView.m: Added.
133         * platform/ios/wak/WAKResponder.h: Added.
134         * platform/ios/wak/WAKResponder.m: Added.
135         * platform/ios/wak/WAKScrollView.h: Added.
136         * platform/ios/wak/WAKScrollView.mm: Added.
137         * platform/ios/wak/WAKView.h: Added.
138         * platform/ios/wak/WAKView.mm: Added.
139         * platform/ios/wak/WAKViewPrivate.h: Added.
140         * platform/ios/wak/WAKWindow.h: Added.
141         * platform/ios/wak/WAKWindow.mm: Added.
142         * platform/ios/wak/WKContentObservation.cpp: Added.
143         * platform/ios/wak/WKContentObservation.h: Added.
144         * platform/ios/wak/WKGraphics.h: Added.
145         * platform/ios/wak/WKGraphics.mm: Added.
146         * platform/ios/wak/WKTypes.h: Added.
147         * platform/ios/wak/WKUtilities.c: Added.
148         * platform/ios/wak/WKUtilities.h: Added.
149         * platform/ios/wak/WKView.h: Added.
150         * platform/ios/wak/WKView.mm: Added.
151         * platform/ios/wak/WKViewPrivate.h: Added.
152         * platform/ios/wak/WebCoreThread.h: Added.
153         * platform/ios/wak/WebCoreThread.mm: Added.
154         * platform/ios/wak/WebCoreThreadInternal.h: Added.
155         * platform/ios/wak/WebCoreThreadMessage.h: Added.
156         * platform/ios/wak/WebCoreThreadRun.cpp: Added.
157         * platform/ios/wak/WebCoreThreadRun.h: Added.
158         * platform/ios/wak/WebCoreThreadSafe.h: Added.
159         * platform/ios/wak/WebCoreThreadSystemInterface.cpp: Added.
160         * platform/ios/wak/WebCoreThreadSystemInterface.h: Added.
161
162 2014-01-09  Daniel Bates  <dabates@apple.com>
163
164         Another attempt to fix the Windows build following <http://trac.webkit.org/changeset/161589>
165         (https://bugs.webkit.org/show_bug.cgi?id=126654)
166
167         * platform/network/cf/ResourceRequest.h: Always declare ResourceRequest::updateFromDelegatePreservingOldHTTPBody()
168         instead of only declaring it when building without CFNetwork.
169
170 2014-01-09  Daniel Bates  <dabates@apple.com>
171
172         Attempt to fix the Windows build following <http://trac.webkit.org/changeset/161589>
173         (https://bugs.webkit.org/show_bug.cgi?id=126654)
174
175         For some reason, the Windows build is unhappy that NeverDestroyed<FontCache> calls the private constructor
176         FontCache::FontCache() despite being a friend class of FontCache. Use DEFINE_STATIC_LOCAL instead of
177         NeverDestroyed<> for now. I'll look to investigate this issue offline.
178
179         * platform/graphics/FontCache.cpp:
180         (WebCore::fontCache):
181         * platform/graphics/FontCache.h:
182
183 2014-01-09  Benjamin Poulain  <bpoulain@apple.com>
184
185         Remove blackberry from WebCore/platform
186         https://bugs.webkit.org/show_bug.cgi?id=126715
187
188         Reviewed by Anders Carlsson.
189
190         * platform/blackberry: Removed.
191         * platform/graphics/blackberry: Removed.
192         * platform/graphics/filters/blackberry: Removed.
193         * platform/image-decoders/blackberry: Removed.
194         * platform/mediastream/blackberry: Removed.
195         * platform/network/blackberry: Removed.
196         * platform/text/blackberry: Removed.
197
198 2014-01-09  Alexey Proskuryakov  <ap@apple.com>
199
200         Fix a copy-paste mistake in an include guard.
201
202         Rubber-stamped by Sam Weinig.
203
204         * crypto/parameters/CryptoAlgorithmRsaKeyParamsWithHash.h:
205
206 2014-01-09  Anders Carlsson  <andersca@apple.com>
207
208         History::StateObjectType should be a strong enum
209         https://bugs.webkit.org/show_bug.cgi?id=126725
210
211         Reviewed by Beth Dakin.
212
213         * bindings/js/JSHistoryCustom.cpp:
214         (WebCore::JSHistory::pushState):
215         (WebCore::JSHistory::replaceState):
216         * loader/HistoryController.cpp:
217         (WebCore::HistoryController::pushState):
218         * page/History.cpp:
219         (WebCore::History::stateObjectAdded):
220         * page/History.h:
221
222 2014-01-09  Daniel Bates  <dabates@apple.com>
223
224         Attempt to fix the Mountain Lion Release (32-bit) build following <http://trac.webkit.org/changeset/161589>
225         (https://bugs.webkit.org/show_bug.cgi?id=126654)
226
227         * platform/ios/WebEvent.h:
228         * platform/ios/WebEvent.mm:
229
230 2014-01-09  Daniel Bates  <dabates@apple.com>
231
232         [iOS] Upstream WebCore/platform changes
233         https://bugs.webkit.org/show_bug.cgi?id=126654
234
235         Rubber-stamped by David Kilzer.
236
237         * WebCore.exp.in:
238         * WebCore.xcodeproj/project.pbxproj:
239         * platform/ContentFilter.h:
240         * platform/DragData.h:
241         * platform/FileChooser.cpp:
242         (WebCore::FileChooser::chooseMediaFiles):
243         * platform/FileChooser.h:
244         * platform/FileSystem.cpp:
245         (WebCore::setMetadataURL):
246         * platform/FileSystem.h:
247         * platform/KillRingNone.cpp:
248         * platform/LocalizedStrings.cpp:
249         (WebCore::fileButtonChooseMediaFileLabel):
250         (WebCore::fileButtonChooseMultipleMediaFilesLabel):
251         (WebCore::fileButtonNoMediaFileSelectedLabel):
252         (WebCore::fileButtonNoMediaFilesSelectedLabel):
253         * platform/LocalizedStrings.h:
254         * platform/Logging.h:
255         * platform/MIMETypeRegistry.cpp:
256         (WebCore::initializeSupportedImageMIMETypes):
257         (WebCore::initializeSupportedNonImageMimeTypes):
258         (WebCore::initializeUnsupportedTextMIMETypes):
259         * platform/MemoryPressureHandler.cpp:
260         (WebCore::MemoryPressureHandler::MemoryPressureHandler):
261         * platform/MemoryPressureHandler.h:
262         * platform/PlatformKeyboardEvent.h:
263         (WebCore::PlatformKeyboardEvent::event):
264         * platform/PlatformMouseEvent.h:
265         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
266         * platform/PlatformScreen.h:
267         * platform/RuntimeApplicationChecks.cpp:
268         (WebCore::mainBundleIsEqualTo):
269         * platform/RuntimeApplicationChecksIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
270         * platform/RuntimeApplicationChecksIOS.mm: Added.
271         * platform/ScrollAnimator.cpp:
272         (WebCore::ScrollAnimator::handleTouchEvent):
273         * platform/ScrollAnimator.h:
274         * platform/ScrollTypes.h:
275         * platform/ScrollView.cpp:
276         (WebCore::ScrollView::unscaledVisibleContentSize):
277         (WebCore::ScrollView::visibleContentRect):
278         * platform/ScrollView.h:
279         (WebCore::ScrollView::actualScrollX):
280         (WebCore::ScrollView::actualScrollY):
281         * platform/ScrollableArea.cpp:
282         (WebCore::ScrollableArea::handleTouchEvent):
283         (WebCore::ScrollableArea::isPinnedInBothDirections):
284         (WebCore::ScrollableArea::isPinnedHorizontallyInDirection):
285         (WebCore::ScrollableArea::isPinnedVerticallyInDirection):
286         * platform/ScrollableArea.h:
287         (WebCore::ScrollableArea::isTouchScrollable):
288         (WebCore::ScrollableArea::isOverflowScroll):
289         (WebCore::ScrollableArea::didStartScroll):
290         (WebCore::ScrollableArea::didEndScroll):
291         (WebCore::ScrollableArea::didUpdateScroll):
292         (WebCore::ScrollableArea::setIsUserScroll):
293         (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMinimumPosition):
294         (WebCore::ScrollableArea::isHorizontalScrollerPinnedToMaximumPosition):
295         (WebCore::ScrollableArea::isVerticalScrollerPinnedToMinimumPosition):
296         (WebCore::ScrollableArea::isVerticalScrollerPinnedToMaximumPosition):
297         * platform/Scrollbar.cpp:
298         * platform/Scrollbar.h:
299         * platform/SharedBuffer.cpp:
300         (WebCore::SharedBuffer::SharedBuffer):
301         (WebCore::SharedBuffer::createPurgeableBuffer):
302         (WebCore::SharedBuffer::data):
303         * platform/SharedBuffer.h:
304         (WebCore::SharedBuffer::shouldUsePurgeableMemory):
305         * platform/SuddenTermination.h:
306         * platform/Supplementable.h:
307         (WebCore::Supplementable::provideSupplement):
308         (WebCore::Supplementable::removeSupplement):
309         (WebCore::Supplementable::requireSupplement):
310         * platform/SystemMemory.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
311         * platform/ThreadCheck.h:
312         * platform/ThreadGlobalData.cpp:
313         (WebCore::ThreadGlobalData::ThreadGlobalData):
314         (WebCore::ThreadGlobalData::destroy):
315         (WebCore::ThreadGlobalData::setWebCoreThreadData):
316         (WebCore::threadGlobalData):
317         * platform/ThreadGlobalData.h:
318         * platform/ThreadTimers.cpp:
319         (WebCore::ThreadTimers::ThreadTimers):
320         (WebCore::ThreadTimers::sharedTimerFiredInternal):
321         * platform/Timer.cpp:
322         (WebCore::TimerBase::start):
323         (WebCore::TimerBase::stop):
324         (WebCore::TimerBase::setNextFireTime):
325         * platform/Timer.h:
326         (WebCore::TimerBase::isActive):
327         * platform/URL.cpp:
328         (WebCore::enableURLSchemeCanonicalization):
329         (WebCore::equal):
330         (WebCore::URL::parse):
331         * platform/URL.h:
332         * platform/Widget.h:
333         * platform/audio/ios/AudioDestinationIOS.cpp:
334         * platform/audio/ios/AudioDestinationIOS.h:
335         * platform/audio/ios/AudioFileReaderIOS.cpp: Copied from Source/WebCore/platform/audio/mac/AudioFileReaderMac.cpp.
336         (WebCore::createAudioBufferList):
337         (WebCore::destroyAudioBufferList):
338         (WebCore::AudioFileReader::AudioFileReader):
339         (WebCore::AudioFileReader::~AudioFileReader):
340         (WebCore::AudioFileReader::readProc):
341         (WebCore::AudioFileReader::getSizeProc):
342         (WebCore::AudioFileReader::createBus):
343         (WebCore::createBusFromAudioFile):
344         (WebCore::createBusFromInMemoryAudioFile):
345         * platform/audio/ios/AudioFileReaderIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
346         (WebCore::AudioFileReader::data):
347         (WebCore::AudioFileReader::dataSize):
348         * platform/audio/ios/AudioSessionIOS.mm:
349         (SOFT_LINK_POINTER):
350         (-[WebAudioSessionHelper initWithCallback:WebCore::]):
351         (-[WebAudioSessionHelper dealloc]):
352         (-[WebAudioSessionHelper interruption:]):
353         (WebCore::AudioSession::setCategory):
354         * platform/audio/mac/AudioDestinationMac.cpp:
355         * platform/audio/mac/AudioFileReaderMac.cpp:
356         (WebCore::AudioFileReader::AudioFileReader):
357         (WebCore::createBusFromAudioFile):
358         (WebCore::createBusFromInMemoryAudioFile):
359         * platform/audio/mac/AudioSessionMac.cpp:
360         * platform/audio/mac/MediaSessionManagerMac.cpp:
361         (MediaSessionManager::updateSessionState):
362         * platform/cf/SharedBufferCF.cpp:
363         (WebCore::SharedBuffer::SharedBuffer):
364         * platform/cf/URLCF.cpp:
365         * platform/cocoa/KeyEventCocoa.mm:
366         (WebCore::windowsKeyCodeForCharCode):
367         * platform/graphics/BitmapImage.cpp:
368         (WebCore::BitmapImage::BitmapImage):
369         (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
370         (WebCore::BitmapImage::cacheFrame):
371         (WebCore::BitmapImage::cacheFrameInfo):
372         (WebCore::BitmapImage::updateSize):
373         (WebCore::BitmapImage::originalSize):
374         (WebCore::BitmapImage::originalSizeRespectingOrientation):
375         (WebCore::BitmapImage::dataChanged):
376         (WebCore::BitmapImage::ensureFrameInfoIsCached):
377         (WebCore::BitmapImage::frameAtIndex):
378         (WebCore::BitmapImage::frameIsCompleteAtIndex):
379         (WebCore::BitmapImage::frameDurationAtIndex):
380         (WebCore::BitmapImage::frameHasAlphaAtIndex):
381         (WebCore::BitmapImage::frameOrientationAtIndex):
382         (WebCore::BitmapImage::startAnimation):
383         (WebCore::BitmapImage::internalAdvanceAnimation):
384         * platform/graphics/BitmapImage.h:
385         (WebCore::FrameData::FrameData):
386         * platform/graphics/Color.cpp:
387         (WebCore::Color::isDark):
388         * platform/graphics/Color.h:
389         * platform/graphics/DisplayRefreshMonitor.h:
390         * platform/graphics/FloatPoint.h:
391         * platform/graphics/FloatRect.h:
392         * platform/graphics/FloatSize.h:
393         * platform/graphics/Font.cpp:
394         (WebCore::Font::drawText):
395         (WebCore::Font::width):
396         * platform/graphics/Font.h:
397         * platform/graphics/FontCache.cpp:
398         (initFontCacheLockOnce):
399         (FontLocker::FontLocker):
400         (FontLocker::~FontLocker):
401         (WebCore::fontCache):
402         (WebCore::FontCache::getCachedFontPlatformData):
403         (WebCore::FontCache::getCachedFontData):
404         (WebCore::FontCache::releaseFontData):
405         (WebCore::FontCache::purgeInactiveFontDataIfNeeded):
406         (WebCore::FontCache::purgeInactiveFontData):
407         * platform/graphics/FontCache.h:
408         * platform/graphics/FontFastPath.cpp:
409         (WebCore::Font::drawSimpleText):
410         (WebCore::Font::drawGlyphBuffer):
411         * platform/graphics/FontGlyphs.h:
412         * platform/graphics/FontPlatformData.cpp:
413         (WebCore::FontPlatformData::FontPlatformData):
414         * platform/graphics/FontPlatformData.h:
415         (WebCore::FontPlatformData::font):
416         (WebCore::FontPlatformData::roundsGlyphAdvances):
417         (WebCore::FontPlatformData::hash):
418         (WebCore::FontPlatformData::hashTableDeletedFontValue):
419         * platform/graphics/GlyphPageTreeNode.cpp:
420         (WebCore::GlyphPageTreeNode::initializePage):
421         * platform/graphics/GraphicsContext.cpp:
422         (WebCore::GraphicsContext::GraphicsContext):
423         (WebCore::GraphicsContext::drawRaisedEllipse):
424         (WebCore::GraphicsContext::drawText):
425         (WebCore::GraphicsContext::drawBidiText):
426         (WebCore::GraphicsContext::clipRoundedRect):
427         (WebCore::GraphicsContext::emojiDrawingEnabled):
428         (WebCore::GraphicsContext::setEmojiDrawingEnabled):
429         * platform/graphics/GraphicsContext.h:
430         (WebCore::GraphicsContextState::GraphicsContextState):
431         * platform/graphics/GraphicsContext3D.h:
432         * platform/graphics/GraphicsLayer.cpp:
433         (WebCore::GraphicsLayer::willBeDestroyed):
434         * platform/graphics/GraphicsLayer.h:
435         (WebCore::GraphicsLayer::contentsLayerForMedia):
436         (WebCore::GraphicsLayer::pixelAlignmentOffset):
437         (WebCore::GraphicsLayer::hasFlattenedPerspectiveTransform):
438         * platform/graphics/Icon.h:
439         * platform/graphics/Image.cpp:
440         (WebCore::Image::drawTiled):
441         * platform/graphics/ImageSource.h:
442         (WebCore::ImageSource::isSubsampled):
443         * platform/graphics/IntPoint.h:
444         * platform/graphics/IntRect.h:
445         * platform/graphics/IntSize.h:
446         * platform/graphics/MediaPlayer.cpp:
447         (WebCore::installedMediaEngines):
448         (WebCore::MediaPlayer::isCurrentPlaybackTargetWireless):
449         (WebCore::MediaPlayer::showPlaybackTargetPicker):
450         (WebCore::MediaPlayer::hasWirelessPlaybackTargets):
451         (WebCore::MediaPlayer::wirelessVideoPlaybackDisabled):
452         (WebCore::MediaPlayer::setWirelessVideoPlaybackDisabled):
453         (WebCore::MediaPlayer::setHasPlaybackTargetAvailabilityListeners):
454         (WebCore::MediaPlayer::currentPlaybackTargetIsWirelessChanged):
455         (WebCore::MediaPlayer::playbackTargetAvailabilityChanged):
456         (WebCore::MediaPlayer::attributeChanged):
457         (WebCore::MediaPlayer::readyForPlayback):
458         (WebCore::MediaPlayer::volumeChanged):
459         * platform/graphics/MediaPlayer.h:
460         (WebCore::MediaPlayerClient::mediaPlayerCurrentPlaybackTargetIsWirelessChanged):
461         (WebCore::MediaPlayerClient::mediaPlayerPlaybackTargetAvailabilityChanged):
462         * platform/graphics/MediaPlayerPrivate.h:
463         (WebCore::MediaPlayerPrivateInterface::volume):
464         (WebCore::MediaPlayerPrivateInterface::isCurrentPlaybackTargetWireless):
465         (WebCore::MediaPlayerPrivateInterface::showPlaybackTargetPicker):
466         (WebCore::MediaPlayerPrivateInterface::hasWirelessPlaybackTargets):
467         (WebCore::MediaPlayerPrivateInterface::wirelessVideoPlaybackDisabled):
468         (WebCore::MediaPlayerPrivateInterface::setWirelessVideoPlaybackDisabled):
469         (WebCore::MediaPlayerPrivateInterface::setHasPlaybackTargetAvailabilityListeners):
470         (WebCore::MediaPlayerPrivateInterface::attributeChanged):
471         (WebCore::MediaPlayerPrivateInterface::readyForPlayback):
472         * platform/graphics/SimpleFontData.cpp:
473         (WebCore::SimpleFontData::SimpleFontData):
474         * platform/graphics/SimpleFontData.h:
475         * platform/graphics/StringTruncator.cpp:
476         (WebCore::centerTruncateToBuffer):
477         (WebCore::rightTruncateToBuffer):
478         (WebCore::rightClipToCharacterBuffer):
479         (WebCore::rightClipToWordBuffer):
480         (WebCore::leftTruncateToBuffer):
481         (WebCore::truncateString):
482         (WebCore::StringTruncator::centerTruncate):
483         (WebCore::StringTruncator::rightTruncate):
484         (WebCore::StringTruncator::leftTruncate):
485         (WebCore::StringTruncator::rightClipToCharacter):
486         (WebCore::StringTruncator::rightClipToWord):
487         * platform/graphics/StringTruncator.h:
488         * platform/graphics/TextTrackRepresentation.cpp:
489         * platform/graphics/WidthIterator.h:
490         (WebCore::WidthIterator::supportsTypesettingFeatures):
491         * platform/graphics/avfoundation/AVTrackPrivateAVFObjCImpl.mm:
492         (WebCore::AVTrackPrivateAVFObjCImpl::label):
493         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
494         (WebCore::MediaPlayerPrivateAVFoundationObjC::platformMaxTimeLoaded):
495         (WebCore::wkAVAssetResolvedURL):
496         * platform/graphics/blackberry/FontBlackBerry.cpp:
497         (WebCore::Font::drawComplexText):
498         * platform/graphics/ca/GraphicsLayerCA.cpp:
499         (WebCore::supportsAcceleratedFilterAnimations):
500         (WebCore::GraphicsLayerCA::setContentsToImage):
501         (WebCore::GraphicsLayerCA::contentsLayerForMedia):
502         (WebCore::GraphicsLayerCA::computeVisibleRect):
503         (WebCore::GraphicsLayerCA::updateGeometry):
504         (WebCore::GraphicsLayerCA::ensureStructuralLayer):
505         (WebCore::GraphicsLayerCA::updateContentsRects):
506         (WebCore::GraphicsLayerCA::createTransformAnimationsFromKeyframes):
507         (WebCore::GraphicsLayerCA::setupContentsLayer):
508         (WebCore::GraphicsLayerCA::mediaLayerMustBeUpdatedOnMainThread):
509         (WebCore::GraphicsLayerCA::computePixelAlignment):
510         * platform/graphics/ca/GraphicsLayerCA.h:
511         * platform/graphics/ca/PlatformCAFilters.h:
512         * platform/graphics/ca/PlatformCALayer.h:
513         * platform/graphics/ca/mac/LayerFlushSchedulerMac.cpp:
514         (WebCore::currentRunLoop):
515         (WebCore::LayerFlushScheduler::schedule):
516         * platform/graphics/ca/mac/PlatformCALayerMac.mm:
517         (-[WebAnimationDelegate animationDidStart:]):
518         (PlatformCALayerMac::setContentsScale):
519         (PlatformCALayer::isWebLayer):
520         (PlatformCALayer::setBoundsOnMainThread):
521         (PlatformCALayer::setPositionOnMainThread):
522         (PlatformCALayer::setAnchorPointOnMainThread):
523         (PlatformCALayer::setTileSize):
524         * platform/graphics/ca/mac/TileController.mm:
525         (WebCore::TileController::platformCALayerPaintContents):
526         (WebCore::TileController::removeAllTiles):
527         (WebCore::TileController::removeAllSecondaryTiles):
528         (WebCore::TileController::removeTilesInCohort):
529         (WebCore::TileController::revalidateTiles):
530         (WebCore::TileController::createTileLayer):
531         * platform/graphics/cairo/FontCairoHarfbuzzNG.cpp:
532         (WebCore::Font::drawComplexText):
533         * platform/graphics/cg/BitmapImageCG.cpp:
534         (WebCore::FrameData::clear):
535         (WebCore::BitmapImage::BitmapImage):
536         (WebCore::BitmapImage::checkForSolidColor):
537         (WebCore::BitmapImage::draw):
538         (WebCore::BitmapImage::copyUnscaledFrameAtIndex):
539         * platform/graphics/cg/ColorCG.cpp:
540         (WebCore::createCGColorWithDeviceWhite):
541         (WebCore::createCGColorWithDeviceRGBA):
542         (WebCore::Color::Color):
543         * platform/graphics/cg/FloatPointCG.cpp:
544         * platform/graphics/cg/FloatRectCG.cpp:
545         * platform/graphics/cg/FloatSizeCG.cpp:
546         * platform/graphics/cg/GradientCG.cpp:
547         * platform/graphics/cg/GraphicsContextCG.cpp:
548         (WebCore::sRGBColorSpaceRef):
549         (WebCore::setStrokeAndFillColor):
550         (WebCore::GraphicsContext::platformInit):
551         * platform/graphics/cg/ImageBufferCG.cpp:
552         (WebCore::createIOSurface):
553         (WebCore::ImageBuffer::ImageBuffer):
554         (WebCore::ImageBuffer::draw):
555         (WebCore::jpegUTI):
556         (WebCore::utiFromMIMEType):
557         * platform/graphics/cg/ImageBufferDataCG.cpp:
558         (WebCore::ImageBufferData::getData):
559         (WebCore::ImageBufferData::putData):
560         * platform/graphics/cg/ImageBufferDataCG.h:
561         * platform/graphics/cg/ImageCG.cpp:
562         (WebCore::drawPatternCallback):
563         (WebCore::Image::drawPattern):
564         * platform/graphics/cg/ImageSourceCG.cpp:
565         (WebCore::ImageSource::ImageSource):
566         (WebCore::imageSourceOptions):
567         (WebCore::ImageSource::imageSourceOptions):
568         (WebCore::ImageSource::frameSizeAtIndex):
569         (WebCore::ImageSource::originalSize):
570         (WebCore::ImageSource::createFrameAtIndex):
571         * platform/graphics/cg/ImageSourceCGMac.mm:
572         * platform/graphics/cg/IntPointCG.cpp:
573         * platform/graphics/cg/IntRectCG.cpp:
574         * platform/graphics/cg/IntSizeCG.cpp:
575         * platform/graphics/cg/PDFDocumentImage.cpp:
576         * platform/graphics/cg/PathCG.cpp:
577         * platform/graphics/cg/PatternCG.cpp:
578         * platform/graphics/cocoa/FontPlatformDataCocoa.mm:
579         (WebCore::FontPlatformData::FontPlatformData):
580         (WebCore::FontPlatformData::~FontPlatformData):
581         (WebCore::FontPlatformData::platformDataInit):
582         (WebCore::FontPlatformData::platformDataAssign):
583         (WebCore::FontPlatformData::platformIsEqual):
584         (WebCore::FontPlatformData::setFont):
585         (WebCore::FontPlatformData::allowsLigatures):
586         (WebCore::FontPlatformData::ctFont):
587         * platform/graphics/ios/DisplayRefreshMonitorIOS.mm: Added.
588         (WebCore::DisplayRefreshMonitor::~DisplayRefreshMonitor):
589         (WebCore::DisplayRefreshMonitor::requestRefreshCallback):
590         (WebCore::DisplayRefreshMonitor::displayLinkFired):
591         * platform/graphics/ios/FontCacheIOS.mm: Added.
592         * platform/graphics/ios/FontServicesIOS.h: Added.
593         * platform/graphics/ios/FontServicesIOS.mm: Added.
594         (WebCore::FontServicesIOS::FontServicesIOS):
595         * platform/graphics/ios/GraphicsContext3DIOS.h: Added.
596         * platform/graphics/ios/IconIOS.mm: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.cpp.
597         * platform/graphics/ios/InbandTextTrackPrivateAVFIOS.h: Copied from Source/WebCore/platform/graphics/cg/ImageBufferDataCG.h.
598         (WebCore::InbandTextTrackPrivateAVFIOS::create):
599         (WebCore::InbandTextTrackPrivateAVFIOS::internalID):
600         * platform/graphics/ios/InbandTextTrackPrivateAVFIOS.mm: Copied from Source/WebCore/platform/graphics/mac/IntRectMac.mm.
601         (WebCore::InbandTextTrackPrivateAVFIOS::InbandTextTrackPrivateAVFIOS):
602         (WebCore::InbandTextTrackPrivateAVFIOS::~InbandTextTrackPrivateAVFIOS):
603         (WebCore::InbandTextTrackPrivateAVFIOS::kind):
604         * platform/graphics/ios/MediaPlayerPrivateIOS.h: Added.
605         * platform/graphics/ios/MediaPlayerPrivateIOS.mm: Added.
606         * platform/graphics/ios/SimpleFontDataIOS.mm: Added.
607         (WebCore::fontFamilyShouldNotBeUsedForArabic):
608         (WebCore::fontHasVerticalGlyphs):
609         (WebCore::SimpleFontData::platformInit):
610         (WebCore::SimpleFontData::platformCharWidthInit):
611         (WebCore::SimpleFontData::platformCreateScaledFontData):
612         (WebCore::SimpleFontData::containsCharacters):
613         (WebCore::SimpleFontData::determinePitch):
614         (WebCore::SimpleFontData::platformWidthForGlyph):
615         * platform/graphics/ios/TextTrackRepresentationIOS.h: Copied from Source/WebCore/platform/graphics/TextTrackRepresentation.cpp.
616         * platform/graphics/ios/TextTrackRepresentationIOS.mm: Added.
617         * platform/graphics/mac/ColorMac.h:
618         * platform/graphics/mac/ComplexTextController.cpp:
619         (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
620         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
621         (WebCore::ComplexTextController::collectComplexTextRunsForCharacters):
622         * platform/graphics/mac/FloatPointMac.mm:
623         * platform/graphics/mac/FloatRectMac.mm:
624         * platform/graphics/mac/FloatSizeMac.mm:
625         * platform/graphics/mac/FontCacheMac.mm:
626         * platform/graphics/mac/FontComplexTextMac.cpp:
627         (WebCore::Font::drawComplexText):
628         (WebCore::Font::fontDataForCombiningCharacterSequence):
629         * platform/graphics/mac/FontCustomPlatformData.cpp:
630         * platform/graphics/mac/FontMac.mm:
631         (WebCore::showLetterpressedGlyphsWithAdvances):
632         (WebCore::Font::drawGlyphs):
633         * platform/graphics/mac/GlyphPageTreeNodeMac.cpp:
634         (WebCore::GlyphPage::fill):
635         * platform/graphics/mac/GraphicsContext3DMac.mm:
636         (WebCore::GraphicsContext3D::GraphicsContext3D):
637         (WebCore::GraphicsContext3D::~GraphicsContext3D):
638         (WebCore::GraphicsContext3D::setRenderbufferStorageFromDrawable):
639         (WebCore::GraphicsContext3D::makeContextCurrent):
640         (WebCore::GraphicsContext3D::endPaint):
641         * platform/graphics/mac/GraphicsContextMac.mm:
642         (WebCore::GraphicsContext::drawFocusRing):
643         (WebCore::createDotPattern):
644         (WebCore::GraphicsContext::drawLineForDocumentMarker):
645         * platform/graphics/mac/IconMac.mm:
646         * platform/graphics/mac/ImageMac.mm:
647         (WebCore::BitmapImage::invalidatePlatformData):
648         * platform/graphics/mac/IntPointMac.mm:
649         * platform/graphics/mac/IntRectMac.mm:
650         * platform/graphics/mac/IntSizeMac.mm:
651         * platform/graphics/mac/MediaPlayerProxy.h:
652         * platform/graphics/mac/SimpleFontDataCoreText.cpp:
653         * platform/graphics/mac/SimpleFontDataMac.mm:
654         * platform/graphics/mac/WebGLLayer.h:
655         * platform/graphics/mac/WebGLLayer.mm:
656         (-[WebGLLayer copyImageSnapshotWithColorSpace:]):
657         (-[WebGLLayer display]):
658         * platform/graphics/mac/WebLayer.mm:
659         (WebCore::drawLayerContents):
660         (-[WebSimpleLayer display]):
661         (-[WebSimpleLayer drawInContext:]):
662         * platform/graphics/mac/WebTiledLayer.mm:
663         (+[WebTiledLayer shouldDrawOnMainThread]):
664         (-[WebTiledLayer display]):
665         (-[WebTiledLayer drawInContext:]):
666         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
667         (WebCore::Extensions3DOpenGL::blitFramebuffer):
668         (WebCore::Extensions3DOpenGL::bindVertexArrayOES):
669         (WebCore::Extensions3DOpenGL::supportsExtension):
670         (WebCore::Extensions3DOpenGL::drawBuffersEXT):
671         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
672         (WebCore::Extensions3DOpenGLCommon::Extensions3DOpenGLCommon):
673         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
674         (WebCore::GraphicsContext3D::reshapeFBOs):
675         (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary):
676         (WebCore::GraphicsContext3D::renderbufferStorage):
677         (WebCore::GraphicsContext3D::getIntegerv):
678         (WebCore::GraphicsContext3D::texImage2D):
679         (WebCore::GraphicsContext3D::depthRange):
680         (WebCore::GraphicsContext3D::clearDepth):
681         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
682         (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
683         * platform/graphics/transforms/TransformationMatrix.cpp:
684         (WebCore::TransformationMatrix::multiply):
685         * platform/graphics/win/FontWin.cpp:
686         (WebCore::Font::drawComplexText):
687         * platform/graphics/wince/FontWinCE.cpp:
688         (WebCore::Font::drawComplexText):
689         * platform/ios/ContentFilterIOS.mm: Copied from Source/WebCore/platform/ContentFilter.h.
690         * platform/ios/DeviceMotionClientIOS.h: Added.
691         (WebCore::DeviceMotionClientIOS::create):
692         * platform/ios/DeviceMotionClientIOS.mm: Added.
693         * platform/ios/DeviceOrientationClientIOS.h: Added.
694         (WebCore::DeviceOrientationClientIOS::create):
695         * platform/ios/DeviceOrientationClientIOS.mm: Added.
696         * platform/ios/KeyEventIOS.mm:
697         * platform/ios/MIMETypeRegistryIOS.mm: Copied from Source/WebCore/platform/network/mac/CredentialStorageMac.mm.
698         * platform/ios/MemoryPressureHandlerIOS.mm: Added.
699         * platform/ios/PasteboardIOS.mm:
700         (WebCore::Pasteboard::write):
701         (WebCore::Pasteboard::resourceMIMEType):
702         (WebCore::Pasteboard::writePlainText):
703         (WebCore::Pasteboard::read):
704         (WebCore::supportedImageTypes):
705         (WebCore::Pasteboard::supportedPasteboardTypes):
706         (WebCore::Pasteboard::hasData):
707         (WebCore::Pasteboard::readString):
708         * platform/ios/PlatformEventFactoryIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
709         * platform/ios/PlatformEventFactoryIOS.mm: Added.
710         * platform/ios/PlatformPasteboardIOS.mm:
711         (WebCore::PlatformPasteboard::write):
712         * platform/ios/PlatformScreenIOS.mm: Added.
713         * platform/ios/PlatformSpeechSynthesizerIOS.mm: Added.
714         * platform/ios/SSLKeyGeneratorIOS.cpp: Added.
715         * platform/ios/ScrollAnimatorIOS.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
716         * platform/ios/ScrollAnimatorIOS.mm: Added.
717         * platform/ios/ScrollViewIOS.mm: Added.
718         * platform/ios/ScrollbarThemeIOS.h: Added.
719         * platform/ios/ScrollbarThemeIOS.mm: Added.
720         * platform/ios/SelectionRect.cpp: Added.
721         * platform/ios/SelectionRect.h: Added.
722         * platform/ios/SoundIOS.mm: Copied from Source/WebCore/platform/text/mac/CharsetData.h.
723         * platform/ios/SystemMemoryIOS.cpp: Added.
724         * platform/ios/ThemeIOS.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
725         * platform/ios/ThemeIOS.mm: Copied from Source/WebCore/platform/KillRingNone.cpp.
726         * platform/ios/TileCache.h: Added.
727         (WebCore::TileCache::isSpeculativeTileCreationEnabled):
728         * platform/ios/TileCache.mm: Added.
729         * platform/ios/TileGrid.h: Added.
730         * platform/ios/TileGrid.mm: Added.
731         * platform/ios/TileGridTile.h: Copied from Source/WebCore/platform/ContentFilter.h.
732         * platform/ios/TileGridTile.mm: Added.
733         * platform/ios/TileLayer.h: Copied from Source/WebCore/platform/mac/DisplaySleepDisabler.h.
734         * platform/ios/TileLayer.mm: Added.
735         * platform/ios/TileLayerPool.mm: Added.
736         * platform/ios/WebCoreMotionManager.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
737         * platform/ios/WebCoreMotionManager.mm: Added.
738         * platform/ios/WebCoreSystemInterfaceIOS.h: Added.
739         * platform/ios/WebCoreSystemInterfaceIOS.mm: Added.
740         * platform/ios/WebEvent.h: Added.
741         * platform/ios/WebEvent.mm: Added.
742         * platform/ios/WidgetIOS.mm: Added.
743         * platform/mac/DisplaySleepDisabler.cpp:
744         (WebCore::DisplaySleepDisabler::DisplaySleepDisabler):
745         (WebCore::DisplaySleepDisabler::~DisplaySleepDisabler):
746         * platform/mac/DisplaySleepDisabler.h:
747         * platform/mac/FileSystemMac.mm:
748         * platform/mac/KillRingMac.mm:
749         * platform/mac/MemoryPressureHandlerMac.mm:
750         (WebCore::MemoryPressureHandler::install):
751         (WebCore::MemoryPressureHandler::releaseMemory):
752         * platform/mac/PlatformClockCM.mm:
753         (PlatformClockCM::PlatformClockCM):
754         * platform/mac/SoftLinking.h:
755         * platform/mac/SystemVersionMac.mm:
756         * platform/mac/WebCoreFullScreenPlaceholderView.h:
757         * platform/mac/WebCoreFullScreenPlaceholderView.mm:
758         * platform/mac/WebCoreFullScreenWarningView.h:
759         * platform/mac/WebCoreFullScreenWarningView.mm:
760         * platform/mac/WebCoreFullScreenWindow.h:
761         * platform/mac/WebCoreFullScreenWindow.mm:
762         * platform/mac/WebCoreNSCellExtras.h:
763         * platform/mac/WebCoreNSCellExtras.m:
764         * platform/mac/WebCoreSystemInterface.h:
765         * platform/mac/WebFontCache.mm:
766         (+[WebFontCache fontWithFamily:traits:size:]):
767         * platform/network/BlobRegistry.cpp:
768         * platform/network/BlobRegistryImpl.cpp:
769         * platform/network/Credential.h:
770         * platform/network/CredentialStorage.cpp:
771         (WebCore::CredentialStorage::set):
772         (WebCore::CredentialStorage::clearCredentials):
773         * platform/network/CredentialStorage.h:
774         * platform/network/NetworkStateNotifier.h:
775         * platform/network/ResourceHandle.cpp:
776         (WebCore::builtinResourceHandleConstructorMap):
777         (WebCore::ResourceHandle::continueWillSendRequest):
778         (WebCore::ResourceHandle::continueDidReceiveResponse):
779         (WebCore::ResourceHandle::continueShouldUseCredentialStorage):
780         (WebCore::ResourceHandle::continueCanAuthenticateAgainstProtectionSpace):
781         * platform/network/ResourceRequestBase.cpp:
782         (WebCore::ResourceRequestBase::setDefaultAllowCookies):
783         (WebCore::ResourceRequestBase::defaultAllowCookies):
784         * platform/network/ResourceRequestBase.h:
785         (WebCore::ResourceRequestBase::ResourceRequestBase):
786         * platform/network/cf/CredentialStorageCFNet.cpp:
787         (WebCore::CredentialStorage::saveToPersistentStorage):
788         * platform/network/cf/DNSCFNet.cpp:
789         * platform/network/cf/ProxyServerCFNet.cpp:
790         * platform/network/cf/ResourceRequest.h:
791         (WebCore::ResourceRequest::ResourceRequest):
792         (WebCore::ResourceRequest::setMainResourceRequest):
793         (WebCore::ResourceRequest::isMainResourceRequest):
794         * platform/network/cf/ResourceRequestCFNet.cpp:
795         (WebCore::ResourceRequest::updateFromDelegatePreservingOldHTTPBody):
796         (WebCore::ResourceRequest::doUpdateResourceRequest):
797         (WebCore::ResourceRequest::applyWebArchiveHackForMail):
798         (WebCore::initializeHTTPConnectionSettingsOnStartup):
799         * platform/network/cf/SocketStreamHandleCFNet.cpp:
800         (WebCore::SocketStreamHandle::reportErrorToClient):
801         * platform/network/ios/NetworkStateNotifierIOS.cpp: Copied from Source/WebCore/platform/KillRingNone.cpp.
802         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
803         (WebCore::NetworkStateNotifier::setIsOnLine):
804         * platform/network/ios/QuickLook.h: Added.
805         * platform/network/ios/QuickLook.mm: Added.
806         * platform/network/ios/ResourceHandleIOS.mm: Added.
807         * platform/network/ios/WebCoreURLResponseIOS.h: Copied from Source/WebCore/platform/graphics/StringTruncator.h.
808         * platform/network/ios/WebCoreURLResponseIOS.mm: Added.
809         * platform/network/mac/AuthenticationMac.mm:
810         (WebCore::mac):
811         * platform/network/mac/CredentialStorageMac.mm:
812         (WebCore::CredentialStorage::saveToPersistentStorage):
813         * platform/network/mac/ResourceErrorMac.mm:
814         (dictionaryThatCanCode):
815         (-[WebCustomNSURLError encodeWithCoder:]):
816         (NSErrorFromCFError):
817         (WebCore::ResourceError::nsError):
818         * platform/network/mac/ResourceHandleMac.mm:
819         (WebCore::synchronousWillSendRequestEnabled):
820         (WebCore::ResourceHandle::createNSURLConnection):
821         (WebCore::ResourceHandle::start):
822         (WebCore::ResourceHandle::schedule):
823         (WebCore::ResourceHandle::unschedule):
824         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
825         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge):
826         * platform/network/mac/ResourceRequestMac.mm:
827         (WebCore::ResourceRequest::ResourceRequest):
828         (WebCore::ResourceRequest::updateNSURLRequest):
829         (WebCore::ResourceRequest::applyWebArchiveHackForMail):
830         (WebCore::ResourceRequest::useQuickLookResourceCachingQuirks):
831         * platform/network/mac/UTIUtilities.mm:
832         * platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
833         (-[WebCoreResourceHandleAsDelegate connectionShouldUseCredentialStorage:]):
834         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
835         (-[WebCoreResourceHandleAsDelegate connection:didReceiveDataArray:]):
836         (-[WebCoreResourceHandleAsDelegate connection:didReceiveData:lengthReceived:]):
837         (-[WebCoreResourceHandleAsDelegate connectionDidFinishLoading:]):
838         (-[WebCoreResourceHandleAsDelegate connection:didFailWithError:]):
839         * platform/sql/SQLiteDatabase.h:
840         (WebCore::SQLiteDatabase::sqlite3Handle):
841         * platform/sql/SQLiteFileSystem.cpp:
842         (WebCore::SQLiteFileSystem::truncateDatabaseFile):
843         * platform/sql/SQLiteFileSystem.h:
844         * platform/sql/SQLiteTransaction.cpp:
845         (WebCore::SQLiteTransaction::begin):
846         (WebCore::SQLiteTransaction::commit):
847         (WebCore::SQLiteTransaction::rollback):
848         (WebCore::SQLiteTransaction::stop):
849         * platform/sql/ios/SQLiteDatabaseTracker.cpp: Added.
850         * platform/sql/ios/SQLiteDatabaseTracker.h: Copied from Source/WebCore/platform/MemoryPressureHandler.cpp.
851         * platform/sql/ios/SQLiteDatabaseTrackerClient.h: Copied from Source/WebCore/platform/KillRingNone.cpp.
852         * platform/text/PlatformLocale.cpp:
853         * platform/text/PlatformLocale.h:
854         * platform/text/TextBreakIteratorICU.cpp:
855         (WebCore::cursorMovementIterator):
856         * platform/text/TextCodecICU.cpp:
857         (WebCore::TextCodecICU::registerEncodingNames):
858         (WebCore::TextCodecICU::registerCodecs):
859         * platform/text/TextEncodingRegistry.cpp:
860         (WebCore::extendTextCodecMaps):
861         * platform/text/cf/HyphenationCF.cpp:
862         (WebCore::canHyphenate):
863         * platform/text/ios/LocalizedDateCache.h: Copied from Source/WebCore/platform/MemoryPressureHandler.h.
864         * platform/text/ios/LocalizedDateCache.mm: Added.
865         * platform/text/mac/CharsetData.h:
866         * platform/text/mac/LocaleMac.h:
867         * platform/text/mac/LocaleMac.mm:
868         (WebCore::LocaleMac::formatDateTime):
869         (WebCore::LocaleMac::maximumWidthForDateType):
870         * platform/text/mac/TextBoundaries.mm:
871         (WebCore::isSkipCharacter):
872         (WebCore::isWhitespaceCharacter):
873         (WebCore::isWordDelimitingCharacter):
874         (WebCore::isSymbolCharacter):
875         (WebCore::isAmbiguousBoundaryCharacter):
876         (WebCore::tokenizerForString):
877         (WebCore::findSimpleWordBoundary):
878         (WebCore::findComplexWordBoundary):
879         (WebCore::findWordBoundary):
880         (WebCore::findNextWordFromIndex):
881         * platform/text/mac/TextCodecMac.cpp:
882         * platform/text/mac/TextCodecMac.h:
883
884 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
885
886         Web Inspector: Consolidate developerExtrasEnabled to just InspectorEnvironment
887         https://bugs.webkit.org/show_bug.cgi?id=126717
888
889         Reviewed by Timothy Hatcher.
890
891         They all route to InspectorEnvironment::developerExtrasEnabled, so make
892         InspectorEnvironment available to all agents through InstrumentingAgents
893         and use that where needed.
894
895         * inspector/InspectorAgent.cpp:
896         (WebCore::InspectorAgent::InspectorAgent):
897         * inspector/InspectorAgent.h:
898         (WebCore::InspectorAgent::create):
899         * inspector/InspectorConsoleAgent.cpp:
900         (WebCore::InspectorConsoleAgent::addMessageToConsole):
901         (WebCore::InspectorConsoleAgent::didFinishXHRLoading):
902         (WebCore::InspectorConsoleAgent::didReceiveResponse):
903         (WebCore::InspectorConsoleAgent::didFailLoading):
904         (WebCore::InspectorConsoleAgent::addConsoleMessage):
905         * inspector/InspectorConsoleAgent.h:
906         * inspector/InspectorController.cpp:
907         (WebCore::InspectorController::InspectorController):
908         (WebCore::InspectorController::enabled):
909         * inspector/InspectorInstrumentation.cpp:
910         (WebCore::InspectorInstrumentation::didLoadResourceFromMemoryCacheImpl):
911         (WebCore::InspectorInstrumentation::didCommitLoadImpl):
912         (WebCore::InspectorInstrumentation::frameDocumentUpdatedImpl):
913         (WebCore::InspectorInstrumentation::didOpenDatabaseImpl):
914         (WebCore::InspectorInstrumentation::didCreateWebSocketImpl):
915         * inspector/InstrumentingAgents.cpp:
916         (WebCore::InstrumentingAgents::InstrumentingAgents):
917         * inspector/InstrumentingAgents.h:
918         (WebCore::InstrumentingAgents::create):
919         (WebCore::InstrumentingAgents::inspectorEnvironment):
920         * inspector/PageConsoleAgent.cpp:
921         * inspector/PageConsoleAgent.h:
922         * inspector/WorkerConsoleAgent.cpp:
923         * inspector/WorkerConsoleAgent.h:
924         * inspector/WorkerInspectorController.cpp:
925         (WebCore::WorkerInspectorController::WorkerInspectorController):
926
927 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
928
929         Web Inspector: Remove Unnecessary InspectorAgent parameters
930         https://bugs.webkit.org/show_bug.cgi?id=126712
931
932         Reviewed by Timothy Hatcher.
933
934         * inspector/InspectorController.cpp:
935         (WebCore::InspectorController::InspectorController):
936         * inspector/InspectorDOMDebuggerAgent.cpp:
937         (WebCore::InspectorDOMDebuggerAgent::create):
938         (WebCore::InspectorDOMDebuggerAgent::InspectorDOMDebuggerAgent):
939         * inspector/InspectorDOMDebuggerAgent.h:
940         * inspector/InspectorPageAgent.cpp:
941         (WebCore::InspectorPageAgent::create):
942         (WebCore::InspectorPageAgent::InspectorPageAgent):
943         * inspector/InspectorPageAgent.h:
944
945 2014-01-09  Antti Koivisto  <antti@apple.com>
946
947         Remove an accidentally left-behind static_cast.
948
949         * dom/ElementDescendantIterator.h:
950         (WebCore::ElementDescendantIteratorAdapter<ElementType>::beginAt):
951
952 2014-01-09  Antti Koivisto  <antti@apple.com>
953
954         Replace ElementIteratorAdapter find() with beginAt()
955         https://bugs.webkit.org/show_bug.cgi?id=126714
956
957         Reviewed by Andreas Kling.
958
959         ElementIteratorAdapter find() would return iterator for the argument element if it was
960         of correct type and in the right subtree. This is not really what you would expect from find()
961         so replace it with a simple beginAt() iterator construction function.
962
963         * dom/DocumentOrderedMap.cpp:
964         (WebCore::DocumentOrderedMap::getAllElementsById):
965         * dom/ElementChildIterator.h:
966         (WebCore::ElementChildIteratorAdapter<ElementType>::beginAt):
967         (WebCore::ElementChildConstIteratorAdapter<ElementType>::beginAt):
968         * dom/ElementDescendantIterator.h:
969         (WebCore::ElementDescendantIteratorAdapter<ElementType>::beginAt):
970         (WebCore::ElementDescendantConstIteratorAdapter<ElementType>::beginAt):
971         * html/HTMLFormElement.cpp:
972         (WebCore::HTMLFormElement::formElementIndex):
973         * html/HTMLTableRowsCollection.cpp:
974         (WebCore::HTMLTableRowsCollection::rowAfter):
975
976 2014-01-09  Brian Burg  <bburg@apple.com>
977
978         REGRESSION (r160152): Selection drag snapshot doesn't appear or has the wrong content on Retina
979         https://bugs.webkit.org/show_bug.cgi?id=125375
980
981         Reviewed by Darin Adler.
982
983         Move scaling of drag images by the device scale factor out of DragClient
984         and into WebCore. This removes several redundant copies and scaling operations.
985
986         Fix scaling bugs that were cancelled out by over-allocating the backing store.
987
988         * page/DragController.cpp:
989         (WebCore::DragController::startDrag): Scale the drag image for a link
990         according to the device scale factor before giving it to the OS.
991
992         (WebCore::DragController::doImageDrag): Scale the drag image for an image
993         according to the device scale factor before giving it to the OS.
994
995         * page/FrameSnapshotting.cpp:
996         (WebCore::snapshotFrameRect): Don't pre-scale or clip the snapshot. The
997         ImageBuffer does this already.
998
999         * platform/DragImage.cpp:
1000         (WebCore::createDragImageFromSnapshot): Don't scale the backing store
1001         when copying an ImageBuffer into an Image.
1002
1003         * platform/graphics/cg/ImageBufferCG.cpp:
1004         (WebCore::ImageBuffer::copyImage): Draw the image in user-space coordinates,
1005         not in backing-store coordinates. Remove unnecessary assertions. Crop the
1006         buffer before drawing the image into it.
1007
1008 2014-01-09  Myles C. Maxfield  <mmaxfield@apple.com>
1009
1010         Narrow underlines are too tall
1011         https://bugs.webkit.org/show_bug.cgi?id=126708
1012
1013         Reviewed by Simon Fraser.
1014
1015         I made a typo in r158392 and used was settings the line rect's
1016         height equal to its width. No one noticed because of the subsequent
1017         if statement.
1018
1019         Test: fast/css3-text/css3-text-decoration/text-decoration-skip/text-decoration-skip-tall-underlines.html
1020
1021         * platform/graphics/cg/GraphicsContextCG.cpp:
1022         (WebCore::computeLineBoundsAndAntialiasingModeForText):
1023
1024 2014-01-09  Antti Koivisto  <antti@apple.com>
1025
1026         DocumentOrderedMap should use iterator
1027         https://bugs.webkit.org/show_bug.cgi?id=126696
1028
1029         Reviewed by Andreas Kling.
1030
1031         * dom/DocumentOrderedMap.cpp:
1032         (WebCore::keyMatchesId):
1033         (WebCore::keyMatchesName):
1034         (WebCore::keyMatchesMapName):
1035         (WebCore::keyMatchesLowercasedMapName):
1036         (WebCore::keyMatchesLowercasedUsemap):
1037         (WebCore::keyMatchesLabelForAttribute):
1038         (WebCore::keyMatchesWindowNamedItem):
1039         (WebCore::keyMatchesDocumentNamedItem):
1040         
1041             Switch to Element references.
1042
1043         (WebCore::DocumentOrderedMap::add):
1044         (WebCore::DocumentOrderedMap::remove):
1045         (WebCore::DocumentOrderedMap::get):
1046         (WebCore::DocumentOrderedMap::getAllElementsById):
1047         
1048              Use element iterator instead of ElementTraversal.
1049
1050         * dom/DocumentOrderedMap.h:
1051
1052 2014-01-09  Beth Dakin  <bdakin@apple.com>
1053
1054         Margin tiles are not repainted when background color changes
1055         https://bugs.webkit.org/show_bug.cgi?id=126541
1056         -and corresponding-
1057         <rdar://problem/15578131>
1058
1059         Reviewed by Simon Fraser.
1060
1061         This patch adds an optional parameter to GraphicsLayer::setNeedsDisplayInRect, 
1062         RenderLayerBacking::setContentsNeedDisplay(), and 
1063         RenderLayer::setBackingNeedsRepaint() that is used to determine whether or not to 
1064         clip the invalidation rect to the size of the layer. Then whenever the margin 
1065         needs to be repainted, we can call setNeedsDisplayInRect() with a rect that 
1066         includes the margin, and also indicate that it should not be clipped.
1067
1068         GraphicsLayer now takes an optional parameter which is an enum called 
1069         ShouldClipToLayer.
1070         * WebCore.exp.in:
1071         * platform/graphics/GraphicsLayer.h:
1072         * platform/graphics/blackberry/GraphicsLayerBlackBerry.cpp:
1073         (WebCore::GraphicsLayerBlackBerry::setNeedsDisplayInRect):
1074         * platform/graphics/blackberry/GraphicsLayerBlackBerry.h:
1075         * platform/graphics/ca/GraphicsLayerCA.cpp:
1076         (WebCore::GraphicsLayerCA::setNeedsDisplayInRect):
1077         * platform/graphics/ca/GraphicsLayerCA.h:
1078         * platform/graphics/texmap/GraphicsLayerTextureMapper.cpp:
1079         (WebCore::GraphicsLayerTextureMapper::setNeedsDisplayInRect):
1080         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
1081         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.cpp:
1082         (WebCore::CoordinatedGraphicsLayer::setNeedsDisplayInRect):
1083         * platform/graphics/texmap/coordinated/CoordinatedGraphicsLayer.h:
1084
1085         Make TileController::bounds() a virtual function, and declare it on TiledBacking 
1086         so that we can call it from RenderLayerBacking.
1087         * platform/graphics/TiledBacking.h:
1088         * platform/graphics/ca/mac/TileController.h:
1089
1090         RenderLayer also now takes an optional parameter which is an enum called 
1091         ShouldClipToLayer.
1092         * rendering/RenderLayer.cpp:
1093         (WebCore::RenderLayer::calculateClipRects):
1094         * rendering/RenderLayer.h:
1095
1096         If the margin needs to be repainted, call GraphicsLayer::setNeedsDisplayInRect 
1097         with a big enough rect and a ShouldClipToLayer value of DoNotClipToLayer.
1098         * rendering/RenderLayerBacking.cpp:
1099         (WebCore::RenderLayerBacking::setContentsNeedDisplay):
1100         * rendering/RenderLayerBacking.h:
1101
1102         Whenever all of the root contents need to be repainted the margin will also need 
1103         to be repainted, so call setBackingNeedsRepaint() with the new parameter 
1104         indicating the the invalidation should NOT be clipped to the layer size.
1105         * rendering/RenderView.cpp:
1106         (WebCore::RenderView::repaintRootContents):
1107
1108 2014-01-09  Bear Travis  <betravis@adobe.com>
1109
1110         [CSS Shapes] Factor the ReferenceBox type out of BasicShapes
1111         https://bugs.webkit.org/show_bug.cgi?id=126648
1112
1113         Reviewed by Dirk Schulze.
1114
1115         Moving ReferenceBox out of BasicShapes and into RenderStyleConstants
1116         as the LayoutBox enum. Most of the changes are removing the BasicShape
1117         namespace.
1118
1119         Refactoring, no new tests.
1120
1121         * css/BasicShapeFunctions.cpp:
1122         (WebCore::valueForBox):
1123         (WebCore::boxForValue):
1124         (WebCore::valueForBasicShape):
1125         (WebCore::basicShapeForValue):
1126         * css/BasicShapeFunctions.h:
1127         * css/CSSBasicShapes.cpp:
1128         (WebCore::CSSBasicShapeRectangle::cssText):
1129         (WebCore::CSSBasicShapeRectangle::equals):
1130         (WebCore::CSSBasicShapeCircle::cssText):
1131         (WebCore::CSSBasicShapeCircle::equals):
1132         (WebCore::CSSDeprecatedBasicShapeCircle::cssText):
1133         (WebCore::CSSDeprecatedBasicShapeCircle::equals):
1134         (WebCore::CSSBasicShapeEllipse::cssText):
1135         (WebCore::CSSBasicShapeEllipse::equals):
1136         (WebCore::CSSDeprecatedBasicShapeEllipse::cssText):
1137         (WebCore::CSSDeprecatedBasicShapeEllipse::equals):
1138         (WebCore::CSSBasicShapePolygon::cssText):
1139         (WebCore::CSSBasicShapePolygon::equals):
1140         (WebCore::CSSBasicShapeInsetRectangle::cssText):
1141         (WebCore::CSSBasicShapeInsetRectangle::equals):
1142         (WebCore::CSSBasicShapeInset::cssText):
1143         * css/CSSBasicShapes.h:
1144         (WebCore::CSSBasicShape::layoutBox):
1145         (WebCore::CSSBasicShape::setLayoutBox):
1146         * css/CSSComputedStyleDeclaration.cpp:
1147         (WebCore::ComputedStyleExtractor::propertyValue):
1148         * css/CSSParser.cpp:
1149         (WebCore::CSSParser::parseShapeProperty):
1150         * css/DeprecatedStyleBuilder.cpp:
1151         (WebCore::ApplyPropertyClipPath::applyValue):
1152         (WebCore::ApplyPropertyShape::applyValue):
1153         * rendering/ClipPathOperation.h:
1154         (WebCore::ShapeClipPathOperation::setReferenceBox):
1155         (WebCore::ShapeClipPathOperation::referenceBox):
1156         (WebCore::ShapeClipPathOperation::ShapeClipPathOperation):
1157         (WebCore::BoxClipPathOperation::create):
1158         (WebCore::BoxClipPathOperation::referenceBox):
1159         (WebCore::BoxClipPathOperation::BoxClipPathOperation):
1160         * rendering/shapes/Shape.cpp:
1161         (WebCore::Shape::createLayoutBoxShape):
1162         * rendering/shapes/Shape.h:
1163         * rendering/shapes/ShapeInfo.cpp:
1164         (WebCore::ShapeInfo<RenderType>::computedShape):
1165         * rendering/shapes/ShapeInfo.h:
1166         (WebCore::ShapeInfo::setShapeSize):
1167         (WebCore::ShapeInfo::logicalTopOffset):
1168         (WebCore::ShapeInfo::logicalLeftOffset):
1169         * rendering/shapes/ShapeInsideInfo.h:
1170         * rendering/shapes/ShapeOutsideInfo.h:
1171         * rendering/style/BasicShapes.cpp:
1172         (WebCore::BasicShape::canBlend):
1173         (WebCore::BasicShape::referenceBoxSize):
1174         * rendering/style/BasicShapes.h:
1175         (WebCore::BasicShape::layoutBox):
1176         (WebCore::BasicShape::setLayoutBox):
1177         (WebCore::BasicShape::BasicShape):
1178         * rendering/style/RenderStyleConstants.h:
1179         * rendering/style/ShapeValue.h:
1180         (WebCore::ShapeValue::createLayoutBoxValue):
1181         (WebCore::ShapeValue::layoutBox):
1182         (WebCore::ShapeValue::ShapeValue):
1183
1184 2014-01-09  Tim Horton  <timothy_horton@apple.com>
1185
1186         PDFDocumentImage can be very slow to do the initial paint
1187         https://bugs.webkit.org/show_bug.cgi?id=126633
1188         <rdar://problem/15770980>
1189
1190         Reviewed by Simon Fraser.
1191
1192         * platform/graphics/cg/PDFDocumentImage.cpp:
1193         (WebCore::PDFDocumentImage::PDFDocumentImage):
1194         (WebCore::PDFDocumentImage::size):
1195         (WebCore::transformContextForPainting):
1196         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
1197         (WebCore::applyRotationForPainting):
1198         (WebCore::PDFDocumentImage::drawPDFPage):
1199         * platform/graphics/cg/PDFDocumentImage.h:
1200         * platform/graphics/mac/PDFDocumentImageMac.mm:
1201         (WebCore::PDFDocumentImage::computeBoundsForCurrentPage):
1202         Store rotation from the PDF in degrees, since it can
1203         only be 0, 90, 180, or 270, and don't do any trig to
1204         perform the rotation, to avoid introducing minor rounding
1205         issues in the size.
1206
1207         Once we're going to paint, if the difference between the
1208         computed scale for each axis is due only to integer rounding
1209         of the image size, use the same scale for both axes, to avoid
1210         a CG slow-path which occurs whenever the scale is nonuniform.
1211
1212 2014-01-09  Antti Koivisto  <antti@apple.com>
1213
1214         Disconnect child frames iteratively
1215         https://bugs.webkit.org/show_bug.cgi?id=126700
1216
1217         Reviewed by Andreas Kling.
1218
1219         Use descendant iterator instead of recursion for traversal.
1220
1221         * dom/ContainerNode.cpp:
1222         (WebCore::willRemoveChild):
1223         (WebCore::willRemoveChildren):
1224         (WebCore::ContainerNode::disconnectDescendantFrames):
1225         * dom/ContainerNodeAlgorithms.cpp:
1226         (WebCore::assertConnectedSubrameCountIsConsistent):
1227         (WebCore::collectFrameOwners):
1228         (WebCore::disconnectSubframes):
1229         
1230             Get rid of the strange ChildFrameDisconnector class in favor of a function.
1231
1232         * dom/ContainerNodeAlgorithms.h:
1233         (WebCore::disconnectSubframesIfNeeded):
1234
1235 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
1236
1237         Unreviewed Windows build fix for r161563.
1238
1239         Remove reference to removed file.
1240
1241         * bindings/js/JSBindingsAllInOne.cpp:
1242
1243 2014-01-09  Joseph Pecoraro  <pecoraro@apple.com>
1244
1245         Web Inspector: Move InjectedScript classes into JavaScriptCore
1246         https://bugs.webkit.org/show_bug.cgi?id=126598
1247
1248         Part 6: Put it all together. Make WebCore use the JavaScriptCore InjectedScript files.
1249
1250         Reviewed by Timothy Hatcher.
1251
1252         * CMakeLists.txt:
1253         * DerivedSources.cpp:
1254         * DerivedSources.make:
1255         * GNUmakefile.list.am:
1256         * UseJSC.cmake:
1257         * WebCore.vcxproj/WebCore.vcxproj:
1258         * WebCore.vcxproj/WebCore.vcxproj.filters:
1259         * WebCore.xcodeproj/project.pbxproj:
1260         Remove old InjectedScript files.
1261
1262         * ForwardingHeaders/inspector/InjectedScript.h: Added.
1263         * ForwardingHeaders/inspector/InjectedScriptBase.h: Added.
1264         * ForwardingHeaders/inspector/InjectedScriptHost.h: Added.
1265         * ForwardingHeaders/inspector/InjectedScriptManager.h: Added.
1266         * ForwardingHeaders/inspector/InjectedScriptModule.h: Added.
1267         * ForwardingHeaders/inspector/InspectorEnvironment.h: Added.
1268         Expose headers to WebCore.
1269
1270         * inspector/InspectorController.h:
1271         * inspector/InspectorController.cpp:
1272         (WebCore::InspectorController::InspectorController):
1273         (WebCore::InspectorController::developerExtrasEnabled):
1274         (WebCore::InspectorController::canAccessInspectedScriptState):
1275         (WebCore::InspectorController::functionCallHandler):
1276         (WebCore::InspectorController::evaluateHandler):
1277         (WebCore::InspectorController::willCallInjectedScriptFunction):
1278         (WebCore::InspectorController::didCallInjectedScriptFunction):
1279         * inspector/WorkerInspectorController.h:
1280         * inspector/WorkerInspectorController.cpp:
1281         (WebCore::WorkerInspectorController::WorkerInspectorController):
1282         (WebCore::WorkerInspectorController::functionCallHandler):
1283         (WebCore::WorkerInspectorController::evaluateHandler):
1284         (WebCore::WorkerInspectorController::willCallInjectedScriptFunction):
1285         (WebCore::WorkerInspectorController::didCallInjectedScriptFunction):
1286         Make both InspectorControllers in WebCore be InspectorEnvironments.
1287
1288         * bindings/js/JSMainThreadExecState.h:
1289         * bindings/js/JSMainThreadExecState.cpp:
1290         (WebCore::evaluateHandlerFromAnyThread):
1291         Make JSC::evaluate wrapper like the existing JSC::call wrapper.
1292         These will be the ScriptFunctionCall implementations when debugging
1293         a WebCore::Page or worker, instead of the pure JSC versions.
1294
1295         * inspector/PageInjectedScriptHost.h: Copied from Source/WebCore/inspector/CommandLineAPIModule.h.
1296         * inspector/PageInjectedScriptHost.cpp: Copied from Source/WebCore/inspector/PageInjectedScriptManager.cpp.
1297         (WebCore::PageInjectedScriptHost::type):
1298         (WebCore::PageInjectedScriptHost::isHTMLAllCollection):
1299         WebCore InjectedScriptHost implementation for DOM type handling.
1300
1301         * inspector/PageInjectedScriptManager.h:
1302         * inspector/PageInjectedScriptManager.cpp:
1303         (WebCore::PageInjectedScriptManager::PageInjectedScriptManager):
1304         (WebCore::PageInjectedScriptManager::discardInjectedScriptsFor):
1305         WebCore InjectedScriptManager implementation for CommandLineAPI and
1306         specialized DOMWindow injected script management.
1307
1308         * bindings/js/JSBindingsAllInOne.cpp:
1309         * inspector/CommandLineAPIHost.cpp:
1310         * inspector/CommandLineAPIHost.h:
1311         * inspector/CommandLineAPIModule.cpp:
1312         (WebCore::CommandLineAPIModule::host):
1313         * inspector/CommandLineAPIModule.h:
1314         * inspector/ConsoleMessage.cpp:
1315         (WebCore::ConsoleMessage::addToFrontend):
1316         * inspector/ConsoleMessage.h:
1317         * inspector/InjectedScriptCanvasModule.cpp:
1318         (WebCore::InjectedScriptCanvasModule::InjectedScriptCanvasModule):
1319         * inspector/InjectedScriptCanvasModule.h:
1320         * inspector/InspectorAllInOne.cpp:
1321         * inspector/InspectorCanvasAgent.cpp:
1322         * inspector/InspectorCanvasAgent.h:
1323         (WebCore::InspectorCanvasAgent::create):
1324         * inspector/InspectorConsoleAgent.cpp:
1325         (WebCore::InspectorConsoleAgent::InspectorConsoleAgent):
1326         * inspector/InspectorConsoleAgent.h:
1327         * inspector/InspectorDOMAgent.cpp:
1328         * inspector/InspectorDOMAgent.h:
1329         (WebCore::InspectorDOMAgent::create):
1330         * inspector/InspectorDebuggerAgent.cpp:
1331         * inspector/InspectorDebuggerAgent.h:
1332         (WebCore::InspectorDebuggerAgent::injectedScriptManager):
1333         * inspector/InspectorHeapProfilerAgent.cpp:
1334         (WebCore::InspectorHeapProfilerAgent::create):
1335         (WebCore::InspectorHeapProfilerAgent::InspectorHeapProfilerAgent):
1336         * inspector/InspectorHeapProfilerAgent.h:
1337         * inspector/InspectorIndexedDBAgent.cpp:
1338         * inspector/InspectorIndexedDBAgent.h:
1339         (WebCore::InspectorIndexedDBAgent::create):
1340         * inspector/InspectorPageAgent.cpp:
1341         * inspector/InspectorPageAgent.h:
1342         * inspector/InspectorProfilerAgent.cpp:
1343         (WebCore::PageProfilerAgent::PageProfilerAgent):
1344         (WebCore::InspectorProfilerAgent::create):
1345         (WebCore::WorkerProfilerAgent::WorkerProfilerAgent):
1346         (WebCore::InspectorProfilerAgent::InspectorProfilerAgent):
1347         * inspector/InspectorProfilerAgent.h:
1348         * inspector/InspectorRuntimeAgent.cpp:
1349         * inspector/InspectorRuntimeAgent.h:
1350         (WebCore::InspectorRuntimeAgent::injectedScriptManager):
1351         * inspector/PageConsoleAgent.cpp:
1352         (WebCore::PageConsoleAgent::PageConsoleAgent):
1353         * inspector/PageConsoleAgent.h:
1354         (WebCore::PageConsoleAgent::create):
1355         * inspector/PageDebuggerAgent.cpp:
1356         * inspector/PageDebuggerAgent.h:
1357         * inspector/PageRuntimeAgent.cpp:
1358         * inspector/PageRuntimeAgent.h:
1359         (WebCore::PageRuntimeAgent::create):
1360         * inspector/WorkerConsoleAgent.cpp:
1361         (WebCore::WorkerConsoleAgent::WorkerConsoleAgent):
1362         * inspector/WorkerConsoleAgent.h:
1363         (WebCore::WorkerConsoleAgent::create):
1364         * inspector/WorkerDebuggerAgent.cpp:
1365         * inspector/WorkerDebuggerAgent.h:
1366         * inspector/WorkerRuntimeAgent.cpp:
1367         * inspector/WorkerRuntimeAgent.h:
1368         (WebCore::WorkerRuntimeAgent::create):
1369         Switch to using the Inspector namespace and JSC InjectedScript files.
1370
1371         * bindings/js/JSInjectedScriptManager.cpp: Removed.
1372         * inspector/InjectedScript.h: Removed.
1373         * inspector/InjectedScriptHost.cpp: Removed.
1374         * inspector/InjectedScriptHost.h: Removed.
1375         * inspector/InjectedScriptHost.idl: Removed.
1376
1377
1378         Part 4: Move all inspector scripts into JavaScriptCore and update generators.
1379
1380         With the updated location switch to using the appropriate INSPECTOR_SCRIPTS_DIR
1381         variable which defines where the scripts are.
1382
1383         * CMakeLists.txt:
1384         * DerivedSources.make:
1385         * GNUmakefile.am:
1386         * GNUmakefile.list.am:
1387         * WebCore.vcxproj/WebCore.vcxproj:
1388         * WebCore.vcxproj/WebCore.vcxproj.filters:
1389         * WebCore.xcodeproj/project.pbxproj:
1390
1391
1392         Part 1: Extract InspectorInstrumentationCookie class from InspectorInstrumentation.
1393
1394         Currently InjectedScriptBase uses InspectorInstrumentation directly
1395         to track calling into JavaScript for timeline purposes. We will remove
1396         the direct call from InjectedScriptBase and extracting the Cookie class
1397         will make that easier.
1398
1399         * CMakeLists.txt:
1400         * GNUmakefile.list.am:
1401         * WebCore.vcxproj/WebCore.vcxproj:
1402         * WebCore.vcxproj/WebCore.vcxproj.filters:
1403         * WebCore.xcodeproj/project.pbxproj:
1404         * inspector/InspectorAllInOne.cpp:
1405         * inspector/InspectorInstrumentation.cpp:
1406         * inspector/InspectorInstrumentation.h:
1407         * inspector/InspectorInstrumentationCookie.cpp: Added.
1408         (WebCore::InspectorInstrumentationCookie::InspectorInstrumentationCookie):
1409         (WebCore::InspectorInstrumentationCookie::operator=):
1410         (WebCore::InspectorInstrumentationCookie::~InspectorInstrumentationCookie):
1411         * inspector/InspectorInstrumentationCookie.h: Added.
1412         (WebCore::InspectorInstrumentationCookie::isValid):
1413         (WebCore::InspectorInstrumentationCookie::instrumentingAgents):
1414         (WebCore::InspectorInstrumentationCookie::hasMatchingTimelineAgentId):
1415
1416 2014-01-09  Pascal Jacquemart  <p.jacquemart@samsung.com>
1417
1418         Cannot select multiple non-adjacent items in a multiple select control with the keyboard only
1419         https://bugs.webkit.org/show_bug.cgi?id=15816
1420
1421         Reviewed by Chris Fleizach.
1422
1423         Test: fast/forms/listbox-non-contiguous-keyboard-selection.html
1424
1425         * html/HTMLSelectElement.cpp:
1426         (WebCore::HTMLSelectElement::HTMLSelectElement):
1427         New member m_allowsNonContiguousSelection defaults to false
1428         (WebCore::HTMLSelectElement::listBoxDefaultEventHandler):
1429         Tracking CTRL modifier to start multiple non contiguous selection
1430         * html/HTMLSelectElement.h: New member m_allowsNonContiguousSelection
1431         (WebCore::HTMLSelectElement::allowsNonContiguousSelection): New getter
1432         * rendering/RenderListBox.cpp:
1433         (WebCore::RenderListBox::addFocusRingRects):
1434         Following implementation made for spatial navigation
1435
1436 2014-01-09  Seokju Kwon  <seokju@webkit.org>
1437
1438         Web Inspector: Remove unused overriding protocols.
1439         https://bugs.webkit.org/show_bug.cgi?id=126630
1440
1441         Reviewed by Timothy Hatcher.
1442
1443         No new tests, No change in behavior.
1444
1445         Remove unused overriding protocols as these are not used anymore in Frontned.
1446         -Page.setGeolocationOverride
1447         -Page.clearGeolocationOverride
1448         -Page.canOverrideGeolocation
1449         -Page.setDeviceOrientationOverride
1450         -Page.clearDeviceOrientationOverride
1451         -Page.canOverrideGeolocation
1452         -Network.setUserAgentOverride
1453
1454         * Modules/geolocation/GeolocationController.cpp:
1455         (WebCore::GeolocationController::GeolocationController):
1456         (WebCore::GeolocationController::create):
1457         (WebCore::GeolocationController::positionChanged):
1458         (WebCore::provideGeolocationTo):
1459         * Modules/geolocation/GeolocationController.h:
1460         * dom/DeviceOrientationController.cpp:
1461         (WebCore::DeviceOrientationController::DeviceOrientationController):
1462         (WebCore::DeviceOrientationController::create):
1463         (WebCore::DeviceOrientationController::didChangeDeviceOrientation):
1464         (WebCore::provideDeviceOrientationTo):
1465         * dom/DeviceOrientationController.h:
1466         * inspector/InspectorInstrumentation.cpp:
1467         * inspector/InspectorInstrumentation.h:
1468         * inspector/InspectorPageAgent.cpp:
1469         (WebCore::InspectorPageAgent::InspectorPageAgent):
1470         * inspector/InspectorPageAgent.h:
1471         * inspector/InspectorResourceAgent.cpp:
1472         (WebCore::InspectorResourceAgent::disable):
1473         * inspector/InspectorResourceAgent.h:
1474         * inspector/protocol/Network.json:
1475         * inspector/protocol/Page.json:
1476         * loader/FrameLoader.cpp:
1477         (WebCore::FrameLoader::userAgent):
1478
1479 2014-01-09  Andrei Bucur  <abucur@adobe.com>
1480
1481         [CSSRegions] Move regions auto-size code into RenderNamedFlowFragment
1482         https://bugs.webkit.org/show_bug.cgi?id=122959
1483
1484         Reviewed by Mihnea Ovidenie.
1485
1486         Move the auto-height logic from RenderRegion to RenderNamedFlowFragment because it's
1487         used only by the CSS Regions implementation.
1488
1489         Bug 126642 covers the auto-height logic move from RenderFlowThread to RenderNamedFlowThread.
1490
1491         Tests: No new tests, just refactorings.
1492
1493         * rendering/RenderFlowThread.cpp:
1494         (WebCore::RenderFlowThread::styleDidChange):
1495         (WebCore::RenderFlowThread::validateRegions):
1496         (WebCore::RenderFlowThread::isAutoLogicalHeightRegionsCountConsistent):
1497         (WebCore::RenderFlowThread::initializeRegionsComputedAutoHeight):
1498         (WebCore::RenderFlowThread::markAutoLogicalHeightRegionsForLayout):
1499         (WebCore::RenderFlowThread::updateRegionsFlowThreadPortionRect):
1500         (WebCore::RenderFlowThread::addForcedRegionBreak):
1501         * rendering/RenderMultiColumnSet.h:
1502         * rendering/RenderNamedFlowFragment.cpp:
1503         (WebCore::RenderNamedFlowFragment::RenderNamedFlowFragment):
1504         (WebCore::RenderNamedFlowFragment::styleDidChange):
1505         (WebCore::RenderNamedFlowFragment::incrementAutoLogicalHeightCount):
1506         (WebCore::RenderNamedFlowFragment::decrementAutoLogicalHeightCount):
1507         (WebCore::RenderNamedFlowFragment::updateRegionHasAutoLogicalHeightFlag):
1508         (WebCore::RenderNamedFlowFragment::updateLogicalHeight):
1509         (WebCore::RenderNamedFlowFragment::pageLogicalHeight):
1510         (WebCore::RenderNamedFlowFragment::layoutBlock):
1511         (WebCore::RenderNamedFlowFragment::attachRegion):
1512         (WebCore::RenderNamedFlowFragment::detachRegion):
1513         * rendering/RenderNamedFlowFragment.h:
1514         * rendering/RenderRegion.cpp:
1515         (WebCore::RenderRegion::RenderRegion):
1516         (WebCore::RenderRegion::pageLogicalHeight):
1517         (WebCore::RenderRegion::logicalHeightOfAllFlowThreadContent):
1518         (WebCore::RenderRegion::isLastRegion):
1519         (WebCore::RenderRegion::styleDidChange):
1520         (WebCore::RenderRegion::attachRegion):
1521         (WebCore::RenderRegion::detachRegion):
1522         * rendering/RenderRegion.h:
1523         * rendering/RenderRegionSet.h:
1524         * rendering/RenderTreeAsText.cpp:
1525         (WebCore::writeRenderRegionList):
1526
1527 2014-01-09  Antti Koivisto  <antti@apple.com>
1528
1529         Switch HTMLTableRowsCollection from Traversal<> to iterators
1530         https://bugs.webkit.org/show_bug.cgi?id=126684
1531
1532         Reviewed by Andreas Kling.
1533
1534         This is the last remaining client of Traversal<> outside the iterator implementation.
1535
1536         * dom/ElementChildIterator.h:
1537         (WebCore::ElementChildIteratorAdapter<ElementType>::find):
1538         (WebCore::ElementChildConstIteratorAdapter<ElementType>::find):
1539         
1540             Add find with the same semantics as ElementDescendantIterator::find.
1541
1542         * html/HTMLTableRowsCollection.cpp:
1543         (WebCore::HTMLTableRowsCollection::rowAfter):
1544         (WebCore::HTMLTableRowsCollection::lastRow):
1545
1546 2014-01-08  Carlos Garcia Campos  <cgarcia@igalia.com>
1547
1548         REGRESSION(r161176): http/tests/misc/authentication-redirect-3/authentication-sent-to-redirect-same-origin-with-location-credentials.html is failing on GTK
1549         https://bugs.webkit.org/show_bug.cgi?id=126518
1550
1551         Reviewed by Martin Robinson.
1552
1553         Clear the credentials before calling willSendRequest on the client
1554         to avoid sending the credentials to the API layer, but apply them
1555         again to the request right before creating the new SoupRequest.
1556
1557         * platform/network/soup/ResourceHandleSoup.cpp:
1558         (WebCore::continueAfterWillSendRequest):
1559         (WebCore::doRedirect):
1560
1561 2014-01-08  Commit Queue  <commit-queue@webkit.org>
1562
1563         Unreviewed, rolling out r161532.
1564         http://trac.webkit.org/changeset/161532
1565         https://bugs.webkit.org/show_bug.cgi?id=126677
1566
1567         Caused lots of assertion failures (Requested by ap on
1568         #webkit).
1569
1570         * xml/XMLHttpRequest.cpp:
1571         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
1572         (WebCore::XMLHttpRequest::createRequest):
1573         (WebCore::XMLHttpRequest::abort):
1574         (WebCore::XMLHttpRequest::networkError):
1575         (WebCore::XMLHttpRequest::abortError):
1576         (WebCore::XMLHttpRequest::didSendData):
1577         (WebCore::XMLHttpRequest::didReceiveData):
1578         (WebCore::XMLHttpRequest::didTimeout):
1579         * xml/XMLHttpRequest.h:
1580         * xml/XMLHttpRequestProgressEventThrottle.cpp:
1581         (WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
1582         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent):
1583         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadEnd):
1584         (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent):
1585         (WebCore::XMLHttpRequestProgressEventThrottle::fired):
1586         (WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch):
1587         (WebCore::XMLHttpRequestProgressEventThrottle::suspend):
1588         * xml/XMLHttpRequestProgressEventThrottle.h:
1589         * xml/XMLHttpRequestUpload.cpp:
1590         (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
1591         (WebCore::XMLHttpRequestUpload::dispatchEventAndLoadEnd):
1592         * xml/XMLHttpRequestUpload.h:
1593
1594 2014-01-08  Brian Burg  <bburg@apple.com>
1595
1596         Clean up confusing names and calculations in image-dragging functions
1597         https://bugs.webkit.org/show_bug.cgi?id=126661
1598
1599         Reviewed by Timothy Hatcher.
1600
1601         No new tests.
1602
1603         * page/DragController.cpp:
1604         (WebCore::DragController::doImageDrag): rename variables and
1605         simplify the calculation of the image's scaled origin.
1606
1607         * platform/DragImage.cpp:
1608         (WebCore::fitDragImageToMaxSize): rename variables.
1609
1610 2014-01-08  Seokju Kwon  <seokju@webkit.org>
1611
1612         Web Inspector: Remove InspectorClient::captureScreenshot()
1613         https://bugs.webkit.org/show_bug.cgi?id=126616
1614
1615         Reviewed by Joseph Pecoraro.
1616
1617         No new tests, No change in behavior.
1618
1619         Remove leftover mothod as Page.captureScreenshot API was removed in r160202.
1620
1621         * inspector/InspectorClient.h:
1622
1623 2014-01-08  Youenn Fablet  <youennf@gmail.com>
1624
1625         Correctly set XHR loadend attributes (loaded and total).
1626         https://bugs.webkit.org/show_bug.cgi?id=120828
1627
1628         Reviewed by Alexey Proskuryakov.
1629         
1630         Added correct initialization of lengthComputable, loaded and total attributes 
1631         to XHR ProgressEvent events (load, loadstart, loadend, abort, error and timeout).
1632
1633         XMLHttpRequestProgressEventThrottle and XMLHttpRequestUpload now keep persistent knowledge 
1634         of m_loaded and m_total values with this patch.
1635         
1636         Code refactoring to handle event dispatching in case of error in a single manner.
1637         XMLHttpRequestProgressEventThrottle::dispatchProgressEvent is renamed as dispatchThrottledProgressEvent
1638         XMLHttpRequestProgressEventThrottle::dispatchEventAndLoadend is replaced by dispatchProgressEvent(const AtomicString&)
1639
1640         Tests: http/tests/xmlhttprequest/loadstart-event-init.html
1641                http/tests/xmlhttprequest/onabort-progressevent-attributes.html
1642                http/tests/xmlhttprequest/onload-progressevent-attributes.html
1643                http/tests/xmlhttprequest/upload-onabort-progressevent-attributes.html
1644                http/tests/xmlhttprequest/upload-onload-progressevent-attributes.html
1645
1646         * xml/XMLHttpRequest.cpp:
1647         (WebCore::XMLHttpRequest::callReadyStateChangeListener): changed readystatechange event from ProgressEvent to Event (not cancellable, not bubblable) to better match the spec 
1648         (WebCore::XMLHttpRequest::createRequest):
1649         (WebCore::XMLHttpRequest::abort): code refactoring to handle error event dispatching in a single way
1650         (WebCore::XMLHttpRequest::networkError): code refactoring to handle error event dispatching in a single way
1651         (WebCore::XMLHttpRequest::abortError): code refactoring to handle error event dispatching in a single way
1652         (WebCore::XMLHttpRequest::didSendData):
1653         (WebCore::XMLHttpRequest::didReceiveData):
1654         (WebCore::XMLHttpRequest::dispatchErrorEvents): dispatch progress events in case of error
1655         (WebCore::XMLHttpRequest::didTimeout): code refactoring to handle error event dispatching in a single way
1656         * xml/XMLHttpRequest.h:
1657         * 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...) 
1658         (WebCore::XMLHttpRequestProgressEventThrottle::XMLHttpRequestProgressEventThrottle):
1659         (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. 
1660         (WebCore::XMLHttpRequestProgressEventThrottle::dispatchProgressEvent): used to send any ProgressEvent event that is not be throttled
1661         (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent): after the call, no progress event is throttled anymore
1662         (WebCore::XMLHttpRequestProgressEventThrottle::fired): after the call, no progress event is throttled anymore
1663         (WebCore::XMLHttpRequestProgressEventThrottle::hasEventToDispatch):
1664         (WebCore::XMLHttpRequestProgressEventThrottle::suspend):
1665         * 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
1666         * xml/XMLHttpRequestUpload.cpp:
1667         (WebCore::XMLHttpRequestUpload::XMLHttpRequestUpload):
1668         (WebCore::XMLHttpRequestUpload::dispatchProgressEvent):
1669         * xml/XMLHttpRequestUpload.h: introduced m_loaded, m_total and m_lengthComputable, similarly to XMLHttpRequestProgressEventThrottle
1670
1671 2014-01-08  Tim Horton  <timothy_horton@apple.com>
1672
1673         TileController can fail to receive exposedRect from the drawing area if set at the wrong time
1674         https://bugs.webkit.org/show_bug.cgi?id=126536
1675
1676         Reviewed by Simon Fraser.
1677
1678         * WebCore.exp.in:
1679         Export some things.
1680
1681         * page/FrameView.cpp:
1682         (WebCore::FrameView::FrameView):
1683         (WebCore::FrameView::setExposedRect):
1684         Store the exposed rect on FrameView. When it changes, if the main frame
1685         has a TiledBacking, inform it of the change.
1686
1687         * page/FrameView.h:
1688         * platform/graphics/TiledBacking.h:
1689         * platform/graphics/ca/mac/TileController.h:
1690         * platform/graphics/ca/mac/TileController.mm:
1691         (WebCore::TileController::TileController):
1692         (WebCore::TileController::tilesWouldChangeForVisibleRect):
1693         (WebCore::TileController::computeTileCoverageRect):
1694         (WebCore::TileController::revalidateTiles):
1695         (WebCore::TileController::updateTileCoverageMap):
1696         Make use of the fact that we can test if a rect is infinite
1697         instead of having a separate boolean property for that.
1698
1699         * rendering/RenderLayerBacking.cpp:
1700         (WebCore::RenderLayerBacking::RenderLayerBacking):
1701         (WebCore::computeTileCoverage):
1702         Push the FrameView's cached exposed rect down into the TiledBacking when it is created.
1703         We only support clipping for the main frame TileController for now.
1704
1705 2014-01-07  Myles C. Maxfield  <mmaxfield@apple.com>
1706
1707         a fractional value of the css letter-spacing property is not rendered as expected
1708         https://bugs.webkit.org/show_bug.cgi?id=20606
1709
1710         Reviewed by Simon Fraser.
1711
1712         This turns on fractional letter-spacing and word-spacing CSS values.
1713         It is taken mostly from Blink r153727 and iOS. Updating the relevant
1714         types is all that is necessary
1715
1716         Existing tests have been updated.
1717
1718         * css/DeprecatedStyleBuilder.cpp:
1719         (WebCore::DeprecatedStyleBuilder::DeprecatedStyleBuilder):
1720         * page/animation/CSSPropertyAnimation.cpp:
1721         (WebCore::CSSPropertyAnimationWrapperMap::CSSPropertyAnimationWrapperMap):
1722         * platform/graphics/Font.cpp:
1723         (WebCore::Font::Font):
1724         (WebCore::Font::width):
1725         * platform/graphics/Font.h:
1726         (WebCore::Font::wordSpacing):
1727         (WebCore::Font::letterSpacing):
1728         (WebCore::Font::setWordSpacing):
1729         (WebCore::Font::setLetterSpacing):
1730         * rendering/style/RenderStyle.cpp:
1731         (WebCore::RenderStyle::wordSpacing):
1732         (WebCore::RenderStyle::letterSpacing):
1733         (WebCore::RenderStyle::setWordSpacing):
1734         (WebCore::RenderStyle::setLetterSpacing):
1735         * rendering/style/RenderStyle.h:
1736
1737 2014-01-08  Anders Carlsson  <andersca@apple.com>
1738
1739         Add WTF::StringView and use it for grammar checking
1740         https://bugs.webkit.org/show_bug.cgi?id=126644
1741
1742         Reviewed by Antti Koivisto.
1743
1744         Use a StringView in TextCheckerClient::checkTextOfParagraph to avoid upconverting strings unnecessarily.
1745
1746         * editing/TextCheckingHelper.cpp:
1747         (WebCore::checkTextOfParagraph):
1748         Pass a StringView to TextCheckerClient::checkTextOfParagraph.
1749         
1750         * loader/EmptyClients.h:
1751         Update for TextCheckerClient changes.
1752
1753         * platform/text/TextCheckerClient.h:
1754         Change TextCheckerClient::checkTextOfParagraph to take a StringView.
1755         
1756 2014-01-08  Eric Carlson  <eric.carlson@apple.com>
1757
1758         Unreviewed Windows build fix attempt after r161481.
1759
1760         * WebCore.vcxproj/copyForwardingHeaders.cmd:
1761
1762 2014-01-08  Andreas Kling  <akling@apple.com>
1763
1764         Deploy RenderPtr in RenderMathMLOperator::updateFromElement().
1765         <https://webkit.org/b/126628>
1766
1767         Reviewed by Antti Koivisto.
1768
1769         * rendering/mathml/RenderMathMLOperator.cpp:
1770         (WebCore::RenderMathMLOperator::updateFromElement):
1771
1772             Use RenderPtr/createRenderer for renderer creation.
1773             Removed an unnecessary null check (text is always created.)
1774             Also use RenderStyle::createAnonymousStyleWithDisplay()
1775             helper to shorten down the code a bit.
1776
1777 2014-01-08  Alberto Garcia  <berto@igalia.com>
1778
1779         Fix some compilation warnings
1780         https://bugs.webkit.org/show_bug.cgi?id=126635
1781
1782         Reviewed by Csaba Osztrogonác.
1783
1784         Remove code that is no longer being used.
1785
1786         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1787         * platform/graphics/texmap/GraphicsLayerTextureMapper.h:
1788         * platform/gtk/PopupMenuGtk.cpp:
1789         * platform/gtk/RedirectedXCompositeWindow.h:
1790
1791 2014-01-08  Zan Dobersek  <zdobersek@igalia.com>
1792
1793         [Automake] Scripts for generated build targets do not necessarily produce their output
1794         https://bugs.webkit.org/show_bug.cgi?id=126378
1795
1796         Reviewed by Carlos Garcia Campos.
1797
1798         * GNUmakefile.am: Touch the build targets that are generated through helper scripts that don't
1799         assure the output is generated every time the script is invoked, most commonly due to unchanged
1800         * bindings/gobject/GNUmakefile.am: Simply move the gdom-gen-symbols file into the output file
1801         instead of copying it if the contents differ and removing it. This again ensures that the output
1802         file is always newer than its dependencies, even if the input hasn't changed.
1803
1804 2014-01-08  Frédéric Wang  <fred.wang@free.fr>
1805
1806         Remove invalid comments from mathtags.ing
1807         https://bugs.webkit.org/show_bug.cgi?id=126629
1808
1809         Reviewed by Chris Fleizach.
1810
1811         * mathml/mathtags.in:
1812
1813 2014-01-08  Andreas Kling  <akling@apple.com>
1814
1815         RenderMathMLRow::createAnonymousWithParentRenderer() should return RenderPtr.
1816         <https://webkit.org/b/126631>
1817
1818         Reviewed by Antti Koivisto.
1819
1820         * rendering/mathml/RenderMathMLRow.h:
1821         * rendering/mathml/RenderMathMLRow.cpp:
1822         (WebCore::RenderMathMLRow::createAnonymousWithParentRenderer):
1823
1824             Tweak to return RenderPtr<RenderMathMLRow> and removed comment(!)
1825             about how this should return a smart pointer. Also take the
1826             parent renderer as a RenderMathMLRoot& instead of a RenderObject*
1827             since that's all we ever pass.
1828
1829         * rendering/mathml/RenderMathMLRoot.cpp:
1830         (WebCore::RenderMathMLRoot::addChild):
1831
1832             Updated for new createAnonymousWithParentRenderer() signature.
1833
1834 2014-01-08  Mario Sanchez Prada  <mario.prada@samsung.com>
1835
1836         AX: Make roleValue() return DescriptionListRole for <dl> elements
1837         https://bugs.webkit.org/show_bug.cgi?id=126579
1838
1839         Reviewed by Chris Fleizach.
1840
1841         Implement AccessibilityList::roleValue() so it will return
1842         ListRole or DescriptionListRole depending on the type of list.
1843
1844         No new tests needed, as no new functionality was added and ports
1845         should still be exposing the right role for <dl> elements
1846
1847         * accessibility/AccessibilityList.cpp:
1848         (WebCore::AccessibilityList::roleValue): Implemented.
1849         * accessibility/AccessibilityList.h:
1850
1851         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
1852         (atkRole): Removed extra checks for objects with ListRole role.
1853
1854 2014-01-08  Andreas Kling  <akling@apple.com>
1855
1856         createMathMLOperator() should return RenderPtr.
1857         <https://webkit.org/b/126622>
1858
1859         Reviewed by Antti Koivisto.
1860
1861         * rendering/mathml/RenderMathMLFenced.h:
1862         * rendering/mathml/RenderMathMLFenced.cpp:
1863         (WebCore::RenderMathMLFenced::createMathMLOperator):
1864
1865             Make this return a RenderPtr<RenderMathMLOperator>.
1866
1867         (WebCore::RenderMathMLFenced::makeFences):
1868         (WebCore::RenderMathMLFenced::addChild):
1869
1870             Updated for the new createMathMLOperator() signature.
1871
1872 2014-01-07  Antti Koivisto  <antti@apple.com>
1873
1874         REGRESSION (r161195): Acid2 regression tests frequently fail
1875         https://bugs.webkit.org/show_bug.cgi?id=126432
1876
1877         Reviewed by Anders Carlsson.
1878         
1879         We would occasionally dump the render tree before the actual last resource on the page was loaded.
1880         The problematic resource is an image loaded by an <object> tag nested as fallback of another <object>.
1881
1882         * html/HTMLObjectElement.cpp:
1883         (WebCore::HTMLObjectElement::renderFallbackContent):
1884         
1885             Force style recalc when rendering fallback content. The current mechanism for triggering the fallback content load
1886             requires a style recalc.
1887
1888 2014-01-07  Andreas Kling  <akling@apple.com>
1889
1890         createAnonymousMathMLBlock() should return RenderPtr.
1891         <https://webkit.org/b/126583>
1892
1893         Reviewed by Antti Koivisto.
1894
1895         * rendering/mathml/RenderMathMLBlock.h:
1896         * rendering/mathml/RenderMathMLBlock.cpp:
1897         (WebCore::RenderMathMLBlock::createAnonymousMathMLBlock):
1898
1899             Make this return a RenderPtr<RenderMathMLBlock> and removed the
1900             EDisplay argument since it was always using the default (FLEX.)
1901
1902         * rendering/mathml/RenderMathMLFraction.cpp:
1903         (WebCore::RenderMathMLFraction::addChild):
1904
1905             Updated for the new createAnonymousMathMLBlock() signature.
1906
1907 2014-01-07  Eric Carlson  <eric.carlson@apple.com>
1908
1909         Teach MediaSessionManager to manage interruptions
1910         https://bugs.webkit.org/show_bug.cgi?id=126530
1911
1912         Reviewed by Sam Weinig.
1913
1914         Tests: media/video-interruption-active-when-element-created.html
1915                media/video-interruption-with-resume-allowing-play.html
1916                media/video-interruption-with-resume-not-allowing-play.html
1917
1918         * WebCore.exp.in: Export functions needed by Internals.
1919
1920         Add MediaSession and MediaSessionManager.
1921         * CMakeLists.txt:
1922         * GNUmakefile.list.am:
1923         * WebCore.vcxproj/WebCore.vcxproj:
1924         * WebCore.vcxproj/WebCore.vcxproj.filters:
1925         * WebCore.xcodeproj/project.pbxproj:
1926
1927         Automatically pause/play for interruptions. Move media restriction management to a MediaSession.
1928         * html/HTMLMediaElement.cpp:
1929         (WebCore::HTMLMediaElement::HTMLMediaElement): Get rid of m_loadInitiatedByUserGesture and m_userStartedPlayback,
1930             they aren't needed.
1931         (WebCore::HTMLMediaElement::load): Ditto.
1932         (WebCore::HTMLMediaElement::loadInternal): Use the media session to manage restrictions.
1933         (WebCore::HTMLMediaElement::play): Remove redundant iOS code. Postpone playback if called 
1934             during an interruption.
1935         (WebCore::HTMLMediaElement::pause): Remember to not resume playback when it ends if called during
1936             an interruption.
1937         (WebCore::HTMLMediaElement::potentiallyPlaying): Rearrange code to make it easier to understand.
1938         (WebCore::HTMLMediaElement::couldPlayIfEnoughData): Ditto.
1939         (WebCore::HTMLMediaElement::pausedForUserInteraction): Return true if paused because of an interruption.
1940         (WebCore::HTMLMediaElement::removeBehaviorsRestrictionsAfterFirstUserGesture): Be explicit about
1941             which restrictions are removed.
1942         (WebCore::HTMLMediaElement::mediaType): MediaSessionManager::<Type> -> MediaSession::<Type>.
1943         (WebCore::HTMLMediaElement::beginInterruption): New.
1944         (WebCore::HTMLMediaElement::endInterruption): Ditto.
1945         * html/HTMLMediaElement.h:
1946
1947         Pulled MediaSessionManagerToken out of MediaSessionManager.cpp, added functionality to manage interruptions.
1948         * platform/audio/MediaSession.cpp: Added.
1949         (WebCore::MediaSession::create):
1950         (WebCore::MediaSession::MediaSession):
1951         (WebCore::MediaSession::~MediaSession):
1952         (WebCore::MediaSession::beginInterruption): Inform client of interruption state change.
1953         (WebCore::MediaSession::endInterruption): Ditto.
1954         * platform/audio/MediaSession.h: Added.
1955
1956         * platform/audio/MediaSessionManager.cpp:
1957         (WebCore::MediaSessionManager::MediaSessionManager): Initialize interruption counter.
1958         (WebCore::MediaSessionManager::has): MediaType is defined in MediaSession.
1959         (WebCore::MediaSessionManager::count): Ditto.
1960         (WebCore::MediaSessionManager::beginInterruption): Inform all clients of interruption start if
1961             not already in an interruption.
1962         (WebCore::MediaSessionManager::endInterruption): Inform all clients if interruption has ended.
1963         (WebCore::MediaSessionManager::addSession): Renamed from addToken. Set session interruption state.
1964         (WebCore::MediaSessionManager::removeSession): Renamed from removeToken.
1965         * platform/audio/MediaSessionManager.h:
1966
1967         * platform/audio/mac/AudioDestinationMac.cpp:
1968         (WebCore::AudioDestinationMac::AudioDestinationMac): MediaSessionManagerToken -> MediaSession.
1969         * platform/audio/mac/AudioDestinationMac.h:
1970
1971         * platform/audio/mac/MediaSessionManagerMac.cpp:
1972         (MediaSessionManager::updateSessionState): Ditto.
1973
1974         Make it possible for tests to begin and end interruptions.
1975         * testing/Internals.cpp:
1976         (WebCore::Internals::beginMediaSessionInterruption):
1977         (WebCore::Internals::endMediaSessionInterruption):
1978         * testing/Internals.h:
1979         * testing/Internals.idl:
1980
1981 2014-01-07  Seokju Kwon  <seokju@webkit.org>
1982
1983         Web Inspector: Remove leftover 'device metrics' code
1984         https://bugs.webkit.org/show_bug.cgi?id=126607
1985
1986         Reviewed by Joseph Pecoraro.
1987
1988         No new tests, No changes in behavior.
1989
1990         Removes unused code related to 'device metrics'.
1991
1992         * css/MediaQueryEvaluator.cpp:
1993         (WebCore::device_heightMediaFeatureEval):
1994         (WebCore::device_widthMediaFeatureEval):
1995         * inspector/InspectorClient.h:
1996         * inspector/InspectorInstrumentation.cpp:
1997         * inspector/InspectorInstrumentation.h:
1998         * inspector/InspectorPageAgent.cpp:
1999         (WebCore::InspectorPageAgent::InspectorPageAgent):
2000         (WebCore::InspectorPageAgent::disable):
2001         (WebCore::InspectorPageAgent::didLayout):
2002         * inspector/InspectorPageAgent.h:
2003         * page/DOMWindow.cpp:
2004         (WebCore::DOMWindow::innerHeight):
2005         (WebCore::DOMWindow::innerWidth):
2006         * page/Screen.cpp:
2007         (WebCore::Screen::height):
2008         (WebCore::Screen::width):
2009         * rendering/TextAutosizer.cpp:
2010         (WebCore::TextAutosizer::processSubtree):
2011
2012 2014-01-02  Andy Estes  <aestes@apple.com>
2013
2014         [iOS] Upstream remainder of minimal-ui viewport changes
2015         https://bugs.webkit.org/show_bug.cgi?id=126410
2016
2017         Reviewed by Sam Weinig.
2018
2019         * dom/ViewportArguments.h:
2020
2021 2014-01-07  Victor Costan  <costan@gmail.com>
2022
2023         createElementNS handles element name 'xmlns' correctly.
2024         https://bugs.webkit.org/show_bug.cgi?id=126553
2025
2026         Reviewed by Alexey Proskuryakov.
2027
2028         Tests: fast/dom/createElementNS-namespace-errors.html
2029                fast/dom/setAttributeNS-namespace-errors.html
2030
2031         * dom/Document.cpp:
2032         (WebCore::Document::hasValidNamespaceForElements): updated to match DOM3/DOM4 spec.
2033         (WebCore::Document::hasValidNamespaceForAttributes): updated to match DOM3/DOM4 spec.
2034
2035 2014-01-07  Jer Noble  <jer.noble@apple.com>
2036
2037         PlatformLayer containing scrollbars does not disappear when setting overflow:hidden on page root, until resize.
2038         https://bugs.webkit.org/show_bug.cgi?id=116051
2039
2040         Reviewed by Simon Fraser.
2041
2042         Move the pre-existing call to addedOrRemovedScrollbar() outside of the else-statement
2043         in updateScrollbars() so that changes made in the if-statement cause the scrollbar
2044         layers to be updated. The scrollbarAddedOrRemoved local variable guarding access to
2045         addedOrRemovedScrollbar() is already being set (but never checked) inside the if-statement.
2046
2047         * platform/ScrollView.cpp:
2048         (WebCore::ScrollView::updateScrollbars):
2049
2050 2014-01-06  Jer Noble  <jer.noble@apple.com>
2051
2052         HTML5 video tag Does Not Load in Apache htaccess/htpasswd Protected Directory
2053         https://bugs.webkit.org/show_bug.cgi?id=40382
2054
2055         Reviewed by Eric Carlson.
2056
2057         Test: http/tests/media/video-auth.html
2058
2059         Adopt a new AVFoundation API to handle authentication challenge generated while loading
2060         media through an AVAsset. The authentication request comes through as a
2061         NSURLAuthenticationChallenge, and is wrapped in a WebCore::AuthenticationChallenge
2062         by MediaPlayerPrivateAVFoundationObjC, and is sent up to the HTMLMediaElement to handle.
2063         The HTMLMediaElement creates a ResourceRequest, and passes the challenge up to the
2064         ResourceLoadNotifier.
2065
2066         To allow the HTMLMediaElement to initiate handling an AuthenticationChallenge without
2067         actually creating a ResourceLoader, allow ResourceLoaderDelegate to accept a unique
2068         identifier and a DocumentLoader in lieu of a ResourceLoader.
2069
2070         * html/HTMLMediaElement.cpp:
2071         (WebCore::HTMLMediaElement::parseAttribute):
2072         * html/HTMLMediaElement.h:
2073         * loader/ResourceLoadNotifier.cpp:
2074         (WebCore::ResourceLoadNotifier::didReceiveAuthenticationChallenge):
2075         (WebCore::ResourceLoadNotifier::didCancelAuthenticationChallenge):
2076         * loader/ResourceLoadNotifier.h:
2077         * platform/graphics/MediaPlayer.cpp:
2078         (WebCore::MediaPlayer::shouldWaitForResponseToAuthenticationChallenge):
2079         * platform/graphics/MediaPlayer.h:
2080         (WebCore::MediaPlayerClient::mediaPlayerShouldWaitForResponseToAuthenticationChallenge):
2081         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
2082         * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2083         (WebCore::MediaPlayerPrivateAVFoundationObjC::shouldWaitForResponseToAuthenticationChallenge):
2084         (-[WebCoreAVFLoaderDelegate resourceLoader:shouldWaitForResponseToAuthenticationChallenge:]):
2085
2086 2014-01-07  Commit Queue  <commit-queue@webkit.org>
2087
2088         Unreviewed, rolling out r161447.
2089         http://trac.webkit.org/changeset/161447
2090         https://bugs.webkit.org/show_bug.cgi?id=126592
2091
2092         needs some more work (Requested by thorton on #webkit).
2093
2094         * WebCore.exp.in:
2095         * page/FrameView.cpp:
2096         (WebCore::FrameView::FrameView):
2097         * page/FrameView.h:
2098         * platform/graphics/GraphicsLayerClient.h:
2099         * platform/graphics/TiledBacking.h:
2100         * platform/graphics/ca/GraphicsLayerCA.h:
2101         * platform/graphics/ca/PlatformCALayerClient.h:
2102         * platform/graphics/ca/mac/TileController.h:
2103         * platform/graphics/ca/mac/TileController.mm:
2104         (WebCore::TileController::TileController):
2105         (WebCore::TileController::tilesWouldChangeForVisibleRect):
2106         (WebCore::TileController::setExposedRect):
2107         (WebCore::TileController::setClipsToExposedRect):
2108         (WebCore::TileController::computeTileCoverageRect):
2109         (WebCore::TileController::revalidateTiles):
2110         (WebCore::TileController::updateTileCoverageMap):
2111         * rendering/RenderLayerBacking.cpp:
2112         (WebCore::computeTileCoverage):
2113         * rendering/RenderLayerBacking.h:
2114
2115 2014-01-07  Tim Horton  <timothy_horton@apple.com>
2116
2117         TileController can fail to receive exposedRect from the drawing area if set at the wrong time
2118         https://bugs.webkit.org/show_bug.cgi?id=126536
2119
2120         Reviewed by Anders Carlsson.
2121
2122         Move exposedRect to FrameView so it can be pushed in from WebKit before we have
2123         a TiledBacking, and can be retrieved by the TiledBacking when it needs to.
2124
2125         * WebCore.exp.in:
2126         Export some things.
2127
2128         * page/FrameView.cpp:
2129         (WebCore::FrameView::FrameView):
2130         (WebCore::FrameView::setExposedRect):
2131         * page/FrameView.h:
2132         Store the exposed rect on FrameView. When it changes, if the main frame
2133         has a TiledBacking, inform it of the change.
2134
2135         * platform/graphics/GraphicsLayerClient.h:
2136         (WebCore::GraphicsLayerClient::exposedRect):
2137         * platform/graphics/TiledBacking.h:
2138         * platform/graphics/ca/GraphicsLayerCA.h:
2139         * platform/graphics/ca/PlatformCALayerClient.h:
2140         Plumbing so that TileController can retrieve the exposedRect from FrameView.
2141
2142         * platform/graphics/ca/mac/TileController.h:
2143         * platform/graphics/ca/mac/TileController.mm:
2144         (WebCore::TileController::TileController):
2145         (WebCore::TileController::platformCALayerExposedRect):
2146         (WebCore::TileController::tilesWouldChangeForVisibleRect):
2147         (WebCore::TileController::exposedRectDidChange):
2148         (WebCore::TileController::computeTileCoverageRect):
2149         (WebCore::TileController::revalidateTiles):
2150         (WebCore::TileController::updateTileCoverageMap):
2151         Don't store the exposed rect or clipsToExposedRect on TileController.
2152         Instead, retrieve it from our client.
2153         Make use of the fact that we can test if a rect is infinite
2154         instead of having a separate boolean property for that.
2155
2156         * rendering/RenderLayerBacking.cpp:
2157         (WebCore::computeTileCoverage):
2158         (WebCore::RenderLayerBacking::exposedRect):
2159         Hand the FrameView's exposedRect back to our GraphicsLayer.
2160         We only support clipping for the main frame TileController for now.
2161
2162         * rendering/RenderLayerBacking.h:
2163
2164 2014-01-07  Carlos Garcia Campos  <cgarcia@igalia.com>
2165
2166         REGRESSION(r161381): [GTK] Rendering is broken in GTK after r161381
2167         https://bugs.webkit.org/show_bug.cgi?id=126570
2168
2169         Reviewed by Tim Horton.
2170
2171         Use LayoutRect::infiniteRect() instead of IntRect::infiniteRect()
2172         when a LayoutRect is expected.
2173
2174         * rendering/RenderFlowThread.cpp:
2175         (WebCore::RenderFlowThread::fragmentsBoundingBox):
2176         * rendering/RenderLayer.cpp:
2177         (WebCore::RenderLayer::collectFragments):
2178         (WebCore::RenderLayer::calculateClipRects):
2179         * rendering/RenderLayerBacking.cpp:
2180         (WebCore::clipBox):
2181         * rendering/RenderLayerCompositor.cpp:
2182         (WebCore::RenderLayerCompositor::clippedByAncestor):
2183
2184 2014-01-07  Bear Travis  <betravis@adobe.com>
2185
2186         [CSS Shapes] Change default value from 'auto' to 'none'
2187         https://bugs.webkit.org/show_bug.cgi?id=126544
2188
2189         Reviewed by Sam Weinig.
2190
2191         Update the CSS infrastructure to accept 'none' as the default value
2192         for shape-inside and shape-outside.
2193
2194         Updated existing parsing tests.
2195
2196         * css/CSSComputedStyleDeclaration.cpp:
2197         (WebCore::ComputedStyleExtractor::propertyValue):
2198         * css/CSSParser.cpp:
2199         (WebCore::CSSParser::parseShapeProperty):
2200         * rendering/style/ShapeValue.h:
2201
2202 2014-01-07  Hans Muller  <hmuller@adobe.com>
2203
2204         [CSS Shapes] shape-outside layout incorrect when line spans rounded box rounded corners
2205         https://bugs.webkit.org/show_bug.cgi?id=126528
2206
2207         Reviewed by Andreas Kling.
2208
2209         BoxShape::getExcludedIntervals() now checks for the special case where the line spans the
2210         top and bottom rounded corners - which implies that the excluded interval is the box's
2211         horizontal extent.
2212
2213         Test: fast/shapes/shape-outside-floats/shape-outside-line-spans-box-corners.html
2214
2215         * rendering/shapes/BoxShape.cpp:
2216         (WebCore::BoxShape::getExcludedIntervals):
2217
2218 2014-01-07  Alexey Proskuryakov  <ap@apple.com>
2219
2220         Debug biuld fix.
2221
2222         Replace actionTag with mactionTag in assertions.
2223
2224         * mathml/MathMLSelectElement.cpp:
2225         (WebCore::MathMLSelectElement::getSelectedActionChildAndIndex):
2226         (WebCore::MathMLSelectElement::getSelectedActionChild):
2227
2228 2014-01-07  Frédéric Wang  <fred.wang@free.fr>
2229
2230         Add Support for the semantics element.
2231         https://bugs.webkit.org/show_bug.cgi?id=100626
2232
2233         Reviewed by Chris Fleizach.
2234
2235         Tests: mathml/presentation/semantics-2.html
2236                mathml/presentation/semantics-3.html
2237                mathml/presentation/semantics-4.html
2238
2239         This provides a complete support for the semantics element. When the first child is a content MathML, an annotation can be selected and displayed. The selection algorithm is identical to Gecko's one. The recognized annotations are text (e.g. LaTeX), presentation MathML, SVG and HTML.
2240
2241         * mathml/MathMLElement.cpp:
2242         (WebCore::MathMLElement::childShouldCreateRenderer):
2243         (WebCore::MathMLElement::attributeChanged):
2244         (WebCore::MathMLElement::isPresentationMathML):
2245         * mathml/MathMLElement.h:
2246         (WebCore::MathMLElement::isMathMLToken):
2247         (WebCore::MathMLElement::isSemanticAnnotation):
2248         (WebCore::MathMLElement::isPresentationMathML):
2249         (WebCore::MathMLElement::updateSelectedChild):
2250         * mathml/MathMLInlineContainerElement.h:
2251         * mathml/MathMLSelectElement.cpp:
2252         (WebCore::MathMLSelectElement::getSelectedActionChildAndIndex):
2253         (WebCore::MathMLSelectElement::getSelectedActionChild):
2254         (WebCore::MathMLSelectElement::getSelectedSemanticsChild):
2255         (WebCore::MathMLSelectElement::updateSelectedChild):
2256         (WebCore::MathMLSelectElement::toggle):
2257         * mathml/MathMLSelectElement.h:
2258         * mathml/MathMLTextElement.h:
2259         * mathml/mathattrs.in:
2260         * mathml/mathtags.in:
2261
2262 2014-01-07  Pascal Jacquemart  <p.jacquemart@samsung.com>
2263
2264         Fix compilation issue with GLES2 after http://webkit.org/b/126548
2265         https://bugs.webkit.org/show_bug.cgi?id=126578
2266
2267         Reviewed by  Brent Fulgham
2268
2269         * platform/graphics/opengl/TemporaryOpenGLSetting.cpp: added GLES2/gl2.h include
2270
2271 2014-01-07  László Langó  <llango.u-szeged@partner.samsung.com>
2272
2273         Remove some extra includes from XML.
2274         https://bugs.webkit.org/show_bug.cgi?id=126572
2275
2276         Reviewed by Anders Carlsson.
2277
2278         No new tests, no functionality changed.
2279
2280         * xml/XMLHttpRequest.cpp:
2281         * xml/XMLHttpRequestUpload.cpp:
2282         * xml/XMLHttpRequestUpload.h:
2283         * xml/XPathEvaluator.cpp:
2284         * xml/XPathExpression.cpp:
2285         * xml/XPathExpressionNode.cpp:
2286         * xml/XPathFunctions.cpp:
2287         * xml/XPathNodeSet.cpp:
2288         * xml/XPathParser.cpp:
2289         * xml/XPathPath.cpp:
2290         * xml/XPathPredicate.cpp:
2291         * xml/XPathPredicate.h:
2292         * xml/XPathResult.cpp:
2293         * xml/XPathValue.cpp:
2294         * xml/XPathVariableReference.cpp:
2295         * xml/XSLImportRule.cpp:
2296         * xml/XSLStyleSheetLibxslt.cpp:
2297         * xml/XSLTProcessorLibxslt.cpp:
2298         * xml/parser/XMLDocumentParser.cpp:
2299         * xml/parser/XMLDocumentParserLibxml2.cpp:
2300
2301 2014-01-07  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2302
2303         Add toHTMLTableSectionElement() functions, and use it
2304         https://bugs.webkit.org/show_bug.cgi?id=126418
2305
2306         Reviewed by Andreas Kling.
2307
2308         HTMLTableSectionElement covers tbody, tfoot, and thead tags. So, we can't
2309         generate isHTMLTableSectionElement() by using template. This patch add
2310         toHTMLTableSectionElement() manually in order to cleanup static_cast<>.
2311
2312         No new tests, no behavior change.
2313
2314         * html/HTMLTableElement.cpp:
2315         (WebCore::HTMLTableElement::tHead):
2316         (WebCore::HTMLTableElement::tFoot):
2317         (WebCore::HTMLTableElement::lastBody):
2318         * html/HTMLTableRowElement.cpp:
2319         (WebCore::HTMLTableRowElement::rowIndex):
2320         * html/HTMLTableSectionElement.h:
2321         * html/HTMLTagNames.in:
2322
2323 2014-01-07  László Langó  <llango.u-szeged@partner.samsung.com>
2324
2325         Remove some extra includes from SVG.
2326         https://bugs.webkit.org/show_bug.cgi?id=126565
2327
2328         Reviewed by Dirk Schulze.
2329
2330         No new tests, no functionality changed.
2331
2332         * rendering/svg/RenderSVGBlock.cpp:
2333         * rendering/svg/RenderSVGContainer.cpp:
2334         * rendering/svg/RenderSVGEllipse.cpp:
2335         * rendering/svg/RenderSVGEllipse.h:
2336         * rendering/svg/RenderSVGHiddenContainer.cpp:
2337         * rendering/svg/RenderSVGImage.cpp:
2338         * rendering/svg/RenderSVGImage.h:
2339         * rendering/svg/RenderSVGInlineText.cpp:
2340         * rendering/svg/RenderSVGModelObject.cpp:
2341         * rendering/svg/RenderSVGPath.cpp:
2342         * rendering/svg/RenderSVGRect.cpp:
2343         * rendering/svg/RenderSVGResource.cpp:
2344         * rendering/svg/RenderSVGResourceClipper.cpp:
2345         * rendering/svg/RenderSVGResourceClipper.h:
2346         * rendering/svg/RenderSVGResourceContainer.cpp:
2347         * rendering/svg/RenderSVGResourceFilter.cpp:
2348         * rendering/svg/RenderSVGResourceFilter.h:
2349         * rendering/svg/RenderSVGResourceFilterPrimitive.cpp:
2350         * rendering/svg/RenderSVGResourceFilterPrimitive.h:
2351         * rendering/svg/RenderSVGResourceGradient.cpp:
2352         * rendering/svg/RenderSVGResourceGradient.h:
2353         * rendering/svg/RenderSVGResourceLinearGradient.cpp:
2354         * rendering/svg/RenderSVGResourceMarker.cpp:
2355         * rendering/svg/RenderSVGResourceMarker.h:
2356         * rendering/svg/RenderSVGResourceMasker.cpp:
2357         * rendering/svg/RenderSVGResourceMasker.h:
2358         * rendering/svg/RenderSVGResourcePattern.cpp:
2359         * rendering/svg/RenderSVGResourcePattern.h:
2360         * rendering/svg/RenderSVGResourceRadialGradient.cpp:
2361         * rendering/svg/RenderSVGResourceSolidColor.cpp:
2362         * rendering/svg/RenderSVGResourceSolidColor.h:
2363         * rendering/svg/RenderSVGRoot.cpp:
2364         * rendering/svg/RenderSVGShape.cpp:
2365         * rendering/svg/RenderSVGText.cpp:
2366         * rendering/svg/RenderSVGTransformableContainer.cpp:
2367         * rendering/svg/SVGInlineFlowBox.cpp:
2368         * rendering/svg/SVGInlineTextBox.cpp:
2369         * rendering/svg/SVGRenderSupport.cpp:
2370         * rendering/svg/SVGRenderTreeAsText.cpp:
2371         * rendering/svg/SVGRenderingContext.cpp:
2372         * rendering/svg/SVGResources.cpp:
2373         * rendering/svg/SVGResourcesCache.cpp:
2374         * rendering/svg/SVGResourcesCycleSolver.cpp:
2375         * rendering/svg/SVGRootInlineBox.cpp:
2376         * rendering/svg/SVGTextChunk.cpp:
2377         * rendering/svg/SVGTextChunkBuilder.cpp:
2378         * rendering/svg/SVGTextLayoutAttributes.h:
2379         * rendering/svg/SVGTextLayoutAttributesBuilder.h:
2380         * rendering/svg/SVGTextLayoutEngine.cpp:
2381         * rendering/svg/SVGTextLayoutEngine.h:
2382         * rendering/svg/SVGTextMetricsBuilder.h:
2383         * rendering/svg/SVGTextQuery.cpp:
2384         * rendering/svg/SVGTextRunRenderingContext.cpp:
2385
2386 2014-01-07  Krzysztof Czech  <k.czech@samsung.com>
2387
2388         [ATK] Expose aria-checked mixed state as ATK_STATE_INDETERMINATE
2389         https://bugs.webkit.org/show_bug.cgi?id=125855
2390
2391         Reviewed by Mario Sanchez Prada.
2392
2393         Test: accessibility/aria-checked-mixed-value.html
2394
2395         Expose ATK_STATE_INDETERMINATE to support aria-checked mixed state
2396         for radio and checkbox types.
2397
2398         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2399         (setAtkStateSetFromCoreObject):
2400
2401 2014-01-07  Mark Rowe  <mrowe@apple.com>
2402
2403         <https://webkit.org/b/126562> DOMProgressEvent has unspecified availability
2404
2405         Reviewed by Ryosuke Niwa.
2406
2407         * bindings/objc/PublicDOMInterfaces.h: Add DOMProgressEvent. It first appeared in 10.6.
2408
2409 2014-01-07  Mark Rowe  <mrowe@apple.com>
2410
2411         Another Mountain Lion build fix.
2412
2413         The Mountain Lion version of NS_DEPRECATED_MAC generates a reference to a nonexistent
2414         availability macro when the introduced and deprecated versions are the same. Follow
2415         AppKit's lead in working around this by defining the macros that will be referenced
2416         for the various possible OS version numbers. This isn't an issue on newer versions of
2417         OS X as the Foundation availability macros expand directly in to __attributes__ rather
2418         than in to the legacy availability maros.
2419
2420         * bindings/objc/WebKitAvailability.h:
2421
2422 2014-01-06  Mark Rowe  <mrowe@apple.com>
2423
2424         Mountain Lion build fix.
2425
2426         * bindings/objc/WebKitAvailability.h: #define __AVAILABILITY_INTERNAL__MAC_TBD so that
2427         the TBD version works on Mountain Lion. Newer OS versions use a slightly different set
2428         of macros that already support this version. Add a missing #include so that defintions
2429         of the Foundation availability macros can be found even if no other Foundation headers
2430         were included first.
2431
2432 2014-01-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2433
2434         Unreviewed, rolling out r161401.
2435         http://trac.webkit.org/changeset/161401
2436         https://bugs.webkit.org/show_bug.cgi?id=126418
2437
2438         REGRESSION(r161401): Break layout test on mac-wk1(Debug)
2439
2440         * html/HTMLTableElement.cpp:
2441         (WebCore::HTMLTableElement::tHead):
2442         (WebCore::HTMLTableElement::tFoot):
2443         (WebCore::HTMLTableElement::lastBody):
2444         * html/HTMLTableRowElement.cpp:
2445         (WebCore::HTMLTableRowElement::rowIndex):
2446         * html/HTMLTableSectionElement.h:
2447
2448 2014-01-05  Mark Rowe  <mrowe@apple.com>
2449
2450         <https://webkit.org/b/126500> Move Objective-C DOM bindings off the legacy WebKit availability macros
2451
2452         The legacy WebKit availability macros are verbose, confusing, and provide no benefit
2453         over using the system availability macros directly. The original vision was that
2454         they'd serve a cross-platform purpose but that never came to be.
2455
2456         The OS X version used in the new availability macros is based on the mapping in
2457         JavaScriptCore/WebKitAvailability.h.
2458
2459         Part of <rdar://problem/15512304>.
2460
2461         Reviewed by Sam Weinig.
2462
2463         * bindings/objc/DOMCSS.h:
2464         * bindings/objc/DOMEventException.h:
2465         * bindings/objc/DOMException.h:
2466         * bindings/objc/DOMExtensions.h:
2467         * bindings/objc/DOMObject.h:
2468         * bindings/objc/DOMRangeException.h:
2469         * bindings/objc/DOMXPathException.h:
2470         * bindings/objc/PublicDOMInterfaces.h:
2471         * bindings/objc/WebScriptObject.h:
2472         * bindings/scripts/CodeGeneratorObjC.pm:
2473         (ReadPublicInterfaces):
2474         (GenerateHeader): Tag enums with WK_ENUM_AVAILABLE_MAC and classes with WEBKIT_CLASS_AVAILABLE_MAC.
2475         Remove the #ifs that we were previously generating now that enums are appropriately tagged.
2476         * bindings/scripts/test/ObjC/DOMTestActiveDOMObject.h:
2477         * bindings/scripts/test/ObjC/DOMTestActiveDOMObjectInternal.h:
2478         * bindings/scripts/test/ObjC/DOMTestCallback.h:
2479         * bindings/scripts/test/ObjC/DOMTestCallbackInternal.h:
2480         * bindings/scripts/test/ObjC/DOMTestCustomNamedGetter.h:
2481         * bindings/scripts/test/ObjC/DOMTestCustomNamedGetterInternal.h:
2482         * bindings/scripts/test/ObjC/DOMTestEventConstructor.h:
2483         * bindings/scripts/test/ObjC/DOMTestEventConstructorInternal.h:
2484         * bindings/scripts/test/ObjC/DOMTestEventTarget.h:
2485         * bindings/scripts/test/ObjC/DOMTestEventTargetInternal.h:
2486         * bindings/scripts/test/ObjC/DOMTestException.h:
2487         * bindings/scripts/test/ObjC/DOMTestExceptionInternal.h:
2488         * bindings/scripts/test/ObjC/DOMTestGenerateIsReachable.h:
2489         * bindings/scripts/test/ObjC/DOMTestGenerateIsReachableInternal.h:
2490         * bindings/scripts/test/ObjC/DOMTestInterface.h:
2491         * bindings/scripts/test/ObjC/DOMTestInterfaceInternal.h:
2492         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListener.h:
2493         * bindings/scripts/test/ObjC/DOMTestMediaQueryListListenerInternal.h:
2494         * bindings/scripts/test/ObjC/DOMTestNamedConstructor.h:
2495         * bindings/scripts/test/ObjC/DOMTestNamedConstructorInternal.h:
2496         * bindings/scripts/test/ObjC/DOMTestNode.h:
2497         * bindings/scripts/test/ObjC/DOMTestNodeInternal.h:
2498         * bindings/scripts/test/ObjC/DOMTestObj.h:
2499         * bindings/scripts/test/ObjC/DOMTestObjInternal.h:
2500         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructors.h:
2501         * bindings/scripts/test/ObjC/DOMTestOverloadedConstructorsInternal.h:
2502         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
2503         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterfaceInternal.h:
2504         * bindings/scripts/test/ObjC/DOMTestTypedefs.h:
2505         * bindings/scripts/test/ObjC/DOMTestTypedefsInternal.h:
2506         * bindings/scripts/test/ObjC/DOMattribute.h:
2507         * bindings/scripts/test/ObjC/DOMattributeInternal.h:
2508         * bindings/scripts/test/ObjC/DOMreadonly.h:
2509         * bindings/scripts/test/ObjC/DOMreadonlyInternal.h:
2510
2511 2014-01-06  Ryosuke Niwa  <rniwa@webkit.org>
2512
2513         REGRESSION(r157851): trailing space inside an editable region could be erroneously collapsed
2514         https://bugs.webkit.org/show_bug.cgi?id=126549
2515
2516         Reviewed by Sam Weinig.
2517
2518         The regression was caused by erroneous use of m_currentCharacterIsSpace in place of m_currentCharacterIsWS.
2519
2520         See the following two lines before the refactoring:
2521         http://trac.webkit.org/browser/trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp?rev=157850#L3074
2522         http://trac.webkit.org/browser/trunk/Source/WebCore/rendering/RenderBlockLineLayout.cpp?rev=157850#L3198
2523
2524         I've also cross-checked other places where m_currentCharacterIsSpace and m_currentCharacterIsWS are used.
2525
2526         Test: editing/inserting/inserting-trailing-space-and-letter.html
2527
2528         * rendering/line/BreakingContextInlineHeaders.h:
2529         (WebCore::BreakingContext::handleText):
2530
2531 2014-01-06  Seokju Kwon  <seokju@webkit.org>
2532
2533         Web Inspector: Remove canOverrideDeviceMetrics and setDeviceMetricsOverride from protocol
2534         https://bugs.webkit.org/show_bug.cgi?id=126149
2535
2536         Reviewed by Joseph Pecoraro.
2537
2538         No new tests, No changes in behavior.
2539
2540         These are not used anywhere in WebInspectorUI.
2541         So, it removes unused Protocols and APIs.
2542
2543         * inspector/InspectorClient.h:
2544         * inspector/InspectorPageAgent.cpp:
2545         (WebCore::InspectorPageAgent::InspectorPageAgent):
2546         (WebCore::InspectorPageAgent::disable):
2547         * inspector/InspectorPageAgent.h:
2548         * inspector/protocol/Page.json:
2549
2550 2014-01-06  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
2551
2552         Add toHTMLTableSectionElement() functions, and use it
2553         https://bugs.webkit.org/show_bug.cgi?id=126418
2554
2555         Reviewed by Anders Carlsson.
2556
2557         HTMLTableSectionElement covers tbody, tfoot, and thead tags. So, we can't
2558         generate isHTMLTableSectionElement() by using template. This patch add
2559         toHTMLTableSectionElement() manually in order to cleanup static_cast<>.
2560
2561         No new tests, no behavior change.
2562
2563         * html/HTMLTableElement.cpp:
2564         (WebCore::HTMLTableElement::tHead):
2565         (WebCore::HTMLTableElement::tFoot):
2566         (WebCore::HTMLTableElement::lastBody):
2567         * html/HTMLTableRowElement.cpp:
2568         (WebCore::HTMLTableRowElement::rowIndex):
2569         * html/HTMLTableSectionElement.h:
2570         * html/HTMLTagNames.in:
2571
2572 2014-01-06  Mark Rowe  <mrowe@apple.com>
2573
2574         <https://webkit.org/b/126559> Be more correct in dealing with NSControlSize
2575
2576         Reviewed by Ryosuke Niwa.
2577
2578         * platform/mac/ScrollbarThemeMac.mm:
2579         (WebCore::scrollbarControlSizeToNSControlSize): Helper function to map from ScrollbarControlSize
2580         to NSControlSize.
2581         (WebCore::ScrollbarThemeMac::registerScrollbar): Use the helper rather than casting.
2582         (WebCore::ScrollbarThemeMac::scrollbarThickness): Use the helper.
2583         * rendering/RenderThemeMac.mm:
2584         (WebCore::RenderThemeMac::progressBarRectForBounds): Update the type of the local to NSControlSize.
2585         (WebCore::RenderThemeMac::paintProgressBar): Ditto.
2586
2587 2014-01-06  Brent Fulgham  <bfulgham@apple.com>
2588
2589         [WebGL] Be safer about toggling OpenGL state by using a scoped object to control setting lifetime.
2590         https://bugs.webkit.org/show_bug.cgi?id=126548
2591
2592         Reviewed by Anders Carlsson.
2593
2594         No new tests since there is no change in behavior.
2595
2596         * GNUmakefile.list.am: Updated to build new TemporaryOpenGLSetting files.
2597         * PlatformBlackBerry.cmake: Ditto
2598         * PlatformEfl.cmake: Ditto
2599         * PlatformGTK.cmake: Ditto
2600         * PlatformNix.cmake: Ditto
2601         * WebCore.vcxproj/WebCore.vcxproj: Ditto
2602         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto
2603         * WebCore.xcodeproj/project.pbxproj: Ditto
2604         * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
2605         (WebCore::GraphicsContext3D::resolveMultisamplingIfNecessary): Use new object.
2606         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
2607         (WebCore::GraphicsContext3D::prepareTexture): Ditto
2608         (WebCore::GraphicsContext3D::reshape): Ditto
2609         * platform/graphics/opengl/TemporaryOpenGLSetting.cpp: Added.
2610         (WebCore::TemporaryOpenGLSetting::TemporaryOpenGLSetting):
2611         (WebCore::TemporaryOpenGLSetting::~TemporaryOpenGLSetting):
2612         * platform/graphics/opengl/TemporaryOpenGLSetting.h: Added.
2613
2614 2014-01-06  Simon Fraser  <simon.fraser@apple.com>
2615
2616         Hook up the RemoteScrollingCoordinator
2617         https://bugs.webkit.org/show_bug.cgi?id=126547
2618
2619         Reviewed by Tim Horton.
2620
2621         Export lots of scrolling-related symbols for use by WebKit2.
2622
2623         * WebCore.exp.in:
2624
2625 2014-01-06  Seokju Kwon  <seokju@webkit.org>
2626
2627         Web Inspector: Remove support for FileSystem in Frontend.
2628         https://bugs.webkit.org/show_bug.cgi?id=126369
2629
2630         Reviewed by Joseph Pecoraro.
2631
2632         No new tests, No change in behavior.
2633
2634         Remove leftover codes from protocol after r156692.
2635
2636         * CMakeLists.txt:
2637         * DerivedSources.make:
2638         * GNUmakefile.am:
2639         * inspector/InspectorFrontendClient.h:
2640         * inspector/InspectorFrontendClientLocal.h:
2641         * inspector/InspectorFrontendHost.cpp:
2642         * inspector/InspectorFrontendHost.h:
2643         * inspector/InspectorFrontendHost.idl:
2644         * inspector/protocol/FileSystem.json: Removed.
2645
2646 2014-01-06  Zoltan Horvath  <zoltan@webkit.org>
2647
2648         [CSS Regions][CSS Shapes] ASSERTION FAILED: m_segmentRanges.size() < m_segments.size()
2649         https://bugs.webkit.org/show_bug.cgi?id=125770
2650
2651         Reviewed by Bem Jones-Bey.
2652
2653         When we have an e.g. up-side-down triangle, when the content doesn't fit in the bottom part of the shape,
2654         and the adjusted content flows into the next region with a shape, we need to update the actual shape
2655         and region. Since it wasn't updated, it led to a shape mismatch, which led to assert/layout error.
2656
2657         Test: fast/regions/shape-inside/shape-inside-on-multiple-regions-bottom-adjustment.html
2658
2659         * rendering/RenderBlockLineLayout.cpp:
2660         (WebiCore::RenderBlockFlow::updateShapeAndSegmentsForCurrentLineInFlowThread): Update current shape
2661         and region, when adjustment occured.
2662
2663 2014-01-06  Seokju Kwon  <seokju@webkit.org>
2664
2665         Web Inspector: Get rid of Inspector/BindingVisitors.h
2666         https://bugs.webkit.org/show_bug.cgi?id=126374
2667
2668         Reviewed by Joseph Pecoraro.
2669
2670         No new tests, No change in behavior.
2671
2672         In r161204, methods related to BindingVisitors was removed.
2673
2674         * GNUmakefile.list.am:
2675         * WebCore.vcxproj/WebCore.vcxproj:
2676         * WebCore.vcxproj/WebCore.vcxproj.filters:
2677         * WebCore.xcodeproj/project.pbxproj:
2678         * bindings/js/ScriptProfiler.h:
2679         * inspector/BindingVisitors.h: Removed.
2680         * inspector/InspectorCanvasAgent.cpp:
2681         * inspector/InspectorMemoryAgent.cpp:
2682
2683 2014-01-06  Tim Horton  <timothy_horton@apple.com>
2684
2685         Add {IntRect, FloatRect}::infiniteRect() and ::isInfinite()
2686         https://bugs.webkit.org/show_bug.cgi?id=126537
2687
2688         Reviewed by Simon Fraser.
2689
2690         * platform/graphics/FloatRect.h:
2691         (WebCore::FloatRect::infiniteRect):
2692         (WebCore::FloatRect::isInfinite):
2693         * platform/graphics/IntRect.h:
2694         (WebCore::IntRect::infiniteRect):
2695         (WebCore::IntRect::isInfinite):
2696         Add infiniteRect() and isInfinite() to FloatRect and IntRect.
2697
2698         * platform/graphics/ca/GraphicsLayerCA.cpp:
2699         (WebCore::GraphicsLayerCA::setNeedsDisplay):
2700         * rendering/PaintInfo.h:
2701         (WebCore::PaintInfo::applyTransform):
2702         * rendering/RenderFlowThread.cpp:
2703         (WebCore::RenderFlowThread::fragmentsBoundingBox):
2704         * rendering/RenderLayer.cpp:
2705         (WebCore::RenderLayer::collectFragments):
2706         (WebCore::RenderLayer::calculateClipRects):
2707         * rendering/RenderLayerBacking.cpp:
2708         (WebCore::clipBox):
2709         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2710         * rendering/RenderLayerCompositor.cpp:
2711         (WebCore::RenderLayerCompositor::clippedByAncestor):
2712         * rendering/svg/SVGRenderingContext.cpp:
2713         (WebCore::SVGRenderingContext::renderSubtreeToImageBuffer):
2714         Adopt the new functions.
2715
2716 2014-01-06  Seokju Kwon  <seokju@webkit.org>
2717
2718         Web Inspector: Get rid of DOM.setFileInputFiles from Protocol
2719         https://bugs.webkit.org/show_bug.cgi?id=126312
2720
2721         Reviewed by Joseph Pecoraro.
2722
2723         No new tests, No changes in behavior.
2724
2725         It is a dead code as all ports in WebKit don't support it.
2726         And this patch removes all things related to DOM.setFileInputFiles in Frontend.
2727
2728         * inspector/InspectorClient.h:
2729         * inspector/InspectorController.cpp:
2730         (WebCore::InspectorController::InspectorController):
2731         * inspector/InspectorDOMAgent.cpp:
2732         (WebCore::InspectorDOMAgent::InspectorDOMAgent):
2733         * inspector/InspectorDOMAgent.h:
2734         (WebCore::InspectorDOMAgent::create):
2735         * inspector/protocol/DOM.json:
2736
2737 2014-01-06  Brent Fulgham  <bfulgham@apple.com>
2738
2739         [WebGL] Revise String Concatenation (Follow-up to r161247)
2740         https://bugs.webkit.org/show_bug.cgi?id=126411
2741
2742         Reviewed by Dean Jackson.
2743
2744         * html/canvas/WebGLRenderingContext.cpp:
2745         (WebCore::WebGLRenderingContext::getUniformLocation): Use more efficient string
2746         concatenation per Darin Adler's suggestion.
2747
2748 2014-01-06  Brent Fulgham  <bfulgham@apple.com>
2749
2750         [WebGL] FBO Depth Buffer Attachment Function Improperly Clearing with 0
2751         https://bugs.webkit.org/show_bug.cgi?id=126538
2752         <rdar://problem/15201336>
2753
2754         Reviewed by Dean Jackson.
2755
2756         Tested by webgl/1.0.2/resources/webgl_test_files/conformance/renderbuffers/framebuffer-object-attachment.html
2757
2758         * html/canvas/WebGLFramebuffer.cpp:
2759         (WebCore::WebGLFramebuffer::initializeAttachments): Clear depth buffer with 1.0f (rather than 0), to match expected
2760         default (clear) buffer state for OpenGL. Using 0 would require us to flip the clear mask for the depth attachment
2761         type.
2762
2763 2014-01-06  Simon Fraser  <simon.fraser@apple.com>
2764
2765         Add new files for UI-side scrolling
2766         https://bugs.webkit.org/show_bug.cgi?id=126532
2767
2768         Reviewed by Anders Carlson.
2769
2770         * WebCore.xcodeproj/project.pbxproj: Make lots of scrolling-related headers Private
2771         so WebKit2 can include them.
2772         * page/scrolling/ScrollingCoordinator.cpp:
2773         (WebCore::ScrollingCoordinator::scheduleUpdateScrollPositionForNode): Callback that
2774         indicates that the given node has been scrolled asynchronously. Currently only
2775         handles the main frame.
2776         * page/scrolling/ScrollingCoordinator.h: Add support for type-casts of a remote subclass
2777         in another namespace.
2778         (WebCore::ScrollingCoordinator::isRemoteScrollingCoordinator):
2779         * page/scrolling/ScrollingTree.h:
2780         (WebCore::ScrollingTree::isRemoteScrollingTree):
2781
2782 2014-01-06  Gavin Barraclough  <barraclough@apple.com>
2783
2784         Move ViewState to WebCore
2785         https://bugs.webkit.org/show_bug.cgi?id=126488
2786
2787         Reviewed by Anders Carlson.
2788
2789         This change also partial reverts handling of LayerHostingMode, making this
2790         a separate message again. With hindsight the new way of doing this wasn't
2791         in all ways simpler, and it won't make sense to move this to WebCore.
2792
2793         * WebCore.xcodeproj/project.pbxproj:
2794         * page/ViewState.h: Added.
2795             - Moved from WebKit2, will be used by Page & FocusController.
2796
2797 2014-01-06  Martin Robinson  <mrobinson@igalia.com>
2798
2799         [CMake] [GTK] Fix the build for the WebKitGTK+ developer configuration
2800         https://bugs.webkit.org/show_bug.cgi?id=126505
2801
2802         Reviewed by Gustavo Noronha Silva.
2803
2804         * CMakeLists.txt: Add missing IDLS and source files to the lists.
2805         * PlatformGTK.cmake: Add missing include directories and source files to the lists.
2806         Use the GeoClue, GUdev, and gio-unix include paths and libraries and sort the list
2807         of WebCore include directories.
2808         * UseJSC.cmake: Align the sourced list with the contents of the bindings/js directory.
2809
2810 2014-01-06  Gavin Barraclough  <barraclough@apple.com>
2811
2812         Refactor NSActivity handling code from ChildProcess to UserActivity
2813         https://bugs.webkit.org/show_bug.cgi?id=126330
2814
2815         Unreviewed speculative Windows build fix.
2816
2817         * WebCore.vcxproj/WebCore.vcxproj:
2818             - Added UserActivity.cpp/.h.
2819
2820 2014-01-06  peavo@outlook.com  <peavo@outlook.com>
2821
2822         [Win] Link error.
2823         https://bugs.webkit.org/show_bug.cgi?id=126526
2824
2825         Reviewed by Brent Fulgham.
2826
2827         * WebCore.vcxproj/WebCore.vcxproj: Include UserActivity files in build.
2828         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
2829
2830 2014-01-06  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2831
2832         [Nix] Adding screenRect implementation to PlatformScreenNix
2833         https://bugs.webkit.org/show_bug.cgi?id=126231
2834
2835         Reviewed by Csaba Osztrogonác.
2836
2837         No new tests needed.
2838
2839         * platform/nix/PlatformScreenNix.cpp:
2840         (WebCore::screenRect):
2841
2842 2014-01-06  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2843
2844         [Nix] Adding missing platform #ifs to WebCore files
2845         https://bugs.webkit.org/show_bug.cgi?id=126227
2846
2847         Reviewed by Csaba Osztrogonác.
2848
2849         No new tests needed.
2850
2851         * loader/EmptyClients.h:
2852         * page/ChromeClient.h:
2853         * page/DragController.cpp:
2854         (WebCore::DragController::startDrag):
2855         * platform/LocalizedStrings.h:
2856
2857 2014-01-06  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2858
2859         [Nix] Adding new strings to LocalizedStringsNix
2860         https://bugs.webkit.org/show_bug.cgi?id=126228
2861
2862         Reviewed by Csaba Osztrogonác.
2863
2864         No new tests needed.
2865
2866         * platform/nix/LocalizedStringsNix.cpp:
2867         (WebCore::submitButtonDefaultLabel):
2868         (WebCore::inputElementAltText):
2869         (WebCore::resetButtonDefaultLabel):
2870         (WebCore::defaultDetailsSummaryText):
2871         (WebCore::searchableIndexIntroduction):
2872         (WebCore::fileButtonChooseFileLabel):
2873         (WebCore::fileButtonChooseMultipleFilesLabel):
2874         (WebCore::fileButtonNoFileSelectedLabel):
2875         (WebCore::fileButtonNoFilesSelectedLabel):
2876         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
2877         (WebCore::contextMenuItemTagDownloadLinkToDisk):
2878         (WebCore::contextMenuItemTagCopyLinkToClipboard):
2879         (WebCore::contextMenuItemTagOpenImageInNewWindow):
2880         (WebCore::contextMenuItemTagDownloadImageToDisk):
2881         (WebCore::contextMenuItemTagCopyImageToClipboard):
2882         (WebCore::contextMenuItemTagCopyImageUrlToClipboard):
2883         (WebCore::contextMenuItemTagOpenVideoInNewWindow):
2884         (WebCore::contextMenuItemTagOpenAudioInNewWindow):
2885         (WebCore::contextMenuItemTagDownloadVideoToDisk):
2886         (WebCore::contextMenuItemTagDownloadAudioToDisk):
2887         (WebCore::contextMenuItemTagCopyVideoLinkToClipboard):
2888         (WebCore::contextMenuItemTagCopyAudioLinkToClipboard):
2889         (WebCore::contextMenuItemTagToggleMediaControls):
2890         (WebCore::contextMenuItemTagShowMediaControls):
2891         (WebCore::contextMenuitemTagHideMediaControls):
2892         (WebCore::contextMenuItemTagToggleMediaLoop):
2893         (WebCore::contextMenuItemTagEnterVideoFullscreen):
2894         (WebCore::contextMenuItemTagMediaPlay):
2895         (WebCore::contextMenuItemTagMediaPause):
2896         (WebCore::contextMenuItemTagMediaMute):
2897         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
2898         (WebCore::contextMenuItemTagCopy):
2899         (WebCore::contextMenuItemTagDelete):
2900         (WebCore::contextMenuItemTagSelectAll):
2901         (WebCore::contextMenuItemTagUnicode):
2902         (WebCore::contextMenuItemTagInputMethods):
2903         (WebCore::contextMenuItemTagGoBack):
2904         (WebCore::contextMenuItemTagGoForward):
2905         (WebCore::contextMenuItemTagStop):
2906         (WebCore::contextMenuItemTagReload):
2907         (WebCore::contextMenuItemTagCut):
2908         (WebCore::contextMenuItemTagPaste):
2909         (WebCore::contextMenuItemTagNoGuessesFound):
2910         (WebCore::contextMenuItemTagIgnoreSpelling):
2911         (WebCore::contextMenuItemTagLearnSpelling):
2912         (WebCore::contextMenuItemTagSearchWeb):
2913         (WebCore::contextMenuItemTagLookUpInDictionary):
2914         (WebCore::contextMenuItemTagOpenLink):
2915         (WebCore::contextMenuItemTagIgnoreGrammar):
2916         (WebCore::contextMenuItemTagSpellingMenu):
2917         (WebCore::contextMenuItemTagShowSpellingPanel):
2918         (WebCore::contextMenuItemTagCheckSpelling):
2919         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
2920         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2921         (WebCore::contextMenuItemTagFontMenu):
2922         (WebCore::contextMenuItemTagBold):
2923         (WebCore::contextMenuItemTagItalic):
2924         (WebCore::contextMenuItemTagUnderline):
2925         (WebCore::contextMenuItemTagOutline):
2926         (WebCore::contextMenuItemTagInspectElement):
2927         (WebCore::contextMenuItemTagRightToLeft):
2928         (WebCore::contextMenuItemTagLeftToRight):
2929         (WebCore::contextMenuItemTagWritingDirectionMenu):
2930         (WebCore::contextMenuItemTagTextDirectionMenu):
2931         (WebCore::contextMenuItemTagDefaultDirection):
2932         (WebCore::searchMenuNoRecentSearchesText):
2933         (WebCore::searchMenuRecentSearchesText):
2934         (WebCore::searchMenuClearRecentSearchesText):
2935         (WebCore::AXDefinitionText):
2936         (WebCore::AXDescriptionListText):
2937         (WebCore::AXDescriptionListTermText):
2938         (WebCore::AXDescriptionListDetailText):
2939         (WebCore::AXFooterRoleDescriptionText):
2940         (WebCore::AXSearchFieldCancelButtonText):
2941         (WebCore::AXButtonActionVerb):
2942         (WebCore::AXRadioButtonActionVerb):
2943         (WebCore::AXTextFieldActionVerb):
2944         (WebCore::AXCheckedCheckBoxActionVerb):
2945         (WebCore::AXUncheckedCheckBoxActionVerb):
2946         (WebCore::AXLinkActionVerb):
2947         (WebCore::unknownFileSizeText):
2948         (WebCore::imageTitle):
2949         (WebCore::AXListItemActionVerb):
2950         (WebCore::localizedMediaControlElementString):
2951         (WebCore::localizedMediaControlElementHelpText):
2952         (WebCore::localizedMediaTimeDescription):
2953         (WebCore::mediaElementLoadingStateText):
2954         (WebCore::mediaElementLiveBroadcastStateText):
2955         (WebCore::validationMessagePatternMismatchText):
2956         (WebCore::validationMessageRangeOverflowText):
2957         (WebCore::validationMessageRangeUnderflowText):
2958         (WebCore::validationMessageStepMismatchText):
2959         (WebCore::validationMessageTooLongText):
2960         (WebCore::validationMessageTypeMismatchText):
2961         (WebCore::validationMessageTypeMismatchForEmailText):
2962         (WebCore::validationMessageTypeMismatchForMultipleEmailText):
2963         (WebCore::validationMessageTypeMismatchForURLText):
2964         (WebCore::validationMessageValueMissingText):
2965         (WebCore::validationMessageValueMissingForCheckboxText):
2966         (WebCore::validationMessageValueMissingForFileText):
2967         (WebCore::validationMessageValueMissingForMultipleFileText):
2968         (WebCore::validationMessageValueMissingForRadioText):
2969         (WebCore::validationMessageValueMissingForSelectText):
2970         (WebCore::validationMessageBadInputForNumberText):
2971         (WebCore::missingPluginText):
2972         (WebCore::AXMenuListPopupActionVerb):
2973         (WebCore::AXMenuListActionVerb):
2974         (WebCore::multipleFileUploadText):
2975         (WebCore::crashedPluginText):
2976         (WebCore::blockedPluginByContentSecurityPolicyText):
2977         (WebCore::insecurePluginVersionText):
2978         (WebCore::inactivePluginText):
2979         (WebCore::unacceptableTLSCertificate):
2980         (WebCore::textTrackClosedCaptionsText):
2981         (WebCore::textTrackSubtitlesText):
2982         (WebCore::textTrackOffMenuItemText):
2983         (WebCore::textTrackAutomaticMenuItemText):
2984         (WebCore::textTrackNoLabelText):
2985         (WebCore::snapshottedPlugInLabelTitle):
2986         (WebCore::snapshottedPlugInLabelSubtitle):
2987
2988 2014-01-06  László Langó  <lango@inf.u-szeged.hu>
2989
2990         Use unsigned consistently, and check for invalid casts when calling into SharedBuffer from other code.
2991         https://bugs.webkit.org/show_bug.cgi?id=124579
2992
2993         Reviewed by Anders Carlsson.
2994
2995         * WebCore.exp.in:
2996         * loader/NetscapePlugInStreamLoader.cpp:
2997         (WebCore::NetscapePlugInStreamLoader::didReceiveData):
2998         * loader/NetscapePlugInStreamLoader.h:
2999         * loader/PingLoader.h:
3000         * loader/ResourceBuffer.cpp:
3001         (WebCore::ResourceBuffer::ResourceBuffer):
3002         * loader/ResourceBuffer.h:
3003         (WebCore::ResourceBuffer::create):
3004         * loader/ResourceLoader.cpp:
3005         (WebCore::ResourceLoader::addDataOrBuffer):
3006         (WebCore::ResourceLoader::didReceiveData):
3007         (WebCore::ResourceLoader::didReceiveDataOrBuffer):
3008         (WebCore::ResourceLoader::willStopBufferingData):
3009         * loader/ResourceLoader.h:
3010         * loader/SubresourceLoader.cpp:
3011         (WebCore::SubresourceLoader::didReceiveData):
3012         * loader/SubresourceLoader.h:
3013         * loader/appcache/ApplicationCacheGroup.cpp:
3014         (WebCore::ApplicationCacheGroup::didReceiveData):
3015         * loader/appcache/ApplicationCacheGroup.h:
3016         * loader/mac/ResourceLoaderMac.mm:
3017         (WebCore::ResourceLoader::didReceiveDataArray):
3018         * platform/SharedBuffer.cpp:
3019         (WebCore::SharedBuffer::SharedBuffer):
3020         * platform/SharedBuffer.h:
3021         (WebCore::SharedBuffer::create):
3022         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3023         (ResourceHandleStreamingClient::didReceiveData):
3024         * platform/network/BlobResourceHandle.cpp:
3025         * platform/network/ResourceHandleClient.h:
3026         (WebCore::ResourceHandleClient::didReceiveData):
3027         (WebCore::ResourceHandleClient::willStopBufferingData):
3028         * platform/network/SynchronousLoaderClient.cpp:
3029         (WebCore::SynchronousLoaderClient::didReceiveData):
3030         * platform/network/SynchronousLoaderClient.h:
3031         * platform/network/blackberry/BlobStream.cpp:
3032         (WebCore::BlobStream::didReceiveData):
3033         * platform/network/blackberry/BlobStream.h:
3034         * platform/network/blackberry/ResourceHandleBlackBerry.cpp:
3035         (WebCore::WebCoreSynchronousLoader::didReceiveData):
3036         * platform/network/curl/ResourceHandleCurl.cpp:
3037         (WebCore::WebCoreSynchronousLoader::didReceiveData):
3038         * platform/network/mac/WebCoreResourceHandleAsDelegate.mm:
3039         (-[WebCoreResourceHandleAsDelegate connection:willStopBufferingData:]):
3040         * platform/network/mac/WebCoreResourceHandleAsOperationQueueDelegate.mm:
3041         (-[WebCoreResourceHandleAsOperationQueueDelegate connection:willStopBufferingData:]):
3042         * platform/network/soup/ResourceHandleSoup.cpp:
3043         (WebCore::WebCoreSynchronousLoader::didReceiveData):
3044         * platform/network/win/ResourceHandleWin.cpp:
3045         (WebCore::WebCoreSynchronousLoader::didReceiveData):
3046
3047 2014-01-06  Andreas Kling  <akling@apple.com>
3048
3049         RenderBlock::clone() should return RenderPtr.
3050         <https://webkit.org/b/126513>
3051
3052         Reviewed by Antti Koivisto.
3053
3054         * rendering/RenderBlock.h:
3055         * rendering/RenderBlock.cpp:
3056         (WebCore::RenderBlock::clone):
3057
3058             Tweaked to return RenderPtr<RenderBlock>.
3059
3060         (WebCore::RenderBlock::splitBlocks):
3061
3062             Store cloned RenderBlocks in RenderPtrs. Use leakPtr() to sink
3063             them into ownership-taking APIs that still use raw pointers.
3064
3065         * rendering/RenderPtr.h:
3066
3067             Add a simple static_pointer_cast for RenderPtr&&.
3068
3069 2014-01-06  Andreas Kling  <akling@apple.com>
3070
3071         RenderInline::clone() should return RenderPtr.
3072         <https://webkit.org/b/126514>
3073
3074         Reviewed by Antti Koivisto.
3075
3076         * rendering/RenderInline.h:
3077         * rendering/RenderInline.cpp:
3078         (WebCore::RenderInline::clone):
3079
3080             Tweaked to return RenderPtr<RenderInline>.
3081
3082         (WebCore::RenderInline::splitInlines):
3083
3084             Store cloned RenderInlines in RenderPtrs. Use leakPtr() to sink
3085             them into ownership-taking APIs that still use raw pointers.
3086
3087 2014-01-06  Gurpreet Kaur  <k.gurpreet@samsung.com>
3088
3089         <hr> appears gray instead of green because of color attribute is defined followed by noshade attribute
3090         https://bugs.webkit.org/show_bug.cgi?id=17674
3091
3092         Reviewed by Simon Fraser.
3093
3094         The noshade attribute is a boolean attribute and when set on hr element
3095         it shows a gray color. When there is color attribute the default gray
3096         color should be replaced by the color mentioned by the color attribute.
3097         Firefox and IE show the same behaviour but Webkit is different. Making
3098         the behaviour of Webkit similiar to Firefox and IE's behaviour.
3099
3100         Test: fast/dom/HTMLHrElement/hr-color-noshade-attribute.html
3101
3102         * html/HTMLHRElement.cpp:
3103         (WebCore::HTMLHRElement::collectStyleForPresentationAttribute):
3104         When the color attribute is present that value is applied and the 
3105         default gray color is ignored. Incase of no color attribute the default
3106         gray color is applied.
3107
3108 2014-01-06  Mark Rowe  <mrowe@apple.com>
3109
3110         <https://webkit.org/b/126499> Move WebKit off the legacy WebKit availability macros
3111
3112         The legacy WebKit availability macros are verbose, confusing, and provide no benefit
3113         over using the system availability macros directly. The original vision was that
3114         they'd serve a cross-platform purpose but that never came to be.
3115
3116         Since WebKit1 is API on OS X but SPI on iOS, some indirection is still needed in the
3117         availability macros to allow the headers to advertise the API as unavailable on OS X
3118         without interfering with the ability to build on iOS. This is achieved by defining
3119         WEBKIT-prefixed versions of the Foundation availability macros that are defined to
3120         their NS-prefixed equivalents. The installed headers are post-processed to map these
3121         macros back to their Foundation equivalents.
3122
3123         Part of <rdar://problem/15512304>.
3124
3125         Reviewed by Sam Weinig.
3126
3127         * WebCore.xcodeproj/project.pbxproj:
3128         * bindings/objc/WebKitAvailability.h: Added. This lives at the WebCore level since it
3129         will be needed by the Objective-C DOM bindings.
3130
3131 2014-01-05  Simon Fraser  <simon.fraser@apple.com>
3132
3133         Move responsibility for remote layer tree committing to RemoteLayerTreeDrawingArea
3134         https://bugs.webkit.org/show_bug.cgi?id=126501
3135
3136         Reviewed by Sam Weinig.
3137
3138         Add type-safe casting to GraphicsLayer.
3139
3140         * platform/graphics/GraphicsLayer.h:
3141         (WebCore::GraphicsLayer::isGraphicsLayerCA):
3142         (WebCore::GraphicsLayer::isGraphicsLayerCARemote):
3143         * platform/graphics/ca/GraphicsLayerCA.h:
3144         (WebCore::GraphicsLayerCA::isGraphicsLayerCA):
3145
3146 2014-01-05  Martin Robinson  <mrobinson@igalia.com>
3147
3148         [GTK] [CMake] Ensure that the autotools build and the CMake install the same files
3149         https://bugs.webkit.org/show_bug.cgi?id=116379
3150
3151         Reviewed by Gustavo Noronha Silva.
3152
3153         * PlatformGTK.cmake: Reformat some install directives to be consistent with the rest of them.
3154         Install the GObject DOM bindings headers.
3155
3156 2014-01-05  Andreas Kling  <akling@apple.com>
3157
3158         Use lineageOfType to simplify two rendering helpers.
3159         <https://webkit.org/b/126498>
3160
3161         Reviewed by Antti Koivisto.
3162
3163         * rendering/RenderRuby.cpp:
3164         (WebCore::findRubyRunParent):
3165         * rendering/svg/SVGRenderSupport.cpp:
3166         (WebCore::SVGRenderSupport::findTreeRootObject):
3167
3168             Simplify two functions that walk their parent chain to find the
3169             closest ancestor of a certain type.
3170
3171         * rendering/RenderRubyRun.h:
3172
3173             Add requisite isRendererOfType<RenderRubyRun>().
3174
3175 2014-01-05  Csaba Osztrogonác  <ossy@webkit.org>
3176
3177         Fix the Mac build too.
3178
3179         * page/PageThrottler.h:
3180
3181 2014-01-05  Csaba Osztrogonác  <ossy@webkit.org>
3182
3183         Weekend URTBF after r161319 to make non Mac builds work again.
3184
3185         * page/PageThrottler.h:
3186
3187 2014-01-05  Gavin Barraclough  <barraclough@apple.com>
3188
3189         Move process suppression of WebProcess to Page (from UIProcess)
3190         https://bugs.webkit.org/show_bug.cgi?id=126480
3191
3192         Reviewed by Sam Weinig.
3193
3194         Let each page take a UserActivity rather than having to coalesce this state, and take different activity
3195         tokens for normal visibility and suppression disabled, so we can see why the process is not suppressed.
3196
3197         * WebCore.exp.in:
3198         * page/Page.cpp:
3199         (WebCore::Page::setIsVisuallyIdle):
3200         * page/Page.h:
3201             - setThrottled -> setIsVisuallyIdle.
3202         * page/PageThrottler.cpp:
3203         (WebCore::PageThrottler::PageThrottler):
3204             - Initialize m_visuallyNonIdle.
3205         (WebCore::PageThrottler::~PageThrottler):
3206             - setThrottled -> setIsVisuallyIdle.
3207         (WebCore::PageThrottler::setIsVisuallyIdle):
3208             - Use m_visuallyNonIdle to disable supression when the page is not visually idle.
3209         * page/PageThrottler.h:
3210             - setThrottled -> setIsVisuallyIdle, added m_visuallyNonIdle.
3211
3212 2014-01-04  Sam Weinig  <sam@webkit.org>
3213
3214         Move a few more functions from RenderBlock to RenderBlockFlow
3215         https://bugs.webkit.org/show_bug.cgi?id=126494
3216
3217         Reviewed by Andreas Kling.
3218
3219         * rendering/RenderBlock.h:
3220         * rendering/RenderBlockFlow.h:
3221         (WebCore::RenderBlockFlow::adjustInlineDirectionLineBounds):
3222         * rendering/RenderBlockLineLayout.cpp:
3223         (WebCore::RenderBlockFlow::textAlignmentForLine):
3224         (WebCore::RenderBlockFlow::updateLogicalWidthForAlignment):
3225         (WebCore::RenderBlockFlow::startAlignedOffsetForLine):
3226         These are only used by RenderBlockFlow, so move them there.
3227
3228 2014-01-04  Simon Fraser  <simon.fraser@apple.com>
3229
3230         Prepare the ScrollingTree for remote use
3231         https://bugs.webkit.org/show_bug.cgi?id=126493
3232
3233         Reviewed by Sam Weinig.
3234
3235         When committing the scrolling tree, we clone the ScrollingStateTree
3236         to hand off to another thread, or (in future) to encode to send to the
3237         UI process. During this cloning process, two types of layer transformations
3238         take place: for threaded scrolling, we replace GraphicsLayer with PlatformLayers.
3239         For remote scrolling, we'll replace GraphicsLayers with PlatformLayerIDs.
3240         Allow the ScrollingCoordinator to specify which type of transformation occurs
3241         by giving ScrollingStateTree a LayerRepresentation::Type member,
3242         which is consulted during ScrollingStateNode cloning.
3243         
3244         Also only copy layers that have changed to avoid setting dirty bits.
3245         
3246         Expose some other stuff on ScrollingStateTree which will be needed for
3247         remote scrolling.
3248
3249         * page/scrolling/ScrollingStateFixedNode.cpp:
3250         (WebCore::ScrollingStateFixedNode::syncLayerPositionForViewportRect):
3251         * page/scrolling/ScrollingStateNode.cpp:
3252         (WebCore::ScrollingStateNode::ScrollingStateNode):
3253         * page/scrolling/ScrollingStateNode.h:
3254         (WebCore::LayerRepresentation::operator GraphicsLayer::PlatformLayerID):
3255         (WebCore::LayerRepresentation::toRepresentation):
3256         (WebCore::ScrollingStateNode::changedProperties):
3257         (WebCore::ScrollingStateNode::setChangedProperties):
3258         (WebCore::ScrollingStateNode::parentNodeID):
3259         * page/scrolling/ScrollingStateScrollingNode.cpp:
3260         (WebCore::ScrollingStateScrollingNode::ScrollingStateScrollingNode):
3261         * page/scrolling/ScrollingStateStickyNode.cpp:
3262         (WebCore::ScrollingStateStickyNode::syncLayerPositionForViewportRect):
3263         * page/scrolling/ScrollingStateTree.cpp:
3264         (WebCore::ScrollingStateTree::ScrollingStateTree):
3265         (WebCore::ScrollingStateTree::commit):
3266         (WebCore::ScrollingStateTree::setRemovedNodes):
3267         (WebCore::ScrollingStateTree::stateNodeForID):
3268         * page/scrolling/ScrollingStateTree.h:
3269         (WebCore::ScrollingStateTree::nodeCount):
3270         (WebCore::ScrollingStateTree::nodeMap):
3271         (WebCore::ScrollingStateTree::preferredLayerRepresentation):
3272         (WebCore::ScrollingStateTree::setPreferredLayerRepresentation):
3273         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
3274         (WebCore::ScrollingCoordinatorMac::commitTreeState):
3275
3276 2014-01-04  Sam Weinig  <sam@webkit.org>
3277
3278         Move LineBreaker functions to LineBreaker.cpp
3279         https://bugs.webkit.org/show_bug.cgi?id=126491
3280
3281         Reviewed by Simon Fraser.
3282
3283         - Moves LineBreaker::nextLineBreak() and LineBreaker::nextSegmentBreak() to
3284           LineBreaker.cpp from RenderBlockLineLayout.cpp
3285         - Moves requiresIndent() to LineWidth.h/cpp from RenderBlockLineLayout.cpp
3286           so it can be shared.
3287         - Adds missing inline specifier to BreakingContext::handleEndOfLine() to avoid
3288           duplicate symbols.
3289
3290         * rendering/RenderBlockLineLayout.cpp:
3291         (WebCore::updateLogicalInlinePositions):
3292         (WebCore::RenderBlockFlow::computeInlineDirectionPositionsForLine):
3293         * rendering/line/BreakingContextInlineHeaders.h:
3294         (WebCore::BreakingContext::handleEndOfLine):
3295         * rendering/line/LineBreaker.cpp:
3296         (WebCore::LineBreaker::nextLineBreak):
3297         (WebCore::LineBreaker::nextSegmentBreak):
3298         * rendering/line/LineWidth.cpp:
3299         (WebCore::requiresIndent):
3300         * rendering/line/LineWidth.h:
3301
3302 2014-01-04  Martin Robinson  <mrobinson@igalia.com>
3303
3304         [GTK] [CMake] Fix the video and audio build
3305         https://bugs.webkit.org/show_bug.cgi?id=126464
3306
3307         Reviewed by Philippe Normand.
3308
3309         * PlatformGTK.cmake: Complete the audio and video source lists.
3310
3311 2014-01-04  Zan Dobersek  <zdobersek@igalia.com>
3312
3313         Explicitly use the std:: nested name specifier when using std::pair, std::make_pair
3314         https://bugs.webkit.org/show_bug.cgi?id=126439
3315
3316         Reviewed by Andreas Kling.
3317
3318         Instead of relying on std::pair and std::make_pair symbols being present in the current scope
3319         through the pair and make_pair symbols, the std:: specifier should be used explicitly.
3320
3321         * Modules/webdatabase/DatabaseTracker.cpp:
3322         (WebCore::DatabaseTracker::scheduleNotifyDatabaseChanged):
3323         * accessibility/AXObjectCache.h:
3324         * accessibility/AccessibilityARIAGridCell.cpp:
3325         (WebCore::AccessibilityARIAGridCell::rowIndexRange):
3326         (WebCore::AccessibilityARIAGridCell::columnIndexRange):
3327         * accessibility/AccessibilityARIAGridCell.h:
3328         * accessibility/AccessibilityObject.h:
3329         * accessibility/AccessibilityRenderObject.cpp:
3330         (WebCore::AccessibilityRenderObject::mathPrescripts):
3331         (WebCore::AccessibilityRenderObject::mathPostscripts):
3332         * accessibility/AccessibilityTable.cpp:
3333         (WebCore::AccessibilityTable::cellForColumnAndRow):
3334         * accessibility/AccessibilityTableCell.cpp:
3335         (WebCore::AccessibilityTableCell::rowIndexRange):
3336         (WebCore::AccessibilityTableCell::columnIndexRange):
3337         * accessibility/AccessibilityTableCell.h:
3338         * accessibility/atk/WebKitAccessibleInterfaceTable.cpp:
3339         (webkitAccessibleTableGetColumnAtIndex):
3340         (webkitAccessibleTableGetRowAtIndex):
3341         (webkitAccessibleTableGetColumnExtentAt):
3342         (webkitAccessibleTableGetRowExtentAt):
3343         (webkitAccessibleTableGetColumnHeader):
3344         (webkitAccessibleTableGetRowHeader):
3345         * accessibility/ios/WebAccessibilityObjectWrapperIOS.mm:
3346         (-[WebAccessibilityObjectWrapper accessibilityHeaderElements]):
3347         (-[WebAccessibilityObjectWrapper accessibilityRowRange]):
3348         (-[WebAccessibilityObjectWrapper accessibilityColumnRange]):
3349         * accessibility/mac/WebAccessibilityObjectWrapperBase.mm:
3350         (convertMathPairsToNSArray):
3351         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
3352         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:]):
3353         * bindings/js/SerializedScriptValue.cpp:
3354         * dom/ContainerNode.cpp:
3355         * dom/StyledElement.cpp:
3356         (WebCore::attributeNameSort):
3357         * html/MediaFragmentURIParser.cpp:
3358         (WebCore::MediaFragmentURIParser::parseTimeFragment):
3359         * html/parser/HTMLMetaCharsetParser.h:
3360         * inspector/ContentSearchUtils.cpp:
3361         (WebCore::ContentSearchUtils::getRegularExpressionMatchesByLines):
3362         (WebCore::ContentSearchUtils::searchInTextByLines):
3363         * inspector/DOMPatchSupport.cpp:
3364         (WebCore::DOMPatchSupport::diff):
3365         (WebCore::DOMPatchSupport::innerPatchChildren):
3366         * inspector/DOMPatchSupport.h:
3367         * inspector/InspectorAgent.cpp:
3368         (WebCore::InspectorAgent::enable):
3369         (WebCore::InspectorAgent::evaluateForTestInFrontend):
3370         * inspector/InspectorAgent.h:
3371         * loader/FormSubmission.cpp:
3372         (WebCore::FormSubmission::create):
3373         * loader/cache/CachedImage.cpp:
3374         (WebCore::CachedImage::brokenImage):
3375         * loader/cache/CachedImage.h:
3376         * platform/URL.cpp:
3377         (WebCore::findHostnamesInMailToURL):
3378         (WebCore::encodeHostnames):
3379         * platform/blackberry/CookieDatabaseBackingStore/CookieDatabaseBackingStore.h:
3380         * platform/graphics/FontCache.cpp:
3381         (WebCore::FontCache::getCachedFontData):
3382         * platform/graphics/WidthIterator.cpp:
3383         * platform/network/HTTPHeaderMap.cpp:
3384         (WebCore::HTTPHeaderMap::adopt):
3385         * platform/network/ResourceResponseBase.cpp:
3386         (WebCore::ResourceResponseBase::parseCacheControlDirectives):
3387         (WebCore::parseCacheHeader):
3388         * platform/text/AtomicStringKeyedMRUCache.h:
3389         * platform/text/LineBreakIteratorPoolICU.h:
3390         * rendering/InlineFlowBox.h:
3391         * rendering/RenderImage.cpp:
3392         (WebCore::RenderImage::imageSizeForError):
3393         (WebCore::RenderImage::paintReplaced):
3394         * rendering/RenderTableSection.cpp:
3395         (WebCore::RenderTableSection::cachedCollapsedBorder):
3396         * rendering/RenderTableSection.h:
3397         * rendering/svg/SVGTextRunRenderingContext.cpp:
3398         (WebCore::SVGTextRunRenderingContext::glyphDataForCharacter):
3399         * svg/SVGAnimatedAngle.cpp:
3400         (WebCore::SVGAnimatedAngleAnimator::constructFromString):
3401         (WebCore::SVGAnimatedAngleAnimator::addAnimatedTypes):
3402         (WebCore::SVGAnimatedAngleAnimator::calculateAnimatedValue):
3403         * svg/SVGAnimatedIntegerOptionalInteger.cpp:
3404         (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::constructFromString):
3405         (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::addAnimatedTypes):
3406         (WebCore::SVGAnimatedIntegerOptionalIntegerAnimator::calculateAnimatedValue):
3407         * svg/SVGAnimatedNumberOptionalNumber.cpp:
3408         (WebCore::SVGAnimatedNumberOptionalNumberAnimator::constructFromString):
3409         (WebCore::SVGAnimatedNumberOptionalNumberAnimator::addAnimatedTypes):
3410         (WebCore::SVGAnimatedNumberOptionalNumberAnimator::calculateAnimatedValue):
3411         * svg/SVGAnimatedType.cpp:
3412         (WebCore::SVGAnimatedType::createIntegerOptionalInteger):
3413         (WebCore::SVGAnimatedType::createNumberOptionalNumber):
3414         * svg/SVGAnimatedType.h:
3415         (WebCore::SVGAnimatedType::integerOptionalInteger):
3416         (WebCore::SVGAnimatedType::numberOptionalNumber):
3417         * svg/SVGAnimatedTypeAnimator.h:
3418         (WebCore::SVGAnimatedTypeAnimator::constructFromBaseValues):
3419         (WebCore::SVGAnimatedTypeAnimator::resetFromBaseValues):
3420         * svg/SVGParserUtilities.h:
3421         * svg/animation/SMILTimeContainer.h:
3422
3423 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
3424
3425         Attempt to fix EFL build.
3426
3427         * page/scrolling/ScrollingStateTree.cpp:
3428         (WebCore::ScrollingStateTree::setHasChangedProperties):
3429
3430 2014-01-03  Simon Fraser  <simon.fraser@apple.com>
3431
3432         Clean up the means of committing the scrolling state tree
3433         https://bugs.webkit.org/show_bug.cgi?id=126482
3434
3435         Reviewed by Tim Horton.
3436
3437         ScrollingStateNodes would manually call scrollingStateTree().setHasChangedProperties()
3438         after setPropertyChanged() in lots of places, which was repetitive, and
3439         AsyncScrollingCoordinator manually called scheduleTreeStateCommit() in many places.
3440         
3441         Clean up both of these with a clearer trigger for state tree commits.
3442         ScrollingStateNodes::setPropertyChanged() calls ScrollingStateTree::setHasChangedProperties(),
3443         which turns around and tells the ScrollingCoordinator that the state tree became dirty.
3444
3445         * page/scrolling/AsyncScrollingCoordinator.cpp:
3446         (WebCore::AsyncScrollingCoordinator::AsyncScrollingCoordinator):
3447         (WebCore::AsyncScrollingCoordinator::scrollingStateTreePropertiesChanged):