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