1 2012-03-22 Emil A Eklund <eae@chromium.org>
3 Unreviewed, add missing include statement for CSSValueList.h.
5 * css/CSSStyleSelector.h:
7 2012-03-22 Tony Chang <tony@chromium.org>
9 flexbox flexing implementation should match the spec
10 https://bugs.webkit.org/show_bug.cgi?id=70796
12 Reviewed by Ojan Vafai.
14 Match the algorithm in the spec. Handling min/max constraints are slightly improved.
15 http://dev.w3.org/csswg/css3-flexbox/#resolve-the-flexible-lengths
17 New test cases in css3/flexbox/flex-algorithm-min-max.html.
19 * rendering/RenderFlexibleBox.cpp:
20 (WebCore::adjustFlexSizeForMinAndMax): Step 5 of resolving flexible lengths.
22 (WebCore::RenderFlexibleBox::Violation::Violation):
23 (RenderFlexibleBox::Violation):
24 (WebCore::RenderFlexibleBox::freezeViolations): Used by step 6.
25 (WebCore::RenderFlexibleBox::resolveFlexibleLengths):
26 * rendering/RenderFlexibleBox.h:
28 2012-03-22 Emil A Eklund <eae@chromium.org>
30 Unreviewed, add missing import.
32 * rendering/RenderThemeMac.mm:
34 2012-03-22 Anders Carlsson <andersca@apple.com>
36 ASSERT(!needsLayout) in RenderView.cpp when visiting http://www.panic.com/blog/
37 https://bugs.webkit.org/show_bug.cgi?id=81953
38 <rdar://problem/11086998>
40 Reviewed by Sam Weinig.
42 If a page ends up creating CATiledLayers, CA transactions can be committed outside of the normal
43 CA run loop observer, so we can't call setNeedsDisplay on tile cache layers directly because then
44 we'll end up calling into painting code before all the layers have been flushed.
46 Fix this by adding a list of dirty rects to platformCALayerDidCreateTiles and change GraphicsLayerCA to
47 mark them as dirty. This ensures that any CA transaction commits won't cause newly added layers to be painted.
49 * platform/graphics/avfoundation/cf/MediaPlayerPrivateAVFoundationCF.cpp:
50 (WebCore::LayerClient::platformCALayerDidCreateTiles):
51 * platform/graphics/ca/GraphicsLayerCA.cpp:
52 (WebCore::GraphicsLayerCA::platformCALayerDidCreateTiles):
53 * platform/graphics/ca/GraphicsLayerCA.h:
55 * platform/graphics/ca/PlatformCALayerClient.h:
56 (PlatformCALayerClient):
57 * platform/graphics/ca/mac/TileCache.mm:
58 (WebCore::TileCache::setScale):
59 (WebCore::TileCache::revalidateTiles):
60 * platform/graphics/win/MediaPlayerPrivateQuickTimeVisualContext.cpp:
61 (WebCore::MediaPlayerPrivateQuickTimeVisualContext::LayerClient::platformCALayerDidCreateTiles):
63 2012-03-19 Robert Hogan <robert@webkit.org>
65 Text should overflow when list item height set to 0
66 https://bugs.webkit.org/show_bug.cgi?id=78726
68 Reviewed by Julien Chaffraix.
70 Tests: css2.1/20110323/height-applies-to-010a-expected.html
71 fast/css/heightless-list-item-expected.html
72 fast/css/heightless-list-item.html
74 * rendering/RenderListItem.cpp:
75 (WebCore::RenderListItem::paint):
76 If the list item has height:0, only paint it if the list item allows any block or inline content
77 to overflow unclipped. The zero-height check is a shortcut to avoid unnecessary painting and
78 this seems to be the only case where there's something to do.
80 2012-03-22 Dave Michael <dmichael@chromium.org>
82 HTMLPluginElement is not destroyed on reload or navigation if getNPObject is called
83 https://bugs.webkit.org/show_bug.cgi?id=80428
85 Reviewed by Eric Seidel.
87 Make HTMLPluginElement release its m_NPObject in detach() to break a
88 reference-counting cycle that happens on reload or navigation. With this
89 change, HTMLPlugInElement::removedFromDocument is unnecessary, so it
90 was removed. Note that Releasing m_NPObject does not result in a call to
91 the plugin; it simply releases a reference count on the wrapper object
92 for this HTMLPlugInElement. (The plugin's NPP_Deallocate is invoked
93 when the render tree is destroyed, when PluginView calls
94 PluginPackage::unload.) Thus, it is safe to release m_NPObject in
95 detach, because it can not result in layout or style changes.
97 Also added numberOfLiveNodes() and numberOfLiveDocuments() to
98 window.internals to enable testing.
100 Test: plugins/netscape-dom-access-and-reload.html
103 * html/HTMLPlugInElement.cpp:
104 (WebCore::HTMLPlugInElement::detach):
105 * html/HTMLPlugInElement.h:
107 * testing/Internals.cpp:
108 (WebCore::Internals::numberOfLiveDocuments):
109 (WebCore::Internals::numberOfLiveNodes):
111 * testing/Internals.h:
113 * testing/Internals.idl:
115 2012-03-22 Shawn Singh <shawnsingh@chromium.org>
117 [chromium] Make CCDamageTracker robust to empty layer lists
118 https://bugs.webkit.org/show_bug.cgi?id=81831
120 Reviewed by Adrienne Walker.
122 Added a unit test in CCDamageTrackerTest that causes a crash in
123 the old code. With this patch applied, the crash will not occur.
124 In theory, that crash should never occur anyway, unless there is a
125 bug outside the damage tracker, but for robustness it's
126 appropriate to handle it properly.
128 In addition to this fix, performed some trivial maintenance on the
131 * platform/graphics/chromium/cc/CCDamageTracker.cpp:
132 (WebCore::CCDamageTracker::updateDamageTrackingState): removed
133 unclean code that accessed the targetSurface to get necessary
134 information. Instead, we now pass those args through the damage
137 * platform/graphics/chromium/cc/CCDamageTracker.h:
138 (CCDamageTracker): modified args passed to damage tracker on update.
140 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
141 (WebCore::CCLayerTreeHostImpl::trackDamageForAllSurfaces):
142 modified args passed to damage tracker on update.
144 2012-03-22 Julien Chaffraix <jchaffraix@webkit.org>
146 Enable style sharing for elements with a style attribute
147 https://bugs.webkit.org/show_bug.cgi?id=81523
149 Reviewed by Antti Koivisto.
151 Memory improvement change only.
153 Overall, this is a performance wash (some benchmarks may regress a bit due to the increase in time taken
154 by CSSStyleSelector::locateSharedStyle as we try more nodes, others increase their performance due to style sharing).
156 Instrumenting our style sharing, this should give us some nice memory shavings on some benchmarks:
157 - HTML5 isn't impacted as it doesn't use much inline style
158 - page cyclers' intl1 showed a 6% increase in style sharing.
160 * css/CSSStyleSelector.cpp:
161 (WebCore::CSSStyleSelector::canShareStyleWithElement):
162 This method now handles inline style like presentation attributes on the element.
164 (WebCore::CSSStyleSelector::collectMatchingRulesForList):
165 (WebCore::CSSStyleSelector::locateSharedStyle):
166 Don't bail out for an element with an inline style declaration.
168 (WebCore::CSSStyleSelector::stylesEqual):
169 Generalized attributeStylesEqual to share the logic between attribute and
170 inline style property set. This means that attribute checks are actually
171 doing a little extra more work but that didn't impact our benchmarks.
173 2012-03-22 Kevin Ollivier <kevino@theolliviers.com>
175 [wx] Unreviewed. WebDOM build fix after array type changes.
177 * bindings/scripts/CodeGeneratorCPP.pm:
180 2012-03-22 Pavel Feldman <pfeldman@chromium.org>
182 Web Inspector: text gutter decorations should move upon edits.
183 https://bugs.webkit.org/show_bug.cgi?id=81932
185 Reviewed by Vsevolod Vlasov.
187 Decorations set by the line number now shift as editing inserts / removes lines.
189 * inspector/front-end/TextViewer.js:
190 (WebInspector.TextViewer.prototype._syncLineHeight):
191 (WebInspector.TextEditorGutterPanel):
192 (WebInspector.TextEditorGutterPanel.prototype.textChanged):
193 (WebInspector.TextEditorGutterPanel.prototype.syncClientHeight):
194 (WebInspector.TextEditorGutterPanel.prototype.addDecoration):
195 (WebInspector.TextEditorGutterPanel.prototype.removeDecoration):
197 2012-03-21 Robert Hogan <robert@webkit.org>
199 CSS 2.1 failure: fixed-table-layout-006 fails
200 https://bugs.webkit.org/show_bug.cgi?id=78412
202 Reviewed by Julien Chaffraix.
204 Tests: css2.1/20110323/fixed-table-layout-006.htm
205 fast/css/fixed-table-layout-cell-padding.htm
207 In fixed tables, positive width specified on a column should include borders and padding.
208 See the thread at http://lists.w3.org/Archives/Public/www-style/2011Oct/0502.html. The discussion
209 there resulted in a whole new set of tests for section 17.5.2.1 in the CSS 2.1 spec. See
210 http://test.csswg.org/harness/test/CSS21_DEV/section/17.5.2.1/. This patch allows WebKit
211 to pass all of them, and all tests for the 17.5.2.1 section as a whole. I'll land them all separately.
213 * rendering/FixedTableLayout.cpp:
214 (WebCore::FixedTableLayout::calcWidthArray): Include border width and cell padding in the width of the column.
215 Note that borderAndPaddingLogicalWidth() returns the border width for separate and collapsed borders as appropriate.
217 2012-03-22 Simon Fraser <simon.fraser@apple.com>
219 Factor compositing layer updates after scroll into a new method
220 https://bugs.webkit.org/show_bug.cgi?id=81943
222 Reviewed by Dean Jackson.
224 Move some code that updates compositing layers after scrolling
225 into its own method, for cleanliness.
227 * rendering/RenderLayer.cpp:
228 (WebCore::RenderLayer::scrollTo):
229 (WebCore::RenderLayer::updateCompositingLayersAfterScroll):
231 * rendering/RenderLayer.h:
234 2012-03-22 Gavin Barraclough <barraclough@apple.com>
236 Add JSValue::isFunction
237 https://bugs.webkit.org/show_bug.cgi?id=81935
239 Reviewed by Geoff Garen.
241 This would be useful in the WebCore bindings code.
242 Also, remove asFunction, replace with jsCast<JSFunction*>.
244 * bindings/js/JSInjectedScriptHostCustom.cpp:
245 (WebCore::JSInjectedScriptHost::functionDetails):
246 * bindings/js/ScriptCallStackFactory.cpp:
247 (WebCore::createScriptCallStack):
249 2012-03-22 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
251 TiledBackingStore: Fix test regressions that appeared with r111560.
252 https://bugs.webkit.org/show_bug.cgi?id=81519
254 Reviewed by Kenneth Rohde Christiansen.
256 The visible rect wasn't intersected with the contents rect anymore which
257 could lead to an astronomical layer size to check for intersecting tiles.
259 Add a visibleContentsRect that doesn't do the conversion and use it
260 in visibleAreaIsCovered.
262 * platform/graphics/TiledBackingStore.cpp:
263 (WebCore::TiledBackingStore::visibleContentsRect):
265 (WebCore::TiledBackingStore::visibleRect):
266 (WebCore::TiledBackingStore::visibleAreaIsCovered):
267 * platform/graphics/TiledBackingStore.h:
270 2012-03-22 Joe Thomas <joethomas@motorola.com>
272 Make Length Calculation functions non-inline
273 https://bugs.webkit.org/show_bug.cgi?id=81733
275 Currently length calculation functions in LengthFunctions.h are inline. These functions are pretty big to be inline.
276 And these functions are expected to grow again when new length units will be introduced in bug 27160.
278 A decent rule of thumb is to not inline a function if it is more than 10 lines long. Also it's typically not cost effective to inline
279 functions with loops or switch statements. (Reference: http://google-styleguide.googlecode.com/svn/trunk/cppguide.xml#Inline_Functions).
281 Ran PerformanceTests/Parser/html5-full-render.html on Mac Snow-Leopard with and without the patch and did not see much performance difference.
283 Reviewed by Antti Koivisto.
286 * GNUmakefile.list.am:
289 * WebCore.vcproj/WebCore.vcproj:
290 * WebCore.xcodeproj/project.pbxproj:
291 * css/LengthFunctions.cpp: Added.
293 (WebCore::miminumValueForLength):
294 (WebCore::valueForLength):
295 (WebCore::floatValueForLength):
296 * css/LengthFunctions.h:
299 2012-03-22 Alexis Menard <alexis.menard@openbossa.org>
301 Increase code sharing between CSSParser and CSSPropertyLonghand.
302 https://bugs.webkit.org/show_bug.cgi?id=81587
304 Reviewed by Antti Koivisto.
306 Expose the longhands declaration for a given shorthand in CSSPropertyLonghand and
307 make CSSParser use them. It will make the declaration of longhands in one place only.
308 Remove the map of CSSPropertyLonghand and replace it by a regular switch/case.
309 The map doesn't bring much here and it's cleaner and faster to use the switch.
310 It also shows a little performance improvement in CSS/CSSPropertySetterGetter.html.
312 No new tests : no behavior change.
315 (WebCore::CSSParser::parseValue):
316 (WebCore::CSSParser::parseAnimationShorthand):
317 (WebCore::CSSParser::parseTransitionShorthand):
318 (WebCore::CSSParser::parseShorthand):
319 Modify the prototype of this function to directly use the CSSPropertyLonghand.
323 * css/CSSPropertyLonghand.cpp:
325 (WebCore::backgroundLonghand):
326 (WebCore::backgroundPositionLonghand):
327 (WebCore::backgroundRepeatLonghand):
328 (WebCore::borderLonghand):
329 (WebCore::borderBottomLonghand):
330 (WebCore::borderColorLonghand):
331 (WebCore::borderImageLonghand):
332 (WebCore::borderLeftLonghand):
333 (WebCore::borderRadiusLonghand):
334 (WebCore::borderRightLonghand):
335 (WebCore::borderSpacingLonghand):
336 (WebCore::borderStyleLonghand):
337 (WebCore::borderTopLonghand):
338 (WebCore::borderWidthLonghand):
339 (WebCore::listStyleLonghand):
340 (WebCore::fontLonghand):
341 (WebCore::marginLonghand):
342 (WebCore::outlineLonghand):
343 (WebCore::overflowLonghand):
344 (WebCore::paddingLonghand):
345 (WebCore::webkitAnimationLonghand):
346 (WebCore::webkitBorderAfterLonghand):
347 (WebCore::webkitBorderBeforeLonghand):
348 (WebCore::webkitBorderEndLonghand):
349 (WebCore::webkitBorderStartLonghand):
350 (WebCore::webkitColumnsLonghand):
351 (WebCore::webkitColumnRuleLonghand):
352 (WebCore::webkitFlexFlowLonghand):
353 (WebCore::webkitMarginCollapseLonghand):
354 (WebCore::webkitMarqueeLonghand):
355 (WebCore::webkitMaskLonghand):
356 (WebCore::webkitMaskPositionLonghand):
357 (WebCore::webkitMaskRepeatLonghand):
358 (WebCore::webkitTextEmphasisLonghand):
359 (WebCore::webkitTextStrokeLonghand):
360 (WebCore::webkitTransitionLonghand):
361 (WebCore::webkitTransformOriginLonghand):
362 (WebCore::webkitWrapLonghand):
363 (WebCore::longhandForProperty):
364 * css/CSSPropertyLonghand.h:
367 2012-03-22 Emil A Eklund <eae@chromium.org>
369 Unreviewed, touching file to force bots to pick up CSS_SHADERS flag change.
371 * css/CSSStyleSelector.h:
374 2012-03-22 Xingnan Wang <xingnan.wang@intel.com>
376 ReverbConvolver::latencyFrames() should return 0.
377 https://bugs.webkit.org/show_bug.cgi?id=81806
379 Reviewed by Chris Rogers.
381 * platform/audio/ReverbConvolver.cpp:
382 (WebCore::ReverbConvolver::latencyFrames):
384 2012-03-22 Tony Chang <tony@chromium.org>
386 refactor flexbox in preparation for flex-line-pack
387 https://bugs.webkit.org/show_bug.cgi?id=81843
389 Reviewed by Ojan Vafai.
391 Replace WrapReverseContext with a vector of LineContexts that contain
392 the same information, plus values needed for flex-align.
394 alignChildren has been moved to after all the lines have been
395 positioned. We want to align children after flex-line-pack has changed
396 the size of each line to avoid unnecessary layouts.
398 Take 2: Remove the assert. If there are no children, then there are no
399 flex lines. Instead, assert that child is not null.
401 No new tests, just refactoring.
403 * rendering/RenderFlexibleBox.cpp:
404 (WebCore::RenderFlexibleBox::LineContext::LineContext): New struct,
405 holds information needed for wrap-reverse and aligning children.
406 (RenderFlexibleBox::LineContext):
407 (WebCore::RenderFlexibleBox::layoutFlexItems): alignChildren after layout out all the lines rather than after each line.
408 (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): don't alignChildren
409 (WebCore::RenderFlexibleBox::alignChildren): align all flex items, not just a line at a time.
410 (WebCore::RenderFlexibleBox::flipForWrapReverse): Update to use LineContext
411 * rendering/RenderFlexibleBox.h:
413 2012-03-22 Allan Sandfeld Jensen <allan.jensen@nokia.com>
415 Event dispatching in XMLHttpRequestProgressEventThrottle should go through XMLHttpRequestProgressEventThrottle::dispatchEvent
416 https://bugs.webkit.org/show_bug.cgi?id=46743
418 Reviewed by Julien Chaffraix
419 Based on original patch by Anton D'Auria
421 In preparation for platform-specific queuing of XMLHttpRequest events,
422 this patch changes all calls to m_target->dispatchEvent to
423 XMLHttpRequestProgressEventThrottle::dispatchEvent.
424 Currently, we queue only one progress event on suspend() if we have
425 throttled progress events. We should be able to queue all XHR events
426 that can be generated after suspend(), if the platform network layer
427 continues to receive data.
428 XMLHttpRequest uses XMLHttpRequestProgressEventThrottle to dispatch only
429 download events, so this doesn't change behavior of upload events, which
430 aren't throttled or queued.
432 * xml/XMLHttpRequest.cpp:
433 (WebCore::XMLHttpRequest::callReadyStateChangeListener):
434 * xml/XMLHttpRequestProgressEventThrottle.cpp:
435 (WebCore::XMLHttpRequestProgressEventThrottle::dispatchReadyStateChangeEvent):
436 (WebCore::XMLHttpRequestProgressEventThrottle::dispatchEvent):
437 (WebCore::XMLHttpRequestProgressEventThrottle::flushProgressEvent):
438 (WebCore::XMLHttpRequestProgressEventThrottle::dispatchPausedEvent):
439 (WebCore::XMLHttpRequestProgressEventThrottle::fired):
440 * xml/XMLHttpRequestProgressEventThrottle.h:
441 (XMLHttpRequestProgressEventThrottle):
443 2012-03-22 Sudarsana Nagineni <sudarsana.nagineni@linux.intel.com>
445 [EFL] Map BackSpace key code to Unicode value
446 https://bugs.webkit.org/show_bug.cgi?id=81130
448 Reviewed by Gustavo Noronha Silva.
450 Test: fast/events/backspace-navigates-back.html
452 * platform/efl/EflKeyboardUtilities.cpp:
453 (WebCore::createKeyMap): Map BackSpace to Unicode value
455 2012-03-22 Abhishek Arya <inferno@chromium.org>
457 Incorrect beforeChild parent calculation in RenderRubyBase::moveChildren.
458 https://bugs.webkit.org/show_bug.cgi?id=80297
460 Reviewed by Julien Chaffraix.
462 beforeChild might share the same anonymous block parent with other previous
463 siblings. Before moving the children across ruby bases, we need to make sure
464 to split the tree across the beforeChild correctly.
466 Test: fast/ruby/ruby-text-before-child-split.html
468 * rendering/RenderRubyBase.cpp:
469 (WebCore::RenderRubyBase::moveChildren):
471 2012-03-22 Kristóf Kosztyó <kkristof@inf.u-szeged.hu>
473 [Qt] Fix Qt minimal build after r111692
475 Reviewed by Csaba Osztrogonác.
477 * bindings/js/JSScriptProfileNodeCustom.cpp:
479 2012-03-22 Adrienne Walker <enne@google.com>
481 [chromium] Fix scrollbar layers holding onto invalid textures after lost context
482 https://bugs.webkit.org/show_bug.cgi?id=81841
484 Reviewed by James Robinson.
486 Unit test: CCLayerTreeHostImplTest.scrollbarLayerLostContext
488 * platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
489 (WebCore::CCScrollbarLayerImpl::willDraw):
491 2012-03-22 Philippe Normand <pnormand@igalia.com>
493 [GTK] ASSERT bug in WebAudio (AudioFileReader)
494 https://bugs.webkit.org/show_bug.cgi?id=81777
496 Reviewed by Martin Robinson.
498 * platform/audio/gstreamer/AudioFileReaderGStreamer.cpp:
499 (WebCore::AudioFileReader::decodeAudioForBusCreation): Don't steal
500 the GstBus floating reference.
501 (WebCore::AudioFileReader::createBus): Ditto.
503 2012-03-22 Ilya Tikhonovsky <loislo@chromium.org>
505 Unreviewed: Web Inspector: fix syntax error in text.
507 * English.lproj/localizedStrings.js:
508 * inspector/front-end/HeapSnapshotProxy.js:
509 (WebInspector.HeapSnapshotWorker.prototype._messageReceived):
511 2012-03-22 Sheriff Bot <webkit.review.bot@gmail.com>
513 Unreviewed, rolling out r111688.
514 http://trac.webkit.org/changeset/111688
515 https://bugs.webkit.org/show_bug.cgi?id=81912
517 "Heap profiler test fails" (Requested by yurys on #webkit).
519 * inspector/front-end/HeapSnapshot.js:
520 (WebInspector.HeapSnapshot.prototype._buildRetainers):
522 2012-03-22 Dana Jansens <danakj@chromium.org>
524 [chromium] Early out in a new prepareToDraw() step if checkerboarding an accelerated animation in order to skip the frame
525 https://bugs.webkit.org/show_bug.cgi?id=81437
527 Reviewed by Adrienne Walker.
529 Split CCLayerTreeHostImpl::drawLayers() into two phases:
530 prepareToDraw() and drawLayers().
532 When calculating a RenderPass, and we checkerboard a quad on a
533 layer, bubble this info back up to CCLayerTreeHostImpl. If the
534 layer is transforming in an animation, then abort the prepareToDraw()
535 phase and cause it to return false back to the thread proxy.
537 Unit test: CCLayerTreeHostImplTest.prepareToDrawFailsWhenAnimationUsesCheckerboard
539 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
540 (WebCore::CCLayerImpl::appendQuads):
541 * platform/graphics/chromium/cc/CCLayerImpl.h:
543 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
544 (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
545 (WebCore::CCLayerTreeHostImpl::prepareToDraw):
547 (WebCore::CCLayerTreeHostImpl::drawLayers):
548 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
549 (CCLayerTreeHostImpl):
551 * platform/graphics/chromium/cc/CCQuadCuller.cpp:
552 (WebCore::CCQuadCuller::append):
553 * platform/graphics/chromium/cc/CCQuadCuller.h:
555 * platform/graphics/chromium/cc/CCRenderPass.cpp:
556 (WebCore::CCRenderPass::appendQuadsForLayer):
557 * platform/graphics/chromium/cc/CCRenderPass.h:
559 * platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
560 (WebCore::CCScrollbarLayerImpl::appendQuads):
561 * platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
562 (CCScrollbarLayerImpl):
563 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
564 (WebCore::CCSingleThreadProxy::doComposite):
565 * platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp:
566 (WebCore::CCSolidColorLayerImpl::appendQuads):
567 * platform/graphics/chromium/cc/CCSolidColorLayerImpl.h:
568 (CCSolidColorLayerImpl):
569 * platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
570 (WebCore::CCTextureLayerImpl::appendQuads):
571 * platform/graphics/chromium/cc/CCTextureLayerImpl.h:
572 (CCTextureLayerImpl):
573 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
574 (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
575 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
576 (WebCore::CCTiledLayerImpl::appendQuads):
577 * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
579 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
580 (WebCore::CCVideoLayerImpl::appendQuads):
581 * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
584 2012-03-22 Levi Weintraub <leviw@chromium.org>
586 Correct LayoutUnit usage in Accessibility code
587 https://bugs.webkit.org/show_bug.cgi?id=81789
589 Reviewed by Eric Seidel.
591 Reverting Accessibility hit testing code back to integers. Accessibility hit tests originate from
592 the embedder and don't accumulate offsets, so we get nothing from using LayoutUnits, and needlessly
593 expose them to the embedder.
595 No new tests. No change in behavior.
597 * accessibility/AccessibilityListBox.cpp:
598 (WebCore::AccessibilityListBox::elementAccessibilityHitTest): See above.
599 * accessibility/AccessibilityListBox.h:
600 (AccessibilityListBox):
601 * accessibility/AccessibilityObject.cpp:
602 (WebCore::AccessibilityObject::clickPoint): This value is only ever used to display a context menu,
603 which is always done with integer coordinates.
604 (WebCore::AccessibilityObject::boundingBoxForQuads): This is a bounding box built from floats. We
605 don't pixel snap floats, so we return an integer bounding box.
606 (WebCore::AccessibilityObject::elementAccessibilityHitTest): See above.
607 (WebCore::AccessibilityObject::scrollToMakeVisible): Pixel snapping the bounding box and simplifying
608 up the code to position it at (0,0).
609 * accessibility/AccessibilityObject.h:
610 (WebCore::AccessibilityObject::accessibilityHitTest): See above.
611 (AccessibilityObject):
612 (WebCore::AccessibilityObject::pixelSnappedBoundingBoxRect): Convenience method for embedder callers.
613 * accessibility/AccessibilityRenderObject.cpp:
614 (WebCore::AccessibilityRenderObject::visiblePositionForPoint): The point passed in here is comes from
615 screen coordinates and originates in embedder code. Reverting it to take an integer.
616 (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest): See above.
617 (WebCore::AccessibilityRenderObject::accessibilityHitTest): See above.
618 * accessibility/AccessibilityRenderObject.h:
619 (AccessibilityRenderObject):
620 * accessibility/AccessibilityScrollView.cpp:
621 (WebCore::AccessibilityScrollView::accessibilityHitTest): See above.
622 * accessibility/AccessibilityScrollView.h:
623 (AccessibilityScrollView):
624 * accessibility/AccessibilitySlider.cpp:
625 (WebCore::AccessibilitySlider::elementAccessibilityHitTest): See above.
626 * accessibility/AccessibilitySlider.h:
627 (AccessibilitySlider):
629 2012-03-21 Ilya Tikhonovsky <loislo@chromium.org>
631 Web Inspector: HeapProfiler: Heap snapshot worker has to report the errors to the front-end
632 https://bugs.webkit.org/show_bug.cgi?id=81804
634 Sometimes the worker process of HeapSnapshot does some wrong thing and throw an Exception.
635 At this momemnt we have no way to see the error in the front-end.
637 Reviewed by Yury Semikhatsky.
639 * English.lproj/localizedStrings.js:
640 * inspector/front-end/HeapSnapshotProxy.js: check the exception field and dump it into front-end's console.
641 (WebInspector.HeapSnapshotWorker.prototype._messageReceived):
642 * inspector/front-end/HeapSnapshotWorkerDispatcher.js: catch the exception and transfer it's text to requester's side.
643 (WebInspector.HeapSnapshotWorkerDispatcher.prototype.dispatchMessage):
645 2012-03-22 Carlos Garcia Campos <cgarcia@bb-webkit-rel-64.local.igalia.com>
647 [GTK] Use the angle-bracket form to include wtf headers
648 https://bugs.webkit.org/show_bug.cgi?id=81884
650 Reviewed by Eric Seidel.
652 Use #include <wtf/foo> instead of #include "foo".
654 * platform/graphics/freetype/FontPlatformData.h:
655 * platform/graphics/gstreamer/MediaPlayerPrivateGStreamer.cpp:
656 * platform/gtk/DataObjectGtk.h:
657 * platform/network/ResourceHandleInternal.h:
658 * platform/network/soup/SocketStreamHandleSoup.cpp:
660 2012-03-22 Alexander Pavlov <apavlov@chromium.org>
662 Web Inspector: Case of the elements of the xml document should be shown as it is in the console
663 https://bugs.webkit.org/show_bug.cgi?id=81902
665 When registering a detached root, DOMAgent always presumes it is a node,
666 while it can also be a document.
668 Reviewed by Vsevolod Vlasov.
670 Test: inspector/console/console-xml-document.html
672 * inspector/front-end/ConsoleMessage.js:
673 (WebInspector.ConsoleMessageImpl.prototype._formatParameterAsNode):
674 * inspector/front-end/DOMAgent.js:
675 (WebInspector.DOMAgent.prototype._setDetachedRoot):
677 2012-03-22 Vsevolod Vlasov <vsevik@chromium.org>
679 Web Inspector: Introduce ScriptBound/ScriptUnbound events in ScriptMapping.
680 https://bugs.webkit.org/show_bug.cgi?id=81904
682 Reviewed by Pavel Feldman.
684 This is another step on the way to cleaner BreakpointManager logic.
685 Here we extract ScriptBound/ScriptUnbound events from UISourceCodeListChanged event.
686 This allows us to handle script-uiSourceCode binding separately from
687 uiSourceCode creation/deletion and to handle unbinding that was not
688 possible at all before.
690 * inspector/front-end/CompilerScriptMapping.js:
691 (WebInspector.CompilerScriptMapping.prototype._uiSourceCodesForSourceMap):
692 (WebInspector.CompilerScriptMapping.prototype.addScript.get this):
693 (WebInspector.CompilerScriptMapping.prototype.addScript):
694 (WebInspector.CompilerScriptMapping.prototype.reset):
695 * inspector/front-end/ResourceScriptMapping.js:
696 (WebInspector.ResourceScriptMapping.prototype._uiSourceCodeChanged):
697 * inspector/front-end/ScriptMapping.js:
698 (WebInspector.MainScriptMapping):
699 (WebInspector.MainScriptMapping.prototype._updateLiveLocation):
700 (WebInspector.MainScriptMapping.prototype._handleUISourceCodeListChanged):
701 (WebInspector.MainScriptMapping.prototype._handleScriptBound):
702 (WebInspector.MainScriptMapping.prototype._handleScriptUnbound):
703 * inspector/front-end/SnippetsModel.js:
704 (WebInspector.SnippetsScriptMapping.prototype.addScript.get this):
705 (WebInspector.SnippetsScriptMapping.prototype._snippetAdded):
706 (WebInspector.SnippetsScriptMapping.prototype._createUISourceCodeForScript):
707 (WebInspector.SnippetsScriptMapping.prototype._snippetRemoved.get this):
708 (WebInspector.SnippetsScriptMapping.prototype._snippetRemoved):
709 (WebInspector.SnippetsScriptMapping.prototype.reset):
711 2012-03-22 Vineet Chaudhary <rgf748@motorola.com>
713 https://bugs.webkit.org/show_bug.cgi?id=81893
714 Remove custom bindings form ScriptProfileNode.idl of attribute type Array.
716 Reviewed by Kentaro Hara.
718 Replace [CustomGetter] Array with sequence<ScriptProfileNode>.
719 To remove the custom bindings code.
721 Test: No new tests. LayoutTests/fast/profiler/* test are enough for this.
723 * bindings/js/JSScriptProfileNodeCustom.cpp: Removed custom function.
724 (WebCore::JSScriptProfileNode::callUID):
725 * bindings/v8/custom/V8ScriptProfileNodeCustom.cpp: Removed custom function.
727 * inspector/ScriptProfileNode.idl: Replaced Array with sequence<ScriptProfileNode>.
729 2012-03-22 Andrey Kosyakov <caseq@chromium.org>
731 Web Inspector: only update timeline overview categories strips when these are visible
732 https://bugs.webkit.org/show_bug.cgi?id=81903
734 Reviewed by Pavel Feldman.
736 - factor out category strips update into a separate method;
737 - only invoke it when "Timeline" overview mode is selected.
739 * inspector/front-end/TimelineOverviewPane.js:
740 (WebInspector.TimelineOverviewPane.prototype._showTimelines):
741 (WebInspector.TimelineOverviewPane.prototype.update):
742 (WebInspector.TimelineOverviewPane.prototype._updateCategoryStrips):
744 2012-03-22 Levi Weintraub <leviw@chromium.org>
746 Update LayoutUnit usage in FrameSelection
747 https://bugs.webkit.org/show_bug.cgi?id=81754
749 Reviewed by Eric Seidel.
751 FrameSelection stores its caret and repaint bounds in absolute coordinates. Absolute coordinates
752 we treat as pixel values, so this patch changes these values to integers. Sub-pixel precision
753 will still be used when these coordinates are passed down and used locally.
755 No new tests. No change in behavior.
757 * editing/FrameSelection.cpp:
758 (WebCore::absoluteCaretY): Uses absolute coordinates, which are ints.
759 (WebCore::FrameSelection::modify): Uses absolute coordinates to handle vertical selection
760 modification. Sub-pixel precision will be used when these values are converted to local ones.
761 (WebCore::CaretBase::absoluteBoundsForLocalRect): Absolute coordinates -> ints.
762 (WebCore::FrameSelection::absoluteCaretBounds): Ditto.
763 (WebCore::CaretBase::caretRepaintRect): The caret repaint rect is stored in absolute coordinates.
764 Reverting the values to ints.
765 (WebCore::FrameSelection::recomputeCaretRect): Ditto.
766 * editing/FrameSelection.h:
768 * editing/mac/FrameSelectionMac.mm:
769 (WebCore::FrameSelection::notifyAccessibilityForSelectionChange): Switching to store absolute
770 coordinates as integers.
772 2012-03-22 Alexei Filippov <alexeif@chromium.org>
774 Web Inspector: Speed up the build retainers phase.
775 https://bugs.webkit.org/show_bug.cgi?id=81763
777 Replacing the edge iterator with a raw loop makes it
778 faster by more than 10 times.
780 Reviewed by Yury Semikhatsky.
782 * inspector/front-end/HeapSnapshot.js:
783 (WebInspector.HeapSnapshot.prototype._buildRetainers):
785 2012-03-22 No'am Rosenthal <noam.rosenthal@nokia.com>
787 [Qt][WK2] The background appears to have one extra pixel from the contents
788 https://bugs.webkit.org/show_bug.cgi?id=81830
790 Reviewed by Kenneth Rohde Christiansen.
792 TextureMapperGL applied a 1-offset that was covering for another bug,
793 which was already fixed.
795 No new tests, this would be tested once we test GL rendering results.
797 * platform/graphics/texmap/TextureMapperGL.cpp:
798 (WebCore::TextureMapperGLData::SharedGLData::scissorClip):
800 2012-03-22 W. James MacLean <wjmaclean@chromium.org>
802 Rename touchpad fling curve, add curve parameters to constructor.
803 https://bugs.webkit.org/show_bug.cgi?id=81820
805 Reviewed by Adrienne Walker.
807 Covered by existing unit tests.
809 * GNUmakefile.list.am:
811 * platform/ScrollAnimatorNone.cpp:
812 (WebCore::ScrollAnimatorNone::fireUpAnAnimation):
813 * platform/TouchpadFlingPlatformGestureCurve.cpp: Renamed from Source/WebCore/platform/TouchFlingPlatformGestureCurve.cpp.
815 (WebCore::TouchpadFlingPlatformGestureCurve::create):
816 (WebCore::TouchpadFlingPlatformGestureCurve::TouchpadFlingPlatformGestureCurve):
817 (WebCore::TouchpadFlingPlatformGestureCurve::~TouchpadFlingPlatformGestureCurve):
818 (WebCore::TouchpadFlingPlatformGestureCurve::apply):
819 * platform/TouchpadFlingPlatformGestureCurve.h: Renamed from Source/WebCore/platform/TouchFlingPlatformGestureCurve.h.
821 (TouchpadFlingPlatformGestureCurve):
823 2012-03-22 Pavel Feldman <pfeldman@chromium.org>
825 Web Inspector: make CSS and JavaScript files editable by default.
826 https://bugs.webkit.org/show_bug.cgi?id=81787
828 Reviewed by Vsevolod Vlasov.
830 This change removes cancelEditing and setReadOnly capabilities from source frame.
831 It removes dblclick handler as well since one does not need to enter editing mode.
832 It also establishes proper content dispatching so that views are updated with the
833 resource content. All these are inter-dependent, need to be landed simultaneously.
834 Drive-by follow up to the r111675 where range is modified prior to the exiting
837 * inspector/front-end/JavaScriptSourceFrame.js:
838 (WebInspector.JavaScriptSourceFrame):
839 (WebInspector.JavaScriptSourceFrame.prototype.requestContent):
840 (WebInspector.JavaScriptSourceFrame.prototype.afterTextChanged):
841 (WebInspector.JavaScriptSourceFrame.prototype.beforeTextChanged):
842 (WebInspector.JavaScriptSourceFrame.prototype.didEditContent):
843 (WebInspector.JavaScriptSourceFrame.prototype._lineNumberAfterEditing):
844 * inspector/front-end/ResourceView.js:
845 (WebInspector.ResourceSourceFrame):
846 (WebInspector.ResourceSourceFrame.prototype.suggestedFileName):
847 (WebInspector.ResourceSourceFrame.prototype._contentChanged):
848 (WebInspector.EditableResourceSourceFrame.prototype.canEditSource):
849 (WebInspector.EditableResourceSourceFrame.prototype.editContent.callbackWrapper):
850 (WebInspector.EditableResourceSourceFrame.prototype.editContent):
851 (WebInspector.EditableResourceSourceFrame.prototype._contentChanged):
852 * inspector/front-end/ResourcesPanel.js:
853 (WebInspector.ResourcesPanel.prototype._innerShowView):
854 (WebInspector.FrameResourceTreeElement.prototype._appendRevision):
855 * inspector/front-end/ScriptsPanel.js:
856 (WebInspector.ScriptsPanel.prototype.setScriptSourceIsDirty):
857 * inspector/front-end/Settings.js:
858 (WebInspector.ExperimentsSettings):
859 * inspector/front-end/SourceFrame.js:
860 (WebInspector.SourceFrame):
861 (WebInspector.SourceFrame.prototype.wasShown):
862 (WebInspector.SourceFrame.prototype.willHide):
863 (WebInspector.SourceFrame.prototype.beforeTextChanged):
864 (WebInspector.SourceFrame.prototype.setContent):
865 (WebInspector.SourceFrame.prototype.commitEditing):
866 (WebInspector.SourceFrame.prototype.didEditContent):
867 (WebInspector.SourceFrame.prototype.editContent):
868 * inspector/front-end/TextPrompt.js:
869 (WebInspector.TextPrompt.prototype._startEditing):
870 (WebInspector.TextPrompt.prototype._stopEditing):
871 * inspector/front-end/TextViewer.js:
872 (WebInspector.TextViewer):
873 (WebInspector.TextViewer.prototype._registerShortcuts):
874 (WebInspector.TextEditorMainPanel.prototype.handleEnterKey):
876 2012-03-22 Allan Sandfeld Jensen <allan.jensen@nokia.com>
878 [Qt] Enable FAST_MOBILE_SCROLLING when scrolling is delegated.
879 https://bugs.webkit.org/show_bug.cgi?id=81889
881 Reviewed by Kenneth Rohde Christiansen.
883 On the Qt platform only enable the fast mobile scroll feature when scrolling is delegated.
885 * rendering/RenderObject.cpp:
886 (WebCore::RenderObject::styleWillChange):
888 2012-03-22 Pavel Feldman <pfeldman@chromium.org>
890 Web Inspector: dispatch styleSheetChanged event synchronously.
891 https://bugs.webkit.org/show_bug.cgi?id=81892
893 Reviewed by Vsevolod Vlasov.
895 Today, backend generates stylesheet change event synchronously from within set* command.
896 But CSSStyleModel defers its dispatching until the stylesheet content is available. This
897 prevents us from ignoring update events from within commands that initiated those updates.
899 This change makes stylesheet change event dispatch synchronously and delegates stylesheet
900 content fetching to the event client.
902 * inspector/front-end/CSSStyleModel.js:
903 (WebInspector.CSSStyleModel.prototype._fireStyleSheetChanged):
904 (WebInspector.CSSStyleDeclaration.prototype.insertPropertyAt):
905 (WebInspector.CSSStyleModelResourceBinding.prototype.setContent):
906 (WebInspector.CSSStyleModelResourceBinding.prototype._innerSetContent.callbackWrapper):
907 (WebInspector.CSSStyleModelResourceBinding.prototype._innerSetContent):
908 (WebInspector.CSSStyleModelResourceBinding.prototype._styleSheetChanged.callback):
909 (WebInspector.CSSStyleModelResourceBinding.prototype._styleSheetChanged):
910 (WebInspector.CSSStyleModelResourceBinding.prototype._innerStyleSheetChanged):
912 2012-03-21 Ian Vollick <vollick@chromium.org>
914 [chromium] timing functions are getting incorrectly applied for accelerated css transitions
915 https://bugs.webkit.org/show_bug.cgi?id=81692
917 Reviewed by Adrienne Walker.
919 Tested in CCLayerTreeHostTestAddAnimationWithTimingFunction
921 * platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
923 2012-03-22 Pavel Feldman <pfeldman@chromium.org>
925 Web Inspector: allow on-hover popover while in edit mode.
926 https://bugs.webkit.org/show_bug.cgi?id=81898
928 Reviewed by Vsevolod Vlasov.
930 This change allows popover while in-edit mode, hides it upon Esc. It also introduces anchorOverride
931 concept in ObjectPopoverHelper that allows dynamically switching the anchor (say if we want to highlight anchor itself).
933 * inspector/front-end/DetailedHeapshotView.js:
934 * inspector/front-end/ElementsPanel.js:
935 * inspector/front-end/JavaScriptSourceFrame.js:
936 (WebInspector.JavaScriptSourceFrame.prototype._resolveObjectForPopover.showObjectPopover):
937 (WebInspector.JavaScriptSourceFrame.prototype._resolveObjectForPopover):
938 (WebInspector.JavaScriptSourceFrame.prototype._onKeyDown):
939 * inspector/front-end/NetworkPanel.js:
940 * inspector/front-end/ObjectPopoverHelper.js:
941 (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover.showObjectPopover.):
942 (WebInspector.ObjectPopoverHelper.prototype._showObjectPopover):
943 * inspector/front-end/Popover.js:
944 (WebInspector.PopoverHelper.prototype.isPopoverVisible):
945 * inspector/front-end/TimelinePanel.js:
947 2012-03-22 Pavel Feldman <pfeldman@chromium.org>
949 Web Inspector: breakpoints should shift when line break is inserted in the middle of the line.
950 https://bugs.webkit.org/show_bug.cgi?id=81896
952 Reviewed by Vsevolod Vlasov.
954 There is a bug that collapses selection prior to exiting change mode, we should never
955 collapse edit area prior committing.
957 * inspector/front-end/TextEditorModel.js:
958 (WebInspector.TextEditorModel.endsWithBracketRegex.):
959 * inspector/front-end/TextViewer.js:
960 (WebInspector.TextViewer):
961 (WebInspector.TextEditorMainPanel.prototype.highlightLine):
962 (WebInspector.TextEditorMainPanel.prototype.handleUndoRedo.callback):
963 (WebInspector.TextEditorMainPanel.prototype.handleUndoRedo):
965 2012-03-22 Zoltan Herczeg <zherczeg@webkit.org>
967 Merge SVGImageBufferTools to SVGRenderingContext
968 https://bugs.webkit.org/show_bug.cgi?id=81890
970 Reviewed by Nikolas Zimmermann.
972 Copy the code to SVGRenderingContext and delete
973 SVGImageBufferTools[.cpp.h]. Update build systems,
974 no functionality change. This is the first step
975 towards making SVGImageBufferTools stageful.
977 Existing tests cover this issue.
980 * GNUmakefile.list.am:
983 * WebCore.xcodeproj/project.pbxproj:
984 * platform/graphics/filters/FETile.cpp:
985 (WebCore::FETile::platformApplySoftware):
986 * rendering/svg/RenderSVGAllInOne.cpp:
987 * rendering/svg/RenderSVGInlineText.cpp:
988 (WebCore::RenderSVGInlineText::computeNewScaledFontForStyle):
989 * rendering/svg/RenderSVGResourceClipper.cpp:
990 (WebCore::RenderSVGResourceClipper::applyClippingToContext):
991 (WebCore::RenderSVGResourceClipper::drawContentIntoMaskImage):
992 * rendering/svg/RenderSVGResourceFilter.cpp:
993 (WebCore::RenderSVGResourceFilter::applyResource):
994 * rendering/svg/RenderSVGResourceGradient.cpp:
995 (WebCore::createMaskAndSwapContextForTextGradient):
996 (WebCore::clipToTextMask):
997 * rendering/svg/RenderSVGResourceMasker.cpp:
998 (WebCore::RenderSVGResourceMasker::applyResource):
999 (WebCore::RenderSVGResourceMasker::drawContentIntoMaskImage):
1000 * rendering/svg/RenderSVGResourcePattern.cpp:
1001 (WebCore::RenderSVGResourcePattern::applyResource):
1002 (WebCore::RenderSVGResourcePattern::createTileImage):
1003 * rendering/svg/SVGImageBufferTools.cpp: Removed.
1004 * rendering/svg/SVGImageBufferTools.h: Removed.
1005 * rendering/svg/SVGInlineTextBox.cpp:
1006 * rendering/svg/SVGRenderingContext.cpp:
1007 (WebCore::currentContentTransformation):
1009 (WebCore::SVGRenderingContext::calculateTransformationToOutermostSVGCoordinateSystem):
1010 (WebCore::SVGRenderingContext::createImageBuffer):
1011 (WebCore::SVGRenderingContext::createImageBufferForPattern):
1012 (WebCore::SVGRenderingContext::renderSubtreeToImageBuffer):
1013 (WebCore::SVGRenderingContext::clipToImageBuffer):
1014 (WebCore::SVGRenderingContext::clampedAbsoluteTargetRect):
1015 (WebCore::SVGRenderingContext::clampedAbsoluteSize):
1016 (WebCore::SVGRenderingContext::clear2DRotation):
1017 * rendering/svg/SVGRenderingContext.h:
1018 (SVGRenderingContext):
1019 (WebCore::SVGRenderingContext::calculateImageBufferRect):
1020 * svg/graphics/filters/SVGFEImage.cpp:
1021 (WebCore::FEImage::platformApplySoftware):
1023 2012-03-22 Hyowon Kim <hw1008.kim@samsung.com>
1025 [EFL] Add PageClientEfl to WebCoreSupport.
1026 https://bugs.webkit.org/show_bug.cgi?id=80748
1028 Reviewed by Noam Rosenthal.
1030 * platform/Widget.h: Use PageClientEfl as type for PlatformPageClient.
1032 * platform/graphics/efl/GraphicsContext3DPrivate.cpp:
1033 (WebCore::GraphicsContext3DPrivate::createSurface): Change the argument type.
1034 * plugins/efl/PluginViewEfl.cpp:
1035 (WebCore::PluginView::platformGetValue): Use PageClientEfl.
1037 2012-03-22 Kaustubh Atrawalkar <kaustubh@motorola.com>
1039 blur() on shadow host should work when a shadow host contains a focused element in its shadow DOM subtrees
1040 https://bugs.webkit.org/show_bug.cgi?id=81102
1042 Reviewed by Hajime Morita.
1044 This implementation will support blur for a focused element when its shadowHost's blur() is called.
1045 To achieve this Element::blur() function is modified to blur the focused node in it's treeScope.
1047 Test: fast/dom/shadow/shadow-root-blur.html
1050 (WebCore::Element::blur): Modified to blur current treeScope's focused node.
1052 (WebCore::ShadowRoot::activeElement): Rework for code sharing.
1053 * dom/TreeScope.cpp:
1054 (WebCore::TreeScope::focusedNode): Added new function to share code for getting focused node.
1056 (TreeScope): New function declartion.
1057 * html/HTMLDocument.cpp:
1058 (WebCore::HTMLDocument::activeElement): Rework for code sharing.
1060 2012-03-22 Vsevolod Vlasov <vsevik@chromium.org>
1062 Web Inspector: RawSourceCode does not need uiSourceCode lists because it never has more than one.
1063 https://bugs.webkit.org/show_bug.cgi?id=81894
1065 RawSourceCode never has more than one uiSourceCode, uiSourceCodeList
1066 are just remains of older implementation. This patch switches RawSourceCode
1067 and SourceMappings from uiSourceCodeList to uiSourceCode.
1069 Reviewed by Pavel Feldman.
1071 * inspector/front-end/RawSourceCode.js:
1072 (WebInspector.RawSourceCode.prototype.uiSourceCode):
1073 (WebInspector.RawSourceCode.prototype._saveSourceMapping):
1074 (WebInspector.RawSourceCode.SourceMapping.prototype.uiLocationToRawLocation):
1075 (WebInspector.RawSourceCode.SourceMapping.prototype.uiSourceCode):
1076 (WebInspector.RawSourceCode.PlainSourceMapping):
1077 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.rawLocationToUILocation):
1078 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiLocationToRawLocation):
1079 (WebInspector.RawSourceCode.PlainSourceMapping.prototype.uiSourceCode):
1080 (WebInspector.RawSourceCode.FormattedSourceMapping):
1081 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
1082 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiLocationToRawLocation):
1083 (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.uiSourceCode):
1084 * inspector/front-end/ResourceScriptMapping.js:
1085 (WebInspector.ResourceScriptMapping.prototype.uiSourceCodeList):
1086 (WebInspector.ResourceScriptMapping.prototype.addScript):
1087 (WebInspector.ResourceScriptMapping.prototype._handleUISourceCodeChanged):
1088 (WebInspector.ResourceScriptMapping.prototype._uiSourceCodeChanged):
1089 (WebInspector.ResourceScriptMapping.prototype.reset):
1091 2012-03-22 Mario Sanchez Prada <msanchez@igalia.com>
1093 [GTK] Fix the only remaining coding style issue in GTK accessibility code
1094 https://bugs.webkit.org/show_bug.cgi?id=81885
1096 Reviewed by Xan Lopez.
1098 Add needed extra line and remove an unneeded one.
1100 * accessibility/gtk/AccessibilityObjectAtk.cpp:
1102 2012-03-22 Kent Tamura <tkent@chromium.org>
1104 Expand RenderTextControlSingleLine::controlClipRect() to contain contentRect().
1105 https://bugs.webkit.org/show_bug.cgi?id=81866
1107 Reviewed by Hajime Morita.
1109 We need to expand the controlClipRect because the existing shadow
1110 tree of a text field can be wrapped by another shadow tree. e.g.
1112 A current situation:
1117 ┌────────────┐<input>'s border box
1123 Wrapped by another ShadowRoot:
1127 ┣ <shadow> represents the existing shadow tree
1128 ┃ ┗ container element
1129 ┗ D: an additional decoration element
1130 ┌────────────┐<input>'s border box
1132 ││container box │ D ││
1135 In this case, if we clip child renderers by container box, D is not
1136 drawn. We should clip by the content box of the <input>.
1138 A search field has an exceptional behavior. It can have the container
1139 box of which height is taller than the content box height. The
1140 controlClipRect should contain both of the container box and the content
1141 box in this case. In other cases, the container box is equivalent to the
1142 content box. So the code always unites them.
1144 No new tests. This won't make any behavior change for now.
1146 * rendering/RenderTextControlSingleLine.cpp:
1147 (WebCore::RenderTextControlSingleLine::controlClipRect):
1149 2012-03-22 Yoshifumi Inoue <yosin@chromium.org>
1151 [Forms] The option element should not be form associated element.
1152 https://bugs.webkit.org/show_bug.cgi?id=79764
1154 Reviewed by Kent Tamura.
1156 This patch changes base class of HTMLOptionELement to HTMLElement
1157 from HTMLFormControlElement for saving memory space and iteration
1158 time of extra "option" elements in HTMLFormElement::m_formAssociatedElements
1159 and matching the HTML5 specification for ease of maintenance.
1161 This patch changes behavior of handling of CSS pseudo classes "invalid"
1162 and "valid". The "option" elements no longer use these CSS pseudo classes
1163 as HTML5 specification. This bug was filed in https://bugs.webkit.org/show_bug.cgi?id=80088
1165 Changes of TextIterator is lead by usage of isFormControlElement. This
1166 changes will be replaced with more meaningful predicate as part of
1167 https://bugs.webkit.org/show_bug.cgi?id=80381
1169 No new tests but updated select-live-pseudo-selectors.html test.
1171 * css/CSSStyleSelector.cpp:
1172 (WebCore::CSSStyleSelector::canShareStyleWithElement): Added checking of the "option" element and returns false as HTMLFormControlElement.
1173 * css/SelectorChecker.cpp:
1174 (WebCore::SelectorChecker::checkOneSelector): Removed isFormControlElement for PseudoDisabled and PseudoChecked.
1175 * html/HTMLKeygenElement.cpp:
1176 (WebCore::HTMLKeygenElement::HTMLKeygenElement): Removed form parameter of call site of HTMLOptionElement::create.
1177 * html/HTMLOptionElement.cpp:
1178 (WebCore::HTMLOptionElement::HTMLOptionElement): Removed form parameter which no longer needed. Changed base class in initialization list. Added m_disabled initialization.
1179 (WebCore::HTMLOptionElement::create): Removed form parameter which no longer needed.
1180 (WebCore::HTMLOptionElement::attach): Changeid base class.
1181 (WebCore::HTMLOptionElement::detach): Changed base class.
1182 (WebCore::HTMLOptionElement::parseAttribute): Changed base class. Added "disabled" attribute handling.
1183 (WebCore::HTMLOptionElement::childrenChanged): Changed base class.
1184 (WebCore::HTMLOptionElement::insertedIntoTree): Changed base class.
1185 * html/HTMLOptionElement.h:
1186 (HTMLOptionElement): Added new member variable m_disabled which was in HTMLFormControlElement.
1187 (WebCore::HTMLOptionElement::ownElementDisabled): Changed for using m_disabled.
1188 * html/HTMLTagNames.in: Removed constructorNeedsFormElement for the "option" element, which was used for passing form parameter to create function.
1190 2012-03-21 Pavel Podivilov <podivilov@chromium.org>
1192 Web Inspector: rename ClosureCompilerSourceMapping to SourceMapParser and move it to CompilerScriptMapping.js.
1193 https://bugs.webkit.org/show_bug.cgi?id=81780
1195 Reviewed by Pavel Feldman.
1198 * WebCore.vcproj/WebCore.vcproj:
1199 * inspector/compile-front-end.py:
1200 * inspector/front-end/CompilerScriptMapping.js:
1201 (WebInspector.CompilerScriptMapping.prototype.loadSourceMapForScript):
1202 (WebInspector.SourceMapParserPayload):
1203 (WebInspector.SourceMapParser):
1204 (WebInspector.SourceMapParser.prototype.load):
1205 (WebInspector.SourceMapParser.prototype.compiledLocationToSourceLocation):
1206 (WebInspector.SourceMapParser.prototype.sourceLocationToCompiledLocation):
1207 (WebInspector.SourceMapParser.prototype.sources):
1208 (WebInspector.SourceMapParser.prototype.loadSourceCode):
1209 (WebInspector.SourceMapParser.prototype._findMapping):
1210 (WebInspector.SourceMapParser.prototype._parseMappingPayload):
1211 (WebInspector.SourceMapParser.prototype._parseSections):
1212 (WebInspector.SourceMapParser.prototype._parseMap):
1213 (WebInspector.SourceMapParser.prototype._isSeparator):
1214 (WebInspector.SourceMapParser.prototype._decodeVLQ):
1215 (WebInspector.SourceMapParser.prototype._canonicalizeURL):
1216 (WebInspector.SourceMapParser.StringCharIterator):
1217 (WebInspector.SourceMapParser.StringCharIterator.prototype.next):
1218 (WebInspector.SourceMapParser.StringCharIterator.prototype.peek):
1219 (WebInspector.SourceMapParser.StringCharIterator.prototype.hasNext):
1220 * inspector/front-end/CompilerSourceMapping.js: Removed.
1221 * inspector/front-end/WebKit.qrc:
1222 * inspector/front-end/inspector.html:
1224 2012-03-21 Vsevolod Vlasov <vsevik@chromium.org>
1226 Web Inspector: IndexedDB transaction is not closed when requesting data.
1227 https://bugs.webkit.org/show_bug.cgi?id=81837
1229 Reviewed by Pavel Feldman.
1231 * inspector/InspectorIndexedDBAgent.cpp: Added missing IDBCursorBackendInterface::postSuccessHandlerCallback() call.
1234 2012-03-21 Yury Semikhatsky <yurys@chromium.org>
1236 Web Inspector: event listeners section is broken for about:blank page
1237 https://bugs.webkit.org/show_bug.cgi?id=81795
1239 Parse about:blank as a valid URL.
1241 Reviewed by Pavel Feldman.
1243 Test: inspector/elements/event-listeners-about-blank.html
1245 * inspector/front-end/utilities.js:
1246 (String.prototype.asParsedURL):
1248 2012-03-21 Dan Bernstein <mitz@apple.com>
1250 REGRESSION (r111635): Assertion failure in RenderFlexibleBox::layoutFlexItems() (!lineContexts.size()) in many flexbox tests
1251 https://bugs.webkit.org/show_bug.cgi?id=81870
1253 Reverted r111635, the fix for bug 81843.
1255 * rendering/RenderFlexibleBox.cpp:
1256 (WebCore::RenderFlexibleBox::WrapReverseContext::WrapReverseContext):
1257 (WebCore::RenderFlexibleBox::WrapReverseContext::addCrossAxisOffset):
1258 (RenderFlexibleBox::WrapReverseContext):
1259 (WebCore::RenderFlexibleBox::WrapReverseContext::addNumberOfChildrenOnLine):
1260 (WebCore::RenderFlexibleBox::WrapReverseContext::lineCrossAxisDelta):
1261 (WebCore::RenderFlexibleBox::layoutFlexItems):
1262 (WebCore::RenderFlexibleBox::layoutAndPlaceChildren):
1263 (WebCore::RenderFlexibleBox::alignChildren):
1264 (WebCore::RenderFlexibleBox::flipForWrapReverse):
1265 * rendering/RenderFlexibleBox.h:
1267 2012-03-21 Emil A Eklund <eae@chromium.org>
1269 Unreviewed change touching CustomFilterProgram.h to try
1270 to force the chromium-win bots to rebuilt it and pick up
1271 on the fact that CSS_SHADERS is not set (since r111610).
1273 * platform/graphics/filters/CustomFilterProgram.h:
1275 2012-03-21 Vangelis Kokkevis <vangelis@chromium.org>
1277 [chromium] FPS counter causes garbage to be displayed at top left corner
1278 https://bugs.webkit.org/show_bug.cgi?id=81851
1280 The HUD expects the PlatformCanvas it paints on to be cleared on creation which is
1281 no longer true after http://src.chromium.org/viewvc/chrome?view=rev&revision=127196 .
1282 This patch does an explicit clearRect before the HUD contents are painted.
1284 Reviewed by Adrienne Walker.
1286 TEST=Manually verified that --show-fps-counter and --show-composited-layer-tree work correctly.
1288 * platform/graphics/chromium/cc/CCHeadsUpDisplay.cpp:
1289 (WebCore::CCHeadsUpDisplay::draw):
1291 2012-03-21 Ryosuke Niwa <rniwa@webkit.org>
1293 Touch a file to make Chromium Windows bots happy.
1295 * css/CSSValueKeywords.in:
1297 2012-03-19 Igor Oliveira <igor.o@sisa.samsung.com>
1299 Every call to RenderObject::setAnimatableStyle() iterates through all m_compositeAnimations: potentially O(N^2)
1300 https://bugs.webkit.org/show_bug.cgi?id=38025
1302 Implement updateAnimationTimerForRender. This reduces unnecessary animation
1303 steps on the current RenderObject by checking the value of timeToNextService
1304 before starting a new timer.
1306 Reviewed by Dean Jackson.
1308 Test: animations/animation-welcome-safari.html
1310 * page/animation/AnimationController.cpp:
1311 (WebCore::AnimationControllerPrivate::updateAnimationTimerForRenderer):
1313 (WebCore::AnimationController::updateAnimations):
1314 * page/animation/AnimationControllerPrivate.h:
1315 (AnimationControllerPrivate):
1317 2012-03-21 Sheriff Bot <webkit.review.bot@gmail.com>
1319 Unreviewed, rolling out r111616.
1320 http://trac.webkit.org/changeset/111616
1321 https://bugs.webkit.org/show_bug.cgi?id=81862
1323 broke chromium mac (Requested by eae on #webkit).
1325 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1326 (WebCore::CCLayerImpl::appendQuads):
1327 * platform/graphics/chromium/cc/CCLayerImpl.h:
1329 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1330 (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
1331 (WebCore::CCLayerTreeHostImpl::drawLayers):
1332 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1333 (CCLayerTreeHostImpl):
1334 * platform/graphics/chromium/cc/CCQuadCuller.cpp:
1335 (WebCore::CCQuadCuller::append):
1336 * platform/graphics/chromium/cc/CCQuadCuller.h:
1338 * platform/graphics/chromium/cc/CCRenderPass.cpp:
1339 (WebCore::CCRenderPass::appendQuadsForLayer):
1340 * platform/graphics/chromium/cc/CCRenderPass.h:
1342 * platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
1343 (WebCore::CCScrollbarLayerImpl::appendQuads):
1344 * platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
1345 (CCScrollbarLayerImpl):
1346 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1347 (WebCore::CCSingleThreadProxy::doComposite):
1348 * platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp:
1349 (WebCore::CCSolidColorLayerImpl::appendQuads):
1350 * platform/graphics/chromium/cc/CCSolidColorLayerImpl.h:
1351 (CCSolidColorLayerImpl):
1352 * platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
1353 (WebCore::CCTextureLayerImpl::appendQuads):
1354 * platform/graphics/chromium/cc/CCTextureLayerImpl.h:
1355 (CCTextureLayerImpl):
1356 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1357 (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
1358 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
1359 (WebCore::CCTiledLayerImpl::appendQuads):
1360 * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
1362 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
1363 (WebCore::CCVideoLayerImpl::appendQuads):
1364 * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
1367 2012-03-21 Beth Dakin <bdakin@apple.com>
1369 https://bugs.webkit.org/show_bug.cgi?id=80322
1372 Reviewed by Dean Jackson.
1374 This initial implementation of -webkit-image-set.
1375 http://lists.w3.org/Archives/Public/www-style/2012Feb/1103.html
1376 The idea behind the feature is to allow authors to provide multiple variants
1377 of the same image at differing resolutions, and to allow the User Agent to
1378 choose the resource that is most appropriate at the time. This patch will
1379 choose the most appropriate image based on device scale factor.
1381 CSSImageSetValue inherits from CSSValueList and behaves a lot like
1383 * WebCore.xcodeproj/project.pbxproj:
1384 * css/CSSImageSetValue.h: Added.
1387 (WebCore::CSSImageSetValue::create):
1388 (WebCore::CSSImageSetValue::isPending):
1390 (WebCore::CSSImageSetValue::compareByScaleFactor):
1391 * css/CSSImageSetValue.cpp: Added.
1393 (WebCore::CSSImageSetValue::CSSImageSetValue):
1394 (WebCore::CSSImageSetValue::~CSSImageSetValue):
1395 (WebCore::CSSImageSetValue::cachedOrPendingImageSet):
1396 (WebCore::CSSImageSetValue::customCssText):
1398 fillImageSet() iterates through the value list and turns the information into
1399 a sorted Vector of ImageWithScales (which is a struct containing image URLs
1401 (WebCore::CSSImageSetValue::fillImageSet):
1403 cachedImageSet() finds which image is most appropriate based on the device
1404 scale factor, and it loads only that image. In the future, additional scale
1405 factors will be taken into account.
1406 (WebCore::CSSImageSetValue::bestImageForScaleFactor):
1407 (WebCore::CSSImageSetValue::cachedImageSet):
1409 parseImageSet() is called everywhere in the CSSParser that a regular image or
1410 generated image can be found.
1411 * css/CSSParser.cpp:
1412 (WebCore::CSSParser::parseValue):
1413 (WebCore::CSSParser::parseContent):
1414 (WebCore::CSSParser::parseFillImage):
1415 (WebCore::CSSParser::parseBorderImage):
1417 (WebCore::CSSParser::parseImageSet):
1420 Since CSSImageSetValue is implemented as a value list,
1421 ApplyPropertyFillLayer::applyValue() needs to be more specific when it's
1422 looking for a list of multiple URLs.
1423 * css/CSSStyleApplyProperty.cpp:
1424 (WebCore::ApplyPropertyFillLayer::applyValue):
1426 Handle image-set as a valid image value.
1427 * css/CSSStyleSelector.cpp:
1428 (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1429 * css/CSSStyleSelector.h:
1432 (WebCore::CSSValue::cssText):
1433 (WebCore::CSSValue::destroy):
1436 (WebCore::CSSValue::isImageSetValue):
1438 computeIntrinsicDimensions() now takes an optional scaleFactor parameter that represents the author-enforced "intrinsic" scale factor of the image.
1439 * loader/cache/CachedImage.cpp:
1440 (WebCore::CachedImage::computeIntrinsicDimensions):
1441 * loader/cache/CachedImage.h:
1443 * platform/graphics/GeneratedImage.h:
1445 * platform/graphics/GeneratorGeneratedImage.cpp:
1446 (WebCore::GeneratedImage::computeIntrinsicDimensions):
1447 * platform/graphics/Image.cpp:
1448 (WebCore::Image::computeIntrinsicDimensions):
1449 * platform/graphics/Image.h:
1451 * platform/graphics/cg/PDFDocumentImage.cpp:
1452 (WebCore::PDFDocumentImage::computeIntrinsicDimensions):
1453 * platform/graphics/cg/PDFDocumentImage.h:
1455 * svg/graphics/SVGImage.cpp:
1456 (WebCore::SVGImage::computeIntrinsicDimensions):
1457 * svg/graphics/SVGImage.h:
1460 Inherits from StyleImage and returns a scaled size for imageSize() and
1461 computeIntrinsicDimensions().
1462 * rendering/style/StyleCachedImageSet.cpp: Added.
1464 (WebCore::StyleCachedImageSet::StyleCachedImageSet):
1465 (WebCore::StyleCachedImageSet::cssValue):
1466 (WebCore::StyleCachedImageSet::canRender):
1467 (WebCore::StyleCachedImageSet::isLoaded):
1468 (WebCore::StyleCachedImageSet::errorOccurred):
1469 (WebCore::StyleCachedImageSet::imageSize):
1470 (WebCore::StyleCachedImageSet::imageHasRelativeWidth):
1471 (WebCore::StyleCachedImageSet::imageHasRelativeHeight):
1472 (WebCore::StyleCachedImageSet::computeIntrinsicDimensions):
1473 (WebCore::StyleCachedImageSet::usesImageContainerSize):
1474 (WebCore::StyleCachedImageSet::setContainerSizeForRenderer):
1475 (WebCore::StyleCachedImageSet::addClient):
1476 (WebCore::StyleCachedImageSet::removeClient):
1477 (WebCore::StyleCachedImageSet::image):
1478 * rendering/style/StyleCachedImageSet.h: Added.
1480 (StyleCachedImageSet):
1481 (WebCore::StyleCachedImageSet::create):
1482 (WebCore::StyleCachedImageSet::data):
1483 (WebCore::StyleCachedImageSet::cachedImage):
1486 * rendering/style/StyleImage.h:
1487 (WebCore::StyleImage::isCachedImageSet):
1488 (WebCore::StyleImage::StyleImage):
1490 * rendering/style/StylePendingImage.h:
1491 (StylePendingImage):
1492 (WebCore::StylePendingImage::cssImageSetValue):
1494 2012-03-21 David Barton <dbarton@mathscribe.com>
1496 MathML internals - improve naming in RenderMathMLSquareRoot.cpp and RenderMathMLRoot.cpp
1497 https://bugs.webkit.org/show_bug.cgi?id=81850
1499 Reviewed by Eric Seidel.
1501 This prepares these files for bug fixes, and eventually combining their common code. To
1502 understand this patch, I suggest you start with RenderMathMLSquareRoot.cpp, as it's
1503 simpler than RenderMathMLRoot.cpp.
1505 No new tests. LayoutTests/mathml/presentation/roots.xhtml is thorough enough for this.
1507 * rendering/mathml/RenderMathMLRoot.cpp:
1509 (WebCore::RenderMathMLRoot::addChild):
1510 (WebCore::RenderMathMLRoot::paint):
1511 (WebCore::RenderMathMLRoot::layout):
1512 * rendering/mathml/RenderMathMLRoot.h:
1515 * rendering/mathml/RenderMathMLSquareRoot.cpp:
1517 (WebCore::RenderMathMLSquareRoot::paint):
1518 (WebCore::RenderMathMLSquareRoot::layout):
1519 * rendering/mathml/RenderMathMLSquareRoot.h:
1521 (RenderMathMLSquareRoot):
1522 * rendering/mathml/RenderMathMLSubSup.h:
1525 2012-03-21 Tony Chang <tony@chromium.org>
1527 refactor flexbox in preparation for flex-line-pack
1528 https://bugs.webkit.org/show_bug.cgi?id=81843
1530 Reviewed by Ojan Vafai.
1532 Replace WrapReverseContext with a vector of LineContexts that contain
1533 the same information, plus values needed for flex-align.
1535 alignChildren has been moved to after all the lines have been
1536 positioned. We want to align children after flex-line-pack has changed
1537 the size of each line to avoid unnecessary layouts.
1539 No new tests, just refactoring.
1541 * rendering/RenderFlexibleBox.cpp:
1542 (WebCore::RenderFlexibleBox::LineContext::LineContext): New struct,
1543 holds information needed for wrap-reverse and aligning children.
1544 (RenderFlexibleBox::LineContext):
1545 (WebCore::RenderFlexibleBox::layoutFlexItems): alignChildren after layout out all the lines rather than after each line.
1546 (WebCore::RenderFlexibleBox::layoutAndPlaceChildren): don't alignChildren
1547 (WebCore::RenderFlexibleBox::alignChildren): align all flex items, not just a line at a time.
1548 (WebCore::RenderFlexibleBox::flipForWrapReverse): Update to use LineContext
1549 * rendering/RenderFlexibleBox.h:
1551 2012-03-21 Ryosuke Niwa <rniwa@webkit.org>
1553 BDI element should have dir=auto by default
1554 https://bugs.webkit.org/show_bug.cgi?id=68773
1556 Reviewed by Daniel Bates.
1558 Treat bdi elements without dir content attribute as if they have dir=auto per spec:
1559 http://www.whatwg.org/specs/web-apps/current-work/multipage/text-level-semantics.html#the-bdi-element
1561 The patch tries to encapsulate the logic to look for dir content attribute and dir=auto.
1563 It also adds HTMLBDIElement interface (binding remains to use HTMLElement) to set
1564 selfOrAncestorHasDirAutoAttribute flag true by default, which is used by functions like
1565 directionalityIfhasDirAutoAttribute to look for elements with dir=auto. Since dir=auto-ness of bdi
1566 elements can be overridden by dir content attribute, we must change and only change the default value.
1568 Tests: fast/text/international/bdi-dir-default-to-auto-expected.html
1569 fast/text/international/bdi-dir-default-to-auto.html
1571 * GNUmakefile.list.am:
1574 * WebCore.vcproj/WebCore.vcproj:
1575 * WebCore.xcodeproj/project.pbxproj:
1576 * css/CSSStyleSelector.cpp:
1577 (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1578 * html/HTMLBDIElement.h: Added.
1581 (WebCore::HTMLBDIElement::create):
1582 (WebCore::HTMLBDIElement::HTMLBDIElement): Sets selfOrAncestorHasDirAutoAttribute to true because
1583 bdi elements are treated as if it has dir=auto by default.
1584 * html/HTMLElement.cpp:
1585 (WebCore::elementAffectsDirectionality): Added. Checks if the specified element is bdi or
1586 has dir content attribute.
1588 (WebCore::setHasDirAutoFlagRecursively):
1589 (WebCore::HTMLElement::hasDirectionAuto): Added. Checks if the specified element should be treated
1590 as if it has dir=auto (bdi or element with dir=auto).
1591 (WebCore::HTMLElement::directionalityIfhasDirAutoAttribute):
1592 (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildAttributeChanged):
1593 (WebCore::HTMLElement::adjustDirectionalityIfNeededAfterChildrenChanged):
1594 * html/HTMLElement.h:
1596 * html/HTMLTagNames.in: Use HTMLBDIElement instead of HTMLElement for constructing bdi element
1597 to set selfOrAncestorHasDirAutoAttribute true but still use HTMLElement for binding.
1599 2012-03-21 Luke Macpherson <macpherson@chromium.org>
1601 Use CSSPrimitiveValue::convertToLength() in a few places.
1602 https://bugs.webkit.org/show_bug.cgi?id=81492
1604 Reviewed by Eric Seidel.
1606 No new tests - refactoring only.
1608 CSSPrimitiveValue::convertToLength() provides the same functionality that is duplicated
1609 in many places in CSSStyleSelector. This patch removes some of that code duplication.
1611 * css/CSSStyleApplyProperty.cpp:
1612 (WebCore::ApplyPropertyVerticalAlign::applyValue):
1613 * css/CSSStyleSelector.cpp:
1614 (WebCore::CSSStyleSelector::collectMatchingRulesForList):
1616 2012-03-21 Patrick Gansterer <paroga@webkit.org>
1618 Build fix for ENABLE(SVG) && !ENABLE(FILTERS) after r111601.
1620 * rendering/svg/RenderSVGRoot.cpp:
1622 2012-03-21 Patrick Gansterer <paroga@webkit.org>
1624 Build fix for !ENABLE(INSPECTOR) after r104831.
1626 * bindings/js/ScriptDebugServer.cpp:
1627 (WebCore::ScriptDebugServer::dispatchDidParseSource):
1629 2012-03-21 Xiaomei Ji <xji@chromium.org>
1631 visual word movement: using cache to decrease the number of collectLeafBoxesInLogicalOrder on RootInlineBox
1632 https://bugs.webkit.org/show_bug.cgi?id=81408
1634 Reviewed by Ryosuke Niwa.
1636 Cache logically ordered leaf boxes under a particular root box.
1637 Also, move 'Vector<UChar, 1024> string' declared in visualWordPosition() to outside of loop (it is always
1638 clear-ed before use).
1640 * editing/visible_units.cpp:
1641 (CachedLogicallyOrderedLeafBoxes): Add class to cache logically ordered leaf boxes under a particular root box.
1642 (WebCore::CachedLogicallyOrderedLeafBoxes::size):
1643 (WebCore::CachedLogicallyOrderedLeafBoxes::firstBox):
1645 (WebCore::CachedLogicallyOrderedLeafBoxes::CachedLogicallyOrderedLeafBoxes):
1646 (WebCore::CachedLogicallyOrderedLeafBoxes::previousTextBox):
1647 (WebCore::CachedLogicallyOrderedLeafBoxes::nextTextBox):
1648 (WebCore::CachedLogicallyOrderedLeafBoxes::collectBoxes):
1649 (WebCore::CachedLogicallyOrderedLeafBoxes::boxIndexInLeaves):
1650 (WebCore::logicallyPreviousBox): Pass CachedLogicallyOrderedLeafBoxes object around.
1651 (WebCore::logicallyNextBox):
1652 (WebCore::wordBreakIteratorForMinOffsetBoundary):
1653 (WebCore::wordBreakIteratorForMaxOffsetBoundary):
1654 (WebCore::visualWordPosition):
1656 2012-03-21 Dana Jansens <danakj@chromium.org>
1658 [chromium] Early out in a new prepareToDraw() step if checkerboarding an accelerated animation in order to skip the frame
1659 https://bugs.webkit.org/show_bug.cgi?id=81437
1661 Reviewed by Adrienne Walker.
1663 Split CCLayerTreeHostImpl::drawLayers() into two phases:
1664 prepareToDraw() and drawLayers().
1666 When calculating a RenderPass, and we checkerboard a quad on a
1667 layer, bubble this info back up to CCLayerTreeHostImpl. If the
1668 layer is transforming in an animation, then abort the prepareToDraw()
1669 phase and cause it to return false back to the thread proxy.
1671 Unit test: CCLayerTreeHostImplTest.prepareToDrawFailsWhenAnimationUsesCheckerboard
1673 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
1674 (WebCore::CCLayerImpl::appendQuads):
1675 * platform/graphics/chromium/cc/CCLayerImpl.h:
1677 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
1678 (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
1679 (WebCore::CCLayerTreeHostImpl::prepareToDraw):
1681 (WebCore::CCLayerTreeHostImpl::drawLayers):
1682 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
1683 (CCLayerTreeHostImpl):
1685 * platform/graphics/chromium/cc/CCQuadCuller.cpp:
1686 (WebCore::CCQuadCuller::append):
1687 * platform/graphics/chromium/cc/CCQuadCuller.h:
1689 * platform/graphics/chromium/cc/CCRenderPass.cpp:
1690 (WebCore::CCRenderPass::appendQuadsForLayer):
1691 * platform/graphics/chromium/cc/CCRenderPass.h:
1693 * platform/graphics/chromium/cc/CCScrollbarLayerImpl.cpp:
1694 (WebCore::CCScrollbarLayerImpl::appendQuads):
1695 * platform/graphics/chromium/cc/CCScrollbarLayerImpl.h:
1696 (CCScrollbarLayerImpl):
1697 * platform/graphics/chromium/cc/CCSingleThreadProxy.cpp:
1698 (WebCore::CCSingleThreadProxy::doComposite):
1699 * platform/graphics/chromium/cc/CCSolidColorLayerImpl.cpp:
1700 (WebCore::CCSolidColorLayerImpl::appendQuads):
1701 * platform/graphics/chromium/cc/CCSolidColorLayerImpl.h:
1702 (CCSolidColorLayerImpl):
1703 * platform/graphics/chromium/cc/CCTextureLayerImpl.cpp:
1704 (WebCore::CCTextureLayerImpl::appendQuads):
1705 * platform/graphics/chromium/cc/CCTextureLayerImpl.h:
1706 (CCTextureLayerImpl):
1707 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
1708 (WebCore::CCThreadProxy::scheduledActionDrawAndSwap):
1709 * platform/graphics/chromium/cc/CCTiledLayerImpl.cpp:
1710 (WebCore::CCTiledLayerImpl::appendQuads):
1711 * platform/graphics/chromium/cc/CCTiledLayerImpl.h:
1713 * platform/graphics/chromium/cc/CCVideoLayerImpl.cpp:
1714 (WebCore::CCVideoLayerImpl::appendQuads):
1715 * platform/graphics/chromium/cc/CCVideoLayerImpl.h:
1718 2012-03-21 Enrica Casucci <enrica@apple.com>
1720 WebKitURLWithTitles pasteboard format should support URLs containing Emoji characters.
1721 https://bugs.webkit.org/show_bug.cgi?id=81835
1722 <rdar://problem/11082749>
1724 Reviewed by Brady Eidson.
1726 When writing the URL in the pasteboard for the WebURLWithTitles format,
1727 we use the user visible string instead of the original URL.
1728 In case of URL with Unicode characters, we lose the encoding.
1730 Added TestWebKitAPI test.
1732 * platform/mac/PasteboardMac.mm:
1733 (WebCore::writeURLForTypes): Writes to the pasteboard the original URL.
1735 2012-03-21 Levi Weintraub <leviw@chromium.org>
1737 Correct LayoutUnit usage in VisiblePosition.cpp
1738 https://bugs.webkit.org/show_bug.cgi?id=81775
1740 Reviewed by Eric Seidel.
1742 Correcting a mismatch between the .h and .cpp for the definition of localCaretRect,
1743 and properly using LayoutUnits for local coordinates.
1745 No new tests. No change in behavior.
1747 * editing/VisiblePosition.cpp:
1748 (WebCore::VisiblePosition::localCaretRect): Switching to return a LayoutRect, as in the
1749 header. Local coordinates are in LayoutUnits.
1750 (WebCore::VisiblePosition::absoluteCaretBounds): Using LayoutRect for the localCaretRect.
1751 (WebCore::VisiblePosition::lineDirectionPointForBlockDirectionNavigation): Ditto.
1753 2012-03-21 Adam Klein <adamk@chromium.org>
1755 "this" argument for MutationCallbacks should be the MutationObserver
1756 https://bugs.webkit.org/show_bug.cgi?id=81712
1758 Reviewed by Adam Barth.
1760 Test: fast/mutation/callback-arguments.html
1762 * bindings/js/JSCallbackData.cpp:
1763 (WebCore::JSCallbackData::invokeCallback): Add an overload that takes
1764 an explicit this argument and have the old method call the new one.
1765 * bindings/js/JSCallbackData.h:
1767 * bindings/js/JSMutationCallbackCustom.cpp:
1768 (WebCore::JSMutationCallback::handleEvent): Call the new overload.
1769 * bindings/v8/custom/V8CustomVoidCallback.cpp:
1770 (WebCore::invokeCallback): Add an overload that takes an explicit this
1771 argument and have the old method call the new one.
1772 * bindings/v8/custom/V8CustomVoidCallback.h:
1774 * bindings/v8/custom/V8MutationCallbackCustom.cpp:
1775 (WebCore::V8MutationCallback::handleEvent): Call the new overload.
1777 2012-03-21 Alexandru Chiculita <achicu@adobe.com>
1779 [CSS Shaders] Make CSS Shaders compile on Chromium
1780 https://bugs.webkit.org/show_bug.cgi?id=81435
1782 Reviewed by Stephen White.
1784 This patch enables the CSS Shaders compile time flag, but keeps the runtime flag disabled.
1785 The only way to test the functionality now is to use the overridePreference from dump render tree.
1787 Also part of this patch I fix a layering violation: I removed the "Document" reference from the FECustomFilter.cpp and passed the
1788 HostWindow directly. There should be no problem when the HostWindow changes, because the RenderLayer and the FECustomFilter
1789 get recreated anyway.
1791 No new tests. I've updated the existing custom filter tests to run under Chromium and added the expected results.
1792 I've just added window.layoutTestController.overridePreference("WebKitCSSCustomFilterEnabled", "1") to force
1793 enable the feature at runtime.
1795 * loader/cache/CachedResource.cpp: Made CachedResource::ShaderResource report as ResourceRequest::TargetIsSubresource for Chromium.
1796 (WebCore::cachedResourceTypeToTargetType):
1798 * platform/graphics/filters/FECustomFilter.cpp:
1799 (WebCore::FECustomFilter::FECustomFilter): Removed Document and just used the HostWindow directly.
1800 (WebCore::FECustomFilter::create):
1801 (WebCore::FECustomFilter::initializeContext):
1802 (WebCore::FECustomFilter::bindVertexAttribute): There was a typo and instead of using the "size" parameter it always used 4 component attribute.
1803 Other drivers didn't complain about it, but it was clearly a bug.
1804 (WebCore::FECustomFilter::bindProgramAndBuffers): Reading the image back from GPU will flip vertically the framebuffer in Chromium. I've flipped the
1805 projection matrix only on Chromium, so that we get the correct result.
1807 * rendering/FilterEffectRenderer.cpp:
1808 (WebCore::FilterEffectRenderer::build): Passing the HostWindow instead of the Document.
1810 2012-03-21 Mark Pilgrim <pilgrim@chromium.org>
1812 Realphabetize about webaudio move
1813 https://bugs.webkit.org/show_bug.cgi?id=81825
1815 Reviewed by Adam Barth.
1817 No new tests, all existing tests pass.
1821 2012-03-21 Anders Carlsson <andersca@apple.com>
1823 Evict tiles from pages in background tabs
1824 https://bugs.webkit.org/show_bug.cgi?id=81829
1825 <rdar://problem/10866152>
1827 Reviewed by Andreas Kling.
1829 When the tile cache for a page is no longer in a window (which happens when it's moved to
1830 a background tab), schedule a tile revalidation after 4 seconds. This tile revalidation
1831 will ensure that tiles outside of the visible rect will be dropped.
1833 * platform/graphics/ca/mac/TileCache.h:
1835 * platform/graphics/ca/mac/TileCache.mm:
1836 (WebCore::TileCache::tileCacheLayerBoundsChanged):
1837 (WebCore::TileCache::setIsInWindow):
1838 (WebCore::TileCache::tileCoverageRect):
1840 (WebCore::TileCache::scheduleTileRevalidation):
1841 (WebCore::TileCache::revalidateTiles):
1843 2012-03-21 Stephen Chenney <schenney@chromium.org>
1845 SVG layout leaves objects still needing layout
1846 https://bugs.webkit.org/show_bug.cgi?id=81006
1848 Reviewed by Nikolas Zimmermann.
1850 Change the layout of SVG objects such that resources that trigger
1851 layout of other objects are handled in a distinct pass, and then
1852 objects still requiring layout are laid out again.
1854 Test: svg/custom/delete-text-innerText-crash.html
1856 * rendering/svg/RenderSVGResourceContainer.cpp:
1857 (WebCore::RenderSVGResourceContainer::layout):
1858 * rendering/svg/RenderSVGResourceMarker.cpp:
1859 (WebCore::RenderSVGResourceMarker::layout):
1860 * rendering/svg/RenderSVGRoot.cpp:
1861 (WebCore::RenderSVGRoot::layout):
1862 (WebCore::RenderSVGRoot::addResourceForClientInvalidation):
1864 * rendering/svg/RenderSVGRoot.h:
1867 2012-03-21 Tim Horton <timothy_horton@apple.com>
1869 Make use of CG rounded-rect primitives
1870 https://bugs.webkit.org/show_bug.cgi?id=79932
1871 <rdar://problem/9274953>
1873 Reviewed by Simon Fraser.
1875 Portions of patch by Nikolas Zimmermann and Mustafizur Rahaman.
1877 Dispatch to potentially platform-specific rounded rectangle path
1878 construction from addPathForRoundedRect. Make use of this to call
1879 wkCGPathAddRoundedRect on Lion and above, as long as the rounded
1880 corners are all equivalent.
1882 The origin of the stroke dash differs between the bezier approach
1883 and the path added by wkCGPathAddRoundedRect, so Path::addRoundedRect()
1884 takes a new parameter allowing code which is sensitive to stroke dash
1885 origin (i.e. SVG) to fall back to the old behavior if need be.
1887 Make use of the new Path::addRoundedRect() parameter to fall back to
1888 the old (bezier) rounded-rect behavior when constructing a dashed SVG path,
1889 in order to continue complying with the spec.
1891 No new tests, as this is covered by many that use rounded corners,
1892 and is only a performance improvement.
1895 * platform/graphics/Path.cpp:
1896 (WebCore::Path::addRoundedRect):
1898 (WebCore::Path::addPathForRoundedRect):
1899 * platform/graphics/Path.h:
1901 * platform/graphics/cg/PathCG.cpp:
1902 (WebCore::Path::platformAddPathForRoundedRect):
1904 * platform/mac/WebCoreSystemInterface.h:
1905 * platform/mac/WebCoreSystemInterface.mm:
1906 * rendering/svg/SVGPathData.cpp:
1907 (WebCore::updatePathFromRectElement):
1909 2012-03-21 David Reveman <reveman@chromium.org>
1911 [Chromium] GL_EXT_occlusion_query_boolean and GL_CHROMIUM_command_buffer_query support.
1912 https://bugs.webkit.org/show_bug.cgi?id=80988
1914 Reviewed by Adrienne Walker.
1916 Expose EXT_occlusion_query API to WebKit compositor. Add
1917 GL_EXT_occlusion_query_boolean and GL_CHROMIUM_command_buffer_query
1920 * platform/graphics/chromium/Extensions3DChromium.h:
1921 (Extensions3DChromium):
1923 2012-03-21 Tony Chang <tony@chromium.org>
1925 compute the sign of flexibility for new flexbox
1926 https://bugs.webkit.org/show_bug.cgi?id=81722
1928 Reviewed by Ojan Vafai.
1930 This implements the computation of the sign of flexibility used by the
1931 new flexing algorithm.
1932 http://dev.w3.org/csswg/css3-flexbox/#resolve-the-flexible-lengths
1934 No new tests, we don't use the sign of flexibility yet.
1936 * rendering/RenderFlexibleBox.cpp:
1937 (WebCore::RenderFlexibleBox::layoutFlexItems):
1938 (WebCore::RenderFlexibleBox::computeNextFlexLine): Compute the size
1939 adjusted for min/max as well as not adjusted.
1940 (WebCore::RenderFlexibleBox::resolveFlexibleLengths): Renamed to match
1942 * rendering/RenderFlexibleBox.h: Added enum for flex sign.
1944 2012-03-21 Vsevolod Vlasov <vsevik@chromium.org>
1946 Web Inspector: Extract WebInspector.UIBreakpoint from WebInspector.Breakpoint.
1947 https://bugs.webkit.org/show_bug.cgi?id=81669
1949 Reviewed by Pavel Feldman.
1951 * inspector/front-end/BreakpointManager.js:
1952 (WebInspector.BreakpointManager.get for):
1953 (WebInspector.BreakpointManager):
1954 (WebInspector.BreakpointManager.prototype.uiSourceCodeAdded):
1955 (WebInspector.BreakpointManager.prototype.uiSourceCodeRemoved):
1956 (WebInspector.BreakpointManager.prototype.breakpointsForUISourceCode):
1957 (WebInspector.BreakpointManager.prototype.setBreakpoint):
1958 (WebInspector.BreakpointManager.prototype.removeBreakpoint):
1959 (WebInspector.BreakpointManager.prototype._innerRemoveBreakpoint):
1960 (WebInspector.BreakpointManager.prototype.removeAllBreakpoints):
1961 (WebInspector.BreakpointManager.prototype._moveBreakpointInUI):
1962 (WebInspector.BreakpointManager.prototype._uiBreakpoints.get this):
1963 (WebInspector.BreakpointManager.prototype._uiBreakpoints):
1964 (WebInspector.BreakpointManager.prototype.get _uiBreakpoint):
1965 (WebInspector.BreakpointManager.prototype._addBreakpointToUI):
1966 (WebInspector.BreakpointManager.prototype._removeBreakpointFromUI):
1967 (WebInspector.BreakpointManager.prototype._breakpoints):
1968 (WebInspector.BreakpointManager.prototype._breakpoint):
1969 (WebInspector.BreakpointManager.prototype._addBreakpointToModel):
1970 (WebInspector.BreakpointManager.prototype._removeBreakpointFromModel):
1971 (WebInspector.BreakpointManager.prototype._forEachBreakpoint):
1972 (WebInspector.BreakpointManager.prototype._setBreakpointInDebugger):
1973 (WebInspector.BreakpointManager.prototype._removeBreakpointFromDebugger):
1974 (WebInspector.BreakpointManager.prototype.debuggerReset):
1975 (WebInspector.Breakpoint.prototype.serialize):
1976 (WebInspector.Breakpoint.prototype.get uiBreakpoint):
1977 (WebInspector.Breakpoint.prototype.createUIBreakpoint):
1978 (WebInspector.Breakpoint.prototype.removeUIBreakpoint):
1979 (WebInspector.UIBreakpoint):
1980 * inspector/front-end/DebuggerPresentationModel.js:
1981 (WebInspector.DebuggerPresentationModel.prototype._handleUISourceCodeListChanged):
1982 (WebInspector.DebuggerPresentationModel.prototype.findBreakpoint):
1983 (WebInspector.DebuggerPresentationModel.prototype._breakpointAdded):
1984 (WebInspector.DebuggerPresentationModel.prototype._breakpointRemoved):
1985 * inspector/front-end/ScriptsPanel.js:
1987 2012-03-21 Anders Carlsson <andersca@apple.com>
1989 TileCache needs to know if its containing page is in a window
1990 https://bugs.webkit.org/show_bug.cgi?id=81821
1992 Reviewed by Andreas Kling.
1994 This is in preparation for throwing away invisible tiles in background tabs to reduce memory usage.
1996 * page/FrameView.cpp:
1997 (WebCore::FrameView::didMoveOnscreen):
1998 (WebCore::FrameView::willMoveOffscreen):
2000 (WebCore::Page::Page):
2001 (WebCore::Page::didMoveOnscreen):
2002 (WebCore::Page::willMoveOffscreen):
2004 (WebCore::Page::isOnscreen):
2006 * platform/graphics/TiledBacking.h:
2008 * platform/graphics/ca/mac/TileCache.h:
2010 * platform/graphics/ca/mac/TileCache.mm:
2011 (WebCore::TileCache::TileCache):
2012 (WebCore::TileCache::setIsInWindow):
2014 * rendering/RenderLayerBacking.cpp:
2015 (WebCore::RenderLayerBacking::RenderLayerBacking):
2017 2012-03-21 Xingnan Wang <xingnan.wang@intel.com>
2019 Web audio layout test failed in debug with an ASSERT error in ReverbConvolverStage.cpp
2020 https://bugs.webkit.org/show_bug.cgi?id=81744
2022 Reviewed by Chris Rogers.
2024 * platform/audio/ReverbConvolverStage.cpp:
2025 (WebCore::ReverbConvolverStage::ReverbConvolverStage):
2027 2012-03-21 Xiaomei Ji <xji@chromium.org>
2029 [chromium] Font fallback in cr-win is wrong for string contains zero-width-space.
2030 https://bugs.webkit.org/show_bug.cgi?id=79961
2032 Reviewed by Adam Barth.
2034 Treat zero-width-space (\u200B) as true for treatAsZeroWidthSpaceInComplexScipt().
2036 * platform/graphics/Font.h:
2037 (WebCore::Font::treatAsZeroWidthSpaceInComplexScript):
2038 * platform/graphics/mac/ComplexTextController.cpp:
2039 (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
2040 * platform/graphics/win/UniscribeController.cpp:
2041 (WebCore::UniscribeController::shapeAndPlaceItem):
2043 2012-03-21 Patrick Gansterer <paroga@webkit.org>
2045 Build fix for !ENABLE(INSPECTOR) after r111005.
2047 * inspector/ContentSearchUtils.h:
2049 2012-03-21 Ulan Degenbaev <ulan@chromium.org>
2051 [V8] V8GCForContextDispose should indicate whether a context is disposed for the main frame or not
2052 https://bugs.webkit.org/show_bug.cgi?id=81200
2054 Reviewed by Adam Barth.
2056 Pass a hint to V8::IdleNotification that requests more aggressive GC
2057 when a main frame context is disposed and requests incremental GC otherwise.
2059 * bindings/v8/V8DOMWindowShell.cpp:
2060 (WebCore::V8DOMWindowShell::disposeContextHandles):
2061 * bindings/v8/V8GCForContextDispose.cpp:
2062 (WebCore::V8GCForContextDispose::V8GCForContextDispose):
2063 (WebCore::V8GCForContextDispose::notifyContextDisposed):
2064 (WebCore::V8GCForContextDispose::pseudoIdleTimerFired):
2065 * bindings/v8/V8GCForContextDispose.h:
2066 (V8GCForContextDispose):
2068 2012-03-21 Nat Duca <nduca@chromium.org>
2070 [chromium] CCThreadProxy must initialize frameBeginTime to monotonicallyIncreasingTime rather than zero
2071 https://bugs.webkit.org/show_bug.cgi?id=81790
2073 Reviewed by James Robinson.
2075 * platform/graphics/chromium/cc/CCThreadProxy.cpp:
2076 (WebCore::CCThreadProxy::scheduledActionBeginFrame):
2078 2012-03-21 Xingnan Wang <xingnan.wang@intel.com>
2080 Add multichannel support in RealtimeAnalyser
2081 https://bugs.webkit.org/show_bug.cgi?id=81745
2083 Reviewed by Chris Rogers.
2085 * Modules/webaudio/RealtimeAnalyser.cpp:
2086 (WebCore::RealtimeAnalyser::writeInput):
2089 2012-03-21 Eric Carlson <eric.carlson@apple.com>
2091 Removing HTMLTrackElement does not delete TextTrack
2092 https://bugs.webkit.org/show_bug.cgi?id=80873
2094 Reviewed by Antti Koivisto.
2096 No new tests, but media/track/track-language-preference.html has been updated
2099 * html/HTMLMediaElement.cpp:
2100 (WebCore::HTMLMediaElement::didAddTrack): Renamed from trackWasAdded.
2101 (WebCore::HTMLMediaElement::willRemoveTrack): Renamed from trackWasRemoved because it is
2102 called before the track is removed, to allow the TextTrack to be removed.
2103 * html/HTMLMediaElement.h:
2105 * html/HTMLTrackElement.cpp:
2106 (WebCore::HTMLTrackElement::insertedIntoTree): Renamed from insertedIntoDocument
2107 (WebCore::HTMLTrackElement::willRemove): Renamed from removedFromDocument.
2108 * html/HTMLTrackElement.h:
2110 * html/track/LoadableTextTrack.cpp:
2111 (WebCore::LoadableTextTrack::trackElementIndex): Don't include tracks that are not in the
2112 document in the calcualtion.
2114 2012-03-21 Zeno Albisser <zeno@webkit.org>
2116 [Qt][Mac] ranlib segfaults when creating symbol tables for libWebCore.a.
2117 https://bugs.webkit.org/show_bug.cgi?id=81750
2119 Building WebCore on mac currently creates an archive that is bigger than
2120 4GB. But ranlib fails to create a symbol table for such a big archive,
2121 even on 64bit machines.
2122 Therefore we start using SVGAllInOne.cpp when building debug
2123 on mac. This reduces the size of the archive by about 300MB.
2125 Reviewed by Tor Arne Vestbø.
2129 2012-03-21 Tommy Widenflycht <tommyw@google.com>
2131 [chromium] MediaStream API (JSEP): Introducing WebSessionDescription and WebIceCandidate
2132 https://bugs.webkit.org/show_bug.cgi?id=81339
2134 Reviewed by Adam Barth.
2136 Not possible to test until the entire JSEP feature is commited.
2138 * Modules/mediastream/IceCandidate.cpp:
2139 (WebCore::IceCandidate::toSdp):
2140 * Modules/mediastream/SessionDescription.cpp:
2141 (WebCore::SessionDescription::toSdp):
2142 * platform/mediastream/IceCandidateDescriptor.cpp:
2143 (WebCore::IceCandidateDescriptor::toSDP):
2144 * platform/mediastream/IceCandidateDescriptor.h:
2145 (IceCandidateDescriptor):
2146 * platform/mediastream/MediaStreamCenter.cpp:
2147 (WebCore::MediaStreamCenter::constructSDP):
2148 * platform/mediastream/MediaStreamCenter.h:
2149 (MediaStreamCenter):
2150 * platform/mediastream/SessionDescriptionDescriptor.cpp:
2151 (WebCore::SessionDescriptionDescriptor::SessionDescriptionDescriptor):
2152 (WebCore::SessionDescriptionDescriptor::toSDP):
2153 (WebCore::SessionDescriptionDescriptor::initialSDP):
2154 * platform/mediastream/SessionDescriptionDescriptor.h:
2155 (SessionDescriptionDescriptor):
2157 2012-03-21 Yuta Kitamura <yutak@chromium.org>
2159 Use RFC version of WebSocket protocol by default
2160 https://bugs.webkit.org/show_bug.cgi?id=81718
2162 Reviewed by Kent Tamura.
2164 Flip the default value of Settings::m_useHixie76WebSocketProtocol so WebKit ports will use
2165 RFC version of WebSocket protocol by default.
2167 All the existing ports already use the RFC protocol as of now, so this change will not make
2168 any impact (hopefully).
2170 No new tests. No change in functionality.
2172 * page/Settings.cpp:
2173 (WebCore::Settings::Settings):
2175 2012-03-21 Andrey Kosyakov <caseq@chromium.org>
2177 Web Inspector: only show JS event listeners in Event Listeners tab of Elements panel
2178 https://bugs.webkit.org/show_bug.cgi?id=81798
2180 Reviewed by Pavel Feldman.
2182 * bindings/js/JSInjectedScriptHostCustom.cpp:
2183 (WebCore::getJSListenerFunctions):
2184 * bindings/js/ScriptEventListener.cpp:
2185 (WebCore::eventListenerHandlerBody):
2186 (WebCore::eventListenerHandlerLocation):
2187 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2188 (WebCore::getJSListenerFunctions):
2189 * inspector/InspectorDOMAgent.cpp:
2190 (WebCore::InspectorDOMAgent::getEventListeners):
2192 2012-03-21 Andrey Kosyakov <caseq@chromium.org>
2194 EventListener::Type enum has unused member InspectorDOMAgentType
2195 https://bugs.webkit.org/show_bug.cgi?id=81794
2197 Reviewed by Pavel Feldman.
2199 * dom/EventListener.h:
2201 2012-03-21 Tom Hudson <tomhudson@google.com>
2203 Incremental cleanup of BitmapImage: inlined virtual functions
2204 https://bugs.webkit.org/show_bug.cgi?id=81688
2206 Reviewed by James Robinson.
2208 No change in functionality, so no new tests.
2210 Move virtual functions defined in headers into .cpp files.
2213 * platform/graphics/BitmapImage.cpp:
2214 (WebCore::BitmapImage::isBitmapImage):
2216 (WebCore::BitmapImage::hasSingleSecurityOrigin):
2217 (WebCore::BitmapImage::nativeImageForCurrentFrame):
2218 (WebCore::BitmapImage::currentFrameHasAlpha):
2219 (WebCore::BitmapImage::notSolidColor):
2220 (WebCore::BitmapImage::decodedSize):
2221 (WebCore::BitmapImage::mayFillWithSolidColor):
2222 (WebCore::BitmapImage::solidColor):
2223 * platform/graphics/BitmapImage.h:
2225 * platform/graphics/skia/BitmapImageSingleFrameSkia.cpp: Added.
2227 (WebCore::BitmapImageSingleFrameSkia::isBitmapImage):
2228 (WebCore::BitmapImageSingleFrameSkia::currentFrameHasAlpha):
2229 (WebCore::BitmapImageSingleFrameSkia::size):
2230 (WebCore::BitmapImageSingleFrameSkia::destroyDecodedData):
2231 (WebCore::BitmapImageSingleFrameSkia::decodedSize):
2232 (WebCore::BitmapImageSingleFrameSkia::nativeImageForCurrentFrame):
2233 (WebCore::BitmapImageSingleFrameSkia::notSolidColor):
2234 * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
2235 (BitmapImageSingleFrameSkia):
2237 2012-03-21 Alexey Proskuryakov <ap@apple.com>
2239 Remove obsolete File attributes
2240 https://bugs.webkit.org/show_bug.cgi?id=79383
2242 Reviewed by Hajime Morita.
2244 * bindings/objc/PublicDOMInterfaces.h:
2247 Removed fileName and fileSize, they have different names now.
2249 * html/FileInputType.cpp:
2250 (WebCore::FileInputType::appendFormData):
2251 (WebCore::FileInputType::getTypeSpecificValue):
2252 (WebCore::FileInputType::defaultToolTip):
2253 Updated to use new function names.
2255 2012-03-21 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
2257 TiledBackingStore: Create the first round of tiles synchronously after setting the visible rect.
2258 https://bugs.webkit.org/show_bug.cgi?id=81762
2260 Reviewed by Kenneth Rohde Christiansen.
2262 The first round of tiles should cover completely the visible rect.
2263 Creating the tiles synchronously allows us to get the new tiles immediately
2264 and prevents an extra AC layers sync to be able to remove the old tiles.
2266 At some point it might also make sense to remove the tile creation timer
2269 * platform/graphics/TiledBackingStore.cpp:
2270 (WebCore::TiledBackingStore::coverWithTilesIfNeeded):
2272 2012-03-19 Jocelyn Turcotte <jocelyn.turcotte@nokia.com>
2274 TiledBackingStore: When checking if the visible area is covered, only convert to scaled coordinates once.
2275 https://bugs.webkit.org/show_bug.cgi?id=81519
2277 Reviewed by Kenneth Rohde Christiansen.
2279 Both visibleRect and coverageRatio call mapFromContents on the input rect,
2280 this woulc cause the coverageRatio to never reach 1.0 when the contents is
2283 * platform/graphics/TiledBackingStore.cpp:
2284 (WebCore::TiledBackingStore::visibleAreaIsCovered):
2286 2012-03-21 Mao Yujie <yujie.mao@intel.com>
2288 MediaStream API: Need to support MediaStream constructor for JSC
2289 https://bugs.webkit.org/show_bug.cgi?id=78781
2291 Reviewed by Adam Barth.
2295 * Modules/mediastream/DOMWindowMediaStream.idl:
2296 * bindings/generic/RuntimeEnabledFeatures.h:
2297 (WebCore::RuntimeEnabledFeatures::webkitMediaStreamEnabled):
2299 2012-03-21 Philip Rogers <pdr@google.com>
2301 Skip building resources if SVGTRef is not in a document
2302 https://bugs.webkit.org/show_bug.cgi?id=81473
2304 Reviewed by Nikolas Zimmermann.
2306 We can skip the building of pending resources in SVGTRef if we're not
2307 yet in a document. This mirrors the nearly identical logic in
2308 SVGUseElement::buildPendingResource() and
2309 SVGFEImageElement::buildPendingResource().
2311 Test: http/tests/svg/tref-adoptNode-crash.html
2313 * svg/SVGTRefElement.cpp:
2314 (WebCore::SVGTRefElement::buildPendingResource):
2316 2012-03-21 Sami Kyostila <skyostil@chromium.org>
2318 [chromium] Use floating point scroll deltas for layers
2319 https://bugs.webkit.org/show_bug.cgi?id=81546
2321 Reviewed by James Robinson.
2323 Use floating point scroll deltas for layers instead of integral scroll
2324 deltas. This is because due to page scaling it may be necessary to
2325 scroll layers in sub-CSS-pixel steps to avoid visible jumps. When the
2326 floating point scroll offset is committed to the main thread, it is
2327 truncated to integer, but the fractional part is kept on the CC side to
2328 make sure fractional scroll offsets are accumulated correctly over
2331 Test: CCLayerTreeHostTestFractionalScroll
2333 * platform/graphics/FloatPoint.h:
2336 * platform/graphics/chromium/cc/CCLayerImpl.cpp:
2337 (WebCore::CCLayerImpl::scrollBy):
2338 (WebCore::CCLayerImpl::setScrollDelta):
2339 * platform/graphics/chromium/cc/CCLayerImpl.h:
2340 (WebCore::CCLayerImpl::scrollDelta):
2342 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
2343 (WebCore::CCLayerTreeHostImpl::startPageScaleAnimation):
2344 (WebCore::CCLayerTreeHostImpl::adjustScrollsForPageScaleChange):
2345 (WebCore::CCLayerTreeHostImpl::processScrollDeltas):
2346 (WebCore::CCLayerTreeHostImpl::animatePageScale):
2348 2012-03-21 Li Yin <li.yin@intel.com>
2350 [WebSocket]The Sec-WebSocket-Accept MUST NOT appear more than once in an HTTP response
2351 https://bugs.webkit.org/show_bug.cgi?id=81655
2353 Reviewed by Adam Barth.
2355 Test: http/tests/websocket/tests/hybi/handshake-fail-by-more-accept-header.html
2357 * Modules/websockets/WebSocketHandshake.cpp:
2358 (WebCore::WebSocketHandshake::readHTTPHeaders):
2360 2012-03-21 Alexei Filippov <alexeif@chromium.org>
2362 Web Inspector: Speedup heap snapshot loading.
2363 https://bugs.webkit.org/show_bug.cgi?id=81788
2365 Reviewed by Yury Semikhatsky.
2367 * inspector/front-end/HeapSnapshot.js:
2368 (WebInspector.HeapSnapshotLoader.prototype._parseNodes):
2370 2012-03-21 Pavel Feldman <pfeldman@chromium.org>
2372 Web Inspector: get rid of isInEditMode, use isBeingEdited on particular element.
2373 https://bugs.webkit.org/show_bug.cgi?id=81766
2375 Reviewed by Yury Semikhatsky.
2377 We should check event target and its ancestors for being edited, not use some
2378 global property. This change also introduces Event.prototype.consume so that we
2379 were consistently consuming events.
2381 * inspector/front-end/AdvancedSearchController.js:
2382 (WebInspector.SearchView.prototype._onKeyDown):
2383 * inspector/front-end/BreakpointsSidebarPane.js:
2384 (WebInspector.JavaScriptBreakpointsSidebarPane.prototype._breakpointCheckboxClicked):
2385 * inspector/front-end/CSSSelectorProfileView.js:
2386 * inspector/front-end/Checkbox.js:
2387 (WebInspector.Checkbox.prototype.addEventListener):
2388 * inspector/front-end/ConsoleView.js:
2389 (WebInspector.ConsoleView.prototype._enterKeyPressed):
2390 (WebInspector.ConsoleGroup.prototype._titleClicked):
2391 * inspector/front-end/ContextMenu.js:
2392 (WebInspector.ContextMenu.prototype.show):
2393 * inspector/front-end/DataGrid.js:
2394 (WebInspector.DataGrid.prototype._keyDown):
2395 * inspector/front-end/DatabaseQueryView.js:
2396 (WebInspector.DatabaseQueryView.prototype._enterKeyPressed):
2397 * inspector/front-end/DetailedHeapshotView.js:
2398 (WebInspector.DetailedHeapshotView.prototype._mouseDownInContentsGrid):
2399 (WebInspector.DetailedHeapshotView.prototype._startRetainersHeaderDragging):
2400 (WebInspector.DetailedHeapshotView.prototype._retainersHeaderDragging):
2401 (WebInspector.DetailedHeapshotView.prototype._endRetainersHeaderDragging):
2402 * inspector/front-end/Dialog.js:
2403 (WebInspector.Dialog.prototype._onKeyDown):
2404 * inspector/front-end/Drawer.js:
2405 (WebInspector.Drawer.prototype._startStatusBarDragging):
2406 (WebInspector.Drawer.prototype._statusBarDragging):
2407 (WebInspector.Drawer.prototype._endStatusBarDragging):
2408 * inspector/front-end/EventListenersSidebarPane.js:
2409 (WebInspector.EventListenersSidebarPane.get if):
2410 * inspector/front-end/HelpScreen.js:
2411 (WebInspector.HelpScreen.prototype._onKeyDown):
2412 * inspector/front-end/InspectorView.js:
2413 (WebInspector.InspectorView.prototype._keyDown):
2414 * inspector/front-end/MetricsSidebarPane.js:
2415 (WebInspector.MetricsSidebarPane.prototype._highlightDOMNode):
2416 * inspector/front-end/NetworkPanel.js:
2417 * inspector/front-end/Object.js:
2418 (WebInspector.Event.prototype.preventDefault):
2419 (WebInspector.Event.prototype.consume):
2420 * inspector/front-end/ObjectPropertiesSection.js:
2421 (WebInspector.ObjectPropertyTreeElement.prototype._promptKeyDown):
2422 * inspector/front-end/ProfileView.js:
2423 * inspector/front-end/SearchController.js:
2424 (WebInspector.SearchController.prototype._onKeyDown):
2425 * inspector/front-end/Section.js:
2426 (WebInspector.Section.prototype.handleClick):
2427 * inspector/front-end/Settings.js:
2428 (WebInspector.ExperimentsSettings):
2429 * inspector/front-end/SoftContextMenu.js:
2430 (.WebInspector.SoftContextMenu.prototype.show):
2431 (.WebInspector.SoftContextMenu.prototype._menuItemMouseDown):
2432 (.WebInspector.SoftContextMenu.prototype._menuKeyDown):
2433 (.WebInspector.SoftContextMenu.prototype._discardMenu):
2434 * inspector/front-end/Spectrum.js:
2435 (WebInspector.Spectrum.draggable.consume):
2436 (WebInspector.Spectrum.draggable.start):
2437 (WebInspector.Spectrum.draggable.stop):
2438 (WebInspector.Spectrum.draggable):
2439 (WebInspector.Spectrum.prototype._onKeyDown):
2440 * inspector/front-end/StylesSidebarPane.js:
2441 (WebInspector.StylesSidebarPane.muteEventListener):
2442 (WebInspector.StylesSidebarPane):
2443 (WebInspector.StylesSidebarPane.prototype.set _createNewRule):
2444 (WebInspector.StylesSidebarPane.prototype._toggleElementStatePane):
2445 (WebInspector.StylePropertiesSection.prototype._handleEmptySpaceClick):
2446 (WebInspector.StylePropertiesSection.prototype._handleSelectorClick):
2447 (WebInspector.StylePropertyTreeElement.prototype.updateTitle.):
2448 (WebInspector.StylePropertyTreeElement.prototype):
2449 * inspector/front-end/TextPrompt.js:
2450 (WebInspector.TextPrompt.prototype.onKeyDown):
2451 (WebInspector.TextPromptWithHistory.prototype.defaultKeyHandler):
2452 (WebInspector.TextPrompt.SuggestBox.prototype._onItemMouseDown):
2453 * inspector/front-end/TextViewer.js:
2454 (WebInspector.TextViewer.prototype._handleKeyDown):
2455 * inspector/front-end/Toolbar.js:
2456 (WebInspector.ToolbarDropdown.prototype._onKeyDown):
2457 * inspector/front-end/UIUtils.js:
2458 (WebInspector.isBeingEdited):
2459 (WebInspector.startEditing):
2460 * inspector/front-end/View.js:
2461 (WebInspector.View.prototype._doLoadCSS):
2462 * inspector/front-end/WatchExpressionsSidebarPane.js:
2463 (WebInspector.WatchExpressionsSidebarPane.prototype._addButtonClicked):
2464 (WebInspector.WatchExpressionsSidebarPane.prototype._refreshButtonClicked):
2465 * inspector/front-end/inspector.js:
2466 (WebInspector.documentClick.followLink):
2467 (WebInspector.documentClick):
2468 (WebInspector.documentKeyDown):
2469 (WebInspector.postDocumentKeyDown):
2470 (WebInspector.addMainEventListeners):
2471 * inspector/front-end/treeoutline.js:
2472 (TreeOutline.prototype._treeKeyPress):
2473 (TreeOutline.prototype._treeKeyDown):
2474 (TreeOutline.prototype._searchInputKeyDown):
2475 (TreeElement.treeElementToggled):
2476 (TreeElement.prototype.selectOnMouseDown):
2477 * inspector/front-end/utilities.js:
2478 (Event.prototype.consume):
2480 2012-03-21 Yury Semikhatsky <yurys@chromium.org>
2482 Web Inspector: event listener section doesn't show all event listeners of the element ancestors
2483 https://bugs.webkit.org/show_bug.cgi?id=81782
2485 Event listeners section now contains all event listeners for the selected
2486 element ancestors chain (in case option "All Nodes" is selected).
2488 Reviewed by Pavel Feldman.
2490 * inspector/InspectorDOMAgent.cpp:
2491 (WebCore::InspectorDOMAgent::getEventListenersForNode):
2492 * inspector/front-end/EventListenersSidebarPane.js:
2493 (WebInspector.EventListenersSidebarPane.prototype.update.callback):
2494 (WebInspector.EventListenersSidebarPane.prototype.update):
2495 (WebInspector.EventListenersSidebarPane.prototype):
2497 2012-03-21 Ilya Tikhonovsky <loislo@chromium.org>
2499 Web Inspector: HeapSnapshot: move all builders and calculation calls to HeapSnapshot._init function.
2500 https://bugs.webkit.org/show_bug.cgi?id=81784
2502 Reviewed by Yury Semikhatsky.
2504 * inspector/front-end/HeapSnapshot.js:
2505 (WebInspector.HeapSnapshot.prototype._init):
2506 (WebInspector.HeapSnapshot.prototype.dispose):
2507 (WebInspector.HeapSnapshot.prototype._retainersForNode):
2508 (WebInspector.HeapSnapshot.prototype._dominatedNodesOfNode):
2509 (WebInspector.HeapSnapshot.prototype._flagsOfNode):
2510 (WebInspector.HeapSnapshot.prototype.aggregates):
2511 (WebInspector.HeapSnapshot.prototype._buildRetainers):
2512 (WebInspector.HeapSnapshot.prototype.get nodeIndexes):
2514 2012-03-21 Jessie Berlin <jberlin@apple.com>
2516 WTF headers should be in $(ConfigurationBuildDir)\include\private\wtf, not
2517 $(ConfigurationBuildDir)\include\private\JavaScriptCore\wtf.
2518 https://bugs.webkit.org/show_bug.cgi?id=81739
2520 Reviewed by Dan Bernstein.
2522 * WebCore.vcproj/WebCore.vcproj:
2523 Look for AtomicString.cpp, StringBuilder.cpp, StringImpl.cpp, and WTFString.cpp in the wtf
2524 subdirectory of the build output, not the JavaScriptCore/wtf subdirectory.
2526 2012-03-21 Jonathan Dong <jonathan.dong@torchmobile.com.cn>
2528 [BlackBerry] Credential save and autofill implemetation
2529 https://bugs.webkit.org/show_bug.cgi?id=80401
2531 Reviewed by Rob Buis.
2533 Added interface function authenticationChallenge() and
2534 notifyShouldSaveCredential() into PageClientBlackBerry.
2535 As this class is our platform specific interface,
2536 by doing this we don't need to add an interface function
2537 in class FrameLoaderClient which is a platform
2538 independent interface.
2542 * platform/blackberry/PageClientBlackBerry.h:
2544 * platform/network/blackberry/NetworkJob.cpp:
2545 (WebCore::NetworkJob::sendRequestWithCredentials):
2547 2012-03-21 Ilya Tikhonovsky <loislo@chromium.org>
2549 Web Inspector: HeapProfiler: DOM node id can overflow Int32.
2550 https://bugs.webkit.org/show_bug.cgi?id=81776
2552 Reviewed by Pavel Feldman.
2554 * inspector/front-end/HeapSnapshot.js:
2555 (WebInspector.Uint32Array):
2556 (WebInspector.HeapSnapshotLoader.prototype.pushJSONChunk):
2557 (WebInspector.HeapSnapshot.prototype._buildReverseIndex.var):
2558 (WebInspector.HeapSnapshot.prototype._buildReverseIndex):
2559 (WebInspector.HeapSnapshot.prototype._buildNodeIndex):
2561 2012-03-21 Tim Dresser <tdresser@chromium.org>
2563 [chromium] Increase size of Combo Box Options for touch and high DPI devices
2564 https://bugs.webkit.org/show_bug.cgi?id=80027
2566 Reviewed by Darin Fisher.
2568 Scale Combo box popups by defaultDeviceScaleFactor, and add padding to
2569 <option> elements when touch is enabled.
2571 Manually tested with --default-device-scale-factor=1,2 and unset.
2572 Each of these were tested with RuntimeEnabledFeatures::touchEnabled
2573 set to true and false.
2575 * platform/chromium/PopupListBox.cpp:
2576 (WebCore::PopupListBox::paint):
2577 (WebCore::PopupListBox::paintRow):
2578 (WebCore::PopupListBox::getRowHeight):
2579 * platform/chromium/PopupListBox.h:
2580 (PopupContainerSettings):
2581 * platform/chromium/PopupMenuChromium.cpp:
2583 (WebCore::PopupMenuChromium::show):
2584 * platform/chromium/PopupMenuChromium.h:
2585 (WebCore::PopupMenuChromium::optionPaddingForTouch):
2586 (WebCore::PopupMenuChromium::setOptionPaddingForTouch):
2587 (PopupMenuChromium):
2588 * rendering/RenderMenuList.cpp:
2589 (WebCore::RenderMenuList::showPopup):
2591 2012-03-21 Takashi Toyoshima <toyoshim@chromium.org>
2593 [Chromium] [WebSocket] provide WebFrameClient with a chance of
2594 accessing to opening WebSocketStreamHandle.
2595 https://bugs.webkit.org/show_bug.cgi?id=78459
2597 Reviewed by Kent Tamura and Darin Fisher.
2599 Add willOpenSocketStream client function to WebFrameClient with an
2600 argument representing an opening SocketStreamHandle.
2601 These mechanisms provide embedders with a chance to bind arbitrary
2602 data to a WebSocketStreamHandle from WebFrameClient to which the
2603 WebSocket object having the WebSocketStreamHandle belongs.
2605 No new tests because this change just provide mechanisms to embedders.
2607 * Modules/websockets/WebSocketChannel.cpp: Implement willOpenSocketStream to call a client function in WebFrameClient.
2608 (WebCore::WebSocketChannel::willOpenSocketStream):
2610 * Modules/websockets/WebSocketChannel.h: Add willOpenSocketStream declaration.
2612 * loader/FrameLoaderClient.h: Add dispatchWillOpenSocketStream declaration.
2614 (FrameLoaderClient):
2615 (WebCore::FrameLoaderClient::dispatchWillOpenSocketStream):
2616 * platform/network/SocketStreamHandleClient.h: Add willOpenSocketStream declaration.
2617 (WebCore::SocketStreamHandleClient::willOpenSocketStream):
2619 2012-03-21 Vineet Chaudhary <rgf748@motorola.com>
2621 https://bugs.webkit.org/show_bug.cgi?id=81761
2622 Fix Gobject binding for sequence<T> for function return type.
2624 Reviewed by Kentaro Hara.
2628 * bindings/scripts/CodeGeneratorGObject.pm:
2629 (SkipFunction): Skip function with sequence<T> return type.
2630 * bindings/scripts/test/GObject/WebKitDOMTestObj.cpp:
2631 (webkit_dom_test_obj_method_with_sequence_arg):
2632 * bindings/scripts/test/GObject/WebKitDOMTestObj.h:
2634 2012-03-21 Andrey Kosyakov <caseq@chromium.org>
2636 Unreviewed build fix for r111529.
2638 * inspector/InjectedScriptHost.h:
2641 2012-03-21 Sheriff Bot <webkit.review.bot@gmail.com>
2643 Unreviewed, rolling out r111497, r111506, r111508, and
2645 http://trac.webkit.org/changeset/111497
2646 http://trac.webkit.org/changeset/111506
2647 http://trac.webkit.org/changeset/111508
2648 http://trac.webkit.org/changeset/111513
2649 https://bugs.webkit.org/show_bug.cgi?id=81774
2651 It broke 2 tests on all platform (Requested by Ossy on
2654 * css/CSSStyleSelector.cpp:
2655 (WebCore::CSSStyleSelector::collectMatchingRulesForList):
2656 * css/SelectorChecker.cpp:
2657 (WebCore::SelectorChecker::checkOneSelector):
2658 * html/HTMLKeygenElement.cpp:
2659 (WebCore::HTMLKeygenElement::HTMLKeygenElement):
2660 * html/HTMLOptionElement.cpp:
2661 (WebCore::HTMLOptionElement::HTMLOptionElement):
2662 (WebCore::HTMLOptionElement::create):
2663 (WebCore::HTMLOptionElement::attach):
2664 (WebCore::HTMLOptionElement::detach):
2665 (WebCore::HTMLOptionElement::formControlType):
2667 (WebCore::HTMLOptionElement::parseAttribute):
2668 (WebCore::HTMLOptionElement::childrenChanged):
2669 (WebCore::HTMLOptionElement::insertedIntoTree):
2670 * html/HTMLOptionElement.h:
2671 (HTMLOptionElement):
2672 (WebCore::HTMLOptionElement::ownElementDisabled):
2673 * html/HTMLTagNames.in:
2675 2012-03-21 Andrey Kosyakov <caseq@chromium.org>
2677 Web Inspector: expose getEventListeners() to console command line API
2678 https://bugs.webkit.org/show_bug.cgi?id=81658
2680 Reviewed by Yury Semikhatsky.
2682 Test: inspector/console/command-line-api-getEventListeners.html
2684 * bindings/js/JSInjectedScriptHostCustom.cpp:
2685 (WebCore::JSInjectedScriptHost::functionDetails):
2687 (WebCore::getJSListenerFunctions):
2688 (WebCore::JSInjectedScriptHost::getEventListeners):
2689 * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
2690 (WebCore::getJSListenerFunctions):
2692 (WebCore::V8InjectedScriptHost::getEventListenersCallback):
2693 * inspector/InjectedScriptHost.cpp:
2694 (WebCore::InjectedScriptHost::InjectedScriptHost):
2695 (WebCore::InjectedScriptHost::disconnect):
2696 (WebCore::InjectedScriptHost::getEventListenersImpl):
2698 * inspector/InjectedScriptHost.h:
2700 (WebCore::InjectedScriptHost::init):
2701 (InjectedScriptHost):
2702 * inspector/InjectedScriptHost.idl:
2703 * inspector/InjectedScriptSource.js:
2705 * inspector/InspectorController.cpp:
2706 (WebCore::InspectorController::InspectorController):
2707 * inspector/InspectorDOMAgent.cpp:
2708 (WebCore::InspectorDOMAgent::getEventListenersForNode):
2709 (WebCore::InspectorDOMAgent::getEventListeners):
2711 * inspector/InspectorDOMAgent.h:
2712 (InspectorDOMAgent):
2713 * inspector/WorkerInspectorController.cpp:
2714 (WebCore::WorkerInspectorController::WorkerInspectorController):
2716 2012-03-21 Kentaro Hara <haraken@chromium.org>
2718 Unreviewed, rebaselined run-bindings-tests results.
2720 * bindings/scripts/test/CPP/WebDOMFloat64Array.cpp:
2721 * bindings/scripts/test/GObject/WebKitDOMFloat64Array.cpp:
2722 * bindings/scripts/test/GObject/WebKitDOMFloat64ArrayPrivate.h:
2723 * bindings/scripts/test/ObjC/DOMFloat64Array.mm:
2725 2012-03-21 Ian Vollick <vollick@chromium.org>
2727 [chromium] timing functions are getting incorrectly applied for accelerated css transitions
2728 https://bugs.webkit.org/show_bug.cgi?id=81692
2730 Reviewed by Adrienne Walker.
2732 Tested in CCLayerTreeHostTestAddAnimationWithTimingFunction
2734 * platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
2736 2012-03-21 Allan Sandfeld Jensen <allan.jensen@nokia.com>
2738 [Qt] Cookie Jar blocks on fsync in SQLITE
2739 https://bugs.webkit.org/show_bug.cgi?id=81755
2741 Reviewed by Simon Hausmann.
2743 Set PRAGMA synchronous to OFF, which tells SQLITE to never fsync.
2745 * platform/qt/CookieJarQt.cpp:
2746 (WebCore::SharedCookieJarQt::ensureDatabaseTable):
2748 2012-03-21 Ian Vollick <vollick@chromium.org>
2750 [chromium] Animation events should only be used for synchronizing animation start times
2751 https://bugs.webkit.org/show_bug.cgi?id=81484
2753 Reviewed by Adrienne Walker.
2755 Tested in CCLayerTreeHostTestSynchronizeAnimationStartTimes
2757 Eliminated animation finished events. Animations will finish naturally on the
2758 main thread and the final values will be set.
2760 Animation started events are now also used to synchronize the main thread
2761 animations' start times with their impl thread equivalents, preventing skew.
2762 Until main thread animations receive their synchronized start times, they will
2763 apply their initial values (i.e., they will be paused at time zero). This
2764 guarantees that we will not jump to the animation's final value on the main
2765 thread while we wait for the synchronized start time.
2768 * platform/graphics/chromium/LayerChromium.cpp:
2769 (WebCore::LayerChromium::notifyAnimationStarted):
2770 * platform/graphics/chromium/LayerChromium.h:
2773 * platform/graphics/chromium/cc/CCActiveAnimation.cpp:
2774 (WebCore::CCActiveAnimation::CCActiveAnimation):
2775 * platform/graphics/chromium/cc/CCActiveAnimation.h:
2776 (CCActiveAnimation):
2777 (WebCore::CCActiveAnimation::needsSynchronizedStartTime):
2778 (WebCore::CCActiveAnimation::setNeedsSynchronizedStartTime):
2779 * platform/graphics/chromium/cc/CCAnimationEvents.cpp: Removed.
2780 * platform/graphics/chromium/cc/CCAnimationEvents.h:
2781 (WebCore::CCAnimationStartedEvent::CCAnimationStartedEvent):
2782 (CCAnimationStartedEvent):
2784 * platform/graphics/chromium/cc/CCLayerAnimationController.cpp:
2785 (WebCore::CCLayerAnimationController::animate):
2786 (WebCore::CCLayerAnimationController::notifyAnimationStarted):
2788 (WebCore::CCLayerAnimationController::pushNewAnimationsToImplThread):
2789 (WebCore::CCLayerAnimationController::startAnimationsWaitingForNextTick):
2790 (WebCore::CCLayerAnimationController::startAnimationsWaitingForStartTime):
2791 (WebCore::CCLayerAnimationController::startAnimationsWaitingForTargetAvailability):
2792 (WebCore::CCLayerAnimationController::purgeFinishedAnimations):
2793 (WebCore::CCLayerAnimationController::tickAnimations):
2794 * platform/graphics/chromium/cc/CCLayerAnimationController.h:
2795 (CCLayerAnimationController):
2796 * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
2797 (WebCore::CCLayerTreeHost::updateAnimations):
2798 (WebCore::CCLayerTreeHost::setAnimationEventsRecursive):
2799 * platform/graphics/chromium/cc/CCLayerTreeHost.h:
2802 2012-03-21 Zeno Albisser <zeno@webkit.org>
2804 [Qt][WK2][Mac] MiniBrowser asserts at HashTable.h:480
2805 https://bugs.webkit.org/show_bug.cgi?id=81113
2807 The GLContext is created by QWindow/QSurface using
2808 QOpenGLContext which is implemented using NSOpenGL functions
2809 on mac. Therefore we should use QOpenGLContext as well when
2810 querying for the current context. AGL is not supposed
2811 to be paired with NSOpenGL.
2812 Altering the typedef for GLContext is fine, since
2813 the GLContext type is only used as a key in a map.
2815 Reviewed by Kenneth Rohde Christiansen.
2817 * platform/graphics/texmap/TextureMapperGL.cpp:
2819 (WebCore::TextureMapperGLData::SharedGLData::getCurrentGLContext):
2821 2012-03-21 Ilya Tikhonovsky <loislo@chromium.org>
2823 Web Inspector: HeapSnapshot: make _bfs twice as fast as the old version.
2824 https://bugs.webkit.org/show_bug.cgi?id=81756
2826 Reviewed by Yury Semikhatsky.
2828 * inspector/front-end/HeapSnapshot.js:
2829 (WebInspector.HeapSnapshot.prototype._calculateObjectToWindowDistance):
2830 (WebInspector.HeapSnapshot.prototype._bfs):
2832 2012-03-21 Vineet Chaudhary <rgf748@motorola.com>
2834 https://bugs.webkit.org/show_bug.cgi?id=81705
2835 REGRESSION (r111416): fast/dom/prototype-inheritance-2.html is failing.
2837 Reviewed by Csaba Osztrogonác.
2841 * bindings/js/JSDOMBinding.h: Needs passing globalObject to constructArray().
2844 2012-03-21 Jonathan Dong <jonathan.dong@torchmobile.com.cn>
2846 [BlackBerry] Upstreaming blackberry specific css file
2847 https://bugs.webkit.org/show_bug.cgi?id=81650
2849 Ustream BlackBerry specific css files, including:
2850 css/themeBlackBerry.css
2851 css/mediaControlsBlackBerry.css
2853 Reviewed by Nikolas Zimmermann.
2855 No new tests, this is the initial upstream patch
2856 for BlackBerry specific css files.
2858 * css/mediaControlsBlackBerry.css: Added.
2860 (audio::-webkit-media-controls-panel, video::-webkit-media-controls-panel):
2861 (video:-webkit-full-page-media::-webkit-media-controls-panel):
2862 (audio::-webkit-media-controls-play-button, video::-webkit-media-controls-play-button):
2863 (audio::-webkit-media-controls-timeline-container, video::-webkit-media-controls-timeline-container):
2864 (audio::-webkit-media-controls-current-time-display, video::-webkit-media-controls-current-time-display):
2865 (audio::-webkit-media-controls-time-remaining-display, video::-webkit-media-controls-time-remaining-display):
2866 (audio::-webkit-media-controls-timeline, video::-webkit-media-controls-timeline):
2867 (audio::-webkit-media-controls-fullscreen-button, video::-webkit-media-controls-fullscreen-button):
2868 (audio::-webkit-media-controls-mute-button, video::-webkit-media-controls-mute-button):
2869 (audio::-webkit-media-controls-volume-slider-container, video::-webkit-media-controls-volume-slider-container):
2870 (audio::-webkit-media-controls-volume-slider, video::-webkit-media-controls-volume-slider):
2871 (audio::-webkit-media-controls-seek-back-button, video::-webkit-media-controls-seek-back-button):
2872 (audio::-webkit-media-controls-seek-forward-button, video::-webkit-media-controls-seek-forward-button):
2873 * css/themeBlackBerry.css: Added.
2876 (input[type="color"]):
2878 (select[size][multiple]):
2879 (select[size][multiple]:focus):
2881 2012-03-21 Levi Weintraub <leviw@chromium.org>
2883 Update LayoutUnit usage in descendants of RenderReplaced
2884 https://bugs.webkit.org/show_bug.cgi?id=80918
2886 Reviewed by Eric Seidel.
2888 Replaced elements have to flow in the new sub-pixel Render Tree, but since the rendering of these
2889 often takes place outside of WebCore (or in cases such as foreign objects, in WebCore after
2890 passing through platform code), care must be taken to determine the final rendered size and
2891 location before render time. This patch brings these classes up to the latest and greatest in the
2892 subpixellayout branch.
2894 See https://trac.webkit.org/wiki/LayoutUnit for more information.
2896 No new tests. No change in behavior.
2898 * rendering/RenderFrameBase.cpp:
2899 (WebCore::RenderFrameBase::layoutWithFlattening): Build Fix.
2900 * rendering/RenderFullScreen.cpp:
2901 (RenderFullScreen::createPlaceholder): Ditto.
2902 * rendering/RenderFullScreen.h:
2903 (RenderFullScreen): Ditto.
2904 * rendering/RenderHTMLCanvas.cpp:
2905 (WebCore::RenderHTMLCanvas::canvasSizeChanged): Ditto.
2906 * rendering/RenderIFrame.cpp:
2907 (WebCore::RenderIFrame::computeLogicalHeight): Ditto.
2908 (WebCore::RenderIFrame::computeLogicalWidth): Ditto.
2909 * rendering/RenderImage.cpp:
2910 (WebCore::RenderImage::updateIntrinsicSizeIfNeeded): Intrinsic sizes are always integers, since they
2911 originate outside of WebCore.
2912 (WebCore::RenderImage::paintIntoRect): Use pixel snapping to paint into an arbitrary rect.
2913 (WebCore::RenderImage::computeReplacedLogicalWidth): Intrinsic size is always integral -- rounding
2915 * rendering/RenderImage.h:
2917 * rendering/RenderVideo.cpp:
2918 (WebCore::RenderVideo::videoBox):
2919 (WebCore::RenderVideo::paintReplaced): Painting at integer boundaries.
2920 * rendering/RenderWidget.cpp:
2922 (WebCore::roundedIntRect): Widgets are rendered outside of WebCore, so we always align them to
2923 integer boundaries. This means we can actually round the size of our ultimate content box. This
2924 function is implemented here specifically to prevent its misuse if we put it elsewhere.
2925 (WebCore::RenderWidget::setWidgetGeometry): We simplify layout by taking a LayoutRect and rounding
2926 it to its final location within this function.
2927 (WebCore::RenderWidget::updateWidgetGeometry): We keep things in LayoutUnits until handing off to
2929 (WebCore::RenderWidget::paint): Rounding the paint location before handing painting off to the
2931 * rendering/RenderWidget.h:
2934 2012-03-21 Ilya Tikhonovsky <loislo@chromium.org>
2936 Web Inspector: HeapProfiler: support distance column in Summary View.
2937 https://bugs.webkit.org/show_bug.cgi?id=81675
2939 In many cases when a page leaked an object we see not only this object
2940 but the all objects it retains. It is quite difficult to find out which
2941 the object is the root of leak. It'd be simpler to sort the leaked
2942 objects by Distance column and track down the first one.
2944 Reviewed by Yury Semikhatsky.
2946 * inspector/front-end/DetailedHeapshotGridNodes.js:
2947 (WebInspector.HeapSnapshotGenericObjectNode):
2948 (WebInspector.HeapSnapshotGenericObjectNode.prototype.get data):
2949 (WebInspector.HeapSnapshotInstanceNode.prototype.comparator):
2950 (WebInspector.HeapSnapshotConstructorNode):
2951 (WebInspector.HeapSnapshotConstructorNode.prototype.comparator):
2952 (WebInspector.HeapSnapshotConstructorNode.prototype.get data):
2953 * inspector/front-end/DetailedHeapshotView.js:
2954 (WebInspector.HeapSnapshotConstructorsDataGrid):
2955 (WebInspector.HeapSnapshotConstructorsDataGrid.prototype._defaultPopulateCount.100._sortFields):
2956 * inspector/front-end/HeapSnapshot.js:
2957 (WebInspector.HeapSnapshotNodesProvider.prototype._serialize):
2959 2012-03-21 Charles Wei <charles.wei@torchmobile.com.cn>
2961 [BlackBerry] Remove redundant code in SocketStreamHandler
2962 https://bugs.webkit.org/show_bug.cgi?id=81726
2964 Reviewed by George Staikos.
2966 No new tests needed. Just remove redundant code.
2968 * platform/network/blackberry/SocketStreamHandle.h:
2969 (SocketStreamHandle):
2970 * platform/network/blackberry/SocketStreamHandleBlackBerry.cpp:
2972 2012-03-20 Eric Seidel <eric@webkit.org>
2974 Move wtf/Platform.h from JavaScriptCore to Source/WTF/wtf
2975 https://bugs.webkit.org/show_bug.cgi?id=80911
2977 Reviewed by Adam Barth.
2980 - Look for headers in Source/WTF as well.
2982 2012-03-20 Dana Jansens <danakj@chromium.org>
2984 [chromium] Use origin transform to transform occlusion from surface content space to its target content space
2985 https://bugs.webkit.org/show_bug.cgi?id=81730
2987 Reviewed by Adrienne Walker.
2989 Unit test: CCOcclusionTrackerTestSurfaceOcclusionTranslatesToParent
2991 * platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
2992 (WebCore::transformSurfaceOpaqueRegion):
2993 (WebCore::::leaveToTargetRenderSurface):
2995 2012-03-19 Shinya Kawanaka <shinyak@chromium.org>
2997 [Crash] RenderMenuList::addChild() in Shadow DOM.
2998 https://bugs.webkit.org/show_bug.cgi?id=81201
3000 Reviewed by Dimitri Glazkov.
3002 <audio>, <video>, <meter>, <progress>, and <select> are implemented using
3003 Shadow DOM having HTMLContentElement. Their renderer children basically should not
3004 create a renderer unless they are on the upper shadow encapsulation boundary,
3005 which means they are the direct children of the shadow root.
3007 However, current implementation allows their renderer children to create a renderer
3008 even if they are on a lower shadow encapsulation boundary, which means
3009 they are distributed elements of HTMLContentElement.
3011 This patch makes there renderer children not to create a renderer if they are on a lower shadow
3012 encapsulation boudary.
3014 Tests: fast/dom/shadow/content-element-in-media-element.html
3015 fast/dom/shadow/content-element-in-meter-element.html
3016 fast/dom/shadow/content-element-in-progress-element.html
3017 fast/dom/shadow/content-element-in-select-element.html
3019 * dom/NodeRenderingContext.h:
3020 (NodeRenderingContext):
3021 (WebCore::NodeRenderingContext::isOnUpperEncapsulationBoundary):
3023 * html/HTMLMediaElement.cpp:
3024 (WebCore::HTMLMediaElement::childShouldCreateRenderer):
3025 * html/HTMLMeterElement.cpp:
3026 (WebCore::HTMLMeterElement::childShouldCreateRenderer):
3027 * html/HTMLProgressElement.cpp:
3028 (WebCore::HTMLProgressElement::childShouldCreateRenderer):
3029 * html/HTMLSelectElement.cpp:
3030 (WebCore::HTMLSelectElement::childShouldCreateRenderer):
3032 2012-03-20 Dana Jansens <danakj@chromium.org>
3034 [chromium] Store origin/screen space transforms for surface and replica in the surface
3035 https://bugs.webkit.org/show_bug.cgi?id=81296
3037 Reviewed by Adrienne Walker.
3039 Compute and save a number of transforms for render surfaces. The origin
3040 tranform for the replica into its target surface. The origin transform
3041 for the replica into the screen. And the origin transform for the surface
3044 These transforms will allow us to detect occlusion of render surfaces,
3045 allowing us to cull (or partially-cull) the render surface quad during
3048 This also fixes a subtle bug in the transforms used by the damage
3051 Unit test: CCLayerTreeHostCommonTest.verifyTransformsForSingleRenderSurface
3052 CCLayerTreeHostCommonTest.verifyTransformsForReplica
3053 CCLayerTreeHostCommonTest.verifyTransformsForRenderSurfaceHierarchy
3055 * platform/graphics/chromium/RenderSurfaceChromium.h:
3056 (WebCore::RenderSurfaceChromium::screenSpaceTransform):
3057 (WebCore::RenderSurfaceChromium::setScreenSpaceTransform):
3058 (RenderSurfaceChromium):
3059 (WebCore::RenderSurfaceChromium::replicaOriginTransform):
3060 (WebCore::RenderSurfaceChromium::setReplicaOriginTransform):
3061 (WebCore::RenderSurfaceChromium::replicaScreenSpaceTransform):
3062 (WebCore::RenderSurfaceChromium::setReplicaScreenSpaceTransform):
3063 * platform/graphics/chromium/cc/CCDamageTracker.cpp:
3064 (WebCore::CCDamageTracker::extendDamageForRenderSurface):
3065 * platform/graphics/chromium/cc/CCLayerTreeHostCommon.cpp:
3066 (WebCore::calculateDrawTransformsAndVisibilityInternal):
3067 * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3068 (WebCore::damageInSurfaceSpace):
3069 * platform/graphics/chromium/cc/CCRenderSurface.h:
3070 (WebCore::CCRenderSurface::setDrawTransform):
3071 (WebCore::CCRenderSurface::drawTransform):
3072 (WebCore::CCRenderSurface::setScreenSpaceTransform):
3073 (WebCore::CCRenderSurface::screenSpaceTransform):
3075 (WebCore::CCRenderSurface::setReplicaDrawTransform):
3076 (WebCore::CCRenderSurface::replicaDrawTransform):
3077 (WebCore::CCRenderSurface::setReplicaOriginTransform):
3078 (WebCore::CCRenderSurface::replicaOriginTransform):
3079 (WebCore::CCRenderSurface::setReplicaScreenSpaceTransform):
3080 (WebCore::CCRenderSurface::replicaScreenSpaceTransform):
3082 2012-03-20 Yoshifumi Inoue <yosin@chromium.org>
3084 [Forms] The option element should not be form associated element.
3085 https://bugs.webkit.org/show_bug.cgi?id=79764
3087 Reviewed by Kent Tamura.
3089 This patch changes base class of HTMLOptionELement to HTMLElement
3090 from HTMLFormControlElement for saving memory space and iteration
3091 time of extra "option" elements in HTMLFormElement::m_formAssociatedElements
3092 and matching the HTML5 specification for ease of maintenance.
3094 This patch changes behavior of handling of CSS pseudo classes "invalid"
3095 and "valid". The "option" elements no longer use these CSS pseudo classes
3096 as HTML5 specification. This bug was filed in https://bugs.webkit.org/show_bug.cgi?id=80088
3098 Changes of TextIterator is lead by usage of isFormControlElement. This
3099 changes will be replaced with more meaningful predicate as part of
3100 https://bugs.webkit.org/show_bug.cgi?id=80381
3102 No new tests but updated select-live-pseudo-selectors.html test.
3104 * css/CSSStyleSelector.cpp:
3105 (WebCore::CSSStyleSelector::canShareStyleWithElement): Added checking of the "option" element and returns false as HTMLFormControlElement.
3106 * css/SelectorChecker.cpp:
3107 (WebCore::SelectorChecker::checkOneSelector): Removed isFormControlElement for PseudoDisabled and PseudoChecked.
3108 * html/HTMLKeygenElement.cpp:
3109 (WebCore::HTMLKeygenElement::HTMLKeygenElement): Removed form parameter of call site of HTMLOptionElement::create.
3110 * html/HTMLOptionElement.cpp:
3111 (WebCore::HTMLOptionElement::HTMLOptionElement): Removed form parameter which no longer needed. Changed base class in initialization list. Added m_disabled initialization.
3112 (WebCore::HTMLOptionElement::create): Removed form parameter which no longer needed.
3113 (WebCore::HTMLOptionElement::attach): Changeid base class.
3114 (WebCore::HTMLOptionElement::detach): Changed base class.
3115 (WebCore::HTMLOptionElement::parseAttribute): Changed base class. Added "disabled" attribute handling.
3116 (WebCore::HTMLOptionElement::childrenChanged): Changed base class.
3117 (WebCore::HTMLOptionElement::insertedIntoTree): Changed base class.
3118 * html/HTMLOptionElement.h:
3119 (HTMLOptionElement): Added new member variable m_disabled which was in HTMLFormControlElement.
3120 (WebCore::HTMLOptionElement::ownElementDisabled): Changed for using m_disabled.
3121 * html/HTMLTagNames.in: Removed constructorNeedsFormElement for the "option" element, which was used for passing form parameter to create function.
3123 2012-03-20 Xiaomei Ji <xji@chromium.org>
3125 Crash introduced in r110965.
3126 https://bugs.webkit.org/show_bug.cgi?id=81720
3128 Reviewed by Ryosuke Niwa.
3130 Since word break iterator just keeps a pointer to the UChar array given to the constructor,
3131 we need to allocate the UChar array deeper in the stack than the iterator.
3133 Test: editing/selection/move-by-word-visually-crash-test-5.html
3135 * editing/visible_units.cpp:
3136 (WebCore::wordBreakIteratorForMinOffsetBoundary):
3137 (WebCore::wordBreakIteratorForMaxOffsetBoundary):
3138 (WebCore::visualWordPosition):
3140 2012-03-20 W. James MacLean <wjmaclean@chromium.org>
3142 [chromium] Convert TouchFlingPlatformGestureCurve to a 2-D Bezier for better control of curve shape.
3143 https://bugs.webkit.org/show_bug.cgi?id=81713
3145 Reviewed by Dirk Pranke.
3147 Exisiting unit test revised to cover this change.
3149 Change the fling gesture animation curve to use a 2-D Bezier to obtain greater control
3150 over the shape of the curve. Also, change time scaling code to be logarithmic for more
3153 * platform/TouchFlingPlatformGestureCurve.cpp:
3154 (WebCore::TouchFlingPlatformGestureCurve::TouchFlingPlatformGestureCurve):
3155 (WebCore::TouchFlingPlatformGestureCurve::apply):
3157 2012-03-18 Tim Horton <timothy_horton@apple.com>
3159 Infinite repaint loop with SVGImageCache and deferred repaint timers
3160 https://bugs.webkit.org/show_bug.cgi?id=78315
3161 <rdar://problem/10651634>
3163 Reviewed by Nikolas Zimmermann.
3165 Only defer image redraw on a timer if we're in layout. This breaks
3166 the repaint loop while still preventing us from drawing inside layout.
3168 Completely disable repaint during relayout inside SVGImage::drawSVGToImageBuffer,
3169 preventing deferred repaint timers from being started during that process.
3171 No new tests, as the problem only occurs in a nonstandard configuration.
3173 * page/FrameView.cpp:
3174 (WebCore::FrameView::FrameView):
3175 (WebCore::FrameView::reset):
3176 (WebCore::FrameView::repaintContentRectangle):
3177 (WebCore::FrameView::endDeferredRepaints):
3178 (WebCore::FrameView::startDeferredRepaintTimer):
3180 (WebCore::FrameView::doDeferredRepaints):
3181 (WebCore::FrameView::deferredRepaintTimerFired):
3182 (WebCore::FrameView::beginDisableRepaints):
3183 (WebCore::FrameView::endDisableRepaints):
3186 (WebCore::FrameView::repaintsDisabled):
3187 * rendering/RenderView.cpp:
3188 (WebCore::RenderView::shouldRepaint):
3189 * svg/graphics/SVGImage.cpp:
3190 (WebCore::SVGImage::drawSVGToImageBuffer):
3191 (WebCore::SVGImage::draw):
3192 (WebCore::SVGImage::frameView):
3194 * svg/graphics/SVGImage.h:
3196 * svg/graphics/SVGImageCache.cpp:
3197 (WebCore::SVGImageCache::imageContentChanged):
3198 (WebCore::SVGImageCache::redraw):
3199 (WebCore::SVGImageCache::redrawTimerFired):
3201 * svg/graphics/SVGImageCache.h:
3204 2012-03-20 Adam Klein <adamk@chromium.org>
3206 Include fix for dom/xhtml test promised in r111449.
3208 * dom/ContainerNode.cpp:
3209 (WebCore::ContainerNode::replaceChild): Check against next instead of
3210 prev when deciding there's no work to do.
3212 2012-03-20 Jon Lee <jonlee@apple.com>
3214 Restrict access to notifications for unique origins and file URLs with no local file access
3215 https://bugs.webkit.org/show_bug.cgi?id=79704
3216 <rdar://problem/10912430>
3218 Reviewed by Adam Barth.
3220 Before checking or requesting permissions, we look at whether we can show notifications based on
3221 the security context. If not, we short circuit and do not forward the request to the client.
3223 * notifications/Notification.cpp:
3224 (WebCore::Notification::Notification): Fix a bug where creating a notification goes through slightly
3225 different logic for checking permissions than when checking permissions through the
3226 notification center.
3227 * notifications/NotificationCenter.cpp:
3228 (WebCore::NotificationCenter::checkPermission): Check to see if the origin can show notifications.
3229 (WebCore::NotificationCenter::requestPermission): If we know whether an origin can show notifications,
3230 we asynchronously call the callback with that decision. Otherwise we ask the client.
3232 Add new variable in the notification center to keep track of pending callbacks when we short-circuit
3233 requestPermission().
3234 * notifications/NotificationCenter.h:
3235 (NotificationRequestCallback): Add new private class encapsulating the callback.
3236 * notifications/NotificationCenter.cpp:
3237 (WebCore::NotificationCenter::requestTimedOut): Remove the request from the set of pending callbacks.
3238 (WebCore::NotificationCenter::NotificationRequest::createAndStartTimer): Because this is used when we already
3239 know the decision, and are not asking the client to decide, we can immediately trigger a one-shot timer
3240 to invoke the callback.
3241 (WebCore::NotificationCenter::NotificationRequest::NotificationRequest):
3242 (WebCore::NotificationCenter::NotificationRequest::startTimer):
3243 (WebCore::NotificationCenter::NotificationRequest::timerFired): Invoke the callback and tell the notification
3245 * page/SecurityOrigin.h: Add new toRawString() method to return the string representation of the origin,
3246 regardless of any restrictions that might otherwise cause toString() to return "null".
3247 * page/SecurityOrigin.cpp:
3248 (WebCore::SecurityOrigin::canShowNotifications): Added to return a tri-state regarding whether we know
3249 the origin can show notifications. If the origin is unique, we never let it show. If the origin has
3250 universal access, we always let it show. Otherwise the client should be asked.
3251 (WebCore::SecurityOrigin::toString): Refactor to use toRawString().
3252 (WebCore::SecurityOrigin::toRawString):
3254 Added FIXME's regarding the naming of enforceFilePathSeparation().
3256 (WebCore::Document::initSecurityContext): Also, tab reformatting.
3258 * WebCore.exp.in: Export toRawString().
3260 2012-03-20 Mark Pilgrim <pilgrim@chromium.org>
3262 Move webaudio to Modules/webaudio/
3263 https://bugs.webkit.org/show_bug.cgi?id=81541
3265 Reviewed by Kentaro Hara.
3267 No new tests, all existing tests pass.
3270 * DerivedSources.make:
3271 * DerivedSources.pri:
3273 * GNUmakefile.list.am:
3274 * Modules/webaudio: Added.
3275 * Modules/webaudio/AsyncAudioDecoder.cpp: Copied from Source/WebCore/webaudio/AsyncAudioDecoder.cpp.
3276 * Modules/webaudio/AsyncAudioDecoder.h: Copied from Source/WebCore/webaudio/AsyncAudioDecoder.h.
3277 * Modules/webaudio/AudioBasicProcessorNode.cpp: Copied from Source/WebCore/webaudio/AudioBasicProcessorNode.cpp.
3278 * Modules/webaudio/AudioBasicProcessorNode.h: Copied from Source/WebCore/webaudio/AudioBasicProcessorNode.h.
3279 * Modules/webaudio/AudioBuffer.cpp: Copied from Source/WebCore/webaudio/AudioBuffer.cpp.
3280 * Modules/webaudio/AudioBuffer.h: Copied from Source/WebCore/webaudio/AudioBuffer.h.
3281 * Modules/webaudio/AudioBuffer.idl: Copied from Source/WebCore/webaudio/AudioBuffer.idl.
3282 * Modules/webaudio/AudioBufferCallback.h: Copied from Source/WebCore/webaudio/AudioBufferCallback.h.
3283 * Modules/webaudio/AudioBufferCallback.idl: Copied from Source/WebCore/webaudio/AudioBufferCallback.idl.
3284 * Modules/webaudio/AudioBufferSourceNode.cpp: Copied from Source/WebCore/webaudio/AudioBufferSourceNode.cpp.
3285 * Modules/webaudio/AudioBufferSourceNode.h: Copied from Source/WebCore/webaudio/AudioBufferSourceNode.h.
3286 * Modules/webaudio/AudioBufferSourceNode.idl: Copied from Source/WebCore/webaudio/AudioBufferSourceNode.idl.
3287 * Modules/webaudio/AudioChannelMerger.cpp: Copied from Source/WebCore/webaudio/AudioChannelMerger.cpp.
3288 * Modules/webaudio/AudioChannelMerger.h: Copied from Source/WebCore/webaudio/AudioChannelMerger.h.
3289 * Modules/webaudio/AudioChannelMerger.idl: Copied from Source/WebCore/webaudio/AudioChannelMerger.idl.
3290 * Modules/webaudio/AudioChannelSplitter.cpp: Copied from Source/WebCore/webaudio/AudioChannelSplitter.cpp.
3291 * Modules/webaudio/AudioChannelSplitter.h: Copied from Source/WebCore/webaudio/AudioChannelSplitter.h.
3292 * Modules/webaudio/AudioChannelSplitter.idl: Copied from Source/WebCore/webaudio/AudioChannelSplitter.idl.
3293 * Modules/webaudio/AudioContext.cpp: Copied from Source/WebCore/webaudio/AudioContext.cpp.
3294 * Modules/webaudio/AudioContext.h: Copied from Source/WebCore/webaudio/AudioContext.h.
3295 * Modules/webaudio/AudioContext.idl: Copied from Source/WebCore/webaudio/AudioContext.idl.
3296 * Modules/webaudio/AudioDestinationNode.cpp: Copied from Source/WebCore/webaudio/AudioDestinationNode.cpp.
3297 * Modules/webaudio/AudioDestinationNode.h: Copied from Source/WebCore/webaudio/AudioDestinationNode.h.
3298 * Modules/webaudio/AudioDestinationNode.idl: Copied from Source/WebCore/webaudio/AudioDestinationNode.idl.
3299 * Modules/webaudio/AudioGain.h: Copied from Source/WebCore/webaudio/AudioGain.h.
3300 * Modules/webaudio/AudioGain.idl: Copied from Source/WebCore/webaudio/AudioGain.idl.
3301 * Modules/webaudio/AudioGainNode.cpp: Copied from Source/WebCore/webaudio/AudioGainNode.cpp.
3302 * Modules/webaudio/AudioGainNode.h: Copied from Source/WebCore/webaudio/AudioGainNode.h.
3303 * Modules/webaudio/AudioGainNode.idl: Copied from Source/WebCore/webaudio/AudioGainNode.idl.
3304 * Modules/webaudio/AudioListener.cpp: Copied from Source/WebCore/webaudio/AudioListener.cpp.
3305 * Modules/webaudio/AudioListener.h: Copied from Source/WebCore/webaudio/AudioListener.h.
3306 * Modules/webaudio/AudioListener.idl: Copied from Source/WebCore/webaudio/AudioListener.idl.
3307 * Modules/webaudio/AudioNode.cpp: Copied from Source/WebCore/webaudio/AudioNode.cpp.
3308 * Modules/webaudio/AudioNode.h: Copied from Source/WebCore/webaudio/AudioNode.h.
3309 * Modules/webaudio/AudioNode.idl: Copied from Source/WebCore/webaudio/AudioNode.idl.
3310 * Modules/webaudio/AudioNodeInput.cpp: Copied from Source/WebCore/webaudio/AudioNodeInput.cpp.
3311 * Modules/webaudio/AudioNodeInput.h: Copied from Source/WebCore/webaudio/AudioNodeInput.h.
3312 * Modules/webaudio/AudioNodeOutput.cpp: Copied from Source/WebCore/webaudio/AudioNodeOutput.cpp.
3313 * Modules/webaudio/AudioNodeOutput.h: Copied from Source/WebCore/webaudio/AudioNodeOutput.h.
3314 * Modules/webaudio/AudioPannerNode.cpp: Copied from Source/WebCore/webaudio/AudioPannerNode.cpp.
3315 * Modules/webaudio/AudioPannerNode.h: Copied from Source/WebCore/webaudio/AudioPannerNode.h.
3316 * Modules/webaudio/AudioPannerNode.idl: Copied from Source/WebCore/webaudio/AudioPannerNode.idl.
3317 * Modules/webaudio/AudioParam.cpp: Copied from Source/WebCore/webaudio/AudioParam.cpp.
3318 * Modules/webaudio/AudioParam.h: Copied from Source/WebCore/webaudio/AudioParam.h.
3319 * Modules/webaudio/AudioParam.idl: Copied from Source/WebCore/webaudio/AudioParam.idl.
3320 * Modules/webaudio/AudioParamTimeline.cpp: Copied from Source/WebCore/webaudio/AudioParamTimeline.cpp.
3321 * Modules/webaudio/AudioParamTimeline.h: Copied from Source/WebCore/webaudio/AudioParamTimeline.h.
3322 * Modules/webaudio/AudioProcessingEvent.cpp: Copied from Source/WebCore/webaudio/AudioProcessingEvent.cpp.
3323 * Modules/webaudio/AudioProcessingEvent.h: Copied from Source/WebCore/webaudio/AudioProcessingEvent.h.
3324 * Modules/webaudio/AudioProcessingEvent.idl: Copied from Source/WebCore/webaudio/AudioProcessingEvent.idl.
3325 * Modules/webaudio/AudioSourceNode.h: Copied from Source/WebCore/webaudio/AudioSourceNode.h.
3326 * Modules/webaudio/AudioSourceNode.idl: Copied from Source/WebCore/webaudio/AudioSourceNode.idl.
3327 * Modules/webaudio/BiquadDSPKernel.cpp: Copied from Source/WebCore/webaudio/BiquadDSPKernel.cpp.
3328 * Modules/webaudio/BiquadDSPKernel.h: Copied from Source/WebCore/webaudio/BiquadDSPKernel.h.
3329 * Modules/webaudio/BiquadFilterNode.cpp: Copied from Source/WebCore/webaudio/BiquadFilterNode.cpp.
3330 * Modules/webaudio/BiquadFilterNode.h: Copied from Source/WebCore/webaudio/BiquadFilterNode.h.
3331 * Modules/webaudio/BiquadFilterNode.idl: Copied from Source/WebCore/webaudio/BiquadFilterNode.idl.
3332 * Modules/webaudio/BiquadProcessor.cpp: Copied from Source/WebCore/webaudio/BiquadProcessor.cpp.
3333 * Modules/webaudio/BiquadProcessor.h: Copied from Source/WebCore/webaudio/BiquadProcessor.h.
3334 * Modules/webaudio/ConvolverNode.cpp: Copied from Source/WebCore/webaudio/ConvolverNode.cpp.
3335 * Modules/webaudio/ConvolverNode.h: Copied from Source/WebCore/webaudio/ConvolverNode.h.
3336 * Modules/webaudio/ConvolverNode.idl: Copied from Source/WebCore/webaudio/ConvolverNode.idl.
3337 * Modules/webaudio/DOMWindowWebAudio.idl: Copied from Source/WebCore/webaudio/DOMWindowWebAudio.idl.
3338 * Modules/webaudio/DefaultAudioDestinationNode.cpp: Copied from Source/WebCore/webaudio/DefaultAudioDestinationNode.cpp.
3339 * Modules/webaudio/DefaultAudioDestinationNode.h: Copied from Source/WebCore/webaudio/DefaultAudioDestinationNode.h.
3340 * Modules/webaudio/DelayDSPKernel.cpp: Copied from Source/WebCore/webaudio/DelayDSPKernel.cpp.
3341 * Modules/webaudio/DelayDSPKernel.h: Copied from Source/WebCore/webaudio/DelayDSPKernel.h.
3342 * Modules/webaudio/DelayNode.cpp: Copied from Source/WebCore/webaudio/DelayNode.cpp.
3343 * Modules/webaudio/DelayNode.h: Copied from Source/WebCore/webaudio/DelayNode.h.
3344 * Modules/webaudio/DelayNode.idl: Copied from Source/WebCore/webaudio/DelayNode.idl.
3345 * Modules/webaudio/DelayProcessor.cpp: Copied from Source/WebCore/webaudio/DelayProcessor.cpp.
3346 * Modules/webaudio/DelayProcessor.h: Copied from Source/WebCore/webaudio/DelayProcessor.h.
3347 * Modules/webaudio/DynamicsCompressorNode.cpp: Copied from Source/WebCore/webaudio/DynamicsCompressorNode.cpp.
3348 * Modules/webaudio/DynamicsCompressorNode.h: Copied from Source/WebCore/webaudio/DynamicsCompressorNode.h.
3349 * Modules/webaudio/DynamicsCompressorNode.idl: Copied from Source/WebCore/webaudio/DynamicsCompressorNode.idl.
3350 * Modules/webaudio/HighPass2FilterNode.cpp: Copied from Source/WebCore/webaudio/HighPass2FilterNode.cpp.
3351 * Modules/webaudio/HighPass2FilterNode.h: Copied from Source/WebCore/webaudio/HighPass2FilterNode.h.
3352 * Modules/webaudio/HighPass2FilterNode.idl: Copied from Source/WebCore/webaudio/HighPass2FilterNode.idl.
3353 * Modules/webaudio/JavaScriptAudioNode.cpp: Copied from Source/WebCore/webaudio/JavaScriptAudioNode.cpp.
3354 * Modules/webaudio/JavaScriptAudioNode.h: Copied from Source/WebCore/webaudio/JavaScriptAudioNode.h.
3355 * Modules/webaudio/JavaScriptAudioNode.idl: Copied from Source/WebCore/webaudio/JavaScriptAudioNode.idl.
3356 * Modules/webaudio/LowPass2FilterNode.cpp: Copied from Source/WebCore/webaudio/LowPass2FilterNode.cpp.
3357 * Modules/webaudio/LowPass2FilterNode.h: Copied from Source/WebCore/webaudio/LowPass2FilterNode.h.
3358 * Modules/webaudio/LowPass2FilterNode.idl: Copied from Source/WebCore/webaudio/LowPass2FilterNode.idl.
3359 * Modules/webaudio/MediaElementAudioSourceNode.cpp: Copied from Source/WebCore/webaudio/MediaElementAudioSourceNode.cpp.
3360 * Modules/webaudio/MediaElementAudioSourceNode.h: Copied from Source/WebCore/webaudio/MediaElementAudioSourceNode.h.
3361 * Modules/webaudio/MediaElementAudioSourceNode.idl: Copied from Source/WebCore/webaudio/MediaElementAudioSourceNode.idl.
3362 * Modules/webaudio/OfflineAudioCompletionEvent.cpp: Copied from Source/WebCore/webaudio/OfflineAudioCompletionEvent.cpp.
3363 * Modules/webaudio/OfflineAudioCompletionEvent.h: Copied from Source/WebCore/webaudio/OfflineAudioCompletionEvent.h.
3364 * Modules/webaudio/OfflineAudioCompletionEvent.idl: Copied from Source/WebCore/webaudio/OfflineAudioCompletionEvent.idl.
3365 * Modules/webaudio/OfflineAudioDestinationNode.cpp: Copied from Source/WebCore/webaudio/OfflineAudioDestinationNode.cpp.
3366 * Modules/webaudio/OfflineAudioDestinationNode.h: Copied from Source/WebCore/webaudio/OfflineAudioDestinationNode.h.
3367 * Modules/webaudio/RealtimeAnalyser.cpp: Copied from Source/WebCore/webaudio/RealtimeAnalyser.cpp.
3368 * Modules/webaudio/RealtimeAnalyser.h: Copied from Source/WebCore/webaudio/RealtimeAnalyser.h.
3369 * Modules/webaudio/RealtimeAnalyserNode.cpp: Copied from Source/WebCore/webaudio/RealtimeAnalyserNode.cpp.
3370 * Modules/webaudio/RealtimeAnalyserNode.h: Copied from Source/WebCore/webaudio/RealtimeAnalyserNode.h.
3371 * Modules/webaudio/RealtimeAnalyserNode.idl: Copied from Source/WebCore/webaudio/RealtimeAnalyserNode.idl.
3372 * Modules/webaudio/WaveShaperDSPKernel.cpp: Copied from Source/WebCore/webaudio/WaveShaperDSPKernel.cpp.
3373 * Modules/webaudio/WaveShaperDSPKernel.h: Copied from Source/WebCore/webaudio/WaveShaperDSPKernel.h.
3374 * Modules/webaudio/WaveShaperNode.cpp: Copied from Source/WebCore/webaudio/WaveShaperNode.cpp.
3375 * Modules/webaudio/WaveShaperNode.h: Copied from Source/WebCore/webaudio/WaveShaperNode.h.
3376 * Modules/webaudio/WaveShaperNode.idl: Copied from Source/WebCore/webaudio/WaveShaperNode.idl.
3377 * Modules/webaudio/WaveShaperProcessor.cpp: Copied from Source/WebCore/webaudio/WaveShaperProcessor.cpp.
3378 * Modules/webaudio/WaveShaperProcessor.h: Copied from Source/WebCore/webaudio/WaveShaperProcessor.h.
3379 * WebCore.gyp/WebCore.gyp:
3382 * WebCore.xcodeproj/project.pbxproj:
3383 * webaudio/AsyncAudioDecoder.cpp: Removed.
3384 * webaudio/AsyncAudioDecoder.h: Removed.
3385 * webaudio/AudioBasicProcessorNode.cpp: Removed.
3386 * webaudio/AudioBasicProcessorNode.h: Removed.
3387 * webaudio/AudioBuffer.cpp: Removed.
3388 * webaudio/AudioBuffer.h: Removed.
3389 * webaudio/AudioBuffer.idl: Removed.
3390 * webaudio/AudioBufferCallback.h: Removed.
3391 * webaudio/AudioBufferCallback.idl: Removed.
3392 * webaudio/AudioBufferSourceNode.cpp: Removed.
3393 * webaudio/AudioBufferSourceNode.h: Removed.
3394 * webaudio/AudioBufferSourceNode.idl: Removed.
3395 * webaudio/AudioChannelMerger.cpp: Removed.
3396 * webaudio/AudioChannelMerger.h: Removed.
3397 * webaudio/AudioChannelMerger.idl: Removed.
3398 * webaudio/AudioChannelSplitter.cpp: Removed.
3399 * webaudio/AudioChannelSplitter.h: Removed.
3400 * webaudio/AudioChannelSplitter.idl: Removed.
3401 * webaudio/AudioContext.cpp: Removed.
3402 * webaudio/AudioContext.h: Removed.
3403 * webaudio/AudioContext.idl: Removed.
3404 * webaudio/AudioDestinationNode.cpp: Removed.
3405 * webaudio/AudioDestinationNode.h: Removed.
3406 * webaudio/AudioDestinationNode.idl: Removed.
3407 * webaudio/AudioGain.h: Removed.
3408 * webaudio/AudioGain.idl: Removed.
3409 * webaudio/AudioGainNode.cpp: Removed.
3410 * webaudio/AudioGainNode.h: Removed.
3411 * webaudio/AudioGainNode.idl: Removed.
3412 * webaudio/AudioListener.cpp: Removed.
3413 * webaudio/AudioListener.h: Removed.
3414 * webaudio/AudioListener.idl: Removed.
3415 * webaudio/AudioNode.cpp: Removed.
3416 * webaudio/AudioNode.h: Removed.
3417 * webaudio/AudioNode.idl: Removed.
3418 * webaudio/AudioNodeInput.cpp: Removed.
3419 * webaudio/AudioNodeInput.h: Removed.
3420 * webaudio/AudioNodeOutput.cpp: Removed.
3421 * webaudio/AudioNodeOutput.h: Removed.
3422 * webaudio/AudioPannerNode.cpp: Removed.
3423 * webaudio/AudioPannerNode.h: Removed.
3424 * webaudio/AudioPannerNode.idl: Removed.
3425 * webaudio/AudioParam.cpp: Removed.
3426 * webaudio/AudioParam.h: Removed.
3427 * webaudio/AudioParam.idl: Removed.