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