1 2012-01-13 Nico Weber <thakis@chromium.org>
3 Remove a unused variable.
4 https://bugs.webkit.org/show_bug.cgi?id=76307
6 Reviewed by James Robinson.
8 * platform/mac/ScrollElasticityController.mm:
9 (WebCore::ScrollElasticityController::snapRubberBandTimerFired):
11 2012-01-13 Nate Chapin <japhet@chromium.org>
13 Revert most of the multipart changes in
14 http://trac.webkit.org/changeset/104756.
15 https://bugs.webkit.org/show_bug.cgi?id=76297
17 Reviewed by Alexey Proskuryakov.
19 http/tests/multipart/invalid-image-data.html
20 should stop asserting on chromium win dbg.
22 * loader/SubresourceLoader.cpp:
23 (WebCore::SubresourceLoader::didReceiveResponse):
24 (WebCore::SubresourceLoader::didReceiveData):
25 (WebCore::SubresourceLoader::sendDataToResource):
27 2011-01-13 Jer Noble <jer.noble@apple.com>
29 WebAudio: Use float instead of double values for gain operations.
30 https://bugs.webkit.org/show_bug.cgi?id=74345
32 Reviewed by Sam Weinig.
34 No new tests; optimization of existing code, so covered by existing test cases.
36 The following functions now take or operate on floats instead of doubles:
37 (WebCore::AudioBus::scale):
38 (WebCore::AudioBus::processWithGainFrom):
39 (WebCore::AudioBus::copyWithGainFrom):
40 (WebCore::AudioBus::sumWithGainFrom):
41 * platform/audio/AudioBus.h:
42 (WebCore::AudioBus::setGain):
43 (WebCore::AudioBus::gain):
44 * platform/audio/AudioChannel.cpp:
45 (WebCore::AudioChannel::scale):
46 * platform/audio/AudioChannel.h:
47 * webaudio/AudioBufferSourceNode.cpp:
48 (WebCore::AudioBufferSourceNode::process):
49 * webaudio/AudioBufferSourceNode.h:
50 * webaudio/AudioGainNode.h:
51 * webaudio/AudioPannerNode.h:
53 2012-01-13 Greg Billock <gbillock@google.com>
55 Don't use pending activity notification in IntentRequest
56 https://bugs.webkit.org/show_bug.cgi?id=76302
58 Reviewed by Adam Barth.
60 * Modules/intents/IntentRequest.cpp:
61 (WebCore::IntentRequest::IntentRequest):
62 (WebCore::IntentRequest::postResult):
63 (WebCore::IntentRequest::postFailure):
65 2012-01-13 Raymond Toy <rtoy@google.com>
67 EQUALPOWER panner incorrectly computes gain
68 https://bugs.webkit.org/show_bug.cgi?id=75767
70 Reviewed by Kenneth Russell.
74 * platform/audio/EqualPowerPanner.cpp:
75 (WebCore::EqualPowerPanner::pan): Correct the formula.
77 2012-01-13 Ojan Vafai <ojan@chromium.org>
79 Unreviewed, rolling out r104972.
80 http://trac.webkit.org/changeset/104972
81 https://bugs.webkit.org/show_bug.cgi?id=75782
85 * css/CSSComputedStyleDeclaration.cpp:
86 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
88 (WebCore::CSSParser::parseValue):
89 * css/CSSProperty.cpp:
90 (WebCore::CSSProperty::isInheritedProperty):
91 * css/CSSPropertyNames.in:
92 * css/CSSStyleApplyProperty.cpp:
93 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
94 * css/CSSStyleSelector.cpp:
95 (WebCore::CSSStyleSelector::applyProperty):
96 * rendering/RenderBox.cpp:
97 (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
98 * rendering/RenderFlexibleBox.cpp:
99 (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
100 (WebCore::RenderFlexibleBox::alignChildren):
101 * rendering/style/RenderStyle.h:
102 (WebCore::RenderStyleBitfields::initialFlexItemAlign):
103 * rendering/style/StyleFlexibleBoxData.cpp:
104 (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
105 (WebCore::StyleFlexibleBoxData::operator==):
106 * rendering/style/StyleFlexibleBoxData.h:
108 2012-01-13 Anders Carlsson <andersca@apple.com>
110 -[WebTileCacheLayer setNeedsDisplay] doesn't trigger invalidation
111 https://bugs.webkit.org/show_bug.cgi?id=76299
113 Reviewed by Simon Fraser.
115 Override -[WebTileCacheLayer setNeedsDisplay] and call TileCache::setNeedsDisplay from there,
116 instead of ending up with a huge rectangle in TileCache::setNeedsDisplayInRect which causes our
117 tile computation logic to fail due to integer overflow when converting from CGFloats to ints.
119 * platform/graphics/ca/mac/TileCache.h:
120 * platform/graphics/ca/mac/TileCache.mm:
121 (WebCore::TileCache::setNeedsDisplay):
122 * platform/graphics/ca/mac/WebTileCacheLayer.mm:
123 (-[WebTileCacheLayer setNeedsDisplay]):
125 2012-01-12 Ojan Vafai <ojan@chromium.org>
128 https://bugs.webkit.org/show_bug.cgi?id=75782
130 Reviewed by Tony Chang.
132 * css/CSSComputedStyleDeclaration.cpp:
133 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
134 Not 100% sure about this, but I think the computed value of
135 flex-item-align needs to take the parent's flex-align into
136 account for computed auto values.
138 (WebCore::CSSParser::parseValue):
139 * css/CSSProperty.cpp:
140 (WebCore::CSSProperty::isInheritedProperty):
141 * css/CSSPropertyNames.in:
142 * css/CSSStyleApplyProperty.cpp:
143 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
144 * css/CSSStyleSelector.cpp:
145 (WebCore::CSSStyleSelector::applyProperty):
146 * rendering/RenderBox.cpp:
147 (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
148 * rendering/RenderFlexibleBox.cpp:
149 (WebCore::flexAlign):
150 (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
151 (WebCore::RenderFlexibleBox::alignChildren):
152 * rendering/style/RenderStyle.h:
153 (WebCore::RenderStyleBitfields::flexAlign):
154 (WebCore::RenderStyleBitfields::setFlexAlign):
155 (WebCore::RenderStyleBitfields::initialFlexAlign):
156 (WebCore::RenderStyleBitfields::initialFlexItemAlign):
157 * rendering/style/StyleFlexibleBoxData.cpp:
158 (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
159 (WebCore::StyleFlexibleBoxData::operator==):
160 * rendering/style/StyleFlexibleBoxData.h:
162 2012-01-13 Simon Fraser <simon.fraser@apple.com>
164 Rename GraphicsContext* argument in various RenderLayer methods
165 https://bugs.webkit.org/show_bug.cgi?id=76283
167 Reviewed by James Robinson/Anders Carlsson.
169 Rename the GraphicsContext* parameter "p" in various RenderLayer
170 methods to "context". "p" was a historical name from when it was
173 * rendering/RenderLayer.cpp:
174 (WebCore::RenderLayer::beginTransparencyLayers):
175 (WebCore::RenderLayer::paint):
176 (WebCore::RenderLayer::paintOverlayScrollbars):
177 (WebCore::RenderLayer::restoreClip):
178 (WebCore::RenderLayer::paintLayer):
179 (WebCore::RenderLayer::paintLayerContentsAndReflection):
180 (WebCore::RenderLayer::paintLayerContents):
181 (WebCore::RenderLayer::paintList):
183 2012-01-13 Mihnea Ovidenie <mihnea@adobe.com>
185 [CSSRegions]Add back region style code removed in r104036
186 https://bugs.webkit.org/show_bug.cgi?id=76064
188 Reviewed by David Hyatt.
190 No new tests. The region style tests are still skipped. A follow up patch will enable
191 both region style for background-color and region style tests.
194 * css/CSSStyleSelector.cpp:
195 (WebCore::RuleData::useInRegionStyle):
196 (WebCore::CSSStyleSelector::CSSStyleSelector):
197 (WebCore::CSSStyleSelector::addMatchedDeclaration):
198 (WebCore::CSSStyleSelector::matchRules):
199 (WebCore::CSSStyleSelector::matchAllRules):
200 (WebCore::CSSStyleSelector::initForRegionStyling):
201 (WebCore::CSSStyleSelector::initRegionRules):
202 (WebCore::CSSStyleSelector::styleForElement):
203 (WebCore::CSSStyleSelector::pseudoStyleForElement):
204 (WebCore::RuleData::RuleData):
205 (WebCore::RuleSet::RuleSet):
206 (WebCore::RuleSet::addToRuleSet):
207 (WebCore::CSSStyleSelector::applyDeclarations):
208 (WebCore::isValidRegionStyleProperty):
209 (WebCore::CSSStyleSelector::applyProperty):
210 * css/CSSStyleSelector.h:
211 (WebCore::CSSStyleSelector::setRegionForStyling):
212 (WebCore::CSSStyleSelector::regionForStyling):
213 (WebCore::CSSStyleSelector::applyPropertyToRegionStyle):
214 * rendering/RenderFlowThread.cpp:
215 (WebCore::RenderFlowThread::clearRenderObjectCustomStyle):
216 (WebCore::RenderFlowThread::setRegionRangeForBox):
217 * rendering/RenderFlowThread.h:
218 * rendering/RenderLayer.cpp:
219 (WebCore::CurrentRenderRegionMaintainer::CurrentRenderRegionMaintainer):
220 (WebCore::CurrentRenderRegionMaintainer::~CurrentRenderRegionMaintainer):
221 (WebCore::RenderLayer::paint):
222 (WebCore::RenderLayer::hitTest):
223 * rendering/RenderObject.cpp:
224 (WebCore::RenderObject::styleInRegion):
225 * rendering/RenderObject.h:
226 (WebCore::RenderObject::canHaveRegionStyle):
227 * rendering/RenderObjectChildList.cpp:
228 (WebCore::RenderObjectChildList::removeChildNode):
229 * rendering/RenderRegion.cpp:
230 (WebCore::RenderRegion::renderObjectRegionStyle):
231 (WebCore::RenderRegion::computeStyleInRegion):
232 (WebCore::RenderRegion::clearObjectStyleInRegion):
233 * rendering/RenderRegion.h:
234 * rendering/RenderView.cpp:
235 (WebCore::RenderView::RenderView):
236 * rendering/RenderView.h:
237 (WebCore::RenderView::currentRenderRegion):
238 (WebCore::RenderView::setCurrentRenderRegion):
240 2012-01-13 Kenneth Russell <kbr@google.com>
242 Unreviewed build fix; added project.pbxproj changes lost in r104954.
243 https://bugs.webkit.org/show_bug.cgi?id=75906
245 * WebCore.xcodeproj/project.pbxproj:
247 2012-01-13 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
249 TextureMapper: Extract layer transform logic to a LayerTransform class.
250 https://bugs.webkit.org/show_bug.cgi?id=76291
252 Reviewed by Noam Rosenthal.
254 * GNUmakefile.list.am:
257 * platform/graphics/texmap/LayerTransform.cpp: Added.
258 (WebCore::LayerTransform::LayerTransform):
259 (WebCore::LayerTransform::setPosition):
260 (WebCore::LayerTransform::setSize):
261 (WebCore::LayerTransform::setAnchorPoint):
262 (WebCore::LayerTransform::setFlattening):
263 (WebCore::LayerTransform::setLocalTransform):
264 (WebCore::LayerTransform::setChildrenTransform):
265 (WebCore::LayerTransform::combined):
266 (WebCore::LayerTransform::combinedForChildren):
267 (WebCore::LayerTransform::combineTransforms):
268 (WebCore::LayerTransform::combineTransformsForChildren):
269 * platform/graphics/texmap/LayerTransform.h: Added.
270 * platform/graphics/texmap/TextureMapperNode.cpp:
271 (WebCore::TextureMapperNode::setTransform):
272 (WebCore::TextureMapperNode::computeTransformsRecursive):
273 (WebCore::TextureMapperNode::collectVisibleContentsRects):
274 (WebCore::TextureMapperNode::paintSelf):
275 (WebCore::TextureMapperNode::compareGraphicsLayersZValue):
276 (WebCore::TextureMapperNode::paintSelfAndChildren):
277 (WebCore::TextureMapperNode::paintReflection):
278 (WebCore::TextureMapperNode::syncCompositingStateSelf):
279 * platform/graphics/texmap/TextureMapperNode.h:
280 (WebCore::TextureMapperNode::TextureMapperNode):
282 2012-01-13 Kenneth Russell <kbr@google.com>
284 Unreviewed, build fix for unused argument warning after r104954.
285 https://bugs.webkit.org/show_bug.cgi?id=75906
287 Also fixed up somebody's bad merge in Source/WebCore/ChangeLog.
289 * html/canvas/WebGLObject.cpp:
290 (WebCore::WebGLObject::WebGLObject):
292 2012-01-13 Raphael Kubo da Costa <kubo@profusion.mobi>
294 [soup] Initialize m_soupFlags in all ResourceResponse constructors.
296 Rubber-stamped by Gustavo Noronha Silva.
298 m_soupFlags was being initialized in two of the three ResourceResponse
299 constructors, causing some trouble in
300 FrameLoaderClient::dispatchDidReceiveResponse (ports which use
301 ResourceRequest::setSoupMessageFlags with the response's unitialized
304 * platform/network/soup/ResourceResponse.h:
305 (WebCore::ResourceResponse::ResourceResponse):
307 2012-01-13 Alexey Proskuryakov <ap@apple.com>
309 CFURLRef to KURL conversion shouldn't turn raw paths into file URLs
310 https://bugs.webkit.org/show_bug.cgi?id=76251
312 Reviewed by Dan Bernstein.
314 * platform/cf/KURLCFNet.cpp: (WebCore::KURL::KURL): Removed the offending code.
316 2012-01-13 Konrad Piascik <kpiascik@rim.com>
318 Web Inspector: Disconnecting the front-end does not disable profiling.
319 https://bugs.webkit.org/show_bug.cgi?id=76213
321 Reviewed by Pavel Feldman.
325 * inspector/InspectorProfilerAgent.cpp:
326 (WebCore::InspectorProfilerAgent::clearFrontend):
328 2012-01-13 Andreas Kling <awesomekling@apple.com>
330 JSC/DOM bindings: Reduce HandleHeap churn in cacheWrapper().
331 <http://webkit.org/b/76271>
333 Reviewed by Darin Adler.
335 Use JSC::Weak::swap() to move JSDOMWrappers into the DOMWrapperWorld's wrapper map.
336 This avoids invoking the JSC::Weak copy constructor and associated HandleHeap churn.
338 * bindings/js/JSDOMBinding.h:
339 (WebCore::cacheWrapper):
341 2012-01-13 Vsevolod Vlasov <vsevik@chromium.org>
343 Web Inspector: [InspectorIndexedDB] Add InspectorIndexedDBAgent and IndexedDBModel, pass database names to inspector.
344 https://bugs.webkit.org/show_bug.cgi?id=76264
346 Reviewed by Pavel Feldman.
350 * WebCore.vcproj/WebCore.vcproj:
351 * inspector/CodeGeneratorInspector.py:
352 * inspector/Inspector.json:
353 * inspector/InspectorController.cpp:
354 (WebCore::InspectorController::InspectorController):
355 * inspector/InspectorIndexedDBAgent.cpp: Added.
356 (WebCore::InspectorIndexedDBAgent::FrontendProvider::create):
357 (WebCore::InspectorIndexedDBAgent::FrontendProvider::~FrontendProvider):
358 (WebCore::InspectorIndexedDBAgent::FrontendProvider::frontend):
359 (WebCore::InspectorIndexedDBAgent::FrontendProvider::clearFrontend):
360 (WebCore::InspectorIndexedDBAgent::FrontendProvider::FrontendProvider):
361 (WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent):
362 (WebCore::InspectorIndexedDBAgent::~InspectorIndexedDBAgent):
363 (WebCore::InspectorIndexedDBAgent::setFrontend):
364 (WebCore::InspectorIndexedDBAgent::clearFrontend):
365 (WebCore::InspectorIndexedDBAgent::restore):
366 (WebCore::InspectorIndexedDBAgent::enable):
367 (WebCore::InspectorIndexedDBAgent::disable):
368 (WebCore::InspectorIndexedDBAgent::requestDatabaseNamesForFrame):
369 * inspector/InspectorIndexedDBAgent.h: Added.
370 (WebCore::InspectorIndexedDBAgent::create):
371 * inspector/InspectorPageAgent.cpp:
372 (WebCore::InspectorPageAgent::buildObjectForFrame):
373 * inspector/compile-front-end.sh:
374 * inspector/front-end/IndexedDBModel.js: Added.
375 * inspector/front-end/ResourceTreeModel.js:
376 (WebInspector.ResourceTreeFrame):
377 (WebInspector.ResourceTreeFrame.prototype.get securityOrigin):
378 (WebInspector.ResourceTreeFrame.prototype._navigate):
379 * inspector/front-end/WebKit.qrc:
380 * inspector/front-end/inspector.html:
382 2012-01-13 Sheriff Bot <webkit.review.bot@gmail.com>
384 Unreviewed, rolling out r104935.
385 http://trac.webkit.org/changeset/104935
386 https://bugs.webkit.org/show_bug.cgi?id=76277
388 Breaks AppleWin compilation (Requested by vsevik on #webkit).
392 * WebCore.vcproj/WebCore.vcproj:
393 * inspector/CodeGeneratorInspector.py:
394 * inspector/Inspector.json:
395 * inspector/InspectorController.cpp:
396 (WebCore::InspectorController::InspectorController):
397 * inspector/InspectorIndexedDBAgent.cpp: Removed.
398 * inspector/InspectorIndexedDBAgent.h: Removed.
399 * inspector/InspectorPageAgent.cpp:
400 (WebCore::InspectorPageAgent::buildObjectForFrame):
401 * inspector/compile-front-end.sh:
402 * inspector/front-end/IndexedDBModel.js: Removed.
403 * inspector/front-end/ResourceTreeModel.js:
404 (WebInspector.ResourceTreeFrame):
405 (WebInspector.ResourceTreeFrame.prototype._navigate):
406 * inspector/front-end/WebKit.qrc:
407 * inspector/front-end/inspector.html:
409 2012-01-13 Vsevolod Vlasov <vsevik@chromium.org>
411 Web Inspector: [InspectorIndexedDB] Add InspectorIndexedDBAgent and IndexedDBModel, pass database names to inspector.
412 https://bugs.webkit.org/show_bug.cgi?id=76264
414 Reviewed by Pavel Feldman.
418 * WebCore.vcproj/WebCore.vcproj:
419 * inspector/CodeGeneratorInspector.py:
420 * inspector/Inspector.json:
421 * inspector/InspectorController.cpp:
422 (WebCore::InspectorController::InspectorController):
423 * inspector/InspectorIndexedDBAgent.cpp: Added.
424 (WebCore::InspectorIndexedDBAgent::FrontendProvider::create):
425 (WebCore::InspectorIndexedDBAgent::FrontendProvider::~FrontendProvider):
426 (WebCore::InspectorIndexedDBAgent::FrontendProvider::frontend):
427 (WebCore::InspectorIndexedDBAgent::FrontendProvider::clearFrontend):
428 (WebCore::InspectorIndexedDBAgent::FrontendProvider::FrontendProvider):
429 (WebCore::InspectorIndexedDBAgent::InspectorIndexedDBAgent):
430 (WebCore::InspectorIndexedDBAgent::~InspectorIndexedDBAgent):
431 (WebCore::InspectorIndexedDBAgent::setFrontend):
432 (WebCore::InspectorIndexedDBAgent::clearFrontend):
433 (WebCore::InspectorIndexedDBAgent::restore):
434 (WebCore::InspectorIndexedDBAgent::enable):
435 (WebCore::InspectorIndexedDBAgent::disable):
436 (WebCore::InspectorIndexedDBAgent::requestDatabaseNamesForFrame):
437 * inspector/InspectorIndexedDBAgent.h: Added.
438 (WebCore::InspectorIndexedDBAgent::create):
439 * inspector/InspectorPageAgent.cpp:
440 (WebCore::InspectorPageAgent::buildObjectForFrame):
441 * inspector/compile-front-end.sh:
442 * inspector/front-end/IndexedDBModel.js: Added.
443 * inspector/front-end/ResourceTreeModel.js:
444 (WebInspector.ResourceTreeFrame):
445 (WebInspector.ResourceTreeFrame.prototype.get securityOrigin):
446 (WebInspector.ResourceTreeFrame.prototype._navigate):
447 * inspector/front-end/WebKit.qrc:
448 * inspector/front-end/inspector.html:
450 2012-01-13 Simon Hausmann <simon.hausmann@nokia.com>
452 [Qt] Fix build when using TextureMapper with OpenGL/ES
453 https://bugs.webkit.org/show_bug.cgi?id=76268
455 Reviewed by Tor Arne Vestbø.
457 * WebCore.pri: When the texture mapper uses OpenGL/ES, then it also relies on the
458 availability of libEGL by using eglGetCurrentContext(). In that case we need to link against
461 2012-01-13 Jochen Eisinger <jochen@chromium.org>
463 Don't artifically keep IDBDatabase objects alive if there are no references to it.
464 https://bugs.webkit.org/show_bug.cgi?id=75859
466 Originally, this code was added to keep the IDBDatabase object alive
467 even if no reference from JavaScript to the object existed, because
468 running transactions could still send events for this database
469 connection. Meanwhile, transactions are marked as active DOM objects
470 during their lifetime, and they keep a RefPtr to the IDBDatabase
471 object, so this hack is no longer required.
473 Reviewed by Tony Gentilcore.
475 Test: storage/indexeddb/delete-closed-database-object.html
477 * storage/IDBDatabase.cpp:
478 * storage/IDBDatabase.h:
480 2012-01-12 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
482 TextureMapper: Do the node transform computation when painting.
483 https://bugs.webkit.org/show_bug.cgi?id=74721
485 Reviewed by Noam Rosenthal.
487 The transform of the node tree was built during the syncCompositingState
488 step. This would cause an ASSERT with QWebView, trying to use a dirty transform
489 state since the rootTextureMapperNode in QWebFramePrivate::renderCompositedLayers
490 doesn't run the sync step after getting the world transform set.
492 This moves the transform computation from the sync to the paint step to
493 prevent making sure that the sync step has been run on all nodes before painting.
495 * platform/graphics/texmap/TextureMapperNode.cpp:
496 (WebCore::TextureMapperNode::computeTransformsRecursive):
497 (WebCore::TextureMapperNode::computeTiles):
498 Remove an unused variable.
499 (WebCore::TextureMapperNode::paint):
500 (WebCore::TextureMapperNode::syncAnimationsRecursively):
501 (WebCore::TextureMapperNode::syncCompositingState):
502 * platform/graphics/texmap/TextureMapperNode.h:
504 2012-01-12 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
506 TextureMapper: Simplify transform manipulations.
507 https://bugs.webkit.org/show_bug.cgi?id=74719
509 Reviewed by Noam Rosenthal.
511 - Make sure that the replica node has a complete transform and
512 use it directly instead of keeping a copy in the source.
513 - Apply the origin and position translation only once, on the
514 target and descendants transforms.
515 - Use to2dTransform() on !preserves3D layers instead of doing
516 the flattening manually.
517 - Remove mentions of perspective as this is handled by WebCore
518 through the children transform.
519 - Apply the inverse target transform on the replica only where it
520 is needed in paintReflection since it uses the full transform in paintSelf.
521 - Merge the base and local transforms.
523 * platform/graphics/texmap/TextureMapperNode.cpp:
524 (WebCore::TextureMapperNode::setTransform):
525 (WebCore::TextureMapperNode::computeTransformsSelf):
526 (WebCore::TextureMapperNode::computeAllTransforms):
527 (WebCore::TextureMapperNode::paintSelf):
528 (WebCore::TextureMapperNode::paintReflection):
529 * platform/graphics/texmap/TextureMapperNode.h:
531 2012-01-12 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
533 TextureMapper: Fix the fillsForward transform adjustment in syncAnimations.
534 https://bugs.webkit.org/show_bug.cgi?id=76184
536 Reviewed by Noam Rosenthal.
538 Also make the intention clearer by using setTransform and setOpacity.
540 * platform/graphics/texmap/TextureMapperNode.cpp:
541 (WebCore::TextureMapperNode::syncAnimations):
543 2012-01-13 Vsevolod Vlasov <vsevik@chromium.org>
545 Unreviewed inspector scripts navigator style fixes.
547 * inspector/front-end/scriptsPanel.css:
548 (#scripts-editor-container-tabbed-pane .tabbed-pane-header-tab):
550 2012-01-13 Jochen Eisinger <jochen@chromium.org>
552 Once we prepared a script element for execution, execute it, even if the script element was meanwhile removed from the dom tree.
553 https://bugs.webkit.org/show_bug.cgi?id=76083
555 Reviewed by Adam Barth.
557 This bug was caught by the following IE Test Center test:
559 http://samples.msdn.microsoft.com/ietestcenter/HTML5/show_async_test.htm?11_RemovingAsyncScript
561 Test: http/tests/misc/async-script-removed.html
562 http/tests/misc/async-script.html
564 * dom/ScriptElement.cpp:
565 * dom/ScriptElement.h:
566 * dom/ScriptRunner.cpp:
567 (WebCore::ScriptRunner::queueScriptForExecution):
568 * html/HTMLScriptElement.cpp:
569 * html/HTMLScriptElement.h:
570 * svg/SVGScriptElement.cpp:
571 * svg/SVGScriptElement.h:
573 2012-01-12 Nikolas Zimmermann <nzimmermann@rim.com>
575 Large SVG text layout performance regression in r81168
576 https://bugs.webkit.org/show_bug.cgi?id=65711
578 Reviewed by Antti Koivisto.
580 Finish SVGTextMetricsBuilder introduction, tested in my local svg-text-performance branch.
581 SVGTextMetricsBuilder has two public methods:
582 a) SVGTextMetricsBuilder::measureTextRenderer(RenderSVGInlineText*)
583 It will be used exclusively for non-initial, incremental layout changes. Once the inital
584 text layout ran, any mutation of eg. a child text node of a <tspan>, will only trigger
585 a rebuild of the layout attributes associated with the passed in renderer.
587 b) SVGTextMetricsBuilder::buildMetricsAndLayoutAttributes(RenderSVGText*, RenderSVGInlineText* stopAtLeaf, SVGCharacterDataMap& allCharactersMap)
589 This carries out the initial layout phase. It measures all characters of the whole <text> subtree, and stores the SVGTextMetrics for each character
590 in the SVGTextLayoutAttributes, stored in the RenderSVGInlineText object. It requires a SVGCharacterDataMap allCharactersMap as input argument,
591 which contains a HashMap<unsigned, {float x, y, dx, dy, rotate}>, which maps each character position to a set of x/y/dx/dy/rotate values.
592 The SVGCharacterDataMap living in SVGTextLayoutAttributes will be filled, from the global "allCharactersMap", so that each RenderSVGInlineText only
593 stores the positioning information for its children, if any.
595 Note: SVGTextMetricsBuilder is not yet deployed, so this talks about the design, once everything is landed.
598 This is never used for the initial layout phase. If the initial layout is done, and eg. a <tspan> is added to the <text> subtree, we no longer
599 need to rebuild the metrics map & layout attributes for the whole tree, but only for the desired <tspan>, and its previous/next sibling, if present
600 (which may be affected by the inclusion of another node inbetween them).
602 SVGTextMetricsBuilder is now finished, and will be used in the next patch chunk.
603 Doesn't affect any tests yet.
605 * rendering/svg/SVGTextLayoutAttributes.h:
606 (WebCore::SVGTextLayoutAttributes::clear):
607 (WebCore::SVGCharacterData::SVGCharacterData):
608 * rendering/svg/SVGTextMetricsBuilder.cpp:
609 (WebCore::SVGTextMetricsBuilder::SVGTextMetricsBuilder):
610 (WebCore::SVGTextMetricsBuilder::currentCharacterStartsSurrogatePair):
611 (WebCore::SVGTextMetricsBuilder::advance):
612 (WebCore::SVGTextMetricsBuilder::advanceSimpleText):
613 (WebCore::SVGTextMetricsBuilder::advanceComplexText):
614 (WebCore::SVGTextMetricsBuilder::initializeMeasurementWithTextRenderer):
615 (WebCore::MeasureTextData::MeasureTextData):
616 (WebCore::SVGTextMetricsBuilder::measureTextRenderer):
617 (WebCore::SVGTextMetricsBuilder::walkTree):
618 (WebCore::SVGTextMetricsBuilder::measureTextRenderer):
619 (WebCore::SVGTextMetricsBuilder::buildMetricsAndLayoutAttributes):
620 * rendering/svg/SVGTextMetricsBuilder.h:
622 2012-01-13 Pavel Feldman <pfeldman@google.com>
624 Not reviewed: Fixing Win builders.
626 * inspector/DOMEditor.cpp:
627 (WebCore::DOMEditor::diff):
629 2012-01-13 Grzegorz Czajkowski <g.czajkowski@samsung.com>
631 [EFL] Add 'Copy Image Address' to context menu.
632 https://bugs.webkit.org/show_bug.cgi?id=76153
634 Reviewed by Andreas Kling.
636 Enables 'Copy Image Address' option to context menu in WebKit-EFL as it is enabled in GTK and QT ports.
638 * page/ContextMenuController.cpp:
639 (WebCore::ContextMenuController::contextMenuItemSelected):
640 (WebCore::ContextMenuController::populate):
641 (WebCore::ContextMenuController::checkOrEnableIfNeeded):
642 * platform/ContextMenuItem.h:
643 * platform/LocalizationStrategy.h:
644 * platform/LocalizedStrings.cpp:
645 * platform/LocalizedStrings.h:
646 * platform/efl/LocalizedStringsEfl.cpp:
647 (WebCore::contextMenuItemTagCopyImageUrlToClipboard):
649 2012-01-13 Pavel Feldman <pfeldman@google.com>
651 Not reviewed: 32bit build fix.
653 * inspector/DOMEditor.cpp:
654 * inspector/DOMEditor.h:
656 2012-01-13 Mario Sanchez Prada <msanchez@igalia.com>
658 Unreviewed, rolling out r104905.
659 http://trac.webkit.org/changeset/104905
660 https://bugs.webkit.org/show_bug.cgi?id=76267
662 This patch broke tests in the GTK 64bit Debug bot (Requested
663 by msanchez on #webkit).
665 * editing/gtk/FrameSelectionGtk.cpp:
666 (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
668 2012-01-13 Pavel Feldman <pfeldman@google.com>
670 Web Inspector: make HTML editing preserve node identity when node nesting level changes.
671 https://bugs.webkit.org/show_bug.cgi?id=76183
673 Reviewed by Yury Semikhatsky.
675 Test: inspector/elements/set-outer-html-2.html
677 * inspector/DOMEditor.cpp:
678 (WebCore::DOMEditor::patchDocument):
679 (WebCore::DOMEditor::patchNode):
680 (WebCore::DOMEditor::innerPatchHTMLElement):
681 (WebCore::DOMEditor::innerPatchNode):
682 (WebCore::DOMEditor::diff):
683 (WebCore::DOMEditor::innerPatchChildren):
684 (WebCore::DOMEditor::createDigest):
685 (WebCore::DOMEditor::insertBefore):
686 (WebCore::DOMEditor::removeChild):
687 (WebCore::DOMEditor::markNodeAsUsed):
688 (WebCore::DOMEditor::dumpMap):
689 * inspector/DOMEditor.h:
690 * inspector/InspectorDOMAgent.cpp:
691 (WebCore::InspectorDOMAgent::setOuterHTML):
693 2012-01-13 Shinya Kawanaka <shinyak@google.com>
695 ShadowContentElement should be able to use query.
696 https://bugs.webkit.org/show_bug.cgi?id=75302
698 Reviewed by Hajime Morita.
700 This patch introduces a selector to query elements in ShadowContentElement.
701 This can be used instead of ShadowContentElement::shouldInclude in more sophisticated ways.
703 Tests: fast/dom/shadow/shadow-contents-select-expected.html
704 fast/dom/shadow/shadow-contents-select.html
707 * GNUmakefile.list.am:
710 * WebCore.vcproj/WebCore.vcproj:
711 * WebCore.xcodeproj/project.pbxproj:
712 * dom/DOMAllInOne.cpp:
713 * dom/SelectorQuery.cpp:
714 (WebCore::SelectorDataList::SelectorDataList):
715 Extracted from SelectorQueryto share codes with ShadowContentSelectorQuery.
716 (WebCore::SelectorDataList::initialize):
717 (WebCore::SelectorDataList::matches):
718 (WebCore::SelectorDataList::queryAll):
719 (WebCore::SelectorDataList::queryFirst):
720 (WebCore::SelectorDataList::canUseIdLookup):
721 (WebCore::SelectorDataList::execute):
722 (WebCore::SelectorQuery::SelectorQuery):
723 (WebCore::SelectorQuery::queryAll):
724 (WebCore::SelectorQuery::queryFirst):
725 * dom/SelectorQuery.h:
726 (WebCore::SelectorDataList::size):
727 * dom/ShadowContentElement.cpp:
728 (WebCore::ShadowContentElement::select):
729 (WebCore::ShadowContentElement::setSelect):
730 * dom/ShadowContentElement.h:
731 * dom/ShadowContentSelectorQuery.cpp: Added.
732 (WebCore::ShadowContentSelectorQuery::ShadowContentSelectorQuery):
733 (WebCore::ShadowContentSelectorQuery::matches):
734 Returns true if Node is matched by the query.
735 * dom/ShadowContentSelectorQuery.h: Copied from Source/WebCore/dom/ShadowContentElement.h.
736 * dom/ShadowInclusionSelector.cpp:
737 (WebCore::ShadowInclusionSelector::select):
738 * dom/ShadowInclusionSelector.h:
739 * html/HTMLAttributeNames.in:
740 * html/HTMLDetailsElement.cpp:
741 (WebCore::summaryQuerySelector):
742 (WebCore::DetailsContentElement::DetailsContentElement): Re-implemented using query.
743 (WebCore::DetailsSummaryElement::DetailsSummaryElement): ditto.
745 2012-01-13 Ilya Tikhonovsky <loislo@chromium.org>
747 Web Inspector: Detailed heap snapshot. _calculateFlags is too slow on a large heap snapshot.
748 https://bugs.webkit.org/show_bug.cgi?id=76252
750 _calculateFlags speed is about 10k edges per second.
751 It requires 150sec for the snapshot with 1.5m edges.
752 The root of problem is var node = list.shift();
753 shift() is not effective in term of memory and cpu.
754 In our case it can be replaced with pop().
755 Now the function works 40 times faster.
757 Drive by change: if statement was reformatted a bit for better readability.
759 Reviewed by Yury Semikhatsky.
761 * inspector/front-end/HeapSnapshot.js:
762 (WebInspector.HeapSnapshot.prototype._calculateFlags):
764 2012-01-13 Alexander Pavlov <apavlov@chromium.org>
766 Web Inspector: [Chromium] JavaScriptOutlineDialog fails to open
767 https://bugs.webkit.org/show_bug.cgi?id=76259
769 Reviewed by Yury Semikhatsky.
773 2012-01-13 Kentaro Hara <haraken@chromium.org>
775 text-decorations should not be propagated to floating, absolutely or fixed
776 positioned decendants
777 https://bugs.webkit.org/show_bug.cgi?id=18611
779 Reviewed by Darin Adler.
781 Previously text-decorations were propagated to all child elements,
782 but they should not be propagated to out-of-flow descendants,
783 i.e. floating, absolutely or fixed positioned elements.
785 The spec says "text decorations are not propagated to any out-of-flow descendants":
786 http://www.w3.org/TR/2011/WD-css3-text-20110901/#decoration
788 Test: fast/css/text-decoration-in-descendants.html
790 * rendering/RenderObject.cpp:
791 (WebCore::RenderObject::getTextDecorationColors):
793 2012-01-13 Kent Tamura <tkent@chromium.org>
795 REGRESSION (r104668): Crash in HTMLFormElement destructor if the
796 document contains radio groups with the identical name.
797 https://bugs.webkit.org/show_bug.cgi?id=76206
799 Reviewed by Darin Adler.
801 Test: fast/forms/radio/radio-group-document-destruction.html
803 * html/HTMLInputElement.cpp:
804 (WebCore::HTMLInputElement::~HTMLInputElement):
805 setForm(0) may register this to a document-level radio button group.
806 We need to unregister this from the group because
807 Document::checkedRadioButtons() is still accessible from other objects.
809 2012-01-13 Mario Sanchez Prada <msanchez@igalia.com>
811 [GTK] ATK text-caret-moved and text-selection-changed events not being emitted
812 https://bugs.webkit.org/show_bug.cgi?id=76069
814 Reviewed by Martin Robinson.
816 Fix bug introduced with patch for Bug 72830.
818 * editing/gtk/FrameSelectionGtk.cpp:
819 (WebCore::FrameSelection::notifyAccessibilityForSelectionChange):
820 Pass the right accessibility object associated with the current
821 selection to objectFocusedAndCaretOffsetUnignored.
823 2012-01-13 Alexandru Chiculita <achicu@adobe.com>
825 Refactor RenderLayerBacking::paintIntoLayer and RenderLayer::paintLayer()/paintLayerContents() to avoid duplicate code
826 https://bugs.webkit.org/show_bug.cgi?id=75983
828 Reviewed by Simon Fraser.
830 No new tests, just merging two duplicate methods.
832 * rendering/RenderLayer.cpp:
833 (WebCore::RenderLayer::paintLayer):
834 This method is used only in non-composited mode, so I've moved the check for composited mode much earlier.
836 (WebCore::RenderLayer::paintLayerContentsAndReflection):
837 Also used just in non-composited mode, it will draw the reflection and then just call paintLayerContents.
839 (WebCore::RenderLayer::paintLayerContents):
840 Old method, that is now used by both composited and non-composited mode. I've added 3 more flags used to render the
841 Graphics layers: Background, Foreground and Mask.
843 * rendering/RenderLayer.h:
844 * rendering/RenderLayerBacking.cpp:
845 (WebCore::RenderLayerBacking::paintIntoLayer):
846 Removed all the code and delegated the work to RenderLayer::paintLayerContents.
848 2012-01-12 Gavin Barraclough <barraclough@apple.com>
850 Clean up putDirect (part 2)
851 https://bugs.webkit.org/show_bug.cgi?id=76232
853 Reviewed by Sam Weinig.
855 Rename putWithAttributes to putDirectVirtual.
857 * bindings/js/JSDOMWindowShell.cpp:
858 (WebCore::JSDOMWindowShell::putDirectVirtual):
859 * bindings/js/JSDOMWindowShell.h:
861 2012-01-12 MORITA Hajime <morrita@google.com>
863 [Chromium] JSExportMacros.h should be visible.
864 https://bugs.webkit.org/show_bug.cgi?id=76147
866 Reviewed by Tony Chang.
868 No new tests. No behavior change.
872 2012-01-12 ChangSeok Oh <shivamidow@gmail.com>
874 Split GraphicsContext3DOpenGL into several files
875 https://bugs.webkit.org/show_bug.cgi?id=75462
877 Reviewed by Kenneth Russell.
879 Split GraphicsContext3DOpenGL.cpp into three files, GraphicsContext3DOpenGLCommon.cpp,
880 GraphicsContext3DOpenGL.cpp & GraphicsContext3DOpenGLES.cpp so that makes gles support possible
881 for WebGL etc. Most of common APIs between gl and gles are in GraphicsContext3DOpenGLCommon.cpp.
882 The other gl and gles specific APIs are placed apart in GraphicsContext3DOpenGL.cpp &
883 GraphicsContext3DOpenGLES.cpp
885 No new tests required.
887 * GNUmakefile.list.am: Added GraphicsContext3DOpenGLCommon.cpp
888 * Target.pri: Added GraphicsContext3DOpenGLCommon.cpp
889 * WebCore.gypi: Added GraphicsContext3DOpenGLCommon.cpp
890 * WebCore.xcodeproj/project.pbxproj: Added GraphicsContext3DOpenGLCommon.cpp
891 * platform/graphics/opengl/GraphicsContext3DOpenGL.cpp:
892 (WebCore::GraphicsContext3D::readPixels):
893 (WebCore::GraphicsContext3D::renderbufferStorage):
894 * platform/graphics/opengl/GraphicsContext3DOpenGLCommon.cpp: Copied from Source/WebCore/platform/graphics/opengl/GraphicsContext3DOpenGL.cpp.
895 (WebCore::GraphicsContext3D::validateAttributes):
896 (WebCore::GraphicsContext3D::isResourceSafe):
897 (WebCore::GraphicsContext3D::paintRenderingResultsToCanvas):
898 (WebCore::GraphicsContext3D::paintCompositedResultsToCanvas):
899 (WebCore::GraphicsContext3D::paintRenderingResultsToImageData):
900 (WebCore::GraphicsContext3D::getInternalFramebufferSize):
901 (WebCore::GraphicsContext3D::activeTexture):
902 (WebCore::GraphicsContext3D::attachShader):
903 (WebCore::GraphicsContext3D::bindAttribLocation):
904 (WebCore::GraphicsContext3D::bindBuffer):
905 (WebCore::GraphicsContext3D::bindRenderbuffer):
906 (WebCore::GraphicsContext3D::bindTexture):
907 (WebCore::GraphicsContext3D::blendColor):
908 (WebCore::GraphicsContext3D::blendEquation):
909 (WebCore::GraphicsContext3D::blendEquationSeparate):
910 (WebCore::GraphicsContext3D::blendFunc):
911 (WebCore::GraphicsContext3D::blendFuncSeparate):
912 (WebCore::GraphicsContext3D::bufferData):
913 (WebCore::GraphicsContext3D::bufferSubData):
914 (WebCore::GraphicsContext3D::checkFramebufferStatus):
915 (WebCore::GraphicsContext3D::clearColor):
916 (WebCore::GraphicsContext3D::clear):
917 (WebCore::GraphicsContext3D::clearDepth):
918 (WebCore::GraphicsContext3D::clearStencil):
919 (WebCore::GraphicsContext3D::colorMask):
920 (WebCore::GraphicsContext3D::compileShader):
921 (WebCore::GraphicsContext3D::cullFace):
922 (WebCore::GraphicsContext3D::depthFunc):
923 (WebCore::GraphicsContext3D::depthMask):
924 (WebCore::GraphicsContext3D::depthRange):
925 (WebCore::GraphicsContext3D::detachShader):
926 (WebCore::GraphicsContext3D::disable):
927 (WebCore::GraphicsContext3D::disableVertexAttribArray):
928 (WebCore::GraphicsContext3D::drawArrays):
929 (WebCore::GraphicsContext3D::drawElements):
930 (WebCore::GraphicsContext3D::enable):
931 (WebCore::GraphicsContext3D::enableVertexAttribArray):
932 (WebCore::GraphicsContext3D::finish):
933 (WebCore::GraphicsContext3D::flush):
934 (WebCore::GraphicsContext3D::framebufferRenderbuffer):
935 (WebCore::GraphicsContext3D::framebufferTexture2D):
936 (WebCore::GraphicsContext3D::frontFace):
937 (WebCore::GraphicsContext3D::generateMipmap):
938 (WebCore::GraphicsContext3D::getActiveAttrib):
939 (WebCore::GraphicsContext3D::getAttachedShaders):
940 (WebCore::GraphicsContext3D::getAttribLocation):
941 (WebCore::GraphicsContext3D::getContextAttributes):
942 (WebCore::GraphicsContext3D::getError):
943 (WebCore::GraphicsContext3D::getString):
944 (WebCore::GraphicsContext3D::hint):
945 (WebCore::GraphicsContext3D::isBuffer):
946 (WebCore::GraphicsContext3D::isEnabled):
947 (WebCore::GraphicsContext3D::isFramebuffer):
948 (WebCore::GraphicsContext3D::isProgram):
949 (WebCore::GraphicsContext3D::isRenderbuffer):
950 (WebCore::GraphicsContext3D::isShader):
951 (WebCore::GraphicsContext3D::isTexture):
952 (WebCore::GraphicsContext3D::lineWidth):
953 (WebCore::GraphicsContext3D::linkProgram):
954 (WebCore::GraphicsContext3D::pixelStorei):
955 (WebCore::GraphicsContext3D::polygonOffset):
956 (WebCore::GraphicsContext3D::releaseShaderCompiler):
957 (WebCore::GraphicsContext3D::sampleCoverage):
958 (WebCore::GraphicsContext3D::scissor):
959 (WebCore::GraphicsContext3D::shaderSource):
960 (WebCore::GraphicsContext3D::stencilFunc):
961 (WebCore::GraphicsContext3D::stencilFuncSeparate):
962 (WebCore::GraphicsContext3D::stencilMask):
963 (WebCore::GraphicsContext3D::stencilMaskSeparate):
964 (WebCore::GraphicsContext3D::stencilOp):
965 (WebCore::GraphicsContext3D::stencilOpSeparate):
966 (WebCore::GraphicsContext3D::texParameterf):
967 (WebCore::GraphicsContext3D::texParameteri):
968 (WebCore::GraphicsContext3D::uniform1f):
969 (WebCore::GraphicsContext3D::uniform1fv):
970 (WebCore::GraphicsContext3D::uniform2f):
971 (WebCore::GraphicsContext3D::uniform2fv):
972 (WebCore::GraphicsContext3D::uniform3f):
973 (WebCore::GraphicsContext3D::uniform3fv):
974 (WebCore::GraphicsContext3D::uniform4f):
975 (WebCore::GraphicsContext3D::uniform4fv):
976 (WebCore::GraphicsContext3D::uniform1i):
977 (WebCore::GraphicsContext3D::uniform1iv):
978 (WebCore::GraphicsContext3D::uniform2i):
979 (WebCore::GraphicsContext3D::uniform2iv):
980 (WebCore::GraphicsContext3D::uniform3i):
981 (WebCore::GraphicsContext3D::uniform3iv):
982 (WebCore::GraphicsContext3D::uniform4i):
983 (WebCore::GraphicsContext3D::uniform4iv):
984 (WebCore::GraphicsContext3D::uniformMatrix2fv):
985 (WebCore::GraphicsContext3D::uniformMatrix3fv):
986 (WebCore::GraphicsContext3D::uniformMatrix4fv):
987 (WebCore::GraphicsContext3D::useProgram):
988 (WebCore::GraphicsContext3D::validateProgram):
989 (WebCore::GraphicsContext3D::vertexAttrib1f):
990 (WebCore::GraphicsContext3D::vertexAttrib1fv):
991 (WebCore::GraphicsContext3D::vertexAttrib2f):
992 (WebCore::GraphicsContext3D::vertexAttrib2fv):
993 (WebCore::GraphicsContext3D::vertexAttrib3f):
994 (WebCore::GraphicsContext3D::vertexAttrib3fv):
995 (WebCore::GraphicsContext3D::vertexAttrib4f):
996 (WebCore::GraphicsContext3D::vertexAttrib4fv):
997 (WebCore::GraphicsContext3D::vertexAttribPointer):
998 (WebCore::GraphicsContext3D::viewport):
999 (WebCore::GraphicsContext3D::getBooleanv):
1000 (WebCore::GraphicsContext3D::getBufferParameteriv):
1001 (WebCore::GraphicsContext3D::getFloatv):
1002 (WebCore::GraphicsContext3D::getFramebufferAttachmentParameteriv):
1003 (WebCore::GraphicsContext3D::getProgramiv):
1004 (WebCore::GraphicsContext3D::getProgramInfoLog):
1005 (WebCore::GraphicsContext3D::getRenderbufferParameteriv):
1006 (WebCore::GraphicsContext3D::getShaderiv):
1007 (WebCore::GraphicsContext3D::getShaderInfoLog):
1008 (WebCore::GraphicsContext3D::getShaderSource):
1009 (WebCore::GraphicsContext3D::getTexParameterfv):
1010 (WebCore::GraphicsContext3D::getTexParameteriv):
1011 (WebCore::GraphicsContext3D::getUniformfv):
1012 (WebCore::GraphicsContext3D::getUniformiv):
1013 (WebCore::GraphicsContext3D::getUniformLocation):
1014 (WebCore::GraphicsContext3D::getVertexAttribfv):
1015 (WebCore::GraphicsContext3D::getVertexAttribiv):
1016 (WebCore::GraphicsContext3D::getVertexAttribOffset):
1017 (WebCore::GraphicsContext3D::texSubImage2D):
1018 (WebCore::GraphicsContext3D::compressedTexImage2D):
1019 (WebCore::GraphicsContext3D::compressedTexSubImage2D):
1020 (WebCore::GraphicsContext3D::createBuffer):
1021 (WebCore::GraphicsContext3D::createFramebuffer):
1022 (WebCore::GraphicsContext3D::createProgram):
1023 (WebCore::GraphicsContext3D::createRenderbuffer):
1024 (WebCore::GraphicsContext3D::createShader):
1025 (WebCore::GraphicsContext3D::createTexture):
1026 (WebCore::GraphicsContext3D::deleteBuffer):
1027 (WebCore::GraphicsContext3D::deleteFramebuffer):
1028 (WebCore::GraphicsContext3D::deleteProgram):
1029 (WebCore::GraphicsContext3D::deleteRenderbuffer):
1030 (WebCore::GraphicsContext3D::deleteShader):
1031 (WebCore::GraphicsContext3D::deleteTexture):
1032 (WebCore::GraphicsContext3D::synthesizeGLError):
1033 (WebCore::GraphicsContext3D::markContextChanged):
1034 (WebCore::GraphicsContext3D::markLayerComposited):
1035 (WebCore::GraphicsContext3D::layerComposited):
1036 (WebCore::GraphicsContext3D::getExtensions):
1037 * platform/graphics/opengl/GraphicsContext3DOpenGLES.cpp: Added.
1038 (WebCore::GraphicsContext3D::readRenderingResults):
1039 (WebCore::GraphicsContext3D::reshape):
1040 (WebCore::GraphicsContext3D::prepareTexture):
1041 (WebCore::GraphicsContext3D::bindFramebuffer):
1042 (WebCore::GraphicsContext3D::copyTexImage2D):
1043 (WebCore::GraphicsContext3D::copyTexSubImage2D):
1044 (WebCore::GraphicsContext3D::getActiveUniform):
1045 (WebCore::GraphicsContext3D::readPixels):
1046 (WebCore::GraphicsContext3D::renderbufferStorage):
1047 (WebCore::GraphicsContext3D::getIntegerv):
1048 (WebCore::GraphicsContext3D::texImage2D):
1050 2012-01-12 Wei James <james.wei@intel.com>
1052 Add vsma in VectorMath to handle vector scale multiply and add and use it in AudioBus
1053 https://bugs.webkit.org/show_bug.cgi?id=75835
1055 When summing a audio bus, the source is multiplied with the scale and
1056 then summed into the destination bus. Add this function to fulfill it.
1058 Reviewed by Kenneth Russell.
1060 * platform/audio/AudioBus.cpp:
1061 * platform/audio/VectorMath.cpp:
1062 (WebCore::VectorMath::vsma):
1063 * platform/audio/VectorMath.h:
1065 2012-01-12 James Simonsen <simonjam@chromium.org>
1067 Web Inspector: [Chomium] Resources loaded with 304 status code have receiving time of 15000 days in network panel.
1068 https://bugs.webkit.org/show_bug.cgi?id=76176
1070 Reviewed by Nate Chapin.
1072 No new tests. Can't trigger this with inspector tests. Will add one when the Resource Timing API is in.
1074 * loader/SubresourceLoader.cpp:
1075 (WebCore::SubresourceLoader::didReceiveResponse): Use monotonic time.
1077 2012-01-12 Alexey Proskuryakov <ap@apple.com>
1079 NSURL to KURL conversion shouldn't turn raw paths into file URLs
1080 https://bugs.webkit.org/show_bug.cgi?id=76234
1082 Reviewed by Darin Adler.
1084 * platform/mac/KURLMac.mm: (WebCore::KURL::KURL): Removed this code.
1086 2012-01-12 Anders Carlsson <andersca@apple.com>
1088 Create a GraphicsLayer for the overhang areas if threaded scrolling is enabled
1089 https://bugs.webkit.org/show_bug.cgi?id=76220
1091 Reviewed by Simon Fraser.
1093 * page/FrameView.cpp:
1094 Remove PLATFORM(CHROMIUM) #ifdefs.
1099 * platform/ScrollView.cpp:
1100 (WebCore::ScrollView::wheelEvent):
1103 * platform/ScrollableArea.h:
1106 * rendering/RenderLayerCompositor.cpp:
1107 (WebCore::RenderLayerCompositor::frameViewDidChangeSize):
1110 (WebCore::RenderLayerCompositor::requiresOverhangAreasLayer):
1111 Make this return true if we have a scrolling coordinator.
1113 (WebCore::RenderLayerCompositor::updateOverflowControlsLayers):
1114 Remove PLATFORM(CHROMIUM) #ifdefs. Fix a bug the overhang layer was being added above the clip layer.
1116 (WebCore::RenderLayerCompositor::destroyRootLayer):
1117 Remove PLATFORM(CHROMIUM) #ifdefs.
1119 * rendering/RenderLayerCompositor.h:
1122 2012-01-12 Kenichi Ishibashi <bashi@chromium.org>
1124 Move SimpleFontDataSkia.cpp to Source/WebCore/platform/graphics/skia
1125 https://bugs.webkit.org/show_bug.cgi?id=76155
1127 Reviewed by Tony Chang.
1129 No new tests. No behavior change.
1131 * PlatformBlackBerry.cmake:
1132 * WebCore.gyp/WebCore.gyp:
1134 * platform/graphics/skia/SimpleFontDataSkia.cpp: Renamed from Source/WebCore/platform/graphics/harfbuzz/SimpleFontDataSkia.cpp.
1135 (WebCore::SimpleFontData::platformInit):
1136 (WebCore::SimpleFontData::platformCharWidthInit):
1137 (WebCore::SimpleFontData::platformDestroy):
1138 (WebCore::SimpleFontData::createScaledFontData):
1139 (WebCore::SimpleFontData::smallCapsFontData):
1140 (WebCore::SimpleFontData::emphasisMarkFontData):
1141 (WebCore::SimpleFontData::containsCharacters):
1142 (WebCore::SimpleFontData::determinePitch):
1143 (WebCore::SimpleFontData::platformBoundsForGlyph):
1144 (WebCore::SimpleFontData::platformWidthForGlyph):
1146 2012-01-12 Benjamin Poulain <bpoulain@apple.com>
1148 A Frame with frame flattening can be stuck in a state in which performPostLayoutTasks() is never executed
1149 https://bugs.webkit.org/show_bug.cgi?id=76154
1151 Reviewed by Beth Dakin.
1153 In a frame with inSubframeLayoutWithFrameFlattening == true, if
1154 -m_hasPendingPostLayoutTasks == true
1155 -FrameView::unscheduleRelayout() is executed
1156 -->the timer m_postLayoutTasksTimer is stopped
1157 -->no timer is scheduled due to m_hasPendingPostLayoutTasks == true && inSubframeLayoutWithFrameFlattening == true
1159 This patch revert the handling of the postLayoutTasks to its state prior to r66552.
1161 The timer itself is used as the only state to know if post layout tasks are scheduled.
1163 For the case without frame flattening:
1164 -Prior to this patch, when FrameView::unscheduleRelayout() was executed, the postLayoutTasksTimer was killed,
1165 and the post layout tasks would be executed during the next layout().
1166 -After this patch, the post layout tasks stay scheduled and are executed on the next event loop if layout()
1167 was not invoked before.
1169 * page/FrameView.cpp:
1170 (WebCore::FrameView::FrameView):
1171 (WebCore::FrameView::~FrameView):
1172 (WebCore::FrameView::reset):
1173 (WebCore::FrameView::layout):
1174 (WebCore::FrameView::unscheduleRelayout):
1175 (WebCore::FrameView::flushAnyPendingPostLayoutTasks):
1176 (WebCore::FrameView::performPostLayoutTasks):
1179 2012-01-12 Yongjun Zhang <yongjun_zhang@apple.com>
1181 Reviewed by Benjamin Poulain.
1183 https://bugs.webkit.org/show_bug.cgi?id=75991
1184 Make the code in MemoryPressureHandler::respondToMemoryPressure shareable.
1186 Move memory pressure handling code inside a new function (releaseMemory) so that
1187 we could shared it between mac and iOS.
1189 * Configurations/WebCore.xcconfig: add MemoryPressureHandlerMac.mm into iOS build.
1190 * platform/MemoryPressureHandler.h:
1191 * platform/mac/MemoryPressureHandlerMac.mm:
1192 (WebCore::MemoryPressureHandler::respondToMemoryPressure):
1193 (WebCore::MemoryPressureHandler::releaseMemory):
1195 2012-01-12 Eric Seidel <eric@webkit.org>
1197 Refactor DOMImplementation.hasFeature logic into helper functions.
1198 https://bugs.webkit.org/show_bug.cgi?id=76212
1200 Reviewed by Adam Barth.
1202 This patch should not have any behavior change. The goal was
1203 to move our feature detection towards a more modular architecture
1204 (as that seems to be the current trend in webkit). In a future
1205 patch we could easily move the SVG feature detection into the
1206 SVG directory, for example. I've also added a list of all the
1207 Event3 features (currently commented out) which makes it obvious
1208 how many we're missing.
1210 * dom/DOMImplementation.cpp:
1211 (WebCore::isSVG10Feature):
1212 (WebCore::isSVG11Feature):
1213 (WebCore::isEvents2Feature):
1214 (WebCore::isEvents3Feature):
1215 (WebCore::DOMImplementation::hasFeature):
1217 2012-01-12 Adam Barth <abarth@webkit.org>
1219 NodeIterator loses track of the reference node when the reference node is removed from the document (IETC ni_removeReferenceNode)
1220 https://bugs.webkit.org/show_bug.cgi?id=76146
1222 Reviewed by Eric Seidel.
1224 In the case where we're removing the reference node we can end up with
1225 the wrong reference node. This patch makes sure we traverse outside of
1226 the removed node's subtree.
1228 This bug was caught by the following IE Test Center test:
1230 http://samples.msdn.microsoft.com/ietestcenter/domtraversal/showdomtraversaltest.htm?ni_removeReferenceNode
1232 Our new behavior also match Firefox.
1234 I experimented a bit with adding ASSERT_NOT_REACHED to various branches
1235 in NodeIterator::updateForNodeRemoval, and it seems our test coverage
1236 for this function is relatively poor. In the future, we should
1237 consider adding more tests for this complicated function.
1239 Test: fast/dom/node-iterator-reference-node-removed.html
1241 * dom/NodeIterator.cpp:
1242 (WebCore::NodeIterator::updateForNodeRemoval):
1244 2012-01-12 Joshua Bell <jsbell@chromium.org>
1246 IndexedDB: Throw exception if IDBCursor.continue() called with key equal to current
1247 https://bugs.webkit.org/show_bug.cgi?id=76100
1249 The fix for https://bugs.webkit.org/show_bug.cgi?id=74213 missed the "or equal" clause
1252 Reviewed by Tony Chang.
1254 Test: storage/indexeddb/cursor-continue.html
1256 * storage/IDBCursorBackendImpl.cpp:
1257 (WebCore::IDBCursorBackendImpl::continueFunction):
1259 2012-01-12 Jon Lee <jonlee@apple.com>
1261 Setting value on a select element to a non existing option value should clear selection
1262 https://bugs.webkit.org/show_bug.cgi?id=67233
1263 <rdar://problem/10057159>
1265 Reviewed by Darin Adler.
1267 Test: fast/forms/select/setting-to-invalid-value.html
1269 * html/HTMLSelectElement.cpp:
1270 (WebCore::HTMLSelectElement::setValue): Clear the selection in the cases where we cannot
1271 find an option with the specified value. The spec states to clear the selectedness of all
1272 options first. To avoid calling setSelectedIndex() multiple times, we clear the selected
1273 option(s) only when don't find the appropriate option.
1275 Also, correct the sentence style of a comment.
1277 2012-01-12 Jer Noble <jer.noble@apple.com>
1279 Unreviewed build fix after r104858.
1281 NSDataReadingMappedIfSafe is not defined on <= 10.6. Use NSDataReadingMapped on that platform instead.
1283 * platform/audio/mac/AudioBusMac.mm:
1284 (WebCore::AudioBus::loadPlatformResource):
1286 2012-01-12 Dana Jansens <danakj@chromium.org>
1288 [skia] Track a simple opaque area when painting via PlatformContextSkia and save in LayerTextureUpdater
1289 https://bugs.webkit.org/show_bug.cgi?id=74352
1291 Reviewed by Stephen White.
1293 New unit tests in PlatformContextSkiaTest.cpp
1296 * platform/graphics/skia/GraphicsContextSkia.cpp:
1297 (WebCore::GraphicsContext::clearRect):
1298 (WebCore::GraphicsContext::drawConvexPolygon):
1299 (WebCore::GraphicsContext::drawEllipse):
1300 (WebCore::drawOuterPath):
1301 (WebCore::drawInnerPath):
1302 (WebCore::GraphicsContext::drawFocusRing):
1303 (WebCore::GraphicsContext::drawLine):
1304 (WebCore::GraphicsContext::drawLineForTextChecking):
1305 (WebCore::GraphicsContext::drawLineForText):
1306 (WebCore::GraphicsContext::fillPath):
1307 (WebCore::GraphicsContext::fillRect):
1308 (WebCore::GraphicsContext::fillRoundedRect):
1309 (WebCore::GraphicsContext::strokeArc):
1310 (WebCore::GraphicsContext::strokePath):
1311 (WebCore::GraphicsContext::strokeRect):
1312 * platform/graphics/skia/ImageSkia.cpp:
1313 (WebCore::paintSkBitmap):
1314 * platform/graphics/skia/OpaqueRegionSkia.cpp: Added.
1315 (WebCore::OpaqueRegionSkia::OpaqueRegionSkia):
1316 (WebCore::OpaqueRegionSkia::~OpaqueRegionSkia):
1317 (WebCore::OpaqueRegionSkia::asRect):
1318 (WebCore::xfermodeIsOpaque):
1319 (WebCore::xfermodePreservesOpaque):
1320 (WebCore::paintIsOpaque):
1321 (WebCore::OpaqueRegionSkia::didDrawRect):
1322 (WebCore::OpaqueRegionSkia::didDrawPath):
1323 (WebCore::OpaqueRegionSkia::didDrawPoints):
1324 (WebCore::OpaqueRegionSkia::didDrawBounded):
1325 (WebCore::OpaqueRegionSkia::didDraw):
1326 (WebCore::OpaqueRegionSkia::didDrawUnbounded):
1327 (WebCore::OpaqueRegionSkia::markRectAsOpaque):
1328 (WebCore::OpaqueRegionSkia::markRectAsNonOpaque):
1329 * platform/graphics/skia/OpaqueRegionSkia.h: Added.
1330 * platform/graphics/skia/PlatformContextSkia.cpp:
1331 (WebCore::PlatformContextSkia::PlatformContextSkia):
1332 (WebCore::PlatformContextSkia::clippedToImage):
1333 (WebCore::PlatformContextSkia::drawRect):
1334 (WebCore::PlatformContextSkia::paintSkPaint):
1335 (WebCore::PlatformContextSkia::didDrawRect):
1336 (WebCore::PlatformContextSkia::didDrawPath):
1337 (WebCore::PlatformContextSkia::didDrawPoints):
1338 (WebCore::PlatformContextSkia::didDrawBounded):
1339 * platform/graphics/skia/PlatformContextSkia.h:
1340 (WebCore::PlatformContextSkia::setTrackOpaqueRegion):
1341 (WebCore::PlatformContextSkia::opaqueRegion):
1343 2012-01-12 Beth Dakin <bdakin@apple.com>
1345 https://bugs.webkit.org/show_bug.cgi?id=76209
1346 Support expanded scrollbars
1348 <rdar://problem/10527734>
1350 Reviewed by Sam Weinig.
1352 All this really requires is leaving the proper amount of space for the
1354 * platform/mac/NSScrollerImpDetails.h:
1355 * platform/mac/ScrollbarThemeMac.mm:
1356 (WebCore::supportsExpandedScrollbars):
1357 (WebCore::ScrollbarThemeMac::scrollbarThickness):
1359 2011-12-12 Jer Noble <jer.noble@apple.com>
1361 WebAudio: Enable USE_CONCATENATED_IMPULSE_RESPONSES on Mac port.
1362 https://bugs.webkit.org/show_bug.cgi?id=74328
1364 Reviewed by Eric Carlson.
1366 No new tests; no net change in functionality.
1368 * WebCore.xcodeproj/project.pbxproj: Added SincResampler class, Composite.wav to the project.
1369 Removed IRC_*.wav resources from the project.
1370 * platform/audio/AudioBus.cpp:
1371 (WebCore::AudioBus::createBySampleRateConverting): Uncommented this function
1372 * platform/audio/AudioBus.h:
1373 * platform/audio/HRTFElevation.cpp:
1375 2011-12-12 Jer Noble <jer.noble@apple.com>
1377 WebAudio: AudioBus::loadPlatformResource should mmap file on Mac port.
1378 https://bugs.webkit.org/show_bug.cgi?id=74326
1380 Reviewed by Darin Adler.
1382 No new tests; no net change in functionality.
1384 Use NSDataReadingMappedIfSafe when reading platform audio file data.
1386 * platform/audio/mac/AudioBusMac.mm:
1387 (WebCore::AudioBus::loadPlatformResource):
1389 2011-12-12 Jer Noble <jer.noble@apple.com>
1391 WebAudio: Use Logging instead of printf.
1392 https://bugs.webkit.org/show_bug.cgi?id=74322
1394 Reviewed by Darin Adler.
1396 No new tests; no net change in functionality.
1398 Add a new WebCoreLogLevel for WebAudio, and use this new log level instead of
1399 printf statements in webaudio classes.
1401 * platform/Logging.cpp:
1402 (WebCore::getChannelFromName):
1403 * platform/Logging.h:
1404 * platform/mac/LoggingMac.mm:
1405 (WebCore::InitializeLoggingChannelsIfNecessary):
1406 * platform/audio/FFTFrame.cpp:
1407 (WebCore::FFTFrame::print):
1408 * webaudio/DefaultAudioDestinationNode.cpp:
1409 (WebCore::DefaultAudioDestinationNode::initialize):
1411 2012-01-12 Anders Carlsson <andersca@apple.com>
1413 Make ScrollElasticityController members private
1414 https://bugs.webkit.org/show_bug.cgi?id=76208
1416 Reviewed by Andreas Kling.
1418 * platform/mac/ScrollAnimatorMac.mm:
1419 (WebCore::ScrollAnimatorMac::endScrollGesture):
1420 Call ScrollElasticityController::endScrollGesture.
1422 * platform/mac/ScrollElasticityController.h:
1423 Make members private.
1425 * platform/mac/ScrollElasticityController.mm:
1426 (WebCore::ScrollElasticityController::endScrollGesture):
1427 Call snapRubberBand.
1429 (WebCore::ScrollElasticityController::snapRubberBandTimerFired):
1430 Call stopSnapRubberbandTimer.
1432 2012-01-12 Anders Carlsson <andersca@apple.com>
1434 Move wheel event handling to ScrollElasticityController::handleWheelEvent
1435 https://bugs.webkit.org/show_bug.cgi?id=76205
1437 Reviewed by Andreas Kling.
1439 Move the code in ScrollAnimatorMac::smoothScrollWithEvent to ScrollElasticityController::handleWheelEvent and
1440 change ScrollAnimatorMac::handleWheelEvent to just call ScrollElasticityController::handleWheelEvent.
1441 This means that we'll not set m_haveScrolledSincePageLoad = true anymore (we used to set it in ScrollAnimatorMac::smoothScrollWithEvent),
1442 but we already set it to true in ScrollAnimatorMac::handleWheelEvent so it already had no effect.
1444 * platform/mac/ScrollAnimatorMac.h:
1445 * platform/mac/ScrollAnimatorMac.mm:
1446 (WebCore::ScrollAnimatorMac::handleWheelEvent):
1447 * platform/mac/ScrollElasticityController.h:
1448 * platform/mac/ScrollElasticityController.mm:
1449 (WebCore::elasticDeltaForReboundDelta):
1450 (WebCore::scrollWheelMultiplier):
1451 (WebCore::ScrollElasticityController::handleWheelEvent):
1453 2012-01-12 Simon Fraser <simon.fraser@apple.com>
1455 Borders and box masks behave incorrectly with overlapping offsets
1456 https://bugs.webkit.org/show_bug.cgi?id=76137
1458 Reviewed by Dave Hyatt.
1460 When border-image-slice sizes add up to more than the height or width
1461 of the border-image, the middle sections should not be rendered, per spec.
1463 Test: fast/borders/border-image-slice-constrained.html
1465 * rendering/RenderBoxModelObject.cpp:
1466 (WebCore::RenderBoxModelObject::paintNinePieceImage):
1468 2012-01-12 Anders Carlsson <andersca@apple.com>
1470 Make all calls to pinnedInDirection go through the ScrollElasticityController
1471 https://bugs.webkit.org/show_bug.cgi?id=76204
1473 Reviewed by Andreas Kling.
1475 * platform/mac/ScrollAnimatorMac.mm:
1476 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
1478 2012-01-12 Stephen White <senorblanco@chromium.org>
1480 [chromium] Re-enable Skia feColorMatrix filter implementation.
1481 https://bugs.webkit.org/show_bug.cgi?id=76186
1483 This code was landed in http://trac.webkit.org/changeset/104566 and
1484 partially reverted in http://trac.webkit.org/changeset/104632 due
1485 to problems with the Windows Shared builder. Those problems have
1486 been fixed in r3006, since rolled into Chrome.
1488 Reviewed by Kenneth Russell.
1490 Covered by SVG feColorMatrix tests.
1493 * platform/graphics/filters/FEColorMatrix.h:
1495 2012-01-12 Anders Carlsson <andersca@apple.com>
1497 Add allowsHorizontalStretching and allowsVerticalStretching to ScrollElasticityControllerClient
1498 https://bugs.webkit.org/show_bug.cgi?id=76202
1500 Reviewed by Andreas Kling.
1502 * platform/mac/ScrollAnimatorMac.h:
1503 * platform/mac/ScrollAnimatorMac.mm:
1504 (WebCore::ScrollAnimatorMac::allowsVerticalStretching):
1505 (WebCore::ScrollAnimatorMac::allowsHorizontalStretching):
1506 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
1507 * platform/mac/ScrollElasticityController.h:
1509 2012-01-12 Anders Carlsson <andersca@apple.com>
1511 Move snapRubberBand to ScrollElasticityController
1512 https://bugs.webkit.org/show_bug.cgi?id=76200
1514 Reviewed by Andreas Kling.
1516 * platform/mac/ScrollAnimatorMac.h:
1517 * platform/mac/ScrollAnimatorMac.mm:
1518 (WebCore::ScrollAnimatorMac::smoothScrollWithEvent):
1519 (WebCore::ScrollAnimatorMac::endScrollGesture):
1520 * platform/mac/ScrollElasticityController.h:
1521 * platform/mac/ScrollElasticityController.mm:
1523 (WebCore::ScrollElasticityController::snapRubberBand):
1525 2012-01-12 Antti Koivisto <antti@apple.com>
1527 REGRESSION(r104060): Setting user stylesheet may leave CSSStyleSelector with stale rule pointers
1528 https://bugs.webkit.org/show_bug.cgi?id=76191
1530 Reviewed by Andreas Kling.
1532 Setting the user style sheet frees the existing user style sheet data structures. The code
1533 in Document::updatePageGroupUserSheets then relies on styleSelectorChanged to clear the
1534 style selector so it is not left with stale pointers. However under certain conditions
1535 involving pending stylesheets it may bail out quickly without clearing.
1537 Document::styleSelectorChanged has to take care that it never leaves the style selector stale
1538 even when bailing out early.
1540 Test: fast/css/user-stylesheet-crash.html
1543 (WebCore::Document::styleSelectorChanged):
1545 2012-01-12 Nat Duca <nduca@chromium.org>
1547 [chromium] Turn off FrameRateController timesource when it is not needed
1548 https://bugs.webkit.org/show_bug.cgi?id=76149
1550 Reviewed by James Robinson.
1552 * platform/graphics/chromium/cc/CCDelayBasedTimeSource.h:
1553 (WebCore::CCDelayBasedTimeSource::active):
1554 * platform/graphics/chromium/cc/CCFrameRateController.cpp:
1555 (WebCore::CCFrameRateController::setActive):
1556 (WebCore::CCFrameRateController::onTimerTick):
1557 * platform/graphics/chromium/cc/CCFrameRateController.h:
1558 * platform/graphics/chromium/cc/CCScheduler.cpp:
1559 (WebCore::CCScheduler::CCScheduler):
1560 (WebCore::CCScheduler::setVisible):
1561 (WebCore::CCScheduler::processScheduledActions):
1562 * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
1563 (WebCore::CCSchedulerStateMachine::vsyncCallbackNeeded):
1564 * platform/graphics/chromium/cc/CCSchedulerStateMachine.h:
1565 * platform/graphics/chromium/cc/CCTimeSource.h:
1567 2012-01-12 Anders Carlsson <andersca@apple.com>
1569 Move snapRubberBandTimerFired to ScrollElasticityController
1570 https://bugs.webkit.org/show_bug.cgi?id=76196
1572 Reviewed by Andreas Kling.
1574 * platform/mac/ScrollAnimatorMac.mm:
1575 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
1576 * platform/mac/ScrollElasticityController.h:
1577 * platform/mac/ScrollElasticityController.mm:
1578 (WebCore::elasticDeltaForTimeDelta):
1579 (WebCore::roundTowardZero):
1580 (WebCore::roundToDevicePixelTowardZero):
1581 (WebCore::ScrollElasticityController::snapRubberBandTimerFired):
1583 2012-01-12 Joshua Bell <jsbell@chromium.org>
1585 IndexedDB: Raise NON_TRANSIENT_ERR when invalid mode specified for transaction
1586 https://bugs.webkit.org/show_bug.cgi?id=76072
1588 Spec was updated to detail what should be thrown: http://www.w3.org/Bugs/Public/show_bug.cgi?id=11406
1590 Reviewed by Tony Chang.
1592 Tests: storage/indexeddb/transaction-basics.html
1594 * storage/IDBDatabase.cpp:
1595 (WebCore::IDBDatabase::transaction):
1597 2012-01-12 Anders Carlsson <andersca@apple.com>
1599 Remove the last non-ScrollElasticityController call from ScrollAnimatorMac::snapRubberBandTimerFired
1600 https://bugs.webkit.org/show_bug.cgi?id=76193
1602 Reviewed by Andreas Kling.
1604 Use ScrollElasticityControllerClient::immediateScrollBy for the final scroll before the rubber-band timer stops.
1606 * platform/mac/ScrollAnimatorMac.mm:
1607 (WebCore::ScrollAnimatorMac::snapRubberBandTimerFired):
1609 2011-09-26 Jer Noble <jer.noble@apple.com>
1611 Emit an error event when a request to enter full-screen is rejected.
1612 https://bugs.webkit.org/show_bug.cgi?id=62320
1614 Reviewed by Eric Carlson.
1616 Tests: fullscreen/full-screen-request-rejected.html
1617 fullscreen/full-screen-request-removed.html
1619 When a request to enter full-screen is rejected, emit an event
1620 (webkitfullscreenerror) in response. But emit the event during the next
1621 trip through the run-loop, like the webkitfullscreenchange event, and so a new
1622 timer and queue are necessary.
1625 (WebCore::Document::requestFullScreenForElement): Emit the error event
1626 if the request does not pass all our requirements.
1627 * dom/Document.h: Add new ivars.
1628 * dom/Document.idl: Add support for setting an onfullscreenerror attribute.
1629 * dom/Element.h: Ditto.
1630 * dom/Element.idl: Ditto.
1631 * dom/EventNames.h: Add the name for the error event.
1633 2012-01-12 Beth Dakin <bdakin@apple.com>
1635 https://bugs.webkit.org/show_bug.cgi?id=76133
1636 ScrollAnimatorMac::mouseEnteredScrollbar() and mouseExitedScrollbar() should
1637 only do stuff for legacy scrollbars
1639 <rdar://problem/10603290>
1641 Reviewed by Sam Weinig.
1643 * platform/mac/ScrollAnimatorMac.mm:
1644 (WebCore::ScrollAnimatorMac::mouseEnteredScrollbar):
1645 (WebCore::ScrollAnimatorMac::mouseExitedScrollbar):
1647 2012-01-12 Dan Bernstein <mitz@apple.com>
1649 When generating derived sources, use the same compiler that is used to compile WebCore.
1651 Fixes <http://webkit.org/b/76189>
1652 [mac] When compiling WebCore with clang, llvm-gcc is used to generate derived sources
1654 Reviewed by Mark Rowe.
1656 * DerivedSources.make: Changed to use the CC environment variable instead of hardcoded gcc.
1657 * WebCore.xcodeproj/project.pbxproj: Set the CC environment variable, if not already set,
1658 according to TARGET_GCC_VERSION. CC is used by DerivedSources.make and some of the perl
1661 2012-01-12 Pierre Rossi <pierre.rossi@gmail.com>
1663 [Qt] Unreviewed build fix after r104828.
1665 * platform/qt/RenderThemeQtMobile.cpp:
1666 (WebCore::StylePainterMobile::findComboButton):
1668 2012-01-12 Sheriff Bot <webkit.review.bot@gmail.com>
1670 Unreviewed, rolling out r104829.
1671 http://trac.webkit.org/changeset/104829
1672 https://bugs.webkit.org/show_bug.cgi?id=76188
1674 it broke qt-minimal (Requested by loislo1 on #webkit).
1676 * inspector/CodeGeneratorInspector.py:
1678 (CodeGenerator.generate_type_builder):
1679 (CodeGenerator.generate_type_builder.AdHocTypeContext):
1680 (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix):
1681 (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix):
1682 (CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
1683 (CodeGenerator.generate_type_builder.AdHocTypeContext.call_generate_type_builder):
1684 (CodeGenerator.register_use):
1686 (RawTypesBinding.get_code_generator):
1687 (RawTypesBinding.get_in_c_type_text):
1688 (RawTypesBinding.get_setter_value_expression_pattern):
1689 (RawTypesBinding.reduce_to_raw_type):
1690 (TypeData.__init__):
1691 * inspector/InspectorValues.h:
1693 2012-01-12 Pavel Podivilov <podivilov@chromium.org>
1695 Web Inspector: [JSC] //@ sourceURL is not respected.
1696 https://bugs.webkit.org/show_bug.cgi?id=65532
1698 Reviewed by Pavel Feldman.
1700 Test: inspector/debugger/source-url-comment.html
1702 * bindings/js/ScriptDebugServer.cpp:
1703 (WebCore::ScriptDebugServer::dispatchDidParseSource):
1704 * inspector/ContentSearchUtils.cpp:
1705 (WebCore::ContentSearchUtils::findMagicComment):
1706 (WebCore::ContentSearchUtils::findSourceURL):
1707 (WebCore::ContentSearchUtils::findSourceMapURL):
1708 * inspector/ContentSearchUtils.h:
1710 2012-01-12 Csaba Osztrogonác <ossy@webkit.org>
1712 [Qt] Unreviewed trivial buildfix after r104828.
1714 * platform/qt/RenderThemeQtMobile.cpp:
1715 (WebCore::StylePainterMobile::findComboButton):
1717 2012-01-12 Peter Rybin <peter.rybin@gmail.com>
1719 Web Inspector: CodeGeneratorInspector.py: generate array types.
1720 https://bugs.webkit.org/show_bug.cgi?id=75284
1722 Reviewed by Yury Semikhatsky.
1724 New classes are generated for ecah array type instance.
1726 * inspector/CodeGeneratorInspector.py:
1728 (ArrayBinding.get_code_generator):
1729 (ArrayBinding.get_code_generator.CodeGenerator):
1730 (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder):
1731 (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext):
1732 (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix):
1733 (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix):
1734 (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.get_type_name_fix.NameFix.output_comment):
1735 (ArrayBinding.get_code_generator.CodeGenerator.generate_type_builder.AdHocTypeContext.call_generate_type_builder):
1736 (ArrayBinding.get_code_generator.CodeGenerator.generate_forward_declaration):
1737 (ArrayBinding.get_code_generator.CodeGenerator.register_use):
1738 (ArrayBinding.get_in_c_type_text):
1739 (ArrayBinding.get_setter_value_expression_pattern):
1740 (ArrayBinding.reduce_to_raw_type):
1742 (RawTypeBinding.__init__):
1743 (RawTypeBinding.get_code_generator):
1744 (RawTypeBinding.get_in_c_type_text):
1745 (RawTypeBinding.get_setter_value_expression_pattern):
1746 (RawTypeBinding.reduce_to_raw_type):
1747 (TypeData.__init__):
1748 (TypeData.get_binding):
1749 * inspector/InspectorValues.h:
1751 2012-01-12 Pierre Rossi <pierre.rossi@gmail.com>
1753 [Qt] Avoid string operations in mobile theme's caching mechanism
1754 https://bugs.webkit.org/show_bug.cgi?id=75010
1756 The string operations constantly performed in the mobile theme
1757 to fetch or put controls in the pixmap cache can be pretty expensive.
1758 The new mechanism harnesses the QPixmapCache::Key API instead.
1760 Reviewed by Kenneth Rohde Christiansen.
1762 No new tests, internal refactoring.
1764 * platform/qt/RenderThemeQtMobile.cpp:
1766 (WebCore::StylePainterMobile::findCachedControl):
1767 (WebCore::StylePainterMobile::insertIntoCache):
1768 (WebCore::StylePainterMobile::findCheckBox):
1769 (WebCore::StylePainterMobile::drawRadio):
1770 (WebCore::StylePainterMobile::findRadio):
1771 (WebCore::StylePainterMobile::drawMultipleComboButton):
1772 (WebCore::StylePainterMobile::drawSimpleComboButton):
1773 (WebCore::StylePainterMobile::getButtonImageSize):
1774 (WebCore::StylePainterMobile::findComboButton):
1775 (WebCore::StylePainterMobile::findLineEdit):
1776 (WebCore::StylePainterMobile::findPushButton):
1777 (WebCore::StylePainterMobile::drawComboBox):
1778 (WebCore::StylePainterMobile::drawProgress):
1779 (WebCore::StylePainterMobile::drawSliderThumb):
1780 (WebCore::RenderThemeQtMobile::paintTextField):
1781 (WebCore::RenderThemeQtMobile::paintMenuList):
1782 * platform/qt/RenderThemeQtMobile.h:
1783 (WebCore::KeyIdentifier::KeyIdentifier):
1784 (WebCore::KeyIdentifier::operator==):
1786 2012-01-12 Sheriff Bot <webkit.review.bot@gmail.com>
1788 Unreviewed, rolling out r104805.
1789 http://trac.webkit.org/changeset/104805
1790 https://bugs.webkit.org/show_bug.cgi?id=76180
1792 Breaks apple win compilation. (Requested by vsevik on
1796 * GNUmakefile.list.am:
1800 * WebCore.vcproj/WebCore.vcproj:
1801 * WebCore.xcodeproj/project.pbxproj:
1802 * dom/DOMAllInOne.cpp:
1803 * dom/SelectorQuery.cpp:
1804 (WebCore::SelectorQuery::SelectorQuery):
1805 (WebCore::SelectorQuery::queryAll):
1806 (WebCore::SelectorQuery::queryFirst):
1807 (WebCore::SelectorQuery::canUseIdLookup):
1808 (WebCore::SelectorQuery::execute):
1809 * dom/SelectorQuery.h:
1810 * dom/ShadowContentElement.cpp:
1811 (WebCore::ShadowContentElement::create):
1812 (WebCore::ShadowContentElement::ShadowContentElement):
1813 (WebCore::ShadowContentElement::shouldInclude):
1814 * dom/ShadowContentElement.h:
1815 * dom/ShadowContentSelectorQuery.cpp: Removed.
1816 * dom/ShadowContentSelectorQuery.h: Removed.
1817 * dom/ShadowInclusionSelector.cpp:
1818 (WebCore::ShadowInclusionSelector::select):
1819 * dom/ShadowInclusionSelector.h:
1820 * html/HTMLDetailsElement.cpp:
1821 (WebCore::DetailsContentElement::DetailsContentElement):
1822 (WebCore::DetailsContentElement::shouldInclude):
1823 (WebCore::DetailsSummaryElement::DetailsSummaryElement):
1824 (WebCore::DetailsSummaryElement::shouldInclude):
1825 * html/HTMLSummaryElement.cpp:
1826 (WebCore::SummaryContentElement::SummaryContentElement):
1827 * testing/Internals.cpp:
1828 (WebCore::Internals::createShadowContentElement):
1829 * testing/Internals.h:
1830 * testing/Internals.idl:
1832 2012-01-12 Zoltan Herczeg <zherczeg@webkit.org>
1834 Fix turbulence bug when stitch tiles enabled and rendered in parallel
1835 https://bugs.webkit.org/show_bug.cgi?id=76042
1837 Reviewed by Nikolas Zimmermann.
1839 The width / height / wrap members are used by all threads
1840 in the same time. The patch makes them local for all threads.
1842 Fixes the layout fails in svg/dynamic-updates/SVGFETurbulence*
1844 * platform/graphics/filters/FETurbulence.cpp:
1845 (WebCore::FETurbulence::noise2D):
1846 (WebCore::Noise::if):
1847 (WebCore::FETurbulence::calculateTurbulenceValueForPoint):
1848 (WebCore::FETurbulence::fillRegion):
1849 * platform/graphics/filters/FETurbulence.h:
1850 (WebCore::FETurbulence::PaintingData::PaintingData):
1851 (WebCore::FETurbulence::StitchData::StitchData):
1853 2012-01-12 Ilya Tikhonovsky <loislo@chromium.org>
1855 Web Inspector: performance: restore 'log 300 messages into console' test.
1856 https://bugs.webkit.org/show_bug.cgi?id=76170
1858 It was removed in order of transition from layout tests to perf tests.
1860 Reviewed by Yury Semikhatsky.
1862 * inspector/front-end/ConsoleView.js:
1863 (WebInspector.ConsoleView.prototype._scheduleScrollIntoView.scrollIntoView):
1864 (WebInspector.ConsoleView.prototype._scheduleScrollIntoView):
1866 2012-01-12 Hans Wennborg <hans@chromium.org>
1868 Speech input: Send text to correct element even if focus has changed
1869 https://bugs.webkit.org/show_bug.cgi?id=76071
1871 Reviewed by Steve Block.
1873 Make sure that the text from speech input ends up in the correct
1874 element even if focus has changed since the user clicked on it.
1876 Test: fast/speech/change-focus.html
1878 * html/shadow/TextControlInnerElements.cpp:
1879 (WebCore::InputFieldSpeechButtonElement::setRecognitionResult):
1881 2012-01-10 Pavel Podivilov <podivilov@chromium.org>
1883 Web Inspector: make source urls relative to source map url.
1884 https://bugs.webkit.org/show_bug.cgi?id=75968
1886 Reviewed by Yury Semikhatsky.
1888 * inspector/front-end/CompilerSourceMapping.js:
1889 (WebInspector.ClosureCompilerSourceMapping):
1890 (WebInspector.ClosureCompilerSourceMapping.prototype._parseMap):
1891 (WebInspector.ClosureCompilerSourceMapping.prototype._canonicalizeURL):
1893 2012-01-12 Nikolas Zimmermann <nzimmermann@rim.com>
1895 Not reviewed. Fix WebKit build after r104803, by setting ScriptCallStack.h role to private.
1897 * WebCore.xcodeproj/project.pbxproj:
1899 2012-01-12 Shinya Kawanaka <shinyak@google.com>
1901 ShadowContentElement should be able to use query.
1902 https://bugs.webkit.org/show_bug.cgi?id=75302
1904 Reviewed by Hajime Morita.
1906 This patch introduces a selector to query elements in ShadowContentElement.
1907 This can be used instead of ShadowContentElement::shouldInclude in more sophisticated ways.
1909 Tests: fast/dom/shadow/shadow-contents-select-expected.html
1910 fast/dom/shadow/shadow-contents-select.html
1913 * GNUmakefile.list.am:
1917 * WebCore.vcproj/WebCore.vcproj:
1918 * WebCore.xcodeproj/project.pbxproj:
1919 * dom/DOMAllInOne.cpp:
1920 * dom/SelectorQuery.cpp:
1921 (WebCore::SelectorDataList::SelectorDataList):
1922 Extracted from SelectorQueryto share codes with ShadowContentSelectorQuery.
1923 (WebCore::SelectorDataList::initialize):
1924 (WebCore::SelectorDataList::matches):
1925 (WebCore::SelectorDataList::queryAll):
1926 (WebCore::SelectorDataList::queryFirst):
1927 (WebCore::SelectorDataList::canUseIdLookup):
1928 (WebCore::SelectorDataList::execute):
1929 (WebCore::SelectorQuery::SelectorQuery):
1930 (WebCore::SelectorQuery::queryAll):
1931 (WebCore::SelectorQuery::queryFirst):
1932 * dom/SelectorQuery.h:
1933 (WebCore::SelectorDataList::size):
1934 * dom/ShadowContentElement.cpp:
1935 (WebCore::selectAttr):
1936 (WebCore::ShadowContentElement::create):
1937 (WebCore::ShadowContentElement::ShadowContentElement):
1938 (WebCore::ShadowContentElement::select):
1939 * dom/ShadowContentElement.h:
1940 * dom/ShadowContentSelectorQuery.cpp: Added.
1941 (WebCore::ShadowContentSelectorQuery::ShadowContentSelectorQuery):
1942 (WebCore::ShadowContentSelectorQuery::matches):
1943 Returns true if Node is matched by the query.
1944 * dom/ShadowContentSelectorQuery.h: Copied from Source/WebCore/dom/ShadowContentElement.h.
1945 * dom/ShadowInclusionSelector.cpp:
1946 (WebCore::ShadowInclusionSelector::select):
1947 * dom/ShadowInclusionSelector.h:
1948 * html/HTMLDetailsElement.cpp:
1949 (WebCore::summaryQuerySelector):
1950 (WebCore::DetailsContentElement::DetailsContentElement): Re-implemented using query.
1951 (WebCore::DetailsSummaryElement::DetailsSummaryElement): ditto.
1952 * html/HTMLSummaryElement.cpp:
1953 (WebCore::SummaryContentElement::SummaryContentElement):
1954 * testing/Internals.cpp:
1955 (WebCore::Internals::createShadowContentElement):
1956 * testing/Internals.h:
1957 * testing/Internals.idl:
1959 2012-01-11 Vsevolod Vlasov <vsevik@chromium.org>
1961 Make default console messages line numbers consistent.
1962 https://bugs.webkit.org/show_bug.cgi?id=74075
1964 Reviewed by Pavel Feldman.
1966 Added default values for Console::addMessage sourceURL, lineNumber and
1967 callStack parameters, moved lineNumber after sourceURL.
1968 Made virtual method ScriptExecutionContext::addMessage private
1969 Added default values to ScriptExecutionContext::AddConsoleMessage sourceURL, lineNumber and
1970 callStack parameters, moved lineNumber after sourceURL.
1971 Reorder ScriptExecutionContext::logExceptionToConsole parameters, move lineNumber after sourceURL.
1972 Reordered sourceURL and lineNumber parameters in inspector methods.
1973 Made all calls to Console::addMessage() pass 0 as lineNumber by default (i.e. when line number is unknown / irrelevant).
1974 Unset line numbers are not printed to console in QT now.
1976 * bindings/js/JSCustomXPathNSResolver.cpp:
1977 (WebCore::JSCustomXPathNSResolver::lookupNamespaceURI):
1978 * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
1979 (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
1981 (WebCore::Document::logExceptionToConsole):
1982 (WebCore::Document::addMessage):
1984 * dom/ScriptExecutionContext.cpp:
1985 (WebCore::ScriptExecutionContext::AddConsoleMessageTask::performTask):
1986 (WebCore::ScriptExecutionContext::reportException):
1987 (WebCore::ScriptExecutionContext::addConsoleMessage):
1988 * dom/ScriptExecutionContext.h:
1990 (WebCore::UIEvent::warnDeprecatedLayerXYUsage):
1991 * dom/ViewportArguments.cpp:
1992 (WebCore::reportViewportWarning):
1993 * html/HTMLFormElement.cpp:
1994 (WebCore::HTMLFormElement::validateInteractively):
1995 * html/canvas/WebGLRenderingContext.cpp:
1996 (WebCore::WebGLRenderingContext::printWarningToConsole):
1997 * inspector/ConsoleMessage.cpp:
1998 (WebCore::ConsoleMessage::ConsoleMessage):
1999 * inspector/ConsoleMessage.h:
2000 * inspector/InspectorConsoleAgent.cpp:
2001 (WebCore::InspectorConsoleAgent::enable):
2002 (WebCore::InspectorConsoleAgent::addMessageToConsole):
2003 (WebCore::InspectorConsoleAgent::stopTiming):
2004 (WebCore::InspectorConsoleAgent::count):
2005 (WebCore::InspectorConsoleAgent::resourceRetrievedByXMLHttpRequest):
2006 * inspector/InspectorConsoleAgent.h:
2007 * inspector/InspectorConsoleInstrumentation.h:
2008 (WebCore::InspectorInstrumentation::addMessageToConsole):
2009 * inspector/InspectorInstrumentation.cpp:
2010 (WebCore::InspectorInstrumentation::addMessageToConsoleImpl):
2011 * inspector/InspectorInstrumentation.h:
2012 * inspector/InspectorProfilerAgent.cpp:
2013 (WebCore::InspectorProfilerAgent::addProfileFinishedMessageToConsole):
2014 (WebCore::InspectorProfilerAgent::addStartProfilingMessageToConsole):
2015 * loader/FrameLoader.cpp:
2016 (WebCore::FrameLoader::checkIfDisplayInsecureContent):
2017 (WebCore::FrameLoader::checkIfRunInsecureContent):
2018 (WebCore::FrameLoader::reportLocalLoadFailed):
2019 (WebCore::FrameLoader::shouldAllowNavigation):
2020 * loader/MainResourceLoader.cpp:
2021 (WebCore::MainResourceLoader::didReceiveResponse):
2022 * loader/appcache/ApplicationCacheGroup.cpp:
2023 (WebCore::ApplicationCacheGroup::didReceiveResponse):
2024 (WebCore::ApplicationCacheGroup::didFinishLoading):
2025 (WebCore::ApplicationCacheGroup::didFail):
2026 (WebCore::ApplicationCacheGroup::didReceiveManifestResponse):
2027 (WebCore::ApplicationCacheGroup::didFinishLoadingManifest):
2028 (WebCore::ApplicationCacheGroup::checkIfLoadIsComplete):
2029 * loader/cache/CachedResourceLoader.cpp:
2030 (WebCore::CachedResourceLoader::printAccessDeniedMessage):
2032 (WebCore::Console::addMessage):
2033 (WebCore::Console::groupEnd):
2035 * page/DOMWindow.cpp:
2036 (WebCore::DOMWindow::postMessageTimerFired):
2037 (WebCore::DOMWindow::printErrorMessage):
2038 * storage/AbstractDatabase.cpp:
2039 (WebCore::AbstractDatabase::logErrorMessage):
2040 * svg/SVGDocumentExtensions.cpp:
2041 (WebCore::reportMessage):
2042 * websockets/WebSocket.cpp:
2043 (WebCore::WebSocket::connect):
2044 * websockets/WebSocketChannel.cpp:
2045 (WebCore::WebSocketChannel::fail):
2046 (WebCore::WebSocketChannel::didFailSocketStream):
2047 * workers/DefaultSharedWorkerRepository.cpp:
2048 (WebCore::postConsoleMessageTask):
2049 (WebCore::SharedWorkerProxy::postConsoleMessageToWorkerObject):
2050 * workers/SharedWorkerContext.cpp:
2051 (WebCore::SharedWorkerContext::logExceptionToConsole):
2052 * workers/SharedWorkerContext.h:
2053 * workers/WorkerContext.cpp:
2054 (WebCore::WorkerContext::logExceptionToConsole):
2055 (WebCore::WorkerContext::addMessage):
2056 (WebCore::WorkerContext::addMessageToWorkerConsole):
2057 * workers/WorkerContext.h:
2058 * workers/WorkerMessagingProxy.cpp:
2059 (WebCore::postConsoleMessageTask):
2060 * xml/XSLTProcessorLibxslt.cpp:
2061 (WebCore::XSLTProcessor::parseErrorFunc):
2062 * xml/XSLTProcessorQt.cpp:
2063 (WebCore::XSLTMessageHandler::handleMessage):
2065 2012-01-12 Mihnea Ovidenie <mihnea@adobe.com>
2067 Add RenderStyle::isPositioned() helper method
2068 https://bugs.webkit.org/show_bug.cgi?id=75959
2070 Reviewed by Tony Chang.
2072 No new tests since this is refactoring of existing code.
2073 Replace (style()->position() == AbsolutePosition || style()->position() == FixedPosition)
2074 with (style()->isPositioned()).
2075 Replace (style()->position() != AbsolutePosition && style()->position() != FixedPosition)
2076 with (!style()->isPositioned()).
2078 * rendering/RenderBox.cpp:
2079 (WebCore::RenderBox::updateBoxModelInfoFromStyle):
2080 (WebCore::RenderBox::offsetFromContainer):
2081 * rendering/RenderBoxModelObject.cpp:
2082 (WebCore::RenderBoxModelObject::mapAbsoluteToLocalPoint):
2083 * rendering/RenderInline.cpp:
2084 (WebCore::RenderInline::computeRectForRepaint):
2085 * rendering/RenderObject.cpp:
2086 (WebCore::RenderObject::markContainingBlocksForLayout):
2087 (WebCore::RenderObject::setPreferredLogicalWidthsDirty):
2088 (WebCore::RenderObject::invalidateContainerPreferredLogicalWidths):
2089 * rendering/style/RenderStyle.h:
2090 (WebCore::RenderStyleBitfields::isPositioned):
2092 2012-01-11 KwangHyuk Kim <hyuki.kim@samsung.com>
2094 [EFL] Rename parameter and variable name 'r' to 'rect' in IntRectEfl.cpp.
2095 https://bugs.webkit.org/show_bug.cgi?id=76140
2097 Reviewed by Andreas Kling.
2099 No new tests : Just for change of parameter and variable name.
2101 * platform/graphics/efl/IntRectEfl.cpp:
2102 (WebCore::IntRect::IntRect):
2103 (WebCore::IntRect::operator Eina_Rectangle):
2105 2012-01-11 Shinya Kawanaka <shinyak@google.com>
2107 QuerySelector should not have side effect.
2108 https://bugs.webkit.org/show_bug.cgi?id=75298
2110 Reviewed by Antti Koivisto.
2112 Since SelectorChecker is not collecting-rules-only mode, it may set some flags in render styles
2113 if some pseudo types (e.g. first-of-type) are used.
2115 No new tests. Covered by existing tests.
2117 * dom/SelectorQuery.cpp:
2118 (WebCore::SelectorQuery::SelectorQuery):
2119 Made collecting rules only.
2121 2012-01-11 Dan Bernstein <mitz@apple.com>
2123 <rdar://problem/10679035> Implement font-variant-ligatures: {no-}common-ligatures
2124 https://bugs.webkit.org/show_bug.cgi?id=76103
2126 Reviewed by Sam Weinig.
2128 Tests: fast/css/parsing-font-variant-ligatures.html
2129 fast/text/font-variant-ligatures-expected.html
2130 fast/text/font-variant-ligatures.html
2132 Added support for all font-variant-ligatures values in the style system and in
2133 FontDescription, and made the {no-}common-ligatures value keywords control basic ligatures.
2134 The {no-}{discretionary,historical}-ligatures keywords have no effect on rendering at this
2137 font-variant-ligatures was not made part of the font shorthand property.
2139 * css/CSSComputedStyleDeclaration.cpp:
2140 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added code to handle
2141 font-variant-ligatures.
2142 * css/CSSParser.cpp:
2143 (WebCore::CSSParser::parseValue): Added code to handle font-variant-ligatures.
2144 (WebCore::CSSParser::parseFontVariantLigatures): Added. Parses font-variant-ligatures.
2146 * css/CSSProperty.cpp:
2147 (WebCore::CSSProperty::isInheritedProperty): Added font-variant-ligatures to the set of
2148 inherited properties.
2149 * css/CSSPropertyNames.in: Added -webkit-font-variant-ligatures.
2150 * css/CSSStyleApplyProperty.cpp:
2151 (WebCore::ApplyPropertyFontVariantLigatures::applyInheritValue): Added. Copies
2152 {common,discretionary,historical}LigaturesState from the parent style font description.
2153 (WebCore::ApplyPropertyFontVariantLigatures::applyInitialValue): Added. Sets
2154 {common,discretionary,historical}LigaturesState to normal.
2155 (WebCore::ApplyPropertyFontVariantLigatures::applyValue): Added.
2156 (WebCore::ApplyPropertyFontVariantLigatures::createHandler): Added.
2157 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty): Added a handler for
2158 font-variant-ligatures.
2159 * css/CSSStyleSelector.cpp:
2160 (WebCore::CSSStyleSelector::applyDeclaration): Updated for the number of properties that
2162 (WebCore::CSSStyleSelector::applyProperty): Added CSSPropertyWebkitFontVariantLigatures to
2163 the switch statement, which needs to list all values in SVG-disabled builds.
2164 * css/CSSValueKeywords.in: Added the value keywords
2165 {no-}{common,discretionary,historical}-ligatures.
2166 * platform/graphics/Font.h:
2167 (WebCore::Font::typesettingFeatures): Changed to enable ligatures if common ligatures are
2168 enabled in the font description, disable them if they are disabled, and leave them to the
2169 default (determined by the text-rendering property) if they are in the normal state.
2170 * platform/graphics/FontDescription.h:
2171 (WebCore::FontDescription::FontDescription): Added initializers.
2172 (WebCore::FontDescription::commonLigaturesState): Added this accessor.
2173 (WebCore::FontDescription::discretionaryLigaturesState): Ditto.
2174 (WebCore::FontDescription::historicalLigaturesState): Ditto.
2175 (WebCore::FontDescription::setCommonLigaturesState): Ditto.
2176 (WebCore::FontDescription::setDiscretionaryLigaturesState): Ditto.
2177 (WebCore::FontDescription::setHistoricalLigaturesState): Ditto.
2178 (WebCore::FontDescription::operator==): Updated to compare the ligatures state members.
2180 2012-01-11 Adrienne Walker <enne@google.com>
2182 Repaint all graphics layers when their renderer offset changes
2183 https://bugs.webkit.org/show_bug.cgi?id=75730
2185 Reviewed by Simon Fraser.
2187 In RenderLayerBacking, only the main graphics layer gets repainted
2188 when the offset changes. If the offset on other graphics layers (e.g.
2189 the foreground layer) changes, they should get repainted as well.
2191 Test: compositing/geometry/foreground-offset-change.html
2193 * platform/graphics/GraphicsLayer.cpp:
2194 (WebCore::GraphicsLayer::setOffsetFromRenderer):
2195 (WebCore::GraphicsLayer::paintGraphicsLayerContents):
2196 * platform/graphics/GraphicsLayer.h:
2197 * rendering/RenderLayerBacking.cpp:
2198 (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
2199 (WebCore::RenderLayerBacking::paintContents):
2201 2012-01-11 Scott Violet <sky@google.com>
2203 [chromium] TiledLayerChromium drops invalidates that occur during
2204 LayerTextureUpdater::prepareToUpdate
2205 https://bugs.webkit.org/show_bug.cgi?id=76067
2207 Reviewed by James Robinson.
2209 Test coverage in TiledLayerChromiumTest.
2211 * platform/graphics/chromium/TiledLayerChromium.cpp:
2212 (WebCore::TiledLayerChromium::prepareToUpdateTiles):
2214 2012-01-11 Kentaro Hara <haraken@chromium.org>
2216 [JSC] Remove redundant arguments from [Supplemental] custom methods
2217 https://bugs.webkit.org/show_bug.cgi?id=76127
2219 Reviewed by Adam Barth.
2221 Since in JSC a callback of custom methods is non-static, we do not need
2222 to pass a pointer of an implementation object.
2224 Before (JSTestInterface.cpp):
2225 JSValue jsTestInterfaceSupplementalStr3(ExecState* exec, JSValue slotBase, ...)
2227 JSTestInterface* castedThis = static_cast<JSTestInterface*>(asObject(slotBase));
2228 TestInterface* impl = static_cast<TestInterface*>(castedThis->impl());
2229 return castedThis->supplementalStr3(impl, exec);
2232 After (JSTestInterface.cpp):
2233 JSValue jsTestInterfaceSupplementalStr3(ExecState* exec, JSValue slotBase, ...)
2235 JSTestInterface* castedThis = static_cast<JSTestInterface*>(asObject(slotBase));
2236 return castedThis->supplementalStr3(exec); // JSTestInterface knows 'impl'.
2239 Tests: bindings/scripts/test/TestInterface.idl
2240 http/tests/websocket/tests/*
2243 * bindings/scripts/CodeGeneratorJS.pm:
2244 (GenerateHeader): Previously when we specify [CustomGetter, CustomSetter], the header for
2245 the custom setter was not generated. This patch fixes the bug.
2246 (GenerateImplementation):
2248 * bindings/js/JSDOMWindowWebAudioCustom.cpp: Removed redundant DOMWindow* from webkitAudioContext().
2249 (WebCore::JSDOMWindow::webkitAudioContext):
2250 * bindings/js/JSDOMWindowWebSocketCustom.cpp: Removed redundant DOMWindow* from webSocket().
2251 (WebCore::JSDOMWindow::webSocket):
2253 * bindings/scripts/test/JS/JSTestInterface.cpp: Updated the test result.
2254 (WebCore::jsTestInterfaceSupplementalStr3):
2255 (WebCore::setJSTestInterfaceSupplementalStr3):
2256 * bindings/scripts/test/JS/JSTestInterface.h: Ditto.
2258 2012-01-11 Adam Barth <abarth@webkit.org>
2260 iframe sandbox doesn't block autofocus (IETC automatic-feature-block-autofocus-form-control)
2261 https://bugs.webkit.org/show_bug.cgi?id=76120
2263 Reviewed by Eric Seidel.
2265 Test: fast/forms/no-autofocus-in-sandbox.html
2267 * html/HTMLFormControlElement.cpp:
2268 (WebCore::shouldAutofocus):
2269 - The HTML5 spec says that we shouldn't autofocus elements when the
2270 automatic features are sandboxed.
2272 2012-01-11 Beth Dakin <bdakin@apple.com>
2274 https://bugs.webkit.org/show_bug.cgi?id=75904
2275 WebKit 1: Scrollbar uiStateTransitionProgress requires tracking the mouse all
2278 <rdar://problem/10498816>
2280 Reviewed by Darin Adler.
2282 This patch gets rid of the optional parameter called onlyUpdateScrollbars for
2283 mouseMoved() and instead moves that functionality into its own function
2284 called passMouseMovedEventToScrollbars().
2286 * page/EventHandler.cpp:
2287 (WebCore::EventHandler::mouseMoved):
2288 (WebCore::EventHandler::passMouseMovedEventToScrollbars):
2289 * page/EventHandler.h:
2290 * page/mac/EventHandlerMac.mm:
2291 (WebCore::EventHandler::passMouseMovedEventToScrollbars):
2293 2012-01-11 Joshua Bell <jsbell@chromium.org>
2295 IndexedDB: Methods should throw TRANSACTION_INACTIVE_ERR when transaction is completed/aborted
2296 https://bugs.webkit.org/show_bug.cgi?id=76108
2298 Updated IDBDatabaseException error codes to match spec (the pre-DOM4 version),
2299 including updated description strings, and changed relevant store and index
2300 methods to raise the expected exception type now that it is detailed in the spec.
2302 Reviewed by Tony Chang.
2304 Tests: storage/indexeddb/transaction-basics.html
2306 * storage/IDBCursorBackendImpl.cpp:
2307 (WebCore::IDBCursorBackendImpl::continueFunction):
2308 (WebCore::IDBCursorBackendImpl::prefetchContinue):
2309 * storage/IDBDatabaseException.cpp:
2310 * storage/IDBDatabaseException.h:
2311 * storage/IDBDatabaseException.idl:
2312 * storage/IDBIndexBackendImpl.cpp:
2313 (WebCore::IDBIndexBackendImpl::openCursor):
2314 (WebCore::IDBIndexBackendImpl::openKeyCursor):
2315 (WebCore::IDBIndexBackendImpl::count):
2316 (WebCore::IDBIndexBackendImpl::get):
2317 (WebCore::IDBIndexBackendImpl::getKey):
2318 * storage/IDBObjectStoreBackendImpl.cpp:
2319 (WebCore::IDBObjectStoreBackendImpl::get):
2320 (WebCore::IDBObjectStoreBackendImpl::put):
2321 (WebCore::IDBObjectStoreBackendImpl::deleteFunction):
2322 (WebCore::IDBObjectStoreBackendImpl::clear):
2323 (WebCore::IDBObjectStoreBackendImpl::createIndex):
2324 (WebCore::IDBObjectStoreBackendImpl::deleteIndex):
2325 (WebCore::IDBObjectStoreBackendImpl::openCursor):
2326 (WebCore::IDBObjectStoreBackendImpl::count):
2328 2012-01-11 Kentaro Hara <haraken@chromium.org>
2330 Implement the [Supplemental] IDL for custom methods
2331 https://bugs.webkit.org/show_bug.cgi?id=76036
2333 Reviewed by Adam Barth.
2335 We have implemented the [Supplemental] IDL for non-custom methods in bug 75944.
2336 This patch implements it for custom methods. This patch modifies only CodeGeneratorV8.pm,
2337 since CodeGeneratorJS.pm requires no change and other code generators
2338 do not support custom methods.
2340 Test: bindings/scripts/test/TestSupplemental.idl
2342 * bindings/scripts/CodeGeneratorV8.pm:
2345 * bindings/scripts/test/TestSupplemental.idl: Added a custom method with the [Supplemental] IDL.
2347 * bindings/scripts/test/JS/JSTestInterface.cpp: Updated the test result.
2348 (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod3):
2349 * bindings/scripts/test/JS/JSTestInterface.h: Ditto.
2350 * bindings/scripts/test/ObjC/DOMTestInterface.h: Ditto.
2351 * bindings/scripts/test/ObjC/DOMTestInterface.mm: Ditto.
2352 (-[DOMTestInterface supplementalMethod3]):
2353 * bindings/scripts/test/V8/V8TestInterface.cpp: Ditto.
2355 2011-12-21 Shaw Andy <andy.shaw@digia.com>
2357 Fix build issue on Windows when Qt is configured with -ltcg
2358 https://bugs.webkit.org/show_bug.cgi?id=75003
2360 Rubber-stamped by Simon Hausmann.
2364 2012-01-09 Avi Drissman <avi@chromium.org>
2366 https://bugs.webkit.org/show_bug.cgi?id=75860
2367 [Chromium Mac] no background is drawn for input elements
2369 Reviewed by Eric Seidel.
2371 Reverts r104240 for Chromium. Unfortunately the code that uses Cocoa
2372 API misbehaves when built with the 10.5 SDK, so we use SPI. For now.
2374 * rendering/RenderThemeChromiumMac.h:
2375 * rendering/RenderThemeChromiumMac.mm:
2376 (WebCore::RenderThemeChromiumMac::paintTextField):
2378 2012-01-11 Adam Barth <abarth@webkit.org>
2380 iframe sandbox doesn't block videos from autoplaying (IETC automatic-feature-block-autoplay-video)
2381 https://bugs.webkit.org/show_bug.cgi?id=76111
2383 Reviewed by Eric Seidel.
2385 Test: media/no-auto-play-in-sandbox.html
2387 * dom/SecurityContext.h:
2388 - Add a flag for sandboxing automatic features, per the HTML5 spec.
2389 * html/HTMLMediaElement.cpp:
2390 (WebCore::HTMLMediaElement::setReadyState):
2391 - Implement requirement in the HTML5 spec to not autoplay media
2392 when automatic features are sandboxed.
2394 2012-01-11 Nate Chapin <japhet@chromium.org>
2396 SubresourceLoader cleanup post r100311.
2397 1. Simplify matching incrementRequestCount()/decrementRequestCount() calls.
2398 2. Remove CachedImage custom code from SubresourceLoader.
2399 3. Add a bunch of ASSERTs.
2400 4. Remove the multipart-only call to didReceiveData() from didReceiveResponse(),
2401 since didReceiveData() would get called immediately after anyway.
2402 https://bugs.webkit.org/show_bug.cgi?id=75887
2404 Reviewed by Adam Barth.
2406 No new tests, refactor only.
2408 * loader/SubresourceLoader.cpp:
2409 (WebCore::SubresourceLoader::didReceiveResponse): Remove multipart special case, handle it in didReceiveData().
2410 (WebCore::SubresourceLoader::didReceiveData): Handle multipart state here, since we will receive only one
2411 didReceiveData() call per multipart segment, but no didFinishLoading() call.
2412 * loader/SubresourceLoader.h: Add a RequestCountTracker subclass to reduce complexity of ensuring we don't
2413 decrement request count twice on CachedResourceLoader.
2414 * loader/cache/CachedImage.cpp:
2415 (WebCore::CachedImage::setResponse): Move CachedImage::clear() call out of SubresourceLoader, since it's
2416 kind of a layering violation as is.
2417 * loader/cache/CachedImage.h:
2418 * loader/cache/CachedResource.cpp:
2420 2012-01-11 Joshua Bell <jsbell@chromium.org>
2422 IndexedDB: Version change transaction should abort if constraints fail during createIndex
2423 https://bugs.webkit.org/show_bug.cgi?id=76094
2425 Reviewed by Tony Chang.
2427 Test: storage/indexeddb/index-population.html
2429 * storage/IDBIndexBackendImpl.cpp:
2430 (WebCore::IDBIndexBackendImpl::addingKeyAllowed):
2431 * storage/IDBIndexBackendImpl.h:
2432 * storage/IDBLevelDBBackingStore.cpp:
2433 (WebCore::IDBLevelDBBackingStore::forEachObjectStoreRecord):
2434 * storage/IDBObjectStoreBackendImpl.cpp:
2436 2012-01-11 Greg Billock <gbillock@google.com>
2438 Switch web intents to use supplemental IDL for DOMWindow
2439 https://bugs.webkit.org/show_bug.cgi?id=76092
2441 Reviewed by Adam Barth.
2443 * Modules/intents/DOMWindowIntents.idl: Added.
2445 * page/DOMWindow.idl:
2447 2012-01-11 Kent Tamura <tkent@chromium.org>
2449 Rename HTMLInputElement::setDefaultName to setInitialName.
2450 https://bugs.webkit.org/show_bug.cgi?id=76039
2452 Reviewed by Darin Adler.
2454 Rename setDefaultName to setInitialName, make it protected, and add two
2457 This change should not change any behavior.
2459 Test: fast/forms/isindex-name.html
2461 * html/HTMLInputElement.cpp:
2462 (WebCore::HTMLInputElement::setInitialName):
2463 - Renamed from setDefaultName.
2465 * html/HTMLInputElement.h:
2466 Rename setDefaultName to setInitialName, and move it to protected.
2467 * html/HTMLIsIndexElement.cpp:
2468 (WebCore::HTMLIsIndexElement::HTMLIsIndexElement):
2469 Update a setDefaultName callsite.
2470 (WebCore::HTMLIsIndexElement::parseMappedAttribute):
2473 2012-01-11 Adam Treat <atreat@rim.com>
2475 https://bugs.webkit.org/show_bug.cgi?id=76088
2476 The common case of content type = text/plain is not optimized and the plugin database is initialized instead
2478 In the dom/DOMImplementation.cpp file you can find the comment that text/plain is
2479 optimized so that the plugin database is not loaded. Unfortunately, this has been
2480 regressed since the patch for http://bugs.webkit.org/show_bug.cgi?id=16815 which
2481 refactored a bunch of the plugin code. Now, the plugin database is initialized
2482 before we handle text/plain. This line in DOMImplementation.cpp triggers
2483 the plugin initialization:
2485 pluginData = frame->page()->pluginData();
2487 The case of image types != PDF and the case of HTML5 video content type are also
2488 not optimized to be handled before plugin initialization.
2490 The solution is to refactor so all of these content types are handled before
2491 we initialize the plugin database.
2493 Reviewed by Adam Treat.
2495 * dom/DOMImplementation.cpp:
2496 (WebCore::DOMImplementation::createDocument):
2498 2012-01-11 Alexandre Elias <aelias@google.com>
2500 [chromium] Make Skia canvas opaque for root layer tiles
2501 https://bugs.webkit.org/show_bug.cgi?id=75939
2503 Reviewed by James Robinson.
2505 Skia has extra optimizations if a bitmap has the "opaque" flag -- in
2506 particular, it doesn't do an unnecessary memset at creation time.
2507 Pass down the LayerChromium's opaque flag to Skia.
2509 * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.cpp:
2510 (WebCore::BitmapCanvasLayerTextureUpdater::setIsNonCompositedContent):
2511 * platform/graphics/chromium/BitmapCanvasLayerTextureUpdater.h:
2512 * platform/graphics/chromium/ContentLayerChromium.cpp:
2513 (WebCore::ContentLayerChromium::createTextureUpdater):
2514 * platform/graphics/chromium/LayerTextureUpdater.h:
2515 (WebCore::LayerTextureUpdater::setIsNonCompositedContent):
2516 * platform/graphics/chromium/PlatformCanvas.cpp:
2517 (WebCore::PlatformCanvas::PlatformCanvas):
2518 (WebCore::PlatformCanvas::resize):
2519 * platform/graphics/chromium/PlatformCanvas.h:
2520 (WebCore::PlatformCanvas::setOpaque):
2521 (WebCore::PlatformCanvas::opaque):
2522 * platform/graphics/chromium/TiledLayerChromium.cpp:
2523 (WebCore::TiledLayerChromium::setIsNonCompositedContent):
2525 2012-01-11 Greg Billock <gbillock@google.com>
2527 [Coverity] Address some uninit constructor issues in WebCore/dom
2528 https://bugs.webkit.org/show_bug.cgi?id=74977
2530 Reviewed by Ryosuke Niwa.
2532 * css/SelectorChecker.h:
2533 (WebCore::SelectorChecker::ParentStackFrame::ParentStackFrame):
2534 * dom/DeviceMotionData.cpp:
2535 (WebCore::DeviceMotionData::DeviceMotionData):
2536 * dom/DeviceOrientation.cpp:
2537 (WebCore::DeviceOrientation::DeviceOrientation):
2539 2012-01-11 Kenneth Russell <kbr@google.com>
2541 [chromium] Color profiles are incorrect for images without premultiplied alpha
2542 https://bugs.webkit.org/show_bug.cgi?id=75999
2544 Reviewed by Stephen White.
2546 Don't apply the color profile if the user has requested separate alpha.
2548 Test: fast/canvas/webgl/texture-color-profile.html
2550 * platform/image-decoders/skia/ImageDecoderSkia.cpp:
2551 (WebCore::ImageFrame::setStatus):
2553 2012-01-11 No'am Rosenthal <noam.rosenthal@nokia.com>
2555 [Qt][Texmap] LayoutTests/compositing/masks/masked-ancestor does not render correctly.
2556 https://bugs.webkit.org/show_bug.cgi?id=75910
2558 Reviewed by Simon Hausmann.
2560 Handle the mask surface correctly when drawing in two passes. Also, improve the readability
2561 of the code that decides whether to draw in two passes.
2563 LayoutTests/compositing/masks/masked-ancestor.html tests this.
2565 * platform/graphics/texmap/TextureMapperNode.cpp:
2566 (WebCore::TextureMapperNode::computeAllTransforms):
2567 (WebCore::TextureMapperNode::hasMoreThanOneTile):
2568 (WebCore::TextureMapperNode::paintRecursive):
2569 * platform/graphics/texmap/TextureMapperNode.h:
2571 2012-01-11 Dmitry Titov <dimich@chromium.org>
2573 Add new CSS enum value to a switch() in CSSStyleSelector::applyProperty() to fix compile error.
2574 https://bugs.webkit.org/show_bug.cgi?id=76081
2576 Reviewed by David Levin.
2578 * css/CSSStyleSelector.cpp:
2579 (WebCore::CSSStyleSelector::applyProperty):
2581 2012-01-11 Alexey Proskuryakov <ap@apple.com>
2583 Reviewed by Darin Adler. Prepared by Sheriff Bot. Rolling out r94902.
2584 http://trac.webkit.org/changeset/94902
2585 https://bugs.webkit.org/show_bug.cgi?id=75905
2587 Disagrees with general direction for WebKit, and makes
2588 refactoring harder (Requested by ap on #webkit).
2590 * loader/DocumentWriter.cpp:
2591 (WebCore::DocumentWriter::deprecatedFrameEncoding):
2592 * loader/DocumentWriter.h:
2593 * loader/FrameLoader.cpp:
2594 (WebCore::FrameLoader::addExtraFieldsToRequest):
2595 * platform/network/ResourceRequestBase.cpp:
2596 (WebCore::ResourceRequestBase::adopt):
2597 (WebCore::ResourceRequestBase::copyData):
2598 (WebCore::ResourceRequestBase::setResponseContentDispositionEncodingFallbackArray):
2599 * platform/network/ResourceRequestBase.h:
2601 2012-01-11 Eli Fidler <efidler@rim.com>
2603 Fix OpenGL dependency in CMake build system
2604 https://bugs.webkit.org/show_bug.cgi?id=73559
2606 Reviewed by Daniel Bates.
2609 * PlatformEfl.cmake:
2611 2012-01-11 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
2613 Use HashMap<OwnPtr> for RenderBoxRegionInfo map in RenderRegion
2614 https://bugs.webkit.org/show_bug.cgi?id=75348
2616 Reviewed by Darin Adler.
2618 * rendering/RenderFlowThread.cpp:
2619 (WebCore::RenderFlowThread::logicalWidthChangedInRegions): use OwnPtr.
2620 * rendering/RenderRegion.cpp:
2621 (WebCore::RenderRegion::setRenderBoxRegionInfo): use HashMap::add() instead of
2622 get() potentially followed by set().
2623 (WebCore::RenderRegion::takeRenderBoxRegionInfo): change to return PassOwnPtr.
2624 (WebCore::RenderRegion::removeRenderBoxRegionInfo):
2625 (WebCore::RenderRegion::deleteAllRenderBoxRegionInfo):
2626 * rendering/RenderRegion.h:
2628 2012-01-11 Joel Webber <jgw@google.com>
2630 Implement setCurrentTime() and pauseAnimations() on SVGSVGElement
2631 https://bugs.webkit.org/show_bug.cgi?id=12073
2633 Reviewed by Nikolas Zimmermann.
2635 Adds the ability to reset an SVGSMILElement internally. SVGSMILElements are no longer removed
2636 from their containers when they become inactive, because they sometimes have to be reactivated
2637 when the container's current time is changed.
2639 Test: svg/animations/animate-setcurrenttime.html
2641 * svg/SVGSVGElement.cpp:
2642 (WebCore::SVGSVGElement::setCurrentTime):
2643 * svg/animation/SMILTimeContainer.cpp:
2644 (WebCore::SMILTimeContainer::SMILTimeContainer):
2645 (WebCore::SMILTimeContainer::begin):
2646 (WebCore::SMILTimeContainer::pause):
2647 (WebCore::SMILTimeContainer::setElapsed):
2648 (WebCore::SMILTimeContainer::updateAnimations):
2649 * svg/animation/SMILTimeContainer.h:
2650 * svg/animation/SVGSMILElement.cpp:
2651 (WebCore::SVGSMILElement::reset):
2652 * svg/animation/SVGSMILElement.h:
2654 2012-01-11 Peter Rybin <peter.rybin@gmail.com>
2656 Web Inspector: CodeGeneratorInspector.py: fix codestyle of generated enums
2657 https://bugs.webkit.org/show_bug.cgi?id=76062
2659 Reviewed by Yury Semikhatsky.
2661 This only changes how constants are named in generated .h file.
2663 * inspector/CodeGeneratorInspector.py:
2665 2012-01-11 Pavel Feldman <pfeldman@google.com>
2667 Web Inspector: "undefined" instead of error message in the SourceFrame.
2668 https://bugs.webkit.org/show_bug.cgi?id=76060
2670 Reviewed by Yury Semikhatsky.
2672 * inspector/front-end/ConsoleMessage.js:
2673 (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
2674 (WebInspector.ConsoleMessageImpl.prototype.get message):
2676 2012-01-11 Pavel Feldman <pfeldman@google.com>
2678 Web Inspector: make setOuterHTML use new DOMEditor, cover it with tests.
2679 https://bugs.webkit.org/show_bug.cgi?id=76056
2681 Reviewed by Yury Semikhatsky.
2683 Test: inspector/elements/set-outer-html.html
2685 * inspector/DOMEditor.cpp:
2686 (WebCore::DOMEditor::Digest::Digest):
2687 (WebCore::DOMEditor::patchDocument):
2688 (WebCore::DOMEditor::patchNode):
2689 (WebCore::DOMEditor::innerPatchHTMLElement):
2690 (WebCore::DOMEditor::innerPatchNode):
2691 (WebCore::DOMEditor::diff):
2692 (WebCore::DOMEditor::innerPatchChildren):
2693 (WebCore::DOMEditor::createDigest):
2694 * inspector/DOMEditor.h:
2695 * inspector/Inspector-0.1.json:
2696 * inspector/Inspector.json:
2697 * inspector/InspectorDOMAgent.cpp:
2698 (WebCore::InspectorDOMAgent::setOuterHTML):
2699 * inspector/InspectorDOMAgent.h:
2700 * inspector/front-end/DOMAgent.js:
2701 (WebInspector.DOMNode):
2702 (WebInspector.DOMNode.prototype._renumber):
2703 * inspector/front-end/ElementsTreeOutline.js:
2706 2012-01-10 Alexander Pavlov <apavlov@chromium.org>
2708 Web Inspector: introduce "source" column in the CSS profiler.
2709 https://bugs.webkit.org/show_bug.cgi?id=75378
2711 Reviewed by Pavel Feldman.
2713 Rules are no longer merged by their selectors but are shown one per profile entry, with a link to
2714 their selector in the source whenever the latter is available.
2716 * inspector/Inspector.json:
2717 * inspector/InspectorCSSAgent.cpp:
2718 (WebCore::RuleMatchingStats::RuleMatchingStats):
2719 (WebCore::SelectorProfile::makeKey):
2720 (WebCore::SelectorProfile::startSelector):
2721 (WebCore::SelectorProfile::commitSelector):
2722 (WebCore::SelectorProfile::commitSelectorTime):
2723 (WebCore::SelectorProfile::toInspectorObject):
2724 (WebCore::InspectorCSSAgent::willMatchRule):
2725 (WebCore::InspectorCSSAgent::willProcessRule):
2726 (WebCore::InspectorCSSAgent::buildArrayForRuleList):
2727 * inspector/InspectorStyleSheet.cpp:
2728 (WebCore::InspectorStyleSheet::styleSheetURL):
2729 (WebCore::InspectorStyleSheet::finalURL):
2730 (WebCore::InspectorStyleSheet::setRuleSelector):
2731 * inspector/InspectorStyleSheet.h:
2732 * inspector/front-end/CSSSelectorProfileView.js:
2733 (WebInspector.CSSSelectorDataGridNode.prototype.get rawData):
2734 (WebInspector.CSSSelectorDataGridNode.prototype.createCell):
2735 (WebInspector.CSSSelectorProfileView):
2736 (WebInspector.CSSSelectorProfileView.prototype._createProfileNodes):
2737 (WebInspector.CSSSelectorProfileView.prototype._sortProfile.sourceComparator):
2738 (WebInspector.CSSSelectorProfileView.prototype._sortProfile):
2739 * inspector/front-end/ProfilesPanel.js:
2740 (WebInspector.ProfilesPanel.prototype.sidebarResized):
2741 * inspector/front-end/dataGrid.css:
2742 (.data-grid:focus tr.selected a):
2744 2012-01-11 Peter Rybin <peter.rybin@gmail.com>
2746 Web Inspector: CodeGeneratorInspector.py: generate enum types.
2747 https://bugs.webkit.org/show_bug.cgi?id=74954
2749 Reviewed by Yury Semikhatsky.
2751 Internal map of string contants is created. C enums are created for
2754 * inspector/CodeGeneratorInspector.py:
2755 (EnumConstants.add_constant):
2757 (EnumConstants.get_enum_constant_code):
2758 (TypeBindings.create_type_declaration_.EnumBinding.get_code_generator.CodeGenerator.generate_type_builder):
2759 (TypeBindings.create_type_declaration_.EnumBinding.get_in_c_type_text):
2760 (TypeBindings.create_type_declaration_.EnumBinding.get_setter_value_expression_pattern):
2761 (TypeBindings.create_type_declaration_.PlainString.reduce_to_raw_type):
2762 (TypeBindings.create_type_declaration_.PlainString.get_setter_value_expression_pattern):
2763 (get_in_c_type_text):
2764 (get_setter_value_expression_pattern):
2765 (PlainObjectBinding.get_in_c_type_text):
2766 (PlainObjectBinding.get_setter_value_expression_pattern):
2767 (RawTypesBinding.get_in_c_type_text):
2768 (RawTypesBinding.get_setter_value_expression_pattern):
2769 (get_annotated_type_text):
2770 (MethodGenerateModes.get_modes):
2771 (MethodGenerateModes.StrictParameterMode.get_c_param_type_text):
2772 (MethodGenerateModes.StrictParameterMode):
2773 (MethodGenerateModes.StrictParameterMode.get_setter_value_expression):
2774 (MethodGenerateModes.RawParameterMode.get_c_param_type_text):
2775 (MethodGenerateModes.RawParameterMode):
2776 (MethodGenerateModes.RawParameterMode.get_setter_value_expression):
2777 (MethodGenerateModes.CombinedMode.get_c_param_type_text):
2778 (MethodGenerateModes):
2779 (MethodGenerateModes.CombinedMode):
2780 (MethodGenerateModes.CombinedMode.get_setter_value_expression):
2782 2012-01-11 Caio Marcelo de Oliveira Filho <caio.oliveira@openbossa.org>
2784 Avoid separate heap allocation for each RenderRegionRange in RenderFlowThread
2785 https://bugs.webkit.org/show_bug.cgi?id=75908
2787 Reviewed by Darin Adler.
2789 There's no benefit in explicit allocating RenderRegionRange in the heap. So this
2790 patch changes the RenderRegionRangeMap to use the value type directly instead of
2793 * rendering/RenderFlowThread.cpp:
2794 (WebCore::RenderFlowThread::removeRegionFromThread):
2795 (WebCore::RenderFlowThread::layout):
2796 (WebCore::RenderFlowThread::removeRenderBoxRegionInfo):
2797 (WebCore::RenderFlowThread::setRegionRangeForBox):
2798 (WebCore::RenderFlowThread::getRegionRangeForBox):
2799 * rendering/RenderFlowThread.h: add default constructor to act as emptyValue()
2802 2012-01-09 Alexandru Chiculita <achicu@adobe.com>
2804 [CSS Shaders] Move CustomFilterOperation to the platform layer
2805 https://bugs.webkit.org/show_bug.cgi?id=74652
2807 Reviewed by Chris Marrin.
2809 FilterOperations are now part of the platform code and cannot reference style classes directly, but
2810 CustomFilterOperation requires to link to the CachedShader for the vertex and the fragment shader.
2812 The fix is to introduce another object that will actually keep a link to the cached resources, so in this patch
2813 I'm adding a new class called CustomFilterProgram that will sit in the
2814 platform/graphics/filters directory and will be referenced from CustomFilterOperation.
2816 CustomFilterProgram is the base class of StyleCustomFilterProgram that is created from
2817 CSSStyleSelector when a new CustomFilterOperation is created. StyleCustomFilterProgram is responsible
2818 with loading and keeping references to the StyleCachedShaders and the CachedShaders.
2820 More patches will follow with optimizations about reusing 3D graphics contexts and compiled shaders.
2822 Tests: css3/filters/custom-filter-shader-cache.html
2823 css3/filters/missing-custom-filter-shader.html
2826 * GNUmakefile.list.am:
2829 * WebCore.vcproj/WebCore.vcproj:
2830 * WebCore.xcodeproj/project.pbxproj:
2831 * css/CSSComputedStyleDeclaration.cpp:
2832 (WebCore::CSSComputedStyleDeclaration::valueForFilter):
2833 * css/CSSStyleSelector.cpp:
2834 (WebCore::CSSStyleSelector::loadPendingShaders):
2835 (WebCore::CSSStyleSelector::createCustomFilterOperation):
2836 Updated to use the StyleCustomFilterProgram instead of the CustomFilterOperation.
2838 * platform/graphics/filters/CustomFilterOperation.h: Renamed from Source/WebCore/rendering/style/CustomFilterOperation.h.
2839 (WebCore::CustomFilterOperation::create):
2840 Accepts a CustomFilterProgram instead of vertex and fragment CachedShaders.
2842 (WebCore::CustomFilterOperation::program): Returns the CustomFilterProgram.
2844 (WebCore::CustomFilterOperation::CustomFilterOperation):
2845 Accepts a CustomFilterProgram instead of vertex and fragment CachedShaders.
2847 * platform/graphics/filters/CustomFilterProgram.cpp: Added.
2848 (WebCore::CustomFilterProgram::CustomFilterProgram):
2849 (WebCore::CustomFilterProgram::~CustomFilterProgram):
2850 (WebCore::CustomFilterProgram::addClient):
2851 (WebCore::CustomFilterProgram::removeClient):
2852 (WebCore::CustomFilterProgram::notifyClients):
2853 (WebCore::CustomFilterProgram::createShaderWithContext):
2854 * platform/graphics/filters/CustomFilterProgram.h: Added.
2855 * platform/graphics/filters/CustomFilterProgramClient.h: Added.
2856 (WebCore::CustomFilterProgramClient::~CustomFilterProgramClient):
2858 * platform/graphics/filters/FECustomFilter.cpp:
2859 FECustomFilter will not use strings anymore. It will just get a reference to the CustomFilterProgram.
2861 (WebCore::FECustomFilter::FECustomFilter):
2862 (WebCore::FECustomFilter::create):
2863 (WebCore::FECustomFilter::initializeContext):
2864 Using the CustomFilterProgram to generate the CustomFilterShader instance. A better name for CustomFilterShader
2865 would be CustomFilterCompiledProgram, but I would prefer to make that change in a different patch.
2867 * platform/graphics/filters/FECustomFilter.h:
2868 * rendering/FilterEffectRenderer.cpp:
2869 (WebCore::FilterEffectRenderer::~FilterEffectRenderer):
2870 (WebCore::FilterEffectRenderer::build):
2871 (WebCore::FilterEffectRenderer::notifyCustomFilterProgramLoaded):
2872 (WebCore::FilterEffectRenderer::removeCustomFilterClients):
2873 * rendering/FilterEffectRenderer.h:
2874 * rendering/style/StyleCustomFilterProgram.h: Added.
2875 (WebCore::StyleCustomFilterProgram::create):
2876 (WebCore::StyleCustomFilterProgram::setVertexShader):
2877 (WebCore::StyleCustomFilterProgram::vertexShader):
2878 (WebCore::StyleCustomFilterProgram::setFragmentShader):
2879 (WebCore::StyleCustomFilterProgram::fragmentShader):
2880 (WebCore::StyleCustomFilterProgram::vertexShaderString):
2881 (WebCore::StyleCustomFilterProgram::fragmentShaderString):
2882 (WebCore::StyleCustomFilterProgram::isLoaded):
2883 (WebCore::StyleCustomFilterProgram::willHaveClients):
2884 (WebCore::StyleCustomFilterProgram::didRemoveLastClient):
2885 (WebCore::StyleCustomFilterProgram::notifyFinished):
2886 (WebCore::StyleCustomFilterProgram::StyleCustomFilterProgram):
2888 2012-01-11 Alexandru Chiculita <achicu@adobe.com>
2890 CSS Filters: apply the filters in RenderLayerBacking::paintIntoLayer when filters cannot be composited in hardware
2891 https://bugs.webkit.org/show_bug.cgi?id=75842
2893 Reviewed by Simon Fraser.
2895 RenderLayers have two possible states: composited or not. When composited the RenderLayerBacking::paintIntoLayer is used
2896 to render the result inside the graphics context of the GraphicsLayer. When not composited the RenderLayer::paintLayer method will draw
2897 the result in the graphics context of the parent layer.
2899 Because a recent patch forced creation of composited layers for filters, this patch makes RenderLayerBacking::paintIntoLayer aware
2900 that it might need to apply the filters when the composition engine failed to apply them in platform code.
2902 No new tests needed, I've just updated some of the old tests to force disable the accelerated composition
2903 so that we can still test software painted filters.
2905 * platform/graphics/GraphicsLayer.h:
2906 (WebCore::GraphicsLayer::clearFilters):
2907 * platform/graphics/ca/GraphicsLayerCA.cpp:
2908 (WebCore::GraphicsLayerCA::setFilters):
2909 If filtersCanBeComposited() is false we need to reset the CoreAnimation layer to remove any previously applied filter.
2910 * platform/graphics/ca/mac/PlatformCALayerMac.mm:
2911 (PlatformCALayer::filtersCanBeComposited):
2912 Added grayscale, brightness and contrast in the list of not accelerated filters. Otherwise an assert if triggered.
2913 * rendering/FilterEffectRenderer.cpp:
2914 (WebCore::FilterEffectRenderer::updateBackingStore):
2915 Moved this method from RenderLayer::updateFilterBackingStore. It had no dependencies on RenderLayer.
2916 (WebCore::FilterEffectRendererHelper::beginFilterEffect):
2917 (WebCore::FilterEffectRendererHelper::applyFilterEffect):
2918 Consolidated the filter rendering inside this helper class that is now used in both RenderLayerBacking::paintIntoLayer and RenderLayer::paintLayer.
2919 * rendering/FilterEffectRenderer.h:
2920 (WebCore::FilterEffectRendererHelper::FilterEffectRendererHelper):
2921 (WebCore::FilterEffectRendererHelper::haveFilterEffect):
2922 (WebCore::FilterEffectRendererHelper::hasStartedFilterEffect):
2923 * rendering/RenderLayer.cpp:
2924 (WebCore::RenderLayer::paintLayer):
2925 Filters should apply after the opacity is applied, so I moved this down to paintLayerContents.
2926 (WebCore::RenderLayer::paintLayerContents):
2927 * rendering/RenderLayer.h:
2928 (WebCore::RenderLayer::filter):
2929 * rendering/RenderLayerBacking.cpp:
2930 (WebCore::RenderLayerBacking::paintIntoLayer):
2931 Added software fallback rendering of the filters on composited RenderLayers.
2933 2012-01-11 Jochen Eisinger <jochen@chromium.org>
2935 Move the check for canExecuteScripts out of V8Proxy::retrieve
2936 https://bugs.webkit.org/show_bug.cgi?id=75533
2938 Reviewed by Adam Barth.
2940 This change doesn't move the check to custom/generated bindings for
2941 individual objects, as these won't get executed if scripts are disabled
2944 No new tests. No functional change.
2946 * bindings/v8/PageScriptDebugServer.cpp:
2947 (WebCore::PageScriptDebugServer::addListener):
2948 * bindings/v8/ScheduledAction.cpp:
2949 (WebCore::ScheduledAction::execute):
2950 * bindings/v8/ScriptCachedFrameData.cpp:
2951 (WebCore::ScriptCachedFrameData::restore):
2952 * bindings/v8/V8DOMWrapper.cpp:
2953 (WebCore::V8DOMWrapper::instantiateV8Object):
2954 * bindings/v8/V8EventListener.cpp:
2955 (WebCore::V8EventListener::callListenerFunction):
2956 * bindings/v8/V8LazyEventListener.cpp:
2957 (WebCore::V8LazyEventListener::callListenerFunction):
2958 (WebCore::V8LazyEventListener::prepareListenerObject):
2959 * bindings/v8/V8Proxy.cpp:
2960 (WebCore::V8Proxy::handleOutOfMemory):
2961 (WebCore::V8Proxy::retrieve):
2962 (WebCore::toV8Context):
2964 2012-01-11 Kentaro Hara <haraken@chromium.org>
2966 ShouldSkipTypeInHeader() and ShouldSkipTypeInImplementation() should be the same
2967 https://bugs.webkit.org/show_bug.cgi?id=76030
2969 Reviewed by Adam Barth.
2971 Because the attributes/methods that do not appear in the implementation
2972 do not need to appear in the header.
2974 Tests: bindings/scripts/test/TestCallback.idl
2975 bindings/scripts/test/TestObj.idl
2977 * bindings/scripts/CodeGeneratorCPP.pm:
2978 (ShouldSkipType): Renamed from ShouldSkipTypeInImplementation().
2979 (GenerateHeader): Replaced ShouldSkipTypeInImplementation() with ShouldSkipType(),
2980 and replaced ShouldSkipTypeInHeader() with ShouldSkipType().
2981 (GenerateImplementation): Ditto.
2982 * bindings/scripts/test/CPP/WebDOMTestCallback.h: Updated the test result.
2983 * bindings/scripts/test/CPP/WebDOMTestObj.h: Ditto.
2985 2012-01-11 Zoltan Herczeg <zherczeg@webkit.org>
2987 Fix more style errors in CSSParser.cpp (followup patch)
2988 https://bugs.webkit.org/show_bug.cgi?id=76038
2990 Reviewed by Nikolas Zimmermann.
2992 The previous was: http://trac.webkit.org/changeset/104576
2993 This patch mostly contains C cast to static_cast rewrites.
2995 * css/CSSParser.cpp:
2996 (WebCore::CSSParser::parseValue):
2997 (WebCore::CSSParser::parseBackgroundColor):
2998 (WebCore::ShadowParseContext::commitLength):
2999 (WebCore::BorderImageSliceParseContext::commitNumber):
3000 (WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
3001 (WebCore::BorderImageQuadParseContext::commitNumber):
3002 (WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
3003 (WebCore::parseDeprecatedGradientPoint):
3005 2012-01-11 Nikolas Zimmermann <nzimmermann@rim.com>
3007 Not reviewed. Fix release builds.
3009 * rendering/svg/SVGTextMetricsBuilder.cpp:
3010 (WebCore::SVGTextMetricsBuilder::measureTextRenderer):
3012 2012-01-11 Kentaro Hara <haraken@chromium.org>
3014 REGRESSION(r101445): [V8] Generated code for custom getters and setters
3015 with the [Supplemental] IDL is wrong
3016 https://bugs.webkit.org/show_bug.cgi?id=76034
3018 Reviewed by Adam Barth.
3020 This patch fixes the class name of the implementation of custom getters
3021 and setters, as follows.
3023 Previous V8TestInterface.cpp:
3024 // Attribute 'supplementalStr3'
3025 {"supplementalStr3", V8TestSupplemental::supplementalStr3AccessorGetter, V8TestSupplemental::supplementalStr3AccessorSetter, ...},
3027 New V8TestInterface.cpp:
3028 // Attribute 'supplementalStr3'
3029 {"supplementalStr3", V8TestInterface::supplementalStr3AccessorGetter, V8TestInterface::supplementalStr3AccessorSetter, ...},
3031 Test: bindings/scripts/test/TestInterface.idl
3032 bindings/scripts/test/TestSupplemental.idl
3034 * bindings/scripts/CodeGeneratorV8.pm:
3035 (GenerateSingleBatchedAttribute):
3036 * bindings/scripts/test/V8/V8TestInterface.cpp:
3038 2012-01-10 Nikolas Zimmermann <nzimmermann@rim.com>
3040 Large SVG text layout performance regression in r81168
3041 https://bugs.webkit.org/show_bug.cgi?id=65711
3043 Reviewed by Zoltan Herczeg.
3045 Introduce SVGTextMetricsBuilder, which will be used to speed-up measuring of SVG text,
3046 by using the simple code path, whenever possibly. It's not enabled yet, as it requires
3047 a restructurization of SVGTextLayoutAttributesBuilder - its the first chunk of a set
3048 of patches, that all together fix the performance regression and much more :-)
3050 Doesn't affect any tests, SVGTextMetricsBuilder is not turned on yet.
3052 * CMakeLists.txt: Add SVGTextMetricsBuilder.cpp/h to build.
3053 * GNUmakefile.list.am: Ditto.
3054 * Target.pri: Ditto.
3055 * WebCore.gypi: Ditto.
3056 * WebCore.vcproj/WebCore.vcproj: Ditto.
3057 * WebCore.xcodeproj/project.pbxproj: Ditto.
3058 * platform/graphics/Font.h:
3059 (WebCore::Font::codePath): Make it public, to be usable from SVGTextMetricsBuilder.
3060 * rendering/svg/RenderSVGAllInOne.cpp: Add SVGTextMetricsBuilder.cpp to build.
3061 * rendering/svg/RenderSVGText.cpp:
3062 * rendering/svg/RenderSVGText.h:
3063 * rendering/svg/SVGTextLayoutAttributesBuilder.cpp:
3064 (WebCore::SVGTextLayoutAttributesBuilder::propagateLayoutAttributes): SVGTextMetrics::emptyMetrics() is gone, adapt code.
3065 * rendering/svg/SVGTextLayoutEngine.cpp:
3066 (WebCore::SVGTextLayoutEngine::currentLogicalCharacterMetrics): Ditto.
3067 (WebCore::SVGTextLayoutEngine::layoutTextOnLineOrPath): Ditto.
3068 * rendering/svg/SVGTextMetrics.cpp:
3069 (WebCore::SVGTextMetrics::SVGTextMetrics): Made public, now used in SVGTextLayoutEngine.
3070 (WebCore::SVGTextMetrics::constructTextRun): Move to public static function, to be usable from SVGTextMetricsBuilder.
3071 * rendering/svg/SVGTextMetrics.h:
3072 (WebCore::SVGTextMetrics::isEmpty): Add new isEmpty method, which replaces the == empyMetrics().
3073 (WebCore::SVGTextMetrics::setWidth): Remove friendship with SVGTextLayoutAttributesBuilder, and make it public, to avoid another friendship.
3074 * rendering/svg/SVGTextMetricsBuilder.cpp: Added.
3075 (WebCore::SVGTextMetricsBuilder::SVGTextMetricsBuilder):
3076 (WebCore::SVGTextMetricsBuilder::advance):
3077 (WebCore::SVGTextMetricsBuilder::advanceSimpleText): New variant using WidthIterator directly, this is finally possible as SVG Fonts have been integrated into the glyph pages concept a while ago.
3078 (WebCore::SVGTextMetricsBuilder::advanceComplexText): Complex code path, accounting for sum of glyph widths != run width.
3079 (WebCore::SVGTextMetricsBuilder::measureTextRenderer): Either measure the text renderer, or just figure out lastCharacter.
3080 (WebCore::SVGTextMetricsBuilder::walkTreeUntilSpecificLeafIsReached): Walks SVG <text> tree, correctly computing "lastCharacter" until the leaf is reached.
3081 (WebCore::SVGTextMetricsBuilder::measureAllCharactersOfRenderer): Use above method.
3082 * rendering/svg/SVGTextMetricsBuilder.h: Added.
3084 2012-01-11 Dan Bernstein <mitz@apple.com>
3086 <rdar://problem/10674686> Implement the font-kerning CSS property
3087 https://bugs.webkit.org/show_bug.cgi?id=76033
3089 Reviewed by Darin Adler.
3091 Tests: fast/text/font-kerning-expected.html
3092 fast/text/font-kerning.html
3094 * css/CSSComputedStyleDeclaration.cpp:
3095 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added code to handle
3097 * css/CSSParser.cpp:
3098 (WebCore::CSSParser::parseValue): Ditto.
3099 * css/CSSPrimitiveValueMappings.h:
3100 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue): Added mapping from FontDescription::Kerning.
3101 (WebCore::CSSPrimitiveValue::operator FontDescription::Kerning): Added mapping to
3102 FontDescription::Kerning.
3103 * css/CSSProperty.cpp:
3104 (WebCore::CSSProperty::isInheritedProperty): Added font-kerning to the set of inherited
3106 * css/CSSPropertyNames.in: Added -webkit-font-kerning.
3107 * css/CSSStyleApplyProperty.cpp:
3108 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty): Added a handler for font-kerning.
3109 * css/CSSStyleSelector.cpp:
3110 (WebCore::CSSStyleSelector::applyDeclaration): Updated for the number of properties that
3112 * platform/graphics/Font.h:
3113 (WebCore::Font::typesettingFeatures): Changed to enable kerning if font-kerning is set to
3114 normal, disable it if font-kerning is set to none, and leave it to the default (determined
3115 by the text-rendering property) if font-kerning is set to auto.
3116 * platform/graphics/FontDescription.h:
3117 (WebCore::FontDescription::FontDescription): Added a Kerning enum.
3118 (WebCore::FontDescription::kerning): Added this getter.
3119 (WebCore::FontDescription::setKerning): Added this setter.
3120 (WebCore::FontDescription::operator==): Updated to compare the m_kerning member.
3122 2012-01-10 Ryosuke Niwa <rniwa@webkit.org>
3124 Build fix. Forgot to revert Node.h.
3128 2012-01-10 Ryosuke Niwa <rniwa@webkit.org>
3130 Revert r104210. It turned out that this patch makes improving the node list caches harder.
3133 (WebCore::Attr::setValue):
3134 (WebCore::Attr::childrenChanged):
3135 * dom/DynamicNodeList.cpp:
3136 (WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList):
3137 (WebCore::DynamicSubtreeNodeList::length):
3138 (WebCore::DynamicSubtreeNodeList::itemForwardsFromCurrent):
3139 (WebCore::DynamicSubtreeNodeList::itemBackwardsFromCurrent):
3140 (WebCore::DynamicSubtreeNodeList::item):
3141 (WebCore::DynamicSubtreeNodeList::invalidateCache):
3142 (WebCore::DynamicSubtreeNodeList::Caches::create):
3143 (WebCore::DynamicSubtreeNodeList::Caches::reset):
3144 * dom/DynamicNodeList.h:
3146 (WebCore::Element::updateAfterAttributeChanged):
3148 (WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged):
3149 (WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged):
3150 (WebCore::Node::notifyLocalNodeListsLabelChanged):
3151 (WebCore::Node::itemTypeAttributeChanged):
3152 (WebCore::NodeListsNodeData::invalidateCaches):
3153 (WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes):
3154 * dom/NodeRareData.h:
3155 * html/HTMLElement.cpp:
3156 (WebCore::HTMLElement::parseMappedAttribute):
3157 * html/HTMLLabelElement.cpp:
3158 (WebCore::HTMLLabelElement::parseMappedAttribute):
3159 * html/HTMLLabelElement.h:
3161 2012-01-10 Sheriff Bot <webkit.review.bot@gmail.com>
3163 Unreviewed, rolling out r104263 and r104381.
3164 http://trac.webkit.org/changeset/104263
3165 http://trac.webkit.org/changeset/104381
3166 https://bugs.webkit.org/show_bug.cgi?id=76029
3168 Preparation to rollout r104210 (Requested by rniwa on
3171 * dom/DynamicNodeList.cpp:
3172 (WebCore::DynamicSubtreeNodeList::SubtreeCaches::setLengthCache):
3173 (WebCore::DynamicSubtreeNodeList::SubtreeCaches::setItemCache):
3174 (WebCore::DynamicSubtreeNodeList::length):
3175 (WebCore::DynamicSubtreeNodeList::item):
3176 * dom/DynamicNodeList.h:
3177 (WebCore::DynamicSubtreeNodeList::SubtreeCaches::isLengthCacheValid):
3178 (WebCore::DynamicSubtreeNodeList::SubtreeCaches::isItemCacheValid):
3179 (WebCore::DynamicSubtreeNodeList::SubtreeCaches::domVersionIsConsistent):
3181 2012-01-10 David Kilzer <ddkilzer@apple.com>
3183 Add TestWebKitAPI tests for KURL
3184 <http://webkit.org/b/75774>
3186 Reviewed by Adam Barth.
3188 * WebCore.exp.in: Export additional KURL methods used in
3191 2012-01-10 Jer Noble <jer.noble@apple.com>
3193 Crash in HTMLMediaElement::shouldDisableSleep()
3194 https://bugs.webkit.org/show_bug.cgi?id=76025
3196 Reviewed by Dan Bernstein.
3198 Check nullity of m_player before dereferencing.
3200 * html/HTMLMediaElement.cpp:
3201 (WebCore::HTMLMediaElement::shouldDisableSleep):
3203 2012-01-04 Kent Tamura <tkent@chromium.org>
3205 A radio button not in a document should not join a radio button group
3206 https://bugs.webkit.org/show_bug.cgi?id=45719
3208 Reviewed by Darin Adler.
3210 As per the standard and other browser behaviors, we should not add a
3211 radio button not in a document to a radio button group.
3213 So, CheckedRadioButton member functions should be called in
3214 insertedIntoDocument() and removedFromDocument(), and they should do
3215 nothing if the specified radio button is not in a document.
3217 This change also fixes a bug that form owner change by 'form' attribute
3218 didn't update radio button groups correctly.
3220 Test: fast/forms/radio/radio-group.html
3222 * dom/CheckedRadioButtons.cpp:
3223 (WebCore::shouldMakeRadioGroup): A helper function to check <input> state.
3224 (WebCore::CheckedRadioButtons::addButton):
3225 - Change the argument type: HTMLFormControlElement* -> HTMLInputElement*.
3226 - Use shouldMakeRadioGroup().
3227 (WebCore::CheckedRadioButtons::removeButton): ditto.
3228 * dom/CheckedRadioButtons.h:
3229 Change the argument types of addButton() and removeButton():
3230 HTMLFormControlElement* -> HTMLInputElement*.
3231 * html/FormAssociatedElement.cpp:
3232 Do not update m_form except in setForm() and formWillBeDestroyed().
3233 This helps us to call registerFormElement() and removeFromElement()
3234 correctly, and call willChangeForm()/didChangeForm() hooks correctly.
3235 (WebCore::FormAssociatedElement::FormAssociatedElement):
3236 (WebCore::FormAssociatedElement::~FormAssociatedElement):
3237 (WebCore::FormAssociatedElement::insertedIntoTree):
3238 (WebCore::FormAssociatedElement::removedFromTree):
3239 (WebCore::FormAssociatedElement::setForm):
3240 (WebCore::FormAssociatedElement::willChangeForm):
3241 This virtual function is called before the owner form is updated.
3242 (WebCore::FormAssociatedElement::didChangeForm):
3243 This virtual function is called after the owner form was updated.
3244 (WebCore::FormAssociatedElement::formWillBeDestroyed):
3245 - Renamaed from formDestroyed()
3246 - Add calls to willChangeForm() and didChangeForm().
3247 (WebCore::FormAssociatedElement::resetFormOwner): Use setForm().
3248 (WebCore::FormAssociatedElement::formAttributeChanged): ditto.
3249 * html/FormAssociatedElement.h:
3250 * html/HTMLFormControlElement.cpp:
3251 (WebCore::HTMLFormControlElement::HTMLFormControlElement): Use setForm().
3252 (WebCore::HTMLFormControlElement::~HTMLFormControlElement):
3253 removeFormElement() is not needed. ~FormAssociatedElement() treats it.
3254 (WebCore::HTMLFormControlElement::parseMappedAttribute):
3255 No need to handle CheckedRadioButtons here. It is handled by HTMLInputElement.
3256 (WebCore::HTMLFormControlElement::insertedIntoTree): ditto.
3257 * html/HTMLFormElement.cpp:
3258 (WebCore::HTMLFormElement::~HTMLFormElement):
3259 Rename formDestroyed() with willDestroyForm().
3260 (WebCore::HTMLFormElement::registerFormElement):
3261 We don't need to handle radio button groups here.
3262 (WebCore::HTMLFormElement::removeFormElement): ditto.
3263 * html/HTMLInputElement.cpp:
3264 (WebCore::HTMLInputElement::~HTMLInputElement):
3265 Calls setForm(0) so that it calls correct virtual functions of
3267 (WebCore::HTMLInputElement::updateCheckedRadioButtons):
3268 Checking attached() was wrong.
3269 (WebCore::HTMLInputElement::willChangeForm):
3270 Remove this radio button from a radio button group for the old form.
3271 (WebCore::HTMLInputElement::didChangeForm):
3272 Add this radio button to a radio button group for the new form.
3273 (WebCore::HTMLInputElement::insertedIntoDocument):
3274 Add CheckedRadioButtons::addButton() call.
3275 (WebCore::HTMLInputElement::removedFromDocument):
3276 Add CheckedRadioButtons::removeButton() call.
3277 (WebCore::HTMLInputElement::didMoveToNewDocument):
3278 We don't need to handle CheckedRadioButton() here because
3279 removedFromDocument() handles it.
3280 * html/HTMLInputElement.h:
3281 * html/HTMLObjectElement.cpp:
3282 (WebCore::HTMLObjectElement::HTMLObjectElement): Use setForm().
3283 (WebCore::HTMLObjectElement::~HTMLObjectElement):
3284 removeFormElement() is not needed. ~FormAssociatedElement() treats it.
3286 2012-01-10 Kentaro Hara <haraken@chromium.org>
3288 Remove redundant code from DOMWindowSQLDatabase.cpp
3289 https://bugs.webkit.org/show_bug.cgi?id=76010
3291 Reviewed by Adam Barth.
3293 This patch removes redundant code from DOMWindowSQLDatabase.cpp.
3295 - Remove window->frame() check, since window->frame() is always true when
3296 window->isCurrentlyDisplayedInFrame() is true.
3297 - window->frame()->document() can just be window->document()
3299 Tests: storage/open-database-creation-callback-isolated-world.html
3300 storage/open-database-creation-callback.html
3301 storage/open-database-empty-version.html
3302 storage/open-database-over-quota.html
3303 storage/open-database-set-empty-version.html
3304 storage/open-database-while-transaction-in-progress.html
3306 * storage/DOMWindowSQLDatabase.cpp:
3307 (WebCore::DOMWindowSQLDatabase::openDatabase):
3309 2012-01-10 Dale Curtis <dalecurtis@chromium.org>
3311 Repaint video controls when buffering during pause.
3312 https://bugs.webkit.org/show_bug.cgi?id=73957
3314 Pipes support for a new bufferingProgressed() method on MediaControls
3315 elements. Allows controls to be repainted as data buffers when paused.
3317 Reviewed by Hajime Morita.
3319 Test: http/tests/media/video-buffering-repaints-controls.html
3321 * html/HTMLMediaElement.cpp:
3322 (WebCore::HTMLMediaElement::setNetworkState):
3323 (WebCore::HTMLMediaElement::progressEventTimerFired):
3324 * html/shadow/MediaControlRootElement.cpp:
3325 (WebCore::MediaControlRootElement::bufferingProgressed):
3326 * html/shadow/MediaControlRootElement.h:
3327 * html/shadow/MediaControlRootElementChromium.cpp:
3328 (WebCore::MediaControlRootElementChromium::bufferingProgressed):
3329 * html/shadow/MediaControlRootElementChromium.h:
3330 * html/shadow/MediaControls.h:
3332 2012-01-10 Daniel Cheng <dcheng@chromium.org>
3334 [chromium] Pasteboard::documentFragment should fall back to text if there's no HTML text
3335 https://bugs.webkit.org/show_bug.cgi?id=75923
3337 Reviewed by Tony Chang.
3339 Test: editing/pasteboard/pasting-empty-html-falls-back-to-text.html
3341 * platform/chromium/PasteboardChromium.cpp:
3342 (WebCore::Pasteboard::documentFragment):
3344 2012-01-10 Kentaro Hara <haraken@chromium.org>
3346 Use the [Supplemental] IDL in SQLDatabase
3347 https://bugs.webkit.org/show_bug.cgi?id=76004
3349 Reviewed by Adam Barth.
3351 We've been working on WebKit modularization. By using the [Supplemental] IDL,
3352 we can move SQLDatabase related code from WebCore/page/DOMWindow.{h,cpp,idl}
3353 to WebCore/storage/DOMWindowSQLDatabase.{h,cpp,idl}.
3355 Tests: storage/open-database-creation-callback-isolated-world.html
3356 storage/open-database-creation-callback.html
3357 storage/open-database-empty-version.html
3358 storage/open-database-over-quota.html
3359 storage/open-database-set-empty-version.html
3360 storage/open-database-while-transaction-in-progress.html
3362 * CMakeLists.txt: Added DOMWindowSQLDatabase.{idl,h,cpp} to the build script.
3363 * DerivedSources.make: Ditto.
3364 * DerivedSources.pri: Ditto.
3365 * GNUmakefile.list.am: Ditto.
3366 * Target.pri: Ditto.
3367 * WebCore.gypi: Ditto.
3368 * WebCore.vcproj/WebCore.vcproj: Ditto.
3369 * WebCore.xcodeproj/project.pbxproj: Ditto.
3371 * page/DOMWindow.cpp: Removed SQLDatabase related code.
3372 * page/DOMWindow.idl: Ditto.
3373 * page/DOMWindow.h: Ditto. Moved isCurrentlyDisplayedInFrame() from private: to public:
3374 so that DOMWindowSQLDatabase::openDatabase() can access it.
3376 * storage/DOMWindowSQLDatabase.cpp: Added. Moved openDatabase() from DOMWindow.cpp to here.
3377 (WebCore::DOMWindowSQLDatabase::openDatabase):
3378 * storage/DOMWindowSQLDatabase.h: Added. Moved openDatabase() from DOMWindow.h to here.
3379 * storage/DOMWindowSQLDatabase.idl: Added. Using the [Supplemental] IDL, moved openDatabase()
3380 and SQLException from DOMWindow.idl to here.
3382 2012-01-10 Chris Marrin <cmarrin@apple.com>
3384 CIFilter version of Sepia Tone filter doesn't match software
3385 https://bugs.webkit.org/show_bug.cgi?id=75129
3387 Reviewed by Simon Fraser.
3389 Changed sepia tone filter to use a CIColorMatrix filter with
3390 values that match sw filter.
3392 * platform/graphics/ca/mac/PlatformCALayerMac.mm:
3394 (PlatformCALayer::setFilters):
3396 2012-01-10 Viatcheslav Ostapenko <ostapenko.viatcheslav@nokia.com>
3398 [Qt][WK2]REGRESSION(r102435): It made tst_QQuickWebView::show() crash
3399 https://bugs.webkit.org/show_bug.cgi?id=74176
3401 Reviewed by Noam Rosenthal.
3403 Replaces static global GL resource holder with holder shared between
3404 TextureMapperGL instances created on the same GL context. Also adds
3405 deallocation of GL resources when last TextureMapperGL instance on the
3406 current GL context gets deleted.
3408 Tested by multipleWebViewWindows and multipleWebViews Qt WK2 API tests.
3410 * platform/graphics/opengl/TextureMapperGL.cpp:
3411 (WebCore::TextureMapperGLData::SharedGLData::getCurrentGLContext):
3412 (WebCore::TextureMapperGLData::SharedGLData::glContextDataMap):
3413 (WebCore::TextureMapperGLData::SharedGLData::currentSharedGLData):
3414 (WebCore::TextureMapperGLData::SharedGLData::ProgramInfo::ProgramInfo):
3415 (WebCore::TextureMapperGLData::SharedGLData::createShaderProgram):
3416 (WebCore::TextureMapperGLData::SharedGLData::deleteShaderProgram):
3417 (WebCore::TextureMapperGLData::SharedGLData::SharedGLData):
3418 (WebCore::TextureMapperGLData::SharedGLData::~SharedGLData):
3419 (WebCore::TextureMapperGLData::sharedGLData):
3420 (WebCore::TextureMapperGLData::TextureMapperGLData):
3421 (WebCore::TextureMapperGLData::SharedGLData::initializeShaders):
3422 (WebCore::TextureMapperGL::beginPainting):
3423 (WebCore::TextureMapperGL::drawTexture):
3424 (WebCore::BitmapTextureGL::bind):
3425 (WebCore::TextureMapperGL::bindSurface):
3426 (WebCore::TextureMapperGL::beginClip):
3427 (WebCore::TextureMapperGL::endClip):
3428 * platform/graphics/opengl/TextureMapperGL.h:
3430 2012-01-10 Simon Fraser <simon.fraser@apple.com>
3432 Disabled mock scrollbars should draw differently
3433 https://bugs.webkit.org/show_bug.cgi?id=75995
3435 Reviewed by James Robinson.
3437 When the scrollbar is disabled, paint the entire track of
3438 mock scrollbars with a lighter gray, and hide the thumb.
3440 No tests, since mock scrollbars aren't enabled by default on Mac yet.
3442 * platform/mock/ScrollbarThemeMock.cpp:
3443 (WebCore::ScrollbarThemeMock::paintTrackBackground):
3444 (WebCore::ScrollbarThemeMock::paintThumb):
3446 2012-01-10 Tony Chang <tony@chromium.org>
3448 Need to handle absolutely positioned elements inside flexboxes
3449 https://bugs.webkit.org/show_bug.cgi?id=70793
3451 Reviewed by David Hyatt.
3453 Tests: css3/flexbox/insert-text-crash.html
3454 css3/flexbox/position-absolute-child.html
3456 * rendering/RenderFlexibleBox.cpp:
3457 (WebCore::RenderFlexibleBox::computePreferredMainAxisExtent): Skip the size of positioned elements.
3458 (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm): Add placeholders for positioned elements.
3459 (WebCore::RenderFlexibleBox::prepareChildForPositionedLayout): Positions the layer for the positioned child.
3460 (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): Handle positioned elements.
3461 (WebCore::RenderFlexibleBox::layoutColumnReverse): Adjust the main axis offset of the layer for positioned elements.
3462 * rendering/RenderFlexibleBox.h:
3464 2012-01-10 Nat Duca <nduca@chromium.org>
3466 [chromium] Reuse old timebase when activating CCDelayBasedTimeSource
3467 https://bugs.webkit.org/show_bug.cgi?id=75938
3469 Reviewed by James Robinson.
3471 * platform/graphics/chromium/cc/CCDelayBasedTimeSource.cpp:
3472 (WebCore::CCDelayBasedTimeSource::CCDelayBasedTimeSource):
3473 (WebCore::CCDelayBasedTimeSource::setActive):
3474 (WebCore::CCDelayBasedTimeSource::onTimerFired):
3475 (WebCore::CCDelayBasedTimeSource::postNextTickTask):
3476 * platform/graphics/chromium/cc/CCDelayBasedTimeSource.h:
3478 2012-01-10 Kentaro Hara <haraken@chromium.org>
3480 Support the [Supplemental] IDL on methods
3481 https://bugs.webkit.org/show_bug.cgi?id=75944
3483 Reviewed by Adam Barth.
3485 The spec for the [Supplemental] IDL:
3486 http://dev.w3.org/2006/webapi/WebIDL/#dfn-supplemental-interface
3488 Currently the [Supplemental] IDL is supported on attributes but not supported
3489 on methods. This patch makes a change to support it.
3491 Specifically, assume the following IDL:
3493 interface [Supplemental=X] Y {
3497 Then the code generator generates the following V8X.cpp.
3499 void funcCallback(Arguments& args) {
3500 X* imp = V8X::toNative(args.Holder());
3504 Similar code is also generated for JS, ObjC, GObject and CPP bindings.
3506 Test: bindings/scripts/test/TestSupplemental.idl
3508 * bindings/scripts/CodeGeneratorCPP.pm: Modified as described above.
3509 (GenerateImplementation):
3510 * bindings/scripts/CodeGeneratorGObject.pm: Ditto.
3512 * bindings/scripts/CodeGeneratorJS.pm: Ditto.
3513 (GenerateParametersCheck):
3514 * bindings/scripts/CodeGeneratorObjC.pm: Ditto.
3515 (GenerateImplementation):
3516 * bindings/scripts/CodeGeneratorV8.pm: Ditto.
3517 (GenerateFunctionCallString):
3518 * bindings/scripts/generate-bindings.pl: Ditto.
3520 * bindings/scripts/test/TestSupplemental.idl: Added test cases for [Supplemental] methods.
3522 * bindings/scripts/test/CPP/WebDOMTestInterface.cpp: Updated the test result.
3523 (WebDOMTestInterface::supplementalMethod1):
3524 (WebDOMTestInterface::supplementalMethod2):
3525 * bindings/scripts/test/CPP/WebDOMTestInterface.h: Ditto.
3526 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: Ditto.
3527 (webkit_dom_test_interface_supplemental_method1):
3528 (webkit_dom_test_interface_supplemental_method2):
3529 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h: Ditto.
3530 * bindings/scripts/test/JS/JSTestInterface.cpp: Ditto.
3531 (WebCore::JSTestInterfacePrototype::getOwnPropertySlot):
3532 (WebCore::JSTestInterfacePrototype::getOwnPropertyDescriptor):
3533 (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod1):
3534 (WebCore::jsTestInterfacePrototypeFunctionSupplementalMethod2):
3535 * bindings/scripts/test/JS/JSTestInterface.h: Ditto.
3536 * bindings/scripts/test/ObjC/DOMTestInterface.h: Ditto.
3537 * bindings/scripts/test/ObjC/DOMTestInterface.mm: Ditto.
3538 (-[DOMTestInterface supplementalMethod1]):
3539 (-[DOMTestInterface supplementalMethod2:objArg:]):
3540 * bindings/scripts/test/V8/V8TestInterface.cpp: Ditto.
3541 (WebCore::TestInterfaceInternal::supplementalMethod1Callback):
3542 (WebCore::TestInterfaceInternal::supplementalMethod2Callback):
3543 (WebCore::ConfigureV8TestInterfaceTemplate):
3545 2012-01-10 Kentaro Hara <haraken@chromium.org>
3547 [Refactoring] Rename attributes in TestSupplemental.idl to clarify
3548 that they are supplemental attributes
3549 https://bugs.webkit.org/show_bug.cgi?id=75942
3551 Reviewed by Adam Barth.
3553 This patch just renames attributes in TestSupplemental.idl
3554 to make it easy to find in {JS,V8,WebKitDOM,DOM,WebDOM}TestInterface.cpp
3555 which attributes originate from TestSupplemental.idl.
3557 * bindings/scripts/test/TestSupplemental.idl: Just renamed three attributes.
3559 * bindings/scripts/test/CPP/WebDOMTestInterface.cpp: Updated the test result.
3560 (WebDOMTestInterface::supplementalStr1):
3561 (WebDOMTestInterface::supplementalStr2):
3562 (WebDOMTestInterface::setSupplementalStr2):
3563 * bindings/scripts/test/CPP/WebDOMTestInterface.h: Ditto.
3564 * bindings/scripts/test/GObject/WebKitDOMTestInterface.cpp: Ditto.
3565 (webkit_dom_test_interface_get_supplemental_str1):
3566 (webkit_dom_test_interface_get_supplemental_str2):
3567 (webkit_dom_test_interface_set_supplemental_str2):
3568 (webkit_dom_test_interface_set_property):
3569 (webkit_dom_test_interface_get_property):
3570 (webkit_dom_test_interface_class_init):
3571 * bindings/scripts/test/GObject/WebKitDOMTestInterface.h: Ditto.
3572 * bindings/scripts/test/JS/JSTestInterface.cpp: Ditto.
3573 (WebCore::jsTestInterfaceSupplementalStr1):
3574 (WebCore::jsTestInterfaceSupplementalStr2):
3575 (WebCore::jsTestInterface):
3576 (WebCore::setJSTestInterfaceSupplementalStr2):
3577 (WebCore::setJSTestInterface):
3578 * bindings/scripts/test/JS/JSTestInterface.h: Ditto.
3579 * bindings/scripts/test/ObjC/DOMTestInterface.h: Ditto.
3580 * bindings/scripts/test/ObjC/DOMTestInterface.mm: Ditto.
3581 (-[DOMTestInterface supplementalStr1]):
3582 (-[DOMTestInterface supplementalStr2]):
3583 (-[DOMTestInterface setSupplementalStr2:]):
3584 (-[DOMTestInterface ]):
3585 (-[DOMTestInterface set:]):
3586 * bindings/scripts/test/V8/V8TestInterface.cpp: Ditto.
3587 (WebCore::TestInterfaceInternal::supplementalStr1AttrGetter):
3588 (WebCore::TestInterfaceInternal::supplementalStr2AttrGetter):
3589 (WebCore::TestInterfaceInternal::supplementalStr2AttrSetter):
3591 2012-01-10 John Bauman <jbauman@chromium.org>
3593 [chromium] Correctly recreate DrawingBuffer on lost device
3594 https://bugs.webkit.org/show_bug.cgi?id=75912
3596 Reviewed by Kenneth Russell.
3598 Create new drawing buffer on new context, not old lost context. Also,
3599 make sure to bind new drawing buffer.
3603 * html/canvas/WebGLRenderingContext.cpp:
3604 (WebCore::WebGLRenderingContext::maybeRestoreContext):
3606 2012-01-10 Stephen White <senorblanco@chromium.org>
3608 [Chromium] Partial revert of r104566, since it breaks the shared
3609 library build on Windows.
3610 https://bugs.webkit.org/show_bug.cgi?id=75994
3612 Reviewed by Dmitry Titov.
3614 Covered by SVG feColorMatrix tests (see LayoutTests/ChangeLog).
3617 * platform/graphics/filters/FEColorMatrix.h:
3619 2012-01-10 Simon Fraser <simon.fraser@apple.com>
3621 Clean up RenderLayerBacking code that looks for the body
3622 https://bugs.webkit.org/show_bug.cgi?id=39502
3624 Reviewed by Dave Hyatt.
3626 Consolidate code that propagates the <body> background to the
3627 root, adding a utility method on RenderObject that is called
3628 by RenderBox and RenderLayerBacking.
3630 Removed an unused method in RenderLayerBacking.
3632 The compositiong changes are not testable, since rendererBackgroundColor()
3633 is only used by fullscreen at present.
3635 Tests: fast/backgrounds/root-background-propagation.html
3636 fast/backgrounds/root-background-propagation2.html
3638 * rendering/RenderBox.cpp:
3639 (WebCore::RenderBox::paintRootBoxFillLayers):
3640 * rendering/RenderLayerBacking.cpp:
3641 (WebCore::RenderLayerBacking::rendererBackgroundColor):
3642 * rendering/RenderLayerBacking.h:
3643 * rendering/RenderObject.cpp:
3644 (WebCore::RenderObject::rendererForRootBackground):
3645 * rendering/RenderObject.h:
3647 2012-01-10 Dana Jansens <danakj@chromium.org>
3649 [chromium] Create iterators for the RenderSurface-Layer tree
3650 https://bugs.webkit.org/show_bug.cgi?id=74203
3652 Reviewed by James Robinson.
3654 New unit tests: CCLayerIteratorTest.cpp
3657 * platform/graphics/chromium/RenderSurfaceChromium.h:
3658 * platform/graphics/chromium/cc/CCLayerIterator.cpp: Added.
3659 (WebCore::CCLayerIteratorActions::BackToFront::begin):
3660 (WebCore::CCLayerIteratorActions::BackToFront::end):
3661 (WebCore::CCLayerIteratorActions::BackToFront::next):
3662 (WebCore::CCLayerIteratorActions::FrontToBack::begin):
3663 (WebCore::CCLayerIteratorActions::FrontToBack::end):
3664 (WebCore::CCLayerIteratorActions::FrontToBack::next):
3665 (WebCore::CCLayerIteratorActions::FrontToBack::goToHighestInSubtree):
3666 * platform/graphics/chromium/cc/CCLayerIterator.h: Added.
3667 (WebCore::CCLayerIterator::CCLayerIterator):
3668 (WebCore::CCLayerIterator::begin):
3669 (WebCore::CCLayerIterator::end):
3670 (WebCore::CCLayerIterator::operator++):
3671 (WebCore::CCLayerIterator::operator==):
3672 (WebCore::CCLayerIterator::operator!=):
3673 (WebCore::CCLayerIterator::operator->):
3674 (WebCore::CCLayerIterator::operator*):
3675 (WebCore::CCLayerIterator::representsTargetRenderSurface):
3676 (WebCore::CCLayerIterator::representsContributingRenderSurface):
3677 (WebCore::CCLayerIterator::representsItself):
3678 (WebCore::CCLayerIterator::targetRenderSurfaceLayer):
3679 * platform/graphics/chromium/cc/CCLayerIteratorPosition.h: Added.
3680 (WebCore::CCLayerIteratorPosition::CCLayerIteratorPosition):
3681 (WebCore::CCLayerIteratorPosition::currentLayer):
3682 (WebCore::CCLayerIteratorPosition::currentLayerRepresentsContributingRenderSurface):
3683 (WebCore::CCLayerIteratorPosition::currentLayerRepresentsTargetRenderSurface):
3684 (WebCore::CCLayerIteratorPosition::targetRenderSurfaceLayer):
3685 (WebCore::CCLayerIteratorPosition::targetRenderSurface):
3686 (WebCore::CCLayerIteratorPosition::targetRenderSurfaceChildren):
3687 (WebCore::CCLayerIteratorPosition::operator==):
3688 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
3689 (WebCore::CCLayerTreeHost::paintLayerContents):
3690 (WebCore::CCLayerTreeHost::updateCompositorResources):
3691 * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
3692 (WebCore::walkLayersAndCalculateVisibleLayerRects):
3693 * platform/graphics/chromium/cc/CCRenderSurface.h:
3695 2012-01-10 Ojan Vafai <ojan@chromium.org>
3697 Rename flex-align to flex-item-align.
3698 https://bugs.webkit.org/show_bug.cgi?id=75929
3700 Reviewed by Darin Adler.
3702 The spec has changed and now flex-align will be set on
3705 * css/CSSComputedStyleDeclaration.cpp:
3706 (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3707 * css/CSSParser.cpp:
3708 (WebCore::CSSParser::parseValue):
3709 * css/CSSPrimitiveValueMappings.h:
3710 (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
3711 (WebCore::CSSPrimitiveValue::operator EFlexAlign):
3712 * css/CSSProperty.cpp:
3713 (WebCore::CSSProperty::isInheritedProperty):
3714 * css/CSSPropertyNames.in:
3715 * css/CSSStyleApplyProperty.cpp:
3716 (WebCore::CSSStyleApplyProperty::CSSStyleApplyProperty):
3717 * css/CSSStyleSelector.cpp:
3718 (WebCore::CSSStyleSelector::applyProperty):
3719 * rendering/RenderBox.cpp:
3720 (WebCore::RenderBox::sizesToIntrinsicLogicalWidth):
3721 * rendering/RenderFlexibleBox.cpp:
3722 (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
3723 (WebCore::RenderFlexibleBox::alignChildren):
3724 * rendering/style/RenderStyle.h:
3725 (WebCore::RenderStyleBitfields::flexItemAlign):
3726 (WebCore::RenderStyleBitfields::setFlexItemAlign):
3727 (WebCore::RenderStyleBitfields::initialFlexItemAlign):
3728 * rendering/style/RenderStyleConstants.h:
3729 * rendering/style/StyleFlexibleBoxData.cpp:
3730 (WebCore::StyleFlexibleBoxData::StyleFlexibleBoxData):
3731 (WebCore::StyleFlexibleBoxData::operator==):
3732 * rendering/style/StyleFlexibleBoxData.h:
3734 2012-01-10 Eric Carlson <eric.carlson@apple.com>
3736 Replace TextTrackCue "getCueAsSource" method with "text" attribute
3737 https://bugs.webkit.org/show_bug.cgi?id=75646
3739 Reviewed by Darin Adler.
3741 Test: media/track/track-cue-mutable-text.html
3743 * html/HTMLMediaElement.h: getCueAsSource() -> text().
3745 * html/TextTrackCue.cpp:
3746 (WebCore::TextTrackCue::setText): New. Set cue text and clear the document fragment.
3747 (WebCore::TextTrackCue::getCueAsHTML): Allocate the document fragment if it doesn't exist.
3748 * html/TextTrackCue.h:
3749 (WebCore::TextTrackCue::text):
3750 * html/TextTrackCue.idl: getCueAsSource() -> text().
3752 * html/shadow/MediaControlRootElement.cpp:
3753 (WebCore::MediaControlRootElement::updateTextTrackDisplay): getCueAsSource() -> text().
3754 * html/shadow/MediaControlRootElementChromium.cpp:
3755 (WebCore::MediaControlRootElementChromium::updateTextTrackDisplay): getCueAsSource() -> text().
3757 * html/track/WebVTTParser.cpp:
3758 (WebCore::WebVTTParser::collectCueText): processCueText is dead, long live createNewCue.
3759 (WebCore::WebVTTParser::createDocumentFragmentFromCueText): New, split out of processCueText.
3760 Create a document fragment from the String argument.
3761 (WebCore::WebVTTParser::createNewCue): Split out of processCueText.
3762 (WebCore::WebVTTParser::constructTreeFromToken): Add a comment pointing to the spec section
3763 with the rules for DOM construction.
3764 * html/track/WebVTTParser.h:
3766 2012-01-10 Jer Noble <jer.noble@apple.com>
3768 REGRESSION (r102024): Having the Bing homepage open prevents idle sleep
3769 https://bugs.webkit.org/show_bug.cgi?id=75972
3771 Reviewed by Oliver Hunt.
3773 No new tests; no testing infrastructure exists to test display sleep assertions.
3775 Only disable idle and display sleep when a video element is not paused, not looping, and
3776 has both a video and audio track.
3778 * html/HTMLMediaElement.cpp:
3779 (WebCore::HTMLMediaElement::mediaPlayerRateChanged): Factor into updateDisableSleep() and
3780 shouldDisplaySleep().
3781 (WebCore::HTMLMediaElement::setLoop): Ditto.
3782 (WebCore::HTMLMediaElement::attributeChanged): Ditto.
3783 (WebCore::HTMLMediaElement::updateDisableSleep):
3784 (WebCore::HTMLMediaElement::shouldDisableSleep):
3785 * html/HTMLMediaElement.h:
3787 2012-01-09 Matthew Delaney <mdelaney@apple.com>
3789 [Mac] Accelerate canvas layers with the same logic as accelerating the canvas itself
3790 https://bugs.webkit.org/show_bug.cgi?id=75921
3792 Reviewed by Simon Fraser.
3794 No new tests. Does not affect detectable behavior.
3796 * rendering/RenderLayerCompositor.cpp: Use canvas's shouldAccelerate to avoid asking
3797 uninitialized canvas's if they're accelerated or not.
3798 (WebCore::RenderLayerCompositor::updateBacking):
3800 2012-01-10 Daniel Sievers <sievers@chromium.org>
3802 [Chromium] Do not recreate texture updater for image layer if one exists.
3803 https://bugs.webkit.org/show_bug.cgi?id=75589
3805 Reviewed by James Robinson.
3807 Test: platform/chromium/compositing/img-layer-grow.html
3809 * platform/graphics/chromium/ImageLayerChromium.cpp:
3810 (WebCore::ImageLayerChromium::createTextureUpdater):
3812 2012-01-10 Mike Reed <reed@google.com>
3814 [skia] not all convex paths are convex, so recompute convexity for the problematic ones
3815 https://bugs.webkit.org/show_bug.cgi?id=75960
3817 Reviewed by Stephen White.
3820 See related chrome issue
3821 http://code.google.com/p/chromium/issues/detail?id=108605
3823 * platform/graphics/skia/GraphicsContextSkia.cpp:
3824 (WebCore::setPathFromConvexPoints):
3826 2012-01-10 Gavin Barraclough <barraclough@apple.com>
3828 Do not allow Array length to be set if it is non-configurable
3829 https://bugs.webkit.org/show_bug.cgi?id=75935
3831 Reviewed by Sam Weinig.
3833 * bindings/js/SerializedScriptValue.cpp:
3834 (WebCore::CloneDeserializer::deserialize):
3835 - remove unnecessary call to JSArray::setLength.
3837 2012-01-10 Adrienne Walker <enne@google.com>
3839 [chromium] Draw debug tile borders on composited layers
3840 https://bugs.webkit.org/show_bug.cgi?id=75680
3842 Reviewed by James Robinson.
3844 On tiled layers, draw debug borders on the tiles themselves. By
3845 default, these are one pixel wide and transparent, so should be
3846 unobtrusive but informative. They are triggered when the layer itself
3847 would have a debug border via the existing flags.
3849 Also, fix the drawDebugBorderQuad function to handle arbitrarily
3850 positioned quads, not just full layer quads. Also, fix alpha issue
3853 * platform/graphics/chromium/LayerRendererChromium.cpp:
3854 (WebCore::LayerRendererChromium::drawDebugBorderQuad):
3855 * platform/graphics/chromium/cc/CCDebugBorderDrawQuad.cpp:
3856 (WebCore::CCDebugBorderDrawQuad::CCDebugBorderDrawQuad):
3857 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3858 (WebCore::CCLayerImpl::appendDebugBorderQuad):
3859 (WebCore::CCLayerImpl::quadTransform):
3860 (WebCore::CCLayerImpl::hasDebugBorders):
3861 * platform/graphics/chromium/cc/CCLayerImpl.h:
3862 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
3863 (WebCore::CCTiledLayerImpl::appendQuads):
3865 2012-01-10 Joseph Pecoraro <pecoraro@apple.com>
3867 Web Inspector: Missing Implementation of Public InspectorDOMAgent Function
3868 https://bugs.webkit.org/show_bug.cgi?id=75759
3870 Follow-up: Remove the unused method. Keep the setter private.
3872 Reviewed by Pavel Feldman.
3874 * inspector/InspectorDOMAgent.cpp:
3875 * inspector/InspectorDOMAgent.h:
3877 2012-01-10 Pavel Feldman <pfeldman@google.com>
3879 Not reviewed, follow up to r104586: fix assertion within the loop.
3881 * inspector/DOMEditor.cpp:
3882 (WebCore::DOMEditor::patchChildren):
3884 2012-01-10 Brady Eidson <beidson@apple.com>
3886 <rdar://problem/9328684> and https://bugs.webkit.org/show_bug.cgi?id=62764
3887 Frequent crashes due to null frame below ApplicationCacheHost::scheduleLoadFallbackResourceFromApplicationCache
3889 Reviewed by Maciej Stachowiak.
3891 This is a non-reproducible high volume crash, so no test :(.
3893 * loader/DocumentLoader.cpp:
3894 (WebCore::DocumentLoader::stopLoading): Don't re-run actual "stop loading" logic if the document loader is already
3895 stopping loading. Also add an ASSERT that might catch cases where new loads may have been started while old loads
3897 (WebCore::DocumentLoader::detachFromFrame): Be conservative and stop loading when we detach a document loader from a frame.
3899 2012-01-10 Pavel Feldman <pfeldman@google.com>
3901 Not reviewed: fixing the Mac build.
3903 * inspector/DOMEditor.cpp:
3904 (WebCore::DOMEditor::patchChildren):
3906 2012-01-09 Jer Noble <jer.noble@apple.com>
3908 Elements can appear over fullscreen video
3909 https://bugs.webkit.org/show_bug.cgi?id=75913
3911 Reviewed by Simon Fraser.
3913 No new tests; updated fullscreen/full-screen-zIndex.html to trigger error condition.
3915 RenderFullScreenPlaceholder inherits the pre-fullscreen element's style, causing a stacking
3916 context to be created. Instead of making the placeholder the parent of the RenderFullScreen
3917 object, make the two renderers siblings. Then the stacking context created by the placeholder
3918 will not affect the z-ordering of the RenderFullScreen.
3920 * rendering/RenderFullScreen.cpp:
3921 (RenderFullScreen::wrapRenderer):
3922 (RenderFullScreen::unwrapRenderer):
3923 (RenderFullScreen::createPlaceholder):
3925 2012-01-10 Pavel Feldman <pfeldman@google.com>
3927 Web Inspector: add "free flow DOM editing" experiment.
3928 https://bugs.webkit.org/show_bug.cgi?id=75955
3930 This change enables HTML editing from Resources panel experiment.
3932 Reviewed by Yury Semikhatsky.
3935 * English.lproj/localizedStrings.js:
3936 * GNUmakefile.list.am:
3939 * WebCore.vcproj/WebCore.vcproj:
3940 * WebCore.xcodeproj/project.pbxproj:
3941 * inspector/DOMEditor.cpp: Added.
3942 (WebCore::DOMEditor::DOMEditor):
3943 (WebCore::DOMEditor::~DOMEditor):
3944 (WebCore::DOMEditor::patch):
3945 (WebCore::DOMEditor::NodeDigest::NodeDigest):
3946 (WebCore::DOMEditor::patchElement):
3947 (WebCore::DOMEditor::patchNode):
3948 (WebCore::DOMEditor::patchChildren):
3949 (WebCore::addStringToSHA1):
3950 (WebCore::DOMEditor::createNodeDigest):
3951 * inspector/DOMEditor.h: Added.
3952 * inspector/InspectorDOMAgent.cpp:
3953 (WebCore::InspectorDOMAgent::setOuterHTML):
3954 * inspector/front-end/DOMAgent.js:
3955 (WebInspector.DOMAgent):
3956 (WebInspector.DOMModelResourceBinding):
3957 (WebInspector.DOMModelResourceBinding.prototype.setContent):
3958 (WebInspector.DOMModelResourceBinding.prototype.canSetContent):
3959 * inspector/front-end/Settings.js:
3960 (WebInspector.ExperimentsSettings):
3962 2012-01-10 Stephen Chenney <schenney@chromium.org>
3964 [Chromium] Shift PathSkia to use Skia's new RawIter
3965 https://bugs.webkit.org/show_bug.cgi?id=75703
3967 Reviewed by Nikolas Zimmermann.
3969 No new tests required - covered by existing tests.
3971 * platform/graphics/Path.h: Added comments ont he return values from iteration.
3972 * platform/graphics/skia/PathSkia.cpp:
3973 (WebCore::Path::apply): Switched to SkPath::RawIter
3975 2012-01-10 Peter Beverloo <peter@chromium.org>
3977 [Chromium] Use SkFontHost::GetUnitsPerEm instead of advanced type
3978 metrics for Android in FontPlatformData
3979 https://bugs.webkit.org/show_bug.cgi?id=75702
3981 Reviewed by Stephen White.
3983 Since Skia for Android doesn't implement advanced type metric routines,
3984 use an alternative method to calculate the number of font units for an
3985 em size. This will be exercized by existing layout tests, as it's being
3986 used by the ComplexTextController.
3988 * platform/graphics/harfbuzz/FontPlatformDataHarfBuzz.cpp:
3989 (WebCore::FontPlatformData::emSizeInFontUnits):
3991 2012-01-10 Vsevolod Vlasov <vsevik@chromium.org>
3993 Unreviewed, inspector style fix.
3995 Web Inspector: elements tree is shifted 12px to the right.
3996 https://bugs.webkit.org/show_bug.cgi?id=75609
3998 * inspector/front-end/elementsPanel.css:
3999 (#elements-content):
4001 2012-01-10 Zoltan Herczeg <zherczeg@webkit.org>
4003 Fix style errors in CSSParser.cpp
4004 https://bugs.webkit.org/show_bug.cgi?id=75854
4006 Reviewed by Nikolas Zimmermann.
4010 * css/CSSParser.cpp:
4011 (WebCore::CSSParser::parseValue):
4012 (WebCore::CSSParser::parseShadow):
4013 (WebCore::isBorderImageRepeatKeyword):
4014 (WebCore::BorderImageSliceParseContext::commitBorderImageSlice):
4015 (WebCore::BorderImageQuadParseContext::commitBorderImageQuad):
4016 (WebCore::filterInfoForName):
4018 2012-01-10 Julien Chaffraix <jchaffraix@webkit.org>
4020 REGRESSION (r93614): Safari Reader doesn't repaint correctly when scrolling
4021 https://bugs.webkit.org/show_bug.cgi?id=67100
4023 Reviewed by Dan Bernstein.
4025 Tests: fast/layers/scroll-with-transform-composited-layer.html
4026 fast/layers/scroll-with-transform-layer.html
4028 The regression came from a previous optimization that was wrongly kept after r93614.
4030 * rendering/RenderLayer.cpp:
4031 (WebCore::RenderLayer::updateLayerPositionsAfterScroll):
4032 Remove the early return for transformed layer. This change worked as we used
4033 to call updateLayerPositions from scrollTo which would call updateLayerPosition on
4034 all our descendants. After r93614, this is no longer the case and we explicitely need
4035 to call updateLayerPosition on our descendants from updateLayerPositionsAfterScroll.
4037 2012-01-10 Stephen White <senorblanco@chromium.org>
4039 Fix Chrome/Mac build.
4041 Build fix; unreviewed.
4043 * platform/graphics/filters/skia/FEColorMatrixSkia.cpp:
4044 (WebCore::luminanceToAlphaMatrix):
4046 2012-01-06 Stephen White <senorblanco@chromium.org>
4048 [Skia] Switch FEColorMatrix to use a skia-based implementation when
4049 compiling with USE(SKIA). This change will also switch the software
4050 implementation of FEGaussianBlur to the skia implementation (ie.,
4051 it removes the acceleration check).
4052 https://bugs.webkit.org/show_bug.cgi?id=75582
4054 Reviewed by Dirk Schulze.
4056 Covered by svg/W3C-SVG-1.1/filters-color-01-b.svg and friends (will
4060 Add FEColorMatrixSkia.cpp to the build.
4061 * platform/graphics/filters/FEColorMatrix.h:
4062 Add platformApplySkia().
4063 * platform/graphics/filters/FEGaussianBlur.cpp:
4064 (WebCore::FEGaussianBlur::platformApplySoftware):
4065 Remove skia-specific code from FEGaussianBlur::platformApplySoftware().
4066 * platform/graphics/filters/FEGaussianBlur.h:
4067 Make platformApplySkia() virtual, and put it behind #if USE(SKIA).
4068 * platform/graphics/filters/FilterEffect.cpp:
4069 (WebCore::FilterEffect::apply):
4070 Call out to platformApplySkia(), or fall back to
4071 platformApplySoftware().
4072 * platform/graphics/filters/FilterEffect.h:
4073 Add platformApplySkia().
4074 * platform/graphics/filters/skia/FEColorMatrixSkia.cpp: Added.
4075 (WebCore::saturateMatrix):
4076 (WebCore::hueRotateMatrix):
4077 (WebCore::luminanceToAlphaMatrix):
4078 (WebCore::FEColorMatrix::platformApplySkia):
4079 Process color matrix effect, by calling out to generic matrix
4080 version of SkColorMatrixFilter.
4081 * platform/graphics/filters/skia/FEGaussianBlurSkia.cpp:
4082 (WebCore::FEGaussianBlur::platformApplySkia):