[MSE][Mac] Disable AVFoundation when enabling the MockMediaPlayerMediaSource.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2013-12-05  Jer Noble  <jer.noble@apple.com>
2
3         [MSE][Mac] Disable AVFoundation when enabling the MockMediaPlayerMediaSource.
4         https://bugs.webkit.org/show_bug.cgi?id=125338
5
6         Reviewed by Darin Adler.
7
8         The MediaSource API has some assumptions which break if more than one installed
9         media engine supports MediaSources at the same time. So when enabling the mock
10         media source engine in DRT or WKTR, disable AVFoundation so that only the mock
11         engine will support media source loading.
12
13         * testing/Internals.cpp:
14         (WebCore::Internals::initializeMockMediaSource):
15
16 2013-12-06  Antti Koivisto  <antti@apple.com>
17
18         Use NeverDestroyed instead of DEFINE_STATIC_LOCAL
19
20         Reviewed by Anders Carlsson.
21
22         * rendering/RenderText.cpp:
23         (WebCore::originalTextMap):
24
25 2013-12-05  Jer Noble  <jer.noble@apple.com>
26
27         [MSE] Add a runtime-setting for the MediaSource constructor.
28         https://bugs.webkit.org/show_bug.cgi?id=125336
29
30         Reviewed by Eric Carlson.
31
32         Add a Setting to enable the MediaSource constructor.
33
34         * Modules/mediasource/MediaSource.idl:
35         * page/Settings.in:
36
37 2013-12-06  Tim Horton  <timothy_horton@apple.com>
38
39         [mac] Keep around more decoded image data, since it's purgeable
40         https://bugs.webkit.org/show_bug.cgi?id=125273
41         <rdar://problem/13205438>
42
43         Reviewed by Simon Fraser.
44
45         No new tests, just an optimization.
46
47         Instead of throwing away decoded image data eagerly, allow the operating
48         system to manage the memory via the standard purgeability mechanism,
49         where it can.
50
51         This improves the performance on some pathological cases (extremely large
52         animated GIFs) by up to 8x.
53
54         * loader/cache/MemoryCache.cpp:
55         (WebCore::MemoryCache::pruneLiveResourcesToSize):
56         Don't prune live resources' decoded data if it is purgeable.
57
58         * platform/graphics/BitmapImage.cpp:
59         (WebCore::BitmapImage::destroyDecodedDataIfNecessary):
60         Don't eagerly throw away decoded image data if it's purgeable.
61
62         * loader/cache/CachedImage.h:
63         * loader/cache/CachedResource.h:
64         (WebCore::CachedResource::decodedDataIsPurgeable):
65         * platform/graphics/BitmapImage.h:
66         * platform/graphics/Image.h:
67         (WebCore::Image::decodedDataIsPurgeable):
68
69 2013-12-06  Antti Koivisto  <antti@apple.com>
70
71         Save original text for RenderText to a map
72         https://bugs.webkit.org/show_bug.cgi?id=125278
73
74         Reviewed by Darin Adler.
75         
76         Currently the original text is fetched from the Text node. This is one of the few things 
77         where we use the RenderText node pointer and is stopping Text nodes from being anonymous.
78         
79         It is very rare of original text to differ from the actual text so we can just squirrel the
80         original to a map when it differs. This is also simplifies the code.
81
82         * rendering/RenderQuote.cpp:
83         (WebCore::RenderQuote::styleDidChange):
84         (WebCore::RenderQuote::updateDepth):
85         * rendering/RenderText.cpp:
86         (WebCore::originalTextMap):
87         (WebCore::RenderText::RenderText):
88         (WebCore::RenderText::~RenderText):
89         (WebCore::RenderText::styleDidChange):
90         (WebCore::RenderText::originalText):
91         (WebCore::RenderText::setTextInternal):
92         (WebCore::RenderText::setText):
93         * rendering/RenderText.h:
94         * rendering/RenderTextFragment.cpp:
95         * rendering/RenderTextFragment.h:
96
97 2013-12-04  Jer Noble  <jer.noble@apple.com>
98
99         [MSE] Refactor MediaSourceBase back into MediaSource
100         https://bugs.webkit.org/show_bug.cgi?id=125245
101
102         Reviewed by Eric Carlson.
103
104         Now that the legacy WebKitMediaSource has been removed, there is no reason to have
105         a separate MediaSource and MediaSourceBase. Re-integrate the two.
106
107         Copy all the methods from MediaSource into MediaSourceBase, and rename the class MediaSource:
108         * Modules/mediasource/MediaSource.cpp: Copied from MediaSourceBase.cpp.
109         (WebCore::MediaSource::create): Copied from MediaSource.cpp.
110         (WebCore::MediaSource::addSourceBuffer): Ditto.
111         (WebCore::MediaSource::removeSourceBuffer): Ditto.
112         (WebCore::MediaSource::isTypeSupported): Ditto.
113         (WebCore::MediaSource::eventTargetInterface): Ditto.
114         (WebCore::MediaSource::sourceBufferDidChangeAcitveState): Ditto.
115         * Modules/mediasource/MediaSource.h: Copied from MediaSourceBase.h.
116         (WebCore::MediaSource::sourceBuffers): Copied from MediaSource.h.
117         (WebCore::MediaSource::activeSourceBuffers): Copied from MediaSource.h.
118         * Modules/mediasource/MediaSourceBase.cpp: Removed.
119         * Modules/mediasource/MediaSourceBase.h: Removed.
120
121         Change all references to MediaSourceBase into MediaSource:
122         * Modules/mediasource/DOMURLMediaSource.cpp:
123         (WebCore::DOMURLMediaSource::createObjectURL):
124         * Modules/mediasource/DOMURLMediaSource.h:
125         * Modules/mediasource/MediaSourceRegistry.cpp:
126         (WebCore::MediaSourceRegistry::registerURL):
127         (WebCore::MediaSourceRegistry::unregisterURL):
128         * Modules/mediasource/MediaSourceRegistry.h:
129
130         Remove MediaSourceBase.cpp/h from the project file:
131         * WebCore.xcodeproj/project.pbxproj:
132         * GNUmakefile.list.am:
133
134 2013-12-06  Eric Carlson  <eric.carlson@apple.com>
135
136         r159827 broke plug-in snapshotting
137         https://bugs.webkit.org/show_bug.cgi?id=125365
138
139         Reviewed by Dean Jackson.
140
141         No new tests, covered by existing tests.
142
143         * html/HTMLPlugInImageElement.cpp:
144         (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Return early if there is NOT
145             a page, not if there IS a page.
146
147 2013-12-06  Roger Fong <roger_fong@apple.com> and Brent Fulgham  <bfulgham@apple.com>
148
149         [Win] Support compiling with VS2013
150         https://bugs.webkit.org/show_bug.cgi?id=125353
151
152         Reviewed by Anders Carlsson.
153
154         * loader/archive/cf/LegacyWebArchive.cpp:
155         (WebCore::LegacyWebArchive::create): Use nullptr
156         (WebCore::LegacyWebArchive::createFromSelection): Ditto
157
158 2013-11-15  Jer Noble  <jer.noble@apple.com>
159
160         [MSE][Mac] Add a new MSE-compatible MediaPlayerPrivate implementation, MediaPlayerPrivateMediaSourceAVFObjC
161         https://bugs.webkit.org/show_bug.cgi?id=123378
162
163         Reviewed by Eric Carlson.
164
165         Add an AVFoundation implementation of MediaPlayerPrivate which creates and uses
166         MediaSourcePrivate and SourceBufferPrivate subclasses.
167
168         Add the new media engine to the list of installed engines:
169         * platform/MediaSample.h:
170         * platform/graphics/MediaPlayer.cpp:
171         (WebCore::installedMediaEngines):
172         * platform/graphics/MediaPlayer.h:
173
174         Add the new files to the project:
175         * WebCore.xcodeproj/project.pbxproj:
176
177         Drive by fix for ports who implement seekDouble():
178         * platform/graphics/MediaPlayerPrivate.h:
179         (WebCore::MediaPlayerPrivateInterface::seekWithTolerance):
180
181         Add new Video and AudioTrackPrivate types which handle their own enable state:
182         * platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.cpp: Added
183         (WebCore::AudioTrackPrivateMediaSourceAVFObjC::AudioTrackPrivateMediaSourceAVFObjC):
184         (WebCore::AudioTrackPrivateMediaSourceAVFObjC::resetPropertiesFromTrack):
185         (WebCore::AudioTrackPrivateMediaSourceAVFObjC::setAssetTrack):
186         (WebCore::AudioTrackPrivateMediaSourceAVFObjC::assetTrack):
187         (WebCore::AudioTrackPrivateMediaSourceAVFObjC::setEnabled):
188         * platform/graphics/avfoundation/objc/AudioTrackPrivateMediaSourceAVFObjC.h: Added
189         * platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.cpp: Added.
190         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::VideoTrackPrivateMediaSourceAVFObjC):
191         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::resetPropertiesFromTrack):
192         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::setAssetTrack):
193         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::assetTrack):
194         (WebCore::VideoTrackPrivateMediaSourceAVFObjC::setSelected):
195         * platform/graphics/avfoundation/objc/VideoTrackPrivateMediaSourceAVFObjC.h: Added.
196
197         Add a new MediaPlayerPrivate which can handle MediaSource objects:
198         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.h: Added.
199         * platform/graphics/avfoundation/objc/MediaPlayerPrivateMediaSourceAVFObjC.mm: Added.
200         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::MediaPlayerPrivateMediaSourceAVFObjC):
201         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::~MediaPlayerPrivateMediaSourceAVFObjC):
202         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::registerMediaEngine):
203         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::create):
204         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::isAvailable):
205         (WebCore::mimeTypeCache):
206         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::getSupportedTypes):
207         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsType):
208         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::load):
209         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::cancelLoad):
210         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::prepareToPlay):
211         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::platformMedia):
212         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::platformLayer):
213         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::play):
214         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::playInternal):
215         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pause):
216         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::pauseInternal):
217         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paused):
218         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsScanning):
219         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::naturalSize):
220         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasVideo):
221         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasAudio):
222         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setVisible):
223         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::durationDouble):
224         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::currentTimeDouble):
225         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::startTimeDouble):
226         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::initialTime):
227         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekWithTolerance):
228         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekInternal):
229         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seeking):
230         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setRateDouble):
231         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::networkState):
232         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::readyState):
233         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::seekable):
234         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::maxTimeSeekableDouble):
235         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::minTimeSeekable):
236         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::buffered):
237         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::didLoadingProgress):
238         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setSize):
239         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paint):
240         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::paintCurrentFrameInContext):
241         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::hasAvailableVideoFrame):
242         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::supportsAcceleratedRendering):
243         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::acceleratedRenderingStateChanged):
244         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::movieLoadType):
245         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::prepareForRendering):
246         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::engineDescription):
247         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::languageOfPrimaryAudioTrack):
248         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::extraMemoryCost):
249         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::ensureLayer):
250         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::destroyLayer):
251         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::updateDuration):
252         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::updateStates):
253         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setReadyState):
254         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::setNetworkState):
255         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::addDisplayLayer):
256         (WebCore::MediaPlayerPrivateMediaSourceAVFObjC::removeDisplayLayer):
257
258         Add a new MediaSourcePrivate implementation:
259         * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.h: Added.
260         (WebCore::MediaSourcePrivateAVFObjC::player):
261         (WebCore::MediaSourcePrivateAVFObjC::activeSourceBuffers):
262         * platform/graphics/avfoundation/objc/MediaSourcePrivateAVFObjC.mm: Added.
263         (WebCore::MediaSourcePrivateAVFObjC::create):
264         (WebCore::MediaSourcePrivateAVFObjC::MediaSourcePrivateAVFObjC):
265         (WebCore::MediaSourcePrivateAVFObjC::~MediaSourcePrivateAVFObjC):
266         (WebCore::MediaSourcePrivateAVFObjC::addSourceBuffer):
267         (WebCore::MediaSourcePrivateAVFObjC::removeSourceBuffer):
268         (WebCore::MediaSourcePrivateAVFObjC::duration):
269         (WebCore::MediaSourcePrivateAVFObjC::setDuration):
270         (WebCore::MediaSourcePrivateAVFObjC::markEndOfStream):
271         (WebCore::MediaSourcePrivateAVFObjC::unmarkEndOfStream):
272         (WebCore::MediaSourcePrivateAVFObjC::readyState):
273         (WebCore::MediaSourcePrivateAVFObjC::setReadyState):
274         (WebCore::MediaSourcePrivateAVFObjC::sourceBufferPrivateDidChangeActiveState):
275         (WebCore::MediaSourcePrivateAVFObjCHasAudio):
276         (WebCore::MediaSourcePrivateAVFObjC::hasAudio):
277         (WebCore::MediaSourcePrivateAVFObjCHasVideo):
278         (WebCore::MediaSourcePrivateAVFObjC::hasVideo):
279         (WebCore::MediaSourcePrivateAVFObjC::seekToTime):
280
281         Add a new SourceBufferPrivate implementation:
282         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.h: Added.
283         * platform/graphics/avfoundation/objc/SourceBufferPrivateAVFObjC.mm: Added.
284         (-[WebAVStreamDataParserListener initWithParser:parent:WebCore::]):
285         (-[WebAVStreamDataParserListener dealloc]):
286         (-[WebAVStreamDataParserListener streamDataParser:didParseStreamDataAsAsset:]):
287         (-[WebAVStreamDataParserListener streamDataParser:didFailToParseStreamDataWithError:]):
288         (-[WebAVStreamDataParserListener streamDataParser:didProvideMediaData:forTrackID:mediaType:flags:]):
289         (-[WebAVStreamDataParserListener streamDataParser:didReachEndOfTrackWithTrackID:mediaType:]):
290         (WebCore::MediaSampleAVFObjC::create):
291         (WebCore::MediaSampleAVFObjC::~MediaSampleAVFObjC):
292         (WebCore::MediaSampleAVFObjC::MediaSampleAVFObjC):
293         (WebCore::MediaSampleAVFObjC::platformSample):
294         (WebCore::CMSampleBufferIsRandomAccess):
295         (WebCore::MediaSampleAVFObjC::flags):
296         (WebCore::MediaDescriptionAVFObjC::create):
297         (WebCore::MediaDescriptionAVFObjC::~MediaDescriptionAVFObjC):
298         (WebCore::MediaDescriptionAVFObjC::MediaDescriptionAVFObjC):
299         (WebCore::SourceBufferPrivateAVFObjC::create):
300         (WebCore::SourceBufferPrivateAVFObjC::SourceBufferPrivateAVFObjC):
301         (WebCore::SourceBufferPrivateAVFObjC::~SourceBufferPrivateAVFObjC):
302         (WebCore::SourceBufferPrivateAVFObjC::didParseStreamDataAsAsset):
303         (WebCore::SourceBufferPrivateAVFObjC::didFailToParseStreamDataWithError):
304         (WebCore::callProcessCodedFrameForEachSample):
305         (WebCore::SourceBufferPrivateAVFObjC::didProvideMediaDataForTrackID):
306         (WebCore::SourceBufferPrivateAVFObjC::processCodedFrame):
307         (WebCore::SourceBufferPrivateAVFObjC::didReachEndOfTrackWithTrackID):
308         (WebCore::SourceBufferPrivateAVFObjC::setClient):
309         (WebCore::SourceBufferPrivateAVFObjC::append):
310         (WebCore::SourceBufferPrivateAVFObjC::abort):
311         (WebCore::SourceBufferPrivateAVFObjC::removedFromMediaSource):
312         (WebCore::SourceBufferPrivateAVFObjC::readyState):
313         (WebCore::SourceBufferPrivateAVFObjC::setReadyState):
314         (WebCore::SourceBufferPrivateAVFObjC::evictCodedFrames):
315         (WebCore::SourceBufferPrivateAVFObjC::isFull):
316         (WebCore::SourceBufferPrivateAVFObjC::hasVideo):
317         (WebCore::SourceBufferPrivateAVFObjC::hasAudio):
318         (WebCore::SourceBufferPrivateAVFObjC::trackDidChangeEnabled):
319         (WebCore::createNonDisplayingCopy):
320         (WebCore::SourceBufferPrivateAVFObjC::flushAndEnqueueNonDisplayingSamples):
321         (WebCore::SourceBufferPrivateAVFObjC::enqueueSample):
322         (WebCore::SourceBufferPrivateAVFObjC::isReadyForMoreSamples):
323         (WebCore::SourceBufferPrivateAVFObjC::setActive):
324         (WebCore::SourceBufferPrivateAVFObjC::fastSeekTimeForMediaTime):
325         (WebCore::SourceBufferPrivateAVFObjC::seekToTime):
326         * platform/mac/PlatformClockCM.h:
327
328         Add a SOFT_LINK_CLASS_OPTIONAL macro:
329         * platform/mac/SoftLinking.h:
330
331 2013-12-06  Alexey Proskuryakov  <ap@apple.com>
332
333         Remove some duplicate checks from SerializedScriptValue
334         https://bugs.webkit.org/show_bug.cgi?id=125358
335
336         Reviewed by Geoffrey Garen.
337
338         There is no need to call inherits() before WebCore's toXXX(JSValue) functions.
339
340         Also, the result of toArrayBuffer() is a raw pointer, not a RefPtr (it's confusing
341         because toArrayBufferView returns a RefPtr).
342
343         * bindings/js/SerializedScriptValue.cpp: (WebCore::CloneSerializer::dumpIfTerminal):
344
345 2013-12-06  Tim Horton  <timothy_horton@apple.com>
346
347         Remove Image::decodedSize()
348         https://bugs.webkit.org/show_bug.cgi?id=125327
349
350         Reviewed by Simon Fraser.
351
352         Missed a comment when removing this code.
353
354         * svg/graphics/SVGImage.h:
355
356 2013-12-06  Rob Buis  <rob.buis@samsung.com>
357
358         [CSS Shapes] ShapeOutsideInfo needs to use the parent's writing mode when calculating offsets
359         https://bugs.webkit.org/show_bug.cgi?id=124680
360
361         Reviewed by Dirk Schulze.
362
363         Do not take the writing-mode property on the float into account for shape-outside.
364         Add a virtual method writingMode() in order to do this for shape-outside but
365         keep old behavior (element writingMode) for shape-inside.
366
367         Change existing test floats/shape-outside-floats-different-writing-modes.html to test the
368         new behavior.
369
370         * rendering/shapes/ShapeInfo.cpp:
371         (WebCore::::computedShape):
372         * rendering/shapes/ShapeInfo.h:
373         (WebCore::ShapeInfo::writingMode):
374         * rendering/shapes/ShapeOutsideInfo.cpp:
375         (WebCore::ShapeOutsideInfo::writingMode):
376         * rendering/shapes/ShapeOutsideInfo.h:
377
378 2013-12-06  Joseph Pecoraro  <pecoraro@apple.com>
379
380         Web Inspector: Remove Staging Workaround
381         https://bugs.webkit.org/show_bug.cgi?id=125354
382
383         Reviewed by Timothy Hatcher.
384
385         * inspector/CodeGeneratorInspector.py:
386
387 2013-12-06  Joseph Pecoraro  <pecoraro@apple.com>
388
389         Simplify ScriptFunctionCall by removing dead code.
390         https://bugs.webkit.org/show_bug.cgi?id=125274
391
392         Reviewed by Timothy Hatcher.
393
394         * bindings/js/ScriptFunctionCall.cpp:
395         (WebCore::ScriptFunctionCall::call):
396         * bindings/js/ScriptFunctionCall.h:
397
398 2013-12-06  Daniel Bates  <dabates@apple.com>
399
400         [iOS] Upstream WebCore/rendering changes
401         https://bugs.webkit.org/show_bug.cgi?id=125239
402
403         Reviewed by Simon Fraser.
404
405         * WebCore.xcodeproj/project.pbxproj:
406         * rendering/InlineBox.cpp:
407         (WebCore::InlineBox::previousOnLineExists): Added.
408         * rendering/InlineBox.h:
409         * rendering/InlineTextBox.cpp:
410         (WebCore::InlineTextBox::paintCompositionBackground): Modified to query RenderStyle
411         on iOS for the composition fill color. Added FIXME to make this platform-independent.
412         (WebCore::InlineTextBox::paintDecoration): Added iOS-specific decoration code.
413         (WebCore::lineStyleForMarkerType):
414         (WebCore::InlineTextBox::paintDocumentMarkers): Added iOS-specific code. Also, added
415         FIXME to make this code platform-independent.
416         * rendering/RenderBlock.cpp:
417         (WebCore::RenderBlock::paint): Ditto.
418         (WebCore::positionForPointRespectingEditingBoundaries): Added iOS-specific code.
419         * rendering/RenderBlock.h: Changed access control of logical{Left, Right}SelectionOffset()
420         from private to protected so that these methods can be used from RenderImage::collectSelectionRects().
421         * rendering/RenderBox.cpp:
422         (WebCore::RenderBox::borderRadii): Added.
423         (WebCore::RenderBox::paintBoxDecorations): Added iOS-specific workaround. See <rdar://problem/6209763>
424         for more details.
425         (WebCore::RenderBox::computeRectForRepaint): Added iOS-specific code. 
426         (WebCore::customContainingBlockWidth): Added; guarded by PLATFORM(IOS).
427         (WebCore::customContainingBlockHeight): Added; guarded by PLATFORM(IOS).
428         (WebCore::customContainingBlockLogicalWidth): Added; guarded by PLATFORM(IOS).
429         (WebCore::customContainingBlockLogicalHeight): Added; guarded by PLATFORM(IOS).
430         (WebCore::customContainingBlockAvailableLogicalHeight): Added; guarded by PLATFORM(IOS).
431         (WebCore::RenderBox::availableLogicalHeightUsing): Added iOS-specific code; calls customContainingBlockAvailableLogicalHeight().
432         (WebCore::RenderBox::containingBlockLogicalWidthForPositioned): Added iOS-specific code; calls customContainingBlockLogicalWidth().
433         (WebCore::RenderBox::containingBlockLogicalHeightForPositioned): Added iOS-specific code; calls customContainingBlockLogicalHeight().
434         (WebCore::RenderBox::layoutOverflowRectForPropagation): Added iOS-specific code.
435         * rendering/RenderBox.h:
436         * rendering/RenderBoxModelObject.cpp:
437         (WebCore::RenderBoxModelObject::stickyPositionOffset): Use FrameView::customFixedPositionLayoutRect()
438         instead of FrameView::viewportConstrainedVisibleContentRect().
439         * rendering/RenderButton.cpp:
440         (WebCore::RenderButton::layout): Added; iOS-specific. Includes FIXME comment.
441         See <rdar://problem/7675493> for more details.
442         * rendering/RenderElement.cpp:
443         (WebCore::RenderElement::styleWillChange): Added iOS-specific code.
444         (WebCore::RenderElement::styleDidChange): Modified to only call areCursorsEqual() and
445         EventHandler::scheduleCursorUpdate() on a non-iOS port.
446         * rendering/RenderEmbeddedObject.cpp:
447         (WebCore::RenderEmbeddedObject::allowsAcceleratedCompositing): Added iOS-specific code.
448         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReason): This method has an empty implementation for iOS.
449         (WebCore::RenderEmbeddedObject::setPluginUnavailabilityReasonWithDescription): Ditto.
450         * rendering/RenderFileUploadControl.cpp:
451         (WebCore::nodeHeight):
452         (WebCore::RenderFileUploadControl::maxFilenameWidth): Added iOS-specific code.
453         (WebCore::RenderFileUploadControl::paintObject): Ditto.
454         (WebCore::RenderFileUploadControl::fileTextValue): Ditto.
455         * rendering/RenderFrameSet.cpp:
456         (WebCore::RenderFrameSet::positionFrames): Ditto; Also added FIXME comment as this code may not
457         be specific to iOS.
458         * rendering/RenderIFrame.h: Added iOS-specific workaround to RenderObject::renderName(). Added
459         FIXME comment to determine whether this workaround is still applicable.
460         * rendering/RenderImage.cpp:
461         (WebCore::RenderImage::collectSelectionRects): Added; guarded by PLATFORM(IOS).
462         (WebCore::RenderImage::paintAreaElementFocusRing): This method has an empty implementation for iOS.
463         * rendering/RenderImage.h:
464         * rendering/RenderInline.cpp:
465         (WebCore::RenderInline::absoluteQuadsForSelection): Added; guarded by PLATFORM(IOS).
466         * rendering/RenderInline.h:
467         * rendering/RenderLayer.cpp:
468         (WebCore::RenderLayer::RenderLayer): Added iOS-specific member initialization.
469         (WebCore::RenderLayer::~RenderLayer): Added iOS-specific code.
470         (WebCore::RenderLayer::willBeDestroyed): Added; iOS-specific.
471         (WebCore::RenderLayer::hasAcceleratedTouchScrolling): Ditto.
472         (WebCore::RenderLayer::handleTouchEvent): Ditto.
473         (WebCore::RenderLayer::registerAsTouchEventListenerForScrolling): Ditto.
474         (WebCore::RenderLayer::unregisterAsTouchEventListenerForScrolling): Ditto.
475         (WebCore::RenderLayer::updateNeedsCompositedScrolling): Added iOS-specific code as we use UIKit
476         to composite our scroll bars.
477         (WebCore::RenderLayer::scrollTo): Added iOS-specific code.
478         (WebCore::RenderLayer::scrollRectToVisible): Ditto.
479         (WebCore::RenderLayer::styleChanged): Modified to make use of the passed StyleDifference on iOS.
480         (WebCore::RenderLayer::visibleContentRect): Added; iOS-specific.
481         (WebCore::RenderLayer::didStartScroll): Ditto.
482         (WebCore::RenderLayer::didEndScroll): Ditto.
483         (WebCore::RenderLayer::didUpdateScroll): Ditto.
484         (WebCore::RenderLayer::invalidateScrollbarRect): Added iOS-specific code.
485         (WebCore::RenderLayer::invalidateScrollCornerRect): Ditto.
486         (WebCore::RenderLayer::verticalScrollbarWidth): Ditto.
487         (WebCore::RenderLayer::horizontalScrollbarHeight): Ditto.
488         (WebCore::RenderLayer::updateScrollableAreaSet): Ditto.
489         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Add iOS-specific workaround with FIXME. See
490         <rdar://problem/15579797> for more details.
491         (WebCore::RenderLayer::paintOverflowControls): Added iOS-specific code.
492         (WebCore::RenderLayer::calculateClipRects): Ditto.
493         * rendering/RenderLayer.h:
494         * rendering/RenderLayerBacking.cpp:
495         (WebCore::RenderLayerBacking::createPrimaryGraphicsLayer): Modified to not apply page scale on iOS
496         as we apply a page scale at a different time in the code.
497         (WebCore::RenderLayerBacking::layerWillBeDestroyed): Added; guarded by PLATFORM(IOS).
498         (WebCore::layerOrAncestorIsTransformedOrScrolling): Added iOS-specific variant with FIXME comment.
499         (WebCore::RenderLayerBacking::shouldClipCompositedBounds): Added iOS-specific code.
500         (WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration): Ditto.
501         (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry): Ditto.
502         (WebCore::RenderLayerBacking::registerScrollingLayers): Ditto.
503         (WebCore::RenderLayerBacking::updateScrollingLayers): Ditto.
504         (WebCore::RenderLayerBacking::containsPaintedContent): Call RenderLayer::hasBoxDecorationsOrBackground()
505         when building on iOS Simulator.
506         (WebCore::RenderLayerBacking::parentForSublayers): Added iOS-specific code and FIXME comment.
507         (WebCore::RenderLayerBacking::paintsIntoWindow): Opt-into coordinated graphics code path.
508         (WebCore::RenderLayerBacking::setContentsNeedDisplayInRect): Added iOS-specific code.
509         (WebCore::RenderLayerBacking::paintIntoLayer): Compile-out ASSERT_NOT_REACHED for iOS and added FIXME comment.
510         * rendering/RenderLayerBacking.h:
511         * rendering/RenderLayerCompositor.cpp:
512         (WebCore::RenderLayerCompositor::scheduleLayerFlush): Added iOS-specific code.
513         (WebCore::RenderLayerCompositor::chromeClient): Added; guarded by PLATFORM(IOS).
514         (WebCore::RenderLayerCompositor::flushPendingLayerChanges): Added iOS-specific code.
515         (WebCore::scrollbarHasDisplayNone): Added; iOS-specific.
516         (WebCore::updateScrollingLayerWithClient): Ditto.
517         (WebCore::RenderLayerCompositor::updateCustomLayersAfterFlush): Ditto.
518         (WebCore::RenderLayerCompositor::didFlushChangesForLayer): Added iOS-specific code.
519         (WebCore::RenderLayerCompositor::didChangeVisibleRect): Ditto.
520         (WebCore::RenderLayerCompositor::addToOverlapMap): Don't apply page scale factor on iOS. We apply
521         the page scale factor at a different time in the code. Also, added FIXME comment.
522         (WebCore::RenderLayerCompositor::computeCompositingRequirements): Added iOS-specific workaround.
523         See <rdar://problem/8348337> for more details.
524         (WebCore::RenderLayerCompositor::setIsInWindow): Use non-Mac code path for iOS.
525         (WebCore::RenderLayerCompositor::allowsIndependentlyCompositedFrames): Added iOS-specific code.
526         (WebCore::RenderLayerCompositor::requiresCompositingLayer): Ditto.
527         (WebCore::RenderLayerCompositor::requiresOwnBackingStore): Ditto.
528         (WebCore::RenderLayerCompositor::reasonsForCompositing): Ditto.
529         (WebCore::RenderLayerCompositor::requiresCompositingForAnimation): Opt-into calling
530         AnimationController::isRunningAnimationOnRenderer() on iOS.
531         (WebCore::RenderLayerCompositor::requiresCompositingForScrolling): Added; guarded by PLATFORM(IOS).
532         (WebCore::isStickyInAcceleratedScrollingLayerOrViewport): Added iOS-specific code.
533         (WebCore::isViewportConstrainedFixedOrStickyLayer): Ditto.
534         (WebCore::RenderLayerCompositor::requiresCompositingForPosition): Use FrameView::customFixedPositionLayoutRect()
535         instead of FrameView::viewportConstrainedVisibleContentRect().
536         (WebCore::RenderLayerCompositor::contentsScaleMultiplierForNewTiles): Ditto.
537         (WebCore::RenderLayerCompositor::ensureRootLayer): Ditto.
538         (WebCore::RenderLayerCompositor::computeFixedViewportConstraints): Use FrameView::customFixedPositionLayoutRect()
539         instead of FrameView::viewportConstrainedVisibleContentRect().
540         (WebCore::RenderLayerCompositor::computeStickyViewportConstraints): Ditto.
541         (WebCore::RenderLayerCompositor::registerOrUpdateViewportConstrainedLayer): This method has an empty implementation for iOS
542         as we batch update viewport-constrained layers in the iOS-specific method, RenderLayerCompositor::updateCustomLayersAfterFlush().
543         (WebCore::RenderLayerCompositor::unregisterViewportConstrainedLayer): Ditto.
544         (WebCore::RenderLayerCompositor::registerAllViewportConstrainedLayers): Added; guarded by PLATFORM(IOS).
545         (WebCore::RenderLayerCompositor::unregisterAllViewportConstrainedLayers): Ditto.
546         (WebCore::RenderLayerCompositor::registerAllScrollingLayers): Ditto.
547         (WebCore::RenderLayerCompositor::unregisterAllScrollingLayers): Ditto.
548         (WebCore::RenderLayerCompositor::scrollingLayerAddedOrUpdated): Ditto.
549         (WebCore::RenderLayerCompositor::scrollingLayerRemoved): Ditto.
550         (WebCore::RenderLayerCompositor::startInitialLayerFlushTimerIfNeeded): Ditto.
551         * rendering/RenderLayerCompositor.h:
552         * rendering/RenderLayerFilterInfo.h: Added iOS-specific Clang workaround to ignore
553         an unused private field.
554         * rendering/RenderMenuList.cpp:
555         (WebCore::selectedOptionCount): Added; guarded by PLATFORM(IOS).
556         (WebCore::RenderMenuList::RenderMenuList): On iOS we don't make use of RenderMenuList::m_popupIsVisible.
557         (WebCore::RenderMenuList::~RenderMenuList): On iOS we don't make use of RenderMenuList::m_popup.
558         (WebCore::RenderMenuList::adjustInnerStyle): Add iOS-specific code.
559         (RenderMenuList::updateFromElement): On iOS we don't make use of RenderMenuList::m_popup.
560         (RenderMenuList::setTextFromOption): Add iOS-specific code.
561         (RenderMenuList::showPopup): Define RenderMenuList::showPopup() to ASSERT_NOT_REACHED() on iOS as
562         we don't make use of RenderMenuList::m_popup.
563         (RenderMenuList::hidePopup): This method has an empty implementation for iOS as we don't make use
564         of RenderMenuList::m_popup.
565         (RenderMenuList::popupDidHide): This method has an empty implementation for iOS as we don't make use
566         of RenderMenuList::m_popupIsVisible.
567         * rendering/RenderMenuList.h:
568         * rendering/RenderObject.cpp:
569         (WebCore::RenderObject::columnNumberForOffset): Added; guarded by PLATFORM(IOS). Also, added a FIXME comment to
570         make this function return an unsigned integer instead of a signed integer.
571         (WebCore::RenderObject::collectSelectionRects): Added; guarded by PLATFORM(IOS).
572         (WebCore::RenderObject::destroy): Added iOS-specific code.
573         (WebCore::RenderObject::innerLineHeight): Added.
574         (WebCore::RenderObject::willRenderImage): Added iOS-specific code.
575         * rendering/RenderObject.h: Change the access control of RenderObject::drawLineForBoxSide() from protected to
576         public so that it can be used from RenderThemeIOS::adjustMenuListButtonStyle().
577         (WebCore::RenderObject::absoluteQuadsForSelection):
578         * rendering/RenderScrollbar.h: Change the access control of RenderScrollbar::getScrollbarPseudoStyle() from
579         private to public so that it can be used from the iOS-specific static function, scrollbarHasDisplayNone,
580         defined in RenderLayerCompositor.cpp.
581         * rendering/RenderSearchField.cpp:
582         (WebCore::RenderSearchField::itemText): Added iOS-specific code.
583         * rendering/RenderText.cpp:
584         (WebCore::RenderText::collectSelectionRects): Added; guarded by PLATFORM(IOS).
585         (WebCore::RenderText::setTextInternal): Added iOS-specific code.
586         * rendering/RenderText.h:
587         * rendering/RenderTextControl.cpp:
588         (WebCore::RenderTextControl::adjustInnerTextStyle): Ditto.
589         (WebCore::RenderTextControl::canScroll): Added; guarded by PLATFORM(IOS).
590         (WebCore::RenderTextControl::innerLineHeight): Ditto.
591         * rendering/RenderTextControl.h:
592         * rendering/RenderTextControlMultiLine.cpp:
593         (WebCore::RenderTextControlMultiLine::getAvgCharWidth): Compile-out code when building for iOS.
594         (WebCore::RenderTextControlMultiLine::createInnerTextStyle): Added iOS-specific code.
595         * rendering/RenderTextControlSingleLine.cpp:
596         (WebCore::RenderTextControlSingleLine::layout): Ditto.
597         (WebCore::RenderTextControlSingleLine::getAvgCharWidth): Compile-out code when building for iOS.
598         (WebCore::RenderTextControlSingleLine::preferredContentLogicalWidth): Ditto.
599         * rendering/RenderTextLineBoxes.cpp:
600         (WebCore::lineDirectionPointFitsInBox): Ditto.
601         (WebCore::RenderTextLineBoxes::positionForPoint): Added iOS-specific code.
602         * rendering/RenderTheme.cpp:
603         (WebCore::RenderTheme::paintBorderOnly): Ditto.
604         (WebCore::RenderTheme::paintDecorations): Modified to call the control-specific paint*Decorations().
605         * rendering/RenderTheme.h:
606         (WebCore::RenderTheme::paintCheckboxDecorations): Added.
607         (WebCore::RenderTheme::paintRadioDecorations): Added.
608         (WebCore::RenderTheme::paintButtonDecorations): Added.
609         (WebCore::RenderTheme::paintTextFieldDecorations): Added.
610         (WebCore::RenderTheme::paintTextAreaDecorations): Added.
611         (WebCore::RenderTheme::paintMenuListDecorations): Added.
612         (WebCore::RenderTheme::paintPushButtonDecorations): Added.
613         (WebCore::RenderTheme::paintSquareButtonDecorations): Added.
614         (WebCore::RenderTheme::paintFileUploadIconDecorations): Added.
615         (WebCore::RenderTheme::paintSliderThumbDecorations): Added.
616         (WebCore::RenderTheme::paintSearchFieldDecorations): Added.
617         * rendering/RenderThemeIOS.h: Added.
618         * rendering/RenderThemeIOS.mm: Added.
619         * rendering/RenderThemeMac.h: Don't compile the contents of this file when building for iOS.
620         * rendering/RenderThemeMac.mm: Ditto.
621         * rendering/RenderVideo.cpp:
622         (WebCore::RenderVideo::calculateIntrinsicSize): Compile-out code when building for iOS.
623         * rendering/RenderView.cpp:
624         (WebCore::RenderView::availableLogicalHeight): Add iOS-specific workaround. See <rdar://problem/7166808>.
625         (WebCore::fixedPositionOffset): Added; used in iOS-specific code (e.g. RenderView::mapLocalToContainer()).
626         (WebCore::RenderView::mapLocalToContainer): Use WebCore::fixedPositionOffset() instead of 
627         FrameView::scrollOffsetForFixedPosition().
628         (WebCore::RenderView::pushMappingToContainer): Ditto.
629         (WebCore::RenderView::mapAbsoluteToLocalPoint): Ditto.
630         (WebCore::RenderView::repaintViewRectangle): Ditto.
631         (WebCore::RenderView::computeRectForRepaint): Ditto.
632         (WebCore::isFixedPositionInViewport): Added; used in RenderView::hasCustomFixedPosition().
633         (WebCore::RenderView::hasCustomFixedPosition): Added; guarded by PLATFORM(IOS).
634         * rendering/RenderView.h:
635         * rendering/RenderWidget.cpp:
636         (WebCore::RenderWidget::willBeDestroyed): Added iOS-specific code.
637         * rendering/RootInlineBox.cpp:
638         (WebCore::RootInlineBox::ascentAndDescentForBox): Ditto.
639         * rendering/break_lines.cpp: Only include header <CoreServices/CoreServices.h> when building for Mac.
640
641 2013-12-06  Zoltan Horvath  <zoltan@webkit.org>
642
643         Clean up the includes of RenderBlock.h 
644         https://bugs.webkit.org/show_bug.cgi?id=125351
645
646         Reviewed by Darin Adler.
647
648         I turned some header includes into forward declarations. I also removed / 
649         moved out some includes, which don't belong to RenderBlock.h anymore.
650
651         No new tests, no behavior change.
652
653         * editing/VisibleUnits.cpp:
654         * html/HTMLInputElement.cpp:
655         * html/HTMLTextAreaElement.cpp:
656         * html/TextFieldInputType.cpp:
657         * html/TextInputType.cpp:
658         * rendering/InlineElementBox.cpp:
659         * rendering/RenderBlock.h:
660         * rendering/RenderBlockFlow.cpp:
661         * rendering/line/LineBreaker.h:
662         * rendering/line/LineWidth.cpp:
663
664 2013-12-06  Laszlo Vidacs  <lac@inf.u-szeged.hu>
665
666         Define SHA1 hash size in SHA1.h and use it at various places.
667         https://bugs.webkit.org/show_bug.cgi?id=125345
668
669         Reviewed by Darin Adler.
670
671         Use SHA1::hashSize instead of local variables.
672
673         * Modules/websockets/WebSocketHandshake.cpp:
674         (WebCore::WebSocketHandshake::getExpectedWebSocketAccept):
675         * platform/network/soup/ResourceHandleSoup.cpp:
676         (WebCore::HostTLSCertificateSet::computeCertificateHash):
677
678 2013-12-06  Dan Bernstein  <mitz@apple.com>
679
680         [Cocoa] Add load delegate methods for responding to authentication challenges
681         https://bugs.webkit.org/show_bug.cgi?id=125333
682
683         Reviewed by Darin Adler.
684
685         * WebCore.exp.in: Exported core(NSURLCredential *).
686
687 2013-12-06  Daniel Bates  <dabates@apple.com>
688
689         Rename {adjust, paint}SearchFieldDecoration, {adjust, paint}SearchFieldResultsDecoration
690         https://bugs.webkit.org/show_bug.cgi?id=125191
691
692         Reviewed by Joseph Pecoraro.
693
694         Towards upstreaming the iOS concept of render theme decorations, we should rename
695         RenderTheme::{adjust, paint}SearchFieldDecorationStyle and RenderTheme::{adjust, paint}SearchFieldResultsDecoration
696         to avoid ambiguity with the iOS concept.
697
698         * platform/efl/RenderThemeEfl.cpp:
699         * platform/efl/RenderThemeEfl.h:
700         * platform/gtk/RenderThemeGtk.cpp:
701         * platform/gtk/RenderThemeGtk.h:
702         * rendering/RenderTheme.cpp:
703         * rendering/RenderTheme.h:
704         * rendering/RenderThemeMac.h:
705         * rendering/RenderThemeMac.mm:
706         * rendering/RenderThemeSafari.cpp:
707         * rendering/RenderThemeSafari.h:
708         * rendering/RenderThemeWin.cpp:
709         * rendering/RenderThemeWin.h:
710         * rendering/RenderThemeWinCE.cpp:
711         * rendering/RenderThemeWinCE.h:
712
713 2013-12-06  Andreas Kling  <akling@apple.com>
714
715         Make remaining CSSValue constructors return PassRef.
716         <https://webkit.org/b/125337>
717
718         Tweak the remaining CSSValue create() helpers to return PassRef
719         instead of PassRefPtr in the cases where nullptr is never returned.
720
721         Reviewed by Anders Carlsson.
722
723 2013-12-06  Roger Fong  <roger_fong@apple.com>
724
725         Hook into some shader symbol logic following the ANGLE update in r159533.
726         https://bugs.webkit.org/show_bug.cgi?id=125332.
727
728         Reviewed by Brent Fulgham.
729
730         No new functionality added.
731
732         * html/canvas/WebGLRenderingContext.cpp: Add some error checking for errors related to 
733             shader symbols that exist across both vertex and fragment shaders.
734         (WebCore::WebGLRenderingContext::linkProgram):
735         * platform/graphics/ANGLEWebKitBridge.cpp: Add logic for handling varyings 
736             and add new fields to the ANGLEShaderSymbol struct.
737         (WebCore::getSymbolInfo):
738         * platform/graphics/ANGLEWebKitBridge.h:
739         * platform/graphics/GraphicsContext3D.h: Add those same fields to the SymbolInfo struct 
740             as well so that we can access them from our shader source map.
741             Also add a map of varyings along side the uniforms and attributes.
742         (WebCore::GraphicsContext3D::SymbolInfo::SymbolInfo):
743         (WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap):
744         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
745         (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
746         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
747         (WebCore::GraphicsContext3D::areProgramSymbolsValid): Will be filled in later, this method 
748             will use the shader source map to check for issues with unused varyings and precisions 
749             mismatches of shader symbols that exist across both the vertex and fragment shaders.
750
751 2013-12-06  Lukasz Gajowy  <l.gajowy@samsung.com>
752
753         [ATK] Missing aria roles mappings
754         https://bugs.webkit.org/show_bug.cgi?id=117729
755
756         Reviewed by Mario Sanchez Prada.
757
758         Added a few mappings from ARIA roles to ATK roles.
759
760         Test: accessibility/aria-mappings.html
761
762         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
763         (atkRole):
764
765 2013-11-11  Philippe Normand  <pnormand@igalia.com>
766
767         [GStreamer] webkitwebaudiosrc element needs to emit stream-start, caps and segment events
768         https://bugs.webkit.org/show_bug.cgi?id=123015
769
770         Reviewed by Martin Robinson.
771
772         When the source element starts emitting buffers send along various
773         events to notify downstream elements.
774
775         No new tests, change covered by existing webaudio tests.
776
777         * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
778         (webkit_web_audio_src_init): Initialize segment.
779         (webKitWebAudioSrcConstructed): Give an explicit name to each
780         queue added in front of the interleave element.
781         (webKitWebAudioSrcLoop): Before sending the first buffers push
782         stream-start, caps and segment events on each queue's sinkpad.
783
784 2013-12-05  Philippe Normand  <pnormand@igalia.com>
785
786         [GStreamer] Audio/Video sink management is incoherent
787         https://bugs.webkit.org/show_bug.cgi?id=125304
788
789         Reviewed by Gustavo Noronha Silva.
790
791         Allow subclasses of MediaPlayerPrivateGStreamerBase to create
792         custom audio/video sinks in a coherent manner using
793         create{Audio,Video}Sink methods. Convenience getters are also
794         available. Also removed some un-needed member variables in the
795         playbin-based player.
796
797         No new tests, existing media tests cover this change.
798
799         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
800         (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
801         (WebCore::MediaPlayerPrivateGStreamer::updateStates):
802         (WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
803         (WebCore::MediaPlayerPrivateGStreamer::audioSink):
804         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
805         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
806         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
807         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
808         (WebCore::MediaPlayerPrivateGStreamerBase::createAudioSink):
809
810 2013-12-05  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
811
812         Introduce IMAGE_TYPE_CASTS, and use it
813         https://bugs.webkit.org/show_bug.cgi?id=125330
814
815         Reviewed by Ryosuke Niwa.
816
817         As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS.
818         BitmapImage and SVGImage can use it to generate toFoo() type case helper functions.
819
820         No new tests, no behavior changes.
821
822         * loader/cache/CachedImage.cpp:
823         (WebCore::CachedImage::imageSizeForRenderer):
824         (WebCore::CachedImage::resumeAnimatingImagesForLoader):
825         * platform/graphics/BitmapImage.h:
826         * platform/graphics/Image.h:
827         * platform/mac/DragImageMac.mm:
828         (WebCore::createDragImageFromImage):
829         * svg/graphics/SVGImage.h:
830
831 2013-12-05  Zoltan Horvath  <zoltan@webkit.org>
832
833         Clean up the forwarding headers of RenderBlock.h
834         https://bugs.webkit.org/show_bug.cgi?id=125323
835
836         Reviewed by Ryosuke Niwa.
837
838         In this patch, I removed the unnecessary forwarding headers from RenderBlock.h, and moved some to RenderBlockFlow.h.
839
840         No new tests, no behavior change.
841
842         * rendering/RenderBlock.h: Remove unnecessary forwarding headers.
843         * rendering/RenderBlockFlow.h: Moved some forwarding headers from RenderBlock.h
844
845 2013-12-04  Oliver Hunt  <oliver@apple.com>
846
847         Refactor static getter function prototype to include thisValue in addition to the base object
848         https://bugs.webkit.org/show_bug.cgi?id=124461
849
850         Reviewed by Geoffrey Garen.
851
852         Change bindings codegen to produce static getter functions
853         with the correct types.  Also update the many custom implementations
854         to the new type.
855
856         No change in behaviour.
857
858         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
859         (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
860         (WebCore::cssPropertyGetterCallback):
861         * bindings/js/JSDOMBinding.cpp:
862         (WebCore::objectToStringFunctionGetter):
863         * bindings/js/JSDOMBinding.h:
864         * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
865         (WebCore::JSDOMMimeTypeArray::nameGetter):
866         * bindings/js/JSDOMPluginArrayCustom.cpp:
867         (WebCore::JSDOMPluginArray::nameGetter):
868         * bindings/js/JSDOMPluginCustom.cpp:
869         (WebCore::JSDOMPlugin::nameGetter):
870         * bindings/js/JSDOMStringMapCustom.cpp:
871         (WebCore::JSDOMStringMap::nameGetter):
872         * bindings/js/JSDOMWindowCustom.cpp:
873         (WebCore::nonCachingStaticFunctionGetter):
874         (WebCore::childFrameGetter):
875         (WebCore::indexGetter):
876         (WebCore::namedItemGetter):
877         * bindings/js/JSHTMLAllCollectionCustom.cpp:
878         (WebCore::JSHTMLAllCollection::nameGetter):
879         * bindings/js/JSHTMLCollectionCustom.cpp:
880         (WebCore::JSHTMLCollection::nameGetter):
881         * bindings/js/JSHTMLDocumentCustom.cpp:
882         (WebCore::JSHTMLDocument::nameGetter):
883         * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
884         (WebCore::JSHTMLFormControlsCollection::nameGetter):
885         * bindings/js/JSHTMLFormElementCustom.cpp:
886         (WebCore::JSHTMLFormElement::nameGetter):
887         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
888         (WebCore::JSHTMLFrameSetElement::nameGetter):
889         * bindings/js/JSHistoryCustom.cpp:
890         (WebCore::nonCachingStaticBackFunctionGetter):
891         (WebCore::nonCachingStaticForwardFunctionGetter):
892         (WebCore::nonCachingStaticGoFunctionGetter):
893         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
894         (WebCore::JSJavaScriptCallFrame::scopeType):
895         * bindings/js/JSLocationCustom.cpp:
896         (WebCore::nonCachingStaticReplaceFunctionGetter):
897         (WebCore::nonCachingStaticReloadFunctionGetter):
898         (WebCore::nonCachingStaticAssignFunctionGetter):
899         * bindings/js/JSNamedNodeMapCustom.cpp:
900         (WebCore::JSNamedNodeMap::nameGetter):
901         * bindings/js/JSNodeListCustom.cpp:
902         (WebCore::JSNodeList::nameGetter):
903         * bindings/js/JSPluginElementFunctions.cpp:
904         (WebCore::pluginElementPropertyGetter):
905         * bindings/js/JSPluginElementFunctions.h:
906         * bindings/js/JSRTCStatsResponseCustom.cpp:
907         (WebCore::JSRTCStatsResponse::nameGetter):
908         * bindings/js/JSStorageCustom.cpp:
909         (WebCore::JSStorage::nameGetter):
910         * bindings/js/JSStyleSheetListCustom.cpp:
911         (WebCore::JSStyleSheetList::nameGetter):
912         * bindings/scripts/CodeGeneratorJS.pm:
913         (GenerateHeader):
914         (GenerateImplementation):
915         (GenerateParametersCheck):
916         * bridge/runtime_array.cpp:
917         (JSC::RuntimeArray::lengthGetter):
918         (JSC::RuntimeArray::indexGetter):
919         * bridge/runtime_array.h:
920         * bridge/runtime_method.cpp:
921         (JSC::RuntimeMethod::lengthGetter):
922         * bridge/runtime_method.h:
923         * bridge/runtime_object.cpp:
924         (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
925         (JSC::Bindings::RuntimeObject::fieldGetter):
926         (JSC::Bindings::RuntimeObject::methodGetter):
927         * bridge/runtime_object.h:
928
929 2013-12-05  Tim Horton  <timothy_horton@apple.com>
930
931         Remove Image::decodedSize()
932         https://bugs.webkit.org/show_bug.cgi?id=125327
933
934         Reviewed by Sam Weinig.
935
936         No new tests, just removing dead code.
937
938         * platform/graphics/BitmapImage.cpp:
939         (WebCore::BitmapImage::resetAnimation):
940         * platform/graphics/BitmapImage.h:
941         * platform/graphics/GeneratedImage.h:
942         * platform/graphics/Image.h:
943         * platform/graphics/cg/PDFDocumentImage.cpp:
944         * platform/graphics/cg/PDFDocumentImage.h:
945         * svg/graphics/SVGImage.h:
946         * svg/graphics/SVGImageForContainer.h:
947
948 2013-12-05  Commit Queue  <commit-queue@webkit.org>
949
950         Unreviewed, rolling out r160133.
951         http://trac.webkit.org/changeset/160133
952         https://bugs.webkit.org/show_bug.cgi?id=125325
953
954         broke bindings tests on all the bots (Requested by thorton on
955         #webkit).
956
957         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
958         (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
959         (WebCore::cssPropertyGetterCallback):
960         * bindings/js/JSDOMBinding.cpp:
961         (WebCore::objectToStringFunctionGetter):
962         * bindings/js/JSDOMBinding.h:
963         * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
964         (WebCore::JSDOMMimeTypeArray::nameGetter):
965         * bindings/js/JSDOMPluginArrayCustom.cpp:
966         (WebCore::JSDOMPluginArray::nameGetter):
967         * bindings/js/JSDOMPluginCustom.cpp:
968         (WebCore::JSDOMPlugin::nameGetter):
969         * bindings/js/JSDOMStringMapCustom.cpp:
970         (WebCore::JSDOMStringMap::nameGetter):
971         * bindings/js/JSDOMWindowCustom.cpp:
972         (WebCore::nonCachingStaticFunctionGetter):
973         (WebCore::childFrameGetter):
974         (WebCore::indexGetter):
975         (WebCore::namedItemGetter):
976         * bindings/js/JSHTMLAllCollectionCustom.cpp:
977         (WebCore::JSHTMLAllCollection::nameGetter):
978         * bindings/js/JSHTMLCollectionCustom.cpp:
979         (WebCore::JSHTMLCollection::nameGetter):
980         * bindings/js/JSHTMLDocumentCustom.cpp:
981         (WebCore::JSHTMLDocument::nameGetter):
982         * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
983         (WebCore::JSHTMLFormControlsCollection::nameGetter):
984         * bindings/js/JSHTMLFormElementCustom.cpp:
985         (WebCore::JSHTMLFormElement::nameGetter):
986         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
987         (WebCore::JSHTMLFrameSetElement::nameGetter):
988         * bindings/js/JSHistoryCustom.cpp:
989         (WebCore::nonCachingStaticBackFunctionGetter):
990         (WebCore::nonCachingStaticForwardFunctionGetter):
991         (WebCore::nonCachingStaticGoFunctionGetter):
992         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
993         (WebCore::JSJavaScriptCallFrame::scopeType):
994         * bindings/js/JSLocationCustom.cpp:
995         (WebCore::nonCachingStaticReplaceFunctionGetter):
996         (WebCore::nonCachingStaticReloadFunctionGetter):
997         (WebCore::nonCachingStaticAssignFunctionGetter):
998         * bindings/js/JSNamedNodeMapCustom.cpp:
999         (WebCore::JSNamedNodeMap::nameGetter):
1000         * bindings/js/JSNodeListCustom.cpp:
1001         (WebCore::JSNodeList::nameGetter):
1002         * bindings/js/JSPluginElementFunctions.cpp:
1003         (WebCore::pluginElementPropertyGetter):
1004         * bindings/js/JSPluginElementFunctions.h:
1005         * bindings/js/JSRTCStatsResponseCustom.cpp:
1006         (WebCore::JSRTCStatsResponse::nameGetter):
1007         * bindings/js/JSStorageCustom.cpp:
1008         (WebCore::JSStorage::nameGetter):
1009         * bindings/js/JSStyleSheetListCustom.cpp:
1010         (WebCore::JSStyleSheetList::nameGetter):
1011         * bindings/scripts/CodeGeneratorJS.pm:
1012         (GenerateHeader):
1013         (GenerateImplementation):
1014         (GenerateParametersCheck):
1015         * bridge/runtime_array.cpp:
1016         (JSC::RuntimeArray::lengthGetter):
1017         (JSC::RuntimeArray::indexGetter):
1018         * bridge/runtime_array.h:
1019         * bridge/runtime_method.cpp:
1020         (JSC::RuntimeMethod::lengthGetter):
1021         * bridge/runtime_method.h:
1022         * bridge/runtime_object.cpp:
1023         (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
1024         (JSC::Bindings::RuntimeObject::fieldGetter):
1025         (JSC::Bindings::RuntimeObject::methodGetter):
1026         * bridge/runtime_object.h:
1027
1028 2013-12-05  Seokju Kwon  <seokju@webkit.org>
1029
1030         Web Inspector: Remove 'cookiesString' output from Page.getCookies
1031         https://bugs.webkit.org/show_bug.cgi?id=125268
1032
1033         Reviewed by Timothy Hatcher.
1034
1035         Remove 'cookiesString' output from Page.getCookies protocol.
1036         It is no longer meaningful because it is an unused parameter.
1037
1038         No new tests, no behavior change.
1039
1040         * inspector/InspectorPageAgent.cpp:
1041         (WebCore::InspectorPageAgent::getCookies):
1042         * inspector/InspectorPageAgent.h:
1043         * inspector/protocol/Page.json:
1044
1045 2013-12-05  Brian J. Burg  <burg@cs.washington.edu>
1046
1047         Web Inspector: expose node and frame snapshot capabilities.
1048         https://bugs.webkit.org/show_bug.cgi?id=124326
1049
1050         Reviewed by Joseph Pecoraro.
1051
1052         This adds snapshotRect() and snapshotNode() to the Page domain.
1053         Both methods create snapshots using FrameSnapshotting APIs
1054         and send images to the inspector frontend as a data URL.
1055
1056         Remove the unimplemented Page.captureScreenshot API.
1057
1058         * inspector/InspectorPageAgent.cpp:
1059         (WebCore::InspectorPageAgent::snapshotNode): Added.
1060         (WebCore::InspectorPageAgent::snapshotRect): Added.
1061         * inspector/InspectorPageAgent.h:
1062         * inspector/protocol/Page.json: Added new protocol APIs.
1063
1064 2013-12-04 Bear Travis <betravis@adobe.com>
1065
1066     [CSS Shapes] Enable CSS Shapes on Windows
1067     https://bugs.webkit.org/show_bug.cgi?id=89957
1068
1069     Reviewed by Brent Fulgham.
1070
1071     * css/CSSPropertyNames.in: Tweak to ensure shapes properties are regenerated.
1072
1073 2013-12-05  Roger Fong  <roger_fong@apple.com>
1074
1075         [WebGL] Make sure we satisfy uniform and varying packing restrictions.
1076         https://bugs.webkit.org/show_bug.cgi?id=125124.
1077         <rdar://problem/15203291>
1078
1079         Reviewed by Brent Fulgham.
1080
1081         Tests covered by WebGL Khronos conformance tests:
1082         webgl/1.0.2/conformance/glsl/misc/shader-uniform-packing-restrictions.html
1083         webgl/1.0.2/conformance/glsl/misc/shader-varying-packing-restrictions.html
1084
1085         * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
1086         (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
1087
1088 2013-12-05  Laszlo Vidacs  <lac@inf.u-szeged.hu>
1089
1090         32bit buildfix after r160151
1091         https://bugs.webkit.org/show_bug.cgi?id=125298
1092
1093         Reviewed by Csaba Osztrogonác.
1094
1095         * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
1096         (StreamingClient::handleDataReceived):
1097
1098 2013-12-05  Myles C. Maxfield  <mmaxfield@apple.com>
1099
1100         Cropping and drawing ImageBuffers results in uninitialized data being shown
1101         https://bugs.webkit.org/show_bug.cgi?id=125271
1102
1103         Reviewed by Simon Fraser.
1104
1105         createCroppedImageIfNecessary() crops to the bottom left of the ImageBuffer
1106         backing store instead of the top left. In addition, ImageBuffer::draw()
1107         draws the entire ImageBuffer's backing store instead of just the relevant
1108         portion of it.
1109
1110         No new tests are necessary because the existing tests already test this
1111         functionality
1112
1113         * platform/graphics/cg/ImageBufferCG.cpp:
1114         (WebCore::createCroppedImageIfNecessary): Crop to the top left of the
1115         backing store 
1116         (WebCore::ImageBuffer::draw): Draw only the logical portion of the
1117         backing store 
1118
1119 2013-12-05  Joseph Pecoraro  <pecoraro@apple.com>
1120
1121         Remove stale ScriptGlobalObject methods
1122         https://bugs.webkit.org/show_bug.cgi?id=125276
1123
1124         Reviewed by Sam Weinig.
1125
1126         * bindings/js/ScriptObject.cpp:
1127         (WebCore::ScriptGlobalObject::set):
1128         * bindings/js/ScriptObject.h:
1129
1130 2013-12-04  Ryosuke Niwa  <rniwa@webkit.org>
1131
1132         Change how the form element pointer affects parsing template elements, to reduce weirdness in templates
1133         https://bugs.webkit.org/show_bug.cgi?id=125279
1134
1135         Reviewed by Antti Koivisto.
1136
1137         Faithfully update the HTML5 parser after http://html5.org/tools/web-apps-tracker?from=8330&to=8331.
1138
1139         Test: fast/dom/HTMLTemplateElement/no-form-association-2.html
1140
1141         * html/parser/HTMLConstructionSite.cpp:
1142         (WebCore::HTMLConstructionSite::insertHTMLFormElement): Don't the form element pointer if the context
1143         element or its ancestor is a template element.
1144         (WebCore::HTMLConstructionSite::insideTemplateElement): Added.
1145         (WebCore::HTMLConstructionSite::createHTMLElement): Renamed openElementsContainTemplateElement to
1146         insideTemplateElement to reflect the true semantics of the boolean.
1147
1148         * html/parser/HTMLConstructionSite.h:
1149
1150         * html/parser/HTMLTreeBuilder.cpp:
1151         (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): Ignore the form element pointer if there
1152         is a template element on the stack of open elements. This faithfully reflects what's being said in the
1153         specification. We should probably make isParsingTemplateContents more efficient by storing a boolean
1154         and then wrap from() in some helper function but that should probbaly happen in a separate patch.
1155         (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto.
1156         (WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto.
1157         (WebCore::HTMLTreeBuilder::processEndTagForInBody): Don't unset or rely on the form element pointer
1158         when there is a template element on the stack of open elements.
1159
1160         * html/parser/HTMLTreeBuilder.h:
1161         (WebCore::HTMLTreeBuilder::isParsingTemplateContents): Added a trivial implementation for when
1162         TEMPLATE_ELEMENT is disabled.
1163         (WebCore::HTMLTreeBuilder::isParsingFragmentOrTemplateContents): Merged two implementations.
1164
1165 2013-12-05  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
1166
1167         [MediaStream] Firing negotiationneeded event upon track add/remove on MediaStream
1168         https://bugs.webkit.org/show_bug.cgi?id=125243
1169
1170         Reviewed by Eric Carlson.
1171
1172         Spec states that: In particular, if an RTCPeerConnection object is consuming a MediaStream on which a track is
1173         added, by, e.g., the addTrack() method being invoked, the RTCPeerConnection object must fire the
1174         "negotiationneeded" event. Removal of media components must also trigger "negotiationneeded".
1175
1176         Existing tests updated.
1177
1178         * Modules/mediastream/MediaStream.cpp:
1179         (WebCore::MediaStream::addTrack):
1180         (WebCore::MediaStream::removeTrack):
1181         (WebCore::MediaStream::addObserver):
1182         (WebCore::MediaStream::removeObserver):
1183         * Modules/mediastream/MediaStream.h:
1184         * Modules/mediastream/RTCPeerConnection.cpp:
1185         (WebCore::RTCPeerConnection::~RTCPeerConnection):
1186         (WebCore::RTCPeerConnection::addStream):
1187         (WebCore::RTCPeerConnection::removeStream):
1188         (WebCore::RTCPeerConnection::didAddOrRemoveTrack):
1189         * Modules/mediastream/RTCPeerConnection.h:
1190         * platform/mock/RTCPeerConnectionHandlerMock.cpp:
1191         (WebCore::RTCPeerConnectionHandlerMock::addStream):
1192
1193 2013-12-05  Beth Dakin  <bdakin@apple.com>
1194
1195         Bad repaints on twitter when the tile cache has a margin
1196         https://bugs.webkit.org/show_bug.cgi?id=125263
1197         -and corresponding-
1198         <rdar://problem/15576884>
1199
1200         Reviewed by Tim Horton.
1201
1202         When tiles that used to be margin tiles become real-content tiles, they need to be 
1203         invalidated.
1204
1205         Two new helper functions will make it so that we don’t have to manually factor out 
1206         the margin from the bounds in more than one place in the code.
1207         * platform/graphics/ca/mac/TileController.h:
1208         * platform/graphics/ca/mac/TileController.mm:
1209         (WebCore::TileController::boundsWithoutMargin):
1210         (WebCore::TileController::boundsAtLastRevalidateWithoutMargin):
1211
1212          Here is one existing place where we used to factor out the margin, but now we can 
1213         call boundsWithoutMargin().
1214         (WebCore::TileController::adjustRectAtTileIndexForMargin):
1215
1216         And here is where we invalidate the formerly-margin tiles.
1217         (WebCore::TileController::revalidateTiles):
1218
1219 2013-12-05  Zoltan Horvath  <zoltan@webkit.org>
1220
1221         Remove the forward declaration of BidiContext class from RenderBlock.h
1222         https://bugs.webkit.org/show_bug.cgi?id=125265
1223
1224         Reviewed by Csaba Osztrogonác.
1225
1226         No new tests, no behavior change.
1227
1228         * rendering/RenderBlock.h: BidiContext is not used in RenderBlock.h
1229
1230 2013-12-05  Aloisio Almeida Jr  <aloisio.almeida@openbossa.org>
1231
1232         [Cairo] Avoid extra copy when drawing images
1233         https://bugs.webkit.org/show_bug.cgi?id=124209
1234
1235         Reviewed by Carlos Garcia Campos.
1236
1237         This commit applies some changes proposed after the original patch has
1238         been landed. It fixes the logic to create the subsurface (as it was
1239         inverted). It also remove an unnecessary RefPtr variable to hold the
1240         subsurface.
1241
1242         No new tests. It's an enhancement. Already covered by existing tests.
1243
1244         * platform/graphics/cairo/PlatformContextCairo.cpp:
1245         (WebCore::PlatformContextCairo::drawSurfaceToContext):
1246
1247 2013-12-05  Zoltan Horvath  <zoltan@webkit.org>
1248
1249         [CSS Shapes] Fix inset when only a subset of the arguments are defined
1250         https://bugs.webkit.org/show_bug.cgi?id=125277
1251
1252         Reviewed by David Hyatt.
1253
1254        I thought Length's default value is fixed-0, but actually it's auto-0. For the optional arguments
1255        of inset shape, we need to use fixed-0, so I updated the code and the tests to use that explicitly.
1256
1257         No new tests, I updated the old ones.
1258
1259         * css/BasicShapeFunctions.cpp:
1260         (WebCore::basicShapeForValue):
1261
1262 2013-12-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1263
1264         [GTK] Do not use deprecated gtk-doc 'Rename to' tag
1265         https://bugs.webkit.org/show_bug.cgi?id=125303
1266
1267         Reviewed by Philippe Normand.
1268
1269         GObject introspection rename-to annotation is available in
1270         since version 0.6.3 so we should use that instead.
1271
1272         * bindings/gobject/WebKitDOMEventTarget.h:
1273
1274 2013-12-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1275
1276         [GTK] Add missing symbols to WebKitDOMDeprecated.symbols
1277         https://bugs.webkit.org/show_bug.cgi?id=125300
1278
1279         Reviewed by Philippe Normand.
1280
1281         Add webkit_dom_html_element_get_id and
1282         webkit_dom_html_element_set_id to the symbols files.
1283
1284         * bindings/gobject/WebKitDOMDeprecated.symbols:
1285         * bindings/gobject/webkitdom.symbols:
1286
1287 2013-12-05  Carlos Garcia Campos  <cgarcia@igalia.com>
1288
1289         Unreviewed. Update GObject DOM bindings symbols file after r159711.
1290
1291         * bindings/gobject/webkitdom.symbols:
1292
1293 2013-12-05  Zan Dobersek  <zdobersek@igalia.com>
1294
1295         [GTK] Move platform sources free of layering violations under libPlatform
1296         https://bugs.webkit.org/show_bug.cgi?id=117509
1297
1298         Reviewed by Carlos Garcia Campos.
1299
1300         * GNUmakefile.list.am: Move additional source files located in the platform layer under libPlatform.
1301         All moved sources are free of layering violations and thus ready for the migration.
1302
1303 2013-12-05  László Langó  <lango@inf.u-szeged.hu>
1304
1305         Remove bridge/testqtbindings.cpp.
1306         https://bugs.webkit.org/show_bug.cgi?id=125287
1307
1308         Reviewed by Alexey Proskuryakov.
1309
1310         * bridge/testqtbindings.cpp: Removed. There is no QT anymore.
1311         We don't need this file.
1312
1313 2013-12-04  Gurpreet Kaur  <k.gurpreet@samsung.com>
1314
1315         % unit heights don't work if parent block height is set in vh
1316         https://bugs.webkit.org/show_bug.cgi?id=118516
1317
1318         Reviewed by Simon Fraser.
1319
1320         From Blink r156449 by <srinivasa.ragavan.venkateswaran@intel.com>
1321
1322         An element having height as percentage needs to have the
1323         containingblock's height or availableheight to calculate its
1324         own height. The containing block having a height set in vh
1325         unit was not being considered for calculating the child's
1326         height.
1327
1328         Tests: fast/css/viewport-percentage-compute-box-height.html
1329                fast/css/viewport-percentage-compute-box-width.html
1330
1331         * rendering/RenderBox.cpp:
1332         (WebCore::RenderBox::computePercentageLogicalHeight):
1333         Correct child's height(in pecentage) was not being calculated
1334         incase of parent having height set in vh unit. Added condition
1335         to calculate the containing block height in terms of viewport size.
1336
1337 2013-12-04  Roger Fong  <roger_fong@apple.com>
1338
1339         [Windows] Unreviewed build fix. Copy headers from rendering/line to build directory.
1340
1341         * WebCore.vcxproj/copyForwardingHeaders.cmd:
1342
1343 2013-12-04  Ryosuke Niwa  <rniwa@webkit.org>
1344
1345         bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless
1346         https://bugs.webkit.org/show_bug.cgi?id=125208
1347
1348         Rubber-stamped by Anders Carlsson.
1349
1350         Address Darin's comment to use fastGetAttribute instead of getAttribute.
1351
1352         * html/HTMLDocument.cpp:
1353         (WebCore::HTMLDocument::bgColor):
1354         (WebCore::HTMLDocument::fgColor):
1355         (WebCore::HTMLDocument::alinkColor):
1356         (WebCore::HTMLDocument::linkColor):
1357         (WebCore::HTMLDocument::vlinkColor):
1358
1359 2013-12-04  Brian J. Burg  <burg@cs.washington.edu>
1360
1361         Consolidate various frame snapshot capabilities.
1362         https://bugs.webkit.org/show_bug.cgi?id=124325
1363
1364         Reviewed by Darin Adler.
1365
1366         Various snapshot creation methods had duplicated code and were split
1367         between Frame, DragImage, and platform-specific implementationss.
1368         This patch puts WebCore snapshot methods into FrameSnapshotting
1369         and removes platform implementations where possible.
1370
1371         DragImage methods reuse snapshot methods where possible. Inspector
1372         will be able to take snapshots without using drag images.
1373
1374         No new tests, this is a refactoring.
1375
1376         * CMakeLists.txt:
1377         * GNUmakefile.list.am:
1378         * WebCore.exp.in:
1379         * WebCore.vcxproj/WebCore.vcxproj:
1380         * WebCore.vcxproj/WebCore.vcxproj.filters:
1381         * WebCore.xcodeproj/project.pbxproj:
1382         * bindings/objc/DOM.mm:
1383         (-[DOMNode renderedImage]):
1384         (-[DOMRange renderedImageForcingBlackText:]):
1385         * dom/Clipboard.cpp:
1386         (WebCore::Clipboard::createDragImage):
1387         * dom/ClipboardMac.mm:
1388         (WebCore::Clipboard::createDragImage):
1389         * page/DragController.cpp:
1390         (WebCore::DragController::startDrag):
1391         * page/Frame.cpp:
1392         * page/Frame.h:
1393         * page/FrameSnapshotting.cpp: Added.
1394         (WebCore::ScopedFramePaintingState::ScopedFramePaintingState):
1395         (WebCore::ScopedFramePaintingState::~ScopedFramePaintingState):
1396         (WebCore::snapshotFrameRect): Move most buffer logic to here.
1397         (WebCore::snapshotSelection): Moved from Frame.
1398         (WebCore::snapshotNode): Moved from Frame.
1399         * page/FrameSnapshotting.h: Added.
1400         * page/mac/FrameMac.mm: Removed.
1401         * page/mac/FrameSnapshottingMac.h: Removed.
1402         * page/mac/FrameSnapshottingMac.mm: Removed.
1403         * page/win/FrameWin.cpp: remove duplicate implementation.
1404         * page/win/FrameWin.h: Fix an incorrect parameter name.
1405         * platform/DragImage.cpp:
1406         (WebCore::ScopedNodeDragState::ScopedNodeDragState):
1407         (WebCore::ScopedNodeDragState::~ScopedNodeDragState):
1408         (WebCore::createDragImageFromSnapshot): Boilerplate buffer conversion.
1409         (WebCore::createDragImageForNode):
1410         (WebCore::createDragImageForSelection):
1411         (WebCore::ScopedFrameSelectionState::ScopedFrameSelectionState):
1412         (WebCore::ScopedFrameSelectionState::~ScopedFrameSelectionState):
1413         (WebCore::createDragImageForRange): Moved from Frame.
1414         (WebCore::createDragImageForImage): Moved from FrameSnapshottingMac.
1415         (WebCore::createDragImageForLink): use nullptr.
1416
1417 2013-12-04  Benjamin Poulain  <bpoulain@apple.com>
1418
1419         Remove spaces on a blank line to have ResourceHandleCFNet.cpp identical to iOS
1420
1421         Unreviewed.
1422
1423         * platform/network/cf/ResourceHandleCFNet.cpp:
1424         (WebCore::ResourceHandle::platformLoadResourceSynchronously):
1425
1426 2013-12-04  Antti Koivisto  <antti@apple.com>
1427
1428         Move pseudo element construction out from Element
1429         https://bugs.webkit.org/show_bug.cgi?id=125257
1430
1431         Reviewed by Anders Carlsson.
1432
1433         This is logically part of the style resolve/render tree construction. This will make future
1434         refactoring easier.
1435
1436         * dom/Element.cpp:
1437         * dom/Element.h:
1438         * style/StyleResolveTree.cpp:
1439         (WebCore::Style::beforeOrAfterPseudoElement):
1440         (WebCore::Style::setBeforeOrAfterPseudoElement):
1441         (WebCore::Style::clearBeforeOrAfterPseudoElement):
1442         (WebCore::Style::needsPseudeElement):
1443         (WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
1444         (WebCore::Style::attachRenderTree):
1445         (WebCore::Style::updateBeforeOrAfterPseudoElement):
1446         (WebCore::Style::resolveTree):
1447
1448 2013-12-04  Zoltan Horvath  <zoltan@webkit.org>
1449
1450         Move TrailingObjects class into its own h/cpp
1451         https://bugs.webkit.org/show_bug.cgi?id=124956
1452
1453         Reviewed by David Hyatt.
1454
1455         Since I moved space-ignoring inline functions into MidpointState in r160074,
1456         I can nicely separate TrailingObjects class from BreakingContextInlineHeader.h.
1457         This change improves the readability, and it's part of the RenderBlockLineLayout
1458         refactoring campaign, which is tracked under bug #121261.
1459
1460         No new tests, no behavior change.
1461
1462         * CMakeLists.txt:
1463         * GNUmakefile.list.am:
1464         * WebCore.vcxproj/WebCore.vcxproj:
1465         * WebCore.xcodeproj/project.pbxproj:
1466         * rendering/RenderBlock.h:
1467         * rendering/RenderBlockFlow.h:
1468         * rendering/line/BreakingContextInlineHeaders.h:
1469         * rendering/line/TrailingObjects.cpp: Added.
1470         (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
1471         * rendering/line/TrailingObjects.h: Added.
1472         (WebCore::TrailingObjects::TrailingObjects):
1473         (WebCore::TrailingObjects::setTrailingWhitespace):
1474         (WebCore::TrailingObjects::clear):
1475         (WebCore::TrailingObjects::appendBoxIfNeeded):
1476
1477 2013-12-04  Oliver Hunt  <oliver@apple.com>
1478
1479         Refactor static getter function prototype to include thisValue in addition to the base object
1480         https://bugs.webkit.org/show_bug.cgi?id=124461
1481
1482         Reviewed by Geoffrey Garen.
1483
1484         Change bindings codegen to produce static getter functions
1485         with the correct types.  Also update the many custom implementations
1486         to the new type.
1487
1488         No change in behaviour.
1489
1490         * bindings/js/JSCSSStyleDeclarationCustom.cpp:
1491         (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
1492         (WebCore::cssPropertyGetterCallback):
1493         * bindings/js/JSDOMBinding.cpp:
1494         (WebCore::objectToStringFunctionGetter):
1495         * bindings/js/JSDOMBinding.h:
1496         * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
1497         (WebCore::JSDOMMimeTypeArray::nameGetter):
1498         * bindings/js/JSDOMPluginArrayCustom.cpp:
1499         (WebCore::JSDOMPluginArray::nameGetter):
1500         * bindings/js/JSDOMPluginCustom.cpp:
1501         (WebCore::JSDOMPlugin::nameGetter):
1502         * bindings/js/JSDOMStringMapCustom.cpp:
1503         (WebCore::JSDOMStringMap::nameGetter):
1504         * bindings/js/JSDOMWindowCustom.cpp:
1505         (WebCore::nonCachingStaticFunctionGetter):
1506         (WebCore::childFrameGetter):
1507         (WebCore::indexGetter):
1508         (WebCore::namedItemGetter):
1509         * bindings/js/JSHTMLAllCollectionCustom.cpp:
1510         (WebCore::JSHTMLAllCollection::nameGetter):
1511         * bindings/js/JSHTMLCollectionCustom.cpp:
1512         (WebCore::JSHTMLCollection::nameGetter):
1513         * bindings/js/JSHTMLDocumentCustom.cpp:
1514         (WebCore::JSHTMLDocument::nameGetter):
1515         * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
1516         (WebCore::JSHTMLFormControlsCollection::nameGetter):
1517         * bindings/js/JSHTMLFormElementCustom.cpp:
1518         (WebCore::JSHTMLFormElement::nameGetter):
1519         * bindings/js/JSHTMLFrameSetElementCustom.cpp:
1520         (WebCore::JSHTMLFrameSetElement::nameGetter):
1521         * bindings/js/JSHistoryCustom.cpp:
1522         (WebCore::nonCachingStaticBackFunctionGetter):
1523         (WebCore::nonCachingStaticForwardFunctionGetter):
1524         (WebCore::nonCachingStaticGoFunctionGetter):
1525         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
1526         (WebCore::JSJavaScriptCallFrame::scopeType):
1527         * bindings/js/JSLocationCustom.cpp:
1528         (WebCore::nonCachingStaticReplaceFunctionGetter):
1529         (WebCore::nonCachingStaticReloadFunctionGetter):
1530         (WebCore::nonCachingStaticAssignFunctionGetter):
1531         * bindings/js/JSNamedNodeMapCustom.cpp:
1532         (WebCore::JSNamedNodeMap::nameGetter):
1533         * bindings/js/JSNodeListCustom.cpp:
1534         (WebCore::JSNodeList::nameGetter):
1535         * bindings/js/JSPluginElementFunctions.cpp:
1536         (WebCore::pluginElementPropertyGetter):
1537         * bindings/js/JSPluginElementFunctions.h:
1538         * bindings/js/JSRTCStatsResponseCustom.cpp:
1539         (WebCore::JSRTCStatsResponse::nameGetter):
1540         * bindings/js/JSStorageCustom.cpp:
1541         (WebCore::JSStorage::nameGetter):
1542         * bindings/js/JSStyleSheetListCustom.cpp:
1543         (WebCore::JSStyleSheetList::nameGetter):
1544         * bindings/scripts/CodeGeneratorJS.pm:
1545         (GenerateHeader):
1546         (GenerateImplementation):
1547         (GenerateParametersCheck):
1548         * bridge/runtime_array.cpp:
1549         (JSC::RuntimeArray::lengthGetter):
1550         (JSC::RuntimeArray::indexGetter):
1551         * bridge/runtime_array.h:
1552         * bridge/runtime_method.cpp:
1553         (JSC::RuntimeMethod::lengthGetter):
1554         * bridge/runtime_method.h:
1555         * bridge/runtime_object.cpp:
1556         (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
1557         (JSC::Bindings::RuntimeObject::fieldGetter):
1558         (JSC::Bindings::RuntimeObject::methodGetter):
1559         * bridge/runtime_object.h:
1560
1561 2013-12-04  Zoltan Horvath  <zoltan@webkit.org>
1562
1563         [CSS Shapes] Support inset for shape-outside
1564         <https://webkit.org/b/125112>
1565
1566         Reviewed by David Hyatt.
1567
1568         This patch adds inset support for shape-outside. Parsing has previously landed in r159968.
1569         Specification: http://dev.w3.org/csswg/css-shapes/#supported-basic-shapes
1570
1571         Tests: fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left.html
1572                fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right.html
1573                fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left.html
1574                fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html
1575                fast/shapes/shape-outside-floats/shape-outside-floats-inset.html
1576
1577         * platform/LengthSize.h:
1578         (WebCore::LengthSize::floatSize): Add conversion to FloatSize.
1579         * rendering/shapes/Shape.cpp:
1580         (WebCore::Shape::createShape): Handle inset case.
1581
1582 2013-12-04  Bear Travis  <betravis@adobe.com>
1583
1584         Web Inspector: [CSS Shapes] Support raster shape visualizations
1585         https://bugs.webkit.org/show_bug.cgi?id=124080
1586
1587         Reviewed by Joseph Pecoraro.
1588
1589         Create an inspector visualization for a shape created from an image.
1590         The visualization takes each line of the image, combining where possible.
1591
1592         Test added to inspector-protocol/model/highlight-shape-outside.html
1593
1594         * rendering/shapes/RasterShape.cpp:
1595         (WebCore::RasterShapeIntervals::buildBoundsPath): Create a path representing the
1596         RasterShapeIntervals.
1597         * rendering/shapes/RasterShape.h:
1598
1599 2013-12-04  Zoltan Horvath  <zoltan@webkit.org>
1600
1601         [CSS Shapes] Remove explicit numbering from BasicShape::Type and CSSBasicShape::Type enums
1602         https://bugs.webkit.org/show_bug.cgi?id=125163
1603
1604         Reviewed by Rob Buis.
1605
1606         I don't see any reason to have explicit numbering for the Type enum in our [CSS]BasicShape classes.
1607         I removed numbering, which will decrease for instance the merge conflicts on Type changes.
1608
1609         No new tests, no behavior change.
1610
1611         * css/CSSBasicShapes.h:
1612         * rendering/style/BasicShapes.h:
1613
1614 2013-12-04  Myles C. Maxfield  <mmaxfield@apple.com>
1615
1616         Allow ImageBuffer to use an IOSurface that is larger than necessary
1617         https://bugs.webkit.org/show_bug.cgi?id=124626
1618
1619         Reviewed by Simon Fraser.
1620
1621         Because creating ImageBuffer's backing store can be so expensive, it
1622         would be beneficial to have a pool of pre-created backing stores
1623         available. However, this means that ImageBuffer might have to use a
1624         backing store that is larger than the exact dimensions that it needs.
1625         This patch adds a field, m_backingStoreSize, to CG's ImageBufferData
1626         class, and uses this new field when performing ImageBuffer operations
1627         to allow for larger-than-necessary backing stores. Content is always
1628         drawn in the top left corner of the backing store.
1629
1630         No new tests are necessary because there is no behavior change.
1631
1632         * platform/graphics/ImageBuffer.h:
1633         (WebCore::ImageBuffer::baseTransform): The base transform has to put
1634         content at the top left corner instead of bottom left
1635         * platform/graphics/cg/ImageBufferCG.cpp:
1636         (WebCore::createCroppedImageIfNecessary): Convenience function to figure out
1637         the dimensions of the backing texture in user space
1638         (WebCore::ImageBuffer::ImageBuffer): Set up new m_backingStoreSize member
1639         (WebCore::maybeCropToBounds): Some ImageBuffer API functions require
1640         outputting an image with logical size. This function performs the cropping
1641         (WebCore::ImageBuffer::copyImage): Updated for larger-than-necessary
1642         backing stores
1643         (WebCore::ImageBuffer::copyNativeImage): Ditto
1644         (WebCore::ImageBuffer::draw): Ditto
1645         (WebCore::ImageBuffer::clip): Ditto
1646         (WebCore::ImageBuffer::putByteArray): Ditto
1647         (WebCore::ImageBuffer::toDataURL): Ditto
1648         * platform/graphics/cg/ImageBufferDataCG.cpp:
1649         (WebCore::ImageBufferData::getData): Ditto
1650         (WebCore::ImageBufferData::putData): Ditto
1651         * platform/graphics/cg/ImageBufferDataCG.h: New m_backingStoreSize field
1652
1653 2013-12-03  Dean Jackson  <dino@apple.com>
1654
1655         [WebGL] Support for texImage2D of type HALF_FLOAT_OES
1656         https://bugs.webkit.org/show_bug.cgi?id=110936
1657
1658         Reviewed by Brent Fulgham.
1659
1660         Add support for the HALF_FLOAT_OES texture format from texImage2D
1661         and texSubImage2D.
1662
1663         A lot of this patch comes from the original patch on the bug
1664         by Nayan Kumar, and the Blink commit:
1665         https://codereview.chromium.org/13842017
1666
1667         Tests: fast/canvas/webgl/oes-texture-half-float-with-canvas.html
1668                fast/canvas/webgl/oes-texture-half-float-with-image.html
1669                fast/canvas/webgl/oes-texture-half-float-with-video.html
1670
1671         * html/canvas/OESTextureHalfFloat.idl: New HALF_FLOAT_OES constant value.
1672         * html/canvas/WebGLRenderingContext.cpp:
1673         (WebCore::WebGLRenderingContext::validateTexFunc): Remove the code that
1674         would bail if half-float values were used.
1675         * platform/graphics/GraphicsContext3D.cpp:
1676         - Return appropriate DataFormats for half floating point types.
1677         - Copy the float -> half-float code from Blink
1678         - New pack functions for half floats
1679         * platform/graphics/GraphicsContext3D.h: New format types.
1680         * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
1681         (WebCore::GraphicsContext3D::texSubImage2D): Use GL_HALF_FLOAT_ARB if we're passed
1682         a HALF_FLOAT_OES.
1683
1684 2013-12-04  Daniel Bates  <dabates@apple.com>
1685
1686         Fix the Apple Windows build after <http://trac.webkit.org/changeset/160113>
1687         (https://bugs.webkit.org/show_bug.cgi?id=125193)
1688
1689         * rendering/RenderThemeWin.cpp:
1690         (WebCore::RenderThemeWin::paintMenuList): Substitute paintInfo for i.
1691
1692 2013-12-04  Daniel Bates  <dabates@apple.com>
1693
1694         Rename RenderTheme::paintMenuListButton()
1695         https://bugs.webkit.org/show_bug.cgi?id=125193
1696
1697         Reviewed by Simon Fraser.
1698
1699         Towards upstreaming the iOS concept of render theme decorations we should rename
1700         RenderTheme::paintMenuListButton() to RenderTheme::paintMenuListButtonDecorations()
1701         to better describe its purpose.
1702
1703         Also, fix code style issues.
1704
1705         * platform/blackberry/RenderThemeBlackBerry.cpp:
1706         (WebCore::RenderThemeBlackBerry::paintMenuListButtonDecorations):
1707         * platform/blackberry/RenderThemeBlackBerry.h:
1708         * platform/efl/RenderThemeEfl.cpp:
1709         (WebCore::RenderThemeEfl::paintMenuListButtonDecorations):
1710         * platform/efl/RenderThemeEfl.h:
1711         * platform/gtk/RenderThemeGtk.cpp:
1712         (WebCore::RenderThemeGtk::paintMenuListButtonDecorations):
1713         * platform/gtk/RenderThemeGtk.h:
1714         * platform/nix/RenderThemeNix.h:
1715         * rendering/RenderTheme.cpp:
1716         (WebCore::RenderTheme::paintDecorations): Rename argument o, r to renderer and rect, respectively.
1717         * rendering/RenderTheme.h:
1718         (WebCore::RenderTheme::paintMenuListButtonDecorations):
1719         * rendering/RenderThemeMac.h:
1720         * rendering/RenderThemeMac.mm:
1721         (WebCore::RenderThemeMac::paintMenuListButtonDecorations): Rename argument o, r to renderer and rect,
1722         respectively; also remove extraneous white space and substitute 1 for 1.0f.
1723         * rendering/RenderThemeSafari.cpp:
1724         (WebCore::RenderThemeSafari::paintMenuListButtonDecorations): Ditto.
1725         * rendering/RenderThemeSafari.h:
1726         * rendering/RenderThemeWin.cpp:
1727         (WebCore::RenderThemeWin::paintMenuList): Rename argument o, i, r to renderer, paintInfo, and rect,
1728         respectively.
1729         (WebCore::RenderThemeWin::paintMenuListButtonDecorations): Ditto.
1730         * rendering/RenderThemeWin.h:
1731         * rendering/RenderThemeWinCE.cpp:
1732         (WebCore::RenderThemeWinCE::paintMenuList): Ditto.
1733         (WebCore::RenderThemeWinCE::paintMenuListButtonDecorations): Ditto. 
1734         * rendering/RenderThemeWinCE.h:
1735
1736 2013-12-04  Andy Estes  <aestes@apple.com>
1737
1738         [iOS] Build projects with $(ARCHS_STANDARD_32_64_BIT)
1739         https://bugs.webkit.org/show_bug.cgi?id=125236
1740
1741         Reviewed by Sam Weinig.
1742
1743         $(ARCHS_STANDARD_32_64_BIT) is what we want for both device and simulator builds.
1744
1745         * Configurations/DebugRelease.xcconfig:
1746
1747 2013-12-04  Joseph Pecoraro  <pecoraro@apple.com>
1748
1749         Unreviewed Windows build fix attempt after r160099.
1750
1751         * WebCore.vcxproj/WebCore.vcxproj.filters:
1752         * WebCore.vcxproj/copyForwardingHeaders.cmd:
1753
1754 2013-12-03  Joseph Pecoraro  <pecoraro@apple.com>
1755
1756         Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
1757         https://bugs.webkit.org/show_bug.cgi?id=124613
1758
1759         Reviewed by Timothy Hatcher.
1760
1761         Make a WebCore::Page a "Web" Remote Debuggable.
1762
1763         * bindings/js/JSDOMGlobalObject.cpp:
1764         Disable JavaScript context inspection on JSGlobalObjects inside WebCore::Page's.
1765
1766         * page/Page.cpp:
1767         (WebCore::Page::Page):
1768         (WebCore::Page::remoteInspectionAllowed):
1769         (WebCore::Page::setRemoteInspectionAllowed):
1770         (WebCore::Page::remoteInspectorInformationDidChange):
1771         * page/Page.h:
1772         * page/PageDebuggable.h:
1773         * page/PageDebuggable.cpp: Added.
1774         (WebCore::PageDebuggable::PageDebuggable):
1775         (WebCore::PageDebuggable::name):
1776         (WebCore::PageDebuggable::url):
1777         (WebCore::PageDebuggable::hasLocalDebugger):
1778         (WebCore::PageDebuggable::connect):
1779         (WebCore::PageDebuggable::disconnect):
1780         (WebCore::PageDebuggable::dispatchMessageFromRemoteFrontend):
1781         (WebCore::PageDebuggable::setIndicating):
1782         Make a page a "Web" debuggable.
1783
1784         * GNUmakefile.list.am:
1785         * WebCore.exp.in:
1786         * WebCore.vcxproj/WebCore.vcxproj:
1787         * WebCore.vcxproj/WebCore.vcxproj.filters:
1788         * WebCore.xcodeproj/project.pbxproj:
1789         Misc.
1790
1791         * inspector/InspectorClient.h:
1792         (WebCore::InspectorClient::indicate):
1793         (WebCore::InspectorClient::hideIndicate):
1794         Forward indicate methods to WebKit clients.
1795
1796         * loader/FrameLoader.cpp:
1797         (WebCore::FrameLoader::didChangeTitle):
1798         (WebCore::FrameLoader::dispatchDidCommitLoad):
1799         Push updates when remote debuggable information like the Page's
1800         URL or title change.
1801
1802         * ForwardingHeaders/inspector/InspectorFrontendChannel.h:
1803         * inspector/InspectorForwarding.h:
1804         Re-export Inspector::InspectorFrontendChannel as WebCore::InspectorFrontendChannel
1805         to avoid needlessly updating code all over the place.
1806
1807         * inspector/CodeGeneratorInspectorStrings.py:
1808         * inspector/InspectorWorkerAgent.cpp:
1809         * inspector/WorkerInspectorController.cpp:
1810         * testing/Internals.cpp:
1811         Update include names.
1812
1813         * page/ContextMenuController.cpp:
1814         (WebCore::ContextMenuController::populate):
1815         Make the "Inspect Element" context menu work correctly when there is a
1816         remote inspector instead of a local inspector.
1817
1818 2013-12-03  Joseph Pecoraro  <pecoraro@apple.com>
1819
1820         Web Inspector: Add missing folders and files to Xcode project
1821         https://bugs.webkit.org/show_bug.cgi?id=124802
1822
1823         Reviewed by Timothy Hatcher.
1824
1825         * WebCore.xcodeproj/project.pbxproj:
1826
1827 2013-12-04  José Dapena Paz  <jdapena@igalia.com>
1828
1829         [texmap] Borders on rotating images are hidden/wrongly rendered with edge distance antialiasing
1830         https://bugs.webkit.org/show_bug.cgi?id=124653
1831
1832         Reviewed by Noam Rosenthal.
1833
1834         Texture mapper edge distance antialiasing texture sampling was causing
1835         borders to be shaded (and made them almost disappear in some cases).
1836         This was because calculation of sampling happened on vertex shader, so
1837         the border of the texture would go to the border of the inflation area.
1838
1839         What algorithm should do is sampling the border pixel for all the
1840         inflation area (it is the closest pixel to all the samples in
1841         inflation area), and then use the standard sampling for the other
1842         parts of the texture.
1843
1844         No new test because this is already covered by test
1845         transforms/3d/point-mapping/3d-point-mapping.html
1846
1847         * platform/graphics/texmap/TextureMapperShaderProgram.cpp: fix edge
1848         distance antialiasing texture sampling.
1849
1850 2013-12-04  László Langó  <lango@inf.u-szeged.hu>
1851
1852         Typo fix after r160074 to fix debug builds.
1853
1854         Reviewed by Csaba Osztrogonác.
1855
1856         * platform/text/BidiResolver.h:
1857         (WebCore::MidpointState::stopIgnoringSpaces):
1858
1859 2013-12-04  Zoltan Horvath  <zoltan@webkit.org>
1860
1861         Move space-ignoring inline functions into MidpointState
1862         <https://webkit.org/b/124957>
1863
1864         Reviewed by David Hyatt.
1865
1866         Since:
1867          - The following inline functions were used only with a mandatory LineMidpointState argument:
1868            startIgnoringSpaces, stopIgnoringSpaces, ensureLineBoxInsideIgnoredSpaces, deprecatedAddMidpoint.
1869          - TrailingObjects class uses these functions. Since they're inline in BreakingContextInlineHeaders.h,
1870            it's hard to separate TrailingObjects into it's own file. (blocks bug #124956)
1871          I made these functions as a member of LineMidpointState, and I also updated the call sites.
1872
1873         No new tests, no behavior change.
1874
1875         * platform/text/BidiResolver.h:
1876         (WebCore::MidpointState::startIgnoringSpaces):
1877         (WebCore::MidpointState::stopIgnoringSpaces):
1878         (WebCore::MidpointState::ensureLineBoxInsideIgnoredSpaces):
1879         (WebCore::MidpointState::deprecatedAddMidpoint):
1880         * rendering/RenderBlock.h:
1881         * rendering/line/BreakingContextInlineHeaders.h:
1882         (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
1883         (WebCore::BreakingContext::handleBR):
1884         (WebCore::BreakingContext::handleOutOfFlowPositioned):
1885         (WebCore::shouldSkipWhitespaceAfterStartObject):
1886         (WebCore::BreakingContext::handleEmptyInline):
1887         (WebCore::BreakingContext::handleReplaced):
1888         (WebCore::ensureCharacterGetsLineBox):
1889         (WebCore::BreakingContext::handleText):
1890
1891 2013-12-03  Zoltan Horvath  <zoltan@webkit.org>
1892
1893         Remove BreakingContext's friendship from RenderBlockFlow
1894         <https://webkit.org/b/124958>
1895
1896         Reviewed by David Hyatt.
1897
1898         BreakingContext uses only 2 functions from RenderBlockFlow: insertFloatingObject/positionNewFloatOnLine. I added helper
1899         functions to LineBreaker, what is already a friend of RenderBlockFlow, so BreakingContext doesn't need to be anymore.
1900  
1901         No new tests, no behavior change.
1902
1903         * rendering/RenderBlockFlow.h:
1904         * rendering/line/BreakingContextInlineHeaders.h:
1905         (WebCore::BreakingContext::handleFloat):
1906         * rendering/line/LineBreaker.h:
1907         (WebCore::LineBreaker::insertFloatingObject):
1908         (WebCore::LineBreaker::positionNewFloatOnLine):
1909
1910 2013-12-03  Ryosuke Niwa  <rniwa@webkit.org>
1911
1912         bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless
1913         https://bugs.webkit.org/show_bug.cgi?id=125208
1914
1915         Reviewed by Antti Koivisto.
1916
1917         Merge https://chromium.googlesource.com/chromium/blink/+/49b1eeabbbf573d5271288c66d2b566cf33a09cf
1918
1919         These member functions of HTMLBodyElement were only used by corresponding functions in HTMLDocument
1920         since they had the Reflect option specified in HTMLBodyElement.idl.
1921
1922         Removed the functions and directly called getAttribute and setAttribute in relevant functions in
1923         HTMLDocument. The optimization to avoid assignment is no longer needed here since we've added that
1924         optimization to setAttributeInternal a while ago.
1925
1926         * html/HTMLBodyElement.cpp:
1927         * html/HTMLBodyElement.h:
1928         * html/HTMLDocument.cpp:
1929         (WebCore::HTMLDocument::bgColor):
1930         (WebCore::HTMLDocument::setBgColor):
1931         (WebCore::HTMLDocument::fgColor):
1932         (WebCore::HTMLDocument::setFgColor):
1933         (WebCore::HTMLDocument::alinkColor):
1934         (WebCore::HTMLDocument::setAlinkColor):
1935         (WebCore::HTMLDocument::linkColor):
1936         (WebCore::HTMLDocument::setLinkColor):
1937         (WebCore::HTMLDocument::vlinkColor):
1938         (WebCore::HTMLDocument::setVlinkColor):
1939         * html/HTMLDocument.h:
1940
1941 2013-12-03  Andreas Kling  <akling@apple.com>
1942
1943         Add a CSSProperty::isDirectionAwareProperty() helper.
1944         <https://webkit.org/b/125202>
1945
1946         Move the block of case labels for checking whether a CSS property ID
1947         is a directional property into a separate function. Also removed an
1948         outdated comment about CSS variables.
1949
1950         Reviewed by Antti Koivisto.
1951
1952 2013-12-03  Ryosuke Niwa  <rniwa@webkit.org>
1953
1954         Revert the inadvertently committed change.
1955
1956         * html/HTMLElement.idl:
1957
1958 2013-12-03  Ryosuke Niwa  <rniwa@webkit.org>
1959
1960         Remove nodeIsDetachedFromDocument and visualWordMovementEnabled in FrameSelection
1961         https://bugs.webkit.org/show_bug.cgi?id=125210
1962
1963         Reviewed by Antti Koivisto.
1964
1965         Inspired by https://chromium.googlesource.com/chromium/blink/+/92409870f0ff8fafe31217830db0838a9e1ffb98
1966
1967         Removed some unused code.
1968
1969         * editing/FrameSelection.cpp:
1970         (WebCore::FrameSelection::textWasReplaced):
1971         * editing/FrameSelection.h:
1972         * page/Settings.in:
1973
1974 2013-12-03  Ryosuke Niwa  <rniwa@webkit.org>
1975
1976         Potential crash in RenderView::selectionBounds and RenderView::repaintSelection
1977         https://bugs.webkit.org/show_bug.cgi?id=125207
1978
1979         Reviewed by Simon Fraser.
1980         
1981         Merge https://chromium.googlesource.com/chromium/blink/+/f9e6e288a5aa959f05c374806121aaf0fc52d440
1982
1983         Update style in FrameSelection instead of RenderView's member functions. These are the last two
1984         member functions of RenderView that updates the style.
1985
1986         * editing/FrameSelection.cpp:
1987         (WebCore::FrameSelection::focusedOrActiveStateChanged):
1988         (WebCore::FrameSelection::bounds):
1989         * rendering/RenderView.cpp:
1990         (WebCore::RenderView::selectionBounds):
1991         (WebCore::RenderView::repaintSelection):
1992
1993 2013-12-03  Mark Rowe  <mrowe@apple.com>
1994
1995         <https://webkit.org/b/125143> Improve the formatting in the generated Objective-C headers.
1996
1997         Add a space between @property and any parenthesized attributes.
1998         Prefer strong over retain when specifying memory management semantics.
1999
2000         Reviewed by Darin Adler.
2001
2002         * bindings/objc/PublicDOMInterfaces.h:
2003         * bindings/scripts/CodeGeneratorObjC.pm:
2004         (GetPropertyAttributes): Generate strong instead of retain. Include a
2005         space before the parenthesis.
2006         * bindings/scripts/test/ObjC/DOMTestActiveDOMObject.h:
2007         * bindings/scripts/test/ObjC/DOMTestEventConstructor.h:
2008         * bindings/scripts/test/ObjC/DOMTestException.h:
2009         * bindings/scripts/test/ObjC/DOMTestInterface.h:
2010         * bindings/scripts/test/ObjC/DOMTestObj.h:
2011         * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
2012         * bindings/scripts/test/ObjC/DOMTestTypedefs.h:
2013         * bindings/scripts/test/ObjC/DOMattribute.h:
2014
2015 2013-12-03  Alexey Proskuryakov  <ap@apple.com>
2016
2017         Update WebCrypto JWK mapping to newer proposal
2018         https://bugs.webkit.org/show_bug.cgi?id=124218
2019
2020         Reviewed by Anders Carlsson.
2021
2022         Tests: crypto/subtle/jwk-export-use-values.html
2023                crypto/subtle/jwk-import-use-values.html
2024
2025         1. "extractable" renamed to "ext" in JWK.
2026         2. New values for "use" mapping, which can now be combined into comma separated lists,
2027         and cover all possible WebCrypto usages.
2028
2029         * bindings/js/JSCryptoKeySerializationJWK.cpp:
2030         (WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
2031         (WebCore::JSCryptoKeySerializationJWK::reconcileExtractable):
2032         (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
2033         (WebCore::processUseValue):
2034         (WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON):
2035         (WebCore::JSCryptoKeySerializationJWK::serialize):
2036
2037 2013-12-03  Simon Fraser  <simon.fraser@apple.com>
2038
2039         Remove some iOS-related documentScale code
2040         https://bugs.webkit.org/show_bug.cgi?id=125194
2041
2042         Reviewed by Enrica Casucci.
2043
2044         Remove exports of nonexistent documentScale-related functions on Frame.
2045
2046         * WebCore.exp.in:
2047
2048 2013-12-03  Eric Carlson  <eric.carlson@apple.com>
2049
2050         Fix regression caused by r158599
2051         https://bugs.webkit.org/show_bug.cgi?id=125188
2052
2053         Reviewed by Jer Noble.
2054
2055         * html/HTMLMediaElement.cpp:
2056         (HTMLMediaElement::clearMediaPlayer): Do not clear m_player when PLUGIN_PROXY_FOR_VIDEO
2057             is enabled.
2058
2059 2013-12-03  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2060
2061         Nix Upstream: Updating WebCore files
2062         https://bugs.webkit.org/show_bug.cgi?id=124981
2063
2064         Reviewed by Benjamin Poulain.
2065
2066         Just to sync our github repo files and the trunk, as part of the upstream process
2067
2068         No new tests needed.
2069
2070         * PlatformNix.cmake:
2071         * css/mediaControlsNix.css:
2072         (audio):
2073         (video::-webkit-media-controls):
2074         (audio::-webkit-media-controls-enclosure, video::-webkit-media-controls-enclosure):
2075         (video::-webkit-media-controls-enclosure):
2076         (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
2077         (video:-webkit-full-page-media):
2078         (audio:-webkit-full-page-media, video:-webkit-full-page-media):
2079         (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
2080         (audio::-webkit-media-controls-overlay-play-button, video::-webkit-media-controls-overlay-play-button):
2081         (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
2082         (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
2083         (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
2084         (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
2085         (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
2086         (input[type="range"]::-webkit-media-slider-container):
2087         (input[type="range"]::-webkit-media-slider-container > div):
2088         (input[type="range"]::-webkit-media-slider-thumb):
2089         (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
2090         (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
2091         (audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button):
2092         (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
2093         (audio::-webkit-media-controls-fullscreen-volume-slider, video::-webkit-media-controls-fullscreen-volume-slider):
2094         (audio::-webkit-media-controls-fullscreen-volume-min-button, video::-webkit-media-controls-fullscreen-volume-min-button):
2095         (audio::-webkit-media-controls-fullscreen-volume-max-button, video::-webkit-media-controls-fullscreen-volume-max-button):
2096         (video::-webkit-media-text-track-container):
2097         (video::cue):
2098         (video::-webkit-media-text-track-region):
2099         (video::-webkit-media-text-track-region-container):
2100         (video::-webkit-media-text-track-region-container.scrolling):
2101         (video::-webkit-media-text-track-display):
2102         (video::cue(:future)):
2103         (video::-webkit-media-text-track-container b):
2104         (video::-webkit-media-text-track-container u):
2105         (video::-webkit-media-text-track-container i):
2106         * editing/Editor.cpp:
2107         (WebCore::Editor::cut):
2108         (WebCore::Editor::copy):
2109         (WebCore::Editor::copyImage):
2110         * editing/Editor.h:
2111         * html/HTMLCanvasElement.h:
2112         * platform/Cursor.h:
2113         * platform/audio/FFTFrame.h:
2114         * platform/audio/nix/AudioBusNix.cpp:
2115         (WebCore::AudioBus::loadPlatformResource):
2116         * platform/graphics/GLContext.h:
2117         * platform/nix/CursorNix.cpp:
2118         (WebCore::Cursor::ensurePlatformCursor):
2119         * platform/nix/GamepadsNix.cpp:
2120         (WebCore::sampleGamepads):
2121         * platform/nix/RenderThemeNix.cpp:
2122         (WebCore::toIntSize):
2123         (WebCore::toNixRect):
2124         (WebCore::RenderThemeNix::platformActiveSelectionBackgroundColor):
2125         (WebCore::RenderThemeNix::platformInactiveSelectionBackgroundColor):
2126         (WebCore::RenderThemeNix::platformActiveSelectionForegroundColor):
2127         (WebCore::RenderThemeNix::platformInactiveSelectionForegroundColor):
2128         (WebCore::RenderThemeNix::platformActiveListBoxSelectionBackgroundColor):
2129         (WebCore::RenderThemeNix::platformInactiveListBoxSelectionBackgroundColor):
2130         (WebCore::RenderThemeNix::platformActiveListBoxSelectionForegroundColor):
2131         (WebCore::RenderThemeNix::platformInactiveListBoxSelectionForegroundColor):
2132         (WebCore::RenderThemeNix::platformActiveTextSearchHighlightColor):
2133         (WebCore::RenderThemeNix::platformInactiveTextSearchHighlightColor):
2134         (WebCore::RenderThemeNix::platformFocusRingColor):
2135         (WebCore::RenderThemeNix::platformTapHighlightColor):
2136         (WebCore::RenderThemeNix::paintButton):
2137         (WebCore::RenderThemeNix::paintTextField):
2138         (WebCore::RenderThemeNix::paintCheckbox):
2139         (WebCore::RenderThemeNix::setCheckboxSize):
2140         (WebCore::RenderThemeNix::paintRadio):
2141         (WebCore::RenderThemeNix::setRadioSize):
2142         (WebCore::RenderThemeNix::paintMenuList):
2143         (WebCore::RenderThemeNix::paintProgressBar):
2144         (WebCore::RenderThemeNix::paintSliderTrack):
2145         (WebCore::RenderThemeNix::paintSliderThumb):
2146         (WebCore::RenderThemeNix::paintInnerSpinButton):
2147         (WebCore::RenderThemeNix::paintMeter):
2148         (WebCore::RenderThemeNix::extraMediaControlsStyleSheet):
2149         (WebCore::RenderThemeNix::paintMediaPlayButton):
2150         (WebCore::RenderThemeNix::paintMediaMuteButton):
2151         (WebCore::RenderThemeNix::paintMediaSeekBackButton):
2152         (WebCore::RenderThemeNix::paintMediaSeekForwardButton):
2153         (WebCore::RenderThemeNix::paintMediaSliderTrack):
2154         (WebCore::RenderThemeNix::paintMediaVolumeSliderContainer):
2155         (WebCore::RenderThemeNix::paintMediaVolumeSliderTrack):
2156         (WebCore::RenderThemeNix::paintMediaRewindButton):
2157         * platform/nix/RenderThemeNix.h:
2158         * rendering/SimpleLineLayout.cpp:
2159         (WebCore::SimpleLineLayout::canUseFor):
2160
2161 2013-12-03  Ralph Thomas  <ralpht@gmail.com>
2162
2163         Typo: FixedPositionConstaint -> FixedPositionConstraint
2164         https://bugs.webkit.org/show_bug.cgi?id=125171
2165
2166         Reviewed by Simon Fraser.
2167
2168         No new tests, no change in behavior.
2169
2170         * page/scrolling/ScrollingConstraints.h:
2171         * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
2172         (WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode):
2173         * page/scrolling/mac/ScrollingCoordinatorMac.mm:
2174         (WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode):
2175
2176 2013-12-03  Samuel White  <samuel_white@apple.com>
2177
2178         AXPress event coordinates are always sent as (0, 0)
2179         https://bugs.webkit.org/show_bug.cgi?id=76677
2180
2181         Reviewed by Simon Fraser.
2182
2183         Set the coordinates of a simulated press equal to the center of the target
2184         element when the simulated press does not have a related mouse event.
2185
2186         Test: accessibility/press-targets-center-point.html
2187
2188         * dom/Element.cpp:
2189         (WebCore::Element::clientRect):
2190         (WebCore::Element::screenRect):
2191         * dom/Element.h:
2192         * dom/EventDispatcher.cpp:
2193         (WebCore::EventDispatcher::dispatchSimulatedClick):
2194         * dom/MouseEvent.cpp:
2195         (WebCore::SimulatedMouseEvent::create):
2196         (WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
2197         * dom/MouseEvent.h:
2198
2199 2013-12-03  Dean Jackson  <dino@apple.com>
2200
2201         [WebGL] Implement OES texture float linear
2202         https://bugs.webkit.org/show_bug.cgi?id=124871
2203
2204         Reviewed by Brent Fulgham.
2205
2206         Implement the OES_texture_float_linear extension. Generally
2207         we'd also enable OES_texture_half_float_linear at the same
2208         time, but that's blocked on webkit.org/b/110936.
2209
2210         Test: fast/canvas/webgl/oes-texture-float-linear.html
2211
2212         * CMakeLists.txt: Add new files.
2213         * DerivedSources.cpp: Ditto.
2214         * DerivedSources.make: Generate new file from IDL.
2215         * GNUmakefile.list.am: Add new files.
2216         * WebCore.vcxproj/WebCore.vcxproj: Ditto.
2217         * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
2218         * WebCore.xcodeproj/project.pbxproj: New files for OESTextureFloatLinear.
2219
2220         * bindings/js/JSWebGLRenderingContextCustom.cpp:
2221         (WebCore::toJS): Map the new name into the appropriate type.
2222
2223         * html/canvas/OESTextureFloatLinear.cpp: Added. This is a very simple class
2224         that's mostly empty.
2225         (WebCore::OESTextureFloatLinear::OESTextureFloatLinear):
2226         (WebCore::OESTextureFloatLinear::~OESTextureFloatLinear):
2227         (WebCore::OESTextureFloatLinear::getName):
2228         (WebCore::OESTextureFloatLinear::create):
2229         * html/canvas/OESTextureFloatLinear.h: Added.
2230         * html/canvas/OESTextureFloatLinear.idl: Added.
2231
2232         * html/canvas/WebGLExtension.h: Declare the new name in the enum of extensions.
2233
2234         * html/canvas/WebGLRenderingContext.cpp:
2235         (WebCore::WebGLRenderingContext::drawArrays): Call new name.
2236         (WebCore::WebGLRenderingContext::drawElements): Call new name.
2237         (WebCore::WebGLRenderingContext::getExtension): Create the new extension if asked.
2238         (WebCore::WebGLRenderingContext::checkTextureCompleteness): Renamed from handleNPOTTextures. Now
2239         checks for the type of the texture too.
2240         * html/canvas/WebGLRenderingContext.h: Member variable for new extension.
2241
2242         * html/canvas/WebGLTexture.cpp:
2243         (WebCore::WebGLTexture::WebGLTexture):
2244         (WebCore::WebGLTexture::needToUseBlackTexture): Takes an extra parameter which indicates
2245         if it has an extension enabled.
2246         (WebCore::WebGLTexture::update): Note it is a float type when updating.
2247         * html/canvas/WebGLTexture.h: New flag to indicate float type.
2248
2249         * platform/graphics/Extensions3D.h: New flag type.
2250         * platform/graphics/opengl/Extensions3DOpenGL.cpp:
2251         (WebCore::Extensions3DOpenGL::supportsExtension): Add a comment about the extension.
2252
2253 2013-12-03  Alexey Proskuryakov  <ap@apple.com>
2254
2255         Support exporting private WebCrypto RSA keys
2256         https://bugs.webkit.org/show_bug.cgi?id=124483
2257
2258         Reviewed by Anders Carlsson.
2259
2260         Test: crypto/subtle/rsa-export-private-key.html
2261
2262         It might be better to have our own bignum implementation in WTF, but we currently
2263         don't, and the need for this computation is Common Crypto specific anyway.
2264
2265         * crypto/CommonCryptoUtilities.h:
2266         * crypto/CommonCryptoUtilities.cpp:
2267         (WebCore::CCBigNum::CCBigNum):
2268         (WebCore::CCBigNum::~CCBigNum):
2269         (WebCore::CCBigNum::operator=):
2270         (WebCore::CCBigNum::data):
2271         (WebCore::CCBigNum::operator-):
2272         (WebCore::CCBigNum::operator%):
2273         (WebCore::CCBigNum::inverse):
2274         Added a minimal wrapper around CommonCrypto BigNum.
2275
2276         * crypto/mac/CryptoKeyRSAMac.cpp:
2277         (WebCore::getPrivateKeyComponents): Compute missing parts using CCBigNum.
2278         (WebCore::CryptoKeyRSA::exportData): Implemented private key case.
2279
2280 2013-12-03  Ryosuke Niwa  <rniwa@webkit.org>
2281
2282         XML fragment parsing algorithm doesn't use the context element's default namespace URI
2283         https://bugs.webkit.org/show_bug.cgi?id=125132
2284
2285         Reviewed by Darin Adler.
2286
2287         Always use the context element's namespace as the default namespace URI when one is not specified by xmlns.
2288
2289         The new behavior matches that of Internet Explorer and the specified behavior in HTML5:
2290         http://www.w3.org/TR/2013/CR-html5-20130806/the-xhtml-syntax.html#parsing-xhtml-fragments
2291
2292         "The default namespace is the namespace for which the DOM isDefaultNamespace() method on the element would
2293         return true."
2294
2295         Test: fast/parser/fragment-parsing-in-document-without-xmlns.html
2296
2297         * xml/parser/XMLDocumentParserLibxml2.cpp:
2298         (WebCore::XMLDocumentParser::XMLDocumentParser):
2299
2300 2013-12-03  Nick Diego Yamane  <nick.yamane@openbossa.org>
2301
2302         Remove some CSS Variables leftovers
2303         https://bugs.webkit.org/show_bug.cgi?id=125167
2304
2305         Reviewed by Darin Adler.
2306
2307         No new tests needed. Only removing leftover code.
2308
2309         * css/CSSBasicShapes.cpp:
2310         * css/CSSBasicShapes.h:
2311
2312 2013-12-03  Myles C. Maxfield  <mmaxfield@apple.com>
2313
2314         Checking second-to-last bit in address is a typo
2315         https://bugs.webkit.org/show_bug.cgi?id=125162
2316
2317         Reviewed by Darin Adler.
2318
2319         After talking with the original author of this line,
2320         is was a typo to make sure that the second-to-last bit
2321         in an address is 0. Instead, we want to make sure that
2322         the address is aligned to a 4-byte boundary
2323
2324         No behavior change, so no test is necessary
2325
2326         * platform/graphics/cg/ImageBufferCG.cpp:
2327         (WebCore::ImageBuffer::ImageBuffer):
2328
2329 2013-12-03  Radu Stavila  <stavila@adobe.com>
2330
2331         The overflow border of a relatively positioned element inside a region is not painted
2332         https://bugs.webkit.org/show_bug.cgi?id=124919
2333
2334         Relative positioned elements have self-painting layers that don't propagate the visual overflow
2335         so the layer's position should be used when determining the clipping rectangle for box decorations.
2336
2337         Reviewed by Mihnea Ovidenie.
2338
2339         Test: fast/regions/relative-borders-overflow.html
2340
2341         * rendering/RenderFlowThread.cpp:
2342         (WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):
2343
2344 2013-12-03  Seokju Kwon  <seokju@webkit.org>
2345
2346         Web Inspector: Get rid of 'hasFrontend()' in InspectorController and WorkerInspectorController
2347         https://bugs.webkit.org/show_bug.cgi?id=125135
2348
2349         Reviewed by Darin Adler.
2350
2351         Remove 'hasFrontend()' from InspectorController and WorkerInspectorController
2352         as it's never called.
2353
2354         No new tests, no behavior changes.
2355
2356         * inspector/InspectorController.h:
2357         * inspector/WorkerInspectorController.h:
2358
2359 2013-12-03  Seokju Kwon  <seokju@webkit.org>
2360
2361         Web Inspector: webViewResized() is not used anywhere in WebInspectorUI
2362         https://bugs.webkit.org/show_bug.cgi?id=125137
2363
2364         Reviewed by Darin Adler.
2365
2366         Remove leftover code.
2367
2368         No new tests, no behavior changes.
2369
2370         * inspector/InspectorController.cpp:
2371         * inspector/InspectorController.h:
2372         * inspector/InspectorOverlay.cpp:
2373         * inspector/InspectorOverlay.h:
2374         * inspector/InspectorPageAgent.cpp:
2375         * inspector/InspectorPageAgent.h:
2376
2377 2013-12-03  László Langó  <lango@inf.u-szeged.hu>
2378
2379         ASSERTION FAILED: !value || (value->isPrimitiveValue()) in WebCore::StyleProperties::getLayeredShorthandValue.
2380         https://bugs.webkit.org/show_bug.cgi?id=125146
2381
2382         Reviewed by Darin Adler.
2383
2384         Do not presume that |yValue| is primitive if |value| is implicit in StylePropertySerializer.
2385         An implicit y-value can become explicit if specified as a separate longhand.
2386         At the same time, its new value can be non-primitive.
2387
2388         Backported from Blink:
2389         http://src.chromium.org/viewvc/blink?view=rev&rev=153678
2390
2391         Test: fast/css/webkit-mask-crash-implicit.html
2392
2393         * css/StyleProperties.cpp:
2394         (WebCore::StyleProperties::getLayeredShorthandValue):
2395
2396 2013-12-03  Rob Buis  <rob.buis@samsung.com>
2397
2398         Fix build break after r160007.
2399
2400         * rendering/style/BasicShapes.cpp:
2401         (WebCore::BasicShape::canBlend):
2402
2403 2013-12-03  Rob Buis  <rob.buis@samsung.com>
2404
2405         [css shapes] layout for new ellipse syntax
2406         https://bugs.webkit.org/show_bug.cgi?id=124621
2407
2408         Reviewed by Dirk Schulze.
2409
2410         Implement support for doing layout with the new ellipse shape syntax,
2411         including basic animation support.
2412
2413         Test: fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html
2414
2415         * rendering/shapes/Shape.cpp:
2416         (WebCore::Shape::createShape): Convert new ellipse to a layout shape.
2417         * rendering/style/BasicShapes.cpp:
2418         (WebCore::BasicShape::canBlend): Ignore ellipses with values that
2419             cannot be interpolated.
2420         (WebCore::BasicShapeEllipse::floatValueForRadiusInBox): Helper function to calculate
2421             either radiusX or radiusY, shared by clip-path and shape code paths.
2422         (WebCore::BasicShapeEllipse::path):
2423         * rendering/style/BasicShapes.h:
2424
2425 2013-12-03  Frédéric Wang  <fred.wang@free.fr>
2426
2427         Add an MathMLSelectElement class to implement <maction> and <semantics>.
2428         <https://webkit.org/b/120058>
2429
2430         Reviewed by Chris Fleizach.
2431
2432         Tests: mathml/presentation/maction-dynamic.html
2433                mathml/presentation/maction.html
2434                mathml/presentation/semantics.html
2435
2436         This adds a new MathMLSelectElement class to prepare the implementation
2437         of the <maction> and <semantics> elements, for which only one "selected"
2438         child is visible. We now simply display the first child of the
2439         <semantics> element instead of hiding the annotations and this allows to
2440         handle the use case of SVG-in-MathML as generated by Instiki when
2441         bug 124128 is fixed ; Gecko's selection algorithm will be implemented
2442         later (bug 100626). We now also rely on the @actiontype and @selection
2443         attributes to select the visible <maction> child ; It remains to deal
2444         with the user interaction (bug 85734).
2445
2446         * CMakeLists.txt: add the new files.
2447         * GNUmakefile.list.am: ditto
2448         * Target.pri: ditto
2449         * WebCore.vcxproj/WebCore.vcxproj: ditto
2450         * WebCore.vcxproj/WebCore.vcxproj.filters: ditto
2451         * WebCore.xcodeproj/project.pbxproj: ditto
2452         * css/mathml.css: remove the CSS rule for annotation/annotation-xml.
2453         * mathml/MathMLAllInOne.cpp: add the new cpp file.
2454         * mathml/MathMLSelectElement.cpp: Added.
2455         (WebCore::MathMLSelectElement::MathMLSelectElement):
2456         (WebCore::MathMLSelectElement::create):
2457         (WebCore::MathMLSelectElement::createRenderer):
2458         (WebCore::MathMLSelectElement::childShouldCreateRenderer):
2459         (WebCore::MathMLSelectElement::finishParsingChildren):
2460         (WebCore::MathMLSelectElement::childrenChanged):
2461         (WebCore::MathMLSelectElement::attributeChanged):
2462         (WebCore::MathMLSelectElement::updateSelectedChild): basic implementation for maction, semantics, maction@actiontype and maction@selection.
2463         * mathml/MathMLSelectElement.h: Added.
2464         * mathml/mathattrs.in: add actiontype and selection attributes.
2465         * mathml/mathtags.in: set element classes for maction, semantics, annotation and annotation-xml.
2466
2467 2013-12-03  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
2468
2469         Nix Upstream: Adding missing nix new files to WebCore
2470         https://bugs.webkit.org/show_bug.cgi?id=124987
2471
2472         Reviewed by Benjamin Poulain.
2473
2474         No new tests needed.
2475
2476         * PlatformNix.cmake:
2477         * platform/nix/ErrorsNix.cpp: Added.
2478         * platform/nix/ErrorsNix.h: Added.
2479         * platform/nix/FileSystemNix.cpp: Added.
2480         * platform/nix/MIMETypeRegistryNix.cpp: Added.
2481         * platform/nix/SharedTimerNix.cpp: Added.
2482         * platform/nix/TemporaryLinkStubs.cpp: Added.
2483
2484 2013-12-03  Tamas Gergely  <gertom@inf.u-szeged.hu>
2485
2486         Correct broken build on efl port with --no-netscape-plugin-api
2487         configuration.
2488         https://bugs.webkit.org/show_bug.cgi?id=123997
2489
2490         Reviewed by Zoltan Herczeg.
2491
2492         Build failed on efl port with --no-netscape-plugin-api configuration
2493         as ld did not found some methods. The configuration uses a minimal
2494         empty implementation of the class, which is now extended with empty
2495         method implementations.
2496
2497         * plugins/PluginPackageNone.cpp:
2498         (WebCore::PluginPackage::createPackage):
2499           Returns NULL pointer.
2500         (WebCore::PluginPackage::hash):
2501           Returns 0.
2502         (WebCore::PluginPackage::equal):
2503           Returns true (equals).
2504         (WebCore::PluginPackage::compare):
2505           Returns 0 (equals).
2506         (WebCore::PluginPackage::~PluginPackage):
2507           Do nothing.
2508
2509 2013-12-02  Andreas Kling  <akling@apple.com>
2510
2511         Avoid setting style twice for generated image content.
2512         <https://webkit.org/b/125128>
2513
2514         Take care of a FIXME I added in r158097 and avoid redundant work in
2515         ImageContentData::createRenderer().
2516
2517         I changed the inheritance helper RenderImage::setPseudoStyle() into
2518         a new createStyleInheritingFromPseudoStyle() function instead so it
2519         can be used from both PseudoElement and ImageContentData.
2520
2521         Reviewed by Antti Koivisto.
2522
2523 2013-12-02  Samuel White  <samuel_white@apple.com>
2524
2525         AX: Add AXUIElementCountForSearchPredicate parameterized attribute.
2526         https://bugs.webkit.org/show_bug.cgi?id=124561
2527
2528         Reviewed by Chris Fleizach.
2529
2530         Added ability to fetch the number of elements that match a specific criteria. This will enable VoiceOver
2531         to interface with WebKit much more dynamically. We can now get an idea of how many interesting elements
2532         exist on a page, and then fetch them in chunks as needed.
2533
2534         Test: platform/mac/accessibility/search-predicate-element-count.html
2535
2536         * accessibility/AccessibilityObject.cpp:
2537         (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
2538         * accessibility/AccessibilityObject.h:
2539         (WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria):
2540         * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
2541         (accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute):
2542         (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
2543         (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
2544
2545 2013-12-02  Bem Jones-Bey  <bjonesbe@adobe.com>
2546
2547         [css shapes] Layout support for new circle shape syntax
2548         https://bugs.webkit.org/show_bug.cgi?id=124619
2549
2550         Reviewed by Dirk Schulze.
2551
2552         Implement support for doing layout with the new circle shape syntax,
2553         inclduing basic animation support.
2554
2555         Tests: fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html
2556                fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html
2557                fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html
2558                fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html
2559                fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html
2560                fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html
2561
2562         * css/BasicShapeFunctions.cpp:
2563         (WebCore::floatValueForCenterCoordinate): Used by both the CSS Shapes
2564             layout code and the clip path code.
2565         * css/BasicShapeFunctions.h:
2566         * css/CSSBasicShapes.cpp:
2567         (WebCore::buildCircleString): Update to use appendLiteral, and remove
2568             call to reserveCapacity - if we find that it's actually slow when
2569             doing performance tests, we can hopefully do something smarter and
2570             less ugly than that.
2571         * css/CSSParser.cpp:
2572         (WebCore::CSSParser::parseShapeRadius): Fix a logic error that caused
2573             the radius keywords not to work properly.
2574         * rendering/shapes/Shape.cpp:
2575         (WebCore::Shape::createShape): Convert new circle to a layout shape.
2576         * rendering/style/BasicShapes.cpp:
2577         (WebCore::BasicShape::canBlend): Ignore circles with values that
2578             cannot be interpolated.
2579         (WebCore::BasicShapeCircle::floatValueForRadiusInBox): Convert circle
2580             radius keywords to a float value.
2581         (WebCore::BasicShapeCircle::path):
2582         (WebCore::BasicShapeCircle::blend):
2583         * rendering/style/BasicShapes.h:
2584         (WebCore::BasicShapeCenterCoordinate::canBlend):
2585         (WebCore::BasicShapeRadius::canBlend):
2586
2587 2013-12-02  Alexey Proskuryakov  <ap@apple.com>
2588
2589         WebCrypto HMAC doesn't check key algorithm's hash
2590         https://bugs.webkit.org/show_bug.cgi?id=125114
2591
2592         Reviewed by Anders Carlsson.
2593
2594         Test: crypto/subtle/hmac-check-algorithm.html
2595
2596         * crypto/algorithms/CryptoAlgorithmHMAC.cpp:
2597         (WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches): Check it.
2598
2599 2013-12-02  Brady Eidson  <beidson@apple.com>
2600
2601         Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
2602         https://bugs.webkit.org/show_bug.cgi?id=125110
2603
2604         Reviewed by Darin Adler.
2605
2606         FrameLoader::loadProgressingStatusChanged() might be called while the Frame has a null FrameView.
2607
2608         It’s unclear how to reproduce, but there’s no harm in a null check.
2609
2610         * loader/FrameLoader.cpp:
2611         (WebCore::FrameLoader::loadProgressingStatusChanged):
2612
2613 2013-12-02  Brady Eidson  <beidson@apple.com>
2614
2615         Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
2616         https://bugs.webkit.org/show_bug.cgi?id=125110
2617
2618         Reviewed by Darin Adler.
2619
2620         It’s possible to have a null m_originatingProgressFrame when the heartbeat timer fires.
2621
2622         On the surface this seems impossible because the only time m_originatingProgressFrame is cleared
2623         out the heartbeat timer is also stopped.
2624
2625         But there’s likely still a race condition in multi-threaded environments.
2626
2627         There’s no harm in null-checking m_originatingProgressFrame before accessing its loader.
2628
2629         * loader/ProgressTracker.cpp:
2630         (WebCore::ProgressTracker::progressHeartbeatTimerFired):
2631
2632 2013-12-02  Brady Eidson  <beidson@apple.com>
2633
2634         Add more CachedPage null checks
2635         https://bugs.webkit.org/show_bug.cgi?id=125106
2636
2637         Reviewed by Sam Weinig.
2638
2639         Only some functions in PageCache.cpp null-check the CachedPages in HistoryItems.
2640
2641         Every part that manipulates the CachedPage should.
2642
2643         * history/PageCache.cpp:
2644         (WebCore::PageCache::markPagesForVistedLinkStyleRecalc):
2645         (WebCore::PageCache::markPagesForFullStyleRecalc):
2646         (WebCore::PageCache::markPagesForDeviceScaleChanged):
2647         (WebCore::PageCache::markPagesForCaptionPreferencesChanged):
2648
2649 2013-12-02  Zoltan Horvath  <zoltan@webkit.org>
2650
2651         [CSS Shapes] Support inset parsing
2652         https://bugs.webkit.org/show_bug.cgi?id=124903
2653
2654         Reviewed by David Hyatt.
2655
2656         In this patch I added support for inset shape parsing for CSS Shapes. Inset is defined
2657         by CSS Shapes Level 1 (http://dev.w3.org/csswg/css-shapes-1/#supported-basic-shapes).
2658         Inset is going to be used by shape-outside (bug #124905), and eventually by shape-inside.
2659
2660         No new tests, I updated existing tests to cover the changes.
2661
2662         * css/BasicShapeFunctions.cpp:
2663         (WebCore::valueForBasicShape): Add support for inset.
2664         (WebCore::basicShapeForValue): Add support for inset.
2665         * css/CSSBasicShapes.cpp:
2666         (WebCore::buildInsetString): Create inset css string.
2667         (WebCore::CSSBasicShapeInset::cssText): Convert inset shape to a CSS string.
2668         (WebCore::CSSBasicShapeInset::equals): Compare two inset rectangles.
2669         (WebCore::CSSBasicShapeInset::serializeResolvingVariables): Create an inset string, with CSS variables resolved.
2670         (WebCore::CSSBasicShapeInset::hasVariableReference): Determine if this inset has any CSS Variable references.
2671         * css/CSSBasicShapes.h: Add inset class.
2672         (WebCore::CSSBasicShapeInset::create):
2673         (WebCore::CSSBasicShapeInset::top):
2674         (WebCore::CSSBasicShapeInset::right):
2675         (WebCore::CSSBasicShapeInset::bottom):
2676         (WebCore::CSSBasicShapeInset::left):
2677         (WebCore::CSSBasicShapeInset::topLeftRadius):
2678         (WebCore::CSSBasicShapeInset::topRightRadius):
2679         (WebCore::CSSBasicShapeInset::bottomRightRadius):
2680         (WebCore::CSSBasicShapeInset::bottomLeftRadius):
2681         (WebCore::CSSBasicShapeInset::setTop):
2682         (WebCore::CSSBasicShapeInset::setRight):
2683         (WebCore::CSSBasicShapeInset::setBottom):
2684         (WebCore::CSSBasicShapeInset::setLeft):
2685         (WebCore::CSSBasicShapeInset::setTopLeftRadius):
2686         (WebCore::CSSBasicShapeInset::setTopRightRadius):
2687         (WebCore::CSSBasicShapeInset::setBottomRightRadius):
2688         (WebCore::CSSBasicShapeInset::setBottomLeftRadius):
2689         (WebCore::CSSBasicShapeInset::CSSBasicShapeInset):
2690         * css/CSSParser.cpp:
2691         (WebCore::completeBorderRadii): Move static function before parseInsetBorderRadius.
2692         (WebCore::CSSParser::parseInsetRoundedCorners): I added this helper function for parsing the rounded corners
2693         (WebCore::CSSParser::parseBasicShapeInset): Parse inset.
2694         (WebCore::CSSParser::parseBasicShape): Add call to parse inset.
2695         * css/CSSParser.h:
2696         * css/CSSPrimitiveValue.cpp:
2697         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Add constructor for LengthSize.
2698         (WebCore::CSSPrimitiveValue::init): Initialize LengthSize.
2699         * css/CSSPrimitiveValue.h:
2700         (WebCore::CSSPrimitiveValue::create): Add support for creating PrimitiveValue from LengthSize.
2701         * css/CSSValuePool.h:
2702         (WebCore::CSSValuePool::createValue): Add support for LengthSize.
2703         * platform/LengthSize.h:
2704         (WebCore::LengthSize::blend): Add blend for LengthSize.
2705         * rendering/shapes/ShapeInsideInfo.cpp:
2706         (WebCore::ShapeInsideInfo::isEnabledFor): Keep inset disabled for shape-inside now.
2707         * rendering/style/BasicShapes.cpp:
2708         (WebCore::BasicShapeInset::path): Calculate path for an inset.
2709         (WebCore::BasicShapeInset::blend): Blend two insets.
2710         * rendering/style/BasicShapes.h: Add higher level inset.
2711         (WebCore::BasicShapeInset::create):
2712         (WebCore::BasicShapeInset::top):
2713         (WebCore::BasicShapeInset::right):
2714         (WebCore::BasicShapeInset::bottom):
2715         (WebCore::BasicShapeInset::left):
2716         (WebCore::BasicShapeInset::topLeftRadius):
2717         (WebCore::BasicShapeInset::topRightRadius):
2718         (WebCore::BasicShapeInset::bottomRightRadius):
2719         (WebCore::BasicShapeInset::bottomLeftRadius):
2720         (WebCore::BasicShapeInset::setTop):
2721         (WebCore::BasicShapeInset::setRight):
2722         (WebCore::BasicShapeInset::setBottom):
2723         (WebCore::BasicShapeInset::setLeft):
2724         (WebCore::BasicShapeInset::setTopLeftRadius):
2725         (WebCore::BasicShapeInset::setTopRightRadius):
2726         (WebCore::BasicShapeInset::setBottomRightRadius):
2727         (WebCore::BasicShapeInset::setBottomLeftRadius):
2728         (WebCore::BasicShapeInset::BasicShapeInset):
2729
2730 2013-12-02  Alexey Proskuryakov  <ap@apple.com>
2731
2732         Support WebCrypto AES-KW
2733         https://bugs.webkit.org/show_bug.cgi?id=125105
2734
2735         Reviewed by Sam Weinig.
2736
2737         Tests: crypto/subtle/aes-kw-key-manipulation.html
2738                crypto/subtle/aes-kw-wrap-unwrap-aes.html
2739
2740         * WebCore.xcodeproj/project.pbxproj: Added new files.
2741
2742         * crypto/CryptoAlgorithmIdentifier.h: (WebCore::CryptoAlgorithmIdentifier): Added AES-KW.
2743         It's not standardized yet, but there appears to be a consensus that it will be specified.
2744
2745         * bindings/js/JSCryptoAlgorithmDictionary.cpp:
2746         (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
2747         (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
2748         (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
2749         (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
2750         (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
2751         (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
2752         (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
2753         (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
2754         (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
2755         (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
2756         Added AES-KW cases everywhere.
2757
2758         * bindings/js/JSCryptoKeySerializationJWK.cpp:
2759         (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
2760         (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
2761         (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
2762         Support importing/exporting AES-KW keys in JWK.
2763
2764         * bindings/js/JSSubtleCryptoCustom.cpp:
2765         (WebCore::JSSubtleCrypto::importKey):
2766         (WebCore::JSSubtleCrypto::exportKey):
2767         (WebCore::JSSubtleCrypto::wrapKey):
2768         (WebCore::JSSubtleCrypto::unwrapKey):
2769         Added some accidentally forgotten std::moves.
2770
2771         * crypto/algorithms/CryptoAlgorithmAES_KW.cpp: Added.
2772         * crypto/algorithms/CryptoAlgorithmAES_KW.h: Added.
2773         * crypto/mac/CryptoAlgorithmAES_KWMac.cpp: Added.
2774
2775         * crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::CryptoKeyAES): Allow AES-KW
2776         as valid algorithm for AES keys.
2777
2778         * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
2779         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register AES-KW.
2780
2781 2013-12-02  Beth Dakin  <bdakin@apple.com>
2782
2783         Add a setting to opt into a mode where the background extends and fixed elements 
2784         don't move on rubber-band
2785         https://bugs.webkit.org/show_bug.cgi?id=124745
2786
2787         Reviewed by Tim Horton.
2788
2789         New setting backgroundShouldExtendBeyondPage() will cause the tile cache to have a 
2790         margin, and it will also cause fixed elements and backgrounds to stick to the 
2791         viewport on scroll instead of sticking to the document. 
2792
2793         * WebCore.exp.in:
2794         * page/FrameView.cpp:
2795         (WebCore::FrameView::scrollBehaviorForFixedElements):
2796         * page/Settings.in:
2797         * rendering/RenderLayerBacking.cpp:
2798         (WebCore::RenderLayerBacking::RenderLayerBacking):
2799
2800 2013-12-02  Roger Zanoni  <rogerzanoni@gmail.com>
2801
2802         [MediaStream] Use iterator-based loops instead of index-based loops
2803         https://bugs.webkit.org/show_bug.cgi?id=125021
2804
2805         Reviewed by Eric Carlson.
2806
2807         Also, changing iterator variable names from iter to it and
2808         initializing an 'end' variable in each loop instead of evaluating
2809         'collection.end()' multiple times.
2810
2811         No new tests, covered by existing ones.
2812
2813         * Modules/mediastream/MediaStream.cpp:
2814         (WebCore::MediaStream::cloneMediaStreamTrackVector):
2815         (WebCore::MediaStream::haveTrackWithSource):
2816         (WebCore::MediaStream::getTrackById):
2817         (WebCore::MediaStream::trackDidEnd):
2818         (WebCore::MediaStream::scheduledEventTimerFired):
2819
2820 2013-12-02  Rob Buis  <rob.buis@samsung.com>
2821
2822         [css shapes] Parse new ellipse shape syntax
2823         https://bugs.webkit.org/show_bug.cgi?id=124620
2824
2825         Reviewed by Dirk Schulze.
2826
2827         Implement parsing of the new ellipse shape syntax. This closely follows the patch
2828         for the new circle syntax (https://bugs.webkit.org/show_bug.cgi?id=124618), with
2829         some refactoring of functionality shared by both.
2830
2831         Updated existing parsing tests to cover this.
2832
2833         * css/BasicShapeFunctions.cpp:
2834         (WebCore::BasicShapeRadiusToCSSValue):
2835         (WebCore::valueForBasicShape):
2836         (WebCore::CSSValueToBasicShapeRadius):
2837         (WebCore::basicShapeForValue):
2838         * css/CSSBasicShapes.cpp:
2839         (WebCore::buildEllipseString):
2840         (WebCore::CSSBasicShapeEllipse::cssText):
2841         (WebCore::CSSBasicShapeEllipse::equals):
2842         (WebCore::buildDeprecatedEllipseString):
2843         (WebCore::CSSDeprecatedBasicShapeEllipse::cssText):
2844         (WebCore::CSSDeprecatedBasicShapeEllipse::equals):
2845         * css/CSSBasicShapes.h:
2846         (WebCore::CSSDeprecatedBasicShapeEllipse::create):
2847         (WebCore::CSSDeprecatedBasicShapeEllipse::centerX):
2848         (WebCore::CSSDeprecatedBasicShapeEllipse::centerY):
2849         (WebCore::CSSDeprecatedBasicShapeEllipse::radiusX):
2850         (WebCore::CSSDeprecatedBasicShapeEllipse::radiusY):
2851         (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterX):
2852         (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterY):
2853         (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusX):
2854         (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusY):
2855         (WebCore::CSSDeprecatedBasicShapeEllipse::CSSDeprecatedBasicShapeEllipse):
2856         * css/CSSParser.cpp:
2857         (WebCore::CSSParser::parseBasicShapeEllipse):
2858         (WebCore::CSSParser::parseDeprecatedBasicShapeEllipse):
2859         (WebCore::CSSParser::parseBasicShape):
2860         * css/CSSParser.h:
2861         * rendering/shapes/Shape.cpp:
2862         (WebCore::Shape::createShape):
2863         * rendering/style/BasicShapes.cpp:
2864         (WebCore::DeprecatedBasicShapeEllipse::path):
2865         (WebCore::DeprecatedBasicShapeEllipse::blend):
2866         (WebCore::BasicShapeEllipse::path):
2867         (WebCore::BasicShapeEllipse::blend):
2868         * rendering/style/BasicShapes.h:
2869         (WebCore::BasicShapeEllipse::centerX):
2870         (WebCore::BasicShapeEllipse::centerY):
2871         (WebCore::BasicShapeEllipse::radiusX):
2872         (WebCore::BasicShapeEllipse::radiusY):
2873         (WebCore::BasicShapeEllipse::setCenterX):
2874         (WebCore::BasicShapeEllipse::setCenterY):
2875         (WebCore::BasicShapeEllipse::setRadiusX):
2876         (WebCore::BasicShapeEllipse::setRadiusY):
2877         (WebCore::BasicShapeEllipse::BasicShapeEllipse):
2878         (WebCore::DeprecatedBasicShapeEllipse::create):
2879         (WebCore::DeprecatedBasicShapeEllipse::DeprecatedBasicShapeEllipse):
2880
2881 2013-12-02  Alexey Proskuryakov  <ap@apple.com>
2882
2883         Add support for WebCrypto RSA-OAEP
2884         https://bugs.webkit.org/show_bug.cgi?id=125084
2885
2886         Build fix.
2887
2888         * crypto/CommonCryptoUtilities.h:
2889         * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
2890         * crypto/mac/CryptoKeyRSAMac.cpp:
2891
2892 2013-12-02  Brendan Long  <b.long@cablelabs.com>
2893
2894         Use GenericEventQueue in TrackListBase and reduce code duplication with scheduleTrackEvent()
2895         https://bugs.webkit.org/show_bug.cgi?id=124811
2896
2897         Reviewed by Eric Carlson.
2898
2899         No new tests because this is just refactoring.
2900
2901         * html/track/TrackListBase.cpp:
2902         (TrackListBase::TrackListBase): Replace event code with a GenericEventQueue.
2903         (TrackListBase::scheduleTrackEvent): Factor out duplicate code in schedule{Add,Remove}TrackEvent functions.
2904         (TrackListBase::scheduleAddTrackEvent): Same.
2905         (TrackListBase::scheduleRemoveTrackEvent): Same.
2906         (TrackListBase::scheduleChangeEvent): Use GenericEventQueue.
2907         * html/track/TrackListBase.h: Replace event code with GenericEventQueue.
2908
2909 2013-12-02  Alexey Proskuryakov  <ap@apple.com>
2910
2911         Add support for WebCrypto RSA-OAEP
2912         https://bugs.webkit.org/show_bug.cgi?id=125084
2913
2914         Build fix.
2915
2916         * WebCore.xcodeproj/project.pbxproj: Fix an automatic merge failure by re-adding
2917         CryptoAlgorithmRsaOaepParams.h.
2918
2919 2013-12-02  Victor Jaquez  <vjaquez@igalia.com>
2920
2921         [Gstreamer] update webkitvideosink metadata
2922         https://bugs.webkit.org/show_bug.cgi?id=125082
2923
2924         Reviewed by Philippe Normand.
2925
2926         No new tests, no behavior changes.
2927
2928         * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
2929         (webkit_video_sink_class_init):
2930
2931 2013-12-02  Víctor Manuel Jáquez Leal  <vjaquez@igalia.com>
2932
2933         Simplify MediaPlayerPrivateGStreamerBase::createVideoSink()
2934         https://bugs.webkit.org/show_bug.cgi?id=125077
2935
2936         Remove the method's unused parameter.
2937         Remove the GStreamer 0.10.22 run-time validation, since we are using
2938         GStreamer 1.0 officially.
2939         Remove the creation of a spurious Bin for the video sink, since
2940         either the fpssink or the webkitsink are valid sink elements.
2941         Change fpsink to a GRefPtr.
2942
2943         Now, createVideoSink() returns a simple pointer to the created sink
2944         element.
2945
2946         Reviewed by Philippe Normand.
2947
2948         No new tests, no behavior changes.
2949
2950         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2951         (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
2952         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2953         (WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink):
2954         (WebCore::MediaPlayerPrivateGStreamerBase::decodedFrameCount):
2955         (WebCore::MediaPlayerPrivateGStreamerBase::droppedFrameCount):
2956         * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
2957
2958 2013-12-02  Alexey Proskuryakov  <ap@apple.com>
2959
2960         Add support for WebCrypto RSA-OAEP
2961         https://bugs.webkit.org/show_bug.cgi?id=125084
2962
2963         Reviewed by Sam Weinig.
2964
2965         Tests: crypto/subtle/rsa-oaep-key-manipulation.html
2966                crypto/subtle/rsa-oaep-plaintext-length.html
2967                crypto/subtle/rsa-oaep-wrap-unwrap-aes.html
2968
2969         * WebCore.xcodeproj/project.pbxproj: Added new files.
2970
2971         * bindings/js/JSCryptoAlgorithmDictionary.cpp:
2972         (WebCore::createRsaOaepParams):
2973         (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
2974         (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
2975         (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
2976         Added RSA-OAEP parameters.
2977
2978         * bindings/js/JSCryptoKeySerializationJWK.cpp:
2979         (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
2980         (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
2981         (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
2982         Support RSA-OAEP in JWK. It is more limited than general WebCrypto, as JWK only
2983         allows SHA-1 as hash.
2984
2985         * crypto/CommonCryptoUtilities.cpp: Added. (WebCore::getCommonCryptoDigestAlgorithm):
2986         * crypto/CommonCryptoUtilities.h: Added.
2987         Extracted some shared code and forward declarations for CommonCrypto.
2988
2989         * crypto/CryptoAlgorithmParameters.h: (WebCore::CryptoAlgorithmParameters::Class):
2990         * crypto/parameters/CryptoAlgorithmRsaOaepParams.h: Added.
2991         Added RsaOaepParams.
2992
2993         * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp: Added.
2994         * crypto/algorithms/CryptoAlgorithmRSA_OAEP.h: Added.
2995         * crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp: Added.
2996
2997         * crypto/mac/CryptoAlgorithmHMACMac.cpp:
2998         (WebCore::getCommonCryptoHMACAlgorithm):
2999         (WebCore::CryptoAlgorithmHMAC::platformSign):
3000         (WebCore::CryptoAlgorithmHMAC::platformVerify):
3001         * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
3002         * crypto/mac/CryptoKeyMac.cpp:
3003         * crypto/mac/CryptoKeyRSAMac.cpp:
3004         Use CommonCryptoUtilities.
3005
3006         * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
3007         (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register RSA-OAEP.
3008
3009 2013-12-02  Andres Gomez  <agomez@igalia.com>
3010
3011         [GTK] Fails to build with freetype 2.5.1
3012         https://bugs.webkit.org/show_bug.cgi?id=125074
3013
3014         Reviewed by Carlos Garcia Campos.
3015
3016         FreeType specifies a canonical way of including their own
3017         headers. Now, we are following this recommendation so the
3018         compilation won't be broken again due to an upgrade in FeeType's
3019         including paths.
3020
3021         * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
3022         * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
3023         * platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
3024
3025 2013-12-02  Chris Fleizach  <cfleizach@apple.com>
3026
3027         AX: Crash at WebCore::commonTreeScope
3028         https://bugs.webkit.org/show_bug.cgi?id=125042
3029
3030         Reviewed by Mario Sanchez Prada.
3031
3032         When an AX text marker that references a node in a detached document is used to create a text marker range, a crash occurs
3033         because the method to determine commonTreeScopes does not account for when there are no common tree scopes.
3034
3035         Test: platform/mac/accessibility/ordered-textmarker-crash.html
3036
3037         * accessibility/AccessibilityObject.cpp:
3038         (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):
3039         * dom/TreeScope.cpp:
3040         (WebCore::commonTreeScope):
3041
3042 2013-12-02  Nick Diego Yamane  <nick.yamane@openbossa.org>
3043
3044         Fix a crash in the webaudio source provider when the audio track is going away.
3045         https://bugs.webkit.org/show_bug.cgi?id=124975
3046
3047         Reviewed by Philippe Normand.
3048
3049         Merged https://chromium.googlesource.com/chromium/blink/+/b21838b32bf11b1a972dfc449ddde71115490c23
3050
3051         Before this patch, it was hitting a use-after-free crash  when the audio
3052         track in the media stream is going away and the webaudio mediastreamsourcenode
3053         is still running.
3054
3055         * Modules/webaudio/AudioContext.cpp:
3056         (WebCore::AudioContext::createMediaStreamSource): Passing audio track
3057         pointer to MediaStreamAudioSourceNode constructor.
3058         * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
3059         (WebCore::MediaStreamAudioSourceNode::create):
3060         (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):
3061         * Modules/webaudio/MediaStreamAudioSourceNode.h: Added
3062         MediaStreamTrack class variable and change the constructor to receive
3063         it as parameter.
3064
3065 2013-12-02  Andrzej Badowski  <a.badowski@samsung.com>
3066
3067         [ATK] Support active state for listbox elements.
3068         https://bugs.webkit.org/show_bug.cgi?id=125009
3069
3070         Reviewed by Chris Fleizach.
3071
3072         Added support for ATK_STATE_ACTIVE for listbox elements.
3073
3074         * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
3075         (setAtkStateSetFromCoreObject):
3076
3077 2013-12-02  Seokju Kwon  <seokju@webkit.org>
3078
3079         Web Inspector: Remove unused functions from InspectorAgent
3080         https://bugs.webkit.org/show_bug.cgi?id=125061
3081
3082         Reviewed by Antoine Quint.
3083
3084         Get rid of unused functions, redundant inclusion and forward declaration.
3085
3086         No new tests, no behavior changes.
3087
3088         * inspector/InspectorAgent.cpp:
3089         * inspector/InspectorAgent.h:
3090
3091 2013-12-02  Tibor Meszaros  <mtibor@inf.u-szeged.hu>
3092
3093         Fix build warning in EventHandler.cpp
3094         https://bugs.webkit.org/show_bug.cgi?id=125010
3095
3096         Reviewed by Csaba Osztrogonác.
3097
3098         * page/EventHandler.cpp:
3099         (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
3100
3101 2013-12-02  Attila Dusnoki  <adusnoki@inf.u-szeged.hu>
3102
3103         HTML5 required attribute validation messages implemented.
3104         https://bugs.webkit.org/show_bug.cgi?id=125003
3105
3106         Reviewed by Gyuyoung Kim.
3107
3108         * platform/efl/LocalizedStringsEfl.cpp:
3109         (WebCore::validationMessagePatternMismatchText):
3110         (WebCore::validationMessageValueMissingText):
3111         (WebCore::validationMessageValueMissingForCheckboxText):
3112         (WebCore::validationMessageValueMissingForFileText):
3113         (WebCore::validationMessageValueMissingForMultipleFileText):
3114         (WebCore::validationMessageValueMissingForRadioText):
3115         (WebCore::validationMessageValueMissingForSelectText):
3116         (WebCore::validationMessageBadInputForNumberText):
3117
3118 2013-12-01  Andreas Kling  <akling@apple.com>
3119
3120         SVG: Intersection/enclosure checks should use RenderElement.
3121         <https://webkit.org/b/125058>
3122
3123         Make RenderSVGModelObject's checkIntersection() and checkEnclosure()
3124         take RenderElement* instead of RenderObject*. They are only ever
3125         called with SVGElement's renderers.
3126
3127         Reviewed by Sam Weinig.
3128
3129 2013-12-01  Andreas Kling  <akling@apple.com>
3130
3131         Remove unreachable labels for -webkit-margin-*-collapse properties.
3132         <https://webkit.org/b/125057>
3133
3134         The following properties are implemented in DeprecatedStyleBuilder
3135         and should not have case labels in the applyProperty() switch:
3136
3137             -webkit-margin-before-collapse
3138             -webkit-margin-top-collapse
3139             -webkit-margin-after-collapse
3140             -webkit-margin-bottom-collapse
3141
3142         This seems counter-intuitive, but they are actually *not* like other
3143         directional properties. In this case, before/after are only aliases
3144         for top/bottom, and do not depend on writing-mode or text-direction.
3145         See also r68561, where the aliases were originally added.
3146
3147         Reviewed by Anders Carlsson.
3148
3149 2013-12-01  Andreas Kling  <akling@apple.com>
3150
3151         CSSFunctionValue constructors should return PassRef.
3152         <https://webkit.org/b/125054>
3153
3154         Make CSSFunctionValue::create() helpers return PassRef instead of
3155         PassRefPtr since they will never return null.
3156
3157         Reviewed by Anders Carlsson.
3158
3159 2013-12-01  Commit Queue  <commit-queue@webkit.org>
3160
3161         Unreviewed, rolling out r159764.
3162         http://trac.webkit.org/changeset/159764
3163         https://bugs.webkit.org/show_bug.cgi?id=125055
3164
3165         appears to hurt html5-full-render times (Requested by kling on
3166         #webkit).
3167
3168         * html/parser/HTMLConstructionSite.cpp:
3169         (WebCore::HTMLConstructionSite::insertTextNode):
3170         * html/parser/HTMLConstructionSite.h:
3171
3172 2013-12-01  Andreas Kling  <akling@apple.com>
3173
3174         Make more computed style helpers return PassRef.
3175         <https://webkit.org/b/125043>
3176
3177         Reduce branchiness in computed style code by making more of the
3178         file-local helpers return PassRef instead of PassRefPtr.
3179
3180         Reviewed by Anders Carlsson.
3181
3182 2013-11-30  Ryuan Choi  <ryuan.choi@samsung.com>
3183
3184         [EFL] Implement scrollbarThickness for opaque scrollbar
3185         https://bugs.webkit.org/show_bug.cgi?id=125034
3186
3187         Reviewed by Gyuyoung Kim.
3188
3189         Implemented scrollbarThickness to support opaque scrollbar.
3190         Now, edj can decide whether to support opaque scrollbar by adding scrollbar.thickness.
3191         In addition, added OVERRIDE/FINAL keyword and removed unnecessary destructor
3192         in ScrollbarThemeEfl.cpp.
3193
3194         No new tests, no behavior changes with default theme.
3195
3196         * platform/efl/RenderThemeEfl.cpp:
3197         (WebCore::RenderThemeEfl::loadTheme):
3198         Update thickness of scrollbar when theme was loaded.
3199         * platform/efl/ScrollbarThemeEfl.cpp:
3200         * platform/efl/ScrollbarThemeEfl.h:
3201         (WebCore::ScrollbarThemeEfl::setScrollbarThickness):
3202         (WebCore::ScrollbarThemeEfl::scrollbarThickness):
3203         (WebCore::ScrollbarThemeEfl::registerScrollbar):
3204         (WebCore::ScrollbarThemeEfl::unregisterScrollbar):
3205
3206 2013-11-29  Tamas Gergely  <tgergely.u-szeged@partner.samsung.com>
3207
3208         Remove Symbian specific code.
3209         https://bugs.webkit.org/show_bug.cgi?id=124939
3210
3211         Reviewed by Zoltan Herczeg.
3212
3213         Symbian is not supported, remove leftover code.
3214
3215         * plugins/npapi.h:
3216
3217 2013-11-28  Gyuyoung Kim  <gyuyoung.kim@samsung.com>
3218
3219         Rename InlineIterator::m_obj and make it private
3220         https://bugs.webkit.org/show_bug.cgi?id=124837
3221
3222         Reviewed by Antti Koivisto.
3223
3224         InlineIterator has been exported m_obj as public though there is a getter function.
3225         Besides *object* name isn't ambigious. So, changed it with m_renderer and renderer().
3226         Additionally, setRenderer() is added as well.
3227
3228         No new tests, no behavior changes.
3229
3230         * rendering/InlineIterator.h:
3231         (WebCore::InlineIterator::setObject):
3232         (WebCore::operator==):
3233         (WebCore::operator!=):
3234         (WebCore::InlineBidiResolver::appendRun):
3235         * rendering/RenderBlockLineLayout.cpp:
3236         (WebCore::RenderBlockFlow::appendRunsForObject):
3237         (WebCore::constructBidiRunsForLine):
3238         (WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns):
3239         (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
3240         (WebCore::RenderBlockFlow::matchedEndLine):
3241         * rendering/line/BreakingContextInlineHeaders.h:
3242         (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
3243         (WebCore::BreakingContext::BreakingContext):
3244         (WebCore::BreakingContext::currentObject):
3245         (WebCore::BreakingContext::initializeForCurrentObject):
3246         (WebCore::BreakingContext::handleBR):
3247         (WebCore::BreakingContext::handleOutOfFlowPositioned):
3248         (WebCore::BreakingContext::handleFloat):
3249         (WebCore::BreakingContext::handleEmptyInline):
3250         (WebCore::BreakingContext::handleReplaced):
3251         (WebCore::iteratorIsBeyondEndOfRenderCombineText):
3252         (WebCore::ensureCharacterGetsLineBox):
3253         (WebCore::BreakingContext::handleText):
3254         (WebCore::BreakingContext::canBreakAtThisPosition):
3255         (WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):
3256         (WebCore::checkMidpoints):
3257         (WebCore::BreakingContext::handleEndOfLine):
3258         * rendering/line/LineBreaker.cpp:
3259         (WebCore::LineBreaker::skipTrailingWhitespace):
3260         (WebCore::LineBreaker::skipLeadingWhitespace):
3261         * rendering/line/LineInlineHeaders.h:
3262         (WebCore::skipNonBreakingSpace):
3263         (WebCore::requiresLineBox):
3264
3265 2013-11-28  Antti Koivisto  <antti@apple.com>
3266
3267         Rename StylePropertySet to StyleProperties
3268         https://bugs.webkit.org/show_bug.cgi?id=124990
3269         
3270         Reviewed by Andreas Kling.
3271
3272         "Set" does not add useful information here. Use less clunky plural name.
3273
3274 2013-11-28  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3275
3276         Nix Upstream: Adding EditorNix to WebCore
3277         https://bugs.webkit.org/show_bug.cgi?id=124984
3278
3279         Reviewed by Csaba Osztrogonác.
3280
3281         No new tests needed.
3282
3283         * PlatformNix.cmake:
3284         * editing/nix/EditorNix.cpp: Added.
3285
3286 2013-11-28  Zoltan Horvath  <zoltan@webkit.org>
3287
3288         [Win] Update vcxproj.filters, since LineInfo.h and LineLayoutState.h have been moved to rendering/line
3289         https://bugs.webkit.org/show_bug.cgi?id=124959
3290
3291         Reviewed by Brent Fulgham.
3292
3293         Update WebCore.vcxproj.filters, since LineInfo.h (r155628) and LineLayoutState.h (158121) have been moved to rendering/line.
3294
3295         No new tests, no behavior change.
3296
3297         * WebCore.vcxproj/WebCore.vcxproj.filters:
3298
3299 2013-11-28  Laszlo Vidacs  <lac@inf.u-szeged.hu>
3300
3301         RenderTableSection Blink merge asserting
3302         https://bugs.webkit.org/show_bug.cgi?id=124857
3303
3304         Reviewed by Csaba Osztrogonác.
3305
3306         Use border spacing at the end of all sections.
3307
3308         * rendering/RenderTableSection.cpp:
3309         (WebCore::RenderTableSection::calcRowLogicalHeight):
3310
3311 2013-11-28  Antti Koivisto  <antti@apple.com>
3312
3313         Remove feature: CSS variables
3314         https://bugs.webkit.org/show_bug.cgi?id=114119
3315
3316         Reviewed by Andreas Kling.
3317         
3318         The feature is unmaintained and it is getting in the way of refactoring. Code quality is not up to
3319         WebKit standards either.
3320
3321         * Configurations/FeatureDefines.xcconfig:
3322         * GNUmakefile.list.am:
3323         * WebCore.xcodeproj/project.pbxproj:
3324         * css/CSSBasicShapes.cpp:
3325         * css/CSSBasicShapes.h:
3326         * css/CSSCalculationValue.cpp:
3327         (WebCore::unitCategory):
3328         (WebCore::hasDoubleValue):
3329         (WebCore::CSSCalcPrimitiveValue::toCalcValue):
3330         (WebCore::CSSCalcPrimitiveValue::computeLengthPx):
3331         (WebCore::determineCategory):
3332         (WebCore::CSSCalcBinaryOperation::primitiveType):
3333         * css/CSSCalculationValue.h:
3334         * css/CSSComputedStyleDeclaration.cpp:
3335         (WebCore::ComputedStyleExtractor::propertyValue):
3336         * css/CSSGrammar.y.in:
3337         * css/CSSParser.cpp:
3338         (WebCore::CSSParserContext::CSSParserContext):
3339         (WebCore::operator==):
3340         (WebCore::filterProperties):
3341         (WebCore::CSSParser::createStylePropertySet):
3342         (WebCore::CSSParser::addProperty):
3343         (WebCore::CSSParser::validCalculationUnit):
3344         (WebCore::CSSParser::validUnit):
3345         (WebCore::CSSParser::createPrimitiveNumericValue):
3346         (WebCore::CSSParser::parseValidPrimitive):
3347         (WebCore::CSSParser::parseValue):
3348         (WebCore::CSSParser::parseReflect):
3349         (WebCore::CSSParser::detectDashToken):
3350         (WebCore::CSSParser::realLex):
3351         * css/CSSParser.h:
3352         * css/CSSParserMode.h:
3353         * css/CSSParserValues.cpp:
3354         (WebCore::CSSParserValue::createCSSValue):
3355         * css/CSSParserValues.h:
3356         * css/CSSPrimitiveValue.cpp:
3357         (WebCore::isValidCSSUnitTypeForDoubleConversion):
3358         (WebCore::CSSPrimitiveValue::primitiveType):
3359         (WebCore::CSSPrimitiveValue::cleanup):
3360         (WebCore::CSSPrimitiveValue::getStringValue):
3361         (WebCore::CSSPrimitiveValue::customCSSText):
3362         (WebCore::CSSPrimitiveValue::equals):
3363         * css/CSSPrimitiveValue.h:
3364         * css/CSSPrimitiveValueMappings.h:
3365         (WebCore::CSSPrimitiveValue::convertToLength):
3366         * css/CSSProperty.cpp:
3367         * css/CSSProperty.h:
3368         (WebCore::CSSProperty::CSSProperty):
3369         * css/CSSReflectValue.cpp:
3370         * css/CSSReflectValue.h:
3371         * css/CSSValue.cpp:
3372         (WebCore::CSSValue::equals):
3373         (WebCore::CSSValue::cssText):
3374         (WebCore::CSSValue::destroy):
3375         * css/CSSValue.h:
3376         (WebCore::CSSValue::setCssText):
3377         * css/CSSValueList.cpp:
3378         * css/CSSValueList.h:
3379         * css/CSSVariableValue.h: Removed.
3380         * css/Pair.h:
3381         * css/Rect.h:
3382         * css/StylePropertySet.cpp:
3383         (WebCore::StylePropertySet::asText):
3384         (WebCore::StylePropertySet::PropertyReference::cssName):
3385         * css/StyleResolver.cpp:
3386         (WebCore::StyleResolver::styleForPage):
3387         (WebCore::StyleResolver::applyProperties):
3388         (WebCore::StyleResolver::applyMatchedProperties):
3389         (WebCore::StyleResolver::applyProperty):
3390         * css/StyleResolver.h:
3391         * css/WebKitCSSTransformValue.cpp:
3392         * css/WebKitCSSTransformValue.h:
3393         (WebCore::WebKitCSSTransformValue::equals):
3394         * css/makeprop.pl:
3395         * page/Settings.cpp:
3396         (WebCore::Settings::Settings):
3397         * page/Settings.h:
3398         * rendering/style/RenderStyle.h:
3399         * rendering/style/StyleRareInheritedData.cpp:
3400         (WebCore::StyleRareInheritedData::StyleRareInheritedData):
3401         (WebCore::StyleRareInheritedData::operator==):
3402         * rendering/style/StyleRareInheritedData.h:
3403         * rendering/style/StyleVariableData.h: Removed.
3404         * testing/InternalSettings.cpp:
3405         (WebCore::InternalSettings::Backup::Backup):
3406         (WebCore::InternalSettings::Backup::restoreTo):
3407         * testing/InternalSettings.h:
3408         * testing/InternalSettings.idl:
3409
3410 2013-11-28  Thiago de Barros Lacerda  <thiago.lacerda@openbossa.org>
3411
3412         Updating RTCPeerConnectionHandlerMock after r159769
3413         https://bugs.webkit.org/show_bug.cgi?id=124947
3414
3415         Reviewed by Philippe Normand.
3416
3417         Adding its create function back, in order to run RTCPeerConnection LayoutTests.
3418
3419         No new tests needed.
3420
3421         * platform/mock/RTCPeerConnectionHandlerMock.cpp:
3422         (WebCore::RTCPeerConnectionHandlerMock::create):
3423         * platform/mock/RTCPeerConnectionHandlerMock.h:
3424
3425 2013-11-27  Gustavo Noronha Silva  <gustavo.noronha@collabora.com>
3426
3427         [GTK] Support custom types for drag and drop data
3428         https://bugs.webkit.org/show_bug.cgi?id=124659
3429
3430         Reviewed by Martin Robinson.
3431
3432         Covered by fast/events/drag-customData.html.
3433
3434         * platform/gtk/DataObjectGtk.cpp:
3435         (WebCore::DataObjectGtk::unknownTypes): returns a hash map with all custom types set.
3436         (WebCore::DataObjectGtk::clearAllExceptFilenames): clear custom types.
3437         * platform/gtk/DataObjectGtk.h:
3438         (WebCore::DataObjectGtk::hasUnknownTypeData): returns whether custom types are set.
3439         (WebCore::DataObjectGtk::unknownTypeData): returns the data for a custom type.
3440         (WebCore::DataObjectGtk::setUnknownTypeData): sets the data for a custom type.
3441         * platform/gtk/PasteboardGtk.cpp:
3442         (WebCore::Pasteboard::writeString): handle unknown types as custom.
3443         (WebCore::Pasteboard::writePasteboard): ditto.
3444         (WebCore::Pasteboard::hasData): also check for custom types.
3445         (WebCore::Pasteboard::types): also obtain the list of custom types.
3446         (WebCore::Pasteboard::readString): handle unknown types as custom.
3447         * platform/gtk/PasteboardHelper.cpp:
3448         (WebCore::initGdkAtoms): new unknown atom.
3449         (WebCore::PasteboardHelper::PasteboardHelper): add custom type to the list of targets.
3450         (WebCore::PasteboardHelper::fillSelectionData): turns any custom types' data into a GVariant, which
3451         is in turn serialized to a single string for GtkSelectionData to hold.
3452         (WebCore::PasteboardHelper::targetListForDataObject): add custom data to the target list if any is
3453         set.
3454         (WebCore::PasteboardHelper::fillDataObjectFromDropData): retrieve the custom types and their data
3455         from the serialized GVariant string held by GtkSelectionData.
3456         (WebCore::PasteboardHelper::dropAtomsForContext): handle custom types.
3457
3458 2013-11-27  Eric Carlson  <eric.carlson@apple.com>
3459
3460     &nbs