Unreviewed, rolling out r110929.
[WebKit-https.git] / Source / WebCore / ChangeLog
1 2012-03-15  Sheriff Bot  <webkit.review.bot@gmail.com>
2
3         Unreviewed, rolling out r110929.
4         http://trac.webkit.org/changeset/110929
5         https://bugs.webkit.org/show_bug.cgi?id=81306
6
7         breaking webkit_unit_tests (Requested by morrita on #webkit).
8
9         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
10         (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
11         * platform/graphics/chromium/Canvas2DLayerChromium.h:
12         (Canvas2DLayerChromium):
13         * platform/graphics/chromium/ContentLayerChromium.cpp:
14         (WebCore::ContentLayerChromium::paintContentsIfDirty):
15         (WebCore::ContentLayerChromium::idlePaintContentsIfDirty):
16         * platform/graphics/chromium/ContentLayerChromium.h:
17         (WebCore):
18         (ContentLayerChromium):
19         * platform/graphics/chromium/ImageLayerChromium.cpp:
20         (WebCore::ImageLayerChromium::paintContentsIfDirty):
21         * platform/graphics/chromium/ImageLayerChromium.h:
22         (WebCore):
23         (ImageLayerChromium):
24         * platform/graphics/chromium/LayerChromium.h:
25         (WebCore::LayerChromium::paintContentsIfDirty):
26         (WebCore::LayerChromium::idlePaintContentsIfDirty):
27         * platform/graphics/chromium/TiledLayerChromium.cpp:
28         (WebCore):
29         (WebCore::contentToLayerTransform):
30         (WebCore::TiledLayerChromium::prepareToUpdateTiles):
31         (WebCore::TiledLayerChromium::prepareToUpdate):
32         (WebCore::TiledLayerChromium::prepareToUpdateIdle):
33         * platform/graphics/chromium/TiledLayerChromium.h:
34         (WebCore):
35         (TiledLayerChromium):
36         * platform/graphics/chromium/WebGLLayerChromium.cpp:
37         (WebCore::WebGLLayerChromium::paintContentsIfDirty):
38         * platform/graphics/chromium/WebGLLayerChromium.h:
39         (WebGLLayerChromium):
40         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
41         (WebCore::CCLayerTreeHost::paintContentsIfDirty):
42         (WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
43         (WebCore::CCLayerTreeHost::paintLayerContents):
44         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
45
46 2012-03-15  Allan Sandfeld Jensen  <allan.jensen@nokia.com>
47
48         REGRESSION(r106232): The resize handler is always called after loading.
49         https://bugs.webkit.org/show_bug.cgi?id=80242
50
51         Reviewed by Kenneth Rohde Christiansen.
52
53         Ensure resize-events are not emitted when layout-size changes due to added
54         scrollbars. For fixed layout, scrollbars are never subtracted or added, so
55         we can compare fixedLayoutSize directly. For normal layout, use the full
56         visible rect size which is the same as layout size plus scrollbars.
57
58         Test: fast/events/resize-events.html
59
60         * page/FrameView.cpp:
61         (WebCore::FrameView::reset):
62         (WebCore::FrameView::layout):
63         (WebCore::FrameView::performPostLayoutTasks):
64         * page/FrameView.h:
65         (FrameView):
66
67 2012-03-15  Tommy Widenflycht  <tommyw@google.com>
68
69         MediaStream API (JSEP): Introducing MediaHints and IceOptions
70         https://bugs.webkit.org/show_bug.cgi?id=81207
71
72         Reviewed by Adam Barth.
73
74         Patch #4 in a series of patches to change the PeerConnection from ROAP to JSEP,
75         see bug 80589 for more information.
76         Introducing the platform MediaHints and IceOptions helper classes.
77
78         Not possible to test until the entire JSEP feature is commited.
79
80         * GNUmakefile.list.am:
81         * WebCore.gypi:
82         * platform/mediastream/IceOptions.cpp: Added.
83         (WebCore):
84         (WebCore::IceOptions::create):
85         * platform/mediastream/IceOptions.h: Added.
86         (WebCore):
87         (IceOptions):
88         (WebCore::IceOptions::~IceOptions):
89         (WebCore::IceOptions::useCandidates):
90         (WebCore::IceOptions::IceOptions):
91         * platform/mediastream/MediaHints.cpp: Added.
92         (WebCore):
93         (WebCore::MediaHints::create):
94         (WebCore::MediaHints::audio):
95         (WebCore::MediaHints::video):
96         * platform/mediastream/MediaHints.h: Added.
97         (WebCore):
98         (MediaHints):
99         (WebCore::MediaHints::~MediaHints):
100         (WebCore::MediaHints::MediaHints):
101
102 2012-03-15  Shinya Kawanaka  <shinyak@chromium.org>
103
104         [Crash] Adding <content> into a ShadowRoot causes crash.
105         https://bugs.webkit.org/show_bug.cgi?id=80020
106
107         Reviewed by Hajime Morita.
108
109         The problem is <content> tries to select host children though it is not prepared.
110         Since populating host children for insertion points is performed just before
111         attaching a shadow tree, we should recalculate whole shadow tree if <content> is
112         appended as a child.
113
114         However, element->appendChild() does not know the element is in a shadow tree or not.
115         We have to ensure reattaching whole shadow tree here.
116
117         So this patch adds some phases to HTMLContentSelector so that we can check node
118         distribution algorihm is begin processed or not. If not we cannot select anything,
119         but we have to enable a flag to reattach whole shadow tree.
120
121         Tests: fast/dom/shadow/shadow-content-crash-expected.html
122                fast/dom/shadow/shadow-content-crash.html
123
124         * dom/ShadowTree.cpp:
125         (WebCore::ShadowTree::attach):
126         (WebCore::ShadowTree::insertionPointFor):
127         * dom/ShadowTree.h:
128         (WebCore):
129         (ShadowTree):
130         (WebCore::ShadowTree::selector):
131         * html/shadow/HTMLContentSelector.cpp:
132         (WebCore::HTMLContentSelector::HTMLContentSelector):
133         (WebCore::HTMLContentSelector::select):
134         (WebCore::HTMLContentSelector::willSelect):
135         (WebCore):
136         (WebCore::HTMLContentSelector::didSelect):
137         (WebCore::HTMLContentSelector::populateIfNecessary):
138         * html/shadow/HTMLContentSelector.h:
139         (HTMLContentSelector):
140         (WebCore::HTMLContentSelector::isSelecting):
141         (WebCore):
142         (WebCore::HTMLContentSelector::hasPopulated):
143         * html/shadow/InsertionPoint.cpp:
144         (WebCore::InsertionPoint::distributeHostChildren):
145         (WebCore::InsertionPoint::clearDistribution):
146
147 2012-03-15  Mike Lawther  <mikelawther@chromium.org>
148
149         CSS3 calc: mixed percent/absolute expressions for gradients
150         https://bugs.webkit.org/show_bug.cgi?id=81182
151
152         Reviewed by Ojan Vafai.
153
154         * css/CSSGradientValue.cpp:
155         (WebCore::CSSGradientValue::addStops):
156         (WebCore::positionFromValue):
157
158 2012-03-15  Leo Yang  <leo.yang@torchmobile.com.cn>
159
160         [BlackBerry] Sync up MIMETypeRegistry.cpp
161         https://bugs.webkit.org/show_bug.cgi?id=81191
162
163         Reviewed by Rob Buis.
164
165         Add png and jpeg to supportedImageMIMETypesForEncoding for BlackBerry.
166
167         * platform/MIMETypeRegistry.cpp:
168         (WebCore::initializeSupportedImageMIMETypesForEncoding):
169
170 2012-03-15  Dana Jansens  <danakj@chromium.org>
171
172         [chromium] Decide occlusion in paint culling with CCOcclusionTracker
173         https://bugs.webkit.org/show_bug.cgi?id=81181
174
175         Reviewed by Adrienne Walker.
176
177         Plumb a CCOcclusionTracker* around instead of a bare Region, so that it
178         can make a more informed decision if a tile is occluded or not during
179         paint.
180
181         Covered by existing tests.
182
183         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
184         (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
185         * platform/graphics/chromium/Canvas2DLayerChromium.h:
186         (Canvas2DLayerChromium):
187         * platform/graphics/chromium/ContentLayerChromium.cpp:
188         (WebCore::ContentLayerChromium::paintContentsIfDirty):
189         (WebCore::ContentLayerChromium::idlePaintContentsIfDirty):
190         * platform/graphics/chromium/ContentLayerChromium.h:
191         (WebCore):
192         (ContentLayerChromium):
193         * platform/graphics/chromium/ImageLayerChromium.cpp:
194         (WebCore::ImageLayerChromium::paintContentsIfDirty):
195         * platform/graphics/chromium/ImageLayerChromium.h:
196         (WebCore):
197         (ImageLayerChromium):
198         * platform/graphics/chromium/LayerChromium.h:
199         (WebCore::LayerChromium::paintContentsIfDirty):
200         (WebCore::LayerChromium::idlePaintContentsIfDirty):
201         * platform/graphics/chromium/TiledLayerChromium.cpp:
202         (WebCore::TiledLayerChromium::prepareToUpdateTiles):
203         (WebCore::TiledLayerChromium::prepareToUpdate):
204         (WebCore::TiledLayerChromium::prepareToUpdateIdle):
205         * platform/graphics/chromium/TiledLayerChromium.h:
206         (TiledLayerChromium):
207         * platform/graphics/chromium/WebGLLayerChromium.cpp:
208         (WebCore::WebGLLayerChromium::paintContentsIfDirty):
209         * platform/graphics/chromium/WebGLLayerChromium.h:
210         (WebGLLayerChromium):
211         * platform/graphics/chromium/cc/CCLayerTreeHost.cpp:
212         (WebCore::CCLayerTreeHost::paintContentsIfDirty):
213         (WebCore::CCLayerTreeHost::paintMaskAndReplicaForRenderSurface):
214         (WebCore::CCLayerTreeHost::paintLayerContents):
215         * platform/graphics/chromium/cc/CCLayerTreeHost.h:
216
217 2012-03-15  Yoshifumi Inoue  <yosin@chromium.org>
218
219         [Forms] The "meter" element should not be a form-associated element.
220         https://bugs.webkit.org/show_bug.cgi?id=80380
221
222         Reviewed by Kent Tamura.
223
224         This patch changes base class of HTMLMeterElement to LabelableElement from
225         HTMLFormControlElement for saving memory space and iteration time of
226         extra "meter" elements in HTMLFormElement::m_formAssociatedElements
227         and matching the HTML5 specification for ease of maintenance.
228
229         This patch renames isLabelable method to supportLabels and makes isLabelable
230         as predicate of an instance of LabelableElement or not.
231
232         Changes of TextIterator is lead by usage of isFormControlElement. This
233         changes will be replaced with more meaningful predicate as part of
234         https://bugs.webkit.org/show_bug.cgi?id=80381
235
236         No new tests. Update existing tests to cover this change.
237
238         * editing/TextIterator.cpp:
239         (WebCore::TextIterator::advance): Check HTMLMeterElement in addition to isFormControlElement. This change is for text dump in LayoutTests implemented by document.innerText attribute.
240         * html/HTMLButton.h:
241         (WebCore::HTMLButtonElement::supportLabels): Renamed from isLabelable
242         * html/HTMLElement.h:
243         (WebCore::HTMLElement::isLabelable): Added. A predicate for an instance of LabelableElement.
244         * html/HTMLInputElement.h:
245         (WebCore::HTMLInputElement::supportLabels): Renamed from isLabelable
246         * html/HTMLKeygenElement.h:
247         (WebCore::HTMLKeygenElement::supportLabels): Renamed from isLabelable
248          * html/HTMLLabelElement.cpp:
249         (WebCore::nodeAsLabelableElement): Changed to return LabelableElement instead of HTMLFormControlElement.
250         (WebCore::HTMLLabelElement::control): Changed to return LabelableElement instead of HTMLFormControlElement.
251         * html/HTMLLabelElement.h:
252         (HTMLLabelElement):
253         * html/HTMLMeterElement.cpp:
254         (WebCore::HTMLMeterElement::HTMLMeterElement): Changed base class to LabelableElement.
255         (WebCore::HTMLMeterElement::create): Remove form parameter.
256         (WebCore::HTMLMeterElement::formControlType): Remove implementation of virtual method declared in HTMLFormControlElement.
257         (WebCore::HTMLMeterElement::parseAttribute): Replace HTMLFormControlElement to LabelableElement
258         (WebCore::HTMLMeterElement::attach): Replace HTMLFormControlElement to LabelableElement
259         * html/HTMLMeterElement.idl: Remove the "form" attribute which isn't listed in the HTML5 specification.
260         * html/HTMLMeterElement.h:
261         (HTMLMeterElement):
262         (WebCore::HTMLMeterElement::supportLabels): Renamed from isLabelable
263         * html/HTMLOutputElement.h:
264         (WebCore::HTMLOutputElement::supportLabels): Renamed from isLabelable
265         * html/HTMLProgressElement.h:
266         (WebCore::HTMLProgressElement::supportLabels): Renamed from isLabelable
267          * html/HTMLSelectElement.h:
268         (WebCore::HTMLSelectElement::supportLabels): Renamed from isLabelable
269         * html/HTMLTextAreaElement.h:
270         (WebCore::HTMLTextAreaElement::supportLabels): Renamed from isLabelable
271         * html/HiddenInputType.h:
272         (WebCore::HiddenInputType::supportLabels): Renamed from isLabelable
273         * html/InputType.h:
274         (WebCore::InputType::supportLabels): Renamed from isLabelable
275         * html/HTMLTagNames.in: Remove "constructorNeedsFormElement" for not passing "form" parameter in HTMLElementFactory.
276         * html/LabelableElement.cpp:
277         (WebCore::LabelableElement::labels): Replace isLabelable to supportLabels
278         * html/LabelableElement.h:
279         (LabelableElement):
280
281 2012-03-15  Adam Klein  <adamk@chromium.org>
282
283         REGRESSION(r103452): 100% CPU usage and 5s pause after clicking on a link in Yahoo Mail
284         https://bugs.webkit.org/show_bug.cgi?id=81141
285
286         Reviewed by Ojan Vafai.
287
288         Revert the behavior change from r103452: don't fire DOMSubtreeModified
289         events when an attribute value merely changes. Still fire that event
290         when an attribute is added or removed from an element.
291
292         Though this contradicts the DOM3 spec, it matches legacy WebKit behavior,
293         and given that Mutation Events are deprecated, it seems unwise to make
294         any additions to WebKit's implementation of them.
295
296         Test: fast/dom/subtree-modified-attributes.html
297
298         * dom/Element.cpp:
299         (WebCore::Element::didAddAttribute): Renamed from didModifyAttribute.
300         (WebCore::Element::didModifyAttribute): Remove the call to dispatchSubtreeModifiedEvent.
301         (WebCore):
302         * dom/Element.h:
303         (Element):
304         * dom/ElementAttributeData.cpp:
305         (WebCore::ElementAttributeData::addAttribute): Call didAddAttribute instead of didModifyAttribute.
306
307 2012-03-15  Dana Jansens  <danakj@chromium.org>
308
309         [chromium] Move overdraw metrics into a templated class for both paint and draw metrics.
310         https://bugs.webkit.org/show_bug.cgi?id=81156
311
312         Reviewed by Adrienne Walker.
313
314         Creates CCOverdrawMetrics which can be called to inform it about
315         draws/paints. At the end of the frame, the CCOverdrawMetrics
316         recordMetrics() method will put its data into histograms, a
317         TRACE_COUNTER for culling information, and a TRACE_EVENT for details
318         about the number of opaque/translucent pixels.
319
320         Covered by existing tests.
321
322         * WebCore.gypi:
323         * platform/chromium/TraceEvent.h:
324         (TraceEvent):
325         (WebCore::TraceEvent::addTraceEvent):
326         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
327         (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
328         * platform/graphics/chromium/cc/CCOverdrawMetrics.cpp: Added.
329         (WebCore):
330         (WebCore::CCOverdrawMetrics::CCOverdrawMetrics):
331         (WebCore::wedgeProduct):
332         (WebCore::quadArea):
333         (WebCore::CCOverdrawMetrics::didDraw):
334         (WebCore::CCOverdrawMetrics::recordMetrics):
335         (WebCore::CCOverdrawMetrics::recordMetricsInternal):
336         * platform/graphics/chromium/cc/CCOverdrawMetrics.h: Added.
337         (WebCore):
338         (CCOverdrawMetrics):
339         (WebCore::CCOverdrawMetrics::pixelsDrawnOpaque):
340         (WebCore::CCOverdrawMetrics::pixelsDrawnTranslucent):
341         (WebCore::CCOverdrawMetrics::pixelsCulled):
342         * platform/graphics/chromium/cc/CCQuadCuller.cpp:
343         (WebCore::CCQuadCuller::CCQuadCuller):
344         (WebCore::CCQuadCuller::append):
345         * platform/graphics/chromium/cc/CCQuadCuller.h:
346         (WebCore):
347         (CCQuadCuller):
348         * platform/graphics/chromium/cc/CCRenderPass.cpp:
349         (WebCore::CCRenderPass::appendQuadsForLayer):
350         * platform/graphics/chromium/cc/CCRenderPass.h:
351         (WebCore):
352         (CCRenderPass):
353
354 2012-03-15  James Robinson  <jamesr@chromium.org>
355
356         [chromium] RateLimiter should hold a reference to its context
357         https://bugs.webkit.org/show_bug.cgi?id=80761
358
359         Reviewed by Stephen White.
360
361         * platform/graphics/chromium/RateLimiter.h:
362         (RateLimiter):
363
364 2012-03-15  Adam Klein  <adamk@chromium.org>
365
366         Share code in FormAssociatedElement by resetting the form owner whenever insertedIntoTree is called
367         https://bugs.webkit.org/show_bug.cgi?id=81160
368
369         Reviewed by Kent Tamura.
370
371         The only difference between the previous insertedIntoTree method and
372         resetFormOwner was a missing element->inDocument() check in the
373         former. But that check is actually important, as seen by the included test case.
374
375         Test: fast/forms/form-attribute-not-in-document.html
376
377         * html/FormAssociatedElement.cpp:
378         (WebCore::FormAssociatedElement::insertedIntoTree):
379
380 2012-03-15  Kentaro Hara  <haraken@chromium.org>
381
382         [Refactoring] Rename StringBuilder variables in MarkupAccumulator.{h,cpp}
383         https://bugs.webkit.org/show_bug.cgi?id=81288
384
385         Reviewed by Adam Barth.
386
387         This is a refactoring for fixing bug 81214. Currently MarkupAccumulator mixes
388         'out' and 'result' for variable names of StringBuilder. This patch unifies them
389         to 'result'.
390
391         No tests. No change in behavior.
392
393         * editing/MarkupAccumulator.cpp: Renamed 'out' to 'result'.
394         (WebCore::appendCharactersReplacingEntities):
395         (WebCore::MarkupAccumulator::serializeNodes): Renamed 'node' to 'targetNode' for clarification
396         (and for avoiding style check error in MarkupAccumulator.h).
397         (WebCore::MarkupAccumulator::concatenateMarkup):
398         (WebCore::MarkupAccumulator::appendNodeValue):
399         (WebCore::MarkupAccumulator::shouldAddNamespaceAttribute):
400         (WebCore::MarkupAccumulator::appendNamespace):
401         (WebCore::MarkupAccumulator::entityMaskForText):
402         (WebCore::MarkupAccumulator::appendText):
403         (WebCore::MarkupAccumulator::appendComment):
404         (WebCore::MarkupAccumulator::appendProcessingInstruction):
405         (WebCore::MarkupAccumulator::appendElement):
406         (WebCore::MarkupAccumulator::appendOpenTag):
407         (WebCore::MarkupAccumulator::appendCloseTag):
408         (WebCore::MarkupAccumulator::appendAttribute):
409         (WebCore::MarkupAccumulator::appendCDATASection):
410         (WebCore::MarkupAccumulator::elementCannotHaveEndTag):
411         * editing/MarkupAccumulator.h: Removed redundant variable names.
412         (MarkupAccumulator):
413         (WebCore):
414
415 2012-03-15  Brent Fulgham  <bfulgham@webkit.org>
416
417         [WinCairo] Correct <wtf/*.h> include paths.
418         https://bugs.webkit.org/show_bug.cgi?id=81278
419
420         Reviewed by Eric Seidel.
421
422         Modify the #include declarations for several Cairo-related files
423         so that the wtf types are included using the full path.
424
425         * platform/graphics/FontPlatformData.h:
426         * platform/graphics/cairo/OwnPtrCairo.h:
427         * platform/graphics/cairo/RefPtrCairo.h:
428
429 2012-03-15  Anders Carlsson  <andersca@apple.com>
430
431         only some tiles rendered when zoomed in
432         https://bugs.webkit.org/show_bug.cgi?id=81282
433         <rdar://problem/11058898>
434
435         Reviewed by Andreas Kling.
436
437         * platform/graphics/ca/mac/TileCache.mm:
438         (WebCore::TileCache::rectForTileIndex):
439         Make sure that the tile cache bounds are scaled accordingly.
440
441 2012-03-15  Zeno Albisser  <zeno@webkit.org>
442
443         [Qt] RenderThemeQt::fileListNameForWidth should override function in base class RenderTheme. (r110560)
444         https://bugs.webkit.org/show_bug.cgi?id=81107
445
446         Add "bool multipleFilesAllowed" to the parameter list of RenderThemeQt::fileListNameForWidth.
447         This way the base class function is properly overridden.
448         The need for this change became obvious after r110560 where the OVERRIDE keyword had been
449         added to the function signature.
450
451         Reviewed by Simon Hausmann.
452
453         * platform/qt/RenderThemeQt.cpp:
454         (WebCore::RenderThemeQt::fileListNameForWidth):
455         * platform/qt/RenderThemeQt.h:
456         (RenderThemeQt):
457
458 2012-03-07  Jon Lee  <jonlee@apple.com>
459
460         Move NotificationContents into Notification
461         https://bugs.webkit.org/show_bug.cgi?id=80487
462         <rdar://problem/10965519>
463
464         Reviewed by Jian Li.
465
466         * notifications/Notification.cpp: Alter signature of constructor to take the fields directly instead of
467         a NotificationContents instance.
468         (WebCore::Notification::Notification): Derive KURL from string representation of icon.
469         (WebCore::Notification::create):
470         * notifications/Notification.h:
471         (Notification): Remove contents() accessor and replace with get for title and body. iconURL()
472         already existed, but use local variable instead of going through NotificationContents.
473         (WebCore::Notification::iconURL):
474         (WebCore::Notification::title):
475         (WebCore::Notification::body):
476         * notifications/NotificationCenter.h:
477         (WebCore::NotificationCenter::createNotification): Refactor to use new constructor.
478         * notifications/NotificationContents.h: Removed.
479
480         Remove NotificationContents.h from project files
481         * GNUmakefile.list.am:
482         * Target.pri:
483         * WebCore.gypi:
484         * WebCore.vcproj/WebCore.vcproj:
485         * WebCore.xcodeproj/project.pbxproj:
486
487 2012-03-13  Jon Lee  <jonlee@apple.com>
488
489         Deprecate ondisplay()
490         https://bugs.webkit.org/show_bug.cgi?id=80483
491         <rdar://problem/10912432>
492
493         Reviewed by Jian Li.
494
495         The appropriate event listener for notifications is onshow().
496
497         * notifications/Notification.h: Wrap ondisplay in ENABLE(LEGACY_NOTIFICATIONS).
498         * notifications/Notification.idl: Wrap ondisplay in ENABLE_LEGACY_NOTIFICATIONS.
499
500 2012-03-14  W. James MacLean  <wjmaclean@chromium.org>
501
502         [chromium] Wire up PlatformGestureCurves for CC, ScrollAnimatorNone.
503         https://bugs.webkit.org/show_bug.cgi?id=80607
504
505         Reviewed by James Robinson.
506
507         Unit tests added. Layout tests to follow.
508
509         Provides implementation of PlatformGestureCurves in Chrome Compositor, and basic
510         support in ScrollAnimatorNone, for fling gestures.
511
512         * GNUmakefile.list.am:
513         * platform/ActivePlatformGestureAnimation.cpp:
514         (WebCore::ActivePlatformGestureAnimation::create):
515         (WebCore::ActivePlatformGestureAnimation::ActivePlatformGestureAnimation):
516         (WebCore::ActivePlatformGestureAnimation::animate):
517         * platform/ActivePlatformGestureAnimation.h:
518         (ActivePlatformGestureAnimation):
519         * platform/PlatformGestureCurveTarget.h:
520         (PlatformGestureCurveTarget):
521         * platform/ScrollAnimatorNone.cpp:
522         (WebCore::ScrollAnimatorNone::cancelAnimations):
523         (WebCore::ScrollAnimatorNone::animationTimerFired):
524         (WebCore::ScrollAnimatorNone::scrollBy):
525         (WebCore):
526         * platform/ScrollAnimatorNone.h:
527         (WebCore):
528         (ScrollAnimatorNone):
529         * platform/TouchFlingPlatformGestureCurve.cpp:
530         (WebCore::TouchFlingPlatformGestureCurve::apply):
531         * platform/WheelFlingPlatformGestureCurve.cpp:
532         (WebCore::WheelFlingPlatformGestureCurve::apply):
533         * platform/graphics/chromium/cc/CCActiveGestureAnimation.cpp:
534         (WebCore::CCActiveGestureAnimation::create):
535         (WebCore::CCActiveGestureAnimation::CCActiveGestureAnimation):
536         (WebCore::CCActiveGestureAnimation::animate):
537         * platform/graphics/chromium/cc/CCActiveGestureAnimation.h:
538         (CCActiveGestureAnimation):
539         * platform/graphics/chromium/cc/CCGestureCurve.h:
540         (CCGestureCurveTarget):
541         * platform/graphics/chromium/cc/CCInputHandler.h:
542         (WebCore):
543         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
544         (WebCore::CCLayerTreeHostImpl::animate):
545         (WebCore::CCLayerTreeHostImpl::setActiveGestureAnimation):
546         (WebCore):
547         (WebCore::CCLayerTreeHostImpl::animateGestures):
548         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
549         (WebCore):
550         (WebCore::CCLayerTreeHostImpl::activeGestureAnimation):
551         (CCLayerTreeHostImpl):
552
553 2012-03-15  Patrick Gansterer  <paroga@webkit.org>
554
555         [EFL] Make zlib a general build requirement
556         https://bugs.webkit.org/show_bug.cgi?id=80153
557
558         Reviewed by Hajime Morita.
559
560         After r109538 WebSocket module needs zlib to support deflate-frame extension.
561
562         * PlatformEfl.cmake:
563
564 2012-03-15  Robert Kroeger  <rjkroege@chromium.org>
565
566         REGRESSION (r110371): broke platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html
567         https://bugs.webkit.org/show_bug.cgi?id=80825
568
569         Reviewed by James Robinson.
570
571         * page/EventHandler.cpp:
572         (WebCore::EventHandler::handleWheelEvent): Corrected a typo.
573
574 2012-03-15  Scott Byer  <scottbyer@chromium.org>
575
576         Fix crbug 117957 - get settings scrolling with the wheel again.
577         https://bugs.webkit.org/show_bug.cgi?id=81247
578
579         Reviewed by James Robinson.
580
581         Tests to follow.
582
583         * page/FrameView.cpp:
584         (WebCore::FrameView::serviceScriptedAnimations):
585
586 2012-03-15  David Hyatt  <hyatt@apple.com>
587
588         https://bugs.webkit.org/show_bug.cgi?id=81258
589
590         Add a preference for enabling the new multi-column layout code that will be based on regions.
591
592         Reviewed by Beth Dakin.
593
594         * page/Settings.cpp:
595         (WebCore::Settings::Settings):
596         * page/Settings.h:
597         (WebCore::Settings::setRegionBasedColumnsEnabled):
598         (WebCore::Settings::regionBasedColumnsEnabled):
599         (Settings):
600
601 2012-03-15  Andreas Kling  <kling@webkit.org>
602
603         RenderStyle: Return Color objects by value instead of as const references.
604         <http://webkit.org/b/81180>
605
606         Reviewed by Antti Koivisto.
607
608         Make RenderStyle getters return "Color" rather than "const Color&". This is preparation
609         for storing some color values in a more space-efficient fashion.
610
611         * css/CSSStyleApplyProperty.cpp:
612         (WebCore::ApplyPropertyColor::applyInheritValue):
613         * page/animation/AnimationBase.cpp:
614         (PropertyWrapperColor):
615         (WebCore::PropertyWrapperColor::PropertyWrapperColor):
616         (WebCore::PropertyWrapperColor::blend):
617         (WebCore::PropertyWrapperMaybeInvalidColor::PropertyWrapperMaybeInvalidColor):
618         (PropertyWrapperMaybeInvalidColor):
619         (WebCore::PropertyWrapperVisitedAffectedColor::PropertyWrapperVisitedAffectedColor):
620         (WebCore::PropertyWrapperSVGPaint::PropertyWrapperSVGPaint):
621         (PropertyWrapperSVGPaint):
622         * platform/graphics/Color.h:
623         (WebCore::Color::Color):
624         * rendering/style/RenderStyle.h:
625
626 2012-03-15  Jessie Berlin  <jberlin@apple.com>
627
628         Assertion failures in WebCore::Page::goBackOrForward causing multiple "crashes" on Lion Intel
629         Debug WebKit2 testers
630         https://bugs.webkit.org/show_bug.cgi?id=81159
631
632         Rubber-stamped by Brady Eidson.
633
634         It is plausible that history could change in between the time a navigation request is
635         scheduled and the timer is fired, so the request index could be out of the b/f list range.
636         Hence, the assertion is invalid and should be removed.
637
638         * page/Page.cpp:
639         (WebCore::Page::goBackOrForward):
640
641 2012-03-15  Alexey Proskuryakov  <ap@apple.com>
642
643         Assertion failures in checkEncodedString when running WebKit2 tests
644         https://bugs.webkit.org/show_bug.cgi?id=67425
645         <rdar://problem/11043492>
646
647         Reviewed by Anders Carlsson.
648
649         * platform/network/cf/ResourceErrorCF.cpp: (WebCore::ResourceError::cfError):
650         * platform/network/mac/ResourceErrorMac.mm: (WebCore::ResourceError::nsError):
651         The failing URL is certainly not guaranteed to be valid, so it's not correct to put it back
652         into a URL as if it's been normalized by KURL.
653
654 2012-03-15  Brady Eidson  <beidson@apple.com>
655
656         <rdar://problem/11036900> and https://bugs.webkit.org/show_bug.cgi?id=81079
657         REGRESSION(r107844): Clipboard API only remembers most recent data set on clipboard
658
659         Reviewed by Sam Weinig.
660
661         Test: editing/pasteboard/copy-two-pasteboard-types-both-work.html
662
663         Add the non-destructive "addTypes" to supplement the destructive "setTypes"
664         * platform/PasteboardStrategy.h:
665         (PasteboardStrategy):
666         * platform/PlatformPasteboard.h:
667         (PlatformPasteboard):
668         * platform/mac/PlatformPasteboardMac.mm:
669         (WebCore::PlatformPasteboard::addTypes):
670         * WebCore.exp.in:
671
672         * platform/mac/ClipboardMac.mm:
673         (WebCore::ClipboardMac::setData): Call the non-destructive "addTypes" instead of
674           the destructive "setTypes"
675
676 2012-03-15  Dana Jansens  <danakj@chromium.org>
677
678         [Chromium] REGRESSION(r110596) CCQuadCullerTest.verifyCullChildLinesUpTopLeft fails on Windows
679         https://bugs.webkit.org/show_bug.cgi?id=81083
680
681         Reviewed by Adrienne Walker.
682
683         The surface pointer on the occlusion tracker stack is uninitialized, and
684         can be non-null, but the layer's target surface is null, causing asserts
685         to fail. Fixes the TestCCOcclusionTrackerImpl to initialize the stack's
686         surface to be null.
687
688         * platform/graphics/chromium/cc/CCOcclusionTracker.cpp:
689         (WebCore::::enterTargetRenderSurface):
690         (WebCore::::unoccludedContentRect):
691         * platform/graphics/chromium/cc/CCOcclusionTracker.h:
692         (WebCore::CCOcclusionTrackerBase::StackObject::StackObject):
693
694 2012-03-15  David Levin  <levin@chromium.org>
695
696         Various autoresize fixes.
697         https://bugs.webkit.org/show_bug.cgi?id=81199
698
699         Reviewed by Darin Fisher.
700
701         Tested by WebViewTest additions.
702
703         * page/FrameView.cpp:
704         (WebCore::FrameView::autoSizeIfEnabled): Fixed a bug that caused a horizontal
705         scrollbar to appear when the size was width was fixed and height overflowed which
706         is one of the tests that was added.
707
708 2012-03-15  Andrey Kosyakov  <caseq@chromium.org>
709
710         Web Inspector: normalize vertical overview bars by longest bar, not by longest frame
711         https://bugs.webkit.org/show_bug.cgi?id=81231
712
713         Reviewed by Vsevolod Vlasov.
714
715         * inspector/front-end/TimelineOverviewPane.js:
716         (WebInspector.TimelineOverviewPane):
717         (WebInspector.TimelineOverviewPane.prototype.reset):
718         (WebInspector.TimelineOverviewPane.prototype.accept):
719         (WebInspector.TimelineOverviewPane.prototype.windowEndTime):
720         (WebInspector.TimelineVerticalOverview.prototype.reset):
721         (WebInspector.TimelineVerticalOverview.prototype.update):
722         (WebInspector.TimelineVerticalOverview.prototype._aggregateFrames):
723         (WebInspector.TimelineVerticalOverview.prototype._aggregateRecords):
724         (WebInspector.TimelineVerticalOverview.prototype.getWindowTimes):
725
726 2012-03-15  Andrey Kosyakov  <caseq@chromium.org>
727
728         Web Inspector: crash in InspectorTimelineAgent when trying to add children to cancelable records
729         https://bugs.webkit.org/show_bug.cgi?id=81245
730
731         Reviewed by Vsevolod Vlasov.
732
733         * inspector/InspectorTimelineAgent.cpp:
734         (WebCore::InspectorTimelineAgent::addRecordToTimeline):
735         (WebCore):
736         (WebCore::InspectorTimelineAgent::innerAddRecordToTimeline):
737         (WebCore::InspectorTimelineAgent::appendRecord):
738         (WebCore::InspectorTimelineAgent::commitCancelableRecords):
739         * inspector/InspectorTimelineAgent.h:
740         (InspectorTimelineAgent):
741
742 2012-03-15  Pavel Podivilov  <podivilov@chromium.org>
743
744         Web Inspector: live locations could be disposed twice.
745         https://bugs.webkit.org/show_bug.cgi?id=81249
746
747         Reviewed by Vsevolod Vlasov.
748
749         * inspector/front-end/ScriptMapping.js:
750         (WebInspector.MainScriptMapping.prototype._unregisterLiveLocation):
751
752 2012-03-15  Carlos Garcia Campos  <cgarcia@igalia.com>
753
754         [GTK] Implement unicode submenu items
755         https://bugs.webkit.org/show_bug.cgi?id=81117
756
757         Reviewed by Martin Robinson.
758
759         * loader/EmptyClients.h:
760         (WebCore::EmptyEditorClient::shouldShowUnicodeMenu): Just return
761         false.
762         * page/ContextMenuController.cpp:
763         (WebCore::insertUnicodeCharacter): Helper function to insert a
764         unicode character.
765         (WebCore::ContextMenuController::contextMenuItemSelected):
766         Implement unicode menu items using insertUnicodeCharacter() to
767         insert the apropriate unicode character.
768         (WebCore::ContextMenuController::createAndAppendUnicodeSubMenu):
769         Create the unicode submenu.
770         (WebCore::ContextMenuController::populate): Add unicode submenu
771         item for editable content.
772         (WebCore::ContextMenuController::checkOrEnableIfNeeded): Add
773         unicode submenu items to the switch.
774         * page/ContextMenuController.h:
775         * page/EditorClient.h:
776         (EditorClient): Add shouldShowUnicodeMenu() for GTK platform.
777         * platform/ContextMenuItem.h:
778         * platform/LocalizedStrings.h:
779         * platform/gtk/LocalizedStringsGtk.cpp:
780         (WebCore::contextMenuItemTagUnicodeInsertLRMMark): Add localized
781         string for the unicode menu item.
782         (WebCore::contextMenuItemTagUnicodeInsertRLMMark): Ditto.
783         (WebCore::contextMenuItemTagUnicodeInsertLREMark): Ditto.
784         (WebCore::contextMenuItemTagUnicodeInsertRLEMark): Ditto.
785         (WebCore::contextMenuItemTagUnicodeInsertLROMark): Ditto.
786         (WebCore::contextMenuItemTagUnicodeInsertRLOMark): Ditto.
787         (WebCore::contextMenuItemTagUnicodeInsertPDFMark): Ditto.
788         (WebCore::contextMenuItemTagUnicodeInsertZWSMark): Ditto.
789         (WebCore::contextMenuItemTagUnicodeInsertZWJMark): Ditto.
790         (WebCore::contextMenuItemTagUnicodeInsertZWNJMark): Ditto.
791
792 2012-03-15  Vsevolod Vlasov  <vsevik@chromium.org>
793
794         Web Inspector: MainScriptMapping should detect snippet scripts by means of sourceURL set before evaluation.
795         https://bugs.webkit.org/show_bug.cgi?id=81031
796
797         Reviewed by Pavel Feldman.
798
799         * inspector/front-end/SnippetsModel.js:
800         (WebInspector.SnippetsModel):
801         (WebInspector.SnippetsModel.prototype._saveSettings):
802         (WebInspector.SnippetsModel.prototype.deleteSnippet):
803         (WebInspector.SnippetsModel.prototype._snippetAdded):
804         (WebInspector.SnippetsModel.prototype._sourceURLForSnippet):
805         (WebInspector.SnippetsModel.prototype.snippetIdForSourceURL):
806         (WebInspector.SnippetsModel.prototype.snippetForSourceURL):
807         (WebInspector.Snippet.prototype.evaluate):
808         (WebInspector.SnippetsScriptMapping):
809         (WebInspector.SnippetsScriptMapping.prototype.uiLocationToRawLocation.get if):
810         (WebInspector.SnippetsScriptMapping.prototype.uiLocationToRawLocation):
811         (WebInspector.SnippetsScriptMapping.prototype._releasedUISourceCodes):
812         (WebInspector.SnippetsScriptMapping.prototype._snippetAdded):
813         (WebInspector.SnippetsScriptMapping.prototype._snippetWillBeEvaluated):
814         (WebInspector.SnippetsScriptMapping.prototype._snippetRemoved.get this):
815         (WebInspector.SnippetsScriptMapping.prototype._snippetRemoved):
816
817 2012-03-15  Kevin Ollivier  <kevino@theolliviers.com>
818
819         [wx] Unreviewed. Build fixes for Mac and DOM bindings.
820
821         * bindings/cpp/WebDOMEventTarget.cpp:
822         (toWebKit):
823         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
824         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText):
825
826 2012-03-14  Pavel Podivilov  <podivilov@chromium.org>
827
828         Web Inspector: extract CompilerScriptMapping from RawSourceCode.
829         https://bugs.webkit.org/show_bug.cgi?id=81088
830
831         Reviewed by Vsevolod Vlasov.
832
833         * WebCore.gypi:
834         * WebCore.vcproj/WebCore.vcproj:
835         * inspector/compile-front-end.py:
836         * inspector/front-end/CompilerScriptMapping.js: Added.
837         (WebInspector.CompilerScriptMapping):
838         (WebInspector.CompilerScriptMapping.prototype.rawLocationToUILocation):
839         (WebInspector.CompilerScriptMapping.prototype.get uiSourceCodeList):
840         (WebInspector.CompilerScriptMapping.prototype.addScript.get this):
841         (WebInspector.CompilerScriptMapping.prototype.addScript):
842         (WebInspector.CompilerScriptMapping.prototype.loadSourceMapForScript):
843         (WebInspector.CompilerScriptMapping.prototype.reset):
844         * inspector/front-end/RawSourceCode.js:
845         (WebInspector.RawSourceCode):
846         (WebInspector.RawSourceCode.prototype.setFormatted):
847         (WebInspector.RawSourceCode.prototype._resourceFinished):
848         (WebInspector.RawSourceCode.prototype._createUISourceCode):
849         (WebInspector.RawSourceCode.FormattedSourceMapping.prototype.rawLocationToUILocation):
850         * inspector/front-end/ResourceScriptMapping.js:
851         (WebInspector.ResourceScriptMapping.prototype.addScript):
852         * inspector/front-end/ScriptMapping.js:
853         (WebInspector.MainScriptMapping):
854         * inspector/front-end/WebKit.qrc:
855         * inspector/front-end/inspector.html:
856
857 2012-03-15  Peter Rybin  <peter.rybin@gmail.com>
858
859         Web Inspector: Move all includes behind ENABLE(INSPECTOR) guards
860         https://bugs.webkit.org/show_bug.cgi?id=81132
861
862         Reviewed by Yury Semikhatsky.
863
864         Include directives are moved several lines down in .cpp files and in
865         generator templates.
866
867         * inspector/CodeGeneratorInspector.py:
868         * inspector/ContentSearchUtils.cpp:
869         * inspector/DOMEditor.cpp:
870         * inspector/DOMNodeHighlighter.cpp:
871         * inspector/DOMPatchSupport.cpp:
872         * inspector/IdentifiersFactory.cpp:
873         * inspector/InjectedScript.cpp:
874         * inspector/InjectedScriptHost.cpp:
875         * inspector/InjectedScriptManager.cpp:
876         * inspector/InspectorAgent.cpp:
877         * inspector/InspectorApplicationCacheAgent.cpp:
878         * inspector/InspectorBaseAgent.cpp:
879         * inspector/InspectorCSSAgent.cpp:
880         * inspector/InspectorClient.cpp:
881         * inspector/InspectorConsoleAgent.cpp:
882         * inspector/InspectorController.cpp:
883         * inspector/InspectorCounters.cpp:
884         * inspector/InspectorDOMAgent.cpp:
885         * inspector/InspectorDOMDebuggerAgent.cpp:
886         * inspector/InspectorDOMStorageAgent.cpp:
887         * inspector/InspectorDatabaseAgent.cpp:
888         * inspector/InspectorDatabaseResource.cpp:
889         * inspector/InspectorDebuggerAgent.cpp:
890         * inspector/InspectorFileSystemAgent.cpp:
891         * inspector/InspectorFrontendClientLocal.cpp:
892         * inspector/InspectorFrontendHost.cpp:
893         * inspector/InspectorHistory.cpp:
894         * inspector/InspectorIndexedDBAgent.cpp:
895         * inspector/InspectorInstrumentation.cpp:
896         * inspector/InspectorMemoryAgent.cpp:
897         * inspector/InspectorPageAgent.cpp:
898         * inspector/InspectorProfilerAgent.cpp:
899         * inspector/InspectorResourceAgent.cpp:
900         * inspector/InspectorRuntimeAgent.cpp:
901         * inspector/InspectorState.cpp:
902         * inspector/InspectorStyleSheet.cpp:
903         * inspector/InspectorStyleTextEditor.cpp:
904         * inspector/InspectorTimelineAgent.cpp:
905         * inspector/InspectorValues.cpp:
906         * inspector/InstrumentingAgents.cpp:
907         * inspector/NetworkResourcesData.cpp:
908         * inspector/PageConsoleAgent.cpp:
909         * inspector/PageDebuggerAgent.cpp:
910         * inspector/PageRuntimeAgent.cpp:
911         * inspector/TimelineRecordFactory.cpp:
912         * inspector/WorkerConsoleAgent.cpp:
913         * inspector/WorkerDebuggerAgent.cpp:
914         * inspector/WorkerRuntimeAgent.cpp:
915
916 2012-03-15  Yury Semikhatsky  <yurys@chromium.org>
917
918         Web Inspector: improve HeapSnapshot._buildReversIndex performance
919         https://bugs.webkit.org/show_bug.cgi?id=81224
920
921         Caching node indexes and node count in local variables instead of
922         calling getters each time reduces the method run time by
923         factor of 1.5
924
925         Reviewed by Pavel Feldman.
926
927         * inspector/front-end/HeapSnapshot.js:
928         (WebInspector.HeapSnapshot.prototype._buildReverseIndex):
929
930 2012-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>
931
932         SVG Animations update baseVal instead of animVal
933         https://bugs.webkit.org/show_bug.cgi?id=12437
934
935         Rubber-stamped by Rob Buis.
936
937         Rename constructFromCopy to constructFromVariant, and currentBaseValue to currentBaseValueVariant, to clarify what it actually does.
938
939         * svg/SVGAnimateElement.cpp:
940         (WebCore::SVGAnimateElement::resetToBaseValue):
941         * svg/SVGAnimatedLength.cpp:
942         (WebCore::SVGAnimatedLengthAnimator::constructFromVariant):
943         * svg/SVGAnimatedLength.h:
944         (SVGAnimatedLengthAnimator):
945         * svg/SVGAnimatedLengthList.cpp:
946         (WebCore::SVGAnimatedLengthListAnimator::constructFromVariant):
947         * svg/SVGAnimatedLengthList.h:
948         (SVGAnimatedLengthListAnimator):
949         * svg/SVGAnimatedNumber.cpp:
950         (WebCore::SVGAnimatedNumberAnimator::constructFromVariant):
951         * svg/SVGAnimatedNumber.h:
952         (SVGAnimatedNumberAnimator):
953         * svg/SVGAnimatedNumberList.cpp:
954         (WebCore::SVGAnimatedNumberListAnimator::constructFromVariant):
955         * svg/SVGAnimatedNumberList.h:
956         (SVGAnimatedNumberListAnimator):
957         * svg/SVGAnimatedTransformList.cpp:
958         (WebCore::SVGAnimatedTransformListAnimator::constructFromVariant):
959         * svg/SVGAnimatedTransformList.h:
960         (SVGAnimatedTransformListAnimator):
961         * svg/SVGAnimatedTypeAnimator.h:
962         (WebCore::SVGAnimatedTypeAnimator::constructFromVariant):
963         * svg/properties/SVGAnimatedListPropertyTearOff.h:
964         (WebCore::SVGAnimatedListPropertyTearOff::currentBaseValueVariant):
965         * svg/properties/SVGAnimatedProperty.h:
966         (SVGAnimatedProperty):
967         * svg/properties/SVGAnimatedPropertyTearOff.h:
968         (WebCore::SVGAnimatedPropertyTearOff::currentBaseValueVariant):
969         * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
970         (WebCore::SVGAnimatedStaticPropertyTearOff::currentBaseValueVariant):
971
972 2012-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>
973
974         Enable animVal support for SVGNumberList
975         https://bugs.webkit.org/show_bug.cgi?id=81219
976
977         Reviewed by Rob Buis.
978
979         Enable animVal support for SVGNumberList. Easy patch, we just need to add the missing
980         constructFromCopy() method to SVGAnumatedNumberListAnimator and report AnimatedNumberList
981         as supporting animVal.
982
983         Covered by existing tests.
984
985         * svg/SVGAnimatedNumberList.cpp:
986         (WebCore::SVGAnimatedNumberListAnimator::constructFromCopy):
987         (WebCore):
988         * svg/SVGAnimatedNumberList.h:
989         (WebCore):
990         (SVGAnimatedNumberListAnimator):
991         * svg/SVGAnimatedType.cpp:
992         (WebCore::SVGAnimatedType::supportsAnimVal):
993         (WebCore::SVGAnimatedType::setVariantValue):
994
995 2012-03-15  Rob Buis  <rbuis@rim.com>
996
997         Fix cast-align GCC warnings
998         https://bugs.webkit.org/show_bug.cgi?id=80790
999
1000         Reviewed by Nikolas Zimmermann.
1001
1002         * platform/graphics/WOFFFileFormat.cpp:
1003         (WebCore::writeUInt32):
1004         (WebCore::writeUInt16):
1005         (WebCore::convertWOFFToSfnt):
1006
1007 2012-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>
1008
1009         Not reviewed. Forgot to preserve copyrights, per reviewer comment.
1010
1011         * svg/SVGAnimatedTransformList.cpp:
1012
1013 2012-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>
1014
1015         Enable animVal support for SVGNumber
1016         https://bugs.webkit.org/show_bug.cgi?id=81212
1017
1018         Reviewed by Rob Buis.
1019
1020         Enable animVal support for SVGNumber. This aligns SVGAnimatedStaticPropertyTearOff,
1021         with the other SVGListPropertyTearOff & SVGPropertyTearOff, as all support animVal now.
1022         Converting the rest of the types can be done in small patches now.
1023
1024         Test: svg/animations/svgnumber-animation-4.html
1025
1026         * svg/SVGAnimatedNumber.cpp:
1027         (WebCore::SVGAnimatedNumberAnimator::constructFromCopy):
1028         (WebCore):
1029         * svg/SVGAnimatedNumber.h:
1030         (WebCore):
1031         (SVGAnimatedNumberAnimator):
1032         * svg/SVGAnimatedType.cpp:
1033         (WebCore::SVGAnimatedType::supportsAnimVal):
1034         (WebCore::SVGAnimatedType::setVariantValue):
1035         * svg/properties/SVGAnimatedProperty.h:
1036         (SVGAnimatedProperty):
1037         * svg/properties/SVGAnimatedStaticPropertyTearOff.h:
1038         (WebCore::SVGAnimatedStaticPropertyTearOff::animVal):
1039         (WebCore::SVGAnimatedStaticPropertyTearOff::currentAnimatedValue):
1040         (SVGAnimatedStaticPropertyTearOff):
1041         (WebCore::SVGAnimatedStaticPropertyTearOff::currentBaseValue):
1042         (WebCore::SVGAnimatedStaticPropertyTearOff::animationStarted):
1043         (WebCore::SVGAnimatedStaticPropertyTearOff::animationEnded):
1044         (WebCore::SVGAnimatedStaticPropertyTearOff::animationValueWillChange):
1045         (WebCore::SVGAnimatedStaticPropertyTearOff::animationValueDidChange):
1046         (WebCore::SVGAnimatedStaticPropertyTearOff::SVGAnimatedStaticPropertyTearOff):
1047
1048 2012-03-15  Nikolas Zimmermann  <nzimmermann@rim.com>
1049
1050         Enable animVal support for SVGTransformList
1051         https://bugs.webkit.org/show_bug.cgi?id=80758
1052
1053         Reviewed by Antti Koivisto.
1054
1055         Enable animVal support for SVGTransformList. SVGTransformLists are only animatable
1056         via <animateTransform>, not via <animate> directly. Still we can handle it in the
1057         same framework as all other types used for <animate>, as we also need proper animVal
1058         support for <animateTransform>.
1059
1060         This patch removes the special <animateTransform> implementation, and lets
1061         SVGAnimateTransformElement inherit from SVGAnimateElement, just like its done
1062         for SVGAnimateColorElement & SVGSetElement.
1063
1064         All existing code (calculateFromAndToValues/FromAndByValues/etc..) are moved from
1065         SVGAnimateTransform right into the SVGAnimatedTransformListAnimator.
1066
1067         This doesn't change <animateTransform> behavior, it just simplies the code
1068         and enables animVal support for SVGTransformLists - all covered by existing tests.
1069
1070         * CMakeLists.txt:
1071         * GNUmakefile.list.am:
1072         * Target.pri:
1073         * WebCore.gypi:
1074         * WebCore.xcodeproj/project.pbxproj:
1075         * svg/SVGAllInOne.cpp:
1076         * svg/SVGAnimateElement.cpp:
1077         (WebCore::SVGAnimateElement::SVGAnimateElement):
1078         (WebCore::SVGAnimateElement::determineAnimatedPropertyType):
1079         (WebCore::SVGAnimateElement::calculateAnimatedValue):
1080         (WebCore::SVGAnimateElement::applyResultsToTarget):
1081         * svg/SVGAnimateTransformElement.cpp:
1082         (WebCore::SVGAnimateTransformElement::SVGAnimateTransformElement):
1083         (WebCore::SVGAnimateTransformElement::hasValidAttributeType):
1084         (WebCore::SVGAnimateTransformElement::parseAttribute):
1085         * svg/SVGAnimateTransformElement.h:
1086         (WebCore::SVGAnimateTransformElement::transformType):
1087         (SVGAnimateTransformElement):
1088         * svg/SVGAnimatedTransformList.cpp: Added.
1089         (WebCore):
1090         (WebCore::SVGAnimatedTransformListAnimator::SVGAnimatedTransformListAnimator):
1091         (WebCore::SVGAnimatedTransformListAnimator::constructFromString):
1092         (WebCore::SVGAnimatedTransformListAnimator::constructFromCopy):
1093         (WebCore::SVGAnimatedTransformListAnimator::calculateFromAndToValues):
1094         (WebCore::SVGAnimatedTransformListAnimator::calculateFromAndByValues):
1095         (WebCore::SVGAnimatedTransformListAnimator::calculateAnimatedValue):
1096         (WebCore::SVGAnimatedTransformListAnimator::calculateDistance):
1097         * svg/SVGAnimatedTransformList.h:
1098         (WebCore):
1099         (SVGAnimatedTransformListAnimator):
1100         (WebCore::SVGAnimatedTransformListAnimator::~SVGAnimatedTransformListAnimator):
1101         * svg/SVGAnimatedType.cpp:
1102         (WebCore::SVGAnimatedType::~SVGAnimatedType):
1103         (WebCore::SVGAnimatedType::createTransformList):
1104         (WebCore):
1105         (WebCore::SVGAnimatedType::transformList):
1106         (WebCore::SVGAnimatedType::valueAsString):
1107         (WebCore::SVGAnimatedType::setValueAsString):
1108         (WebCore::SVGAnimatedType::supportsAnimVal):
1109         (WebCore::SVGAnimatedType::setVariantValue):
1110         * svg/SVGAnimatedType.h:
1111         (WebCore):
1112         (SVGAnimatedType):
1113         * svg/SVGAnimatorFactory.h:
1114         (WebCore::SVGAnimatorFactory::create):
1115         * svg/SVGGradientElement.cpp:
1116         (WebCore::SVGGradientElement::parseAttribute):
1117         * svg/SVGPatternElement.cpp:
1118         (WebCore::SVGPatternElement::parseAttribute):
1119         * svg/SVGStyledTransformableElement.cpp:
1120         (WebCore::SVGStyledTransformableElement::parseAttribute):
1121         * svg/SVGTextElement.cpp:
1122         (WebCore::SVGTextElement::parseAttribute):
1123         * svg/SVGTransform.cpp:
1124         (WebCore::SVGTransform::transformTypePrefixForParsing):
1125         (WebCore):
1126         (WebCore::SVGTransform::valueAsString):
1127         * svg/SVGTransform.h:
1128         (SVGTransform):
1129         * svg/SVGTransformList.cpp:
1130         (WebCore::SVGTransformList::parse):
1131         (WebCore):
1132         * svg/SVGTransformList.h:
1133         (SVGTransformList):
1134         * svg/SVGTransformable.cpp:
1135         (WebCore::SVGTransformable::parseTransformType):
1136         * svg/SVGTransformable.h:
1137         (WebCore):
1138         * svg/SVGViewSpec.cpp:
1139         (WebCore::SVGViewSpec::setTransform):
1140
1141 2012-03-13  Nikolas Zimmermann  <nzimmermann@rim.com>
1142
1143         Enable animVal support for SVGLengthList
1144         https://bugs.webkit.org/show_bug.cgi?id=80750
1145
1146         Reviewed by Zoltan Herczeg.
1147
1148         Introduce animVal support for generic SVGList types. This aligns SVGListProperty with SVGProperty
1149         in terms of animVal/baseVal support. Use this to turn on animVal support for SVGLengthList.
1150
1151         Extend all existing SVGLengthList tests to correctly differentiate between baseVal/animVal.
1152
1153         * svg/SVGAnimateElement.cpp:
1154         (WebCore::SVGAnimateElement::calculateAnimatedValue):
1155         * svg/SVGAnimateTransformElement.cpp:
1156         (WebCore::SVGAnimateTransformElement::resetToBaseValue):
1157         (WebCore::SVGAnimateTransformElement::calculateAnimatedValue):
1158         (WebCore::SVGAnimateTransformElement::applyResultsToTarget):
1159         * svg/SVGAnimatedLengthList.cpp:
1160         (WebCore::SVGAnimatedLengthListAnimator::constructFromCopy):
1161         (WebCore):
1162         * svg/SVGAnimatedLengthList.h:
1163         (WebCore):
1164         (SVGAnimatedLengthListAnimator):
1165         * svg/SVGAnimatedType.cpp:
1166         (WebCore::SVGAnimatedType::supportsAnimVal):
1167         (WebCore::SVGAnimatedType::setVariantValue):
1168         * svg/SVGAnimatedType.h:
1169         * svg/SVGAnimationElement.cpp:
1170         (WebCore::SVGAnimationElement::applyAnimatedValue):
1171         * svg/properties/SVGAnimatedListPropertyTearOff.h:
1172         (SVGAnimatedListPropertyTearOff):
1173         (WebCore::SVGAnimatedListPropertyTearOff::baseVal):
1174         (WebCore::SVGAnimatedListPropertyTearOff::animVal):
1175         (WebCore::SVGAnimatedListPropertyTearOff::removeItemFromList):
1176         (WebCore::SVGAnimatedListPropertyTearOff::detachListWrappers):
1177         (WebCore::SVGAnimatedListPropertyTearOff::currentAnimatedValue):
1178         (WebCore::SVGAnimatedListPropertyTearOff::currentBaseValue):
1179         (WebCore::SVGAnimatedListPropertyTearOff::animationStarted):
1180         (WebCore::SVGAnimatedListPropertyTearOff::animationEnded):
1181         (WebCore::SVGAnimatedListPropertyTearOff::synchronizeWrappersIfNeeded):
1182         (WebCore::SVGAnimatedListPropertyTearOff::animationValueWillChange):
1183         (WebCore::SVGAnimatedListPropertyTearOff::animationValueDidChange):
1184         * svg/properties/SVGAnimatedPathSegListPropertyTearOff.h:
1185         (WebCore::SVGAnimatedPathSegListPropertyTearOff::baseVal):
1186         (WebCore::SVGAnimatedPathSegListPropertyTearOff::animVal):
1187         * svg/properties/SVGAnimatedProperty.h:
1188         (WebCore::SVGAnimatedProperty::isAnimating):
1189         (SVGAnimatedProperty):
1190         (WebCore::SVGAnimatedProperty::animationValueWillChange):
1191         (WebCore::SVGAnimatedProperty::animationValueDidChange):
1192         (WebCore::SVGAnimatedProperty::~SVGAnimatedProperty):
1193         (WebCore::SVGAnimatedProperty::SVGAnimatedProperty):
1194         * svg/properties/SVGAnimatedPropertyTearOff.h:
1195         (SVGAnimatedPropertyTearOff):
1196         (WebCore::SVGAnimatedPropertyTearOff::baseVal):
1197         (WebCore::SVGAnimatedPropertyTearOff::animVal):
1198         (WebCore::SVGAnimatedPropertyTearOff::currentAnimatedValue):
1199         (WebCore::SVGAnimatedPropertyTearOff::animationStarted):
1200         (WebCore::SVGAnimatedPropertyTearOff::animationEnded):
1201         (WebCore::SVGAnimatedPropertyTearOff::animationValueWillChange):
1202         (WebCore::SVGAnimatedPropertyTearOff::animationValueDidChange):
1203         (WebCore::SVGAnimatedPropertyTearOff::SVGAnimatedPropertyTearOff):
1204         * svg/properties/SVGAnimatedTransformListPropertyTearOff.h:
1205         (WebCore::SVGAnimatedTransformListPropertyTearOff::baseVal):
1206         (WebCore::SVGAnimatedTransformListPropertyTearOff::animVal):
1207         * svg/properties/SVGListProperty.h:
1208         (WebCore::SVGListProperty::detachListWrappers):
1209         (SVGListProperty):
1210         (WebCore::SVGListProperty::setValuesAndWrappers):
1211         (WebCore::SVGListProperty::clearValues):
1212         (WebCore::SVGListProperty::clearValuesAndWrappers):
1213         (WebCore::SVGListProperty::numberOfItems):
1214         (WebCore::SVGListProperty::initializeValues):
1215         (WebCore::SVGListProperty::initializeValuesAndWrappers):
1216         (WebCore::SVGListProperty::canGetItem):
1217         (WebCore::SVGListProperty::getItemValues):
1218         (WebCore::SVGListProperty::getItemValuesAndWrappers):
1219         (WebCore::SVGListProperty::insertItemBeforeValues):
1220         (WebCore::SVGListProperty::insertItemBeforeValuesAndWrappers):
1221         (WebCore::SVGListProperty::canReplaceItem):
1222         (WebCore::SVGListProperty::replaceItemValues):
1223         (WebCore::SVGListProperty::replaceItemValuesAndWrappers):
1224         (WebCore::SVGListProperty::canRemoveItem):
1225         (WebCore::SVGListProperty::removeItemValues):
1226         (WebCore::SVGListProperty::removeItemValuesAndWrappers):
1227         (WebCore::SVGListProperty::appendItemValues):
1228         (WebCore::SVGListProperty::appendItemValuesAndWrappers):
1229         (WebCore::SVGListProperty::values):
1230         (WebCore::SVGListProperty::wrappers):
1231         (WebCore::SVGListProperty::SVGListProperty):
1232         * svg/properties/SVGListPropertyTearOff.h:
1233         (SVGListPropertyTearOff):
1234         (WebCore::SVGListPropertyTearOff::create):
1235         (WebCore::SVGListPropertyTearOff::removeItemFromList):
1236         (WebCore::SVGListPropertyTearOff::clear):
1237         (WebCore::SVGListPropertyTearOff::initialize):
1238         (WebCore::SVGListPropertyTearOff::insertItemBefore):
1239         (WebCore::SVGListPropertyTearOff::replaceItem):
1240         (WebCore::SVGListPropertyTearOff::appendItem):
1241         (WebCore::SVGListPropertyTearOff::SVGListPropertyTearOff):
1242         (WebCore::SVGListPropertyTearOff::commitChange):
1243         * svg/properties/SVGPathSegListPropertyTearOff.cpp:
1244         (WebCore::SVGPathSegListPropertyTearOff::clear):
1245         (WebCore::SVGPathSegListPropertyTearOff::getItem):
1246         (WebCore::SVGPathSegListPropertyTearOff::removeItem):
1247         * svg/properties/SVGPathSegListPropertyTearOff.h:
1248         (WebCore::SVGPathSegListPropertyTearOff::create):
1249         (WebCore::SVGPathSegListPropertyTearOff::removeItemFromList):
1250         (SVGPathSegListPropertyTearOff):
1251         (WebCore::SVGPathSegListPropertyTearOff::initialize):
1252         (WebCore::SVGPathSegListPropertyTearOff::insertItemBefore):
1253         (WebCore::SVGPathSegListPropertyTearOff::replaceItem):
1254         (WebCore::SVGPathSegListPropertyTearOff::appendItem):
1255         (WebCore::SVGPathSegListPropertyTearOff::SVGPathSegListPropertyTearOff):
1256         (WebCore::SVGPathSegListPropertyTearOff::commitChange):
1257         * svg/properties/SVGPropertyInfo.h:
1258         * svg/properties/SVGStaticListPropertyTearOff.h:
1259         (SVGStaticListPropertyTearOff):
1260         (WebCore::SVGStaticListPropertyTearOff::clear):
1261         (WebCore::SVGStaticListPropertyTearOff::initialize):
1262         (WebCore::SVGStaticListPropertyTearOff::getItem):
1263         (WebCore::SVGStaticListPropertyTearOff::insertItemBefore):
1264         (WebCore::SVGStaticListPropertyTearOff::replaceItem):
1265         (WebCore::SVGStaticListPropertyTearOff::removeItem):
1266         (WebCore::SVGStaticListPropertyTearOff::appendItem):
1267         (WebCore::SVGStaticListPropertyTearOff::SVGStaticListPropertyTearOff):
1268         (WebCore::SVGStaticListPropertyTearOff::commitChange):
1269         * svg/properties/SVGTransformListPropertyTearOff.h:
1270         (WebCore::SVGTransformListPropertyTearOff::create):
1271         (WebCore::SVGTransformListPropertyTearOff::createSVGTransformFromMatrix):
1272         (WebCore::SVGTransformListPropertyTearOff::consolidate):
1273         (WebCore::SVGTransformListPropertyTearOff::SVGTransformListPropertyTearOff):
1274
1275 2012-03-14  Chris Fleizach  <cfleizach@apple.com>
1276
1277         AXDescription for HTML5 footer
1278         https://bugs.webkit.org/show_bug.cgi?id=78967
1279
1280         Return a unique role description for the footer element.
1281
1282         Reviewed by Beth Dakin.
1283
1284         Test: platform/mac/accessibility/footer-roledescription.html
1285
1286         * English.lproj/Localizable.strings:+
1287         * accessibility/AccessibilityObject.h:
1288         * accessibility/AccessibilityRenderObject.cpp:
1289         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1290         * accessibility/mac/WebAccessibilityObjectWrapper.mm:
1291         (createAccessibilityRoleMap):
1292         (-[WebAccessibilityObjectWrapper subrole]):
1293         (-[WebAccessibilityObjectWrapper roleDescription]):
1294         * platform/LocalizedStrings.cpp:
1295         (WebCore::AXFooterRoleDescriptionText):
1296         (WebCore):
1297         * platform/LocalizedStrings.h:
1298         (WebCore):
1299         * platform/blackberry/LocalizedStringsBlackBerry.cpp:
1300         (WebCore::AXFooterRoleDescriptionText):
1301         (WebCore):
1302         * platform/efl/LocalizedStringsEfl.cpp:
1303         (WebCore::AXFooterRoleDescriptionText):
1304         (WebCore):
1305         * platform/gtk/LocalizedStringsGtk.cpp:
1306         (WebCore::AXFooterRoleDescriptionText):
1307         (WebCore):
1308
1309 2012-03-14  Mark Rowe  <mrowe@apple.com>
1310
1311         <http://webkit.org/b/81193> Ensure libWebCoreTestSupport.dylib's library identifier is set appropriately for all configurations.
1312
1313         Reviewed by Dan Bernstein.
1314
1315         * Configurations/WebCoreTestSupport.xcconfig: Switch to setting DYLIB_INSTALL_NAME_BASE
1316         rather than LD_DYLIB_INSTALL_NAME. The latter is derived from the former. Ensure that
1317         DYLIB_INSTALL_NAME_BASE is also set for the Production configuration.
1318
1319 2012-03-14  Chris Fleizach  <cfleizach@apple.com>
1320
1321         AXDescription for ARIA role contentinfo incorrect
1322         https://bugs.webkit.org/show_bug.cgi?id=78967
1323
1324         Reviewed by Beth Dakin.
1325
1326         Test: platform/mac/accessibility/aria-grouping-roles.html
1327
1328         * English.lproj/Localizable.strings:
1329         * platform/LocalizedStrings.cpp:
1330         (WebCore::AXARIAContentGroupText):
1331
1332 2012-03-14  Chris Fleizach  <cfleizach@apple.com>
1333
1334         AX: ARIA tables need to support selected rows attribute/select rows changed notification
1335         https://bugs.webkit.org/show_bug.cgi?id=79821
1336
1337         Reviewed by Beth Dakin.
1338
1339         Test: platform/mac/accessibility/selected-rows-table.html
1340
1341         * accessibility/AccessibilityARIAGrid.h:
1342         (WebCore::AccessibilityARIAGrid::isMultiSelectable):
1343         (AccessibilityARIAGrid):
1344         * accessibility/AccessibilityRenderObject.cpp:
1345         (WebCore::AccessibilityRenderObject::ariaSelectedRows):
1346         * accessibility/AccessibilityTableRow.cpp:
1347         (WebCore::AccessibilityTableRow::observableObject):
1348         (WebCore):
1349         * accessibility/AccessibilityTableRow.h:
1350         (AccessibilityTableRow):
1351         * accessibility/mac/AXObjectCacheMac.mm:
1352         (WebCore::AXObjectCache::postPlatformNotification):
1353
1354 2012-03-14  James Robinson  <jamesr@chromium.org>
1355
1356         Platforms without USE(REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR) don't need to query the page's displayID
1357         https://bugs.webkit.org/show_bug.cgi?id=81187
1358
1359         Reviewed by Simon Fraser.
1360
1361         * dom/Document.cpp:
1362         (WebCore::Document::webkitRequestAnimationFrame):
1363
1364 2012-03-14  Chris Fleizach  <cfleizach@apple.com>
1365
1366         AX: embedded attachments do not report their parents correctly
1367         https://bugs.webkit.org/show_bug.cgi?id=80132
1368
1369         When a WebHTMLView has embedded attachments in it, the AXParent of those attachments is wrong.
1370         It usually points to the AXScrollView of the web area. That's because there has been no way for WebCore to
1371         communicate that this attachment view should actually make believe that it's parent is within the WebCore AX tree.
1372
1373         We can fix that by overriding the AXParent in overriden attributes for items that are attachments.
1374
1375         Reviewed by Beth Dakin.
1376
1377         Not able to construct a layout test because the problem only manifests itself when an AX client connects to WebKit
1378         through the IPC mechanism.
1379
1380         * accessibility/AccessibilityObject.cpp:
1381         (WebCore::AccessibilityObject::detachFromParent):
1382         * accessibility/AccessibilityObject.h:
1383         (AccessibilityObject):
1384         (WebCore::AccessibilityObject::overrideAttachmentParent):
1385         * accessibility/AccessibilityRenderObject.cpp:
1386         (WebCore::AccessibilityRenderObject::updateAttachmentViewParents):
1387         (WebCore::AccessibilityRenderObject::addChildren):
1388         * accessibility/AccessibilityRenderObject.h:
1389         (AccessibilityRenderObject):
1390         * accessibility/mac/AccessibilityObjectMac.mm:
1391         (WebCore::AccessibilityObject::overrideAttachmentParent):
1392
1393 2012-03-14  Ryosuke Niwa  <rniwa@webkit.org>
1394
1395         Improve ContainerNode's collectNodes() performance
1396         https://bugs.webkit.org/show_bug.cgi?id=80706
1397
1398         Reviewed by Antti Koivisto.
1399
1400         Bump up the size of stack allocated buffer from 1 to 11. According to the rough study I conducted,
1401         this would cover 99.5% of all node collection.
1402
1403         Note: the actual code change was made in r110797 but I somehow mangled my patches.
1404
1405         * dom/ContainerNode.cpp:
1406         (WebCore):
1407
1408 2012-03-14  Seo Sanghyeon  <sh4.seo@samsung.com>
1409
1410         Cleanup semicolons in IDLs
1411         https://bugs.webkit.org/show_bug.cgi?id=81129
1412
1413         Reviewed by Kentaro Hara.
1414
1415         No tests. No change in behavior.
1416
1417         * svg/SVGAnimateColorElement.idl:
1418         * svg/SVGAnimateElement.idl:
1419         * svg/SVGAnimateTransformElement.idl:
1420         * svg/SVGAnimatedRect.idl:
1421
1422 2012-03-14  Hayato Ito  <hayato@chromium.org>
1423
1424         Make ShadowRoot.activeElement return null if it does not contain a focused element.
1425         https://bugs.webkit.org/show_bug.cgi?id=81097
1426
1427         Reviewed by Dimitri Glazkov.
1428
1429         * dom/TreeScope.cpp:
1430         (WebCore::TreeScope::activeElement):
1431
1432 2012-03-14  Matt Falkenhagen  <falken@chromium.org>
1433
1434         Allow per-script font settings to be specified in layout tests
1435         https://bugs.webkit.org/show_bug.cgi?id=78184
1436
1437         Reviewed by Hajime Morita.
1438
1439         This adds per-script font settings to InternalSettings, so it can be used in layout tests instead of
1440         the per-script font settings support in DumpRenderTree overridePreference, which has only been implemented
1441         for Chromium so far.
1442
1443         Test: changed fast/text/international/locale-sensitive-fonts.html to use InternalSettings
1444         instead of overridePreference.
1445
1446         * WebCore.exp.in: Added symbols.
1447         * platform/text/LocaleToScriptMapping.h: Added scriptNameToCode used by InternalSettings.
1448         (WebCore):
1449         * platform/text/LocaleToScriptMappingDefault.cpp:
1450         (WebCore::scriptNameToCode):
1451         (WebCore::localeToScriptCodeForFontSelection):
1452         * platform/text/LocaleToScriptMappingICU.cpp:
1453         (WebCore::scriptNameToCode):
1454         (WebCore):
1455         * testing/InternalSettings.cpp: Added per-script font settings.
1456         (WebCore):
1457         (WebCore::setFontFamily):
1458         (WebCore::InternalSettings::setStandardFontFamily):
1459         (WebCore::InternalSettings::setSerifFontFamily):
1460         (WebCore::InternalSettings::setSansSerifFontFamily):
1461         (WebCore::InternalSettings::setFixedFontFamily):
1462         (WebCore::InternalSettings::setCursiveFontFamily):
1463         (WebCore::InternalSettings::setFantasyFontFamily):
1464         (WebCore::InternalSettings::setPictographFontFamily):
1465         * testing/InternalSettings.h:
1466         (InternalSettings):
1467         * testing/InternalSettings.idl:
1468
1469 2012-03-14  Kwonjin Jeong  <gram@company100.net>
1470
1471         Remove obsolete constructors of CSSPrimitiveValue class.
1472         https://bugs.webkit.org/show_bug.cgi?id=80971
1473
1474         Remove constructors of CSSPrimitiveValue that can't be
1475         reached.
1476
1477         Reviewed by Andreas Kling.
1478
1479         * css/CSSPrimitiveValueMappings.h:
1480
1481 2012-03-14  Igor Oliveira  <igor.o@sisa.samsung.com>
1482
1483         Split the extra logic out of RenderBlock::updateFirstLetter
1484         https://bugs.webkit.org/show_bug.cgi?id=80772
1485
1486         Reviewed by Julien Chaffraix.
1487
1488         No change in behavior expected.
1489
1490         * rendering/RenderBlock.cpp:
1491         (WebCore::RenderBlock::updateFirstLetterStyle):
1492         (WebCore::RenderBlock::createFirstLetterRenderer):
1493         (WebCore::RenderBlock::updateFirstLetter):
1494         (WebCore):
1495         * rendering/RenderBlock.h:
1496         (RenderBlock):
1497
1498 2012-03-14  Anders Carlsson  <andersca@apple.com>
1499
1500         Fix build.
1501
1502         * html/track/TextTrackList.cpp:
1503
1504 2012-03-14  Ryosuke Niwa  <rniwa@webkit.org>
1505
1506         Build fix.
1507
1508         * dom/DynamicNodeList.h:
1509         (DynamicSubtreeNodeList):
1510
1511 2012-03-14  Ryosuke Niwa  <rniwa@webkit.org>
1512
1513         (register|unregister)DynamicSubtreeNodeList should be called only for labels and regions node lists
1514         https://bugs.webkit.org/show_bug.cgi?id=80900
1515
1516         Reviewed by Andreas Kling.
1517
1518         Cleaned up invalidation code for dynamic node lists. It seems like the existing code was utterly confused
1519         about the lifetime of node lists and caches within them. First, register/unregsiterDynamicSubtreeNodeList
1520         are called for all dynamic node lists even though it's only useful for labels and region node lists since
1521         it's a mechanism to allow node lists to be invalidated at a node to which the node list doesn't belong.
1522
1523         Second, some node lists had dedicated member functions on Node to explicitly invalidate caches in
1524         parsedAttribute. However, this is redundant because invalidateNodeListsCacheAfterAttributeChanged should be
1525         able to invalidate caches when the attribute value changes. This patch gets rid of the last instance of such
1526         function in HTMLLabelElement.
1527
1528         And finally, this patch restricts the callers of DynamicSubtreeNodeList::invalidateCache to be member
1529         functions of NodeListsNodeData (now friends of DynamicSubtreeNodeList) to allow futher refactoring.
1530
1531         * dom/DynamicNodeList.cpp:
1532         (WebCore::DynamicSubtreeNodeList::DynamicSubtreeNodeList): Don't register the node list since it's only
1533         useful for labels and region node lists.
1534         (WebCore::DynamicSubtreeNodeList::~DynamicSubtreeNodeList): Ditto.
1535         * dom/DynamicNodeList.h:
1536         (DynamicSubtreeNodeList):
1537         * dom/Node.cpp:
1538         (WebCore):
1539         (WebCore::Node::registerDynamicSubtreeNodeList): The comment about now we have to invalidate caches
1540         when there had no caches is incorrect because registerDynamicSubtreeNodeList is called when a node list
1541         is initially created. Also, if the tree scope didn't have any caches, then this is the first node list
1542         to be added to the list, so there's no point in calling InvalidateCaches (no-op).
1543         (WebCore::Node::unregisterDynamicSubtreeNodeList):
1544         (WebCore::Node::invalidateNodeListsCacheAfterAttributeChanged): Take care of "for" content attribute.
1545         Also remove the redundant call to removeNodeListCacheIfPossible since we only invalidates node lists
1546         and never remove entries from NodeListsNodeData in this function.
1547         (WebCore::Node::invalidateNodeListsCacheAfterChildrenChanged): The call to removeNodeListCacheIfPossible
1548         is also redundant here. Also removed the invalidation of m_listsWithCaches since it's already done in
1549         invalidateCaches via invalidateCachesThatDependOnAttributes.
1550         (WebCore::NodeListsNodeData::invalidateCaches): Removed the invalidation of m_labelsNodeListCache. It's
1551         done in invalidateCachesThatDependOnAttributes.
1552         (WebCore::NodeListsNodeData::invalidateCachesThatDependOnAttributes): Invalidate
1553         m_listsInvalidatedAtDocument, which is renamed from m_listsWithCaches.
1554         (WebCore::NodeListsNodeData::isEmpty):
1555         * dom/Node.h:
1556         (Node):
1557         * dom/NodeRareData.h:
1558         (NodeListsNodeData):
1559         * html/HTMLLabelElement.cpp:
1560         (WebCore): Removed parseAttribute since the invalidation labels node list is now done by
1561         invalidateNodeListsCacheAfterAttributeChanged and invalidateNodeListsCacheAfterChildrenChanged.
1562         * html/HTMLLabelElement.h:
1563         (HTMLLabelElement):
1564         * html/LabelsNodeList.cpp:
1565         (WebCore::LabelsNodeList::LabelsNodeList):
1566         (WebCore::LabelsNodeList::~LabelsNodeList):
1567
1568 2012-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1569
1570         Unreviewed, rolling out r110565.
1571         http://trac.webkit.org/changeset/110565
1572         https://bugs.webkit.org/show_bug.cgi?id=81173
1573
1574         chromium deps are now far enough along that the original cl
1575         should work (Requested by thakis on #webkit).
1576
1577         * WebCore.gyp/mac/adjust_visibility.sh:
1578
1579 2012-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1580
1581         Unreviewed, rolling out r110641.
1582         http://trac.webkit.org/changeset/110641
1583         https://bugs.webkit.org/show_bug.cgi?id=81170
1584
1585         Causes an ASAN failure (Requested by abarth on #webkit).
1586
1587         * Target.pri:
1588         * UseV8.cmake:
1589         * WebCore.gypi:
1590         * bindings/scripts/CodeGeneratorJS.pm:
1591         (GenerateHeader):
1592         (GenerateImplementation):
1593         * bindings/scripts/CodeGeneratorV8.pm:
1594         (GenerateHeader):
1595         (GenerateNamedConstructorCallback):
1596         (GenerateImplementation):
1597         * bindings/scripts/IDLAttributes.txt:
1598         * bindings/scripts/test/V8/V8Float64Array.cpp:
1599         (WebCore):
1600         * bindings/scripts/test/V8/V8Float64Array.h:
1601         (V8Float64Array):
1602         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
1603         (WebCore):
1604         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
1605         (V8TestActiveDOMObject):
1606         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
1607         (WebCore):
1608         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
1609         (V8TestCustomNamedGetter):
1610         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
1611         (WebCore):
1612         * bindings/scripts/test/V8/V8TestEventConstructor.h:
1613         (V8TestEventConstructor):
1614         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
1615         (WebCore):
1616         * bindings/scripts/test/V8/V8TestEventTarget.h:
1617         (V8TestEventTarget):
1618         * bindings/scripts/test/V8/V8TestInterface.cpp:
1619         (WebCore):
1620         * bindings/scripts/test/V8/V8TestInterface.h:
1621         (V8TestInterface):
1622         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
1623         (WebCore):
1624         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
1625         (V8TestMediaQueryListListener):
1626         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
1627         (WebCore):
1628         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
1629         (V8TestNamedConstructor):
1630         * bindings/scripts/test/V8/V8TestObj.cpp:
1631         (WebCore):
1632         * bindings/scripts/test/V8/V8TestObj.h:
1633         (V8TestObj):
1634         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
1635         (WebCore):
1636         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
1637         (V8TestSerializedScriptValueInterface):
1638         * bindings/v8/NPV8Object.cpp:
1639         (WebCore::npObjectTypeInfo):
1640         * bindings/v8/V8GCController.cpp:
1641         (WebCore::GrouperVisitor::visitDOMWrapper):
1642         * bindings/v8/WrapperTypeInfo.h:
1643         (WebCore):
1644         (WrapperTypeInfo):
1645         * bindings/v8/custom/V8CSSStyleSheetCustom.cpp: Copied from Source/WebCore/bindings/v8/custom/V8StyleSheetCustom.cpp.
1646         (WebCore):
1647         (WebCore::toV8):
1648         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
1649         (WebCore::toV8):
1650         (WebCore):
1651         * bindings/v8/custom/V8DOMTokenListCustom.cpp: Copied from Source/WebCore/bindings/v8/custom/V8StyleSheetCustom.cpp.
1652         (WebCore):
1653         (WebCore::toV8):
1654         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
1655         (WebCore):
1656         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
1657         (WebCore::toV8):
1658         (WebCore):
1659         * bindings/v8/custom/V8StyleSheetCustom.cpp:
1660         (WebCore::toV8):
1661         * css/CSSStyleSheet.idl:
1662         * css/StyleSheet.idl:
1663         * dom/DOMStringMap.idl:
1664         * dom/NamedNodeMap.idl:
1665         * html/DOMTokenList.idl:
1666         * html/track/TextTrackList.cpp:
1667         * html/track/TextTrackList.idl:
1668
1669 2012-03-13  Jon Lee  <jonlee@apple.com>
1670
1671         Separate NOTIFICATIONS and LEGACY_NOTIFICATIONS
1672         https://bugs.webkit.org/show_bug.cgi?id=80922
1673         <rdar://problem/11035082>
1674
1675         Reviewed by Jian Li.
1676
1677         You can include either NOTIFICATIONS or LEGACY_NOTIFICATIONS and have a complete API.
1678         LEGACY_NOTIFICATIONS should cover all of the previous functionality, and NOTIFICATIONS will cover the
1679         new API. Therefore, APIs that are common between the two will have:
1680         #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
1681
1682         This patch initially sets both to be exactly the same. As other bugs with patches begin to migrate to
1683         the new API, the defines will begin to split. This allows ports to decide which set of APIs to include.
1684
1685         * bindings/scripts/InFilesCompiler.pm: Update the script to handle the "|" flag in a conditional.
1686         (preferredConditional):
1687         (conditionalStringFromAttributeValue):
1688         (generateInterfacesHeader):
1689         (generateHeadersHeader):
1690
1691         Update everything to be #if ENABLE(NOTIFICATIONS) || ENABLE(LEGACY_NOTIFICATIONS)
1692         * WebCore.exp.in:
1693         * bindings/cpp/WebDOMEventTarget.cpp:
1694         (toWebKit):
1695         * bindings/js/JSDesktopNotificationsCustom.cpp:
1696         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
1697         * dom/EventTargetFactory.in:
1698         * notifications/Notification.cpp:
1699         * notifications/Notification.h:
1700         * notifications/Notification.idl:
1701         * notifications/NotificationCenter.cpp:
1702         * notifications/NotificationCenter.h:
1703         * notifications/NotificationCenter.idl:
1704         * notifications/NotificationContents.h:
1705         * notifications/NotificationController.cpp:
1706         * notifications/NotificationController.h:
1707         * page/DOMWindow.cpp:
1708         (WebCore::DOMWindow::~DOMWindow):
1709         (WebCore::DOMWindow::willDetachPage):
1710         (WebCore::DOMWindow::disconnectDOMWindowProperties):
1711         (WebCore::DOMWindow::clearDOMWindowProperties):
1712         (WebCore):
1713         * page/DOMWindow.h:
1714         (DOMWindow):
1715         * page/DOMWindow.idl:
1716         * page/Frame.cpp:
1717         (WebCore::Frame::willDetachPage):
1718         (WebCore::Frame::transferChildFrameToNewDocument):
1719         * workers/WorkerContext.cpp:
1720         (WebCore::WorkerContext::~WorkerContext):
1721         (WebCore):
1722         * workers/WorkerContext.h:
1723         (WorkerContext):
1724         * workers/WorkerContext.idl:
1725         * workers/WorkerThread.cpp:
1726         (WebCore::WorkerThread::WorkerThread):
1727         * workers/WorkerThread.h:
1728         (WorkerThread):
1729
1730 2012-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
1731
1732         Unreviewed, rolling out r110744.
1733         http://trac.webkit.org/changeset/110744
1734         https://bugs.webkit.org/show_bug.cgi?id=81168
1735
1736         Causes many WebAudio tests to crash in debug (Requested by
1737         abarth on #webkit).
1738
1739         * platform/audio/Biquad.cpp:
1740         (WebCore::Biquad::process):
1741
1742 2012-03-14  Brady Eidson  <beidson@apple.com>
1743
1744         <rdar://problem/11045584> and https://bugs.webkit.org/show_bug.cgi?id=81166
1745         Repro crash in compositing/iframes/page-cache-layer-tree.html
1746
1747         Reviewed by Sam Weinig.
1748
1749         No new tests. (Discovered from and covered by existing test)
1750
1751         ScriptCachedFrameData doesn't need to keep a DOMWindow:
1752         * bindings/js/ScriptCachedFrameData.cpp:
1753         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
1754         * bindings/js/ScriptCachedFrameData.h:
1755         (ScriptCachedFrameData):
1756
1757         CachedFrame should grab it off the Frame directly and store it locally:
1758         * history/CachedFrame.cpp:
1759         (WebCore::CachedFrame::CachedFrame):
1760         * history/CachedFrame.h:
1761         (WebCore::CachedFrameBase::domWindow):
1762         (CachedFrameBase):
1763
1764 2012-03-14  Tony Chang  <tony@chromium.org>
1765
1766         fix negative flexing in auto sized columns
1767         https://bugs.webkit.org/show_bug.cgi?id=80069
1768
1769         Reviewed by Ojan Vafai.
1770
1771         New test cases in css3/flexbox/columns-auto-size.html.
1772
1773         * rendering/RenderFlexibleBox.cpp:
1774         (WebCore):
1775         (WebCore::RenderFlexibleBox::computeAvailableFreeSpace): Properly compute this for auto sizing columns. Previously, we would always return 0.
1776         (WebCore::RenderFlexibleBox::layoutFlexItems):
1777         (WebCore::RenderFlexibleBox::runFreeSpaceAllocationAlgorithm): Drop an unnecessary check against undefined. isSpecified covers this for us.
1778         * rendering/RenderFlexibleBox.h:
1779         (RenderFlexibleBox):
1780
1781 2012-03-14  Grace Ku  <gracek@codeaurora.org>
1782
1783         Incorrect handling of sizes in "em" when first-line changes font size
1784         https://bugs.webkit.org/show_bug.cgi?id=79526
1785
1786         Reviewed by Eric Seidel.
1787
1788         When a first-line pseudo class changes the font size, the "em" unit is handled incorrectly.
1789         It uses the paragraph's original font size (the size of the rest of the paragraph) rather than
1790         the font-size of the first-line of the paragraph.
1791
1792         This was corrected by checking if the InlineFlowBox was the first line using the existing
1793         InlineFlowBox::isFirstLineStyle() function. The corrected behaviour matches Gecko and Presto.
1794         Trident seems to get it half-wrong in the use case we are testing, painting the correct width for
1795         the border but leaving the wrong amount of space.
1796
1797         The CSS specification doc at the time of this patch specifies that ':first-line' should only support
1798         certain properties, though UAs may choose to apply more properties. Furthermore, the spec does not
1799         define the exact rendering of all cases of ':first-line'. It notes that a more precise definition
1800         may appear in future revisions.
1801
1802         Test: fast/css/pseudo-first-line-border-width.html
1803
1804         * rendering/InlineFlowBox.cpp:
1805         (WebCore::InlineFlowBox::paintBoxDecorations):
1806         * rendering/InlineFlowBox.h:
1807         (WebCore::InlineFlowBox::borderLogicalLeft):
1808         (WebCore::InlineFlowBox::borderLogicalRight):
1809         * rendering/RenderBoxModelObject.cpp:
1810         (WebCore::RenderBoxModelObject::paintBorder):
1811         (WebCore::RenderBoxModelObject::getBorderEdgeInfo):
1812         (WebCore::RenderBoxModelObject::borderObscuresBackgroundEdge):
1813         (WebCore::RenderBoxModelObject::borderObscuresBackground):
1814         * rendering/RenderBoxModelObject.h:
1815         (RenderBoxModelObject):
1816
1817 2012-03-14  Martin Robinson  <mrobinson@igalia.com>
1818
1819         Fix the TextureMapper build for GTK+.
1820
1821         No new tests. This is just a build fix.
1822
1823         * platform/graphics/cairo/GraphicsContext3DPrivate.cpp:
1824         (WebCore::GraphicsContext3DPrivate::paintToTextureMapper):
1825         * platform/graphics/texmap/TextureMapper.h:
1826
1827 2012-03-12  Martin Robinson  <mrobinson@igalia.com>
1828
1829         [GTK] Menulist buttons have separators even when the theme turns them off
1830         https://bugs.webkit.org/show_bug.cgi?id=80668
1831
1832         Reviewed by Daniel Bates.
1833
1834         No new tests. GTK+ theme differences are notoriously difficult
1835         to test, because consistent results depend on having certain themes
1836         and certain versions of themes installed.
1837
1838         Instead of using the GTK_TYPE_BUTTON and GTK_TYPE_SEPARATOR tags to get the
1839         style context, use GTK_TYPE_COMBO_BOX which should provide more accurate theme settings.
1840
1841         * platform/gtk/RenderThemeGtk3.cpp:
1842         (WebCore::getComboBoxMetrics): Get metrics from a GTK_TYPE_COMBO_BOX style context.
1843         (WebCore::RenderThemeGtk::paintMenuList): Get separator settings from the GTK_TYPE_COMBO_BOX style context.
1844
1845 2012-03-14  Levi Weintraub  <leviw@chromium.org>
1846
1847         Implement proper sub-pixel support in RenderFileUploadControl
1848         https://bugs.webkit.org/show_bug.cgi?id=80881
1849
1850         Reviewed by Dimitri Glazkov.
1851
1852         Correcting improper usage of LayoutUnits when interacting with the graphics context
1853         and platform code. Specifically:
1854         - pixel snapping the clip rect and paint offsets before sending values to the
1855           graphics context in paintObject.
1856         - using on-screen (pixel snapped) values to pass off to platform code to determine
1857           the max length of the filename to be drawn.
1858
1859         No new tests. No change in behavior.
1860
1861         * rendering/RenderFileUploadControl.cpp:
1862         (WebCore::nodeWidth):
1863         (WebCore::RenderFileUploadControl::maxFilenameWidth):
1864         (WebCore::RenderFileUploadControl::paintObject):
1865
1866 2012-03-14  Joseph Pecoraro  <pecoraro@apple.com>
1867
1868         [JSC] Web Inspector: CRASH running $0, $1, etc before they are set
1869         https://bugs.webkit.org/show_bug.cgi?id=81082
1870
1871         Don't return an invalid JSValue. Check if the ScriptValue
1872         has no value and return undefined in that case.
1873
1874         Reviewed by Pavel Feldman.
1875
1876         Updated test: inspector/console/command-line-api.html
1877
1878         * bindings/js/JSInjectedScriptHostCustom.cpp:
1879         (WebCore::JSInjectedScriptHost::inspectedObject):
1880
1881 2012-03-14  James Robinson  <jamesr@chromium.org>
1882
1883         [chromium] Remove canRecoverFromContextLoss attribute, it's unused
1884         https://bugs.webkit.org/show_bug.cgi?id=81158
1885
1886         Reviewed by Stephen White.
1887
1888         Canvas accelerated no longer depends on the canRecoverFromContextLoss attribute after r110716.
1889
1890         * platform/graphics/GraphicsContext3D.h:
1891         (WebCore::GraphicsContext3D::Attributes::Attributes):
1892         (Attributes):
1893         * platform/graphics/gpu/SharedGraphicsContext3D.cpp:
1894         (WebCore::SharedGraphicsContext3DImpl::get):
1895
1896 2012-03-14  Jer Noble  <jer.noble@apple.com>
1897
1898         Opening a URL in a MediaDocument does not propagate MIME type info to media element
1899         https://bugs.webkit.org/show_bug.cgi?id=81148
1900
1901         Reviewed by Eric Carlson.
1902
1903         Test: http/tests/media/media-document.html
1904
1905         Pass through the mime type from the DocumentLoader into the <source type=""> attribute of the
1906         generated video element. 
1907
1908         * html/MediaDocument.cpp:
1909         (WebCore::MediaDocumentParser::createDocumentStructure):
1910
1911 2012-03-14  Stephen White  <senorblanco@chromium.org>
1912
1913         [chromium] Fix accelerated Canvas2D with threaded compositing.
1914         https://bugs.webkit.org/show_bug.cgi?id=80998
1915
1916         Reviewed by James Robinson.
1917
1918         Covered by unit tests Canvas2DLayerChromiumTest and
1919         TreeSynchronizerTest.
1920
1921         * platform/graphics/chromium/Canvas2DLayerChromium.cpp:
1922         (WebCore::Canvas2DLayerChromium::paintContentsIfDirty):
1923         (WebCore):
1924         Delay creation of the front texture for double-buffering until the
1925         first call to paintContentsIfDirty().
1926         * platform/graphics/chromium/Canvas2DLayerChromium.h:
1927         (Canvas2DLayerChromium):
1928         Remove setTextureManager() and setLayerTreeHost(), since their job
1929         has been subsumed by paintContentsIfDirty().
1930         * platform/graphics/chromium/TreeSynchronizer.cpp:
1931         (WebCore::TreeSynchronizer::updateScrollbarLayerPointersRecursive):
1932         Perform an early-out if the passed-in layer is NULL.
1933
1934 2012-03-14  Mark Pilgrim  <pilgrim@chromium.org>
1935
1936         Move EntriesCallback to Modules/filesystem/
1937         https://bugs.webkit.org/show_bug.cgi?id=81032
1938
1939         Reviewed by Adam Barth.
1940
1941         No new tests, all existing tests pass.
1942
1943         * CMakeLists.txt:
1944         * DerivedSources.make:
1945         * DerivedSources.pri:
1946         * GNUmakefile.list.am:
1947         * Modules/filesystem/EntriesCallback.h: Copied from Source/WebCore/fileapi/EntriesCallback.h.
1948         * Modules/filesystem/EntriesCallback.idl: Copied from Source/WebCore/fileapi/EntriesCallback.idl.
1949         * Target.pri:
1950         * WebCore.gypi:
1951         * WebCore.vcproj/WebCore.vcproj:
1952         * WebCore.xcodeproj/project.pbxproj:
1953         * fileapi/EntriesCallback.h: Removed.
1954         * fileapi/EntriesCallback.idl: Removed.
1955
1956 2012-03-14  Tony Chang  <tony@chromium.org>
1957
1958         multiline column flexbox with auto height wrap too much
1959         https://bugs.webkit.org/show_bug.cgi?id=80929
1960
1961         Reviewed by David Hyatt.
1962
1963         Test: css3/flexbox/multiline-column-auto.html
1964
1965         * rendering/RenderBox.cpp:
1966         (WebCore::RenderBox::computeLogicalHeightUsing):
1967         (WebCore):
1968         (WebCore::RenderBox::computeContentLogicalHeightUsing): Pull out into a separate method.
1969         * rendering/RenderBox.h:
1970         (RenderBox):
1971         * rendering/RenderFlexibleBox.cpp:
1972         (WebCore::RenderFlexibleBox::lineBreakLength): Compute the value based on height & max-height for column layout.
1973         (WebCore):
1974         (WebCore::RenderFlexibleBox::computeNextFlexLine):
1975         * rendering/RenderFlexibleBox.h:
1976         (RenderFlexibleBox):
1977
1978 2012-03-14  Xingnan Wang  <xingnan.wang@intel.com>
1979
1980         Optimize the multiply-add in Biquad.cpp::process
1981         https://bugs.webkit.org/show_bug.cgi?id=75528
1982
1983         Reviewed by Chris Rogers.
1984
1985         Pipeline the multiply-add with SSE2 instructions and get about 20% improvement for the function.
1986
1987         * platform/audio/Biquad.cpp:
1988         (WebCore::Biquad::process):
1989
1990 2012-03-14  James Robinson  <jamesr@chromium.org>
1991
1992         [Chromium] Layout Test compositing/repaint/opacity-between-absolute.html is flaky
1993         https://bugs.webkit.org/show_bug.cgi?id=79823
1994
1995         Reviewed by Adrienne Walker.
1996
1997         LayerRendererChromium was storing a weak pointer to the current render surface in m_currentRenderSurface and
1998         using this in useRenderSurface() to avoid rebinding if we called useRenderSurface() multiple times in a row on
1999         the same surface. This pointer was never cleared, so if any subsequent surface landed at the same address this
2000         caching would misbehave and we'd fail to correctly initialize the new render surface. The caching wasn't
2001         actually buying us anything anyway since we only call useRenderSurface() once per surface per frame and we
2002         always set the viewport for the default render surface.
2003
2004         * platform/graphics/chromium/LayerRendererChromium.cpp:
2005         (WebCore::LayerRendererChromium::beginDrawingFrame):
2006         (WebCore::LayerRendererChromium::useRenderSurface):
2007
2008 2012-03-14  Zalan Bujtas  <zbujtas@gmail.com>
2009
2010         Frame flattening ASSERT(!needsLayout()) in FrameView::paintContents()
2011         https://bugs.webkit.org/show_bug.cgi?id=80155
2012
2013         Reviewed by Antti Koivisto.
2014
2015         This patch ensures that an iframe only schedules and calls parent's layout,
2016         when it is going to be flattened. Non-flattened iframe does not affect
2017         parent's layout, so normal layout flow applies. isInSubframeLayoutWithFrameFlattening()
2018         function has been added to test whether a particular child frame is changing
2019         parent's layout. This function also ensures that scheduleRelayout() and layout()
2020         are in sync of checking againts frame flattening.
2021
2022         Test: fast/frames/flattening/iframe-flattening-fixed-width-and-height-no-scrolling-with-js-forced-layout.html
2023
2024         * page/FrameView.cpp:
2025         (WebCore::FrameView::avoidScrollbarCreation):
2026         (WebCore::FrameView::layout):
2027         (WebCore::FrameView::scheduleRelayout):
2028         (WebCore::FrameView::isInChildFrameWithFrameFlattening):
2029         (WebCore):
2030         (WebCore::FrameView::updateLayoutAndStyleIfNeededRecursive):
2031         * page/FrameView.h:
2032         (FrameView):
2033         * rendering/RenderIFrame.h:
2034         (RenderIFrame):
2035         (WebCore::RenderIFrame::renderName):
2036
2037 2012-03-14  Anders Carlsson  <andersca@apple.com>
2038
2039         Don't cap the scroll position if layout happens when a FrameView's overhangAmount is non-zero
2040         https://bugs.webkit.org/show_bug.cgi?id=81146
2041         <rdar://problem/10850075>
2042
2043         Reviewed by Beth Dakin.
2044
2045         If layout happens when a page has a non-zero overhang amount, we shouldn't cap the scroll position
2046         to be inside of the valid maximum/minimum scroll offsets because that will cause the page to jump back, which
2047         can look really bad if layout happens in response to the page being scrolled.
2048
2049         * platform/ScrollView.cpp:
2050         (WebCore::ScrollView::updateScrollbars):
2051
2052 2012-03-14  Tommy Widenflycht  <tommyw@google.com>
2053
2054         MediaStream API (JSEP): Introducing IceCandidate
2055         https://bugs.webkit.org/show_bug.cgi?id=80699
2056
2057         Reviewed by Adam Barth.
2058
2059         Patch #2 in a series of patches to change the PeerConnection from ROAP to JSEP,
2060         see bug 80589 for more information.
2061         Adding the JS object IceCandidate and its WebCore/platform sibling IceCandidateDescriptor.
2062         This object will be created both from JS and the embedder.
2063
2064         Not possible to test until the entire JSEP feature is commited.
2065
2066         * GNUmakefile.list.am:
2067         * Modules/mediastream/IceCandidate.cpp: Copied from Source/WebCore/platform/mediastream/MediaStreamCenter.cpp.
2068         (WebCore):
2069         (WebCore::IceCandidate::create):
2070         (WebCore::IceCandidate::IceCandidate):
2071         (WebCore::IceCandidate::~IceCandidate):
2072         (WebCore::IceCandidate::label):
2073         (WebCore::IceCandidate::candidateLine):
2074         (WebCore::IceCandidate::toSdp):
2075         (WebCore::IceCandidate::descriptor):
2076         * Modules/mediastream/IceCandidate.h: Copied from Source/WebCore/platform/mediastream/MediaStreamCenter.cpp.
2077         (WebCore):
2078         (IceCandidate):
2079         * Modules/mediastream/IceCandidate.idl: Added.
2080         * WebCore.gypi:
2081         * platform/mediastream/IceCandidateDescriptor.cpp: Copied from Source/WebCore/platform/mediastream/MediaStreamCenter.cpp.
2082         (WebCore):
2083         (WebCore::IceCandidateDescriptor::create):
2084         (WebCore::IceCandidateDescriptor::IceCandidateDescriptor):
2085         (WebCore::IceCandidateDescriptor::~IceCandidateDescriptor):
2086         (WebCore::IceCandidateDescriptor::toSdp):
2087         * platform/mediastream/IceCandidateDescriptor.h: Copied from Source/WebCore/platform/mediastream/MediaStreamCenter.cpp.
2088         (WebCore):
2089         (IceCandidateDescriptor):
2090         (WebCore::IceCandidateDescriptor::label):
2091         (WebCore::IceCandidateDescriptor::candidateLine):
2092         * platform/mediastream/MediaStreamCenter.cpp:
2093         (WebCore::MediaStreamCenter::constructSdp):
2094         (WebCore):
2095         * platform/mediastream/MediaStreamCenter.h:
2096         (WebCore):
2097         (MediaStreamCenter):
2098
2099 2012-03-14  Simon Fraser  <simon.fraser@apple.com>
2100
2101         background-visibility:hidden should create a RenderLayer
2102         https://bugs.webkit.org/show_bug.cgi?id=81134
2103
2104         Reviewed by Dean Jackson.
2105         
2106         Background-visibility:hidden has to create RenderLayers, because it's implemented
2107         via compositing and/or paint short-circuiting in RenderLayer code.
2108
2109         Test: transforms/3d/general/background-visibility-layers.html
2110
2111         * rendering/RenderBox.h:
2112         * rendering/RenderBoxModelObject.h:
2113         (WebCore::RenderBoxModelObject::requiresLayer):
2114         * rendering/RenderObject.h:
2115         (WebCore::RenderObject::hasHiddenBackface):
2116         * rendering/RenderTableRow.h:
2117
2118 2012-03-14  Raul Hudea  <rhudea@adobe.com>
2119
2120         [CSSRegions][CSSOM] Implement regionLayoutEvent
2121         https://bugs.webkit.org/show_bug.cgi?id=78882
2122
2123         Reviewed by David Hyatt.
2124
2125         Adding the regionLayoutEvent that is dispatch for all regions after each flow-thread layout.
2126
2127         Tests: fast/regions/region-event-add-to-flow.html
2128                fast/regions/region-event-remove-from-dom.html
2129                fast/regions/region-event-remove-from-flow.html
2130                fast/regions/region-event.html
2131
2132         * dom/Document.cpp:
2133         (WebCore::Document::addListenerTypeIfNeeded): Added check for regionLayoutUpdate listeners
2134         * dom/Document.h:
2135         * dom/EventNames.h:
2136         (WebCore):
2137         * dom/Node.cpp:
2138         (WebCore::Node::dispatchRegionLayoutUpdateEvent):
2139         (WebCore):
2140         * dom/Node.h:
2141         (Node):
2142         * rendering/RenderFlowThread.cpp:
2143         (WebCore::RenderFlowThread::RenderFlowThread):
2144         (WebCore::RenderFlowThread::layout): Start the event dispatch timer but only if there are regionLayoutUpdate listeners and there is at least one region that had its layout updated.
2145         (WebCore::RenderFlowThread::computeOverflowStateForRegions): Mark regions that might had a layout update
2146         (WebCore::RenderFlowThread::regionLayoutUpdateEventTimerFired):
2147         (WebCore):
2148         * rendering/RenderFlowThread.h:
2149         * rendering/RenderRegion.cpp:
2150         (WebCore::RenderRegion::RenderRegion):
2151         * rendering/RenderRegion.h:
2152         (WebCore::RenderRegion::setDispatchRegionLayoutUpdateEvent):
2153         (WebCore::RenderRegion::shouldDispatchRegionLayoutUpdateEvent):
2154         (RenderRegion):
2155
2156 2012-03-14  Pierre Rossi  <pierre.rossi@gmail.com>
2157
2158         [Qt] Add support for vertical sliders in mobile theme
2159         https://bugs.webkit.org/show_bug.cgi?id=80179
2160
2161         This makes sliders using the "slider-vertical" appearance more sensible.
2162
2163         Reviewed by Simon Hausmann.
2164
2165         No new tests, since the mobile theme still isn't used in layout tests.
2166
2167         * platform/qt/RenderThemeQtMobile.cpp:
2168         (WebCore):
2169         (WebCore::StylePainterMobile::drawProgress):
2170         (WebCore::RenderThemeQtMobile::paintSliderTrack):
2171         * platform/qt/RenderThemeQtMobile.h:
2172         (StylePainterMobile):
2173
2174 2012-03-14  Jer Noble  <jer.noble@apple.com>
2175
2176         WebProcess spins beneath [QTMovie movieFileTypes:]
2177         https://bugs.webkit.org/show_bug.cgi?id=81133
2178
2179         Reviewed by Eric Carlson.
2180
2181         No new tests; speculative fix for top WebProcess spin.
2182
2183         When checking to see if a given mime type is supported by QuickTime,
2184         immediately exclude all types that do not begin with 'audio/' or 'video/'.
2185         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
2186         (WebCore::MediaPlayerPrivateQTKit::supportsType):
2187
2188 2012-03-14  Zalan Bujtas  <zbujtas@gmail.com>
2189
2190         Make RenderIFrame::flattenFrame() return earlier, when frame flattening is disabled.
2191         https://bugs.webkit.org/show_bug.cgi?id=80301
2192
2193         Reviewed by Antti Koivisto.
2194
2195         Reorganize RenderIFrame flattenFrame() code, so that it returns
2196         earlier for the normal use case, when frame flattening is disabled.
2197         It also removes leftover null check.
2198
2199         No new tests, since there's no new functionality.
2200
2201         * rendering/RenderIFrame.cpp:
2202         (WebCore::RenderIFrame::flattenFrame):
2203
2204 2012-03-14  James Robinson  <jamesr@chromium.org>
2205
2206         [chromium] Provide explicit polling API to check if the platform is capable of accelerated 2d canvas
2207         https://bugs.webkit.org/show_bug.cgi?id=80667
2208
2209         Reviewed by Darin Fisher.
2210
2211         Query the platform to see if we can instantiate a context suitable for accelerating 2d canvas. If we can't, for
2212         instance if we're on a system that can't preserve a context when the screensaver comes up, then immediately fall
2213         back to software.
2214
2215         Covered by canvas layout tests in the virtual-gpu mode.
2216
2217         * html/HTMLCanvasElement.cpp:
2218         (WebCore::HTMLCanvasElement::shouldAccelerate):
2219         * platform/chromium/PlatformSupport.h:
2220
2221 2012-03-14  Carlos Garcia Campos  <cgarcia@igalia.com>
2222
2223         [GTK] Handle printing errors in WebKit2
2224         https://bugs.webkit.org/show_bug.cgi?id=77197
2225
2226         Reviewed by Gustavo Noronha Silva.
2227
2228         * platform/gtk/ErrorsGtk.cpp:
2229         (WebCore::printError): Create a generic print error.
2230         (WebCore::printerNotFoundError): Create a print error to notify
2231         that the selected printer could not be found.
2232         (WebCore::invalidPageRangeToPrint): Create a print error when the
2233         selected page range is invalid and there are no pages to print.
2234         * platform/gtk/ErrorsGtk.h:
2235         (WebCore): Add print error doamin.
2236
2237 2012-03-14  Nikolas Zimmermann  <nzimmermann@rim.com>
2238
2239         Make SVGUseElement respect & support externalResourcesRequired
2240         https://bugs.webkit.org/show_bug.cgi?id=81109
2241
2242         Reviewed by Rob Buis.
2243
2244         Generalize the existing externalResourcesRequired support from SVGScriptElement
2245         into SVGExternalResourcesRequired, so it can be shared with SVGUseElement, which
2246         was lacking proper externalResourcesRequired support.
2247
2248         <use xlink:href="external.svg" onload="alert('hi')" externalResourcesRequired="true"/>
2249         The onload handler now fires _after_ the external resources loaded, making it possible
2250         to write reliable tests that switch from internal to external resources or the other
2251         way around. Converted the new tests in svg/dynamic-updates/SVGUseElement* to listen
2252         to SVGLoad events, to make them reliable.
2253
2254         We may be able to generalize this to cover SVGImageElement as well (the only other class which
2255         is currently supporting externalResourcesRequired - but that's more involved, so I left it TODO).
2256
2257         Covered by existing tests and the changes to the new SVGUseElement tests.
2258
2259         * svg/SVGElement.h:
2260         (SVGElement): Make haveLoadedRequiredResources() public so SVGExternalResourcesRequired can call it.
2261         * svg/SVGExternalResourcesRequired.cpp: Refactored code from SVGScriptElement, 1:1 copies w/o changes.
2262         (WebCore::SVGExternalResourcesRequired::handleAttributeChange):
2263         (WebCore::SVGExternalResourcesRequired::dispatchLoadEvent):
2264         (WebCore::SVGExternalResourcesRequired::insertedIntoDocument):
2265         (WebCore::SVGExternalResourcesRequired::finishParsingChildren):
2266         (WebCore::SVGExternalResourcesRequired::haveLoadedRequiredResources):
2267         * svg/SVGExternalResourcesRequired.h: Add new virtual functions, that must be available in classes that inherit from SVGExternalResourcesRequired.
2268         (WebCore::SVGExternalResourcesRequired::setHaveFiredLoadEvent):
2269         (WebCore::SVGExternalResourcesRequired::isParserInserted):
2270         (WebCore::SVGExternalResourcesRequired::haveFiredLoadEvent):
2271         * svg/SVGScriptElement.cpp: Refactored externalResourcesRequired handling into SVGExternalResourcesRequired.
2272         (WebCore::SVGScriptElement::svgAttributeChanged):
2273         (WebCore::SVGScriptElement::insertedIntoDocument):
2274         (WebCore::SVGScriptElement::finishParsingChildren):
2275         * svg/SVGScriptElement.h: Ditto.
2276         (WebCore::SVGScriptElement::haveLoadedRequiredResources):
2277         (WebCore::SVGScriptElement::dispatchLoadEvent):
2278         (WebCore::SVGScriptElement::setHaveFiredLoadEvent):
2279         (WebCore::SVGScriptElement::isParserInserted):
2280         (WebCore::SVGScriptElement::haveFiredLoadEvent):
2281         * svg/SVGTests.cpp: Fix obvious typo, that leads to an assertion. Always return true if we know the attributeName.
2282         (WebCore::SVGTests::handleAttributeChange):
2283         * svg/SVGTests.h:
2284         * svg/SVGTextPathElement.cpp:
2285         (WebCore::SVGTextPathElement::insertedIntoDocument): Remove ambigous call warning.
2286         * svg/SVGUseElement.cpp: Support externalResourcesRequired="true/false" + dynamic changes of it. Covered by existing tests.
2287         (WebCore::SVGUseElement::SVGUseElement):
2288         (WebCore::SVGUseElement::create):
2289         (WebCore::SVGUseElement::insertedIntoDocument):
2290         (WebCore::SVGUseElement::svgAttributeChanged):
2291         (WebCore::SVGUseElement::notifyFinished):
2292         (WebCore::SVGUseElement::finishParsingChildren):
2293         (WebCore):
2294         * svg/SVGUseElement.h: Ditto.
2295         (WebCore::SVGUseElement::haveLoadedRequiredResources):
2296         (WebCore::SVGUseElement::setHaveFiredLoadEvent):
2297         (WebCore::SVGUseElement::isParserInserted):
2298         (WebCore::SVGUseElement::haveFiredLoadEvent):
2299         * svg/svgtags.in: Pass "bool wasInsertedByParser" to SVGUseElement constructor.
2300
2301 2012-03-14  Andrew Lo  <anlo@rim.com>
2302
2303         [BlackBerry] Implement REQUEST_ANIMATION_FRAME_DISPLAY_MONITOR using AnimationFrameRateController
2304         https://bugs.webkit.org/show_bug.cgi?id=81000
2305
2306         Add BlackBerry port for DisplayRefreshMonitor using AnimationFrameRateController.
2307         Moved refreshDisplayOnMainThread to platform independant part of header.
2308
2309         Reviewed by Antonio Gomes.
2310
2311         requestAnimationFrame already covered by tests in LayoutTests/fast/animation.
2312
2313         * PlatformBlackBerry.cmake:
2314         * platform/graphics/DisplayRefreshMonitor.cpp:
2315         (WebCore::DisplayRefreshMonitor::DisplayRefreshMonitor):
2316         * platform/graphics/DisplayRefreshMonitor.h:
2317         (WebCore):
2318         (DisplayAnimationClient):
2319         (WebCore::DisplayAnimationClient::~DisplayAnimationClient):
2320         (DisplayRefreshMonitor):
2321         * platform/graphics/blackberry/DisplayRefreshMonitorBlackBerry.cpp: Added.
2322         (WebCore):
2323         (WebCore::DisplayAnimationClient::DisplayAnimationClient):
2324         (WebCore::DisplayAnimationClient::animationFrameChanged):
2325         (WebCore::DisplayRefreshMonitor::~DisplayRefreshMonitor):
2326         (WebCore::DisplayRefreshMonitor::startAnimationClient):
2327         (WebCore::DisplayRefreshMonitor::stopAnimationClient):
2328         (WebCore::DisplayRefreshMonitor::requestRefreshCallback):
2329         (WebCore::DisplayRefreshMonitor::displayLinkFired):
2330
2331 2012-03-14  Yury Semikhatsky  <yurys@chromium.org>
2332
2333         Web Inspector: use class name indexes instead of class names when evaluating aggregates
2334         https://bugs.webkit.org/show_bug.cgi?id=81100
2335
2336         Class name and type name indexes are now used when calculating class aggregates
2337         in heap snapshots instead of string lookup followed by a string comparison.
2338
2339         Class names like "Window / www.webkit.org" are now left as is in the UI (it used
2340         to be trimed to just "Window").
2341
2342         Reviewed by Pavel Feldman.
2343
2344         * inspector/front-end/HeapSnapshot.js:
2345         (WebInspector.HeapSnapshotNode.prototype.get classNameIndex):
2346         (WebInspector.HeapSnapshotNode.prototype.hasType):
2347         (WebInspector.HeapSnapshot.prototype._init):
2348         (WebInspector.HeapSnapshot.prototype._buildAggregates):
2349
2350 2012-03-14  Andrey Kosyakov  <caseq@chromium.org>
2351
2352         Web Inspector: add didCancelFrame timeline event
2353         https://bugs.webkit.org/show_bug.cgi?id=80994
2354
2355         Reviewed by Pavel Feldman.
2356
2357         - add an ability to cancel certain timeline events, unless they've been followed by other events.
2358         - implement didCancelFrame() event, fired when a platform decides not to render frame after didBeginFrame() was called.
2359
2360         Test: inspector/timeline/timeline-frames.html
2361
2362         * WebCore.exp.in:
2363         * inspector/InspectorInstrumentation.cpp:
2364         (WebCore::InspectorInstrumentation::didCancelFrameImpl):
2365         (WebCore):
2366         * inspector/InspectorInstrumentation.h:
2367         (InspectorInstrumentation):
2368         (WebCore::InspectorInstrumentation::didCancelFrame):
2369         (WebCore):
2370         * inspector/InspectorTimelineAgent.cpp:
2371         (WebCore::InspectorTimelineAgent::didBeginFrame):
2372         (WebCore):
2373         (WebCore::InspectorTimelineAgent::didCancelFrame):
2374         (WebCore::InspectorTimelineAgent::appendRecord):
2375         (WebCore::InspectorTimelineAgent::pushCurrentRecord):
2376         (WebCore::InspectorTimelineAgent::pushCancelableRecord):
2377         (WebCore::InspectorTimelineAgent::commitCancelableRecords):
2378         (WebCore::InspectorTimelineAgent::cancelRecord):
2379         * inspector/InspectorTimelineAgent.h:
2380         (InspectorTimelineAgent):
2381         (WebCore::InspectorTimelineAgent::TimelineRecordEntry::TimelineRecordEntry):
2382         (TimelineRecordEntry):
2383         * testing/Internals.cpp:
2384         (WebCore::Internals::emitInspectorDidBeginFrame):
2385         (WebCore):
2386         (WebCore::Internals::emitInspectorDidCancelFrame):
2387         * testing/Internals.h:
2388         (Internals):
2389         * testing/Internals.idl:
2390
2391 2012-03-14  Dana Jansens  <danakj@chromium.org>
2392
2393         Region can acquire an empty span by subtracting an empty Region
2394         https://bugs.webkit.org/show_bug.cgi?id=81074
2395
2396         Reviewed by Anders Carlsson.
2397
2398         Subtracting an empty Region B from a Region A can cause A to end
2399         up with an empty span. This violates the rule that two Regions
2400         that cover the exact same area should have equal spans and segments.
2401
2402         Unit test: RegionTest.emptySpan
2403
2404         * platform/graphics/Region.cpp:
2405         (WebCore::Region::subtract):
2406
2407 2012-03-14  Simon Hausmann  <simon.hausmann@nokia.com>
2408
2409         [Textmap] Disable driver based BGRA swizzling for OpenGL/ES
2410
2411         Reviewed by Noam Rosenthal.
2412
2413         The current way of detecting swizzling support (check for GL_EXT_texture_format_BGRA8888)
2414         is unfortunately not reliable. We need a better way of detection that (filed bug 81103).
2415         In the meantime this patch reverts back to doing the swizzling in the texture mapper to
2416         get pixels back onto the screen.
2417
2418         * platform/graphics/texmap/TextureMapperGL.cpp:
2419         (WebCore::driverSupportsBGRASwizzling):
2420         (WebCore::BitmapTextureGL::updateContents):
2421
2422 2012-03-14  Leo Yang  <leo.yang@torchmobile.com.cn>
2423
2424         [BlackBerry] Upstream the BlackBerry change to platform/Cursor.h
2425         https://bugs.webkit.org/show_bug.cgi?id=81086
2426
2427         Reviewed by Rob Buis.
2428
2429         * platform/Cursor.h:
2430         (WebCore):
2431         (WebCore::Cursor::Cursor):
2432         Add the BlackBerry specific PlatformCursor.
2433         * platform/blackberry/PageClientBlackBerry.h:
2434         There was an alias named PlatformCursorHandle for PlatformCursor
2435         in the internal version of Cursor.h. But it's not necessary so it's
2436         not included in the upstreaming version of Cursor.h. As a result,
2437         use PlatformCursor directly in this file.
2438         (PageClientBlackBerry):
2439
2440 2012-03-14  Simon Hausmann  <simon.hausmann@nokia.com>
2441
2442         [Qt] RunLoopQt is missing reentrancy guards
2443         https://bugs.webkit.org/show_bug.cgi?id=80982
2444
2445         Reviewed by Tor Arne Vestbø.
2446
2447         Avoid recursive calls to RunLoop::performWork() with a simple
2448         counting mechanism, to avoid out-of-order message dispatching.
2449
2450         * platform/qt/RunLoopQt.cpp:
2451         (WebCore::RunLoop::TimerObject::TimerObject):
2452         (WebCore::RunLoop::TimerObject::performWork):
2453         (RunLoop::TimerObject):
2454
2455 2012-03-14  Ilya Tikhonovsky  <loislo@chromium.org>
2456
2457         Web Inspector: small improvement for HeapSnapshot performance ~12%.
2458         https://bugs.webkit.org/show_bug.cgi?id=81033
2459
2460         Reviewed by Yury Semikhatsky.
2461
2462         * inspector/front-end/HeapSnapshot.js:
2463         (WebInspector.HeapSnapshot.prototype.get nodeCount):
2464         (WebInspector.HeapSnapshot.prototype.get maxNodeId):
2465         (WebInspector.HeapSnapshot.prototype._buildReverseIndex):
2466         (WebInspector.HeapSnapshot.prototype.get nodeIndexes):
2467         (WebInspector.HeapSnapshot.prototype._buildNodeIndex):
2468
2469 2012-03-14  Kentaro Hara  <haraken@chromium.org>
2470
2471         Return null when shouldAllowAccessToNode() fails
2472         https://bugs.webkit.org/show_bug.cgi?id=80205
2473
2474         Reviewed by Adam Barth.
2475
2476         shouldAllowAccessToNode() is used for window.frameElement, HTMLFrameElement.contentDocument,
2477         and getSVGDocument(). The spec of window.frameElement and HTMLFrameElement.contentDocument
2478         requires that they should return null when the security check fails.
2479         Thus this patch changes the return value from undefined to null.
2480
2481         http://www.whatwg.org/specs/web-apps/current-work/multipage/browsers.html#navigating-nested-browsing-contexts-in-the-dom
2482         http://www.whatwg.org/specs/web-apps/current-work/multipage/the-iframe-element.html#dom-iframe-contentdocument
2483
2484         Tests: http/tests/security/local-iFrame-from-remote.html
2485                http/tests/security/cross-frame-access-frameelement.html
2486                http/tests/security/cross-frame-access-put.html
2487
2488         * bindings/scripts/CodeGeneratorJS.pm:
2489         (GenerateImplementation):
2490         * bindings/scripts/CodeGeneratorV8.pm:
2491         (GenerateNormalAttrGetter):
2492         (GenerateFunctionCallback):
2493
2494         * bindings/scripts/test/JS/JSTestObj.cpp: Updated run-bindings-tests results.
2495         (WebCore::jsTestObjContentDocument):
2496         (WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
2497         * bindings/scripts/test/V8/V8TestObj.cpp:
2498         (WebCore::TestObjInternal::contentDocumentAttrGetter):
2499         (WebCore::TestObjInternal::getSVGDocumentCallback):
2500
2501 2012-03-14  Sudarsana Nagineni  <sudarsana.nagineni@linux.intel.com>
2502
2503         Build error: DNSSoup.cpp:30: fatal error: CString.h: No such file or
2504         directory
2505         https://bugs.webkit.org/show_bug.cgi?id=81093
2506
2507         Reviewed by Philippe Normand.
2508
2509         Fix build error introduced by r110669.
2510
2511         * platform/network/soup/DNSSoup.cpp:
2512
2513 2012-03-14  Marja Hölttä  <marja@google.com>
2514
2515         WebHTTPBody: Keep track of whether the data includes passwords.
2516         https://bugs.webkit.org/show_bug.cgi?id=81003
2517
2518         Reviewed by Darin Fisher.
2519
2520         This change enables Chrome to save HTTP bodies selectively, only
2521         if they don't contain passwords.
2522
2523         * loader/FormSubmission.cpp:
2524         (WebCore::FormSubmission::create): Check if the data contains passwords.
2525         * platform/network/FormData.cpp:
2526         (WebCore::FormData::FormData): Added containsPasswordData, setContainsPasswordData.
2527         * platform/network/FormData.h:
2528         (WebCore::FormData::containsPasswordData): Added.
2529         (WebCore::FormData::setHasPasswordData): Added.
2530         (FormData):
2531
2532 2012-03-14  Vsevolod Vlasov  <vsevik@chromium.org>
2533
2534         Web Inspector: Add snippets tab to scripts navigator.
2535         https://bugs.webkit.org/show_bug.cgi?id=81018
2536
2537         Reviewed by Pavel Feldman.
2538
2539         * English.lproj/localizedStrings.js:
2540         * inspector/front-end/ScriptsNavigator.js:
2541         (WebInspector.ScriptsNavigator):
2542         (WebInspector.ScriptsNavigator.prototype.get defaultFocusedElement):
2543         (WebInspector.ScriptsNavigator.prototype.focus):
2544         (WebInspector.ScriptsNavigator.prototype._showScriptFoldersSettingChanged):
2545         (WebInspector.ScriptsNavigator.prototype.reset):
2546         (WebInspector.ScriptsNavigator.prototype._getOrCreateFolderTreeElement):
2547         (WebInspector.ScriptsNavigator.prototype._createFolderTreeElement):
2548         (WebInspector.ScriptsNavigator.prototype._getOrCreateSnippetEvaluationsFolderTreeElement):
2549         (WebInspector.ScriptsNavigator.prototype._scriptFolderIdentifier):
2550         (WebInspector.NavigatorTreeOutline):
2551         * inspector/front-end/ScriptsPanel.js:
2552         (WebInspector.ScriptsPanel.prototype._uiSourceCodeAdded):
2553         (WebInspector.ScriptsPanel.prototype._revealExecutionLine):
2554         * inspector/front-end/SnippetsModel.js:
2555
2556 2012-03-14  Pavel Feldman  <pfeldman@chromium.org>
2557
2558         Web Inspector: Copy on the Console gives a mangled result.
2559         https://bugs.webkit.org/show_bug.cgi?id=81091
2560
2561         Reviewed by Vsevolod Vlasov.
2562
2563         * inspector/front-end/ConsoleMessage.js:
2564         (WebInspector.ConsoleMessageImpl.prototype._formatMessage):
2565         (WebInspector.ConsoleMessageImpl.prototype._populateStackTraceTreeElement):
2566
2567 2012-03-14  Nikolas Zimmermann  <nzimmermann@rim.com>
2568
2569         External <use> xlink:href references do not work
2570         https://bugs.webkit.org/show_bug.cgi?id=12499
2571
2572         Reviewed by Zoltan Herczeg.
2573
2574         Follow-up fix after r110676.
2575         Assertions are firing due last minute changes in isExternalURIReference.
2576
2577         Fix detecting local resources properly, when the given iri contains a /complex/path.
2578         Use document->completeURL() instead, and compare with the document->url() to decide
2579         if its a local reference or not.
2580
2581         If an external document load fails with an error (eg. file missing) don't assert
2582         in debug builds, instead handle it gracefully.
2583
2584         I decided to clean the code up as well, to make it more safe & obvious.
2585
2586         Test: svg/custom/use-external-crash.svg
2587
2588         * svg/SVGURIReference.cpp:
2589         (WebCore::SVGURIReference::targetElementFromIRIString):
2590         * svg/SVGURIReference.h:
2591         (WebCore::SVGURIReference::isExternalURIReference):
2592         * svg/SVGUseElement.cpp:
2593         (WebCore::SVGUseElement::externalDocument):
2594         (WebCore::SVGUseElement::buildPendingResource):
2595
2596 2012-03-14  Lars Knudsen  <lars.knudsen@nokia.com>
2597
2598         3D transformed surfaces with z>0 gets cropped
2599         https://bugs.webkit.org/show_bug.cgi?id=81009
2600
2601         Reviewed by Noam Rosenthal.
2602
2603         The scissor clipping in TextureMapperGL didn't take 3D transforms 
2604         into account when calculating the clipping region.
2605         Now, it will bail out early if the transform is not affine.
2606
2607         No new tests. Tested by current compositing layout tests.
2608
2609         * platform/graphics/texmap/TextureMapperGL.cpp:
2610         (WebCore::TextureMapperGL::beginScissorClip):
2611
2612 2012-03-14  Hajime Morrita  <morrita@chromium.org>
2613
2614         Unreviewed build fix.
2615
2616         * html/track/TextTrackList.cpp:
2617         (TextTrackList::append):
2618         (TextTrackList::remove):
2619         (TextTrackList::owner): Changed return type from HTMLMediaElement* to Node* and uninlined.
2620         * html/track/TextTrackList.h:
2621         (TextTrackList):
2622
2623 2012-03-13  Vsevolod Vlasov  <vsevik@chromium.org>
2624
2625         Web Inspector: [InspectorIndexedDB] Remote object should be released when data view is removed/updated.
2626         https://bugs.webkit.org/show_bug.cgi?id=81022
2627
2628         Reviewed by Pavel Feldman.
2629
2630         * inspector/front-end/IndexedDBViews.js:
2631         (WebInspector.IDBDataView):
2632         (WebInspector.IDBDataView.prototype._updateData.callback):
2633         (WebInspector.IDBDataView.prototype._updateData):
2634         (WebInspector.IDBDataView.prototype.get statusBarItems):
2635         (WebInspector.IDBDataView.prototype.clear):
2636         * inspector/front-end/ResourcesPanel.js:
2637         (WebInspector.IndexedDBTreeElement.prototype._indexedDBRemoved):
2638         (WebInspector.IDBDatabaseTreeElement.prototype.update):
2639         (WebInspector.IDBDatabaseTreeElement.prototype.onselect):
2640         (WebInspector.IDBDatabaseTreeElement.prototype._objectStoreRemoved):
2641         (WebInspector.IDBDatabaseTreeElement.prototype.clear):
2642         (WebInspector.IDBObjectStoreTreeElement.prototype.update):
2643         (WebInspector.IDBObjectStoreTreeElement.prototype.onselect):
2644         (WebInspector.IDBObjectStoreTreeElement.prototype._indexRemoved):
2645         (WebInspector.IDBObjectStoreTreeElement.prototype.clear):
2646         (WebInspector.IDBIndexTreeElement.prototype.onselect):
2647         (WebInspector.IDBIndexTreeElement.prototype.clear):
2648
2649 2012-03-12  Vsevolod Vlasov  <vsevik@chromium.org>
2650
2651         Web Inspector: Introduce SnippetsScriptMapping.
2652         https://bugs.webkit.org/show_bug.cgi?id=80890
2653
2654         Reviewed by Pavel Feldman.
2655
2656         * inspector/front-end/ScriptMapping.js:
2657         (WebInspector.MainScriptMapping):
2658         (WebInspector.MainScriptMapping.prototype.addScript):
2659         (WebInspector.MainScriptMapping.prototype._mappingForScript):
2660         * inspector/front-end/SnippetsModel.js:
2661         (WebInspector.SnippetsModel.prototype.snippetForId):
2662         (WebInspector.SnippetsModel.prototype.snippetForSourceURL):
2663         (WebInspector.SnippetsScriptMapping):
2664         (WebInspector.SnippetsScriptMapping.prototype.uiSourceCodeList):
2665         (WebInspector.SnippetsScriptMapping.prototype.addScript):
2666         (WebInspector.SnippetsScriptMapping.prototype._snippetAdded):
2667         (WebInspector.SnippetsScriptMapping.prototype._releaseSnippetScript.get if):
2668         (WebInspector.SnippetsScriptMapping.prototype._releaseSnippetScript):
2669         (WebInspector.SnippetsScriptMapping.prototype._snippetDeleted.get this):
2670         (WebInspector.SnippetsScriptMapping.prototype._snippetDeleted):
2671         (WebInspector.SnippetsScriptMapping.prototype.reset):
2672         (WebInspector.SnippetContentProvider):
2673
2674 2012-03-14  Sheriff Bot  <webkit.review.bot@gmail.com>
2675
2676         Unreviewed, rolling out r110673.
2677         http://trac.webkit.org/changeset/110673
2678         https://bugs.webkit.org/show_bug.cgi?id=81090
2679
2680         "Qt minimal build broken" (Requested by yurys on #webkit).
2681
2682         * inspector/CodeGeneratorInspector.py:
2683         (CommandReturnPassModel.ByPointer.get_set_return_condition):
2684         (TypeModel.Enum.get_optional.EnumOptional.get_command_return_pass_model):
2685         (TypeModel.ValueType.ValueOptional.get_command_return_pass_model):
2686         (Generator.process_event):
2687         (Generator.process_command):
2688         * inspector/ContentSearchUtils.cpp:
2689         (WebCore::ContentSearchUtils::buildObjectForSearchMatch):
2690         (WebCore::ContentSearchUtils::searchInTextByLines):
2691         * inspector/ContentSearchUtils.h:
2692         (ContentSearchUtils):
2693         * inspector/InjectedScript.cpp:
2694         (WebCore::InjectedScript::evaluate):
2695         (WebCore::InjectedScript::callFunctionOn):
2696         (WebCore::InjectedScript::evaluateOnCallFrame):
2697         (WebCore::InjectedScript::makeEvalCall):
2698         * inspector/InjectedScript.h:
2699         (InjectedScript):
2700         * inspector/InspectorDOMDebuggerAgent.cpp:
2701         (WebCore::InspectorDOMDebuggerAgent::didInvalidateStyleAttr):
2702         (WebCore::InspectorDOMDebuggerAgent::willInsertDOMNode):
2703         (WebCore::InspectorDOMDebuggerAgent::willRemoveDOMNode):
2704         (WebCore::InspectorDOMDebuggerAgent::willModifyDOMAttr):
2705         (WebCore::InspectorDOMDebuggerAgent::pauseOnNativeEventIfNeeded):
2706         (WebCore::InspectorDOMDebuggerAgent::willSendXMLHttpRequest):
2707         * inspector/InspectorDebuggerAgent.cpp:
2708         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
2709         (WebCore::InspectorDebuggerAgent::setBreakpoint):
2710         (WebCore::InspectorDebuggerAgent::searchInContent):
2711         (WebCore::InspectorDebuggerAgent::setScriptSource):
2712         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
2713         (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
2714         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2715         (WebCore::InspectorDebuggerAgent::didPause):
2716         (WebCore::InspectorDebuggerAgent::breakProgram):
2717         (WebCore::InspectorDebuggerAgent::clearBreakDetails):
2718         * inspector/InspectorDebuggerAgent.h:
2719         (InspectorDebuggerAgent):
2720         * inspector/InspectorPageAgent.cpp:
2721         (WebCore::buildObjectForCookie):
2722         (WebCore::buildArrayForCookies):
2723         (WebCore::InspectorPageAgent::getCookies):
2724         (WebCore::InspectorPageAgent::getResourceTree):
2725         (WebCore::InspectorPageAgent::searchInResource):
2726         (WebCore::InspectorPageAgent::searchInResources):
2727         (WebCore::InspectorPageAgent::buildObjectForFrame):
2728         (WebCore::InspectorPageAgent::buildObjectForFrameTree):
2729         * inspector/InspectorPageAgent.h:
2730         * inspector/InspectorRuntimeAgent.cpp:
2731         (WebCore::InspectorRuntimeAgent::evaluate):
2732         (WebCore::InspectorRuntimeAgent::callFunctionOn):
2733
2734 2012-03-14  Renata Hodovan  <reni@webkit.org>
2735
2736         External <use> xlink:href references do not work
2737         https://bugs.webkit.org/show_bug.cgi?id=12499
2738
2739         Reviewed by Nikolas Zimmermann.
2740
2741         This is a follow-up patch after r108785.
2742         In this patch we bind the previously introduced CachedSVGDocument class
2743         into the caching mechanism of SVGUseElement. The mode how external resources
2744         are handled is similar to the processing of internal ones. We build the instance
2745         and shadow tree the same way but we have to keep in mind that the requested resources
2746         maybe not loaded yet. We can check it with cachedDocumentIsStillLoading() function.
2747
2748         SVGURIReference::targetElementFromIRIString() also need to be extended. The baseURI
2749         computation needs to take the referenced documents URL into account, instead of the current documents.
2750
2751         The patch affects a lot of tests which have external resources especially in svg/batik. Because
2752         of the size of that test refactor they will be commited in a follow-up patch.
2753
2754         Tests: svg/W3C-SVG-1.2-Tiny/struct-use-recursion-01-t.svg
2755                svg/W3C-SVG-1.2-Tiny/struct-use-recursion-02-t.svg
2756                svg/W3C-SVG-1.2-Tiny/struct-use-recursion-03-t.svg
2757                svg/custom/use-extern-href.svg
2758                svg/custom/use-referencing-an-image-expected.svg
2759                svg/custom/use-referencing-an-image.svg
2760                svg/custom/use-referencing-indirectly-itself-expected.svg
2761                svg/custom/use-referencing-indirectly-itself.svg
2762                svg/custom/use-referencing-itself-expected.svg
2763                svg/custom/use-referencing-itself.svg
2764                svg/dynamic-updates/SVGUseElement-dom-href1-attr.html
2765                svg/dynamic-updates/SVGUseElement-dom-href2-attr.html
2766                svg/dynamic-updates/SVGUseElement-svgdom-href1-prop.html
2767                svg/dynamic-updates/SVGUseElement-svgdom-href2-prop.html
2768
2769         * loader/cache/CachedResourceLoader.cpp:
2770         (WebCore):
2771         (WebCore::CachedResourceLoader::requestSVGDocument):
2772         * loader/cache/CachedResourceLoader.h:
2773         (WebCore):
2774         (CachedResourceLoader):
2775         * page/ContentSecurityPolicy.h:
2776         * platform/KURL.cpp:
2777         (WebCore::equalIgnoringFragmentIdentifier):
2778         * platform/network/chromium/ResourceRequest.h:
2779         * svg/SVGURIReference.cpp:
2780         (WebCore::urlFromIRIStringWithFragmentIdentifier):
2781         (WebCore):
2782         (WebCore::SVGURIReference::targetElementFromIRIString):
2783         * svg/SVGURIReference.h:
2784         (SVGURIReference):
2785         (WebCore::SVGURIReference::isExternalURIReference):
2786         * svg/SVGUseElement.cpp:
2787         (WebCore::SVGUseElement::SVGUseElement):
2788         (WebCore::SVGUseElement::~SVGUseElement):
2789         (WebCore):
2790         (WebCore::SVGUseElement::referencedDocument):
2791         (WebCore::SVGUseElement::externalDocument):
2792         (WebCore::SVGUseElement::svgAttributeChanged):
2793         (WebCore::dumpInstanceTree):
2794         (WebCore::SVGUseElement::buildPendingResource):
2795         (WebCore::SVGUseElement::buildShadowAndInstanceTree):
2796         (WebCore::SVGUseElement::hasCycleUseReferencing):
2797         (WebCore::SVGUseElement::expandUseElementsInShadowTree):
2798         (WebCore::SVGUseElement::expandSymbolElementsInShadowTree):
2799         (WebCore::SVGUseElement::notifyFinished):
2800         (WebCore::SVGUseElement::cachedDocumentIsStillLoading):
2801         (WebCore::SVGUseElement::instanceTreeIsLoading):
2802         * svg/SVGUseElement.h:
2803         (WebCore):
2804         (SVGUseElement):
2805
2806 2012-03-14  Peter Rybin  <peter.rybin@gmail.com>
2807
2808         Web Inspector: TypeBuilder: Introduce OptOutput class for optional output parameters
2809         https://bugs.webkit.org/show_bug.cgi?id=80789
2810
2811         Reviewed by Yury Semikhatsky.
2812
2813         OptOutput class is added for optional return parameters.
2814
2815         Strict mode added to Generator that makes all parameter types strict
2816         and drop pre-set default values for return parameters.
2817
2818         Debugger and Page domain is switched to strict mode.
2819
2820
2821         * inspector/CodeGeneratorInspector.py:
2822         (CommandReturnPassModel.ByPointer):
2823         (CommandReturnPassModel):
2824         (CommandReturnPassModel.OptOutput):
2825         (CommandReturnPassModel.OptOutput.__init__):
2826         (CommandReturnPassModel.OptOutput.get_return_var_type):
2827         (CommandReturnPassModel.OptOutput.get_output_argument_prefix):
2828         (CommandReturnPassModel.OptOutput.get_output_to_raw_expression):
2829         (CommandReturnPassModel.OptOutput.get_output_parameter_type):
2830         (CommandReturnPassModel.OptOutput.get_set_return_condition):
2831         (TypeModel.Enum.get_optional.EnumOptional.get_command_return_pass_model):
2832         (TypeModel.ValueType.ValueOptional.get_command_return_pass_model):
2833         (OptOutput):
2834         (Generator.process_event):
2835         (Generator.process_command):
2836         * inspector/ContentSearchUtils.cpp:
2837         (WebCore::ContentSearchUtils::buildObjectForSearchMatch):
2838         (WebCore::ContentSearchUtils::searchInTextByLines):
2839         * inspector/ContentSearchUtils.h:
2840         (ContentSearchUtils):
2841         * inspector/InjectedScript.cpp:
2842         (WebCore::InjectedScript::evaluate):
2843         (WebCore::InjectedScript::callFunctionOn):
2844         (WebCore::InjectedScript::evaluateOnCallFrame):
2845         (WebCore::InjectedScript::makeEvalCall):
2846         * inspector/InjectedScript.h:
2847         (InjectedScript):
2848         * inspector/InspectorDOMDebuggerAgent.cpp:
2849         (WebCore):
2850         * inspector/InspectorDebuggerAgent.cpp:
2851         (WebCore::InspectorDebuggerAgent::setBreakpointByUrl):
2852         (WebCore::InspectorDebuggerAgent::setBreakpoint):
2853         (WebCore::InspectorDebuggerAgent::searchInContent):
2854         (WebCore::InspectorDebuggerAgent::setScriptSource):
2855         (WebCore::InspectorDebuggerAgent::getFunctionDetails):
2856         (WebCore::InspectorDebuggerAgent::schedulePauseOnNextStatement):
2857         (WebCore::InspectorDebuggerAgent::evaluateOnCallFrame):
2858         (WebCore::InspectorDebuggerAgent::didPause):
2859         (WebCore::InspectorDebuggerAgent::breakProgram):
2860         (WebCore::InspectorDebuggerAgent::clearBreakDetails):
2861         * inspector/InspectorDebuggerAgent.h:
2862         (InspectorDebuggerAgent):
2863         * inspector/InspectorPageAgent.cpp:
2864         (WebCore::buildObjectForCookie):
2865         (WebCore::buildArrayForCookies):
2866         (WebCore::InspectorPageAgent::getCookies):
2867         (WebCore::InspectorPageAgent::getResourceTree):
2868         (WebCore::InspectorPageAgent::searchInResource):
2869         (WebCore::InspectorPageAgent::searchInResources):
2870         (WebCore::InspectorPageAgent::buildObjectForFrame):
2871         (WebCore::InspectorPageAgent::buildObjectForFrameTree):
2872         * inspector/InspectorPageAgent.h:
2873         * inspector/InspectorRuntimeAgent.cpp:
2874         (WebCore::InspectorRuntimeAgent::evaluate):
2875         (WebCore::InspectorRuntimeAgent::callFunctionOn):
2876
2877 2012-03-14  Sergio Villar Senin  <svillar@igalia.com>
2878
2879         Unreviewed. Build fix for EFL after r110669.
2880
2881         * PlatformEfl.cmake: added DNSSoup.cpp
2882
2883 2012-03-13  Sergio Villar Senin  <svillar@igalia.com>
2884
2885         [GTK] Use the same DNS prefetching path than the other ports.
2886         https://bugs.webkit.org/show_bug.cgi?id=80997
2887
2888         Reviewed by Martin Robinson.
2889
2890         This patch basically reverts r56128. There is no need to add an
2891         special code path for GTK+ DNS pre-fetching because the main
2892         reason to do that (some potential changes in libsoup) is not
2893         going to happen. It also reduces the amount of DNS queries by
2894         adding a NULL hostname check.
2895
2896         No need for new tests as this just moves code around.
2897
2898         * GNUmakefile.list.am:
2899         * html/HTMLAnchorElement.cpp:
2900         (WebCore::HTMLAnchorElement::parseAttribute):
2901         * html/HTMLLinkElement.cpp:
2902         * loader/LinkLoader.cpp:
2903         (WebCore::LinkLoader::loadLink):
2904         * page/Chrome.cpp:
2905         (WebCore::Chrome::mouseDidMoveOverElement):
2906         * platform/network/DNS.h:
2907         (WebCore):
2908         * platform/network/ResourceHandle.cpp:
2909         * platform/network/ResourceHandle.h:
2910         (ResourceHandle):
2911         * platform/network/chromium/DNSChromium.cpp:
2912         * platform/network/soup/DNSSoup.cpp: restored.
2913         (WebCore):
2914         (WebCore::prefetchDNS):
2915         * platform/network/soup/ResourceHandleSoup.cpp:
2916
2917 2012-03-14  Kentaro Hara  <haraken@chromium.org>
2918
2919         Return null when shouldAllowAccessToNode() fails
2920         https://bugs.webkit.org/show_bug.cgi?id=80205
2921
2922         Reviewed by Adam Barth.
2923
2924         shouldAllowAccessToNode() is used for window.frameElement, HTMLFrameElement.contentDocument,
2925         and getSVGDocument(). The spec of window.frameElement and HTMLFrameElement.contentDocument
2926         requires that they should return null when the security check fails.
2927         Thus this patch changes the return value from undefined to null.
2928
2929         http://www.whatwg.org/specs/web-apps/current-work/multipage/browsers.html#navigating-nested-browsing-contexts-in-the-dom
2930         http://www.whatwg.org/specs/web-apps/current-work/multipage/the-iframe-element.html#dom-iframe-contentdocument
2931
2932         Tests: http/tests/security/local-iFrame-from-remote.html
2933                http/tests/security/cross-frame-access-frameelement.html
2934                http/tests/security/cross-frame-access-put.html
2935
2936         * bindings/scripts/CodeGeneratorJS.pm:
2937         (GenerateImplementation):
2938         * bindings/scripts/CodeGeneratorV8.pm:
2939         (GenerateNormalAttrGetter):
2940         (GenerateFunctionCallback):
2941
2942         * bindings/scripts/test/JS/JSTestObj.cpp: Updated run-bindings-tests results.
2943         (WebCore::jsTestObjContentDocument):
2944         (WebCore::jsTestObjPrototypeFunctionGetSVGDocument):
2945         * bindings/scripts/test/V8/V8TestObj.cpp:
2946         (WebCore::TestObjInternal::contentDocumentAttrGetter):
2947         (WebCore::TestObjInternal::getSVGDocumentCallback):
2948
2949 2012-03-13  Yosifumi Inoue  <yosin@chromium.org>
2950
2951         [Forms] Hidden input element should not have labels. 
2952         https://bugs.webkit.org/show_bug.cgi?id=80403
2953
2954         Reviewed by Kent Tamura.
2955
2956         This patch changes "labels" attribute behavior for hidden input type.
2957         It returns null instead of NodeList of labels or empty node list.
2958
2959         Note: The HTML5 specification isn't clear for non-labelable element's "labels"
2960         attribute return value. Firefox and Opera return empty node list. IE returns null.
2961
2962         No new tests. Existing tests are updated.
2963
2964         * html/HTMLInputElement.cpp:
2965         (WebCore::HTMLInputElement::isLabelable): Added. Dispatch to InputType.
2966         * html/HiddenInputType.h:  Added isLabelable returning false.
2967         * html/InputType.cpp:
2968         (WebCore::InputType::isLabelable): Added. Returning true for all input types except for "hidden" type.
2969         (WebCore):
2970         * html/InputType.h:
2971         (InputType): Added isLabelable declaration.
2972
2973 2012-03-13  Yosifumi Inoue  <yosin@chromium.org>
2974
2975         [Forms] The "output" element should have labels.
2976         https://bugs.webkit.org/show_bug.cgi?id=80466
2977
2978         Reviewed by Kent Tamura.
2979
2980         This patch enables functionality of "labels" attribute for
2981         HTMLOutputElement implemented in LabelableElement which use
2982         isLabelable predicate whether an element can have label or not.
2983
2984         Update existing tests in fast/forms/label/ directory to cover
2985         the "output" element with the "labels" attribute.
2986
2987         * html/HTMLOutputElement.h: Implement virtual method isLabelable.
2988
2989 2012-03-13  Luke Macpherson   <macpherson@chromium.org>
2990
2991         Move opacity clamping into RenderStyle setter.
2992         https://bugs.webkit.org/show_bug.cgi?id=76966
2993
2994         Reviewed by Eric Seidel.
2995
2996         Covered by existing tests.
2997
2998         * css/CSSStyleSelector.cpp:
2999         (WebCore::CSSStyleSelector::applyProperty):
3000         * rendering/style/RenderStyle.h:
3001         (WebCore::RenderStyleBitfields::setOpacity):
3002
3003 2012-03-12  Igor Oliveira  <igor.o@sisa.samsung.com>
3004
3005         Split the extra logic out of RenderObjectChildList::updateBeforeAfterContent
3006         https://bugs.webkit.org/show_bug.cgi?id=80856
3007
3008         Extra part of the generated content handling logic out of RenderObjectChildList::updateBeforeAfterContent
3009
3010         Reviewed by Julien Chaffraix.
3011
3012         No change in behavior expected.
3013
3014         * rendering/RenderObjectChildList.cpp:
3015         (WebCore::RenderObjectChildList::updateBeforeAfterStyle):
3016         (WebCore::createRenderForBeforeAfterContent):
3017         (WebCore::RenderObjectChildList::updateBeforeAfterContent):
3018         * rendering/RenderObjectChildList.h:
3019         (WebCore):
3020         (RenderObjectChildList):
3021
3022 2012-03-13  Simon Fraser  <simon.fraser@apple.com>
3023
3024         Fix potential crash when loading test results
3025         https://bugs.webkit.org/show_bug.cgi?id=81062
3026         <rdar://problem/11041732>
3027         
3028         Reviewed by Dean Jackson.
3029
3030         If RenderLayerBacking::isSimpleContainerCompositingLayer() is called early,
3031         before the document has a documentElement(), then it crashes. Fix with
3032         a null check on documentElement().
3033         
3034         No test because it's timing dependent.
3035
3036         * rendering/RenderLayerBacking.cpp:
3037         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
3038
3039 2012-03-13  Dan Bernstein  <mitz@apple.com>
3040
3041         <rdar://problem/11025225> Assertion failure in RenderView::computeRectForRepaint() (!repaintContainer || repaintContainer == this) at store.apple.com
3042         https://bugs.webkit.org/show_bug.cgi?id=81051
3043
3044         Reviewed by Simon Fraser.
3045
3046         Test: ManualTests/inline-repaint-container.html.
3047
3048         * rendering/RenderInline.cpp:
3049         (WebCore::RenderInline::clippedOverflowRectForRepaint): This function was not handling the
3050         case of the repaint container being a descendant of the containing block correctly, leading
3051         to the assertion failure, but also to a correctness bug seen in the new test. If the repaint
3052         container is a descendant of the containing block, just return the rect in the repaint
3053         container coordinates.
3054
3055 2012-03-13  Dan Bernstein  <mitz@apple.com>
3056
3057         <rdar://problem/11025217> [Mac] Assertion failure in collectComplexTextRunsForCharactersCoreText
3058         https://bugs.webkit.org/show_bug.cgi?id=77044
3059
3060         Reviewed by Sam Weinig.
3061
3062         Test: platform/mac/fast/text/core-text-fallback-to-unknown-font.html
3063
3064         Handle the case of Core Text choosing a fallback font that NSFontManager cannot find by name.
3065
3066         * platform/graphics/FontCache.h:
3067         (FontCache): Made ComplexTextController a friend class.
3068         * platform/graphics/mac/ComplexTextControllerCoreText.mm:
3069         (WebCore::ComplexTextController::collectComplexTextRunsForCharactersCoreText): Removed the
3070         failing assertion, which was not true, and added code to handle the case where a font
3071         cannot be found by name by using the font as returned from Core Text.
3072
3073 2012-03-13  Erik Arvidsson  <arv@chromium.org>
3074
3075         [V8] Use v8::V8::AddImplicitReferences instead of SetHiddenValue
3076         https://bugs.webkit.org/show_bug.cgi?id=80880
3077
3078         Reviewed by Adam Barth.
3079
3080         We used to add a hidden property in the getter to the returned wrapper.
3081         With this patch we instead handle the liveness of the wrapper in the GC phase by
3082         calling v8::V8::AddHiddenReference.
3083
3084         To reduce the amount of custom code we need, the V8 code generator now supports
3085         GenerateIsReachable (as well as CustomIsReachable) which, even though different
3086         from the JSC attribute, is used in the same cases and takes the same values (even though
3087         at the moment not all JSC values are supported by V8). Interfaces that have *IsReachable
3088         also have a dependent life time (just like if V8DependentLifetime was present).
3089
3090         Second try. This time with an added include in TextTrackList.cpp.
3091
3092         No new tests. Covered by existing tests.
3093
3094         * Target.pri:
3095         * UseV8.cmake:
3096         * WebCore.gypi:
3097         * bindings/scripts/CodeGeneratorJS.pm:
3098         (GetGenerateIsReachable):
3099         (GetCustomIsReachable):
3100         (GenerateHeader):
3101         (GenerateImplementation):
3102         * bindings/scripts/CodeGeneratorV8.pm:
3103         (NeedsToVisitDOMWrapper):
3104         (GetGenerateIsReachable):
3105         (GetCustomIsReachable):
3106         (GenerateVisitDOMWrapper):
3107         (GenerateHeader):
3108         (GenerateNamedConstructorCallback):
3109         (GenerateImplementation):
3110         * bindings/scripts/IDLAttributes.txt:
3111         * bindings/scripts/test/V8/V8Float64Array.cpp:
3112         (WebCore):
3113         * bindings/scripts/test/V8/V8Float64Array.h:
3114         (V8Float64Array):
3115         * bindings/scripts/test/V8/V8TestActiveDOMObject.cpp:
3116         (WebCore):
3117         * bindings/scripts/test/V8/V8TestActiveDOMObject.h:
3118         (V8TestActiveDOMObject):
3119         * bindings/scripts/test/V8/V8TestCustomNamedGetter.cpp:
3120         (WebCore):
3121         * bindings/scripts/test/V8/V8TestCustomNamedGetter.h:
3122         (V8TestCustomNamedGetter):
3123         * bindings/scripts/test/V8/V8TestEventConstructor.cpp:
3124         (WebCore):
3125         * bindings/scripts/test/V8/V8TestEventConstructor.h:
3126         (V8TestEventConstructor):
3127         * bindings/scripts/test/V8/V8TestEventTarget.cpp:
3128         (WebCore):
3129         * bindings/scripts/test/V8/V8TestEventTarget.h:
3130         (V8TestEventTarget):
3131         * bindings/scripts/test/V8/V8TestInterface.cpp:
3132         (WebCore):
3133         * bindings/scripts/test/V8/V8TestInterface.h:
3134         (V8TestInterface):
3135         * bindings/scripts/test/V8/V8TestMediaQueryListListener.cpp:
3136         (WebCore):
3137         * bindings/scripts/test/V8/V8TestMediaQueryListListener.h:
3138         (V8TestMediaQueryListListener):
3139         * bindings/scripts/test/V8/V8TestNamedConstructor.cpp:
3140         (WebCore):
3141         * bindings/scripts/test/V8/V8TestNamedConstructor.h:
3142         (V8TestNamedConstructor):
3143         * bindings/scripts/test/V8/V8TestObj.cpp:
3144         (WebCore):
3145         * bindings/scripts/test/V8/V8TestObj.h:
3146         (V8TestObj):
3147         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.cpp:
3148         (WebCore):
3149         * bindings/scripts/test/V8/V8TestSerializedScriptValueInterface.h:
3150         (V8TestSerializedScriptValueInterface):
3151         * bindings/v8/NPV8Object.cpp:
3152         (WebCore::npObjectTypeInfo):
3153         * bindings/v8/V8GCController.cpp:
3154         (WebCore::GrouperVisitor::visitDOMWrapper):
3155         * bindings/v8/WrapperTypeInfo.h:
3156         (WebCore):
3157         (WrapperTypeInfo):
3158         * bindings/v8/custom/V8CSSStyleSheetCustom.cpp: Removed.
3159         * bindings/v8/custom/V8DOMStringMapCustom.cpp:
3160         * bindings/v8/custom/V8DOMTokenListCustom.cpp: Removed.
3161         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
3162         (WebCore):
3163         * bindings/v8/custom/V8NamedNodeMapCustom.cpp:
3164         * bindings/v8/custom/V8StyleSheetCustom.cpp:
3165         (WebCore::toV8):
3166         * css/CSSStyleSheet.idl:
3167         * css/StyleSheet.idl:
3168         * dom/DOMStringMap.idl:
3169         * dom/NamedNodeMap.idl:
3170         * html/DOMTokenList.idl:
3171         * html/track/TextTrackList.cpp:
3172         * html/track/TextTrackList.idl:
3173
3174 2012-03-13  Jacky Jiang  <zhajiang@rim.com>
3175
3176         MathML crash in WebCore::Node::previousSibling()
3177         https://bugs.webkit.org/show_bug.cgi?id=80773
3178
3179         Reviewed by Julien Chaffraix.
3180
3181         When adding child for msub render, if the child is mtr or mtd render,
3182         we will creat an anonymous render as the container. As the anonymous
3183         render's node is 0, accessing it directly can cause crash.
3184         We should do a valid check of the node before using. In addition to
3185         that, for msub, attach the anonymous render and it's children to render
3186         tree. For msubsup, such kind of situation should never happen based on
3187         the current codebase.
3188
3189         Test: mathml/msub-anonymous-child-render-crash.html
3190
3191         * rendering/mathml/RenderMathMLSubSup.cpp:
3192         (WebCore::RenderMathMLSubSup::addChild):
3193
3194 2012-03-13  Mihnea Ovidenie  <mihnea@adobe.com>
3195
3196         [CSSRegions]NamedFlow::getRegionsByContentNode should not return a live NodeList
3197         https://bugs.webkit.org/show_bug.cgi?id=81021
3198
3199         Reviewed by Ryosuke Niwa.
3200
3201         Reverting the original patch as we need a better solution.
3202
3203         * CMakeLists.txt:
3204         * GNUmakefile.list.am:
3205         * Target.pri:
3206         * WebCore.gypi:
3207         * WebCore.vcproj/WebCore.vcproj:
3208         * WebCore.xcodeproj/project.pbxproj:
3209         * dom/Node.cpp:
3210         (WebCore::NodeListsNodeData::invalidateCaches):
3211         (WebCore::NodeListsNodeData::isEmpty):
3212         * dom/Node.h:
3213         (Node):
3214         * dom/NodeRareData.h:
3215         (NodeListsNodeData):
3216         * dom/RegionNodeList.cpp: Removed.
3217         * dom/RegionNodeList.h: Removed.
3218         * dom/WebKitNamedFlow.cpp:
3219         * dom/WebKitNamedFlow.h:
3220         (WebKitNamedFlow):
3221         * dom/WebKitNamedFlow.idl:
3222         * rendering/RenderFlowThread.cpp:
3223         * rendering/RenderFlowThread.h:
3224         * rendering/RenderRegion.h:
3225         (RenderRegion):
3226
3227 2012-03-13  Shawn Singh  <shawnsingh@chromium.org>
3228
3229         [chromium] wrong transform causing incorrect culling
3230         https://bugs.webkit.org/show_bug.cgi?id=80471
3231
3232         Reviewed by James Robinson.
3233
3234         Unit test added to CCRenderSurfaceTest.cpp
3235
3236         In addition to using originTransform() instead of drawTransform(),
3237         this patch shuffles a bit of code so that a unit test can be
3238         easily added.
3239
3240         * platform/graphics/chromium/cc/CCRenderPass.cpp:
3241         (WebCore::CCRenderPass::appendQuadsForRenderSurfaceLayer):
3242         * platform/graphics/chromium/cc/CCRenderSurface.cpp:
3243         (WebCore::CCRenderSurface::createSharedQuadState):
3244         (WebCore):
3245         * platform/graphics/chromium/cc/CCRenderSurface.h:
3246         (CCRenderSurface):
3247
3248 2012-03-13  Dave Tharp  <dtharp@codeaurora.org>
3249
3250         Alternate xml-stylesheets with no title are loaded, in violation of the CSSOM draft
3251         https://bugs.webkit.org/show_bug.cgi?id=77549
3252
3253         Reviewed by David Hyatt.
3254
3255         Amended code to ignore alternate stylesheets that do not have a title attribute.
3256
3257         Test: fast/css/xml-stylesheet-alternate-no-title.xhtml
3258
3259         * dom/ProcessingInstruction.cpp:
3260         (WebCore::ProcessingInstruction::checkStyleSheet):
3261
3262 2012-03-13  Levi Weintraub  <leviw@chromium.org>
3263
3264         Revert RenderLayer::absoluteBoundingBox to an IntRect
3265         https://bugs.webkit.org/show_bug.cgi?id=81017
3266
3267         Reviewed by Eric Seidel.
3268
3269         Reverting RenderLayer::absoluteBoundingBox to an (pixel snapped) IntRect. Whenever
3270         possible, we use integers representing for absolute coordinates. This is especially
3271         relevant for methods, such as this one, that are exported and used in platform code.
3272
3273         No new tests. No change in behavior.
3274
3275         * rendering/RenderLayer.cpp:
3276         (WebCore::RenderLayer::absoluteBoundingBox):
3277         * rendering/RenderLayer.h:
3278         (RenderLayer):
3279         * rendering/RenderLayerCompositor.cpp:
3280         (WebCore::RenderLayerCompositor::requiresCompositingForPosition): This intersects
3281         the absolute bounding box with the FrameView, which uses all integer values. It's
3282         the only use of absoluteBoundingBox in WebCore.
3283
3284 2012-03-13  Nat Duca  <nduca@chromium.org>
3285
3286         [chromium] vsync ticks are needed in invisible tabs when we are still updating resources
3287         https://bugs.webkit.org/show_bug.cgi?id=80910
3288
3289         Reviewed by James Robinson.
3290
3291         * platform/graphics/chromium/cc/CCSchedulerStateMachine.cpp:
3292         (WebCore::CCSchedulerStateMachine::vsyncCallbackNeeded):
3293
3294 2012-03-13  Dave Tharp  <dtharp@codeaurora.org>
3295
3296         Alternate stylesheets (without title attribute) are loaded on refresh
3297         https://bugs.webkit.org/show_bug.cgi?id=24354
3298
3299         Reviewed by David Hyatt.
3300
3301         Alternate stylesheets are now ignored in <link> tags if 
3302         they have no title attribute (per spec).
3303
3304         Tests: fast/css/link-alternate-stylesheet-1.html
3305                fast/css/link-alternate-stylesheet-2.html
3306                fast/css/link-alternate-stylesheet-3.html
3307                fast/css/link-alternate-stylesheet-4.html
3308                fast/css/link-alternate-stylesheet-5.html
3309
3310         * dom/Document.cpp:
3311         (WebCore::Document::collectActiveStylesheets):
3312
3313 2012-03-13  Dana Jansens  <danakj@chromium.org>
3314
3315         Region::contains(IntPoint) is slow
3316         https://bugs.webkit.org/show_bug.cgi?id=81008
3317
3318         Reviewed by Anders Carlsson.
3319
3320         Speed up Region::contains(IntPoint) by directly testing if the point
3321         is inside the Region's shape, rather than using a temporary 1x1 Region
3322         for the test.
3323
3324         Unit test: RegionTest.containsPoint
3325
3326         * platform/graphics/Region.cpp:
3327         (WebCore::Region::contains):
3328
3329 2012-03-13  Adrienne Walker  <enne@google.com>
3330
3331         [chromium] Mark root layer scrollbars as always opaque to disable blending
3332         https://bugs.webkit.org/show_bug.cgi?id=79951
3333
3334         Reviewed by James Robinson.
3335
3336         Now that scrollbar layers exist, mark non-overlay root scrollbars as
3337         opaque. This disables blending for correctness and performance.
3338
3339         * page/scrolling/chromium/ScrollingCoordinatorChromium.cpp:
3340         (WebCore::scrollbarLayerDidChange):
3341         (WebCore::ScrollingCoordinator::frameViewHorizontalScrollbarLayerDidChange):
3342         (WebCore::ScrollingCoordinator::frameViewVerticalScrollbarLayerDidChange):
3343         * platform/graphics/chromium/LayerRendererChromium.cpp:
3344         (WebCore::LayerRendererChromium::drawTileQuad):
3345
3346 2012-03-13  Gavin Peters  <gavinp@chromium.org>
3347
3348         Remove vestigal abortEvent from image attribute.
3349         https://bugs.webkit.org/show_bug.cgi?id=80795
3350
3351         Reviewed by Adam Barth.
3352
3353         It seems we installed a listener for the abort event on images,
3354         but never ever raised them.  So this patch removes it.  This could
3355         cause different behaviour if the user sends abort events directly
3356         at an image element, although addEventListener will still work.
3357
3358         * html/HTMLImageElement.cpp:
3359         (WebCore::HTMLImageElement::parseAttribute):
3360
3361 2012-03-13  Nate Chapin  <japhet@chromium.org>
3362
3363         Rework how a CachedRawResource decides if it can be reused
3364         for a given ResourceRequest. Ensure method, body, cookie policy,
3365         and all headers match.
3366         http://bugs.webkit.org/show_bug.cgi?id=79325
3367
3368         Reviewed by Oliver Hunt.
3369
3370         Test: http/tests/cache/xhr-body.html
3371
3372         * loader/cache/CachedRawResource.cpp:
3373         (WebCore::CachedRawResource::canReuse):
3374         * loader/cache/CachedRawResource.h: Take a ResourceRequest in canReuse().
3375         * loader/cache/CachedResourceLoader.cpp:
3376         (WebCore::CachedResourceLoader::determineRevalidationPolicy): Remove Range header
3377             check, since it is now redundant.
3378
3379 2012-03-13  Rob Buis  <rbuis@rim.com>
3380
3381         Fix cast-align GCC warning
3382         https://bugs.webkit.org/show_bug.cgi?id=80790
3383
3384         Reviewed by Dan Bates.
3385
3386         This touches unpackOneRowOfBGRA8ToRGBA8.
3387
3388         * platform/graphics/GraphicsContext3D.cpp:
3389         (WebCore):
3390
3391 2012-03-12  Simon Fraser  <simon.fraser@apple.com>
3392
3393         Refactor some code that is used to check whether a layer needs backing store
3394         https://bugs.webkit.org/show_bug.cgi?id=80917
3395
3396         Reviewed by Dean Jackson.
3397
3398         Move some code out of isSimpleContainerCompositingLayer() in two new
3399         methods to make the code more self-descriptive.
3400         
3401         No behavior change, so no tests.
3402
3403         * rendering/RenderLayerBacking.cpp:
3404         (WebCore::RenderLayerBacking::paintsBoxDecorations):
3405         (WebCore::RenderLayerBacking::paintsChildren):
3406         (WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
3407         * rendering/RenderLayerBacking.h:
3408         (RenderLayerBacking):
3409
3410 2012-03-13  Daniel Bates  <dbates@webkit.org>
3411
3412         REGRESSION(r99369): File input button doesn't highlight when pressed
3413         https://bugs.webkit.org/show_bug.cgi?id=79385
3414
3415         Reviewed by Kent Tamura.
3416
3417         Fixes an issue where the file input button doesn't highlight on mouse press.
3418
3419         Currently we always override the active state of the button with whether
3420         a dragged file is being hovered over the file input control (i.e. can the control
3421         receive a dropped file; HTMLInputElement::canReceiveDroppedFiles()).
3422         Instead, we should only override the active state of the button when the state
3423         changes for whether we can receive dropped files (e.g. during a drag) so that
3424         we honor the active state of the button when it is pressed.
3425
3426         Test: fast/forms/file/file-input-pressed-state.html
3427
3428         * rendering/RenderFileUploadControl.cpp:
3429         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
3430         (WebCore::RenderFileUploadControl::updateFromElement):
3431         * rendering/RenderFileUploadControl.h:
3432         (RenderFileUploadControl):
3433
3434 2012-03-13  Dana Jansens  <danakj@chromium.org>
3435
3436         [chromium] Use CCOcclusionTracker for draw culling
3437         https://bugs.webkit.org/show_bug.cgi?id=80743
3438
3439         Reviewed by Adrienne Walker.
3440
3441         In this CL we enable the use of CCOcclusionTracker for draw-side
3442         culling. This means moving from a per-quad culling model to a
3443         per-layer model.
3444
3445         When calculating RenderPasses, we construct the set of passes,
3446         then iterate over layers in front-to-back order. We make
3447         CCQuadCuller instantiable, and pass it to the layer
3448         appendQuads() methods instead of the bare list, where it can
3449         filter quads before the end up in the list.
3450
3451         Covered by existing tests.
3452
3453         * platform/graphics/chromium/LayerRendererChromium.cpp:
3454         (WebCore::LayerRendererChromium::drawRenderPass):
3455         * platform/graphics/chromium/LayerRendererChromium.h:
3456         * platform/graphics/chromium/cc/CCCanvasLayerImpl.cpp:
3457         (WebCore::CCCanvasLayerImpl::appendQuads):
3458         * platform/graphics/chromium/cc/CCCanvasLayerImpl.h:
3459         (CCCanvasLayerImpl):
3460         * platform/graphics/chromium/cc/CCLayerImpl.cpp:
3461         (WebCore::CCLayerImpl::appendQuads):
3462         (WebCore::CCLayerImpl::appendGutterQuads):
3463         (WebCore::CCLayerImpl::appendDebugBorderQuad):
3464         * platform/graphics/chromium/cc/CCLayerImpl.h:
3465         (WebCore):
3466         (CCLayerImpl):
3467         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.cpp:
3468         (WebCore::CCLayerTreeHostImpl::calculateRenderPasses):
3469         (WebCore::CCLayerTreeHostImpl::drawLayers):
3470         * platform/graphics/chromium/cc/CCLayerTreeHostImpl.h:
3471         (CCLayerTreeHostImpl):
3472         * platform/graphics/chromium/cc/CCPluginLayerImpl.cpp:
3473         (WebCore::CCPluginLayerImpl::appendQuads):
3474         * platform/graphics/chromium/cc/CCPluginLayerImpl.h:
3475         (CCPluginLayerImpl):
3476         * platform/graphics/chromium/cc/CCQuadCuller.cpp:
3477         (WebCore::CCQuadCuller::CCQuadCuller):
3478         (WebCore::CCQuadCuller::append):
3479         * platform/graphics/chromium/cc/CCQuadCuller.h:
3480         (WebCore):
3481         (CCQuadCuller):
3482         * platform/graphics/chromium/cc/CCRenderPass.cpp:
3483         (WebCore::CCRenderPass::appendQuadsForLayer):