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