1 2013-12-06 Roger Fong <roger_fong@apple.com>
3 Hook into some shader symbol logic following the ANGLE update in r159533.
4 https://bugs.webkit.org/show_bug.cgi?id=125332.
6 Reviewed by Brent Fulgham.
8 No new functionality added.
10 * html/canvas/WebGLRenderingContext.cpp: Add some error checking for errors related to
11 shader symbols that exist across both vertex and fragment shaders.
12 (WebCore::WebGLRenderingContext::linkProgram):
13 * platform/graphics/ANGLEWebKitBridge.cpp: Add logic for handling varyings
14 and add new fields to the ANGLEShaderSymbol struct.
15 (WebCore::getSymbolInfo):
16 * platform/graphics/ANGLEWebKitBridge.h:
17 * platform/graphics/GraphicsContext3D.h: Add those same fields to the SymbolInfo struct
18 as well so that we can access them from our shader source map.
19 Also add a map of varyings along side the uniforms and attributes.
20 (WebCore::GraphicsContext3D::SymbolInfo::SymbolInfo):
21 (WebCore::GraphicsContext3D::ShaderSourceEntry::symbolMap):
22 * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
23 (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
24 * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
25 (WebCore::GraphicsContext3D::areProgramSymbolsValid): Will be filled in later, this method
26 will use the shader source map to check for issues with unused varyings and precisions
27 mismatches of shader symbols that exist across both the vertex and fragment shaders.
29 2013-12-06 Lukasz Gajowy <l.gajowy@samsung.com>
31 [ATK] Missing aria roles mappings
32 https://bugs.webkit.org/show_bug.cgi?id=117729
34 Reviewed by Mario Sanchez Prada.
36 Added a few mappings from ARIA roles to ATK roles.
38 Test: accessibility/aria-mappings.html
40 * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
43 2013-11-11 Philippe Normand <pnormand@igalia.com>
45 [GStreamer] webkitwebaudiosrc element needs to emit stream-start, caps and segment events
46 https://bugs.webkit.org/show_bug.cgi?id=123015
48 Reviewed by Martin Robinson.
50 When the source element starts emitting buffers send along various
51 events to notify downstream elements.
53 No new tests, change covered by existing webaudio tests.
55 * platform/audio/gstreamer/WebKitWebAudioSourceGStreamer.cpp:
56 (webkit_web_audio_src_init): Initialize segment.
57 (webKitWebAudioSrcConstructed): Give an explicit name to each
58 queue added in front of the interleave element.
59 (webKitWebAudioSrcLoop): Before sending the first buffers push
60 stream-start, caps and segment events on each queue's sinkpad.
62 2013-12-05 Philippe Normand <pnormand@igalia.com>
64 [GStreamer] Audio/Video sink management is incoherent
65 https://bugs.webkit.org/show_bug.cgi?id=125304
67 Reviewed by Gustavo Noronha Silva.
69 Allow subclasses of MediaPlayerPrivateGStreamerBase to create
70 custom audio/video sinks in a coherent manner using
71 create{Audio,Video}Sink methods. Convenience getters are also
72 available. Also removed some un-needed member variables in the
75 No new tests, existing media tests cover this change.
77 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
78 (WebCore::MediaPlayerPrivateGStreamer::MediaPlayerPrivateGStreamer):
79 (WebCore::MediaPlayerPrivateGStreamer::updateStates):
80 (WebCore::MediaPlayerPrivateGStreamer::createAudioSink):
81 (WebCore::MediaPlayerPrivateGStreamer::audioSink):
82 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
83 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.h:
84 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
85 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
86 (WebCore::MediaPlayerPrivateGStreamerBase::createAudioSink):
88 2013-12-05 Gyuyoung Kim <gyuyoung.kim@samsung.com>
90 Introduce IMAGE_TYPE_CASTS, and use it
91 https://bugs.webkit.org/show_bug.cgi?id=125330
93 Reviewed by Ryosuke Niwa.
95 As a step to use TYPE_CASTS_BASE, this cl introduce IMAGE_TYPE_CASTS.
96 BitmapImage and SVGImage can use it to generate toFoo() type case helper functions.
98 No new tests, no behavior changes.
100 * loader/cache/CachedImage.cpp:
101 (WebCore::CachedImage::imageSizeForRenderer):
102 (WebCore::CachedImage::resumeAnimatingImagesForLoader):
103 * platform/graphics/BitmapImage.h:
104 * platform/graphics/Image.h:
105 * platform/mac/DragImageMac.mm:
106 (WebCore::createDragImageFromImage):
107 * svg/graphics/SVGImage.h:
109 2013-12-05 Zoltan Horvath <zoltan@webkit.org>
111 Clean up the forwarding headers of RenderBlock.h
112 https://bugs.webkit.org/show_bug.cgi?id=125323
114 Reviewed by Ryosuke Niwa.
116 In this patch, I removed the unnecessary forwarding headers from RenderBlock.h, and moved some to RenderBlockFlow.h.
118 No new tests, no behavior change.
120 * rendering/RenderBlock.h: Remove unnecessary forwarding headers.
121 * rendering/RenderBlockFlow.h: Moved some forwarding headers from RenderBlock.h
123 2013-12-04 Oliver Hunt <oliver@apple.com>
125 Refactor static getter function prototype to include thisValue in addition to the base object
126 https://bugs.webkit.org/show_bug.cgi?id=124461
128 Reviewed by Geoffrey Garen.
130 Change bindings codegen to produce static getter functions
131 with the correct types. Also update the many custom implementations
134 No change in behaviour.
136 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
137 (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
138 (WebCore::cssPropertyGetterCallback):
139 * bindings/js/JSDOMBinding.cpp:
140 (WebCore::objectToStringFunctionGetter):
141 * bindings/js/JSDOMBinding.h:
142 * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
143 (WebCore::JSDOMMimeTypeArray::nameGetter):
144 * bindings/js/JSDOMPluginArrayCustom.cpp:
145 (WebCore::JSDOMPluginArray::nameGetter):
146 * bindings/js/JSDOMPluginCustom.cpp:
147 (WebCore::JSDOMPlugin::nameGetter):
148 * bindings/js/JSDOMStringMapCustom.cpp:
149 (WebCore::JSDOMStringMap::nameGetter):
150 * bindings/js/JSDOMWindowCustom.cpp:
151 (WebCore::nonCachingStaticFunctionGetter):
152 (WebCore::childFrameGetter):
153 (WebCore::indexGetter):
154 (WebCore::namedItemGetter):
155 * bindings/js/JSHTMLAllCollectionCustom.cpp:
156 (WebCore::JSHTMLAllCollection::nameGetter):
157 * bindings/js/JSHTMLCollectionCustom.cpp:
158 (WebCore::JSHTMLCollection::nameGetter):
159 * bindings/js/JSHTMLDocumentCustom.cpp:
160 (WebCore::JSHTMLDocument::nameGetter):
161 * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
162 (WebCore::JSHTMLFormControlsCollection::nameGetter):
163 * bindings/js/JSHTMLFormElementCustom.cpp:
164 (WebCore::JSHTMLFormElement::nameGetter):
165 * bindings/js/JSHTMLFrameSetElementCustom.cpp:
166 (WebCore::JSHTMLFrameSetElement::nameGetter):
167 * bindings/js/JSHistoryCustom.cpp:
168 (WebCore::nonCachingStaticBackFunctionGetter):
169 (WebCore::nonCachingStaticForwardFunctionGetter):
170 (WebCore::nonCachingStaticGoFunctionGetter):
171 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
172 (WebCore::JSJavaScriptCallFrame::scopeType):
173 * bindings/js/JSLocationCustom.cpp:
174 (WebCore::nonCachingStaticReplaceFunctionGetter):
175 (WebCore::nonCachingStaticReloadFunctionGetter):
176 (WebCore::nonCachingStaticAssignFunctionGetter):
177 * bindings/js/JSNamedNodeMapCustom.cpp:
178 (WebCore::JSNamedNodeMap::nameGetter):
179 * bindings/js/JSNodeListCustom.cpp:
180 (WebCore::JSNodeList::nameGetter):
181 * bindings/js/JSPluginElementFunctions.cpp:
182 (WebCore::pluginElementPropertyGetter):
183 * bindings/js/JSPluginElementFunctions.h:
184 * bindings/js/JSRTCStatsResponseCustom.cpp:
185 (WebCore::JSRTCStatsResponse::nameGetter):
186 * bindings/js/JSStorageCustom.cpp:
187 (WebCore::JSStorage::nameGetter):
188 * bindings/js/JSStyleSheetListCustom.cpp:
189 (WebCore::JSStyleSheetList::nameGetter):
190 * bindings/scripts/CodeGeneratorJS.pm:
192 (GenerateImplementation):
193 (GenerateParametersCheck):
194 * bridge/runtime_array.cpp:
195 (JSC::RuntimeArray::lengthGetter):
196 (JSC::RuntimeArray::indexGetter):
197 * bridge/runtime_array.h:
198 * bridge/runtime_method.cpp:
199 (JSC::RuntimeMethod::lengthGetter):
200 * bridge/runtime_method.h:
201 * bridge/runtime_object.cpp:
202 (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
203 (JSC::Bindings::RuntimeObject::fieldGetter):
204 (JSC::Bindings::RuntimeObject::methodGetter):
205 * bridge/runtime_object.h:
207 2013-12-05 Tim Horton <timothy_horton@apple.com>
209 Remove Image::decodedSize()
210 https://bugs.webkit.org/show_bug.cgi?id=125327
212 Reviewed by Sam Weinig.
214 No new tests, just removing dead code.
216 * platform/graphics/BitmapImage.cpp:
217 (WebCore::BitmapImage::resetAnimation):
218 * platform/graphics/BitmapImage.h:
219 * platform/graphics/GeneratedImage.h:
220 * platform/graphics/Image.h:
221 * platform/graphics/cg/PDFDocumentImage.cpp:
222 * platform/graphics/cg/PDFDocumentImage.h:
223 * svg/graphics/SVGImage.h:
224 * svg/graphics/SVGImageForContainer.h:
226 2013-12-05 Commit Queue <commit-queue@webkit.org>
228 Unreviewed, rolling out r160133.
229 http://trac.webkit.org/changeset/160133
230 https://bugs.webkit.org/show_bug.cgi?id=125325
232 broke bindings tests on all the bots (Requested by thorton on
235 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
236 (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
237 (WebCore::cssPropertyGetterCallback):
238 * bindings/js/JSDOMBinding.cpp:
239 (WebCore::objectToStringFunctionGetter):
240 * bindings/js/JSDOMBinding.h:
241 * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
242 (WebCore::JSDOMMimeTypeArray::nameGetter):
243 * bindings/js/JSDOMPluginArrayCustom.cpp:
244 (WebCore::JSDOMPluginArray::nameGetter):
245 * bindings/js/JSDOMPluginCustom.cpp:
246 (WebCore::JSDOMPlugin::nameGetter):
247 * bindings/js/JSDOMStringMapCustom.cpp:
248 (WebCore::JSDOMStringMap::nameGetter):
249 * bindings/js/JSDOMWindowCustom.cpp:
250 (WebCore::nonCachingStaticFunctionGetter):
251 (WebCore::childFrameGetter):
252 (WebCore::indexGetter):
253 (WebCore::namedItemGetter):
254 * bindings/js/JSHTMLAllCollectionCustom.cpp:
255 (WebCore::JSHTMLAllCollection::nameGetter):
256 * bindings/js/JSHTMLCollectionCustom.cpp:
257 (WebCore::JSHTMLCollection::nameGetter):
258 * bindings/js/JSHTMLDocumentCustom.cpp:
259 (WebCore::JSHTMLDocument::nameGetter):
260 * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
261 (WebCore::JSHTMLFormControlsCollection::nameGetter):
262 * bindings/js/JSHTMLFormElementCustom.cpp:
263 (WebCore::JSHTMLFormElement::nameGetter):
264 * bindings/js/JSHTMLFrameSetElementCustom.cpp:
265 (WebCore::JSHTMLFrameSetElement::nameGetter):
266 * bindings/js/JSHistoryCustom.cpp:
267 (WebCore::nonCachingStaticBackFunctionGetter):
268 (WebCore::nonCachingStaticForwardFunctionGetter):
269 (WebCore::nonCachingStaticGoFunctionGetter):
270 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
271 (WebCore::JSJavaScriptCallFrame::scopeType):
272 * bindings/js/JSLocationCustom.cpp:
273 (WebCore::nonCachingStaticReplaceFunctionGetter):
274 (WebCore::nonCachingStaticReloadFunctionGetter):
275 (WebCore::nonCachingStaticAssignFunctionGetter):
276 * bindings/js/JSNamedNodeMapCustom.cpp:
277 (WebCore::JSNamedNodeMap::nameGetter):
278 * bindings/js/JSNodeListCustom.cpp:
279 (WebCore::JSNodeList::nameGetter):
280 * bindings/js/JSPluginElementFunctions.cpp:
281 (WebCore::pluginElementPropertyGetter):
282 * bindings/js/JSPluginElementFunctions.h:
283 * bindings/js/JSRTCStatsResponseCustom.cpp:
284 (WebCore::JSRTCStatsResponse::nameGetter):
285 * bindings/js/JSStorageCustom.cpp:
286 (WebCore::JSStorage::nameGetter):
287 * bindings/js/JSStyleSheetListCustom.cpp:
288 (WebCore::JSStyleSheetList::nameGetter):
289 * bindings/scripts/CodeGeneratorJS.pm:
291 (GenerateImplementation):
292 (GenerateParametersCheck):
293 * bridge/runtime_array.cpp:
294 (JSC::RuntimeArray::lengthGetter):
295 (JSC::RuntimeArray::indexGetter):
296 * bridge/runtime_array.h:
297 * bridge/runtime_method.cpp:
298 (JSC::RuntimeMethod::lengthGetter):
299 * bridge/runtime_method.h:
300 * bridge/runtime_object.cpp:
301 (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
302 (JSC::Bindings::RuntimeObject::fieldGetter):
303 (JSC::Bindings::RuntimeObject::methodGetter):
304 * bridge/runtime_object.h:
306 2013-12-05 Seokju Kwon <seokju@webkit.org>
308 Web Inspector: Remove 'cookiesString' output from Page.getCookies
309 https://bugs.webkit.org/show_bug.cgi?id=125268
311 Reviewed by Timothy Hatcher.
313 Remove 'cookiesString' output from Page.getCookies protocol.
314 It is no longer meaningful because it is an unused parameter.
316 No new tests, no behavior change.
318 * inspector/InspectorPageAgent.cpp:
319 (WebCore::InspectorPageAgent::getCookies):
320 * inspector/InspectorPageAgent.h:
321 * inspector/protocol/Page.json:
323 2013-12-05 Brian J. Burg <burg@cs.washington.edu>
325 Web Inspector: expose node and frame snapshot capabilities.
326 https://bugs.webkit.org/show_bug.cgi?id=124326
328 Reviewed by Joseph Pecoraro.
330 This adds snapshotRect() and snapshotNode() to the Page domain.
331 Both methods create snapshots using FrameSnapshotting APIs
332 and send images to the inspector frontend as a data URL.
334 Remove the unimplemented Page.captureScreenshot API.
336 * inspector/InspectorPageAgent.cpp:
337 (WebCore::InspectorPageAgent::snapshotNode): Added.
338 (WebCore::InspectorPageAgent::snapshotRect): Added.
339 * inspector/InspectorPageAgent.h:
340 * inspector/protocol/Page.json: Added new protocol APIs.
342 2013-12-04 Bear Travis <betravis@adobe.com>
344 [CSS Shapes] Enable CSS Shapes on Windows
345 https://bugs.webkit.org/show_bug.cgi?id=89957
347 Reviewed by Brent Fulgham.
349 * css/CSSPropertyNames.in: Tweak to ensure shapes properties are regenerated.
351 2013-12-05 Roger Fong <roger_fong@apple.com>
353 [WebGL] Make sure we satisfy uniform and varying packing restrictions.
354 https://bugs.webkit.org/show_bug.cgi?id=125124.
355 <rdar://problem/15203291>
357 Reviewed by Brent Fulgham.
359 Tests covered by WebGL Khronos conformance tests:
360 webgl/1.0.2/conformance/glsl/misc/shader-uniform-packing-restrictions.html
361 webgl/1.0.2/conformance/glsl/misc/shader-varying-packing-restrictions.html
363 * platform/graphics/opengl/Extensions3DOpenGLCommon.cpp:
364 (WebCore::Extensions3DOpenGLCommon::getTranslatedShaderSourceANGLE):
366 2013-12-05 Laszlo Vidacs <lac@inf.u-szeged.hu>
368 32bit buildfix after r160151
369 https://bugs.webkit.org/show_bug.cgi?id=125298
371 Reviewed by Csaba Osztrogonác.
373 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
374 (StreamingClient::handleDataReceived):
376 2013-12-05 Myles C. Maxfield <mmaxfield@apple.com>
378 Cropping and drawing ImageBuffers results in uninitialized data being shown
379 https://bugs.webkit.org/show_bug.cgi?id=125271
381 Reviewed by Simon Fraser.
383 createCroppedImageIfNecessary() crops to the bottom left of the ImageBuffer
384 backing store instead of the top left. In addition, ImageBuffer::draw()
385 draws the entire ImageBuffer's backing store instead of just the relevant
388 No new tests are necessary because the existing tests already test this
391 * platform/graphics/cg/ImageBufferCG.cpp:
392 (WebCore::createCroppedImageIfNecessary): Crop to the top left of the
394 (WebCore::ImageBuffer::draw): Draw only the logical portion of the
397 2013-12-05 Joseph Pecoraro <pecoraro@apple.com>
399 Remove stale ScriptGlobalObject methods
400 https://bugs.webkit.org/show_bug.cgi?id=125276
402 Reviewed by Sam Weinig.
404 * bindings/js/ScriptObject.cpp:
405 (WebCore::ScriptGlobalObject::set):
406 * bindings/js/ScriptObject.h:
408 2013-12-04 Ryosuke Niwa <rniwa@webkit.org>
410 Change how the form element pointer affects parsing template elements, to reduce weirdness in templates
411 https://bugs.webkit.org/show_bug.cgi?id=125279
413 Reviewed by Antti Koivisto.
415 Faithfully update the HTML5 parser after http://html5.org/tools/web-apps-tracker?from=8330&to=8331.
417 Test: fast/dom/HTMLTemplateElement/no-form-association-2.html
419 * html/parser/HTMLConstructionSite.cpp:
420 (WebCore::HTMLConstructionSite::insertHTMLFormElement): Don't the form element pointer if the context
421 element or its ancestor is a template element.
422 (WebCore::HTMLConstructionSite::insideTemplateElement): Added.
423 (WebCore::HTMLConstructionSite::createHTMLElement): Renamed openElementsContainTemplateElement to
424 insideTemplateElement to reflect the true semantics of the boolean.
426 * html/parser/HTMLConstructionSite.h:
428 * html/parser/HTMLTreeBuilder.cpp:
429 (WebCore::HTMLTreeBuilder::processIsindexStartTagForInBody): Ignore the form element pointer if there
430 is a template element on the stack of open elements. This faithfully reflects what's being said in the
431 specification. We should probably make isParsingTemplateContents more efficient by storing a boolean
432 and then wrap from() in some helper function but that should probbaly happen in a separate patch.
433 (WebCore::HTMLTreeBuilder::processStartTagForInBody): Ditto.
434 (WebCore::HTMLTreeBuilder::processStartTagForInTable): Ditto.
435 (WebCore::HTMLTreeBuilder::processEndTagForInBody): Don't unset or rely on the form element pointer
436 when there is a template element on the stack of open elements.
438 * html/parser/HTMLTreeBuilder.h:
439 (WebCore::HTMLTreeBuilder::isParsingTemplateContents): Added a trivial implementation for when
440 TEMPLATE_ELEMENT is disabled.
441 (WebCore::HTMLTreeBuilder::isParsingFragmentOrTemplateContents): Merged two implementations.
443 2013-12-05 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
445 [MediaStream] Firing negotiationneeded event upon track add/remove on MediaStream
446 https://bugs.webkit.org/show_bug.cgi?id=125243
448 Reviewed by Eric Carlson.
450 Spec states that: In particular, if an RTCPeerConnection object is consuming a MediaStream on which a track is
451 added, by, e.g., the addTrack() method being invoked, the RTCPeerConnection object must fire the
452 "negotiationneeded" event. Removal of media components must also trigger "negotiationneeded".
454 Existing tests updated.
456 * Modules/mediastream/MediaStream.cpp:
457 (WebCore::MediaStream::addTrack):
458 (WebCore::MediaStream::removeTrack):
459 (WebCore::MediaStream::addObserver):
460 (WebCore::MediaStream::removeObserver):
461 * Modules/mediastream/MediaStream.h:
462 * Modules/mediastream/RTCPeerConnection.cpp:
463 (WebCore::RTCPeerConnection::~RTCPeerConnection):
464 (WebCore::RTCPeerConnection::addStream):
465 (WebCore::RTCPeerConnection::removeStream):
466 (WebCore::RTCPeerConnection::didAddOrRemoveTrack):
467 * Modules/mediastream/RTCPeerConnection.h:
468 * platform/mock/RTCPeerConnectionHandlerMock.cpp:
469 (WebCore::RTCPeerConnectionHandlerMock::addStream):
471 2013-12-05 Beth Dakin <bdakin@apple.com>
473 Bad repaints on twitter when the tile cache has a margin
474 https://bugs.webkit.org/show_bug.cgi?id=125263
476 <rdar://problem/15576884>
478 Reviewed by Tim Horton.
480 When tiles that used to be margin tiles become real-content tiles, they need to be
483 Two new helper functions will make it so that we don’t have to manually factor out
484 the margin from the bounds in more than one place in the code.
485 * platform/graphics/ca/mac/TileController.h:
486 * platform/graphics/ca/mac/TileController.mm:
487 (WebCore::TileController::boundsWithoutMargin):
488 (WebCore::TileController::boundsAtLastRevalidateWithoutMargin):
490 Here is one existing place where we used to factor out the margin, but now we can
491 call boundsWithoutMargin().
492 (WebCore::TileController::adjustRectAtTileIndexForMargin):
494 And here is where we invalidate the formerly-margin tiles.
495 (WebCore::TileController::revalidateTiles):
497 2013-12-05 Zoltan Horvath <zoltan@webkit.org>
499 Remove the forward declaration of BidiContext class from RenderBlock.h
500 https://bugs.webkit.org/show_bug.cgi?id=125265
502 Reviewed by Csaba Osztrogonác.
504 No new tests, no behavior change.
506 * rendering/RenderBlock.h: BidiContext is not used in RenderBlock.h
508 2013-12-05 Aloisio Almeida Jr <aloisio.almeida@openbossa.org>
510 [Cairo] Avoid extra copy when drawing images
511 https://bugs.webkit.org/show_bug.cgi?id=124209
513 Reviewed by Carlos Garcia Campos.
515 This commit applies some changes proposed after the original patch has
516 been landed. It fixes the logic to create the subsurface (as it was
517 inverted). It also remove an unnecessary RefPtr variable to hold the
520 No new tests. It's an enhancement. Already covered by existing tests.
522 * platform/graphics/cairo/PlatformContextCairo.cpp:
523 (WebCore::PlatformContextCairo::drawSurfaceToContext):
525 2013-12-05 Zoltan Horvath <zoltan@webkit.org>
527 [CSS Shapes] Fix inset when only a subset of the arguments are defined
528 https://bugs.webkit.org/show_bug.cgi?id=125277
530 Reviewed by David Hyatt.
532 I thought Length's default value is fixed-0, but actually it's auto-0. For the optional arguments
533 of inset shape, we need to use fixed-0, so I updated the code and the tests to use that explicitly.
535 No new tests, I updated the old ones.
537 * css/BasicShapeFunctions.cpp:
538 (WebCore::basicShapeForValue):
540 2013-12-05 Carlos Garcia Campos <cgarcia@igalia.com>
542 [GTK] Do not use deprecated gtk-doc 'Rename to' tag
543 https://bugs.webkit.org/show_bug.cgi?id=125303
545 Reviewed by Philippe Normand.
547 GObject introspection rename-to annotation is available in
548 since version 0.6.3 so we should use that instead.
550 * bindings/gobject/WebKitDOMEventTarget.h:
552 2013-12-05 Carlos Garcia Campos <cgarcia@igalia.com>
554 [GTK] Add missing symbols to WebKitDOMDeprecated.symbols
555 https://bugs.webkit.org/show_bug.cgi?id=125300
557 Reviewed by Philippe Normand.
559 Add webkit_dom_html_element_get_id and
560 webkit_dom_html_element_set_id to the symbols files.
562 * bindings/gobject/WebKitDOMDeprecated.symbols:
563 * bindings/gobject/webkitdom.symbols:
565 2013-12-05 Carlos Garcia Campos <cgarcia@igalia.com>
567 Unreviewed. Update GObject DOM bindings symbols file after r159711.
569 * bindings/gobject/webkitdom.symbols:
571 2013-12-05 Zan Dobersek <zdobersek@igalia.com>
573 [GTK] Move platform sources free of layering violations under libPlatform
574 https://bugs.webkit.org/show_bug.cgi?id=117509
576 Reviewed by Carlos Garcia Campos.
578 * GNUmakefile.list.am: Move additional source files located in the platform layer under libPlatform.
579 All moved sources are free of layering violations and thus ready for the migration.
581 2013-12-05 László Langó <lango@inf.u-szeged.hu>
583 Remove bridge/testqtbindings.cpp.
584 https://bugs.webkit.org/show_bug.cgi?id=125287
586 Reviewed by Alexey Proskuryakov.
588 * bridge/testqtbindings.cpp: Removed. There is no QT anymore.
589 We don't need this file.
591 2013-12-04 Gurpreet Kaur <k.gurpreet@samsung.com>
593 % unit heights don't work if parent block height is set in vh
594 https://bugs.webkit.org/show_bug.cgi?id=118516
596 Reviewed by Simon Fraser.
598 From Blink r156449 by <srinivasa.ragavan.venkateswaran@intel.com>
600 An element having height as percentage needs to have the
601 containingblock's height or availableheight to calculate its
602 own height. The containing block having a height set in vh
603 unit was not being considered for calculating the child's
606 Tests: fast/css/viewport-percentage-compute-box-height.html
607 fast/css/viewport-percentage-compute-box-width.html
609 * rendering/RenderBox.cpp:
610 (WebCore::RenderBox::computePercentageLogicalHeight):
611 Correct child's height(in pecentage) was not being calculated
612 incase of parent having height set in vh unit. Added condition
613 to calculate the containing block height in terms of viewport size.
615 2013-12-04 Roger Fong <roger_fong@apple.com>
617 [Windows] Unreviewed build fix. Copy headers from rendering/line to build directory.
619 * WebCore.vcxproj/copyForwardingHeaders.cmd:
621 2013-12-04 Ryosuke Niwa <rniwa@webkit.org>
623 bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless
624 https://bugs.webkit.org/show_bug.cgi?id=125208
626 Rubber-stamped by Anders Carlsson.
628 Address Darin's comment to use fastGetAttribute instead of getAttribute.
630 * html/HTMLDocument.cpp:
631 (WebCore::HTMLDocument::bgColor):
632 (WebCore::HTMLDocument::fgColor):
633 (WebCore::HTMLDocument::alinkColor):
634 (WebCore::HTMLDocument::linkColor):
635 (WebCore::HTMLDocument::vlinkColor):
637 2013-12-04 Brian J. Burg <burg@cs.washington.edu>
639 Consolidate various frame snapshot capabilities.
640 https://bugs.webkit.org/show_bug.cgi?id=124325
642 Reviewed by Darin Adler.
644 Various snapshot creation methods had duplicated code and were split
645 between Frame, DragImage, and platform-specific implementationss.
646 This patch puts WebCore snapshot methods into FrameSnapshotting
647 and removes platform implementations where possible.
649 DragImage methods reuse snapshot methods where possible. Inspector
650 will be able to take snapshots without using drag images.
652 No new tests, this is a refactoring.
655 * GNUmakefile.list.am:
657 * WebCore.vcxproj/WebCore.vcxproj:
658 * WebCore.vcxproj/WebCore.vcxproj.filters:
659 * WebCore.xcodeproj/project.pbxproj:
660 * bindings/objc/DOM.mm:
661 (-[DOMNode renderedImage]):
662 (-[DOMRange renderedImageForcingBlackText:]):
664 (WebCore::Clipboard::createDragImage):
665 * dom/ClipboardMac.mm:
666 (WebCore::Clipboard::createDragImage):
667 * page/DragController.cpp:
668 (WebCore::DragController::startDrag):
671 * page/FrameSnapshotting.cpp: Added.
672 (WebCore::ScopedFramePaintingState::ScopedFramePaintingState):
673 (WebCore::ScopedFramePaintingState::~ScopedFramePaintingState):
674 (WebCore::snapshotFrameRect): Move most buffer logic to here.
675 (WebCore::snapshotSelection): Moved from Frame.
676 (WebCore::snapshotNode): Moved from Frame.
677 * page/FrameSnapshotting.h: Added.
678 * page/mac/FrameMac.mm: Removed.
679 * page/mac/FrameSnapshottingMac.h: Removed.
680 * page/mac/FrameSnapshottingMac.mm: Removed.
681 * page/win/FrameWin.cpp: remove duplicate implementation.
682 * page/win/FrameWin.h: Fix an incorrect parameter name.
683 * platform/DragImage.cpp:
684 (WebCore::ScopedNodeDragState::ScopedNodeDragState):
685 (WebCore::ScopedNodeDragState::~ScopedNodeDragState):
686 (WebCore::createDragImageFromSnapshot): Boilerplate buffer conversion.
687 (WebCore::createDragImageForNode):
688 (WebCore::createDragImageForSelection):
689 (WebCore::ScopedFrameSelectionState::ScopedFrameSelectionState):
690 (WebCore::ScopedFrameSelectionState::~ScopedFrameSelectionState):
691 (WebCore::createDragImageForRange): Moved from Frame.
692 (WebCore::createDragImageForImage): Moved from FrameSnapshottingMac.
693 (WebCore::createDragImageForLink): use nullptr.
695 2013-12-04 Benjamin Poulain <bpoulain@apple.com>
697 Remove spaces on a blank line to have ResourceHandleCFNet.cpp identical to iOS
701 * platform/network/cf/ResourceHandleCFNet.cpp:
702 (WebCore::ResourceHandle::platformLoadResourceSynchronously):
704 2013-12-04 Antti Koivisto <antti@apple.com>
706 Move pseudo element construction out from Element
707 https://bugs.webkit.org/show_bug.cgi?id=125257
709 Reviewed by Anders Carlsson.
711 This is logically part of the style resolve/render tree construction. This will make future
716 * style/StyleResolveTree.cpp:
717 (WebCore::Style::beforeOrAfterPseudoElement):
718 (WebCore::Style::setBeforeOrAfterPseudoElement):
719 (WebCore::Style::clearBeforeOrAfterPseudoElement):
720 (WebCore::Style::needsPseudeElement):
721 (WebCore::Style::attachBeforeOrAfterPseudoElementIfNeeded):
722 (WebCore::Style::attachRenderTree):
723 (WebCore::Style::updateBeforeOrAfterPseudoElement):
724 (WebCore::Style::resolveTree):
726 2013-12-04 Zoltan Horvath <zoltan@webkit.org>
728 Move TrailingObjects class into its own h/cpp
729 https://bugs.webkit.org/show_bug.cgi?id=124956
731 Reviewed by David Hyatt.
733 Since I moved space-ignoring inline functions into MidpointState in r160074,
734 I can nicely separate TrailingObjects class from BreakingContextInlineHeader.h.
735 This change improves the readability, and it's part of the RenderBlockLineLayout
736 refactoring campaign, which is tracked under bug #121261.
738 No new tests, no behavior change.
741 * GNUmakefile.list.am:
742 * WebCore.vcxproj/WebCore.vcxproj:
743 * WebCore.xcodeproj/project.pbxproj:
744 * rendering/RenderBlock.h:
745 * rendering/RenderBlockFlow.h:
746 * rendering/line/BreakingContextInlineHeaders.h:
747 * rendering/line/TrailingObjects.cpp: Added.
748 (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
749 * rendering/line/TrailingObjects.h: Added.
750 (WebCore::TrailingObjects::TrailingObjects):
751 (WebCore::TrailingObjects::setTrailingWhitespace):
752 (WebCore::TrailingObjects::clear):
753 (WebCore::TrailingObjects::appendBoxIfNeeded):
755 2013-12-04 Oliver Hunt <oliver@apple.com>
757 Refactor static getter function prototype to include thisValue in addition to the base object
758 https://bugs.webkit.org/show_bug.cgi?id=124461
760 Reviewed by Geoffrey Garen.
762 Change bindings codegen to produce static getter functions
763 with the correct types. Also update the many custom implementations
766 No change in behaviour.
768 * bindings/js/JSCSSStyleDeclarationCustom.cpp:
769 (WebCore::cssPropertyGetterPixelOrPosPrefixCallback):
770 (WebCore::cssPropertyGetterCallback):
771 * bindings/js/JSDOMBinding.cpp:
772 (WebCore::objectToStringFunctionGetter):
773 * bindings/js/JSDOMBinding.h:
774 * bindings/js/JSDOMMimeTypeArrayCustom.cpp:
775 (WebCore::JSDOMMimeTypeArray::nameGetter):
776 * bindings/js/JSDOMPluginArrayCustom.cpp:
777 (WebCore::JSDOMPluginArray::nameGetter):
778 * bindings/js/JSDOMPluginCustom.cpp:
779 (WebCore::JSDOMPlugin::nameGetter):
780 * bindings/js/JSDOMStringMapCustom.cpp:
781 (WebCore::JSDOMStringMap::nameGetter):
782 * bindings/js/JSDOMWindowCustom.cpp:
783 (WebCore::nonCachingStaticFunctionGetter):
784 (WebCore::childFrameGetter):
785 (WebCore::indexGetter):
786 (WebCore::namedItemGetter):
787 * bindings/js/JSHTMLAllCollectionCustom.cpp:
788 (WebCore::JSHTMLAllCollection::nameGetter):
789 * bindings/js/JSHTMLCollectionCustom.cpp:
790 (WebCore::JSHTMLCollection::nameGetter):
791 * bindings/js/JSHTMLDocumentCustom.cpp:
792 (WebCore::JSHTMLDocument::nameGetter):
793 * bindings/js/JSHTMLFormControlsCollectionCustom.cpp:
794 (WebCore::JSHTMLFormControlsCollection::nameGetter):
795 * bindings/js/JSHTMLFormElementCustom.cpp:
796 (WebCore::JSHTMLFormElement::nameGetter):
797 * bindings/js/JSHTMLFrameSetElementCustom.cpp:
798 (WebCore::JSHTMLFrameSetElement::nameGetter):
799 * bindings/js/JSHistoryCustom.cpp:
800 (WebCore::nonCachingStaticBackFunctionGetter):
801 (WebCore::nonCachingStaticForwardFunctionGetter):
802 (WebCore::nonCachingStaticGoFunctionGetter):
803 * bindings/js/JSJavaScriptCallFrameCustom.cpp:
804 (WebCore::JSJavaScriptCallFrame::scopeType):
805 * bindings/js/JSLocationCustom.cpp:
806 (WebCore::nonCachingStaticReplaceFunctionGetter):
807 (WebCore::nonCachingStaticReloadFunctionGetter):
808 (WebCore::nonCachingStaticAssignFunctionGetter):
809 * bindings/js/JSNamedNodeMapCustom.cpp:
810 (WebCore::JSNamedNodeMap::nameGetter):
811 * bindings/js/JSNodeListCustom.cpp:
812 (WebCore::JSNodeList::nameGetter):
813 * bindings/js/JSPluginElementFunctions.cpp:
814 (WebCore::pluginElementPropertyGetter):
815 * bindings/js/JSPluginElementFunctions.h:
816 * bindings/js/JSRTCStatsResponseCustom.cpp:
817 (WebCore::JSRTCStatsResponse::nameGetter):
818 * bindings/js/JSStorageCustom.cpp:
819 (WebCore::JSStorage::nameGetter):
820 * bindings/js/JSStyleSheetListCustom.cpp:
821 (WebCore::JSStyleSheetList::nameGetter):
822 * bindings/scripts/CodeGeneratorJS.pm:
824 (GenerateImplementation):
825 (GenerateParametersCheck):
826 * bridge/runtime_array.cpp:
827 (JSC::RuntimeArray::lengthGetter):
828 (JSC::RuntimeArray::indexGetter):
829 * bridge/runtime_array.h:
830 * bridge/runtime_method.cpp:
831 (JSC::RuntimeMethod::lengthGetter):
832 * bridge/runtime_method.h:
833 * bridge/runtime_object.cpp:
834 (JSC::Bindings::RuntimeObject::fallbackObjectGetter):
835 (JSC::Bindings::RuntimeObject::fieldGetter):
836 (JSC::Bindings::RuntimeObject::methodGetter):
837 * bridge/runtime_object.h:
839 2013-12-04 Zoltan Horvath <zoltan@webkit.org>
841 [CSS Shapes] Support inset for shape-outside
842 <https://webkit.org/b/125112>
844 Reviewed by David Hyatt.
846 This patch adds inset support for shape-outside. Parsing has previously landed in r159968.
847 Specification: http://dev.w3.org/csswg/css-shapes/#supported-basic-shapes
849 Tests: fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-left.html
850 fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-bottom-right.html
851 fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-left.html
852 fast/shapes/shape-outside-floats/shape-outside-floats-inset-rounded-top-right.html
853 fast/shapes/shape-outside-floats/shape-outside-floats-inset.html
855 * platform/LengthSize.h:
856 (WebCore::LengthSize::floatSize): Add conversion to FloatSize.
857 * rendering/shapes/Shape.cpp:
858 (WebCore::Shape::createShape): Handle inset case.
860 2013-12-04 Bear Travis <betravis@adobe.com>
862 Web Inspector: [CSS Shapes] Support raster shape visualizations
863 https://bugs.webkit.org/show_bug.cgi?id=124080
865 Reviewed by Joseph Pecoraro.
867 Create an inspector visualization for a shape created from an image.
868 The visualization takes each line of the image, combining where possible.
870 Test added to inspector-protocol/model/highlight-shape-outside.html
872 * rendering/shapes/RasterShape.cpp:
873 (WebCore::RasterShapeIntervals::buildBoundsPath): Create a path representing the
874 RasterShapeIntervals.
875 * rendering/shapes/RasterShape.h:
877 2013-12-04 Zoltan Horvath <zoltan@webkit.org>
879 [CSS Shapes] Remove explicit numbering from BasicShape::Type and CSSBasicShape::Type enums
880 https://bugs.webkit.org/show_bug.cgi?id=125163
882 Reviewed by Rob Buis.
884 I don't see any reason to have explicit numbering for the Type enum in our [CSS]BasicShape classes.
885 I removed numbering, which will decrease for instance the merge conflicts on Type changes.
887 No new tests, no behavior change.
889 * css/CSSBasicShapes.h:
890 * rendering/style/BasicShapes.h:
892 2013-12-04 Myles C. Maxfield <mmaxfield@apple.com>
894 Allow ImageBuffer to use an IOSurface that is larger than necessary
895 https://bugs.webkit.org/show_bug.cgi?id=124626
897 Reviewed by Simon Fraser.
899 Because creating ImageBuffer's backing store can be so expensive, it
900 would be beneficial to have a pool of pre-created backing stores
901 available. However, this means that ImageBuffer might have to use a
902 backing store that is larger than the exact dimensions that it needs.
903 This patch adds a field, m_backingStoreSize, to CG's ImageBufferData
904 class, and uses this new field when performing ImageBuffer operations
905 to allow for larger-than-necessary backing stores. Content is always
906 drawn in the top left corner of the backing store.
908 No new tests are necessary because there is no behavior change.
910 * platform/graphics/ImageBuffer.h:
911 (WebCore::ImageBuffer::baseTransform): The base transform has to put
912 content at the top left corner instead of bottom left
913 * platform/graphics/cg/ImageBufferCG.cpp:
914 (WebCore::createCroppedImageIfNecessary): Convenience function to figure out
915 the dimensions of the backing texture in user space
916 (WebCore::ImageBuffer::ImageBuffer): Set up new m_backingStoreSize member
917 (WebCore::maybeCropToBounds): Some ImageBuffer API functions require
918 outputting an image with logical size. This function performs the cropping
919 (WebCore::ImageBuffer::copyImage): Updated for larger-than-necessary
921 (WebCore::ImageBuffer::copyNativeImage): Ditto
922 (WebCore::ImageBuffer::draw): Ditto
923 (WebCore::ImageBuffer::clip): Ditto
924 (WebCore::ImageBuffer::putByteArray): Ditto
925 (WebCore::ImageBuffer::toDataURL): Ditto
926 * platform/graphics/cg/ImageBufferDataCG.cpp:
927 (WebCore::ImageBufferData::getData): Ditto
928 (WebCore::ImageBufferData::putData): Ditto
929 * platform/graphics/cg/ImageBufferDataCG.h: New m_backingStoreSize field
931 2013-12-03 Dean Jackson <dino@apple.com>
933 [WebGL] Support for texImage2D of type HALF_FLOAT_OES
934 https://bugs.webkit.org/show_bug.cgi?id=110936
936 Reviewed by Brent Fulgham.
938 Add support for the HALF_FLOAT_OES texture format from texImage2D
941 A lot of this patch comes from the original patch on the bug
942 by Nayan Kumar, and the Blink commit:
943 https://codereview.chromium.org/13842017
945 Tests: fast/canvas/webgl/oes-texture-half-float-with-canvas.html
946 fast/canvas/webgl/oes-texture-half-float-with-image.html
947 fast/canvas/webgl/oes-texture-half-float-with-video.html
949 * html/canvas/OESTextureHalfFloat.idl: New HALF_FLOAT_OES constant value.
950 * html/canvas/WebGLRenderingContext.cpp:
951 (WebCore::WebGLRenderingContext::validateTexFunc): Remove the code that
952 would bail if half-float values were used.
953 * platform/graphics/GraphicsContext3D.cpp:
954 - Return appropriate DataFormats for half floating point types.
955 - Copy the float -> half-float code from Blink
956 - New pack functions for half floats
957 * platform/graphics/GraphicsContext3D.h: New format types.
958 * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp:
959 (WebCore::GraphicsContext3D::texSubImage2D): Use GL_HALF_FLOAT_ARB if we're passed
962 2013-12-04 Daniel Bates <dabates@apple.com>
964 Fix the Apple Windows build after <http://trac.webkit.org/changeset/160113>
965 (https://bugs.webkit.org/show_bug.cgi?id=125193)
967 * rendering/RenderThemeWin.cpp:
968 (WebCore::RenderThemeWin::paintMenuList): Substitute paintInfo for i.
970 2013-12-04 Daniel Bates <dabates@apple.com>
972 Rename RenderTheme::paintMenuListButton()
973 https://bugs.webkit.org/show_bug.cgi?id=125193
975 Reviewed by Simon Fraser.
977 Towards upstreaming the iOS concept of render theme decorations we should rename
978 RenderTheme::paintMenuListButton() to RenderTheme::paintMenuListButtonDecorations()
979 to better describe its purpose.
981 Also, fix code style issues.
983 * platform/blackberry/RenderThemeBlackBerry.cpp:
984 (WebCore::RenderThemeBlackBerry::paintMenuListButtonDecorations):
985 * platform/blackberry/RenderThemeBlackBerry.h:
986 * platform/efl/RenderThemeEfl.cpp:
987 (WebCore::RenderThemeEfl::paintMenuListButtonDecorations):
988 * platform/efl/RenderThemeEfl.h:
989 * platform/gtk/RenderThemeGtk.cpp:
990 (WebCore::RenderThemeGtk::paintMenuListButtonDecorations):
991 * platform/gtk/RenderThemeGtk.h:
992 * platform/nix/RenderThemeNix.h:
993 * rendering/RenderTheme.cpp:
994 (WebCore::RenderTheme::paintDecorations): Rename argument o, r to renderer and rect, respectively.
995 * rendering/RenderTheme.h:
996 (WebCore::RenderTheme::paintMenuListButtonDecorations):
997 * rendering/RenderThemeMac.h:
998 * rendering/RenderThemeMac.mm:
999 (WebCore::RenderThemeMac::paintMenuListButtonDecorations): Rename argument o, r to renderer and rect,
1000 respectively; also remove extraneous white space and substitute 1 for 1.0f.
1001 * rendering/RenderThemeSafari.cpp:
1002 (WebCore::RenderThemeSafari::paintMenuListButtonDecorations): Ditto.
1003 * rendering/RenderThemeSafari.h:
1004 * rendering/RenderThemeWin.cpp:
1005 (WebCore::RenderThemeWin::paintMenuList): Rename argument o, i, r to renderer, paintInfo, and rect,
1007 (WebCore::RenderThemeWin::paintMenuListButtonDecorations): Ditto.
1008 * rendering/RenderThemeWin.h:
1009 * rendering/RenderThemeWinCE.cpp:
1010 (WebCore::RenderThemeWinCE::paintMenuList): Ditto.
1011 (WebCore::RenderThemeWinCE::paintMenuListButtonDecorations): Ditto.
1012 * rendering/RenderThemeWinCE.h:
1014 2013-12-04 Andy Estes <aestes@apple.com>
1016 [iOS] Build projects with $(ARCHS_STANDARD_32_64_BIT)
1017 https://bugs.webkit.org/show_bug.cgi?id=125236
1019 Reviewed by Sam Weinig.
1021 $(ARCHS_STANDARD_32_64_BIT) is what we want for both device and simulator builds.
1023 * Configurations/DebugRelease.xcconfig:
1025 2013-12-04 Joseph Pecoraro <pecoraro@apple.com>
1027 Unreviewed Windows build fix attempt after r160099.
1029 * WebCore.vcxproj/WebCore.vcxproj.filters:
1030 * WebCore.vcxproj/copyForwardingHeaders.cmd:
1032 2013-12-03 Joseph Pecoraro <pecoraro@apple.com>
1034 Web Inspector: Push Remote Inspector debugging connection management into JavaScriptCore
1035 https://bugs.webkit.org/show_bug.cgi?id=124613
1037 Reviewed by Timothy Hatcher.
1039 Make a WebCore::Page a "Web" Remote Debuggable.
1041 * bindings/js/JSDOMGlobalObject.cpp:
1042 Disable JavaScript context inspection on JSGlobalObjects inside WebCore::Page's.
1045 (WebCore::Page::Page):
1046 (WebCore::Page::remoteInspectionAllowed):
1047 (WebCore::Page::setRemoteInspectionAllowed):
1048 (WebCore::Page::remoteInspectorInformationDidChange):
1050 * page/PageDebuggable.h:
1051 * page/PageDebuggable.cpp: Added.
1052 (WebCore::PageDebuggable::PageDebuggable):
1053 (WebCore::PageDebuggable::name):
1054 (WebCore::PageDebuggable::url):
1055 (WebCore::PageDebuggable::hasLocalDebugger):
1056 (WebCore::PageDebuggable::connect):
1057 (WebCore::PageDebuggable::disconnect):
1058 (WebCore::PageDebuggable::dispatchMessageFromRemoteFrontend):
1059 (WebCore::PageDebuggable::setIndicating):
1060 Make a page a "Web" debuggable.
1062 * GNUmakefile.list.am:
1064 * WebCore.vcxproj/WebCore.vcxproj:
1065 * WebCore.vcxproj/WebCore.vcxproj.filters:
1066 * WebCore.xcodeproj/project.pbxproj:
1069 * inspector/InspectorClient.h:
1070 (WebCore::InspectorClient::indicate):
1071 (WebCore::InspectorClient::hideIndicate):
1072 Forward indicate methods to WebKit clients.
1074 * loader/FrameLoader.cpp:
1075 (WebCore::FrameLoader::didChangeTitle):
1076 (WebCore::FrameLoader::dispatchDidCommitLoad):
1077 Push updates when remote debuggable information like the Page's
1078 URL or title change.
1080 * ForwardingHeaders/inspector/InspectorFrontendChannel.h:
1081 * inspector/InspectorForwarding.h:
1082 Re-export Inspector::InspectorFrontendChannel as WebCore::InspectorFrontendChannel
1083 to avoid needlessly updating code all over the place.
1085 * inspector/CodeGeneratorInspectorStrings.py:
1086 * inspector/InspectorWorkerAgent.cpp:
1087 * inspector/WorkerInspectorController.cpp:
1088 * testing/Internals.cpp:
1089 Update include names.
1091 * page/ContextMenuController.cpp:
1092 (WebCore::ContextMenuController::populate):
1093 Make the "Inspect Element" context menu work correctly when there is a
1094 remote inspector instead of a local inspector.
1096 2013-12-03 Joseph Pecoraro <pecoraro@apple.com>
1098 Web Inspector: Add missing folders and files to Xcode project
1099 https://bugs.webkit.org/show_bug.cgi?id=124802
1101 Reviewed by Timothy Hatcher.
1103 * WebCore.xcodeproj/project.pbxproj:
1105 2013-12-04 José Dapena Paz <jdapena@igalia.com>
1107 [texmap] Borders on rotating images are hidden/wrongly rendered with edge distance antialiasing
1108 https://bugs.webkit.org/show_bug.cgi?id=124653
1110 Reviewed by Noam Rosenthal.
1112 Texture mapper edge distance antialiasing texture sampling was causing
1113 borders to be shaded (and made them almost disappear in some cases).
1114 This was because calculation of sampling happened on vertex shader, so
1115 the border of the texture would go to the border of the inflation area.
1117 What algorithm should do is sampling the border pixel for all the
1118 inflation area (it is the closest pixel to all the samples in
1119 inflation area), and then use the standard sampling for the other
1120 parts of the texture.
1122 No new test because this is already covered by test
1123 transforms/3d/point-mapping/3d-point-mapping.html
1125 * platform/graphics/texmap/TextureMapperShaderProgram.cpp: fix edge
1126 distance antialiasing texture sampling.
1128 2013-12-04 László Langó <lango@inf.u-szeged.hu>
1130 Typo fix after r160074 to fix debug builds.
1132 Reviewed by Csaba Osztrogonác.
1134 * platform/text/BidiResolver.h:
1135 (WebCore::MidpointState::stopIgnoringSpaces):
1137 2013-12-04 Zoltan Horvath <zoltan@webkit.org>
1139 Move space-ignoring inline functions into MidpointState
1140 <https://webkit.org/b/124957>
1142 Reviewed by David Hyatt.
1145 - The following inline functions were used only with a mandatory LineMidpointState argument:
1146 startIgnoringSpaces, stopIgnoringSpaces, ensureLineBoxInsideIgnoredSpaces, deprecatedAddMidpoint.
1147 - TrailingObjects class uses these functions. Since they're inline in BreakingContextInlineHeaders.h,
1148 it's hard to separate TrailingObjects into it's own file. (blocks bug #124956)
1149 I made these functions as a member of LineMidpointState, and I also updated the call sites.
1151 No new tests, no behavior change.
1153 * platform/text/BidiResolver.h:
1154 (WebCore::MidpointState::startIgnoringSpaces):
1155 (WebCore::MidpointState::stopIgnoringSpaces):
1156 (WebCore::MidpointState::ensureLineBoxInsideIgnoredSpaces):
1157 (WebCore::MidpointState::deprecatedAddMidpoint):
1158 * rendering/RenderBlock.h:
1159 * rendering/line/BreakingContextInlineHeaders.h:
1160 (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
1161 (WebCore::BreakingContext::handleBR):
1162 (WebCore::BreakingContext::handleOutOfFlowPositioned):
1163 (WebCore::shouldSkipWhitespaceAfterStartObject):
1164 (WebCore::BreakingContext::handleEmptyInline):
1165 (WebCore::BreakingContext::handleReplaced):
1166 (WebCore::ensureCharacterGetsLineBox):
1167 (WebCore::BreakingContext::handleText):
1169 2013-12-03 Zoltan Horvath <zoltan@webkit.org>
1171 Remove BreakingContext's friendship from RenderBlockFlow
1172 <https://webkit.org/b/124958>
1174 Reviewed by David Hyatt.
1176 BreakingContext uses only 2 functions from RenderBlockFlow: insertFloatingObject/positionNewFloatOnLine. I added helper
1177 functions to LineBreaker, what is already a friend of RenderBlockFlow, so BreakingContext doesn't need to be anymore.
1179 No new tests, no behavior change.
1181 * rendering/RenderBlockFlow.h:
1182 * rendering/line/BreakingContextInlineHeaders.h:
1183 (WebCore::BreakingContext::handleFloat):
1184 * rendering/line/LineBreaker.h:
1185 (WebCore::LineBreaker::insertFloatingObject):
1186 (WebCore::LineBreaker::positionNewFloatOnLine):
1188 2013-12-03 Ryosuke Niwa <rniwa@webkit.org>
1190 bgColor, setBgColor, alinkColor, setAlinkColor, and etc... on HTMLBodyElement are useless
1191 https://bugs.webkit.org/show_bug.cgi?id=125208
1193 Reviewed by Antti Koivisto.
1195 Merge https://chromium.googlesource.com/chromium/blink/+/49b1eeabbbf573d5271288c66d2b566cf33a09cf
1197 These member functions of HTMLBodyElement were only used by corresponding functions in HTMLDocument
1198 since they had the Reflect option specified in HTMLBodyElement.idl.
1200 Removed the functions and directly called getAttribute and setAttribute in relevant functions in
1201 HTMLDocument. The optimization to avoid assignment is no longer needed here since we've added that
1202 optimization to setAttributeInternal a while ago.
1204 * html/HTMLBodyElement.cpp:
1205 * html/HTMLBodyElement.h:
1206 * html/HTMLDocument.cpp:
1207 (WebCore::HTMLDocument::bgColor):
1208 (WebCore::HTMLDocument::setBgColor):
1209 (WebCore::HTMLDocument::fgColor):
1210 (WebCore::HTMLDocument::setFgColor):
1211 (WebCore::HTMLDocument::alinkColor):
1212 (WebCore::HTMLDocument::setAlinkColor):
1213 (WebCore::HTMLDocument::linkColor):
1214 (WebCore::HTMLDocument::setLinkColor):
1215 (WebCore::HTMLDocument::vlinkColor):
1216 (WebCore::HTMLDocument::setVlinkColor):
1217 * html/HTMLDocument.h:
1219 2013-12-03 Andreas Kling <akling@apple.com>
1221 Add a CSSProperty::isDirectionAwareProperty() helper.
1222 <https://webkit.org/b/125202>
1224 Move the block of case labels for checking whether a CSS property ID
1225 is a directional property into a separate function. Also removed an
1226 outdated comment about CSS variables.
1228 Reviewed by Antti Koivisto.
1230 2013-12-03 Ryosuke Niwa <rniwa@webkit.org>
1232 Revert the inadvertently committed change.
1234 * html/HTMLElement.idl:
1236 2013-12-03 Ryosuke Niwa <rniwa@webkit.org>
1238 Remove nodeIsDetachedFromDocument and visualWordMovementEnabled in FrameSelection
1239 https://bugs.webkit.org/show_bug.cgi?id=125210
1241 Reviewed by Antti Koivisto.
1243 Inspired by https://chromium.googlesource.com/chromium/blink/+/92409870f0ff8fafe31217830db0838a9e1ffb98
1245 Removed some unused code.
1247 * editing/FrameSelection.cpp:
1248 (WebCore::FrameSelection::textWasReplaced):
1249 * editing/FrameSelection.h:
1252 2013-12-03 Ryosuke Niwa <rniwa@webkit.org>
1254 Potential crash in RenderView::selectionBounds and RenderView::repaintSelection
1255 https://bugs.webkit.org/show_bug.cgi?id=125207
1257 Reviewed by Simon Fraser.
1259 Merge https://chromium.googlesource.com/chromium/blink/+/f9e6e288a5aa959f05c374806121aaf0fc52d440
1261 Update style in FrameSelection instead of RenderView's member functions. These are the last two
1262 member functions of RenderView that updates the style.
1264 * editing/FrameSelection.cpp:
1265 (WebCore::FrameSelection::focusedOrActiveStateChanged):
1266 (WebCore::FrameSelection::bounds):
1267 * rendering/RenderView.cpp:
1268 (WebCore::RenderView::selectionBounds):
1269 (WebCore::RenderView::repaintSelection):
1271 2013-12-03 Mark Rowe <mrowe@apple.com>
1273 <https://webkit.org/b/125143> Improve the formatting in the generated Objective-C headers.
1275 Add a space between @property and any parenthesized attributes.
1276 Prefer strong over retain when specifying memory management semantics.
1278 Reviewed by Darin Adler.
1280 * bindings/objc/PublicDOMInterfaces.h:
1281 * bindings/scripts/CodeGeneratorObjC.pm:
1282 (GetPropertyAttributes): Generate strong instead of retain. Include a
1283 space before the parenthesis.
1284 * bindings/scripts/test/ObjC/DOMTestActiveDOMObject.h:
1285 * bindings/scripts/test/ObjC/DOMTestEventConstructor.h:
1286 * bindings/scripts/test/ObjC/DOMTestException.h:
1287 * bindings/scripts/test/ObjC/DOMTestInterface.h:
1288 * bindings/scripts/test/ObjC/DOMTestObj.h:
1289 * bindings/scripts/test/ObjC/DOMTestSerializedScriptValueInterface.h:
1290 * bindings/scripts/test/ObjC/DOMTestTypedefs.h:
1291 * bindings/scripts/test/ObjC/DOMattribute.h:
1293 2013-12-03 Alexey Proskuryakov <ap@apple.com>
1295 Update WebCrypto JWK mapping to newer proposal
1296 https://bugs.webkit.org/show_bug.cgi?id=124218
1298 Reviewed by Anders Carlsson.
1300 Tests: crypto/subtle/jwk-export-use-values.html
1301 crypto/subtle/jwk-import-use-values.html
1303 1. "extractable" renamed to "ext" in JWK.
1304 2. New values for "use" mapping, which can now be combined into comma separated lists,
1305 and cover all possible WebCrypto usages.
1307 * bindings/js/JSCryptoKeySerializationJWK.cpp:
1308 (WebCore::JSCryptoKeySerializationJWK::reconcileUsages):
1309 (WebCore::JSCryptoKeySerializationJWK::reconcileExtractable):
1310 (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
1311 (WebCore::processUseValue):
1312 (WebCore::JSCryptoKeySerializationJWK::addJWKUseToJSON):
1313 (WebCore::JSCryptoKeySerializationJWK::serialize):
1315 2013-12-03 Simon Fraser <simon.fraser@apple.com>
1317 Remove some iOS-related documentScale code
1318 https://bugs.webkit.org/show_bug.cgi?id=125194
1320 Reviewed by Enrica Casucci.
1322 Remove exports of nonexistent documentScale-related functions on Frame.
1326 2013-12-03 Eric Carlson <eric.carlson@apple.com>
1328 Fix regression caused by r158599
1329 https://bugs.webkit.org/show_bug.cgi?id=125188
1331 Reviewed by Jer Noble.
1333 * html/HTMLMediaElement.cpp:
1334 (HTMLMediaElement::clearMediaPlayer): Do not clear m_player when PLUGIN_PROXY_FOR_VIDEO
1337 2013-12-03 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
1339 Nix Upstream: Updating WebCore files
1340 https://bugs.webkit.org/show_bug.cgi?id=124981
1342 Reviewed by Benjamin Poulain.
1344 Just to sync our github repo files and the trunk, as part of the upstream process
1346 No new tests needed.
1348 * PlatformNix.cmake:
1349 * css/mediaControlsNix.css:
1351 (video::-webkit-media-controls):
1352 (audio::-webkit-media-controls-enclosure, video::-webkit-media-controls-enclosure):
1353 (video::-webkit-media-controls-enclosure):
1354 (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
1355 (video:-webkit-full-page-media):
1356 (audio:-webkit-full-page-media, video:-webkit-full-page-media):
1357 (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
1358 (audio::-webkit-media-controls-overlay-play-button, video::-webkit-media-controls-overlay-play-button):
1359 (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
1360 (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
1361 (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
1362 (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
1363 (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
1364 (input[type="range"]::-webkit-media-slider-container):
1365 (input[type="range"]::-webkit-media-slider-container > div):
1366 (input[type="range"]::-webkit-media-slider-thumb):
1367 (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
1368 (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
1369 (audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button):
1370 (audio::-webkit-media-controls-toggle-closed-captions-button, video::-webkit-media-controls-toggle-closed-captions-button):
1371 (audio::-webkit-media-controls-fullscreen-volume-slider, video::-webkit-media-controls-fullscreen-volume-slider):
1372 (audio::-webkit-media-controls-fullscreen-volume-min-button, video::-webkit-media-controls-fullscreen-volume-min-button):
1373 (audio::-webkit-media-controls-fullscreen-volume-max-button, video::-webkit-media-controls-fullscreen-volume-max-button):
1374 (video::-webkit-media-text-track-container):
1376 (video::-webkit-media-text-track-region):
1377 (video::-webkit-media-text-track-region-container):
1378 (video::-webkit-media-text-track-region-container.scrolling):
1379 (video::-webkit-media-text-track-display):
1380 (video::cue(:future)):
1381 (video::-webkit-media-text-track-container b):
1382 (video::-webkit-media-text-track-container u):
1383 (video::-webkit-media-text-track-container i):
1384 * editing/Editor.cpp:
1385 (WebCore::Editor::cut):
1386 (WebCore::Editor::copy):
1387 (WebCore::Editor::copyImage):
1389 * html/HTMLCanvasElement.h:
1390 * platform/Cursor.h:
1391 * platform/audio/FFTFrame.h:
1392 * platform/audio/nix/AudioBusNix.cpp:
1393 (WebCore::AudioBus::loadPlatformResource):
1394 * platform/graphics/GLContext.h:
1395 * platform/nix/CursorNix.cpp:
1396 (WebCore::Cursor::ensurePlatformCursor):
1397 * platform/nix/GamepadsNix.cpp:
1398 (WebCore::sampleGamepads):
1399 * platform/nix/RenderThemeNix.cpp:
1400 (WebCore::toIntSize):
1401 (WebCore::toNixRect):
1402 (WebCore::RenderThemeNix::platformActiveSelectionBackgroundColor):
1403 (WebCore::RenderThemeNix::platformInactiveSelectionBackgroundColor):
1404 (WebCore::RenderThemeNix::platformActiveSelectionForegroundColor):
1405 (WebCore::RenderThemeNix::platformInactiveSelectionForegroundColor):
1406 (WebCore::RenderThemeNix::platformActiveListBoxSelectionBackgroundColor):
1407 (WebCore::RenderThemeNix::platformInactiveListBoxSelectionBackgroundColor):
1408 (WebCore::RenderThemeNix::platformActiveListBoxSelectionForegroundColor):
1409 (WebCore::RenderThemeNix::platformInactiveListBoxSelectionForegroundColor):
1410 (WebCore::RenderThemeNix::platformActiveTextSearchHighlightColor):
1411 (WebCore::RenderThemeNix::platformInactiveTextSearchHighlightColor):
1412 (WebCore::RenderThemeNix::platformFocusRingColor):
1413 (WebCore::RenderThemeNix::platformTapHighlightColor):
1414 (WebCore::RenderThemeNix::paintButton):
1415 (WebCore::RenderThemeNix::paintTextField):
1416 (WebCore::RenderThemeNix::paintCheckbox):
1417 (WebCore::RenderThemeNix::setCheckboxSize):
1418 (WebCore::RenderThemeNix::paintRadio):
1419 (WebCore::RenderThemeNix::setRadioSize):
1420 (WebCore::RenderThemeNix::paintMenuList):
1421 (WebCore::RenderThemeNix::paintProgressBar):
1422 (WebCore::RenderThemeNix::paintSliderTrack):
1423 (WebCore::RenderThemeNix::paintSliderThumb):
1424 (WebCore::RenderThemeNix::paintInnerSpinButton):
1425 (WebCore::RenderThemeNix::paintMeter):
1426 (WebCore::RenderThemeNix::extraMediaControlsStyleSheet):
1427 (WebCore::RenderThemeNix::paintMediaPlayButton):
1428 (WebCore::RenderThemeNix::paintMediaMuteButton):
1429 (WebCore::RenderThemeNix::paintMediaSeekBackButton):
1430 (WebCore::RenderThemeNix::paintMediaSeekForwardButton):
1431 (WebCore::RenderThemeNix::paintMediaSliderTrack):
1432 (WebCore::RenderThemeNix::paintMediaVolumeSliderContainer):
1433 (WebCore::RenderThemeNix::paintMediaVolumeSliderTrack):
1434 (WebCore::RenderThemeNix::paintMediaRewindButton):
1435 * platform/nix/RenderThemeNix.h:
1436 * rendering/SimpleLineLayout.cpp:
1437 (WebCore::SimpleLineLayout::canUseFor):
1439 2013-12-03 Ralph Thomas <ralpht@gmail.com>
1441 Typo: FixedPositionConstaint -> FixedPositionConstraint
1442 https://bugs.webkit.org/show_bug.cgi?id=125171
1444 Reviewed by Simon Fraser.
1446 No new tests, no change in behavior.
1448 * page/scrolling/ScrollingConstraints.h:
1449 * page/scrolling/coordinatedgraphics/ScrollingCoordinatorCoordinatedGraphics.cpp:
1450 (WebCore::ScrollingCoordinatorCoordinatedGraphics::updateViewportConstrainedNode):
1451 * page/scrolling/mac/ScrollingCoordinatorMac.mm:
1452 (WebCore::ScrollingCoordinatorMac::updateViewportConstrainedNode):
1454 2013-12-03 Samuel White <samuel_white@apple.com>
1456 AXPress event coordinates are always sent as (0, 0)
1457 https://bugs.webkit.org/show_bug.cgi?id=76677
1459 Reviewed by Simon Fraser.
1461 Set the coordinates of a simulated press equal to the center of the target
1462 element when the simulated press does not have a related mouse event.
1464 Test: accessibility/press-targets-center-point.html
1467 (WebCore::Element::clientRect):
1468 (WebCore::Element::screenRect):
1470 * dom/EventDispatcher.cpp:
1471 (WebCore::EventDispatcher::dispatchSimulatedClick):
1472 * dom/MouseEvent.cpp:
1473 (WebCore::SimulatedMouseEvent::create):
1474 (WebCore::SimulatedMouseEvent::SimulatedMouseEvent):
1477 2013-12-03 Dean Jackson <dino@apple.com>
1479 [WebGL] Implement OES texture float linear
1480 https://bugs.webkit.org/show_bug.cgi?id=124871
1482 Reviewed by Brent Fulgham.
1484 Implement the OES_texture_float_linear extension. Generally
1485 we'd also enable OES_texture_half_float_linear at the same
1486 time, but that's blocked on webkit.org/b/110936.
1488 Test: fast/canvas/webgl/oes-texture-float-linear.html
1490 * CMakeLists.txt: Add new files.
1491 * DerivedSources.cpp: Ditto.
1492 * DerivedSources.make: Generate new file from IDL.
1493 * GNUmakefile.list.am: Add new files.
1494 * WebCore.vcxproj/WebCore.vcxproj: Ditto.
1495 * WebCore.vcxproj/WebCore.vcxproj.filters: Ditto.
1496 * WebCore.xcodeproj/project.pbxproj: New files for OESTextureFloatLinear.
1498 * bindings/js/JSWebGLRenderingContextCustom.cpp:
1499 (WebCore::toJS): Map the new name into the appropriate type.
1501 * html/canvas/OESTextureFloatLinear.cpp: Added. This is a very simple class
1502 that's mostly empty.
1503 (WebCore::OESTextureFloatLinear::OESTextureFloatLinear):
1504 (WebCore::OESTextureFloatLinear::~OESTextureFloatLinear):
1505 (WebCore::OESTextureFloatLinear::getName):
1506 (WebCore::OESTextureFloatLinear::create):
1507 * html/canvas/OESTextureFloatLinear.h: Added.
1508 * html/canvas/OESTextureFloatLinear.idl: Added.
1510 * html/canvas/WebGLExtension.h: Declare the new name in the enum of extensions.
1512 * html/canvas/WebGLRenderingContext.cpp:
1513 (WebCore::WebGLRenderingContext::drawArrays): Call new name.
1514 (WebCore::WebGLRenderingContext::drawElements): Call new name.
1515 (WebCore::WebGLRenderingContext::getExtension): Create the new extension if asked.
1516 (WebCore::WebGLRenderingContext::checkTextureCompleteness): Renamed from handleNPOTTextures. Now
1517 checks for the type of the texture too.
1518 * html/canvas/WebGLRenderingContext.h: Member variable for new extension.
1520 * html/canvas/WebGLTexture.cpp:
1521 (WebCore::WebGLTexture::WebGLTexture):
1522 (WebCore::WebGLTexture::needToUseBlackTexture): Takes an extra parameter which indicates
1523 if it has an extension enabled.
1524 (WebCore::WebGLTexture::update): Note it is a float type when updating.
1525 * html/canvas/WebGLTexture.h: New flag to indicate float type.
1527 * platform/graphics/Extensions3D.h: New flag type.
1528 * platform/graphics/opengl/Extensions3DOpenGL.cpp:
1529 (WebCore::Extensions3DOpenGL::supportsExtension): Add a comment about the extension.
1531 2013-12-03 Alexey Proskuryakov <ap@apple.com>
1533 Support exporting private WebCrypto RSA keys
1534 https://bugs.webkit.org/show_bug.cgi?id=124483
1536 Reviewed by Anders Carlsson.
1538 Test: crypto/subtle/rsa-export-private-key.html
1540 It might be better to have our own bignum implementation in WTF, but we currently
1541 don't, and the need for this computation is Common Crypto specific anyway.
1543 * crypto/CommonCryptoUtilities.h:
1544 * crypto/CommonCryptoUtilities.cpp:
1545 (WebCore::CCBigNum::CCBigNum):
1546 (WebCore::CCBigNum::~CCBigNum):
1547 (WebCore::CCBigNum::operator=):
1548 (WebCore::CCBigNum::data):
1549 (WebCore::CCBigNum::operator-):
1550 (WebCore::CCBigNum::operator%):
1551 (WebCore::CCBigNum::inverse):
1552 Added a minimal wrapper around CommonCrypto BigNum.
1554 * crypto/mac/CryptoKeyRSAMac.cpp:
1555 (WebCore::getPrivateKeyComponents): Compute missing parts using CCBigNum.
1556 (WebCore::CryptoKeyRSA::exportData): Implemented private key case.
1558 2013-12-03 Ryosuke Niwa <rniwa@webkit.org>
1560 XML fragment parsing algorithm doesn't use the context element's default namespace URI
1561 https://bugs.webkit.org/show_bug.cgi?id=125132
1563 Reviewed by Darin Adler.
1565 Always use the context element's namespace as the default namespace URI when one is not specified by xmlns.
1567 The new behavior matches that of Internet Explorer and the specified behavior in HTML5:
1568 http://www.w3.org/TR/2013/CR-html5-20130806/the-xhtml-syntax.html#parsing-xhtml-fragments
1570 "The default namespace is the namespace for which the DOM isDefaultNamespace() method on the element would
1573 Test: fast/parser/fragment-parsing-in-document-without-xmlns.html
1575 * xml/parser/XMLDocumentParserLibxml2.cpp:
1576 (WebCore::XMLDocumentParser::XMLDocumentParser):
1578 2013-12-03 Nick Diego Yamane <nick.yamane@openbossa.org>
1580 Remove some CSS Variables leftovers
1581 https://bugs.webkit.org/show_bug.cgi?id=125167
1583 Reviewed by Darin Adler.
1585 No new tests needed. Only removing leftover code.
1587 * css/CSSBasicShapes.cpp:
1588 * css/CSSBasicShapes.h:
1590 2013-12-03 Myles C. Maxfield <mmaxfield@apple.com>
1592 Checking second-to-last bit in address is a typo
1593 https://bugs.webkit.org/show_bug.cgi?id=125162
1595 Reviewed by Darin Adler.
1597 After talking with the original author of this line,
1598 is was a typo to make sure that the second-to-last bit
1599 in an address is 0. Instead, we want to make sure that
1600 the address is aligned to a 4-byte boundary
1602 No behavior change, so no test is necessary
1604 * platform/graphics/cg/ImageBufferCG.cpp:
1605 (WebCore::ImageBuffer::ImageBuffer):
1607 2013-12-03 Radu Stavila <stavila@adobe.com>
1609 The overflow border of a relatively positioned element inside a region is not painted
1610 https://bugs.webkit.org/show_bug.cgi?id=124919
1612 Relative positioned elements have self-painting layers that don't propagate the visual overflow
1613 so the layer's position should be used when determining the clipping rectangle for box decorations.
1615 Reviewed by Mihnea Ovidenie.
1617 Test: fast/regions/relative-borders-overflow.html
1619 * rendering/RenderFlowThread.cpp:
1620 (WebCore::RenderFlowThread::decorationsClipRectForBoxInRegion):
1622 2013-12-03 Seokju Kwon <seokju@webkit.org>
1624 Web Inspector: Get rid of 'hasFrontend()' in InspectorController and WorkerInspectorController
1625 https://bugs.webkit.org/show_bug.cgi?id=125135
1627 Reviewed by Darin Adler.
1629 Remove 'hasFrontend()' from InspectorController and WorkerInspectorController
1630 as it's never called.
1632 No new tests, no behavior changes.
1634 * inspector/InspectorController.h:
1635 * inspector/WorkerInspectorController.h:
1637 2013-12-03 Seokju Kwon <seokju@webkit.org>
1639 Web Inspector: webViewResized() is not used anywhere in WebInspectorUI
1640 https://bugs.webkit.org/show_bug.cgi?id=125137
1642 Reviewed by Darin Adler.
1644 Remove leftover code.
1646 No new tests, no behavior changes.
1648 * inspector/InspectorController.cpp:
1649 * inspector/InspectorController.h:
1650 * inspector/InspectorOverlay.cpp:
1651 * inspector/InspectorOverlay.h:
1652 * inspector/InspectorPageAgent.cpp:
1653 * inspector/InspectorPageAgent.h:
1655 2013-12-03 László Langó <lango@inf.u-szeged.hu>
1657 ASSERTION FAILED: !value || (value->isPrimitiveValue()) in WebCore::StyleProperties::getLayeredShorthandValue.
1658 https://bugs.webkit.org/show_bug.cgi?id=125146
1660 Reviewed by Darin Adler.
1662 Do not presume that |yValue| is primitive if |value| is implicit in StylePropertySerializer.
1663 An implicit y-value can become explicit if specified as a separate longhand.
1664 At the same time, its new value can be non-primitive.
1666 Backported from Blink:
1667 http://src.chromium.org/viewvc/blink?view=rev&rev=153678
1669 Test: fast/css/webkit-mask-crash-implicit.html
1671 * css/StyleProperties.cpp:
1672 (WebCore::StyleProperties::getLayeredShorthandValue):
1674 2013-12-03 Rob Buis <rob.buis@samsung.com>
1676 Fix build break after r160007.
1678 * rendering/style/BasicShapes.cpp:
1679 (WebCore::BasicShape::canBlend):
1681 2013-12-03 Rob Buis <rob.buis@samsung.com>
1683 [css shapes] layout for new ellipse syntax
1684 https://bugs.webkit.org/show_bug.cgi?id=124621
1686 Reviewed by Dirk Schulze.
1688 Implement support for doing layout with the new ellipse shape syntax,
1689 including basic animation support.
1691 Test: fast/shapes/shape-outside-floats/shape-outside-floats-ellipse-000.html
1693 * rendering/shapes/Shape.cpp:
1694 (WebCore::Shape::createShape): Convert new ellipse to a layout shape.
1695 * rendering/style/BasicShapes.cpp:
1696 (WebCore::BasicShape::canBlend): Ignore ellipses with values that
1697 cannot be interpolated.
1698 (WebCore::BasicShapeEllipse::floatValueForRadiusInBox): Helper function to calculate
1699 either radiusX or radiusY, shared by clip-path and shape code paths.
1700 (WebCore::BasicShapeEllipse::path):
1701 * rendering/style/BasicShapes.h:
1703 2013-12-03 Frédéric Wang <fred.wang@free.fr>
1705 Add an MathMLSelectElement class to implement <maction> and <semantics>.
1706 <https://webkit.org/b/120058>
1708 Reviewed by Chris Fleizach.
1710 Tests: mathml/presentation/maction-dynamic.html
1711 mathml/presentation/maction.html
1712 mathml/presentation/semantics.html
1714 This adds a new MathMLSelectElement class to prepare the implementation
1715 of the <maction> and <semantics> elements, for which only one "selected"
1716 child is visible. We now simply display the first child of the
1717 <semantics> element instead of hiding the annotations and this allows to
1718 handle the use case of SVG-in-MathML as generated by Instiki when
1719 bug 124128 is fixed ; Gecko's selection algorithm will be implemented
1720 later (bug 100626). We now also rely on the @actiontype and @selection
1721 attributes to select the visible <maction> child ; It remains to deal
1722 with the user interaction (bug 85734).
1724 * CMakeLists.txt: add the new files.
1725 * GNUmakefile.list.am: ditto
1727 * WebCore.vcxproj/WebCore.vcxproj: ditto
1728 * WebCore.vcxproj/WebCore.vcxproj.filters: ditto
1729 * WebCore.xcodeproj/project.pbxproj: ditto
1730 * css/mathml.css: remove the CSS rule for annotation/annotation-xml.
1731 * mathml/MathMLAllInOne.cpp: add the new cpp file.
1732 * mathml/MathMLSelectElement.cpp: Added.
1733 (WebCore::MathMLSelectElement::MathMLSelectElement):
1734 (WebCore::MathMLSelectElement::create):
1735 (WebCore::MathMLSelectElement::createRenderer):
1736 (WebCore::MathMLSelectElement::childShouldCreateRenderer):
1737 (WebCore::MathMLSelectElement::finishParsingChildren):
1738 (WebCore::MathMLSelectElement::childrenChanged):
1739 (WebCore::MathMLSelectElement::attributeChanged):
1740 (WebCore::MathMLSelectElement::updateSelectedChild): basic implementation for maction, semantics, maction@actiontype and maction@selection.
1741 * mathml/MathMLSelectElement.h: Added.
1742 * mathml/mathattrs.in: add actiontype and selection attributes.
1743 * mathml/mathtags.in: set element classes for maction, semantics, annotation and annotation-xml.
1745 2013-12-03 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
1747 Nix Upstream: Adding missing nix new files to WebCore
1748 https://bugs.webkit.org/show_bug.cgi?id=124987
1750 Reviewed by Benjamin Poulain.
1752 No new tests needed.
1754 * PlatformNix.cmake:
1755 * platform/nix/ErrorsNix.cpp: Added.
1756 * platform/nix/ErrorsNix.h: Added.
1757 * platform/nix/FileSystemNix.cpp: Added.
1758 * platform/nix/MIMETypeRegistryNix.cpp: Added.
1759 * platform/nix/SharedTimerNix.cpp: Added.
1760 * platform/nix/TemporaryLinkStubs.cpp: Added.
1762 2013-12-03 Tamas Gergely <gertom@inf.u-szeged.hu>
1764 Correct broken build on efl port with --no-netscape-plugin-api
1766 https://bugs.webkit.org/show_bug.cgi?id=123997
1768 Reviewed by Zoltan Herczeg.
1770 Build failed on efl port with --no-netscape-plugin-api configuration
1771 as ld did not found some methods. The configuration uses a minimal
1772 empty implementation of the class, which is now extended with empty
1773 method implementations.
1775 * plugins/PluginPackageNone.cpp:
1776 (WebCore::PluginPackage::createPackage):
1777 Returns NULL pointer.
1778 (WebCore::PluginPackage::hash):
1780 (WebCore::PluginPackage::equal):
1781 Returns true (equals).
1782 (WebCore::PluginPackage::compare):
1784 (WebCore::PluginPackage::~PluginPackage):
1787 2013-12-02 Andreas Kling <akling@apple.com>
1789 Avoid setting style twice for generated image content.
1790 <https://webkit.org/b/125128>
1792 Take care of a FIXME I added in r158097 and avoid redundant work in
1793 ImageContentData::createRenderer().
1795 I changed the inheritance helper RenderImage::setPseudoStyle() into
1796 a new createStyleInheritingFromPseudoStyle() function instead so it
1797 can be used from both PseudoElement and ImageContentData.
1799 Reviewed by Antti Koivisto.
1801 2013-12-02 Samuel White <samuel_white@apple.com>
1803 AX: Add AXUIElementCountForSearchPredicate parameterized attribute.
1804 https://bugs.webkit.org/show_bug.cgi?id=124561
1806 Reviewed by Chris Fleizach.
1808 Added ability to fetch the number of elements that match a specific criteria. This will enable VoiceOver
1809 to interface with WebKit much more dynamically. We can now get an idea of how many interesting elements
1810 exist on a page, and then fetch them in chunks as needed.
1812 Test: platform/mac/accessibility/search-predicate-element-count.html
1814 * accessibility/AccessibilityObject.cpp:
1815 (WebCore::AccessibilityObject::isAccessibilityTextSearchMatch):
1816 * accessibility/AccessibilityObject.h:
1817 (WebCore::AccessibilitySearchCriteria::AccessibilitySearchCriteria):
1818 * accessibility/mac/WebAccessibilityObjectWrapperMac.mm:
1819 (accessibilitySearchCriteriaForSearchPredicateParameterizedAttribute):
1820 (-[WebAccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
1821 (-[WebAccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1823 2013-12-02 Bem Jones-Bey <bjonesbe@adobe.com>
1825 [css shapes] Layout support for new circle shape syntax
1826 https://bugs.webkit.org/show_bug.cgi?id=124619
1828 Reviewed by Dirk Schulze.
1830 Implement support for doing layout with the new circle shape syntax,
1831 inclduing basic animation support.
1833 Tests: fast/shapes/shape-outside-floats/shape-outside-floats-circle-000.html
1834 fast/shapes/shape-outside-floats/shape-outside-floats-circle-001.html
1835 fast/shapes/shape-outside-floats/shape-outside-floats-circle-002.html
1836 fast/shapes/shape-outside-floats/shape-outside-floats-circle-003.html
1837 fast/shapes/shape-outside-floats/shape-outside-floats-circle-004.html
1838 fast/shapes/shape-outside-floats/shape-outside-floats-circle-005.html
1840 * css/BasicShapeFunctions.cpp:
1841 (WebCore::floatValueForCenterCoordinate): Used by both the CSS Shapes
1842 layout code and the clip path code.
1843 * css/BasicShapeFunctions.h:
1844 * css/CSSBasicShapes.cpp:
1845 (WebCore::buildCircleString): Update to use appendLiteral, and remove
1846 call to reserveCapacity - if we find that it's actually slow when
1847 doing performance tests, we can hopefully do something smarter and
1848 less ugly than that.
1849 * css/CSSParser.cpp:
1850 (WebCore::CSSParser::parseShapeRadius): Fix a logic error that caused
1851 the radius keywords not to work properly.
1852 * rendering/shapes/Shape.cpp:
1853 (WebCore::Shape::createShape): Convert new circle to a layout shape.
1854 * rendering/style/BasicShapes.cpp:
1855 (WebCore::BasicShape::canBlend): Ignore circles with values that
1856 cannot be interpolated.
1857 (WebCore::BasicShapeCircle::floatValueForRadiusInBox): Convert circle
1858 radius keywords to a float value.
1859 (WebCore::BasicShapeCircle::path):
1860 (WebCore::BasicShapeCircle::blend):
1861 * rendering/style/BasicShapes.h:
1862 (WebCore::BasicShapeCenterCoordinate::canBlend):
1863 (WebCore::BasicShapeRadius::canBlend):
1865 2013-12-02 Alexey Proskuryakov <ap@apple.com>
1867 WebCrypto HMAC doesn't check key algorithm's hash
1868 https://bugs.webkit.org/show_bug.cgi?id=125114
1870 Reviewed by Anders Carlsson.
1872 Test: crypto/subtle/hmac-check-algorithm.html
1874 * crypto/algorithms/CryptoAlgorithmHMAC.cpp:
1875 (WebCore::CryptoAlgorithmHMAC::keyAlgorithmMatches): Check it.
1877 2013-12-02 Brady Eidson <beidson@apple.com>
1879 Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
1880 https://bugs.webkit.org/show_bug.cgi?id=125110
1882 Reviewed by Darin Adler.
1884 FrameLoader::loadProgressingStatusChanged() might be called while the Frame has a null FrameView.
1886 It’s unclear how to reproduce, but there’s no harm in a null check.
1888 * loader/FrameLoader.cpp:
1889 (WebCore::FrameLoader::loadProgressingStatusChanged):
1891 2013-12-02 Brady Eidson <beidson@apple.com>
1893 Possible crash in ProgressTracker::progressHeartbeatTimerFired(Timer<ProgressTracker>*)
1894 https://bugs.webkit.org/show_bug.cgi?id=125110
1896 Reviewed by Darin Adler.
1898 It’s possible to have a null m_originatingProgressFrame when the heartbeat timer fires.
1900 On the surface this seems impossible because the only time m_originatingProgressFrame is cleared
1901 out the heartbeat timer is also stopped.
1903 But there’s likely still a race condition in multi-threaded environments.
1905 There’s no harm in null-checking m_originatingProgressFrame before accessing its loader.
1907 * loader/ProgressTracker.cpp:
1908 (WebCore::ProgressTracker::progressHeartbeatTimerFired):
1910 2013-12-02 Brady Eidson <beidson@apple.com>
1912 Add more CachedPage null checks
1913 https://bugs.webkit.org/show_bug.cgi?id=125106
1915 Reviewed by Sam Weinig.
1917 Only some functions in PageCache.cpp null-check the CachedPages in HistoryItems.
1919 Every part that manipulates the CachedPage should.
1921 * history/PageCache.cpp:
1922 (WebCore::PageCache::markPagesForVistedLinkStyleRecalc):
1923 (WebCore::PageCache::markPagesForFullStyleRecalc):
1924 (WebCore::PageCache::markPagesForDeviceScaleChanged):
1925 (WebCore::PageCache::markPagesForCaptionPreferencesChanged):
1927 2013-12-02 Zoltan Horvath <zoltan@webkit.org>
1929 [CSS Shapes] Support inset parsing
1930 https://bugs.webkit.org/show_bug.cgi?id=124903
1932 Reviewed by David Hyatt.
1934 In this patch I added support for inset shape parsing for CSS Shapes. Inset is defined
1935 by CSS Shapes Level 1 (http://dev.w3.org/csswg/css-shapes-1/#supported-basic-shapes).
1936 Inset is going to be used by shape-outside (bug #124905), and eventually by shape-inside.
1938 No new tests, I updated existing tests to cover the changes.
1940 * css/BasicShapeFunctions.cpp:
1941 (WebCore::valueForBasicShape): Add support for inset.
1942 (WebCore::basicShapeForValue): Add support for inset.
1943 * css/CSSBasicShapes.cpp:
1944 (WebCore::buildInsetString): Create inset css string.
1945 (WebCore::CSSBasicShapeInset::cssText): Convert inset shape to a CSS string.
1946 (WebCore::CSSBasicShapeInset::equals): Compare two inset rectangles.
1947 (WebCore::CSSBasicShapeInset::serializeResolvingVariables): Create an inset string, with CSS variables resolved.
1948 (WebCore::CSSBasicShapeInset::hasVariableReference): Determine if this inset has any CSS Variable references.
1949 * css/CSSBasicShapes.h: Add inset class.
1950 (WebCore::CSSBasicShapeInset::create):
1951 (WebCore::CSSBasicShapeInset::top):
1952 (WebCore::CSSBasicShapeInset::right):
1953 (WebCore::CSSBasicShapeInset::bottom):
1954 (WebCore::CSSBasicShapeInset::left):
1955 (WebCore::CSSBasicShapeInset::topLeftRadius):
1956 (WebCore::CSSBasicShapeInset::topRightRadius):
1957 (WebCore::CSSBasicShapeInset::bottomRightRadius):
1958 (WebCore::CSSBasicShapeInset::bottomLeftRadius):
1959 (WebCore::CSSBasicShapeInset::setTop):
1960 (WebCore::CSSBasicShapeInset::setRight):
1961 (WebCore::CSSBasicShapeInset::setBottom):
1962 (WebCore::CSSBasicShapeInset::setLeft):
1963 (WebCore::CSSBasicShapeInset::setTopLeftRadius):
1964 (WebCore::CSSBasicShapeInset::setTopRightRadius):
1965 (WebCore::CSSBasicShapeInset::setBottomRightRadius):
1966 (WebCore::CSSBasicShapeInset::setBottomLeftRadius):
1967 (WebCore::CSSBasicShapeInset::CSSBasicShapeInset):
1968 * css/CSSParser.cpp:
1969 (WebCore::completeBorderRadii): Move static function before parseInsetBorderRadius.
1970 (WebCore::CSSParser::parseInsetRoundedCorners): I added this helper function for parsing the rounded corners
1971 (WebCore::CSSParser::parseBasicShapeInset): Parse inset.
1972 (WebCore::CSSParser::parseBasicShape): Add call to parse inset.
1974 * css/CSSPrimitiveValue.cpp:
1975 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Add constructor for LengthSize.
1976 (WebCore::CSSPrimitiveValue::init): Initialize LengthSize.
1977 * css/CSSPrimitiveValue.h:
1978 (WebCore::CSSPrimitiveValue::create): Add support for creating PrimitiveValue from LengthSize.
1979 * css/CSSValuePool.h:
1980 (WebCore::CSSValuePool::createValue): Add support for LengthSize.
1981 * platform/LengthSize.h:
1982 (WebCore::LengthSize::blend): Add blend for LengthSize.
1983 * rendering/shapes/ShapeInsideInfo.cpp:
1984 (WebCore::ShapeInsideInfo::isEnabledFor): Keep inset disabled for shape-inside now.
1985 * rendering/style/BasicShapes.cpp:
1986 (WebCore::BasicShapeInset::path): Calculate path for an inset.
1987 (WebCore::BasicShapeInset::blend): Blend two insets.
1988 * rendering/style/BasicShapes.h: Add higher level inset.
1989 (WebCore::BasicShapeInset::create):
1990 (WebCore::BasicShapeInset::top):
1991 (WebCore::BasicShapeInset::right):
1992 (WebCore::BasicShapeInset::bottom):
1993 (WebCore::BasicShapeInset::left):
1994 (WebCore::BasicShapeInset::topLeftRadius):
1995 (WebCore::BasicShapeInset::topRightRadius):
1996 (WebCore::BasicShapeInset::bottomRightRadius):
1997 (WebCore::BasicShapeInset::bottomLeftRadius):
1998 (WebCore::BasicShapeInset::setTop):
1999 (WebCore::BasicShapeInset::setRight):
2000 (WebCore::BasicShapeInset::setBottom):
2001 (WebCore::BasicShapeInset::setLeft):
2002 (WebCore::BasicShapeInset::setTopLeftRadius):
2003 (WebCore::BasicShapeInset::setTopRightRadius):
2004 (WebCore::BasicShapeInset::setBottomRightRadius):
2005 (WebCore::BasicShapeInset::setBottomLeftRadius):
2006 (WebCore::BasicShapeInset::BasicShapeInset):
2008 2013-12-02 Alexey Proskuryakov <ap@apple.com>
2010 Support WebCrypto AES-KW
2011 https://bugs.webkit.org/show_bug.cgi?id=125105
2013 Reviewed by Sam Weinig.
2015 Tests: crypto/subtle/aes-kw-key-manipulation.html
2016 crypto/subtle/aes-kw-wrap-unwrap-aes.html
2018 * WebCore.xcodeproj/project.pbxproj: Added new files.
2020 * crypto/CryptoAlgorithmIdentifier.h: (WebCore::CryptoAlgorithmIdentifier): Added AES-KW.
2021 It's not standardized yet, but there appears to be a consensus that it will be specified.
2023 * bindings/js/JSCryptoAlgorithmDictionary.cpp:
2024 (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
2025 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
2026 (WebCore::JSCryptoAlgorithmDictionary::createParametersForSign):
2027 (WebCore::JSCryptoAlgorithmDictionary::createParametersForVerify):
2028 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDigest):
2029 (WebCore::JSCryptoAlgorithmDictionary::createParametersForGenerateKey):
2030 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveKey):
2031 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDeriveBits):
2032 (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
2033 (WebCore::JSCryptoAlgorithmDictionary::createParametersForExportKey):
2034 Added AES-KW cases everywhere.
2036 * bindings/js/JSCryptoKeySerializationJWK.cpp:
2037 (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
2038 (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
2039 (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
2040 Support importing/exporting AES-KW keys in JWK.
2042 * bindings/js/JSSubtleCryptoCustom.cpp:
2043 (WebCore::JSSubtleCrypto::importKey):
2044 (WebCore::JSSubtleCrypto::exportKey):
2045 (WebCore::JSSubtleCrypto::wrapKey):
2046 (WebCore::JSSubtleCrypto::unwrapKey):
2047 Added some accidentally forgotten std::moves.
2049 * crypto/algorithms/CryptoAlgorithmAES_KW.cpp: Added.
2050 * crypto/algorithms/CryptoAlgorithmAES_KW.h: Added.
2051 * crypto/mac/CryptoAlgorithmAES_KWMac.cpp: Added.
2053 * crypto/keys/CryptoKeyAES.cpp: (WebCore::CryptoKeyAES::CryptoKeyAES): Allow AES-KW
2054 as valid algorithm for AES keys.
2056 * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
2057 (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register AES-KW.
2059 2013-12-02 Beth Dakin <bdakin@apple.com>
2061 Add a setting to opt into a mode where the background extends and fixed elements
2062 don't move on rubber-band
2063 https://bugs.webkit.org/show_bug.cgi?id=124745
2065 Reviewed by Tim Horton.
2067 New setting backgroundShouldExtendBeyondPage() will cause the tile cache to have a
2068 margin, and it will also cause fixed elements and backgrounds to stick to the
2069 viewport on scroll instead of sticking to the document.
2072 * page/FrameView.cpp:
2073 (WebCore::FrameView::scrollBehaviorForFixedElements):
2075 * rendering/RenderLayerBacking.cpp:
2076 (WebCore::RenderLayerBacking::RenderLayerBacking):
2078 2013-12-02 Roger Zanoni <rogerzanoni@gmail.com>
2080 [MediaStream] Use iterator-based loops instead of index-based loops
2081 https://bugs.webkit.org/show_bug.cgi?id=125021
2083 Reviewed by Eric Carlson.
2085 Also, changing iterator variable names from iter to it and
2086 initializing an 'end' variable in each loop instead of evaluating
2087 'collection.end()' multiple times.
2089 No new tests, covered by existing ones.
2091 * Modules/mediastream/MediaStream.cpp:
2092 (WebCore::MediaStream::cloneMediaStreamTrackVector):
2093 (WebCore::MediaStream::haveTrackWithSource):
2094 (WebCore::MediaStream::getTrackById):
2095 (WebCore::MediaStream::trackDidEnd):
2096 (WebCore::MediaStream::scheduledEventTimerFired):
2098 2013-12-02 Rob Buis <rob.buis@samsung.com>
2100 [css shapes] Parse new ellipse shape syntax
2101 https://bugs.webkit.org/show_bug.cgi?id=124620
2103 Reviewed by Dirk Schulze.
2105 Implement parsing of the new ellipse shape syntax. This closely follows the patch
2106 for the new circle syntax (https://bugs.webkit.org/show_bug.cgi?id=124618), with
2107 some refactoring of functionality shared by both.
2109 Updated existing parsing tests to cover this.
2111 * css/BasicShapeFunctions.cpp:
2112 (WebCore::BasicShapeRadiusToCSSValue):
2113 (WebCore::valueForBasicShape):
2114 (WebCore::CSSValueToBasicShapeRadius):
2115 (WebCore::basicShapeForValue):
2116 * css/CSSBasicShapes.cpp:
2117 (WebCore::buildEllipseString):
2118 (WebCore::CSSBasicShapeEllipse::cssText):
2119 (WebCore::CSSBasicShapeEllipse::equals):
2120 (WebCore::buildDeprecatedEllipseString):
2121 (WebCore::CSSDeprecatedBasicShapeEllipse::cssText):
2122 (WebCore::CSSDeprecatedBasicShapeEllipse::equals):
2123 * css/CSSBasicShapes.h:
2124 (WebCore::CSSDeprecatedBasicShapeEllipse::create):
2125 (WebCore::CSSDeprecatedBasicShapeEllipse::centerX):
2126 (WebCore::CSSDeprecatedBasicShapeEllipse::centerY):
2127 (WebCore::CSSDeprecatedBasicShapeEllipse::radiusX):
2128 (WebCore::CSSDeprecatedBasicShapeEllipse::radiusY):
2129 (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterX):
2130 (WebCore::CSSDeprecatedBasicShapeEllipse::setCenterY):
2131 (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusX):
2132 (WebCore::CSSDeprecatedBasicShapeEllipse::setRadiusY):
2133 (WebCore::CSSDeprecatedBasicShapeEllipse::CSSDeprecatedBasicShapeEllipse):
2134 * css/CSSParser.cpp:
2135 (WebCore::CSSParser::parseBasicShapeEllipse):
2136 (WebCore::CSSParser::parseDeprecatedBasicShapeEllipse):
2137 (WebCore::CSSParser::parseBasicShape):
2139 * rendering/shapes/Shape.cpp:
2140 (WebCore::Shape::createShape):
2141 * rendering/style/BasicShapes.cpp:
2142 (WebCore::DeprecatedBasicShapeEllipse::path):
2143 (WebCore::DeprecatedBasicShapeEllipse::blend):
2144 (WebCore::BasicShapeEllipse::path):
2145 (WebCore::BasicShapeEllipse::blend):
2146 * rendering/style/BasicShapes.h:
2147 (WebCore::BasicShapeEllipse::centerX):
2148 (WebCore::BasicShapeEllipse::centerY):
2149 (WebCore::BasicShapeEllipse::radiusX):
2150 (WebCore::BasicShapeEllipse::radiusY):
2151 (WebCore::BasicShapeEllipse::setCenterX):
2152 (WebCore::BasicShapeEllipse::setCenterY):
2153 (WebCore::BasicShapeEllipse::setRadiusX):
2154 (WebCore::BasicShapeEllipse::setRadiusY):
2155 (WebCore::BasicShapeEllipse::BasicShapeEllipse):
2156 (WebCore::DeprecatedBasicShapeEllipse::create):
2157 (WebCore::DeprecatedBasicShapeEllipse::DeprecatedBasicShapeEllipse):
2159 2013-12-02 Alexey Proskuryakov <ap@apple.com>
2161 Add support for WebCrypto RSA-OAEP
2162 https://bugs.webkit.org/show_bug.cgi?id=125084
2166 * crypto/CommonCryptoUtilities.h:
2167 * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
2168 * crypto/mac/CryptoKeyRSAMac.cpp:
2170 2013-12-02 Brendan Long <b.long@cablelabs.com>
2172 Use GenericEventQueue in TrackListBase and reduce code duplication with scheduleTrackEvent()
2173 https://bugs.webkit.org/show_bug.cgi?id=124811
2175 Reviewed by Eric Carlson.
2177 No new tests because this is just refactoring.
2179 * html/track/TrackListBase.cpp:
2180 (TrackListBase::TrackListBase): Replace event code with a GenericEventQueue.
2181 (TrackListBase::scheduleTrackEvent): Factor out duplicate code in schedule{Add,Remove}TrackEvent functions.
2182 (TrackListBase::scheduleAddTrackEvent): Same.
2183 (TrackListBase::scheduleRemoveTrackEvent): Same.
2184 (TrackListBase::scheduleChangeEvent): Use GenericEventQueue.
2185 * html/track/TrackListBase.h: Replace event code with GenericEventQueue.
2187 2013-12-02 Alexey Proskuryakov <ap@apple.com>
2189 Add support for WebCrypto RSA-OAEP
2190 https://bugs.webkit.org/show_bug.cgi?id=125084
2194 * WebCore.xcodeproj/project.pbxproj: Fix an automatic merge failure by re-adding
2195 CryptoAlgorithmRsaOaepParams.h.
2197 2013-12-02 Victor Jaquez <vjaquez@igalia.com>
2199 [Gstreamer] update webkitvideosink metadata
2200 https://bugs.webkit.org/show_bug.cgi?id=125082
2202 Reviewed by Philippe Normand.
2204 No new tests, no behavior changes.
2206 * platform/graphics/gstreamer/VideoSinkGStreamer.cpp:
2207 (webkit_video_sink_class_init):
2209 2013-12-02 Víctor Manuel Jáquez Leal <vjaquez@igalia.com>
2211 Simplify MediaPlayerPrivateGStreamerBase::createVideoSink()
2212 https://bugs.webkit.org/show_bug.cgi?id=125077
2214 Remove the method's unused parameter.
2215 Remove the GStreamer 0.10.22 run-time validation, since we are using
2216 GStreamer 1.0 officially.
2217 Remove the creation of a spurious Bin for the video sink, since
2218 either the fpssink or the webkitsink are valid sink elements.
2219 Change fpsink to a GRefPtr.
2221 Now, createVideoSink() returns a simple pointer to the created sink
2224 Reviewed by Philippe Normand.
2226 No new tests, no behavior changes.
2228 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
2229 (WebCore::MediaPlayerPrivateGStreamer::createGSTPlayBin):
2230 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.cpp:
2231 (WebCore::MediaPlayerPrivateGStreamerBase::createVideoSink):
2232 (WebCore::MediaPlayerPrivateGStreamerBase::decodedFrameCount):
2233 (WebCore::MediaPlayerPrivateGStreamerBase::droppedFrameCount):
2234 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamerBase.h:
2236 2013-12-02 Alexey Proskuryakov <ap@apple.com>
2238 Add support for WebCrypto RSA-OAEP
2239 https://bugs.webkit.org/show_bug.cgi?id=125084
2241 Reviewed by Sam Weinig.
2243 Tests: crypto/subtle/rsa-oaep-key-manipulation.html
2244 crypto/subtle/rsa-oaep-plaintext-length.html
2245 crypto/subtle/rsa-oaep-wrap-unwrap-aes.html
2247 * WebCore.xcodeproj/project.pbxproj: Added new files.
2249 * bindings/js/JSCryptoAlgorithmDictionary.cpp:
2250 (WebCore::createRsaOaepParams):
2251 (WebCore::JSCryptoAlgorithmDictionary::createParametersForEncrypt):
2252 (WebCore::JSCryptoAlgorithmDictionary::createParametersForDecrypt):
2253 (WebCore::JSCryptoAlgorithmDictionary::createParametersForImportKey):
2254 Added RSA-OAEP parameters.
2256 * bindings/js/JSCryptoKeySerializationJWK.cpp:
2257 (WebCore::JSCryptoKeySerializationJWK::reconcileAlgorithm):
2258 (WebCore::JSCryptoKeySerializationJWK::keySizeIsValid):
2259 (WebCore::JSCryptoKeySerializationJWK::addJWKAlgorithmToJSON):
2260 Support RSA-OAEP in JWK. It is more limited than general WebCrypto, as JWK only
2261 allows SHA-1 as hash.
2263 * crypto/CommonCryptoUtilities.cpp: Added. (WebCore::getCommonCryptoDigestAlgorithm):
2264 * crypto/CommonCryptoUtilities.h: Added.
2265 Extracted some shared code and forward declarations for CommonCrypto.
2267 * crypto/CryptoAlgorithmParameters.h: (WebCore::CryptoAlgorithmParameters::Class):
2268 * crypto/parameters/CryptoAlgorithmRsaOaepParams.h: Added.
2269 Added RsaOaepParams.
2271 * crypto/algorithms/CryptoAlgorithmRSA_OAEP.cpp: Added.
2272 * crypto/algorithms/CryptoAlgorithmRSA_OAEP.h: Added.
2273 * crypto/mac/CryptoAlgorithmRSA_OAEPMac.cpp: Added.
2275 * crypto/mac/CryptoAlgorithmHMACMac.cpp:
2276 (WebCore::getCommonCryptoHMACAlgorithm):
2277 (WebCore::CryptoAlgorithmHMAC::platformSign):
2278 (WebCore::CryptoAlgorithmHMAC::platformVerify):
2279 * crypto/mac/CryptoAlgorithmRSASSA_PKCS1_v1_5Mac.cpp:
2280 * crypto/mac/CryptoKeyMac.cpp:
2281 * crypto/mac/CryptoKeyRSAMac.cpp:
2282 Use CommonCryptoUtilities.
2284 * crypto/mac/CryptoAlgorithmRegistryMac.cpp:
2285 (WebCore::CryptoAlgorithmRegistry::platformRegisterAlgorithms): Register RSA-OAEP.
2287 2013-12-02 Andres Gomez <agomez@igalia.com>
2289 [GTK] Fails to build with freetype 2.5.1
2290 https://bugs.webkit.org/show_bug.cgi?id=125074
2292 Reviewed by Carlos Garcia Campos.
2294 FreeType specifies a canonical way of including their own
2295 headers. Now, we are following this recommendation so the
2296 compilation won't be broken again due to an upgrade in FeeType's
2299 * platform/graphics/freetype/FontPlatformDataFreeType.cpp:
2300 * platform/graphics/freetype/SimpleFontDataFreeType.cpp:
2301 * platform/graphics/harfbuzz/HarfBuzzFaceCairo.cpp:
2303 2013-12-02 Chris Fleizach <cfleizach@apple.com>
2305 AX: Crash at WebCore::commonTreeScope
2306 https://bugs.webkit.org/show_bug.cgi?id=125042
2308 Reviewed by Mario Sanchez Prada.
2310 When an AX text marker that references a node in a detached document is used to create a text marker range, a crash occurs
2311 because the method to determine commonTreeScopes does not account for when there are no common tree scopes.
2313 Test: platform/mac/accessibility/ordered-textmarker-crash.html
2315 * accessibility/AccessibilityObject.cpp:
2316 (WebCore::AccessibilityObject::visiblePositionRangeForUnorderedPositions):
2317 * dom/TreeScope.cpp:
2318 (WebCore::commonTreeScope):
2320 2013-12-02 Nick Diego Yamane <nick.yamane@openbossa.org>
2322 Fix a crash in the webaudio source provider when the audio track is going away.
2323 https://bugs.webkit.org/show_bug.cgi?id=124975
2325 Reviewed by Philippe Normand.
2327 Merged https://chromium.googlesource.com/chromium/blink/+/b21838b32bf11b1a972dfc449ddde71115490c23
2329 Before this patch, it was hitting a use-after-free crash when the audio
2330 track in the media stream is going away and the webaudio mediastreamsourcenode
2333 * Modules/webaudio/AudioContext.cpp:
2334 (WebCore::AudioContext::createMediaStreamSource): Passing audio track
2335 pointer to MediaStreamAudioSourceNode constructor.
2336 * Modules/webaudio/MediaStreamAudioSourceNode.cpp:
2337 (WebCore::MediaStreamAudioSourceNode::create):
2338 (WebCore::MediaStreamAudioSourceNode::MediaStreamAudioSourceNode):
2339 * Modules/webaudio/MediaStreamAudioSourceNode.h: Added
2340 MediaStreamTrack class variable and change the constructor to receive
2343 2013-12-02 Andrzej Badowski <a.badowski@samsung.com>
2345 [ATK] Support active state for listbox elements.
2346 https://bugs.webkit.org/show_bug.cgi?id=125009
2348 Reviewed by Chris Fleizach.
2350 Added support for ATK_STATE_ACTIVE for listbox elements.
2352 * accessibility/atk/WebKitAccessibleWrapperAtk.cpp:
2353 (setAtkStateSetFromCoreObject):
2355 2013-12-02 Seokju Kwon <seokju@webkit.org>
2357 Web Inspector: Remove unused functions from InspectorAgent
2358 https://bugs.webkit.org/show_bug.cgi?id=125061
2360 Reviewed by Antoine Quint.
2362 Get rid of unused functions, redundant inclusion and forward declaration.
2364 No new tests, no behavior changes.
2366 * inspector/InspectorAgent.cpp:
2367 * inspector/InspectorAgent.h:
2369 2013-12-02 Tibor Meszaros <mtibor@inf.u-szeged.hu>
2371 Fix build warning in EventHandler.cpp
2372 https://bugs.webkit.org/show_bug.cgi?id=125010
2374 Reviewed by Csaba Osztrogonác.
2376 * page/EventHandler.cpp:
2377 (WebCore::EventHandler::eventInvertsTabsToLinksClientCallResult):
2379 2013-12-02 Attila Dusnoki <adusnoki@inf.u-szeged.hu>
2381 HTML5 required attribute validation messages implemented.
2382 https://bugs.webkit.org/show_bug.cgi?id=125003
2384 Reviewed by Gyuyoung Kim.
2386 * platform/efl/LocalizedStringsEfl.cpp:
2387 (WebCore::validationMessagePatternMismatchText):
2388 (WebCore::validationMessageValueMissingText):
2389 (WebCore::validationMessageValueMissingForCheckboxText):
2390 (WebCore::validationMessageValueMissingForFileText):
2391 (WebCore::validationMessageValueMissingForMultipleFileText):
2392 (WebCore::validationMessageValueMissingForRadioText):
2393 (WebCore::validationMessageValueMissingForSelectText):
2394 (WebCore::validationMessageBadInputForNumberText):
2396 2013-12-01 Andreas Kling <akling@apple.com>
2398 SVG: Intersection/enclosure checks should use RenderElement.
2399 <https://webkit.org/b/125058>
2401 Make RenderSVGModelObject's checkIntersection() and checkEnclosure()
2402 take RenderElement* instead of RenderObject*. They are only ever
2403 called with SVGElement's renderers.
2405 Reviewed by Sam Weinig.
2407 2013-12-01 Andreas Kling <akling@apple.com>
2409 Remove unreachable labels for -webkit-margin-*-collapse properties.
2410 <https://webkit.org/b/125057>
2412 The following properties are implemented in DeprecatedStyleBuilder
2413 and should not have case labels in the applyProperty() switch:
2415 -webkit-margin-before-collapse
2416 -webkit-margin-top-collapse
2417 -webkit-margin-after-collapse
2418 -webkit-margin-bottom-collapse
2420 This seems counter-intuitive, but they are actually *not* like other
2421 directional properties. In this case, before/after are only aliases
2422 for top/bottom, and do not depend on writing-mode or text-direction.
2423 See also r68561, where the aliases were originally added.
2425 Reviewed by Anders Carlsson.
2427 2013-12-01 Andreas Kling <akling@apple.com>
2429 CSSFunctionValue constructors should return PassRef.
2430 <https://webkit.org/b/125054>
2432 Make CSSFunctionValue::create() helpers return PassRef instead of
2433 PassRefPtr since they will never return null.
2435 Reviewed by Anders Carlsson.
2437 2013-12-01 Commit Queue <commit-queue@webkit.org>
2439 Unreviewed, rolling out r159764.
2440 http://trac.webkit.org/changeset/159764
2441 https://bugs.webkit.org/show_bug.cgi?id=125055
2443 appears to hurt html5-full-render times (Requested by kling on
2446 * html/parser/HTMLConstructionSite.cpp:
2447 (WebCore::HTMLConstructionSite::insertTextNode):
2448 * html/parser/HTMLConstructionSite.h:
2450 2013-12-01 Andreas Kling <akling@apple.com>
2452 Make more computed style helpers return PassRef.
2453 <https://webkit.org/b/125043>
2455 Reduce branchiness in computed style code by making more of the
2456 file-local helpers return PassRef instead of PassRefPtr.
2458 Reviewed by Anders Carlsson.
2460 2013-11-30 Ryuan Choi <ryuan.choi@samsung.com>
2462 [EFL] Implement scrollbarThickness for opaque scrollbar
2463 https://bugs.webkit.org/show_bug.cgi?id=125034
2465 Reviewed by Gyuyoung Kim.
2467 Implemented scrollbarThickness to support opaque scrollbar.
2468 Now, edj can decide whether to support opaque scrollbar by adding scrollbar.thickness.
2469 In addition, added OVERRIDE/FINAL keyword and removed unnecessary destructor
2470 in ScrollbarThemeEfl.cpp.
2472 No new tests, no behavior changes with default theme.
2474 * platform/efl/RenderThemeEfl.cpp:
2475 (WebCore::RenderThemeEfl::loadTheme):
2476 Update thickness of scrollbar when theme was loaded.
2477 * platform/efl/ScrollbarThemeEfl.cpp:
2478 * platform/efl/ScrollbarThemeEfl.h:
2479 (WebCore::ScrollbarThemeEfl::setScrollbarThickness):
2480 (WebCore::ScrollbarThemeEfl::scrollbarThickness):
2481 (WebCore::ScrollbarThemeEfl::registerScrollbar):
2482 (WebCore::ScrollbarThemeEfl::unregisterScrollbar):
2484 2013-11-29 Tamas Gergely <tgergely.u-szeged@partner.samsung.com>
2486 Remove Symbian specific code.
2487 https://bugs.webkit.org/show_bug.cgi?id=124939
2489 Reviewed by Zoltan Herczeg.
2491 Symbian is not supported, remove leftover code.
2495 2013-11-28 Gyuyoung Kim <gyuyoung.kim@samsung.com>
2497 Rename InlineIterator::m_obj and make it private
2498 https://bugs.webkit.org/show_bug.cgi?id=124837
2500 Reviewed by Antti Koivisto.
2502 InlineIterator has been exported m_obj as public though there is a getter function.
2503 Besides *object* name isn't ambigious. So, changed it with m_renderer and renderer().
2504 Additionally, setRenderer() is added as well.
2506 No new tests, no behavior changes.
2508 * rendering/InlineIterator.h:
2509 (WebCore::InlineIterator::setObject):
2510 (WebCore::operator==):
2511 (WebCore::operator!=):
2512 (WebCore::InlineBidiResolver::appendRun):
2513 * rendering/RenderBlockLineLayout.cpp:
2514 (WebCore::RenderBlockFlow::appendRunsForObject):
2515 (WebCore::constructBidiRunsForLine):
2516 (WebCore::RenderBlockFlow::createLineBoxesFromBidiRuns):
2517 (WebCore::RenderBlockFlow::layoutRunsAndFloatsInRange):
2518 (WebCore::RenderBlockFlow::matchedEndLine):
2519 * rendering/line/BreakingContextInlineHeaders.h:
2520 (WebCore::TrailingObjects::updateMidpointsForTrailingBoxes):
2521 (WebCore::BreakingContext::BreakingContext):
2522 (WebCore::BreakingContext::currentObject):
2523 (WebCore::BreakingContext::initializeForCurrentObject):
2524 (WebCore::BreakingContext::handleBR):
2525 (WebCore::BreakingContext::handleOutOfFlowPositioned):
2526 (WebCore::BreakingContext::handleFloat):
2527 (WebCore::BreakingContext::handleEmptyInline):
2528 (WebCore::BreakingContext::handleReplaced):
2529 (WebCore::iteratorIsBeyondEndOfRenderCombineText):
2530 (WebCore::ensureCharacterGetsLineBox):
2531 (WebCore::BreakingContext::handleText):
2532 (WebCore::BreakingContext::canBreakAtThisPosition):
2533 (WebCore::BreakingContext::commitAndUpdateLineBreakIfNeeded):
2534 (WebCore::checkMidpoints):
2535 (WebCore::BreakingContext::handleEndOfLine):
2536 * rendering/line/LineBreaker.cpp:
2537 (WebCore::LineBreaker::skipTrailingWhitespace):
2538 (WebCore::LineBreaker::skipLeadingWhitespace):
2539 * rendering/line/LineInlineHeaders.h:
2540 (WebCore::skipNonBreakingSpace):
2541 (WebCore::requiresLineBox):
2543 2013-11-28 Antti Koivisto <antti@apple.com>
2545 Rename StylePropertySet to StyleProperties
2546 https://bugs.webkit.org/show_bug.cgi?id=124990
2548 Reviewed by Andreas Kling.
2550 "Set" does not add useful information here. Use less clunky plural name.
2552 2013-11-28 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
2554 Nix Upstream: Adding EditorNix to WebCore
2555 https://bugs.webkit.org/show_bug.cgi?id=124984
2557 Reviewed by Csaba Osztrogonác.
2559 No new tests needed.
2561 * PlatformNix.cmake:
2562 * editing/nix/EditorNix.cpp: Added.
2564 2013-11-28 Zoltan Horvath <zoltan@webkit.org>
2566 [Win] Update vcxproj.filters, since LineInfo.h and LineLayoutState.h have been moved to rendering/line
2567 https://bugs.webkit.org/show_bug.cgi?id=124959
2569 Reviewed by Brent Fulgham.
2571 Update WebCore.vcxproj.filters, since LineInfo.h (r155628) and LineLayoutState.h (158121) have been moved to rendering/line.
2573 No new tests, no behavior change.
2575 * WebCore.vcxproj/WebCore.vcxproj.filters:
2577 2013-11-28 Laszlo Vidacs <lac@inf.u-szeged.hu>
2579 RenderTableSection Blink merge asserting
2580 https://bugs.webkit.org/show_bug.cgi?id=124857
2582 Reviewed by Csaba Osztrogonác.
2584 Use border spacing at the end of all sections.
2586 * rendering/RenderTableSection.cpp:
2587 (WebCore::RenderTableSection::calcRowLogicalHeight):
2589 2013-11-28 Antti Koivisto <antti@apple.com>
2591 Remove feature: CSS variables
2592 https://bugs.webkit.org/show_bug.cgi?id=114119
2594 Reviewed by Andreas Kling.
2596 The feature is unmaintained and it is getting in the way of refactoring. Code quality is not up to
2597 WebKit standards either.
2599 * Configurations/FeatureDefines.xcconfig:
2600 * GNUmakefile.list.am:
2601 * WebCore.xcodeproj/project.pbxproj:
2602 * css/CSSBasicShapes.cpp:
2603 * css/CSSBasicShapes.h:
2604 * css/CSSCalculationValue.cpp:
2605 (WebCore::unitCategory):
2606 (WebCore::hasDoubleValue):
2607 (WebCore::CSSCalcPrimitiveValue::toCalcValue):
2608 (WebCore::CSSCalcPrimitiveValue::computeLengthPx):
2609 (WebCore::determineCategory):
2610 (WebCore::CSSCalcBinaryOperation::primitiveType):
2611 * css/CSSCalculationValue.h:
2612 * css/CSSComputedStyleDeclaration.cpp:
2613 (WebCore::ComputedStyleExtractor::propertyValue):
2614 * css/CSSGrammar.y.in:
2615 * css/CSSParser.cpp:
2616 (WebCore::CSSParserContext::CSSParserContext):
2617 (WebCore::operator==):
2618 (WebCore::filterProperties):
2619 (WebCore::CSSParser::createStylePropertySet):
2620 (WebCore::CSSParser::addProperty):
2621 (WebCore::CSSParser::validCalculationUnit):
2622 (WebCore::CSSParser::validUnit):
2623 (WebCore::CSSParser::createPrimitiveNumericValue):
2624 (WebCore::CSSParser::parseValidPrimitive):
2625 (WebCore::CSSParser::parseValue):
2626 (WebCore::CSSParser::parseReflect):
2627 (WebCore::CSSParser::detectDashToken):
2628 (WebCore::CSSParser::realLex):
2630 * css/CSSParserMode.h:
2631 * css/CSSParserValues.cpp:
2632 (WebCore::CSSParserValue::createCSSValue):
2633 * css/CSSParserValues.h:
2634 * css/CSSPrimitiveValue.cpp:
2635 (WebCore::isValidCSSUnitTypeForDoubleConversion):
2636 (WebCore::CSSPrimitiveValue::primitiveType):
2637 (WebCore::CSSPrimitiveValue::cleanup):
2638 (WebCore::CSSPrimitiveValue::getStringValue):
2639 (WebCore::CSSPrimitiveValue::customCSSText):
2640 (WebCore::CSSPrimitiveValue::equals):
2641 * css/CSSPrimitiveValue.h:
2642 * css/CSSPrimitiveValueMappings.h:
2643 (WebCore::CSSPrimitiveValue::convertToLength):
2644 * css/CSSProperty.cpp:
2645 * css/CSSProperty.h:
2646 (WebCore::CSSProperty::CSSProperty):
2647 * css/CSSReflectValue.cpp:
2648 * css/CSSReflectValue.h:
2650 (WebCore::CSSValue::equals):
2651 (WebCore::CSSValue::cssText):
2652 (WebCore::CSSValue::destroy):
2654 (WebCore::CSSValue::setCssText):
2655 * css/CSSValueList.cpp:
2656 * css/CSSValueList.h:
2657 * css/CSSVariableValue.h: Removed.
2660 * css/StylePropertySet.cpp:
2661 (WebCore::StylePropertySet::asText):
2662 (WebCore::StylePropertySet::PropertyReference::cssName):
2663 * css/StyleResolver.cpp:
2664 (WebCore::StyleResolver::styleForPage):
2665 (WebCore::StyleResolver::applyProperties):
2666 (WebCore::StyleResolver::applyMatchedProperties):
2667 (WebCore::StyleResolver::applyProperty):
2668 * css/StyleResolver.h:
2669 * css/WebKitCSSTransformValue.cpp:
2670 * css/WebKitCSSTransformValue.h:
2671 (WebCore::WebKitCSSTransformValue::equals):
2673 * page/Settings.cpp:
2674 (WebCore::Settings::Settings):
2676 * rendering/style/RenderStyle.h:
2677 * rendering/style/StyleRareInheritedData.cpp:
2678 (WebCore::StyleRareInheritedData::StyleRareInheritedData):
2679 (WebCore::StyleRareInheritedData::operator==):
2680 * rendering/style/StyleRareInheritedData.h:
2681 * rendering/style/StyleVariableData.h: Removed.
2682 * testing/InternalSettings.cpp:
2683 (WebCore::InternalSettings::Backup::Backup):
2684 (WebCore::InternalSettings::Backup::restoreTo):
2685 * testing/InternalSettings.h:
2686 * testing/InternalSettings.idl:
2688 2013-11-28 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
2690 Updating RTCPeerConnectionHandlerMock after r159769
2691 https://bugs.webkit.org/show_bug.cgi?id=124947
2693 Reviewed by Philippe Normand.
2695 Adding its create function back, in order to run RTCPeerConnection LayoutTests.
2697 No new tests needed.
2699 * platform/mock/RTCPeerConnectionHandlerMock.cpp:
2700 (WebCore::RTCPeerConnectionHandlerMock::create):
2701 * platform/mock/RTCPeerConnectionHandlerMock.h:
2703 2013-11-27 Gustavo Noronha Silva <gustavo.noronha@collabora.com>
2705 [GTK] Support custom types for drag and drop data
2706 https://bugs.webkit.org/show_bug.cgi?id=124659
2708 Reviewed by Martin Robinson.
2710 Covered by fast/events/drag-customData.html.
2712 * platform/gtk/DataObjectGtk.cpp:
2713 (WebCore::DataObjectGtk::unknownTypes): returns a hash map with all custom types set.
2714 (WebCore::DataObjectGtk::clearAllExceptFilenames): clear custom types.
2715 * platform/gtk/DataObjectGtk.h:
2716 (WebCore::DataObjectGtk::hasUnknownTypeData): returns whether custom types are set.
2717 (WebCore::DataObjectGtk::unknownTypeData): returns the data for a custom type.
2718 (WebCore::DataObjectGtk::setUnknownTypeData): sets the data for a custom type.
2719 * platform/gtk/PasteboardGtk.cpp:
2720 (WebCore::Pasteboard::writeString): handle unknown types as custom.
2721 (WebCore::Pasteboard::writePasteboard): ditto.
2722 (WebCore::Pasteboard::hasData): also check for custom types.
2723 (WebCore::Pasteboard::types): also obtain the list of custom types.
2724 (WebCore::Pasteboard::readString): handle unknown types as custom.
2725 * platform/gtk/PasteboardHelper.cpp:
2726 (WebCore::initGdkAtoms): new unknown atom.
2727 (WebCore::PasteboardHelper::PasteboardHelper): add custom type to the list of targets.
2728 (WebCore::PasteboardHelper::fillSelectionData): turns any custom types' data into a GVariant, which
2729 is in turn serialized to a single string for GtkSelectionData to hold.
2730 (WebCore::PasteboardHelper::targetListForDataObject): add custom data to the target list if any is
2732 (WebCore::PasteboardHelper::fillDataObjectFromDropData): retrieve the custom types and their data
2733 from the serialized GVariant string held by GtkSelectionData.
2734 (WebCore::PasteboardHelper::dropAtomsForContext): handle custom types.
2736 2013-11-27 Eric Carlson <eric.carlson@apple.com>
2738 Allow the QuickTime plug-in to be replaced by script in an isolated word
2739 https://bugs.webkit.org/show_bug.cgi?id=124900
2741 Reviewed by Dean Jackson.
2743 Test: plugins/quicktime-plugin-replacement.html
2745 * CMakeLists.txt: Add new Modules path.
2746 * DerivedSources.make: Add new files.
2747 * GNUmakefile.am: Add new Modules path.
2748 * GNUmakefile.list.am: Add new header.
2749 * WebCore.vcxproj/WebCore.vcxproj: Add new header.
2750 * WebCore.vcxproj/WebCoreCommon.props: Add new Modules path.
2751 * WebCore.xcodeproj/project.pbxproj: Add new files.
2753 * Modules/plugins: Added.
2754 * Modules/plugins/PluginReplacement.h: Added. Defines the interface for a plug-in replacement.
2756 Create a replacement for the QuickTime plug-in.
2757 * Modules/plugins/QuickTimePluginReplacement.cpp: Added.
2758 * Modules/plugins/QuickTimePluginReplacement.css: Added.
2759 * Modules/plugins/QuickTimePluginReplacement.h: Added.
2760 * Modules/plugins/QuickTimePluginReplacement.idl: Added.
2761 * Modules/plugins/QuickTimePluginReplacement.js: Added.
2763 Allow plug-in replacement to be enabled at runtime.
2764 * bindings/generic/RuntimeEnabledFeatures.h:
2765 (WebCore::RuntimeEnabledFeatures::setPluginReplacementEnabled):
2766 (WebCore::RuntimeEnabledFeatures::pluginReplacementEnabled):
2768 * bindings/js/JSDOMBinding.h:
2769 (WebCore::toJS): Add toJS(... const String& ...).
2771 * bindings/js/JSPluginElementFunctions.cpp:
2772 (WebCore::pluginScriptObject): Give a plug-in replacement a first shot at defining the
2775 * html/HTMLEmbedElement.cpp:
2776 (WebCore::HTMLEmbedElement::updateWidget): Call base class requestObject.
2778 * html/HTMLMediaElement.cpp:
2779 (HTMLMediaElement::fileSize): New, passthrough to media engine.
2780 * html/HTMLMediaElement.h:
2782 * html/HTMLObjectElement.cpp:
2783 (WebCore::HTMLObjectElement::updateWidget): Call base class requestObject.
2785 Moved some logic that was previously used only for creating a plug-in snapshot to the base
2786 class so it can be shared by a plug-in replacement.
2787 * html/HTMLPlugInElement.cpp:
2788 (WebCore::HTMLPlugInElement::HTMLPlugInElement): Initialize timer used to swap renderers.
2789 (WebCore::HTMLPlugInElement::createRenderer): Allow plug-in replacement to create the renderer.
2790 (WebCore::HTMLPlugInElement::swapRendererTimerFired): Create a shadow root.
2791 (WebCore::HTMLPlugInElement::setDisplayState): Set the new state, prime the swap renderer
2793 (WebCore::HTMLPlugInElement::didAddUserAgentShadowRoot): Tell the plug-in replacement to
2794 install itself in the new shadow DOM.
2795 (WebCore::registeredPluginReplacements): Return vector of all registered plug-in replacements.
2796 (WebCore::registerPluginReplacement): Add a plug-in replacement.
2797 (WebCore::pluginReplacementForType): Find a plug-in replacement for a MIME type.
2798 (WebCore::HTMLPlugInElement::requestObject): If there is a plug-in replacement for the MIME type,
2799 create it and set the display state.
2800 (WebCore::HTMLPlugInElement::scriptObjectForPluginReplacement): Return the script object for
2801 the current plug-in replacement, if any.
2802 * html/HTMLPlugInElement.h:
2804 Move some plug-in snapshot code into the base class.
2805 * html/HTMLPlugInImageElement.cpp:
2806 (WebCore::HTMLPlugInImageElement::HTMLPlugInImageElement): No need to initialize timer.
2807 (WebCore::HTMLPlugInImageElement::setDisplayState): Call base class.
2808 (WebCore::HTMLPlugInImageElement::createRenderer): Ditto.
2809 (WebCore::HTMLPlugInImageElement::didAddUserAgentShadowRoot): Ditto.
2810 (WebCore::HTMLPlugInImageElement::userDidClickSnapshot): Remove unnecessary class name.
2811 (WebCore::HTMLPlugInImageElement::requestObject): New.
2812 * html/HTMLPlugInImageElement.h:
2814 * html/HTMLVideoElement.h: Make createRenderer public so the QuickTime plug-in replacement can
2817 * platform/graphics/MediaPlayer.cpp:
2818 (WebCore::MediaPlayer::fileSize): New.
2819 * platform/graphics/MediaPlayer.h:
2820 * platform/graphics/MediaPlayerPrivate.h:
2822 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.cpp:
2823 (WebCore::MediaPlayerPrivateAVFoundation::extraMemoryCost): totalBytes returns an unsigned long long.
2824 * platform/graphics/avfoundation/MediaPlayerPrivateAVFoundation.h:
2825 (WebCore::MediaPlayerPrivateAVFoundation::fileSize):
2827 * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
2828 (WebCore::MediaPlayerPrivateAVFoundationCF::totalBytes): Return an unsigned long long.
2829 * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.h:
2831 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.h:
2832 * platform/graphics/avfoundation/objc/MediaPlayerPrivateAVFoundationObjC.mm:
2833 (WebCore::MediaPlayerPrivateAVFoundationObjC::totalBytes): Ditto.
2835 * testing/InternalSettings.cpp:
2836 (WebCore::InternalSettings::Backup::Backup): Backup the plug-in replacement runtime setting.
2837 (WebCore::InternalSettings::Backup::restoreTo): Restore it.
2838 (WebCore::InternalSettings::setPluginReplacementEnabled): Set it.
2839 * testing/InternalSettings.h:
2840 * testing/InternalSettings.idl:
2842 2013-11-27 Thiago de Barros Lacerda <thiago.lacerda@openbossa.org>
2844 Adding MediaConstraintsMock class
2845 https://bugs.webkit.org/show_bug.cgi?id=124902
2847 Reviewed by Eric Carlson.
2849 Validate constraints used in RTCPeerConnection LayoutTests
2851 Existing test was updated.
2854 * GNUmakefile.list.am:
2855 * platform/mock/MediaConstraintsMock.cpp: Added.
2856 * platform/mock/MediaConstraintsMock.h: Added.
2857 * platform/mock/MockMediaStreamCenter.cpp:
2858 (WebCore::MockMediaStreamCenter::validateRequestConstraints): Now using MediaConstraintsMock
2859 (WebCore::MockMediaStreamCenter::createMediaStream): Ditto.
2860 * platform/mock/RTCPeerConnectionHandlerMock.cpp:
2861 (WebCore::RTCPeerConnectionHandlerMock::initialize): Ditto.
2863 2013-11-27 Bear Travis <betravis@adobe.com>
2865 [CSS Shapes] Shape-Inside Should Default to 'auto'
2866 https://bugs.webkit.org/show_bug.cgi?id=124851
2868 Reviewed by Alexandru Chiculita.
2870 The current shape-inside specification has the property default to the 'auto'
2871 value, not 'outside-shape'.
2873 Updated tests are under fast/shapes.
2875 * rendering/style/RenderStyle.cpp:
2876 * rendering/style/RenderStyle.h:
2878 2013-11-27 Hans Muller <hmuller@adobe.com>
2880 [CSS Shapes] shape-inside rectangle layout can fail
2881 https://bugs.webkit.org/show_bug.cgi?id=124784
2883 Reviewed by Andreas Kling.
2885 Apply LayoutUnit::fromFloatCeil() consistently in RectangleShape::firstIncludedIntervalLogicalTop().
2887 Test: fast/shapes/shape-inside/shape-inside-subpixel-rectangle-top.html
2889 * rendering/shapes/RectangleShape.cpp:
2890 (WebCore::RectangleShape::firstIncludedIntervalLogicalTop):
2892 2013-11-27 Nick Diego Yamane <nick.yamane@openbossa.org>
2894 Remove Qt-specific .qrc files
2895 https://bugs.webkit.org/show_bug.cgi?id=124944
2897 Reviewed by Andreas Kling.
2899 No new tests needed.
2901 * WebCore.qrc: Removed.
2903 2013-11-27 Xabier Rodriguez Calvar <calvaris@igalia.com>
2905 [GStreamer] Invalid command line error when visiting www.chessbase.com
2906 https://bugs.webkit.org/show_bug.cgi?id=124715
2908 Reviewed by Philippe Normand.
2910 We were not handling the HTTP errors in the WebKit GStreamer
2911 source and therefore the 404 error page was being 'decoded'. As no
2912 decoder could be found (for obvious reasons), playback failed, but
2913 it should be failing for the source not being found instead of the
2916 Test: http/tests/media/video-error-does-not-exist.html
2918 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
2919 (StreamingClient::handleResponseReceived): Handle HTTP errors in
2920 the source and raise a GStreamer error to the pipeline.
2922 2013-11-14 Sergio Villar Senin <svillar@igalia.com>
2924 [CSS Grid Layout] Fix positioning of grid items with margins
2925 https://bugs.webkit.org/show_bug.cgi?id=124345
2927 Reviewed by David Hyatt.
2929 From Blink r157925 and r158041 by <jchaffraix@chromium.org>
2931 Test: fast/css-grid-layout/grid-item-margin-resolution.html
2933 Adds margin start/before to the positions of grid items (removing
2934 several FIXME's in the current code). This means calling
2935 findChildLogicalPosition() after the layout in order to have the
2936 right values for the margins.
2938 In order to match flexbox and author's intents we're also
2939 including the margins of grid items in the intrinsic size of the
2940 grid. That's why flexbox's marginLogicalPositionForChild() is
2941 moved up to RenderBlock in order to share it with RenderGrid.
2943 * rendering/RenderBlock.cpp:
2944 (WebCore::RenderBlock::marginIntrinsicLogicalWidthForChild): Moved
2945 from RenderFlexibleBox::marginLogicalWidthForChild().
2946 * rendering/RenderBlock.h:
2947 * rendering/RenderFlexibleBox.cpp:
2948 (WebCore::RenderFlexibleBox::computeIntrinsicLogicalWidths):
2949 * rendering/RenderGrid.cpp:
2950 (WebCore::RenderGrid::computePreferredTrackWidth):
2951 (WebCore::RenderGrid::layoutGridItems):
2952 (WebCore::RenderGrid::findChildLogicalPosition):
2954 2013-11-26 Sergio Villar Senin <svillar@igalia.com>
2956 [CSS Grid Layout] Support grid-definition-{rows|columns} repeat() syntax
2957 https://bugs.webkit.org/show_bug.cgi?id=103312
2959 Reviewed by Andreas Kling.
2961 Added support for the repeat() syntax inside
2962 grid-definition-{rows|columns} by just adding the repeated values
2963 to our list of column|row definitions.
2965 The parsing of <track-name> was refactored in a new function as
2966 it's used now in three different places. The <track-size> parsing
2967 was also refactored to share it with the repeat() parsing.
2969 Test: fast/css-grid-layout/grid-element-repeat-get-set.html
2971 * css/CSSParser.cpp:
2972 (WebCore::CSSParser::parseValue):
2973 (WebCore::CSSParser::parseGridTrackNames):
2974 (WebCore::CSSParser::parseGridTrackList):
2975 (WebCore::CSSParser::parseGridTrackRepeatFunction):
2976 (WebCore::CSSParser::parseGridTrackSize):
2979 2013-11-26 Marcelo Lira <marcelo.lira@openbossa.org>
2981 Nix upstreaming - Adding build files and supporting scripts
2982 https://bugs.webkit.org/show_bug.cgi?id=118367
2984 Reviewed by Ryosuke Niwa.
2986 No new tests needed.
2989 * PlatformNix.cmake: Added.
2991 2013-11-26 Tim Horton <timothy_horton@apple.com>
2993 Don't parent the TileController root layer in two places
2994 https://bugs.webkit.org/show_bug.cgi?id=124873
2996 Reviewed by Brent Fulgham.
2998 * platform/graphics/ca/mac/TileController.mm:
2999 (WebCore::TileController::TileController):
3000 The TileController's layer is already parented by callers of
3001 TileController::create, and in a special way. TileController
3002 shouldn't parent itself, anyway...
3004 2013-11-26 Nick Diego Yamane <nick.yamane@openbossa.org>
3006 [MediaStream API] HTMLMediaElement should be able to use MediaStream as source
3007 https://bugs.webkit.org/show_bug.cgi?id=121943
3009 Reviewed by Eric Carlson.
3011 Implement MediaStream direct assignment to Media Elements using the new 'srcObject'
3012 attribute: http://www.w3.org/TR/mediacapture-streams/#direct-assignment-to-media-elements
3014 Test: fast/mediastream/MediaStream-MediaElement-srcObject.html
3016 * CMakeLists.txt: Added new HTMLMediaElementMediaStream.h and .cpp to cmake build.
3017 * DerivedSources.make: Added HTMLMediaElementMediaStream.idl.
3018 * GNUmakefile.list.am: Added new HTMLMediaElementMediaStream* to autotools build.
3019 * WebCore.xcodeproj/project.pbxproj: Added new files.
3020 * Modules/mediastream/HTMLMediaElementMediaStream.cpp: Added.
3021 (WebCore::HTMLMediaElementMediaStream::srcObject): implements srcObject getter.
3022 (WebCore::HTMLMediaElementMediaStream::setSrcObject): implements srcObject setter.
3023 * Modules/mediastream/HTMLMediaElementMediaStream.h: Added.
3024 * Modules/mediastream/HTMLMediaElementMediaStream.idl: Added.
3025 * html/HTMLMediaElement.cpp:
3026 (WebCore::HTMLMediaElement::setSrcObject): This is an initial implementation, and
3027 is still incomplete, that will be addressed in a separate bug: https://webkit.org/b/124896
3028 * html/HTMLMediaElement.h: Added m_mediaStreamSrcObject class variable
3029 and its corresponding getter.
3031 2013-11-26 Andreas Kling <akling@apple.com>
3033 Use child iterator to find operators in RenderMathMLRow::layout().
3034 <https://webkit.org/b/124108>
3036 Replace manual children walk with childrenOfType<RenderMathMLBlock>.
3037 Minor update to fix build.
3039 Reviewed by Martin Robinson.
3041 2013-11-26 Andreas Kling <akling@apple.com>
3043 RenderObject: Inline isBody() and isHR().
3044 <https://webkit.org/b/124901>
3046 Together these account for ~0.3% of samples on HTML5-8266.
3047 Almost all of it is call overhead.
3049 Reviewed by Anders Carlsson.
3051 2013-11-26 Bear Travis <betravis@adobe.com>
3053 [CSS Shapes] Layout using [<box> || <shape>] value
3054 https://bugs.webkit.org/show_bug.cgi?id=124428
3056 Reviewed by David Hyatt.
3058 When a box value is supplied, use it to size and position the shape. Otherwise,
3059 use a default value (content-box for shape-inside, margin-box for shape-outside).
3060 This patch extends the sizing and positioning code used for the box patch (Bug 124227)
3061 to also apply to shapes. With this patch, we also no longer use the box-sizing
3062 property to size and position shapes.
3064 Tests: fast/shapes/shape-outside-floats/shape-outside-shape-boxes-001.html
3065 fast/shapes/shape-outside-floats/shape-outside-shape-boxes-002.html
3066 fast/shapes/shape-outside-floats/shape-outside-shape-boxes-003.html
3068 * css/CSSComputedStyleDeclaration.cpp:
3069 (WebCore::ComputedStyleExtractor::propertyValue): Adjust for ShapeValues storing
3070 BasicShape::ReferenceBox as their box value, rather than a CSSValueID.
3071 * css/DeprecatedStyleBuilder.cpp:
3072 (WebCore::ApplyPropertyShape::applyValue): Ditto.
3073 * rendering/shapes/ShapeInfo.h:
3074 (WebCore::ShapeInfo::setShapeSize): Adjust for BasicShapes with reference boxes
3075 as well as plain box values. Also, remove old box-sizing code.
3076 (WebCore::ShapeInfo::logicalTopOffset): Ditto.
3077 (WebCore::ShapeInfo::logicalLeftOffset): Ditto.
3078 * rendering/shapes/ShapeInsideInfo.h:
3079 * rendering/shapes/ShapeOutsideInfo.h:
3080 * rendering/style/ShapeValue.h:
3081 (WebCore::ShapeValue::createBoxValue): Adjust for boxes being stored as
3082 BasicShape::ReferenceBoxes.
3083 (WebCore::ShapeValue::box): Ditto.
3084 (WebCore::ShapeValue::ShapeValue): Ditto.
3086 2013-11-26 Brian J. Burg <burg@cs.washington.edu>
3088 ImageBuffer::create should return a std::unique_ptr instead of OwnPtr.
3089 https://bugs.webkit.org/show_bug.cgi?id=124822
3091 Reviewed by Andreas Kling.
3093 Replace all uses of OwnPtr<ImageBuffer> and PassOwnPtr<ImageBuffer> with
3094 std::unique_ptr<ImageBuffer>. Replace calls to OwnPtr::clear() and
3095 OwnPtr::release() with reset() and std::move(). Remove unnecessary includes.
3097 No new tests. This is a mechanical refactoring.
3099 * css/CSSFilterImageValue.cpp:
3100 (WebCore::CSSFilterImageValue::image):
3101 * html/HTMLCanvasElement.cpp:
3102 (WebCore::HTMLCanvasElement::setSurfaceSize):
3103 * html/HTMLCanvasElement.h:
3104 * html/canvas/CanvasRenderingContext2D.cpp:
3105 (WebCore::CanvasRenderingContext2D::createCompositingBuffer):
3106 (WebCore::CanvasRenderingContext2D::fullCanvasCompositedDrawImage):
3107 (WebCore::CanvasRenderingContext2D::fullCanvasCompositedFill):
3108 (WebCore::CanvasRenderingContext2D::drawTextInternal):
3109 * html/canvas/CanvasRenderingContext2D.h:
3110 * html/canvas/WebGLRenderingContext.cpp:
3111 (WebCore::WebGLRenderingContext::LRUImageBufferCache::LRUImageBufferCache):
3112 (WebCore::WebGLRenderingContext::LRUImageBufferCache::imageBuffer):
3113 * html/canvas/WebGLRenderingContext.h:
3114 * html/shadow/MediaControlElements.cpp:
3115 (WebCore::MediaControlTextTrackContainerElement::createTextTrackRepresentationImage):
3117 (WebCore::Frame::nodeImage):
3118 (WebCore::Frame::dragImageForSelection):
3119 * platform/graphics/BitmapImage.cpp:
3120 (WebCore::BitmapImage::drawPattern):
3121 * platform/graphics/CrossfadeGeneratedImage.cpp:
3122 (WebCore::CrossfadeGeneratedImage::drawPattern):
3123 * platform/graphics/GradientImage.h:
3124 * platform/graphics/GraphicsContext.cpp:
3125 (WebCore::GraphicsContext::createCompatibleBuffer):
3126 * platform/graphics/GraphicsContext.h:
3127 * platform/graphics/ImageBuffer.cpp:
3128 (WebCore::ImageBuffer::createCompatibleBuffer):
3129 * platform/graphics/ImageBuffer.h:
3130 (WebCore::ImageBuffer::create):
3131 * platform/graphics/ShadowBlur.cpp:
3132 * platform/graphics/cg/ImageBufferCG.cpp:
3133 (WebCore::ImageBuffer::putByteArray):
3134 * platform/graphics/cg/PDFDocumentImage.h:
3135 * platform/graphics/filters/FETile.cpp:
3136 (WebCore::FETile::platformApplySoftware):
3137 * platform/graphics/filters/Filter.h:
3138 (WebCore::Filter::setSourceImage):
3139 * platform/graphics/filters/FilterEffect.cpp:
3140 (WebCore::FilterEffect::clearResult):
3141 * platform/graphics/filters/FilterEffect.h:
3142 * platform/graphics/texmap/TextureMapper.cpp:
3143 (WebCore::BitmapTexture::updateContents):
3144 * platform/graphics/texmap/TextureMapperImageBuffer.h:
3145 * rendering/InlineTextBox.cpp:
3146 (WebCore::InlineTextBox::paintDecoration):
3147 * rendering/RenderBoxModelObject.cpp:
3148 (WebCore::RenderBoxModelObject::paintFillLayerExtended):
3149 * rendering/RenderThemeMac.mm:
3150 (WebCore::RenderThemeMac::paintProgressBar):
3151 * rendering/shapes/Shape.cpp:
3152 (WebCore::Shape::createShape):
3153 * rendering/svg/RenderSVGImage.cpp:
3154 (WebCore::RenderSVGImage::invalidateBufferedForeground):
3155 * rendering/svg/RenderSVGImage.h:
3156 * rendering/svg/RenderSVGResourceClipper.cpp:
3157 (WebCore::RenderSVGResourceClipper::applyClippingToContext):
3158 * rendering/svg/RenderSVGResourceClipper.h:
3159 * rendering/svg/RenderSVGResourceFilter.cpp:
3160 (WebCore::RenderSVGResourceFilter::applyResource):
3161 (WebCore::RenderSVGResourceFilter::postApplyResource):
3162 * rendering/svg/RenderSVGResourceFilter.h:
3163 * rendering/svg/RenderSVGResourceGradient.cpp: Remove method parameter wrapping/indentation.
3164 (WebCore::createMaskAndSwapContextForTextGradient):
3165 (WebCore::clipToTextMask):
3166 (WebCore::RenderSVGResourceGradient::applyResource):
3167 * rendering/svg/RenderSVGResourceGradient.h:
3168 * rendering/svg/RenderSVGResourceMasker.cpp:
3169 (WebCore::RenderSVGResourceMasker::applyResource):
3170 * rendering/svg/RenderSVGResourceMasker.h:
3171 * rendering/svg/RenderSVGResourcePattern.cpp: Remove method parameter wrapping/indentation.
3172 (WebCore::RenderSVGResourcePattern::buildPattern):
3173 (WebCore::RenderSVGResourcePattern::createTileImage):
3174 * rendering/svg/RenderSVGResourcePattern.h: Remove method parameter wrapping/indentation.
3175 * rendering/svg/SVGRenderingContext.cpp:
3176 (WebCore::SVGRenderingContext::createImageBuffer):
3177 (WebCore::SVGRenderingContext::createImageBufferForPattern):
3178 (WebCore::SVGRenderingContext::clipToImageBuffer):
3179 (WebCore::SVGRenderingContext::bufferForeground):
3180 * rendering/svg/SVGRenderingContext.h:
3181 * svg/graphics/SVGImage.cpp:
3182 (WebCore::SVGImage::nativeImageForCurrentFrame):
3183 (WebCore::SVGImage::drawPatternForContainer):
3185 2013-11-26 Eric Carlson <eric.carlson@apple.com>
3187 video.currentSrc should return empty when no resource is loaded
3188 https://bugs.webkit.org/show_bug.cgi?id=124898
3190 Reviewed by Dan Bernstein.
3192 Test: media/video-currentsrc-cleared.html
3194 * html/HTMLMediaElement.cpp:
3195 (WebCore::HTMLMediaElement::prepareForLoad): Set m_currentSrc to empty in
3196 preparation for attempting to load a new url.
3198 2013-11-26 Hans Muller <hmuller@adobe.com>
3200 [CSS Shapes] Support for shape-margin in BoxShape
3201 https://bugs.webkit.org/show_bug.cgi?id=124788
3203 Reviewed by Andreas Kling.
3205 Corrected BoxShape's internal shape-margin/padding bounds FloatRoundedRect
3206 initialization. Tests for the padding bounds will be added when the rest of
3207 shape-padding for box shapes implementation is ready.
3209 Tests: fast/shapes/shape-outside-floats/shape-outside-margin-boxes-001.html
3210 fast/shapes/shape-outside-floats/shape-outside-margin-boxes-002.html
3212 * rendering/shapes/BoxShape.cpp: Use constructor shape-margin,shape-padding parameters.
3213 (WebCore::BoxShape::BoxShape):
3214 * rendering/shapes/BoxShape.h:
3215 * rendering/shapes/Shape.cpp:
3216 (WebCore::createBoxShape): Pass the shape-margin and shape-padding values along to the BoxShape constructor.
3217 (WebCore::Shape::createShape): Ditto.
3219 2013-11-26 Nick Diego Yamane <nick.yamane@openbossa.org>
3221 Remove unnecessary webaudio include from MediaStreamSource header
3222 https://bugs.webkit.org/show_bug.cgi?id=124897
3224 Reviewed by Eric Carlson.
3226 AudioDestinationConsumer.h is included but not used anywhere in
3227 MediaStreamSource implementation.
3229 * platform/mediastream/MediaStreamSource.h:
3231 2013-11-26 Andreas Kling <akling@apple.com>
3233 Avoid unnecessary copy-on-write in FillLayer style application.
3234 <https://webkit.org/b/124878>
3236 We ended up with a lot of cloned StyleBackgroundData objects on
3237 HTML5-8266. This happened because we always forced a copy-on-write
3238 when applying background-image:inherit / background-image:initial.
3240 This patch adds early returns to both functions. In the "inherit"
3241 case, we bail early if the target style already has the same fill
3242 layer data as its parent style.
3244 In the "initial" case, we optimize for the single-FillLayer case
3245 and add an early return if the relevant value is either unset or
3246 equal to the templatized initial value.
3248 2.46 MB progression on HTML5-8266 locally.
3250 Reviewed by Antti Koivisto.
3252 2013-11-26 Antoine Quint <graouts@apple.com>
3254 Web Inspector: Allow showing a context menu on all mouse events.
3255 https://bugs.webkit.org/show_bug.cgi?id=124747
3257 Reviewed by Joseph Pecoraro.
3259 Add a new InspectorFrontendHost::dispatchEventAsContextMenuEvent(Event*) method
3260 to let the inspector front-end dispatch a native contextmenu event that will allow
3261 for a context menu to be shown from within a non-contextmenu event handler.
3263 * inspector/InspectorFrontendHost.cpp:
3264 (WebCore::InspectorFrontendHost::dispatchEventAsContextMenuEvent):
3265 Check that we're dealing with a mouse event, get the frame for the event target
3266 and the event's location to call ContextMenuController::showContextMenuAt()
3267 which will handle the new contextmenu event dispatch to the original event target.
3269 * inspector/InspectorFrontendHost.h:
3270 * inspector/InspectorFrontendHost.idl:
3272 2013-11-25 Sam Weinig <sam@webkit.org>
3274 Convert some Shape code to use references
3275 https://bugs.webkit.org/show_bug.cgi?id=124876
3277 Reviewed by Andreas Kling.
3279 * inspector/InspectorOverlay.cpp:
3280 * rendering/FloatingObjects.cpp:
3281 * rendering/LayoutState.cpp:
3282 * rendering/RenderBlock.cpp:
3283 * rendering/RenderBlock.h:
3284 * rendering/RenderBlockLineLayout.cpp:
3285 * rendering/RenderBox.cpp:
3286 * rendering/RenderBox.h:
3287 * rendering/line/BreakingContextInlineHeaders.h:
3288 * rendering/line/LineWidth.cpp:
3289 * rendering/shapes/ShapeInfo.cpp:
3290 * rendering/shapes/ShapeInfo.h:
3291 * rendering/shapes/ShapeInsideInfo.cpp:
3292 * rendering/shapes/ShapeInsideInfo.h:
3293 * rendering/shapes/ShapeOutsideInfo.cpp:
3294 * rendering/shapes/ShapeOutsideInfo.h:
3295 Replace yet more pointers with references.
3297 2013-11-25 Simon Pena <simon.pena@samsung.com>
3299 [EFL] X11Helper::createPixmap doesn't initialise out value handleId
3300 https://bugs.webkit.org/show_bug.cgi?id=124722
3302 Reviewed by Gyuyoung Kim.
3304 The overloaded functions X11Helper::createPixmap don't initialise out
3305 value handleId, and they do early returns on error situations. Since
3306 the functions are void and they don't communicate their failure in any
3307 way, returning an out value without initialising it could make the
3308 error go farther unnoticed. With the variable being initialised, it can
3309 be reliably checked for errors when the function returns.
3311 * platform/graphics/surfaces/glx/X11Helper.cpp:
3312 (WebCore::X11Helper::createPixmap): Initialise handleId to 0.
3314 2013-11-25 Nick Diego Yamane <nick.yamane@openbossa.org>
3316 Mark URLRegistry's lookup() as const and its child classes as final
3317 https://bugs.webkit.org/show_bug.cgi?id=124865
3319 Reviewed by Eric Carlson.
3321 No new tests needed. No behavior changes.
3323 * Modules/mediasource/MediaSourceRegistry.cpp:
3324 (WebCore::MediaSourceRegistry::lookup): marked as const.
3325 * Modules/mediasource/MediaSourceRegistry.h: MediaSourceRegistry
3327 * Modules/mediastream/MediaStreamRegistry.cpp:
3328 (WebCore::MediaStreamRegistry::lookup): marked as const.
3329 * Modules/mediastream/MediaStreamRegistry.h: MediaStreamRegistry
3332 * html/URLRegistry.h: lookup() marked as const.
3333 (WebCore::URLRegistry::lookup): marked as const.
3335 2013-11-25 Sergio Correia <sergio.correia@openbossa.org>
3337 [MediaStream] Use std::unique_ptr instead of OwnPtr/PassOwnPtr
3338 https://bugs.webkit.org/show_bug.cgi?id=124858
3340 Reviewed by Eric Carlson.
3342 Another step of the OwnPtr/PassOwnPtr => std::unique_ptr conversion,
3343 now targeting mediastream-related code.
3345 No new tests, covered by existing ones.
3347 * Modules/mediastream/RTCDTMFSender.cpp:
3348 * Modules/mediastream/RTCDTMFSender.h:
3349 * Modules/mediastream/RTCDataChannel.cpp:
3350 * Modules/mediastream/RTCDataChannel.h:
3351 * Modules/mediastream/RTCPeerConnection.cpp:
3352 * Modules/mediastream/RTCPeerConnection.h:
3353 * platform/mediastream/MediaStreamSource.cpp:
3354 * platform/mediastream/RTCPeerConnectionHandler.cpp:
3355 * platform/mediastream/RTCPeerConnectionHandler.h:
3356 * platform/mediastream/RTCPeerConnectionHandlerClient.h:
3357 * platform/mock/RTCNotifiersMock.cpp:
3358 * platform/mock/RTCPeerConnectionHandlerMock.cpp:
3359 * platform/mock/RTCPeerConnectionHandlerMock.h:
3361 2013-11-25 Nick Diego Yamane <nick.yamane@openbossa.org>
3363 MediaStreamRegistry should store MediaStreams instead of MediaStreamPrivates
3364 https://bugs.webkit.org/show_bug.cgi?id=124860
3366 Reviewed by Eric Carlson.
3368 MediaStreamRegistry::lookup() should return a MediaStream instead of MediaStreamPrivate.
3370 No new tests needed. No behavior changes.
3372 * Modules/mediastream/MediaStreamRegistry.cpp:
3373 (WebCore::MediaStreamRegistry::registerURL): m_privateStreams -> m_mediaStreams
3374 (WebCore::MediaStreamRegistry::unregisterURL): Ditto.
3375 (WebCore::MediaStreamRegistry::lookup): Override URLRegistry::lookup() instead of add a
3376 new method MediaStream::lookupMediaStreamPrivate().
3377 * Modules/mediastream/MediaStreamRegistry.h:
3378 * html/HTMLMediaElement.cpp:
3379 (HTMLMediaElement::loadResource): call lookup() instead of lookupMediaStreamPrivate()
3381 2013-11-25 peavo@outlook.com <peavo@outlook.com>
3383 [WinCairo] Compile fails when GSTREAMER is not used.
3384 https://bugs.webkit.org/show_bug.cgi?id=124853
3386 Reviewed by Philippe Normand.
3388 * platform/graphics/gstreamer/GStreamerUtilities.cpp: Don't include GStreamerUtilities.h when GSTREAMER is not used.
3390 2013-11-25 Andreas Kling <akling@apple.com>
3392 Deduplicate shortish Text node strings during tree construction.
3393 <https://webkit.org/b/124855>
3395 Let HTMLConstructionSite keep a hash set of already seen strings over
3396 its lifetime. Use this to deduplicate the strings inside Text nodes
3397 for any string up to 64 characters of length.
3399 This optimization already sort-of existed for whitespace-only Texts,
3400 but those are laundered in the AtomicString table which we definitely
3401 don't want to pollute with every single Text. It might be a good idea
3402 to stop using the AtomicString table for all-whitespace Text too.
3404 3.82 MB progression on HTML5-8266 locally.
3406 Reviewed by Anders Carlsson.
3408 2013-11-25 Nick Diego Yamane <nick.yamane@openbossa.org>
3410 Remove unnecessary MediaStreamTrackDescriptor forward declaration
3411 https://bugs.webkit.org/show_bug.cgi?id=124854
3413 Reviewed by Eric Carlson.
3415 No new tests needed. No behavior changed.
3417 * Modules/mediastream/VideoStreamTrack.h:
3419 2013-11-25 Robert Hogan <robert@webkit.org>
3421 Remove code now unnecessary after r159575
3422 https://bugs.webkit.org/show_bug.cgi?id=124809
3424 Reviewed by Antti Koivisto.
3426 Covered by existing tests fast/block/margin-collapse/self-collapsing-block-with-float*
3428 * rendering/line/LineBreaker.cpp:
3429 (WebCore::LineBreaker::skipLeadingWhitespace):
3431 2013-11-25 Laszlo Vidacs <lac@inf.u-szeged.hu>
3433 Vertical border spacing is doubled between table row groups
3434 https://bugs.webkit.org/show_bug.cgi?id=20040
3436 Reviewed by Csaba Osztrogonác.
3438 Based on Chromium fix https://chromium.googlesource.com/chromium/blink/+/eb615069267f895c59bc576f9d65b3fa5add41e9
3440 Rebaseline needed for table related tests (100+).
3442 * rendering/RenderTableSection.cpp:
3443 (WebCore::RenderTableSection::calcRowLogicalHeight):
3445 2013-11-25 Andres Gomez <agomez@igalia.com>
3447 [GStreamer] Seeking fails on media content provided by servers not supporting Range requests
3448 https://bugs.webkit.org/show_bug.cgi?id=85994
3450 Reviewed by Philippe Normand.
3452 Based on the patch written by Andre Moreira Magalhaes.
3454 When the GStreamer web source was doing a "Range" request we were
3455 expecting to receive a 206 status reply with the "Content-Range"
3456 header and just the requested data. Supporting "Range" requests is
3457 not mandatory so, for the servers not supporting it they will be
3458 replying with a 200 status and the whole content of the media
3459 element. Now, we are properly handling these replies too.
3461 Test: http/tests/media/media-seeking-no-ranges-server.html
3463 * platform/graphics/gstreamer/WebKitWebSourceGStreamer.cpp:
3464 (StreamingClient::handleResponseReceived): Do not fail when
3465 receiving 200 as response for HTTP range requests.
3466 (StreamingClient::handleDataReceived): Manually seek on stream
3467 when receiving the full data after a seek.
3469 2013-11-25 Radu Stavila <stavila@adobe.com>
3471 Removed obsolete FIXME after the landing of visual overflow patch (https://bugs.webkit.org/show_bug.cgi?id=118665).
3472 https://bugs.webkit.org/show_bug.cgi?id=124833
3474 Reviewed by Mihnea Ovidenie.
3476 * rendering/RenderRegion.cpp:
3477 (WebCore::RenderRegion::layoutBlock):
3479 2013-11-18 Sergio Villar Senin <svillar@igalia.com>
3481 [CSS Grid Layout] Cache several vectors to avoid malloc/free churn
3482 https://bugs.webkit.org/show_bug.cgi?id=123995
3484 Reviewed by Dean Jackson.
3486 From Blink r158228 by <jchaffraix@chromium.org>
3488 Laying-out the grid items means a lot of calls to
3489 distributeSpaceToTracks() and
3490 resolveContentBasedTrackSizingFunctionsForItems() as they're
3491 called in a loop. This means that there is a lot of malloc/free
3492 going on there. By moving the vectors used by these methods to a
3493 new class which is kept during the whole layout process we save a