2010-04-23 Ben Murdoch <benm@google.com>
[WebKit-https.git] / WebCore / ChangeLog
1 2010-04-23  Qi Zhang  <qi.2.zhang@nokia.com>
2
3         Reviewed by Laszlo Gombos.
4
5         [Qt] LayoutTests/fast/canvas/pointInPath.html passed, actually it failed
6         https://bugs.webkit.org/show_bug.cgi?id=37276
7
8         QPainterPath::contains doesn't count the point on the bound.
9
10         * platform/graphics/qt/PathQt.cpp:
11         (WebCore::isPointOnPathBorder):
12         (WebCore::Path::contains):
13
14 2010-04-23  Sam Weinig  <sam@webkit.org>
15
16         Reviewed by David Levin.
17
18         Fix for https://bugs.webkit.org/show_bug.cgi?id=38060
19         Split up Threading.h
20
21         Add necessary forwarding headers.
22
23         * ForwardingHeaders/wtf/Atomics.h: Added.
24         * ForwardingHeaders/wtf/ThreadSafeShared.h: Added.
25         * ForwardingHeaders/wtf/ThreadingPrimitives.h: Added.
26
27 2010-04-23  Rafael Weinstein  <rafaelw@grafaelw.sfo.corp.google.com>
28
29         Reviewed by Darin Fisher.
30
31         This patch adds a vector of additionalFeatures to WindowFeatures
32         and populates it with any feature strings that evaluate to "yes"
33         and aren't directly observed in WindowFeatures. This allows
34         clients to capture experimental window features.
35
36         https://bugs.webkit.org/show_bug.cgi?id=38013
37
38         * page/WindowFeatures.cpp:
39         (WebCore::WindowFeatures::setWindowFeature):
40         * page/WindowFeatures.h:
41
42 2010-04-23  Dan Bernstein  <mitz@apple.com>
43
44         Reviewed by Simon Fraser.
45
46         <rdar://problem/7898436> :after content is duplicated
47
48         Test: fast/css-generated-content/after-duplicated-after-split.html
49
50         * rendering/RenderInline.cpp:
51         (WebCore::RenderInline::splitInlines): Pass the correct owner of the child list.
52
53 2010-04-23  Adele Peterson  <adele@apple.com>
54
55         Fixing the Tiger build for real.
56
57         * platform/graphics/mac/SimpleFontDataMac.mm:
58
59 2010-04-23  Adele Peterson  <adele@apple.com>
60
61         Fixing the Tiger build.
62
63         * platform/graphics/mac/SimpleFontDataMac.mm:
64         (WebCore::SimpleFontData::platformBoundsForGlyph):
65
66 2010-04-23  Jian Li  <jianli@chromium.org>
67
68         Reviewed by Dmitry Titov.
69
70         Add FileError for File API.
71         https://bugs.webkit.org/show_bug.cgi?id=37840
72
73         The test will be added when implementing FileReader and FilerWriter.
74
75         * Android.derived.jscbindings.mk:
76         * Android.derived.v8bindings.mk:
77         * DerivedSources.cpp:
78         * DerivedSources.make:
79         * GNUmakefile.am:
80         * WebCore.gypi:
81         * WebCore.pri:
82         * WebCore.pro:
83         * WebCore.vcproj/WebCore.vcproj:
84         * WebCore.xcodeproj/project.pbxproj:
85         * dom/ExceptionCode.h:
86         (WebCore::):
87         * html/FileError.h: Added.
88         * html/FileError.idl: Added.
89         * page/DOMWindow.idl:
90
91 2010-04-23  Jian Li  <jianli@chromium.org>
92
93         Reviewed by Adam Barth.
94
95         Improve code generator scripts to handle OR ('|') condition in the
96         extended attributes.
97         https://bugs.webkit.org/show_bug.cgi?id=37998
98
99         * bindings/scripts/CodeGeneratorJS.pm:
100         * bindings/scripts/CodeGeneratorObjC.pm:
101         * bindings/scripts/CodeGeneratorV8.pm:
102         * bindings/scripts/IDLStructure.pm:
103
104 2010-04-23  Adele Peterson  <adele@apple.com>
105
106         Reviewed by Dan Bernstein.
107
108         Fix for <rdar://problem/7855777> REGRESSION: Memory usage increase caused by storing glyph bounds in GlyphMetricsMap
109         https://bugs.webkit.org/show_bug.cgi?id=37936
110
111         This change breaks the GlyphMetricsMap into two maps - one for width and one for bounds, so that we don't store
112         a FloatRect for the glyph bounds unless we need to.
113
114         Covered by existing tests.  This should not cause any change in functionality.
115
116         Updated for removal of GlyphMetricsMap.cpp
117         * Android.mk:
118         * GNUmakefile.am:
119         * WebCore.gypi:
120         * WebCore.vcproj/WebCore.vcproj:
121         * WebCore.xcodeproj/project.pbxproj:
122
123         Made GlyphMetricsMap a template, so it can be used for separate width and bounds maps.
124         * platform/graphics/GlyphMetricsMap.cpp: Removed.
125         * platform/graphics/GlyphMetricsMap.h:
126         (WebCore::GlyphMetricsMap::metricsForGlyph):
127         (WebCore::GlyphMetricsMap::setMetricsForGlyph):
128         (WebCore::GlyphMetricsMap::GlyphMetricsPage::metricsForGlyph):
129         (WebCore::GlyphMetricsMap::GlyphMetricsPage::setMetricsForGlyph):
130         (WebCore::GlyphMetricsMap::GlyphMetricsPage::setMetricsForIndex):
131         (WebCore::::unknownMetrics):
132         (WebCore::::locatePageSlowCase):
133
134         * platform/graphics/mac/ComplexTextController.cpp: (WebCore::ComplexTextController::adjustGlyphsAndAdvances):
135         Call boundsForGlyph instead of metricsForGlyph.
136         * platform/graphics/win/UniscribeController.cpp: (WebCore::UniscribeController::shapeAndPlaceItem):
137         ditto.
138         * platform/graphics/SimpleFontData.cpp: (WebCore::SimpleFontData::platformGlyphInit):
139         Call setMetricsForGlyph for both glyph maps.
140
141         Break getters and setters for metricsForGlyph into widthForGlyph and boundsForGlyph, maintaining present behavior.
142         * platform/graphics/SimpleFontData.h:
143         (WebCore::):
144         (WebCore::SimpleFontData::boundsForGlyph):
145         (WebCore::SimpleFontData::widthForGlyph):
146         * platform/graphics/cairo/SimpleFontDataCairo.cpp:
147         (WebCore::SimpleFontData::platformBoundsForGlyph):
148         (WebCore::SimpleFontData::platformWidthForGlyph):
149         * platform/graphics/chromium/SimpleFontDataChromiumWin.cpp:
150         (WebCore::SimpleFontData::platformBoundsForGlyph):
151         (WebCore::SimpleFontData::platformWidthForGlyph):
152         * platform/graphics/chromium/SimpleFontDataLinux.cpp:
153         (WebCore::SimpleFontData::platformBoundsForGlyph):
154         (WebCore::SimpleFontData::platformWidthForGlyph):
155         * platform/graphics/gtk/SimpleFontDataPango.cpp:
156         (WebCore::SimpleFontData::platformBoundsForGlyph):
157         (WebCore::SimpleFontData::platformWidthForGlyph):
158         * platform/graphics/mac/SimpleFontDataMac.mm:
159         (WebCore::SimpleFontData::platformBoundsForGlyph):
160         (WebCore::SimpleFontData::platformWidthForGlyph):
161         * platform/graphics/win/SimpleFontDataCGWin.cpp:
162         (WebCore::SimpleFontData::platformBoundsForGlyph):
163         (WebCore::SimpleFontData::platformWidthForGlyph):
164         * platform/graphics/win/SimpleFontDataCairoWin.cpp:
165         (WebCore::SimpleFontData::platformBoundsForGlyph):
166         * platform/graphics/win/SimpleFontDataWin.cpp:
167         (WebCore::SimpleFontData::boundsForGDIGlyph):
168         (WebCore::SimpleFontData::widthForGDIGlyph):
169         * platform/graphics/wince/SimpleFontDataWince.cpp:
170         (WebCore::SimpleFontData::platformBoundsForGlyph):
171         * platform/graphics/wx/SimpleFontDataWx.cpp:
172         (WebCore::SimpleFontData::platformBoundsForGlyph):
173         (WebCore::SimpleFontData::platformWidthForGlyph):
174
175 2010-04-23  Xiaomei Ji  <xji@chromium.org>
176
177         Reviewed by Dan Bernstein and Darin Adler
178
179         Fix issue "caret does not paint after type in characters in right
180         aligned div or after delete all characters in RTL div or 
181         0px right padding RTL textarea"
182         https://bugs.webkit.org/show_bug.cgi?id=25319
183
184         Test: editing/inserting/caret-position.html
185
186         * rendering/RenderText.cpp:
187         (WebCore::RenderText::localCaretRect):
188
189 2010-04-23  No'am Rosenthal  <noam.rosenthal@nokia.com>
190
191         Reviewed by Kenneth Rohde Christiansen.
192
193         [Qt] [Performance] GraphicsLayer: constructing the layers takes too long
194         https://bugs.webkit.org/show_bug.cgi?id=36365
195
196         The issue came from using QGraphicsView's cache as is. The problem is that
197         several code-paths require re-rendering of the item, but not re-rendering
198         of the web content into the cache.
199
200         The way to solve it is by having GraphicsLayerQt manage the cache directly
201         via QPixmapCache, instead of using QGraphicsItem cache modes.
202
203         FPS measurement shows significant improvement (20FPS before, 40FPS after)
204         on several use-cases, including blog-files/leaves on a desktop environment.
205
206         * platform/graphics/qt/GraphicsLayerQt.cpp:
207         (WebCore::GraphicsLayerQtImpl::GraphicsLayerQtImpl):
208         (WebCore::GraphicsLayerQtImpl::recache):
209         (WebCore::GraphicsLayerQtImpl::paint):
210         (WebCore::GraphicsLayerQtImpl::flushChanges):
211
212 2010-04-23  James Robinson  <jamesr@chromium.org>
213
214         Reviewed by Dimitri Glazkov.
215
216         Avoid marking symbols as dllexport in chromium win builds
217         https://bugs.webkit.org/show_bug.cgi?id=38058
218
219         No new tests.
220
221         * config.h:
222
223 2010-04-23  MORITA Hajime  <morrita@google.com>
224
225         Reviewed by Nikolas Zimmermann.
226
227         https://bugs.webkit.org/show_bug.cgi?id=37187
228         SVG <use href="foo"> is interpreted as <use href="#foo">
229
230         getTarget() did return url parameter as is if doesn't have
231         fragment identifier. So fixed to return empty string in such case
232         because we need to distinguish "yyy.html" from "xxx.svg#yyy.html".
233         
234         Test: svg/custom/broken-internal-references.svg
235
236         * svg/SVGElement.cpp:
237         (WebCore::SVGElement::insertedIntoDocument):
238         * svg/SVGURIReference.cpp:
239         (WebCore::SVGURIReference::getTarget):
240
241 2010-04-23  Simon Fraser  <simon.fraser@apple.com>
242
243         Reviewed by Dan Bernstein.
244
245         ASSERT(willBeComposited == needsToBeComposited(layer)); on gmail.com
246         https://bugs.webkit.org/show_bug.cgi?id=38066
247         
248         When a layer goes into compositing mode because it has a negative z-index child that is going
249         into compositing mode, then set willBeComposited to true. Also add another assertion to catch
250         any other cases where the state of willBeComposited is mismanaged.
251
252         Test: compositing/composited-negative-zindex-child.html
253
254         * rendering/RenderLayerCompositor.cpp:
255         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
256
257 2010-04-23  Simon Fraser  <simon.fraser@apple.com>
258
259         Reviewed by Dan Bernstein.
260
261         When webkitAnimationEnd event fires, on-screen rendering should show the last frame of animation
262         https://bugs.webkit.org/show_bug.cgi?id=37955
263
264         After r37484, animation and transition end events were fired on a timer, after the animation/transition
265         ended. This opened up one event loop cycle in which the non-animating state of the element was visible
266         before the event fired, resulting in flashes in content that reset style from the event handler.
267         
268         Fix by firing these events in the same event cycle as the animation end, once all animations
269         have been updated. This also required moving the place that start animations are fixed until
270         a later state in the state machine, so that animations have their start time set at the point
271         the event is fired (to avoid an assertion when using the freeze API in DRT).
272         
273         Not testable, since the flash is very transitory and cannot be captured in a pixel test.
274
275         * page/animation/AnimationBase.cpp:
276         (WebCore::AnimationBase::updateStateMachine): Move the firing of 'start' events into the state
277         where the start time is known.
278         * page/animation/AnimationControllerPrivate.h:
279         * page/animation/AnimationController.cpp:
280         (WebCore::AnimationControllerPrivate::updateStyleIfNeededDispatcherFired): Call the new fireEventsAndUpdateStyle()
281         method.
282         (WebCore::AnimationControllerPrivate::fireEventsAndUpdateStyle): New method to share code that used to be in
283         updateStyleIfNeededDispatcherFired().
284         (WebCore::AnimationControllerPrivate::animationTimerFired): Call fireEventsAndUpdateStyle() once we've
285         processed all animations.
286
287 2010-04-23  Simon Fraser  <simon.fraser@apple.com>
288
289         Reviewed by Dan Bernstein.
290
291         CompositeAnimation::updateKeyframeAnimations() can make a KeyframeAnimation for animation "none"
292         https://bugs.webkit.org/show_bug.cgi?id=38017
293
294         Check to see if the animation name is "none", and don't fire off a keyframe animation in
295         that case.
296
297         * page/animation/CompositeAnimation.cpp:
298         (WebCore::CompositeAnimation::updateKeyframeAnimations):
299
300 2010-04-23  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
301
302         Reviewed by Kenneth Rohde Christiansen.
303
304         [Qt] Disable Netscape plugin support for minimal configuration
305         https://bugs.webkit.org/show_bug.cgi?id=38026
306
307         No new tests, as there is no new functionality.
308
309         * WebCore.pri:
310
311 2010-04-23  Shinichiro Hamaji  <hamaji@chromium.org>
312
313         Reviewed by Darin Adler.
314
315         Need borderAndPadding(Width|Height)
316         https://bugs.webkit.org/show_bug.cgi?id=38046
317
318         Refactoring only, so no new tests.
319
320         * rendering/InlineBox.cpp:
321         (WebCore::InlineBox::height):
322         * rendering/RenderApplet.cpp:
323         (WebCore::RenderApplet::createWidgetIfNecessary):
324         * rendering/RenderBlock.cpp:
325         (WebCore::RenderBlock::isSelfCollapsingBlock):
326         (WebCore::RenderBlock::calcPrefWidths):
327         * rendering/RenderBox.cpp:
328         (WebCore::RenderBox::calcBorderBoxWidth):
329         (WebCore::RenderBox::calcBorderBoxHeight):
330         (WebCore::RenderBox::calcContentBoxWidth):
331         (WebCore::RenderBox::calcContentBoxHeight):
332         (WebCore::RenderBox::calcWidth):
333         (WebCore::RenderBox::calcHeight):
334         (WebCore::RenderBox::calcPercentageHeight):
335         (WebCore::RenderBox::calcReplacedHeightUsing):
336         (WebCore::RenderBox::availableHeightUsing):
337         (WebCore::RenderBox::calcAbsoluteHorizontal):
338         (WebCore::RenderBox::calcAbsoluteVertical):
339         (WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
340         (WebCore::RenderBox::calcAbsoluteVerticalReplaced):
341         (WebCore::RenderBox::positionForPoint):
342         * rendering/RenderBoxModelObject.h:
343         (WebCore::RenderBoxModelObject::borderAndPaddingHeight):
344         (WebCore::RenderBoxModelObject::borderAndPaddingWidth):
345         * rendering/RenderDataGrid.cpp:
346         (WebCore::RenderDataGrid::calcPrefWidths):
347         * rendering/RenderFieldset.cpp:
348         (WebCore::RenderFieldset::calcPrefWidths):
349         * rendering/RenderFileUploadControl.cpp:
350         (WebCore::RenderFileUploadControl::calcPrefWidths):
351         * rendering/RenderFlexibleBox.cpp:
352         (WebCore::RenderFlexibleBox::calcPrefWidths):
353         (WebCore::RenderFlexibleBox::allowedChildFlex):
354         * rendering/RenderImage.cpp:
355         (WebCore::RenderImage::calcPrefWidths):
356         * rendering/RenderLayer.cpp:
357         (WebCore::RenderLayer::resize):
358         * rendering/RenderListBox.cpp:
359         (WebCore::RenderListBox::calcPrefWidths):
360         (WebCore::RenderListBox::calcHeight):
361         * rendering/RenderMenuList.cpp:
362         (WebCore::RenderMenuList::calcPrefWidths):
363         * rendering/RenderReplaced.cpp:
364         (WebCore::RenderReplaced::calcPrefWidths):
365         * rendering/RenderSVGRoot.cpp:
366         (WebCore::RenderSVGRoot::calcPrefWidths):
367         * rendering/RenderSlider.cpp:
368         (WebCore::RenderSlider::calcPrefWidths):
369         (WebCore::RenderSlider::layout):
370         * rendering/RenderTableCell.cpp:
371         (WebCore::RenderTableCell::styleOrColWidth):
372         * rendering/RenderTextControl.cpp:
373         (WebCore::RenderTextControl::textBlockHeight):
374         (WebCore::RenderTextControl::textBlockWidth):
375         (WebCore::RenderTextControl::calcHeight):
376         (WebCore::RenderTextControl::calcPrefWidths):
377         * rendering/RenderTextControlSingleLine.cpp:
378         (WebCore::RenderTextControlSingleLine::layout):
379         * rendering/RenderWidget.cpp:
380         (WebCore::RenderWidget::updateWidgetPosition):
381
382 2010-04-23  David Kilzer  <ddkilzer@apple.com>
383
384         Size mismatch between format string and argument in dumpTextEncodingNameMap()
385
386         Reviewed by Darin Adler.
387
388         See Bug 38030 and r58157.
389
390         * platform/text/TextEncodingRegistry.cpp:
391         (WebCore::dumpTextEncodingNameMap): Assigned
392         textEncodingNameMap->size() to an unsigned variable before using
393         it in the fprintf() statement.
394
395 2010-04-23  David Kilzer  <ddkilzer@apple.com>
396
397         BUILD FIX: Attempt to fix Windows build after Bug 36187 landed in r58168
398
399         * DerivedSources.cpp: Changed include of JSMedia.cpp to
400         JSStyleMedia.cpp.
401
402 2010-04-23  David Kilzer  <ddkilzer@apple.com>
403
404         BUILD FIX: Fix Mac build after Bug 36187 landed in r58168
405
406         * WebCore.xcodeproj/project.pbxproj: Renamed DOMMedia.h,
407         DOMMedia.mm, DOMMediaInternal.h to DOMStyleMedia.h,
408         DOMStyleMedia.mm, DOMStyleMediaInternal.h.  
409
410 2010-04-23  Kenneth Rohde Christiansen  <kenneth@webkit.org>
411
412         Unreviewed build fix.
413
414         Change Media to StyleMedia
415
416         * DerivedSources.make:
417
418 2010-04-23  Xan Lopez  <xlopez@igalia.com>
419
420         Try to fix the GTK+ bots.
421
422         * GNUmakefile.am:
423
424 2010-04-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>
425
426         Reviewed by Laszlo Gombos.
427
428         Rename window.media to window.styleMedia
429         https://bugs.webkit.org/show_bug.cgi?id=36187
430
431         Rename the interface Media to StyleMedia as required by the
432         new CSSOM View spec.
433
434         * Android.derived.jscbindings.mk:
435         * Android.derived.v8bindings.mk:
436         * GNUmakefile.am:
437         * WebCore.gypi:
438         * WebCore.pri:
439         * WebCore.pro:
440         * WebCore.vcproj/WebCore.vcproj:
441         * WebCore.xcodeproj/project.pbxproj:
442         * css/Media.cpp: Removed.
443         * css/Media.h: Removed.
444         * css/Media.idl: Removed.
445         * css/StyleMedia.cpp: Added.
446         (WebCore::StyleMedia::StyleMedia):
447         (WebCore::StyleMedia::type):
448         (WebCore::StyleMedia::matchMedium):
449         * css/StyleMedia.h: Added.
450         (WebCore::StyleMedia::create):
451         (WebCore::StyleMedia::disconnectFrame):
452         * css/StyleMedia.idl: Added.
453         * page/DOMWindow.cpp:
454         (WebCore::DOMWindow::styleMedia):
455         * page/DOMWindow.h:
456         (WebCore::DOMWindow::optionalMedia):
457         * page/DOMWindow.idl:
458
459 2010-04-23  Yury Semikhatsky  <yurys@chromium.org>
460
461         Reviewed by Pavel Feldman.
462
463         Web Inspector: provide JSC implementation for scopeType method on
464         call frame and use same jsvascript code for JSC and v8 when collecting
465         scope chain data.
466
467         https://bugs.webkit.org/show_bug.cgi?id=37663
468
469         * bindings/js/JSInjectedScriptHostCustom.cpp:
470         (WebCore::JSInjectedScriptHost::currentCallFrame):
471         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
472         (WebCore::JSJavaScriptCallFrame::scopeType):
473         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
474         (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
475         * inspector/InjectedScriptHost.idl:
476         * inspector/front-end/InjectedScript.js:
477         (injectedScriptConstructor.):
478
479 2010-04-23  Alexander Pavlov  <apavlov@chromium.org>
480
481         Reviewed by Pavel Feldman.
482
483         Web Inspector: Audits (Image Dimensions): full image URLs are prefixed with the hosting page name
484         https://bugs.webkit.org/show_bug.cgi?id=37988
485
486         * inspector/front-end/AuditRules.js:
487         (WebInspector.AuditRules.ImageDimensionsRule.prototype.doRun):
488
489 2010-04-23  Ilya Tikhonovsky  <loislo@chromium.org>
490
491         Reviewed by Yury Semikhatsky.
492
493         WebInspector: Flaky Inspector tests.
494         https://bugs.webkit.org/show_bug.cgi?id=36217
495
496         * inspector/InspectorController.cpp:
497         (WebCore::InspectorController::didCommitLoad):
498
499 2010-04-23  Yaar Schnitman  <yaar@chromium.org>
500
501         Reviewed by Adam Barth.
502
503         Auto-generate WebGLRenderingContext overloads in V8
504         https://bugs.webkit.org/show_bug.cgi?id=37818
505
506         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
507         * html/canvas/WebGLRenderingContext.cpp: Added missing overloads for the following:.
508         (WebCore::WebGLRenderingContext::texImage2D)
509         (WebCore::WebGLRenderingContext::texSubImage2D)
510         * html/canvas/WebGLRenderingContext.h: Added missing overloads.
511         * html/canvas/WebGLRenderingContext.idl: IDL definition of overloads.
512
513 2010-04-23  Jeff Schiller  <codedread@gmail.com>
514
515         Reviewed by Nikolas Zimmermann.
516
517         Display tooltips when hovering over SVG elements, Bug 16854
518         https://bugs.webkit.org/show_bug.cgi?id=16854
519
520         Manual test added for verifying tooltips.
521
522         * manual-tests/svg-tooltip.svg: Added.
523         * svg/SVGAElement.cpp:
524         (WebCore::SVGAElement::title): xlink:title takes precedence, otherwise SVGStyledElement::title() is used
525         * svg/SVGStyledElement.cpp:
526         (WebCore::SVGStyledElement::title): checks for a shadow parent and uses that title, otherwise uses the content's title
527         * svg/SVGStyledElement.h: add title() method declaration
528
529 2010-04-23  David Kilzer  <ddkilzer@apple.com>
530
531         <http://webkit.org/b/38032> No need to content sniff 304 responses
532         <rdar://problem/7891726>
533
534         Reviewed by Brady Eidson.
535
536         * platform/network/mac/ResourceHandleMac.mm:
537         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]):
538         No need to adjust the MIME type on 304 responses since they're
539         only used to determine if the resource needs to be refetched.
540
541 2010-04-23  David Kilzer  <ddkilzer@apple.com>
542
543         <http://webkit.org/b/38030> Add WebCore::dumpTextEncodingNameMap() to dump text encoding map on debug builds
544
545         Reviewed by Alexey Proskuryakov.
546
547         * platform/text/TextEncodingRegistry.cpp:
548         (WebCore::dumpTextEncodingNameMap): Added.
549         * platform/text/TextEncodingRegistry.h:
550         (WebCore::dumpTextEncodingNameMap): Added declaration.
551
552 2010-04-22  Tony Chang  <tony@chromium.org>
553
554         Reviewed by Dan Bernstein.
555
556         Crash in WebCore::TextIterator::handleTextNode() encountered in Google rich-text products
557         https://bugs.webkit.org/show_bug.cgi?id=37950
558
559         Test: editing/text-iterator/rtl-selection-crash.html
560
561         * editing/TextIterator.cpp:
562         (WebCore::TextIterator::handleTextNode):
563
564 2010-04-22  Maciej Stachowiak  <mjs@apple.com>
565
566         Reviewed by Dan Bernstein and Beth Dakin.
567
568         Links around blocks (e.g. divs) results in too many VoiceOver call outs
569         https://bugs.webkit.org/show_bug.cgi?id=37079
570         <rdar://problem/7234118>
571
572         The basic change is to modify the AccessibilityRenderObject tree
573         traversal methods to account for inline continuations in the
574         render tree and make the accessibility tree look as if
575         continuations didn't exist - the same as if CSS blocks could just
576         sit in CSS inlines. This is slightly tricky code but creates a
577         much saner accessibility tree.
578         
579         Tests: accessibility/image-link-inline-cont.html
580                accessibility/image-link.html
581                accessibility/inline-continuations.html
582
583         * accessibility/AccessibilityRenderObject.cpp:
584         (WebCore::isInlineWithContinuation): Helper function for traversal functions to use in accounting for continuations.
585         (WebCore::firstChildInContinuation): ditto
586         (WebCore::firstChildConsideringContinuation): ditto
587         (WebCore::lastChildConsideringContinuation): ditto
588         (WebCore::startOfContinuations): ditto
589         (WebCore::endOfContinuations): ditto
590         (WebCore::childBeforeConsideringContinuations): ditto
591         (WebCore::firstChildIsInlineContinuation): ditto
592         (WebCore::lastChildHasContinuation): ditto
593         (WebCore::AccessibilityRenderObject::firstChild): Account for inline continuations.
594         (WebCore::AccessibilityRenderObject::lastChild): ditto
595         (WebCore::AccessibilityRenderObject::previousSibling): Account for inline continuations
596         and their anonymous block parents.
597         (WebCore::AccessibilityRenderObject::nextSibling): ditto
598         (WebCore::AccessibilityRenderObject::parentObjectIfExists): Account for inline continuations.
599         (WebCore::AccessibilityRenderObject::parentObject): Account for inline continuations.
600         * rendering/RenderInline.h: Make RenderInline::inlineContinuation public.
601
602 2010-04-22  Shinichiro Hamaji  <hamaji@chromium.org>
603
604         Reviewed by Darin Adler.
605
606         REGRESSION: TextIterator may use freed memory
607         https://bugs.webkit.org/show_bug.cgi?id=37973
608
609         Added TextIterator::m_text to hold the returned String.
610
611         No new tests because there are no behavior change, but
612         copy-backslash-with-euc.html on chromium-win should test this.
613
614         * editing/TextIterator.cpp:
615         (WebCore::TextIterator::emitText):
616         * editing/TextIterator.h:
617
618 2010-04-22  Michael Forney  <mforney@mforney.org>
619
620         Reviewed by Adam Barth.
621
622         https://bugs.webkit.org/show_bug.cgi?id=37761
623
624         Only include JSDatabase.h and JSDatabaseCallback.h when database is
625         enabled. This partially fixes building with --disable-database.
626
627         * bindings/js/JSDOMWindowCustom.cpp: Add a check for database around
628         database-related headers.
629
630 2010-04-22  Ray Rischpater  <Raymond.Rischpater@Nokia.com>
631
632         Reviewed by Darin Adler.
633
634         In HTMLInputElement.cpp, shouldUseInputMethod does not return true for
635         some text input types (TELEPHONE, NUMBER, URL, and EMAIL). Addressed
636         this by changing shouldUseInputMethod to use internal methods to 
637         check that the field is a text field that isn't a password field. 
638
639         No new tests.
640
641         Fixes <https://bugs.webkit.org/show_bug.cgi?id=37719>
642
643         * html/HTMLInputElement.cpp:
644         (WebCore::HTMLInputElement::shouldUseInputMethod):
645
646 2010-04-22  Yaar Schnitman  <yaar@chromium.org>
647
648         Reviewed by Adam Barth.
649
650         Integrate v8 testing utility with webkit tests
651         https://bugs.webkit.org/show_bug.cgi?id=37731
652
653         * bindings/v8/test/run_tests.py: Removed.
654
655 2010-04-22  Zhenyao Mo  <zmo@google.com>
656
657         Reviewed by Darin Fisher.
658
659         Add isGLES2Compliant to GraphicsContext3D
660         https://bugs.webkit.org/show_bug.cgi?id=37872
661
662         * html/canvas/WebGLRenderingContext.cpp: Add isGLES2Compliant().
663         (WebCore::WebGLRenderingContext::isGLES2Compliant):
664         * html/canvas/WebGLRenderingContext.h: Ditto.
665         * platform/graphics/GraphicsContext3D.h: Ditto.
666         * platform/graphics/mac/GraphicsContext3DMac.cpp: Ditto.
667         (WebCore::GraphicsContext3D::isGLES2Compliant):
668
669 2010-04-22  Fumitoshi Ukai  <ukai@chromium.org>
670
671         Reviewed by Adam Barth.
672
673         MD5 is required for WebSocket new protocol implementation
674         https://bugs.webkit.org/show_bug.cgi?id=37913
675
676         * ForwardingHeaders/wtf/MD5.h: Added.
677
678 2010-04-22  Alexey Proskuryakov  <ap@apple.com>
679
680         Reviewed by Darin Adler.
681
682         https://bugs.webkit.org/show_bug.cgi?id=38012
683         REGRESSION: Ctrl- and Option- shortcuts get wrong keyCode on non-QWERTY keyboard
684
685         * platform/mac/KeyEventMac.mm: (WebCore::windowsKeyCodeForKeyEvent): Also look at unmodified
686         characters, to avoid falling through to virtual key code lookup for Roman characters.
687
688 2010-04-22  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
689
690         Reviewed by Darin Adler.
691
692         Fix the MSVC 64bit build.
693         https://bugs.webkit.org/show_bug.cgi?id=37980
694
695         * platform/text/TextStream.cpp:
696         * platform/text/TextStream.h:
697         * plugins/win/PluginViewWin.cpp:
698         (WebCore::PluginView::platformStart):
699
700 2010-04-22  Dave Moore  <davemoore@chromium.org>
701
702         Reviewed by Dimitri Glazkov.
703
704         Added notification when the favicons for a page are changed
705         from a script.
706         The Document object will notify the frame loader, which will
707         notify the client. Implementations of FrameLoaderClient will
708         have to add one method; dispatchDidChangeIcons().
709
710         https://bugs.webkit.org/show_bug.cgi?id=33812
711
712         Test: fast/dom/icon-url-property.html
713
714         * dom/Document.cpp:
715         (WebCore::Document::setIconURL):
716         * loader/DocumentLoader.cpp:
717         (WebCore::DocumentLoader::setIconURL):
718         * loader/DocumentLoader.h:
719         (WebCore::DocumentLoader::iconURL):
720         * loader/EmptyClients.h:
721         (WebCore::EmptyFrameLoaderClient::dispatchDidChangeIcons):
722         * loader/FrameLoader.cpp:
723         (WebCore::FrameLoader::setIconURL):
724         (WebCore::FrameLoader::didChangeIcons):
725         * loader/FrameLoader.h:
726         * loader/FrameLoaderClient.h:
727
728 2010-04-22  Xan Lopez  <xlopez@igalia.com>
729
730         Reviewed by Gustavo Noronha.
731
732         [GTK] GObject DOM bindings
733         https://bugs.webkit.org/show_bug.cgi?id=33590
734
735         Extend the bindings to cover most of Document.idl
736
737         * GNUmakefile.am:
738         * bindings/gobject/WebKitDOMBinding.cpp:
739         (WebKit::createWrapper):
740         (WebKit::kit):
741         * bindings/gobject/WebKitDOMBinding.h:
742         * bindings/gobject/WebKitHTMLElementWrapperFactory.cpp: Added.
743         (WebKit::createAnchorWrapper):
744         (WebKit::createAppletWrapper):
745         (WebKit::createAreaWrapper):
746         (WebKit::createBaseWrapper):
747         (WebKit::createBaseFontWrapper):
748         (WebKit::createBlockquoteWrapper):
749         (WebKit::createBodyWrapper):
750         (WebKit::createBRWrapper):
751         (WebKit::createButtonWrapper):
752         (WebKit::createCanvasWrapper):
753         (WebKit::createTableCaptionWrapper):
754         (WebKit::createTableColWrapper):
755         (WebKit::createModWrapper):
756         (WebKit::createDirectoryWrapper):
757         (WebKit::createDivWrapper):
758         (WebKit::createDListWrapper):
759         (WebKit::createEmbedWrapper):
760         (WebKit::createFieldSetWrapper):
761         (WebKit::createFontWrapper):
762         (WebKit::createFormWrapper):
763         (WebKit::createFrameWrapper):
764         (WebKit::createFrameSetWrapper):
765         (WebKit::createHeadingWrapper):
766         (WebKit::createHeadWrapper):
767         (WebKit::createHRWrapper):
768         (WebKit::createHtmlWrapper):
769         (WebKit::createIFrameWrapper):
770         (WebKit::createImageWrapper):
771         (WebKit::createInputWrapper):
772         (WebKit::createIsIndexWrapper):
773         (WebKit::createLabelWrapper):
774         (WebKit::createLegendWrapper):
775         (WebKit::createLIWrapper):
776         (WebKit::createLinkWrapper):
777         (WebKit::createMapWrapper):
778         (WebKit::createMarqueeWrapper):
779         (WebKit::createMenuWrapper):
780         (WebKit::createMetaWrapper):
781         (WebKit::createObjectWrapper):
782         (WebKit::createOListWrapper):
783         (WebKit::createOptGroupWrapper):
784         (WebKit::createOptionWrapper):
785         (WebKit::createParagraphWrapper):
786         (WebKit::createParamWrapper):
787         (WebKit::createPreWrapper):
788         (WebKit::createQuoteWrapper):
789         (WebKit::createScriptWrapper):
790         (WebKit::createSelectWrapper):
791         (WebKit::createStyleWrapper):
792         (WebKit::createTableWrapper):
793         (WebKit::createTableSectionWrapper):
794         (WebKit::createTableCellWrapper):
795         (WebKit::createTextAreaWrapper):
796         (WebKit::createTitleWrapper):
797         (WebKit::createTableRowWrapper):
798         (WebKit::createUListWrapper):
799         (WebKit::createHTMLElementWrapper):
800         * bindings/gobject/WebKitHTMLElementWrapperFactory.h: Added.
801         * bindings/scripts/CodeGeneratorGObject.pm:
802         * dom/Node.idl:
803
804 2010-04-22  Eric Carlson  <eric.carlson@apple.com>
805
806         Reviewed by Simon Fraser.
807
808         Do not pause movie when readyState drops below HAVE_FUTURE_DATA
809         https://bugs.webkit.org/show_bug.cgi?id=37991
810         <rdar://problem/7893937>
811
812         No new tests, we don't have infrastructure in DRT to test with streamed
813         movies.
814
815         * html/HTMLMediaElement.cpp:
816         (WebCore::HTMLMediaElement::HTMLMediaElement): Initialize m_readyStateMaximum.
817         (WebCore::HTMLMediaElement::prepareForLoad): Reset m_readyStateMaximum.
818         (WebCore::HTMLMediaElement::setReadyState): Maintain m_readyStateMaximum.
819         (WebCore::HTMLMediaElement::potentiallyPlaying): Also return true if the readyState was
820         previously >= HAVE_FUTURE_DATA. 
821         * html/HTMLMediaElement.h:
822
823 2010-04-22  Zhenyao Mo  <zmo@google.com>
824
825         Reviewed by Dimitri Glazkov.
826
827         Regression: framebufferRenderbuffer crashes with null renderBuffer
828         https://bugs.webkit.org/show_bug.cgi?id=37963
829
830         * html/canvas/WebGLRenderingContext.cpp:
831         (WebCore::WebGLRenderingContext::framebufferRenderbuffer): Dealing with null renderbuffer input.
832
833 2010-04-22  Zhenyao Mo  <zmo@google.com>
834
835         Reviewed by Dimitri Glazkov.
836
837         Emulate GL_IMPLEMENTATION_COLOR_READ_FORMAT/TYPE for glGet
838         https://bugs.webkit.org/show_bug.cgi?id=37281
839
840         * html/canvas/WebGLRenderingContext.cpp:
841         (WebCore::WebGLRenderingContext::WebGLRenderingContext): Remove error check because two enums are supported now. 
842         (WebCore::WebGLRenderingContext::getParameter): Add two enums.
843         (WebCore::WebGLRenderingContext::readPixels): Fix a tiny bug.
844         * platform/graphics/mac/GraphicsContext3DMac.cpp:
845         (WebCore::GraphicsContext3D::getIntegerv): Emulate two enums.
846
847 2010-04-22  Diego Escalante Urrelo  <descalante@igalia.com>
848
849         Reviewed by Xan Lopez.
850
851         [GTK] Mute/unmute button on <video> elements are backwards
852         https://bugs.webkit.org/show_bug.cgi?id=33967
853
854         Fix mute/unmute buttons icons-action relation and explain why their
855         variable names and corresponding icons seem to be misleading but are
856         actually right. Original patch by Mike Hommey.
857
858         * platform/gtk/RenderThemeGtk.cpp:
859         (WebCore::RenderThemeGtk::initMediaStyling):
860
861 2010-04-22  Gustavo Sverzut Barbieri  <barbieri@profusion.mobi>
862
863         Reviewed by Eric Seidel.
864
865         Fix build if NPAPI support is disabled
866         https://bugs.webkit.org/show_bug.cgi?id=36621
867
868         No new tests, this is a build fix.
869         Re-submit r58043 with fix for EFL.
870
871         * plugins/PluginViewNone.cpp:
872
873 2010-04-22  Diego Escalante Urrelo  <descalante@igalia.com>
874
875         Reviewed by Xan Lopez.
876
877         [Gtk] Evaluate and create tests for all the AtkRole's implemented by
878         WebKitGtk
879         https://bugs.webkit.org/show_bug.cgi?id=34449
880
881         Implement ATK_ROLE_COMBO_BOX.
882
883         * accessibility/gtk/AccessibilityObjectAtk.cpp:
884         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
885         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
886         (atkRole):
887
888 2010-04-22  Nikolas Zimmermann  <nzimmermann@rim.com>
889
890         Reviewed by Dirk Schulze.
891
892         SVGPaintServer needs to be converted to the new RenderSVGResource* system
893         https://bugs.webkit.org/show_bug.cgi?id=37986
894
895         No functional changes, just move the SVGPaintServer* classes from svg/graphics/ to rendering/, the new location for the RenderSVGResource* classes.
896         This is a preparation for the real patch which follows soon.
897
898         * Android.mk: Rename files and move to the right location.
899         * GNUmakefile.am: Ditto.
900         * WebCore.gypi: Ditto.
901         * WebCore.pro: Ditto.
902         * WebCore.vcproj/WebCore.vcproj: Ditto.
903         * WebCore.xcodeproj/project.pbxproj: Ditto.
904         * rendering/RenderSVGResource.cpp: Copied from svg/graphics/SVGPaintServer.cpp.
905         * rendering/RenderSVGResourceGradient.cpp: Copied from svg/graphics/SVGPaintServerGradient.cpp.
906         * rendering/RenderSVGResourceGradient.h: Copied from svg/graphics/SVGPaintServerGradient.h.
907         * rendering/RenderSVGResourceLinearGradient.cpp: Copied from svg/graphics/SVGPaintServerLinearGradient.cpp.
908         * rendering/RenderSVGResourceLinearGradient.h: Copied from svg/graphics/SVGPaintServerLinearGradient.h.
909         * rendering/RenderSVGResourcePattern.cpp: Copied from svg/graphics/SVGPaintServerPattern.cpp.
910         * rendering/RenderSVGResourcePattern.h: Copied from svg/graphics/SVGPaintServerPattern.h.
911         * rendering/RenderSVGResourceRadialGradient.cpp: Copied from svg/graphics/SVGPaintServerRadialGradient.cpp.
912         * rendering/RenderSVGResourceRadialGradient.h: Copied from svg/graphics/SVGPaintServerRadialGradient.h.
913         * rendering/RenderSVGResourceSolidColor.cpp: Copied from svg/graphics/SVGPaintServerSolid.cpp.
914         * rendering/RenderSVGResourceSolidColor.h: Copied from svg/graphics/SVGPaintServerSolid.h.
915         * rendering/SVGRenderTreeAsText.cpp: Change include file names.
916         * svg/SVGFont.cpp: Ditto.
917         * svg/SVGGradientElement.cpp: Ditto.
918         * svg/SVGGradientElement.h: Ditto.
919         * svg/SVGLinearGradientElement.cpp: Ditto.
920         * svg/SVGPatternElement.cpp: Ditto.
921         * svg/SVGPatternElement.h: Ditto.
922         * svg/SVGRadialGradientElement.cpp: Ditto.
923         * svg/graphics/SVGPaintServer.cpp: Removed.
924         * svg/graphics/SVGPaintServerGradient.cpp: Removed.
925         * svg/graphics/SVGPaintServerGradient.h: Removed.
926         * svg/graphics/SVGPaintServerLinearGradient.cpp: Removed.
927         * svg/graphics/SVGPaintServerLinearGradient.h: Removed.
928         * svg/graphics/SVGPaintServerPattern.cpp: Removed.
929         * svg/graphics/SVGPaintServerPattern.h: Removed.
930         * svg/graphics/SVGPaintServerRadialGradient.cpp: Removed.
931         * svg/graphics/SVGPaintServerRadialGradient.h: Removed.
932         * svg/graphics/SVGPaintServerSolid.cpp: Removed.
933         * svg/graphics/SVGPaintServerSolid.h: Removed.
934         * svg/graphics/SVGResourceListener.h: Removed.
935
936 2010-04-22  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
937
938         Reviewed by Simon Hausmann.
939
940         [Qt] Hide the OpenGL and QtMultimedia dependencies from syncqt.
941
942         This prevents the dependent headers from being included by
943         qt/include/QtWebKit/QtWebKit
944
945         * WebCore.pro:
946
947 2010-04-22  Gustavo Sverzut Barbieri  <barbieri@profusion.mobi>
948
949         Reviewed by Adam Roben.
950
951         EFL does not support PluginDatabase yet.
952         http://webkit.org/b/37854
953
954         No behavior changes, so no new tests were added.
955
956         * loader/FrameLoader.cpp:
957         (WebCore::FrameLoader::defaultObjectContentType):
958
959 2010-04-22  Ilya Tikhonovsky  <loislo@chromium.org>
960
961         Reviewed by Yury Semikhatsky.
962
963         Web Inspector: Timeline scrolling speed is slow if it has more than 1k timeline marks.
964         https://bugs.webkit.org/show_bug.cgi?id=37924
965
966         * inspector/front-end/TimelineGrid.js:
967         (WebInspector.TimelineGrid.prototype.updateDividers):
968         (WebInspector.TimelineGrid.prototype.addEventDividers):
969         * inspector/front-end/TimelineOverviewPane.js:
970         (WebInspector.TimelineOverviewPane.prototype.updateEventDividers):
971         * inspector/front-end/TimelinePanel.js:
972         (WebInspector.TimelinePanel.prototype._updateEventDividers):
973         (WebInspector.TimelinePanel.prototype._refresh):
974
975 2010-04-22  Kenneth Rohde Christiansen  <kenneth@webkit.org>
976
977         Reviewed by Simon Fraser.
978
979         Rename window.media to window.styleMedia
980         https://bugs.webkit.org/show_bug.cgi?id=36187
981
982         It has been defined that the AbstractView media extension
983         defined in the CSSOM View spec should be renamed to styleMedia.
984         This patch does that and updates the current layout tests
985         making use of it.
986
987         * page/AbstractView.idl:
988         * page/DOMWindow.cpp:
989         (WebCore::DOMWindow::styleMedia):
990         * page/DOMWindow.h:
991         * page/DOMWindow.idl:
992
993 2010-04-22  Anton Muhin  <antonm@chromium.org>
994
995         Reviewed by Adam Barth.
996
997         [v8] Do not pass empty handle into SetHiddenValue which would crash.
998         https://bugs.webkit.org/show_bug.cgi?id=37801
999
1000         * bindings/v8/V8AbstractEventListener.cpp:
1001         (WebCore::V8AbstractEventListener::handleEvent): add couple of asserts to check for unexpected paths
1002         (WebCore::V8AbstractEventListener::invokeEventHandler): bail out of jsEvent is empty handle
1003
1004 2010-04-22  Stephan Aßmus  <superstippi@gmx.de>
1005
1006         Reviewed by David Levin.
1007
1008         [Haiku] Implement ImageBuffer support
1009         https://bugs.webkit.org/show_bug.cgi?id=35288
1010
1011         Covered by existing tests.
1012
1013         Complete implementation of ImageBuffer for Haiku. Uses StillImage
1014         class to export a WebCore::Image and associated GraphicsContext
1015         to perform arbitrary drawing in the offscreen BBitmap buffer.
1016
1017         * platform/graphics/haiku/ImageBufferData.h:
1018         * platform/graphics/haiku/ImageBufferHaiku.cpp,
1019         (WebCore::ImageBufferData::ImageBufferData),
1020         (WebCore::ImageBufferData::~ImageBufferData),
1021         (WebCore::ImageBuffer::ImageBuffer),
1022         (WebCore::ImageBuffer::~ImageBuffer),
1023         (WebCore::ImageBuffer::context),
1024         (WebCore::ImageBuffer::image):
1025             Implementation uses offscreen BBitmap and BView, wraps StillImage
1026             around those to provide WebCore::Image interface.
1027         (WebCore::ImageBuffer::platformTransformColorSpace):
1028         (WebCore::convertFromData):
1029             Method just performs BGRA <-> RGBA conversion.
1030         (WebCore::convertFromInternalData):
1031             Method just performs BGRA <-> RGBA conversion and handles
1032             pre-multiplying the color values if requested.
1033         (WebCore::convertToInternalData):
1034             Method just performs BGRA <-> RGBA conversion and handles
1035             de.multiplying the color values if requested.
1036         (WebCore::getImageData):
1037             Common code for the next two methods.
1038         (WebCore::ImageBuffer::getUnmultipliedImageData),
1039         (WebCore::ImageBuffer::getPremultipliedImageData):
1040             Implemented.
1041         (WebCore::putImageData):
1042             Common code for the next two methods.
1043         (WebCore::ImageBuffer::putUnmultipliedImageData),
1044         (WebCore::ImageBuffer::putPremultipliedImageData):
1045             Implemented.
1046         (WebCore::ImageBuffer::toDataURL):
1047             Uses Haiku "Translation Kit" to convert image data to data
1048             of the requested mime type.
1049
1050 2010-04-22  Adam Barth  <abarth@webkit.org>
1051
1052         Unreviewed, rolling out r58069.
1053         http://trac.webkit.org/changeset/58069
1054         https://bugs.webkit.org/show_bug.cgi?id=27751
1055
1056         Broke compile on Windows.
1057
1058         * WebCore.base.exp:
1059         * editing/EditorCommand.cpp:
1060         (WebCore::supportedPaste):
1061         (WebCore::createCommandMap):
1062         * page/Settings.cpp:
1063         (WebCore::Settings::Settings):
1064         * page/Settings.h:
1065
1066 2010-04-22  Abhishek Arya  <inferno@chromium.org>
1067
1068         Reviewed by Adam Barth.
1069
1070         Add support for controlling clipboard access from javascript.
1071         Clipboard access from javascript is disabled by default.
1072         https://bugs.webkit.org/show_bug.cgi?id=27751
1073
1074         Test: editing/execCommand/clipboard-access.html
1075
1076         * WebCore.base.exp:
1077         * editing/EditorCommand.cpp:
1078         (WebCore::supportedCopyCut):
1079         (WebCore::supportedPaste):
1080         (WebCore::createCommandMap):
1081         * page/Settings.cpp:
1082         (WebCore::Settings::Settings):
1083         (WebCore::Settings::setJavaScriptCanAccessClipboard):
1084         * page/Settings.h:
1085         (WebCore::Settings::javaScriptCanAccessClipboard):
1086
1087 2010-04-22  Stephan Aßmus  <superstippi@gmx.de>
1088
1089         Reviewed by David Levin.
1090
1091         [Haiku] Improve SimpleFontDataHaiku
1092         https://bugs.webkit.org/show_bug.cgi?id=37411
1093
1094         Covered by existing tests.
1095
1096         * platform/graphics/haiku/SimpleFontDataHaiku.cpp:
1097             - Cleaned up includes
1098             - Removed prototype "charUnicodeToUTF8HACK"
1099         (WebCore::SimpleFontData::platformInit):
1100             - Use const BFont pointer
1101         (WebCore::SimpleFontData::smallCapsFontData):
1102             - "fontPlatformData" was leaked. It is only
1103               used as the key for the font cache lookup.
1104         (WebCore::SimpleFontData::platformMetricsForGlyph):
1105             - Use existing WebCore encoding infrastructure
1106               instead of adding a hack for Haiku. 
1107
1108 2010-04-21  Steve Block  <steveblock@google.com>
1109
1110         Reviewed by Kenneth Rohde Christiansen.
1111
1112         Replace Geolocation::suspend()/resume() which are required by Android.
1113         https://bugs.webkit.org/show_bug.cgi?id=37942
1114
1115         These methods were removed in Bug 36255.
1116
1117         Build fix only, no new tests.
1118
1119         * page/Geolocation.cpp:
1120         (WebCore::Geolocation::suspend):
1121         (WebCore::Geolocation::resume):
1122         * page/Geolocation.h:
1123
1124 2010-04-21  Ray Rischpater  <Raymond.Rischpater@Nokia.com>
1125
1126         In HTMLInputElement.cpp there are numerous style
1127         violations.
1128
1129         This patch includes style changes to fix existing style
1130         deviations in this file.
1131
1132         Rubber stamped by Darin Adler.
1133
1134         Fixes <https://bugs.webkit.org/show_bug.cgi?id=37881>
1135
1136         * html/HTMLInputElement.cpp:
1137
1138 2010-04-21  Gustavo Sverzut Barbieri  <barbieri@profusion.mobi>
1139
1140         Reviewed by Adam Roben.
1141
1142         Add missing EFL WebCore file.
1143         http://webkit.org/b/37854
1144
1145         No behavior changes, so no new tests were added.
1146
1147         * bindings/js/ScriptControllerEfl.cpp: Added.
1148         (WebCore::ScriptController::createScriptInstanceForWidget):
1149
1150 2010-04-21  Simon Fraser  <simon.fraser@apple.com>
1151
1152         Reviewed by Dan Bernstein.
1153
1154         Printing Core Animation-based plug-ins is broken
1155         https://bugs.webkit.org/show_bug.cgi?id=37967
1156
1157         When we do a "flattening" paint because of printing, we need to stash
1158         the flattening flag in the FrameView's m_paintBehavior, because
1159         WebBaseNetscapePluginView needs to find it there to decide whether
1160         to grab a bitmap for printing, for CA plug-ins.
1161
1162         * page/FrameView.cpp:
1163         (WebCore::FrameView::paintContents):
1164
1165 2010-04-21  François Sausset  <sausset@gmail.com>
1166
1167         Reviewed by Kenneth Rohde Christiansen.
1168
1169         Fix to take into account a change made in "StringImpl".
1170         https://bugs.webkit.org/show_bug.cgi?id=37763
1171
1172         * mathml/RenderMathMLOperator.cpp:
1173         (WebCore::RenderMathMLOperator::updateFromElement):
1174
1175 2010-04-21  Andy Estes  <aestes@apple.com>
1176
1177         Reviewed by Darin Adler.
1178
1179         Create a template for creating reference-counted Windows GDI handles.
1180         Refactor RefCountedHFONT to use this template.
1181
1182         https://bugs.webkit.org/show_bug.cgi?id=37952
1183
1184         No change in behavior.
1185
1186         * WebCore.vcproj/WebCore.vcproj: Add RefCountedHFONT.h
1187         * platform/graphics/cairo/FontPlatformData.h:
1188         (WebCore::FontPlatformData::hfont): Refactor to return m_hfont->handle() instead of m_hfont->hfont().
1189         * platform/graphics/cg/FontPlatformData.h:
1190         (WebCore::FontPlatformData::hfont): Same.
1191         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1192         (WebCore::FontPlatformData::FontPlatformData): Instantiate m_hfont with a RefCountedGDIHandle<HFONT>.
1193         * platform/graphics/win/FontPlatformDataWin.cpp:
1194         (WebCore::FontPlatformData::FontPlatformData): Same.
1195         * platform/graphics/win/RefCountedGDIHandle.h: Added. Interface is identical to RefCountedHFONT with exception of renaming hfont() to handle().
1196         (WebCore::RefCountedGDIHandle::create):
1197         (WebCore::RefCountedGDIHandle::createDeleted):
1198         (WebCore::RefCountedGDIHandle::~RefCountedGDIHandle):
1199         (WebCore::RefCountedGDIHandle::handle): Return the GDI handle.
1200         (WebCore::RefCountedGDIHandle::hash):
1201         (WebCore::RefCountedGDIHandle::RefCountedGDIHandle):
1202         * platform/graphics/win/RefCountedHFONT.h: Removed.
1203
1204 2010-04-21  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1205
1206         Reviewed by Darin Adler.
1207
1208         Fix build if NPAPI support is disabled
1209         https://bugs.webkit.org/show_bug.cgi?id=36621
1210
1211         No new tests, this is a build fix.
1212         Re-submit r56585 with fix for Chromium.
1213
1214         * plugins/PluginView.cpp: Guard getValueStatic() with
1215         NETSCAPE_PLUGIN_API
1216         (WebCore::PluginView::getValue):
1217         * plugins/PluginView.h: Guard getValue() with NETSCAPE_PLUGIN_API
1218         * plugins/PluginViewNone.cpp: Guard platformGetValue() and
1219         platformGetValueStatic with NETSCAPE_PLUGIN_API;
1220         Guard privateBrowsingStateChanged() and setJavaScriptPaused() with
1221         PLATFORM(MAC) or PLATFORM(CHROMIUM)
1222
1223 2010-04-21  David Yonge-Mallo  <davinci@chromium.org>
1224
1225         Reviewed by Dan Bernstein.
1226
1227         ZWNJ - Display non-printing, invisible character
1228         https://bugs.webkit.org/show_bug.cgi?id=16131
1229
1230         Fix the (non)display of glyphs for ZWJ and ZWNJ in simple font code path.
1231
1232         Tests: fast/text/format-control.html
1233                fast/text/zero-width-characters.html
1234
1235         * platform/graphics/Font.h:
1236         (WebCore::Font::operator!=):
1237         (WebCore::Font::treatAsZeroWidthSpace): treat ZWNJ and ZWJ as ZWSP.
1238         * platform/graphics/GlyphPageTreeNode.cpp:
1239         (WebCore::GlyphPageTreeNode::initializePage): added ZWNJ and ZWJ.
1240         * platform/text/CharacterNames.h: added ZWNJ and ZWJ.
1241
1242 2010-04-21  Charles Wei  <charles.wei@torchmobile.com.cn>
1243
1244         Reviewed by George Staikos.
1245
1246         Fix webkit build problem when xhtmlmp enabled, which is introduced by revision 57927, for 
1247         bug fix of 37175 , which seperates DocumentWriter from FrameLoader
1248         https://bugs.webkit.org/show_bug.cgi?id=37915
1249
1250         No new tests since this only fixes the build problem.
1251
1252         * dom/Document.cpp:
1253         (WebCore::Document::isXHTMLMPDocument):
1254
1255 2010-04-21  Shinichiro Hamaji  <hamaji@chromium.org>
1256
1257         Reviewed by Darin Adler.
1258
1259         Call sites of TextIterator constructor are difficult to read
1260         https://bugs.webkit.org/show_bug.cgi?id=37909
1261
1262         Now we use enum parameters instead of boolean parameters and
1263         boolean version of constructors are eliminated.
1264
1265         This change also changes the names of boolean members so they are
1266         now third person singular.
1267
1268         No new tests because this is just a refactoring.
1269
1270         * WebCore.base.exp:
1271         * editing/TextIterator.cpp:
1272         (WebCore::TextIterator::TextIterator):
1273         (WebCore::TextIterator::advance):
1274         (WebCore::TextIterator::handleReplacedElement):
1275         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
1276         (WebCore::TextIterator::shouldEmitSpaceBeforeAndAfterNode):
1277         (WebCore::TextIterator::handleNonTextNode):
1278         (WebCore::TextIterator::exitNode):
1279         (WebCore::TextIterator::emitCharacter):
1280         (WebCore::TextIterator::emitText):
1281         (WebCore::CharacterIterator::CharacterIterator):
1282         (WebCore::TextIterator::rangeLength):
1283         (WebCore::TextIterator::rangeFromLocationAndLength):
1284         (WebCore::findPlainText):
1285         * editing/TextIterator.h:
1286         (WebCore::):
1287         * editing/VisibleSelection.cpp:
1288         (WebCore::VisibleSelection::appendTrailingWhitespace):
1289         * editing/visible_units.cpp:
1290         (WebCore::nextBoundary):
1291
1292 2010-04-21  Jesus Sanchez-Palencia  <jesus@webkit.org>
1293
1294         Reviewed by Kenneth Rohde Christiansen.
1295
1296         Add PageClientQt files.
1297
1298         [Qt] PageClientQt specific implementation for QWidget
1299         https://bugs.webkit.org/show_bug.cgi?id=37858
1300
1301         * WebCore.pro:
1302
1303 2010-04-21  Diego Escalante Urrelo  <descalante@igalia.com>
1304
1305         Reviewed by Xan Lopez.
1306
1307         [Gtk] Evaluate and create tests for all the AtkRole's implemented by
1308         WebKitGtk
1309         https://bugs.webkit.org/show_bug.cgi?id=34449
1310
1311         Implement ATK_ROLE_SEPARATOR.
1312
1313         * accessibility/AccessibilityRenderObject.cpp:
1314         (WebCore::AccessibilityRenderObject::determineAccessibilityRole):
1315         * accessibility/gtk/AccessibilityObjectAtk.cpp:
1316         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
1317
1318 2010-04-21  David Leong  <david.leong@nokia.com>
1319
1320         Reviewed by Simon Hausmann.
1321
1322         [Qt] Symbian apps crash on exit due to a bad qObject_cast.
1323
1324         https://bugs.webkit.org/show_bug.cgi?id=37303
1325
1326         Added check for NULL to avoid the crash. Reworked to fix memory leak
1327            
1328         * plugins/symbian/PluginViewSymbian.cpp:
1329         (WebCore::PluginView::platformDestroy):
1330
1331 2009-04-21  Chris Fleizach  <cfleizach@apple.com>
1332
1333         Reviewed by Alexey Proskuryakov.
1334
1335         aria-liveregion-notifications.html fails on leopard release bot
1336         https://bugs.webkit.org/show_bug.cgi?id=37112
1337
1338         Change the method that DRT uses to monitor AX notifications so that its robust
1339         by just sending out NSNotification that can be listened to by anyone, instead
1340         of keeping a static function pointer around.
1341    
1342         This change is aimed to avoid flakiness seen in DRT when the notification handlers
1343         are not being called at the appropriate time.
1344
1345         Tests: platform/mac/accessibility/aria-liveregions-addedelement.html
1346                platform/mac/accessibility/aria-liveregions-changedalt.html
1347                platform/mac/accessibility/aria-liveregions-changedtext.html
1348                platform/mac/accessibility/aria-liveregions-removedelement.html
1349
1350         * accessibility/mac/AccessibilityObjectWrapper.h:
1351         * accessibility/mac/AccessibilityObjectWrapper.mm:
1352         (-[AccessibilityObjectWrapper accessibilitySetShouldRepostNotifications:]):
1353         (-[AccessibilityObjectWrapper accessibilityPostedNotification:]):
1354
1355 2010-04-21  Gavin Barraclough  <barraclough@apple.com>
1356
1357         Reviewed by NOBODY (Leopard build fix).
1358         Remove old exports.
1359
1360         * WebCore.base.exp:
1361
1362 2010-04-21  Gavin Barraclough  <barraclough@apple.com>
1363
1364         Reviewed by Darin Adler.
1365
1366         Bug 37949 - Do no copy strings into a shared buffer when converting UStrings to Strings
1367         UString and String now have the same internal representation; Just re-wrap the internal impl.
1368
1369         * bindings/js/JSDOMBinding.cpp:
1370         (WebCore::jsStringSlowCase):
1371         * bindings/js/JSDOMBinding.h:
1372         (WebCore::ustringToString):
1373         (WebCore::stringToUString):
1374         (WebCore::identifierToString):
1375         (WebCore::ustringToAtomicString):
1376         (WebCore::identifierToAtomicString):
1377
1378 2010-04-21  Mark Rowe  <mrowe@apple.com>
1379
1380         Reviewed by Eric Carlson.
1381
1382         <rdar://problem/7313430> Many crashes in Safari inside Flip4Mac below -[NSAlert didEndAlert:returnCode:contextInfo:]
1383
1384         A manual test case is required here as the Flip4Mac plug-in displays an alert, and some manual tweaking of the plug-in's
1385         preference file on disk is often required to reproduce the bug.
1386
1387         * manual-tests/plugins/flip4mac-update-alert-over-navigation.html: Added.
1388
1389 2010-04-21  Mark Rowe  <mrowe@apple.com>
1390
1391         Reviewed by Maciej Stachowiak.
1392
1393         <rdar://problem/7856151> REGRESSION: NPP_Destroy is not called when page navigates when plug-in is displaying modal dialog
1394
1395         This is a manual test case as I was not able to construct an automated test that reproduced the same issue without displaying
1396         a modal dialog on-screen.
1397
1398         * manual-tests/plugins/timeout-dialog-displayed-over-navigation.html: Added.
1399         * manual-tests/plugins/timeout-dialog-displayed-over-navigation.swf: Added.
1400
1401 2010-04-21  Sam Weinig  <sam@webkit.org>
1402
1403         Reviewed by Geoffrey Garen.
1404
1405         Fix for https://bugs.webkit.org/show_bug.cgi?id=37937
1406         Wean JavaScriptCore off calls to isMainThread()
1407
1408         No change in behavior.
1409
1410         * bindings/js/JSDOMWindowBase.cpp:
1411         (WebCore::JSDOMWindowBase::commonJSGlobalData):
1412         Explicitly set a large stack type for the common JSGlobalData and
1413         set the currently running thread as the exclusive thread for its 
1414         execution.
1415
1416         * bindings/js/WorkerScriptController.cpp:
1417         (WebCore::WorkerScriptController::WorkerScriptController):
1418         Explicitly set a small stack type for the workers JSGlobalData. 
1419
1420 2010-04-21  Gavin Barraclough  <barraclough@apple.com>
1421
1422         Reviewed by NOBODY (Qt build fix).
1423
1424         * WebCore.gypi:
1425         * WebCore.pro:
1426         * platform/text/qt/StringQt.cpp: Removed.
1427
1428 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
1429
1430         Reviewed by Oliver Hunt, Darin Adler.
1431
1432         Bug 37906 - Remove JSC::UStringImpl; unify with StringImpl.
1433         Add include for StringHash.h.
1434
1435         * WebCore.xcodeproj/project.pbxproj:
1436         * bridge/c/c_class.cpp:
1437
1438 2010-04-21  Alexey Proskuryakov  <ap@apple.com>
1439
1440         Tiger build fix.
1441
1442         * platform/network/mac/ResourceHandleMac.mm:
1443         (WebCore::createNSURLConnection): Fixed a typo, named an argument.
1444         (WebCore::ResourceHandle::start): Moved shouldUseCredentialStorage out of #if, since it's
1445         now passed to createNSURLConneciton() on all platforms (and then ignored on Tiger).
1446
1447 2010-04-21  Alexey Proskuryakov  <ap@apple.com>
1448
1449         Reviewed by Adam Roben.
1450
1451         Windows build fix.
1452
1453         * platform/network/cf/ResourceHandleCFNet.cpp: Declare CFURLConnectionCreateWithProperties
1454         for now, as it's mistakenly missing from WebKitSupportLibrary headers.
1455
1456 2010-04-21  Dimitri Glazkov  <dglazkov@chromium.org>
1457
1458         Reviewed by Darin Adler.
1459
1460         REGRESSION(r57292): Safari/Win and Chromium/Win no longer pass the acid3 test.
1461         https://bugs.webkit.org/show_bug.cgi?id=37902
1462
1463         The issue is due to MSVC creating enums as signed. The fix is to store the value
1464         as unsigned.
1465
1466         Test: http://acid3.acidtests.org/
1467
1468         * rendering/style/RenderStyle.h:
1469         (WebCore::InheritedFlags): Changed type of _insideLink to unsigned.
1470
1471 2010-04-21  Alexey Proskuryakov  <ap@apple.com>
1472
1473         Reviewed by Brady Eidson.
1474
1475         https://bugs.webkit.org/show_bug.cgi?id=37933
1476         <rdar://problem/7719540> XMLHttpRequest.withCredentials should be better enforced.
1477
1478         Test: http/tests/xmlhttprequest/cross-origin-authorization-with-embedder.html
1479
1480         This improves integration between ResourceHandle and Apple networking libraries.
1481
1482         * platform/network/cf/ResourceHandleCFNet.cpp:
1483         (WebCore::createConnectionProperties): A new helper for creating connection properties dictionary.
1484         (WebCore::ResourceHandle::start): Pass connection properties.
1485         (WebCore::WebCoreSynchronousLoader::load): Ditto.
1486
1487         * platform/network/mac/ResourceHandleMac.mm:
1488         (WebCore::createNSURLConnection): Factor out OS version dependent code for creating
1489         NSURLConnection. Tell NSURLConnection about credential policy upfront.
1490         (WebCore::ResourceHandle::start): Use the new function.
1491         (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]): Ditto.
1492
1493 2010-04-21  Xiaomei Ji  <xji@chromium.org>
1494
1495         Reviewed by Dimitri Glazkov
1496
1497         This patch fixes [chromium] RTL <select> dropdown box expands to right
1498         instead of left.
1499         https://bugs.webkit.org/show_bug.cgi?id=37232
1500
1501         No automatic test is possible.
1502
1503         * manual-tests/select_dropdown_box_alignment.html: Added.
1504         * platform/chromium/PopupMenuChromium.cpp:
1505         (WebCore::PopupContainer::layout): Adjust the x-axis of dropdown box 
1506         for RTL.
1507
1508 2010-04-21  anton muhin  <antonm@google.com>
1509
1510         Reviewed by Adam Barth.
1511
1512         [v8] Bail out if fetching of Object.prototype fails.
1513         https://bugs.webkit.org/show_bug.cgi?id=37661
1514
1515         If for any reason we failed to fetch Object.prototype, context cannot
1516         be properly initialized and we bail out.
1517
1518         * bindings/v8/V8DOMWindowShell.cpp:
1519         (WebCore::V8DOMWindowShell::initContextIfNeeded): bail out if installHiddenObjectPrototype failed
1520         (WebCore::V8DOMWindowShell::installHiddenObjectPrototype): bail out if failed to fetch Object.prototype
1521         * bindings/v8/V8DOMWindowShell.h: return false if installHiddenObjectPrototype failed
1522
1523 2010-04-21  Timothy Hatcher  <timothy@apple.com>
1524
1525         Make UserContentURLPattern correctly check for subdomains and the URL
1526         has the same suffix as the pattern. Also improve the parsing of the host.
1527
1528         https://bugs.webkit.org/show_bug.cgi?id=37357
1529
1530         Reviewed by Darin Adler.
1531
1532         * page/UserContentURLPattern.cpp:
1533         (WebCore::UserContentURLPattern::parse): Simplify the subdomain pattern parsing to
1534         simply check for "*" only or a "*." prefix and then do a substring.
1535         (WebCore::UserContentURLPattern::matchesHost): Check that the host has a "." in the
1536         position before the suffix to ensure it a subdomain and not just a suffix match.
1537
1538 2010-04-21  Xan Lopez  <xlopez@igalia.com>
1539
1540         Try to fix compilation on GTK+ debug bots.
1541
1542         * bindings/gobject/WebKitDOMBinding.cpp:
1543         (WebKit::createWrapper):
1544
1545 2010-04-21  Jakub Wieczorek  <jwieczorek@webkit.org>
1546
1547         Reviewed by Darin Adler.
1548
1549         List item markers are not always updated after changes in the DOM.
1550         https://bugs.webkit.org/show_bug.cgi?id=37060
1551
1552         In particular, they would not be updated when adding/removing an item
1553         that is not a direct child of the list element.
1554
1555         Tests: fast/lists/ol-nested-items-dynamic-insert.html
1556                fast/lists/ol-nested-items-dynamic-remove.html
1557                fast/lists/ol-nested-items.html
1558                fast/lists/ol-nested-list-dynamic-insert.html
1559                fast/lists/ol-nested-list-dynamic-remove.html
1560                fast/lists/ol-nested-list.html
1561
1562         * rendering/RenderListItem.cpp:
1563         (WebCore::updateListMarkerNumbers): Change it to traverse the whole subtree of a list, not only siblings of an item.
1564         * rendering/RenderListItem.h:
1565         * rendering/RenderObject.cpp: Move the updateListMarkerNumbers function to RenderListItem.cpp.
1566         (WebCore::RenderObject::addChild): Move the code updating list markers to RenderObjectChildList for consistency.
1567         * rendering/RenderObjectChildList.cpp: Move the updateListMarkerNumbers function to RenderListItem.cpp.
1568         (WebCore::RenderObjectChildList::removeChildNode): Pass the actual node being removed, not the next sibling.
1569         (WebCore::RenderObjectChildList::appendChildNode): Pass the actual node being added, not the next sibling.
1570         (WebCore::RenderObjectChildList::insertChildNode): Pass the actual node being added, not the next sibling.
1571         * rendering/RenderTreeAsText.cpp:
1572         (WebCore::markerTextForListItem):
1573
1574 2010-04-21  Xan Lopez  <xlopez@igalia.com>
1575
1576         Reviewed by Adam Barth.
1577
1578         [GTK] GObject DOM bindings
1579         https://bugs.webkit.org/show_bug.cgi?id=33590
1580
1581         Initial version of the GObject DOM bindings.
1582
1583         Only bindings for Node.idl and a few of its dependencies are
1584         provided, without public API to access them at the
1585         moment. References to the Document interfaces and to
1586         EventListeners in Node.idl are ignored for GObject to make the
1587         initial patch as small as possible, but will be enabled in a
1588         follow-up patch.
1589
1590         * GNUmakefile.am:
1591         * bindings/gobject/ConvertToUTF8String.cpp: Added.
1592         (convertToUTF8String):
1593         * bindings/gobject/ConvertToUTF8String.h: Added.
1594         * bindings/gobject/WebKitDOMBinding.cpp: Added.
1595         (WebKit::domObjects):
1596         (WebKit::DOMObjectCache::get):
1597         (WebKit::DOMObjectCache::put):
1598         (WebKit::DOMObjectCache::forget):
1599         (WebKit::createWrapper):
1600         (WebKit::kit):
1601         * bindings/gobject/WebKitDOMBinding.h: Added.
1602         * bindings/gobject/WebKitDOMObject.cpp: Added.
1603         (webkit_dom_object_init):
1604         (webkit_dom_object_class_init):
1605         * bindings/gobject/WebKitDOMObject.h: Added.
1606         * bindings/scripts/CodeGeneratorGObject.pm: Added.
1607         * bindings/scripts/gobject-generate-headers.pl: Added.
1608         * dom/Node.idl:
1609
1610 2010-04-21  Gustavo Sverzut Barbieri  <barbieri@profusion.mobi>
1611
1612         Reviewed by Xan Lopez.
1613
1614         Wrong header being included in FontPlatformDataCairo.cpp
1615         https://bugs.webkit.org/show_bug.cgi?id=37829
1616
1617         No behavior changes, so no new tests were added.
1618
1619         * platform/graphics/cairo/FontPlatformDataCairo.cpp:
1620
1621 2010-04-21  Adam Roben  <aroben@apple.com>
1622
1623         Fix leaks of FilterData/SVGFilterBuilder in RenderSVGResourceFilter
1624
1625         Fixes <http://webkit.org/b/37922>.
1626
1627         Reviewed by Dave Hyatt.
1628
1629         * rendering/RenderSVGResourceFilter.cpp:
1630         (WebCore::RenderSVGResourceFilter::applyResource): Use an OwnPtr to
1631         hold the heap-allocated FilterData object, so that we won't leak it
1632         when we bail out of this function on error.
1633
1634 2010-04-21  Zoltan Herczeg  <zherczeg@webkit.org>
1635
1636         Reviewed by Kenneth Rohde Christiansen.
1637
1638         [Qt] startAnimation() is not needed to preceede nativeImageForCurrentFrame()
1639         https://bugs.webkit.org/show_bug.cgi?id=37844
1640
1641         nativeImageForCurrentFrame() resets the m_decoder parameter under Qt,
1642         which is required by startAnimation() to detect frame and repetition counts.
1643         Hence, Image::drawTiled cannot start animations under Qt:
1644         <html><body background="animated.gif"></body></html> does not work
1645
1646         * platform/graphics/qt/ImageDecoderQt.cpp:
1647         (WebCore::ImageDecoderQt::internalHandleCurrentImage):
1648
1649 2010-04-21  Benjamin Poulain  <ikipou@gmail.com>
1650
1651         Reviewed by Simon Fraser.
1652
1653         Update of fixed elements is not made correctly when the page has been scrolled
1654         https://bugs.webkit.org/show_bug.cgi?id=36783
1655
1656         When a fixed element was updated, the old geometry was not repainted correctly
1657         because the repaint rect was cached during the layout and not updated when 
1658         scrolling.
1659
1660         The rect is now updated while scrolling so the region updated correspond to the
1661         region of the element on the screen.
1662
1663         The method RenderLayer::updateRepaintRectsAfterScroll() updates
1664         the repaint rect of all fixed tree after scroll.
1665
1666         Tests: fast/repaint/fixed-child-move-after-scroll.html
1667                fast/repaint/fixed-child-of-fixed-move-after-scroll.html
1668                fast/repaint/fixed-child-of-transformed-move-after-scroll.html
1669                fast/repaint/fixed-move-after-scroll.html
1670
1671         * page/FrameView.cpp:
1672         (WebCore::FrameView::scrollPositionChanged):
1673         * rendering/RenderLayer.cpp:
1674         (WebCore::RenderLayer::updateRepaintRectsAfterScroll):
1675         * rendering/RenderLayer.h:
1676
1677 2010-04-21  Gustavo Sverzut Barbieri  <barbieri@profusion.mobi>
1678
1679         Reviewed by Adam Roben.
1680
1681         Update EFL port to match recent API changes.
1682         http://webkit.org/b/37853
1683
1684         No behavior changes, so no new tests were added.
1685
1686         * platform/efl/FileSystemEfl.cpp:
1687         * platform/efl/LocalizedStringsEfl.cpp:
1688         (WebCore::missingPluginText):
1689         (WebCore::crashedPluginText):
1690         * platform/efl/MIMETypeRegistryEfl.cpp:
1691         (WebCore::MIMETypeRegistry::isApplicationPluginMIMEType):
1692         * platform/graphics/efl/ImageEfl.cpp:
1693
1694 2010-04-21  Avi Drissman  <avi@chromium.org>
1695
1696         Reviewed by Simon Fraser.
1697
1698         JPG images fail to print in Chromium
1699         https://bugs.webkit.org/show_bug.cgi?id=37796
1700
1701         Image sources of JPG data with final=false fail to draw into PDF contexts even if later updated (<rdar://problem/7874035>). Therefore, destroy and re-create the image source when the final data arrives.
1702
1703         * platform/graphics/cg/ImageSourceCG.cpp:
1704         (WebCore::ImageSource::setData):
1705
1706 2010-04-21  Marcus Bulach  <bulach@chromium.org>
1707
1708         Reviewed by Nate Chapin.
1709
1710         EventSource needs to be marked as an ActiveDomType.
1711         https://bugs.webkit.org/show_bug.cgi?id=37857
1712         Existing layout tests (fast/eventsource and http/tests/eventsource/) should pass when compiling with eventsource enabled.
1713
1714         * bindings/scripts/CodeGeneratorV8.pm:
1715         * bindings/v8/V8DOMWrapper.cpp:
1716         * bindings/v8/custom/V8EventSourceConstructor.cpp:
1717         (WebCore::V8EventSource::constructorCallback):
1718
1719 2010-04-21  Gustavo Sverzut Barbieri  <barbieri@profusion.mobi>
1720
1721         Reviewed by Nikolas Zimmermann.
1722
1723         Add missing includes to platform/posix/FileSystemPOSIX.cpp
1724         https://bugs.webkit.org/show_bug.cgi?id=37861
1725
1726         No behavior changes, so no new tests were added.
1727
1728         * platform/posix/FileSystemPOSIX.cpp:
1729
1730 2010-04-21  No'am Rosenthal  <noam.rosenthal@nokia.com>
1731
1732         Reviewed by Simon Fraser.
1733
1734         [Qt] Fix or remove the runtime flag for accelerated compositing.
1735
1736         This adds a way for a chrome client to disallow layers from becoming composited,
1737         even if the settings enable accelerated compositing. This is necessary for platforms
1738         where different views can be applied with the same settings to the same page.
1739
1740         We enable an API through ChromeClient to ask the chrome-client whether or not
1741         it can render composited layers, which is taken into account when the compositor
1742         decides whether or not to start compositing.
1743
1744         https://bugs.webkit.org/show_bug.cgi?id=37313
1745
1746         Pages under LayoutTests/compositing now work under QWebView, even when
1747         QWebSettings::AcceleratedCompositingEnabled is on.
1748
1749         * page/ChromeClient.h:
1750         (WebCore::ChromeClient::allowsAcceleratedCompositing):
1751         * platform/qt/QWebPageClient.h:
1752         (QWebPageClient::allowsAcceleratedCompositing):
1753         * rendering/RenderLayerCompositor.cpp:
1754         (WebCore::RenderLayerCompositor::canBeComposited):
1755
1756 2010-04-21  Ryosuke Niwa  <rniwa@webkit.org>
1757
1758         No review. Spurious whitespace was removed from project file.
1759
1760         * WebCore.xcodeproj/project.pbxproj:
1761
1762 2010-04-20  Ryosuke Niwa  <rniwa@webkit.org>
1763
1764         Reviewed by Eric Seidel.
1765
1766         [Qt] Build fix: warning on L933 of CompositeEditCommand.cpp
1767         https://bugs.webkit.org/show_bug.cgi?id=37912
1768
1769         Replaced the ternary operator by an if statement because GCC was confused by the use of
1770         ternary operator and producing warnings on Qt builds.
1771
1772         * WebCore.xcodeproj/project.pbxproj:
1773         * editing/CompositeEditCommand.cpp:
1774         (WebCore::CompositeEditCommand::moveParagraphs):
1775
1776 2010-04-20  Ryosuke Niwa  <rniwa@webkit.org>
1777
1778         Reviewed by Justin Garcia.
1779
1780         Nested <ul>s are mishandled when converted to <ol> using execCommand('insertorderedlist')
1781         https://bugs.webkit.org/show_bug.cgi?id=19539
1782
1783         Fixes a bug where two consecutive lists are not merged if they have been converted
1784         from ordered/unordered lists inside another list.
1785
1786         The bug was caused by InsertListCommand::doApply where it did not merge a newly inserted
1787         list element and its neighbors. This patch adds code to doApply so that after inserting
1788         the list element, it updates previousList and nextList to the outermost list elements around
1789         insertionPos under the same enclosing list. Because the next and the previous list elements
1790         are not necessarily visually next to the newly inserted element before moveParagraph moves
1791         the paragraph into the new list element, doApply merges lists after moveParagraph is called.
1792
1793         Test: editing/execCommand/insert-lists-inside-another-list.html
1794
1795         * editing/InsertListCommand.cpp:
1796         (WebCore::InsertListCommand::doApply): Modified as described above
1797         * editing/htmlediting.cpp:
1798         (WebCore::outermostEnclosingList): Added rootNode. Returns the outermost list element,
1799           which is a descendent of rootNode.
1800         * editing/htmlediting.h:
1801
1802 2010-04-20  Alexey Proskuryakov  <ap@apple.com>
1803
1804         Reviewed by Darin Adler.
1805
1806         https://bugs.webkit.org/show_bug.cgi?id=37776
1807         <rdar://problem/7877716> REGRESSION: When using dvorak, keydown/keyup reports qwerty keyCodes
1808
1809         * platform/cocoa/KeyEventCocoa.mm: (WebCore::windowsKeyCodeForCharCode): Re-added mapping
1810         for Roman letters and punctuation.
1811
1812         * platform/mac/KeyEventMac.mm: (WebCore::windowsKeyCodeForKeyEvent): Improved approximation
1813         of IE behavior. Keyboard layouts that change location of Roman letters (like AZERTY or Dvorak)
1814         also switch their keycodes. Also, restored Safari 4 behavior for punctuation. It's difficult
1815         to match Windows for punctuation exactly, because keyboard layouts make arbitrary changes
1816         to their keycodes.
1817
1818 2010-04-20  Shinichiro Hamaji  <hamaji@chromium.org>
1819
1820         Reviewed by Darin Adler and Alexey Proskuryakov.
1821
1822         A backslash in EUC-JP becomes to a yen sign when it is copied
1823         https://bugs.webkit.org/show_bug.cgi?id=36419
1824
1825         Tests: editing/execCommand/transpose-backslash-with-euc.html
1826                editing/pasteboard/copy-backslash-with-euc.html
1827
1828         * editing/Editor.cpp: Remove an unnecessary displayStringModifiedByEncoding calls.
1829         (WebCore::Editor::addToKillRing):
1830         * editing/TextIterator.cpp: TextIterator can use RenderText::textWithoutTranscoding and now plainText() uses this version
1831         (WebCore::TextIterator::TextIterator):
1832         (WebCore::TextIterator::init):
1833         (WebCore::TextIterator::emitText):
1834         (WebCore::plainTextToMallocAllocatedBuffer):
1835         * editing/TextIterator.h:
1836         (WebCore::):
1837         * platform/mac/PasteboardMac.mm: Remove an unnecessary displayStringModifiedByEncoding call.
1838         (WebCore::Pasteboard::writeSelection):
1839         * platform/text/TextEncoding.h: Make backslashAsCurrencySymbol public.
1840         * rendering/RenderText.cpp: Add RenderText::textWithoutTranscoding
1841         (WebCore::RenderText::RenderText):
1842         (WebCore::RenderText::updateNeedsTranscoding):
1843         (WebCore::RenderText::styleDidChange):
1844         (WebCore::isInlineFlowOrEmptyText):
1845         (WebCore::RenderText::previousCharacter):
1846         (WebCore::RenderText::setTextInternal):
1847         (WebCore::RenderText::textWithoutTranscoding):
1848         (WebCore::RenderText::transformText):
1849         * rendering/RenderText.h:
1850         * rendering/RenderTextControl.cpp: Remove an unnecessary displayStringModifiedByEncoding call.
1851         (WebCore::RenderTextControl::setInnerTextValue):
1852         (WebCore::RenderTextControl::finishText):
1853         * rendering/RenderTextFragment.cpp:
1854         (WebCore::RenderTextFragment::previousCharacter):
1855         * rendering/RenderTextFragment.h:
1856
1857 2010-04-20  Nate Chapin  <japhet@chromium.org>
1858
1859         Reviewed by Dimitri Glazkov.
1860
1861         https://bugs.webkit.org/show_bug.cgi?id=37367
1862
1863         Fix style violations in code generated by CodeGeneratorV8.pm.
1864
1865         * bindings/scripts/CodeGeneratorV8.pm:
1866         * bindings/v8/test/V8TestObj.cpp:
1867         * bindings/v8/test/V8TestObj.h:
1868
1869 2010-04-20  Sheriff Bot  <webkit.review.bot@gmail.com>
1870
1871         Unreviewed, rolling out r57924.
1872         http://trac.webkit.org/changeset/57924
1873         https://bugs.webkit.org/show_bug.cgi?id=37898
1874
1875         It broke 3-4 test on all bot (Requested by Ossy on #webkit).
1876
1877         * page/AbstractView.idl:
1878         * page/DOMWindow.cpp:
1879         (WebCore::DOMWindow::media):
1880         * page/DOMWindow.h:
1881         * page/DOMWindow.idl:
1882
1883 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
1884
1885         Reviewed by Oliver Hunt.
1886
1887         Bug 37895 - Share common code from UStringImplBase with StringImpl
1888         Add forwarding header.
1889
1890         * ForwardingHeaders/wtf/text/StringImplBase.h: Added.
1891
1892 2010-04-20  Adam Barth  <abarth@webkit.org>
1893
1894         Unreviewed build fix fro Chromium.
1895
1896         * loader/DocumentWriter.cpp:
1897
1898 2010-04-20  Pavel Feldman  <pfeldman@chromium.org>
1899
1900         Reviewed by Timothy Hatcher.
1901
1902         Web Inspector: Support live edit while on a breakpoint, preserve breakpoints when adding new lines.
1903
1904         https://bugs.webkit.org/show_bug.cgi?id=37820
1905
1906         * inspector/front-end/ScriptsPanel.js:
1907         (WebInspector.ScriptsPanel.prototype.editScriptLine.mycallback):
1908         (WebInspector.ScriptsPanel.prototype.editScriptLine):
1909         * inspector/front-end/TextViewer.js:
1910         (WebInspector.TextViewer.prototype._handleDoubleClick):
1911         (WebInspector.TextViewer.prototype._cancelEditingLine):
1912
1913 2010-04-20  Adam Barth  <abarth@webkit.org>
1914
1915         Reviewed by Eric Seidel.
1916
1917         Factor DocumentWriter out of FrameLoader
1918         https://bugs.webkit.org/show_bug.cgi?id=37175
1919
1920         This patch separates the begin/write/end cycle of decoding network
1921         bytes and putting them into a document from the rest of the loading
1922         machinery.  The code and state required to write bytes into a document
1923         doesn't interact very much with the rest of the loading machinery.
1924
1925         No tests because there is no behavior change (hopefully!).
1926
1927         * Android.mk:
1928         * GNUmakefile.am:
1929         * WebCore.base.exp:
1930         * WebCore.gypi:
1931         * WebCore.pro:
1932         * WebCore.vcproj/WebCore.vcproj:
1933         * WebCore.xcodeproj/project.pbxproj:
1934         * bindings/ScriptControllerBase.cpp:
1935         (WebCore::ScriptController::executeIfJavaScriptURL):
1936         * dom/Document.cpp:
1937         (WebCore::Document::close):
1938         * dom/ProcessingInstruction.cpp:
1939         (WebCore::ProcessingInstruction::checkStyleSheet):
1940         * dom/ScriptElement.cpp:
1941         (WebCore::ScriptElementData::scriptCharset):
1942         * html/HTMLLinkElement.cpp:
1943         (WebCore::HTMLLinkElement::process):
1944         * loader/DocLoader.cpp:
1945         (WebCore::DocLoader::requestPreload):
1946         * loader/DocumentLoader.cpp:
1947         (WebCore::DocumentLoader::finishedLoading):
1948         (WebCore::DocumentLoader::setupForReplaceByMIMEType):
1949         * loader/DocumentWriter.cpp: Added.
1950         * loader/DocumentWriter.h: Added.
1951         * loader/FrameLoader.cpp:
1952         (WebCore::FrameLoader::FrameLoader):
1953         (WebCore::FrameLoader::init):
1954         (WebCore::FrameLoader::clear):
1955         (WebCore::FrameLoader::receivedFirstData):
1956         (WebCore::FrameLoader::setURL):
1957         (WebCore::FrameLoader::didBeginDocument):
1958         (WebCore::FrameLoader::didEndDocument):
1959         (WebCore::FrameLoader::willSetEncoding):
1960         (WebCore::FrameLoader::addData):
1961         (WebCore::FrameLoader::transitionToCommitted):
1962         (WebCore::FrameLoader::open):
1963         (WebCore::FrameLoader::finishedLoadingDocument):
1964         (WebCore::FrameLoader::addExtraFieldsToRequest):
1965         * loader/FrameLoader.h:
1966         (WebCore::FrameLoader::writer):
1967         (WebCore::FrameLoader::isDisplayingInitialEmptyDocument):
1968         * loader/MediaDocument.cpp:
1969         (WebCore::MediaDocument::replaceMediaElementTimerFired):
1970         * loader/PluginDocument.cpp:
1971         (WebCore::PluginTokenizer::createDocumentStructure):
1972         * platform/network/FormDataBuilder.cpp:
1973         (WebCore::FormDataBuilder::dataEncoding):
1974         * svg/graphics/SVGImage.cpp:
1975         (WebCore::SVGImage::dataChanged):
1976
1977 2010-04-20  Kenneth Rohde Christiansen  <kenneth@webkit.org>
1978
1979         Reviewed by Simon Fraser.
1980
1981         Rename window.media to window.styleMedia
1982         https://bugs.webkit.org/show_bug.cgi?id=36187
1983
1984         It has been defined that the AbstractView media extension
1985         defined in the CSSOM View spec should be renamed to styleMedia.
1986         This patch does that and updates the current layout tests
1987         making use of it.
1988
1989         * page/AbstractView.idl:
1990         * page/DOMWindow.cpp:
1991         (WebCore::DOMWindow::styleMedia):
1992         * page/DOMWindow.h:
1993         * page/DOMWindow.idl:
1994
1995 2010-04-20  Timothy Hatcher  <timothy@apple.com>
1996
1997         Fix matching of "file:///*" patterns by not trying to compare the host. The host is
1998         irrelevant for file URLs.
1999
2000         Also fix comparisons to be case insensitive.
2001
2002         https://bugs.webkit.org/show_bug.cgi?id=37889
2003
2004         Reviewed by Dave Hyatt.
2005
2006         * page/UserContentURLPattern.cpp:
2007         (WebCore::UserContentURLPattern::parse): Use equalIgnoringCase when comparing for "file" schemes.
2008         (WebCore::UserContentURLPattern::matches): Use equalIgnoringCase when comparing schemes. Only call
2009         matchesHost if the scheme isn't "file".
2010         (WebCore::UserContentURLPattern::matchesHost): Call equalIgnoringCase when comparing hosts. The endsWith
2011         was already doing a case-insensitive compare, so existing tests worked though this path.
2012
2013 2010-04-20  Justin Schuh  <jschuh@chromium.org>
2014
2015         Reviewed by Adam Barth.
2016
2017         Invalid cast due to <video> inside <foreignObject> inside <svg> inside <img>
2018         https://bugs.webkit.org/show_bug.cgi?id=37331
2019
2020         Added a setting to enable/disable media per-page and have the SVGImage 
2021         disable media for its dummy page. Also found and fixed a related bad
2022         cast in the V8 bindings (JSC had a custom wrapper for this already).
2023
2024         Tests: media/svg-as-image-with-media-blocked.html
2025
2026         * dom/make_names.pl: Added media enabled check and V8 cast wrapper
2027         * page/Settings.cpp: Added m_isMediaEnabled (defaults to true)
2028         (WebCore::Settings::Settings):
2029         (WebCore::Settings::setMediaEnabled):
2030         * page/Settings.h:
2031         (WebCore::Settings::isMediaEnabled):
2032         * svg/graphics/SVGImage.cpp: Disables media in dummy page
2033         (WebCore::SVGImage::dataChanged):
2034
2035 2010-04-19  Antonio Gomes  <tonikitoo@webkit.org>
2036
2037         Reviewed by Simon Fraser.
2038
2039         Spatial Navigation: at @updateFocusCandidateIfCloser make an assignment shortcut when FocusCandidate is null
2040         https://bugs.webkit.org/show_bug.cgi?id=37802
2041
2042         In updateFocusCandidateIfCloser method, we do all bail out checks in the begining of
2043         the method body. If after those bail out checks, no "best FocusCandidate" has been taken
2044         yet (i.e. focusCandidate.isNull() == true), we can safely take the current candidate,
2045         and exit earlier.
2046
2047         No behavior change, it is just a safe assignment shortcut.
2048
2049         * page/FocusController.cpp:
2050         (WebCore::updateFocusCandidateIfCloser):
2051
2052 2010-04-20  Simon Fraser  <simon.fraser@apple.com>
2053
2054         Reviewed by Dan Bernstein.
2055
2056         Hook compositing layers together across iframes
2057         https://bugs.webkit.org/show_bug.cgi?id=37878
2058         
2059         First step: if an iframe's document goes into compositing mode, also throw the parent
2060         document into compositing mode (all the way up to the root). This is required both
2061         to preserve layering (since parent document content can obscure iframe content),
2062         and so that we can eventually hook the layer trees together.
2063
2064         Test: compositing/iframes/composited-iframe.html
2065
2066         * rendering/RenderIFrame.h:
2067         * rendering/RenderIFrame.cpp:
2068         (WebCore::RenderIFrame::requiresLayer): In order to make an iframe composited, it also has to have
2069         a RenderLayer, so must return |true| from requiresLayer().
2070         (WebCore::RenderIFrame::requiresAcceleratedCompositing): Returns true if the content document
2071         is in compositing mode.
2072         (WebCore::RenderIFrame::isRenderIFrame): Required so that RenderLayerCompositor can check
2073         if a renderer is an iframe.
2074         (WebCore::toRenderIFrame): Required so that RenderLayerCompositor can cast to a RenderIFrame.
2075
2076         * rendering/RenderLayerCompositor.h:
2077         * rendering/RenderLayerCompositor.cpp:
2078         (WebCore::RenderLayerCompositor::enableCompositingMode): Call out to the RenderView when
2079         the compositing mode changes, so that the parent document can update its compositing status.
2080         (WebCore::RenderLayerCompositor::requiresCompositingLayer): Call requiresCompositingForIFrame().
2081         (WebCore::RenderLayerCompositor::requiresCompositingForIFrame): Check to see if the iframe
2082         wants to be composited.
2083
2084         * rendering/RenderObject.h:
2085         (WebCore::RenderObject::isRenderIFrame): Base class returns false.
2086
2087         * rendering/RenderView.h:
2088         * rendering/RenderView.cpp:
2089         (WebCore::RenderView::compositingStateChanged): New method that allows an iframe to notify
2090         its parent document that a recalcStyle is required, to update compositing state.
2091
2092 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
2093
2094         Reviewed by NOBODY (build fix).
2095         Speculative tiger build fix.
2096
2097         * WebCore.NPAPI.exp:
2098         * WebCore.PluginHostProcess.exp:
2099         * WebCore.base.exp:
2100
2101 2010-04-20  Pavel Feldman  <pfeldman@chromium.org>
2102
2103         Reviewed by Timothy Hatcher.
2104
2105         Web Inspector: add basic script editing capabilities to the front-end.
2106
2107         https://bugs.webkit.org/show_bug.cgi?id=37875
2108
2109         * bindings/js/ScriptDebugServer.cpp:
2110         (WebCore::ScriptDebugServer::setBreakpoint):
2111         (WebCore::ScriptDebugServer::removeBreakpoint):
2112         * inspector/front-end/ScriptView.js:
2113         (WebInspector.ScriptView):
2114         (WebInspector.ScriptView.prototype._editLine):
2115         (WebInspector.ScriptView.prototype._editLineComplete):
2116         * inspector/front-end/ScriptsPanel.js:
2117         (WebInspector.ScriptsPanel.prototype._resourceLoadingFinished):
2118         (WebInspector.ScriptsPanel.prototype.canEditScripts):
2119         (WebInspector.ScriptsPanel.prototype.editScriptLine):
2120         * inspector/front-end/SourceFrame.js:
2121         (WebInspector.SourceFrame):
2122         (WebInspector.SourceFrame.prototype.updateContent):
2123         (WebInspector.SourceFrame.prototype._createViewerIfNeeded):
2124         * inspector/front-end/TextEditorHighlighter.js:
2125         (WebInspector.TextEditorHighlighter):
2126         (WebInspector.TextEditorHighlighter.prototype.reset):
2127         * inspector/front-end/TextEditorModel.js:
2128         (WebInspector.TextEditorModel.prototype.copyRange):
2129         * inspector/front-end/TextViewer.js:
2130         (WebInspector.TextViewer):
2131         (WebInspector.TextViewer.prototype.set editCallback):
2132         (WebInspector.TextViewer.prototype._buildChunks):
2133         (WebInspector.TextViewer.prototype._handleKeyDown):
2134         (WebInspector.TextViewer.prototype._handleDoubleClick):
2135         (WebInspector.TextViewer.prototype._commitEditingLine):
2136         (WebInspector.TextViewer.prototype._cancelEditingLine):
2137         * inspector/front-end/inspector.js:
2138         (WebInspector.documentKeyDown):
2139         (WebInspector.log.logMessage):
2140         (WebInspector.log):
2141         (WebInspector.isEditingAnyField):
2142         (WebInspector.startEditing.cleanUpAfterEditing):
2143
2144 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
2145
2146         Reviewed by Geoff Garen.
2147
2148         Add forwarding header.
2149
2150         * ForwardingHeaders/runtime/RopeImpl.h: Added.
2151
2152 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
2153
2154         Reviewed by Geoff Garen.
2155
2156         Bug 37828 - Move WebCore's String classes to WTF
2157
2158         Move these classes up to WTF so they are available to all clients of WTF (in
2159         particular JSC).
2160
2161         As a first patch, making the most minimal change possible, since this patch
2162         could easily grow rather large since we'll have to change every class forward
2163         declaration ( e.g. every "namespace WebCore { class String; }" much change to
2164         "namespace WTF { class String; }").
2165
2166         Moving the files, but leaving the classes logically in the WebCore namespace –
2167         which is technically a layering violation – I'll come back and fix this up in a
2168         subsequent patch.
2169
2170         * Android.mk:
2171         * ForwardingHeaders/wtf/StaticConstructors.h: Added.
2172         * ForwardingHeaders/wtf/text/AtomicString.h: Added.
2173         * ForwardingHeaders/wtf/text/AtomicStringImpl.h: Added.
2174         * ForwardingHeaders/wtf/text/StringBuffer.h: Added.
2175         * ForwardingHeaders/wtf/text/StringHash.h: Added.
2176         * ForwardingHeaders/wtf/text/StringImpl.h: Added.
2177         * ForwardingHeaders/wtf/text/WTFString.h: Added.
2178         * GNUmakefile.am:
2179         * WebCore.gypi:
2180         * WebCore.pro:
2181         * WebCore.vcproj/WebCore.vcproj:
2182         * WebCore.xcodeproj/project.pbxproj:
2183         * css/MediaFeatureNames.cpp:
2184         * dom/QualifiedName.cpp:
2185         * dom/make_names.pl:
2186         * platform/StaticConstructors.h: Removed.
2187         * platform/text/AtomicString.cpp: Removed.
2188         * platform/text/AtomicString.h:
2189         * platform/text/AtomicStringImpl.h:
2190         * platform/text/PlatformString.h:
2191         * platform/text/String.cpp:
2192         * platform/text/StringHash.h:
2193         * platform/text/StringImpl.cpp: Removed.
2194         * platform/text/StringImpl.h:
2195
2196 2010-04-20  Kent Tamura  <tkent@chromium.org>
2197
2198         Reviewed by Darin Adler.
2199
2200         Change a parameter type of chooseIconForFiles()
2201         https://bugs.webkit.org/show_bug.cgi?id=37504
2202
2203         Change PassRefPtr<FileChooser> parameter of chooseIconForFiles()
2204         to FileChooser*. Though an implementation of chooseIconForFiles()
2205         might have ownership of the FileChooser instance, we don't need to
2206         use PassRefPtr<> in this case.
2207
2208         * loader/EmptyClients.h:
2209         (WebCore::EmptyChromeClient::chooseIconForFiles):
2210         * page/Chrome.cpp:
2211         (WebCore::Chrome::chooseIconForFiles):
2212         * page/Chrome.h:
2213         * page/ChromeClient.h:
2214
2215 2010-04-20  Diego Escalante Urrelo  <descalante@igalia.com>
2216
2217         Reviewed by Xan Lopez.
2218
2219         [Gtk] Evaluate and create tests for all the AtkRole's implemented by
2220         WebKitGtk
2221         https://bugs.webkit.org/show_bug.cgi?id=34449
2222
2223         Implement ATK_ROLE_FORM.
2224
2225         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
2226         (webkit_accessible_get_role):
2227
2228 2010-04-20  Martin Robinson  <mrobinson@webkit.org>
2229
2230         Reviewed by Gustavo Noronha Silva.
2231
2232         [GTK] Enable DOM clipboard and drag-and-drop access
2233         https://bugs.webkit.org/show_bug.cgi?id=30623
2234
2235         Move most of the PasteboardHelper logic into WebCore. This helps
2236         prepare for WebKit2 and leads to a clearer separation of concerns
2237         between the WebKit and WebCore layers.
2238
2239         No new tests as functionality has not changed.
2240
2241         * GNUmakefile.am: Add PastboardHelper.cpp to list of sources.
2242         * platform/Pasteboard.h: Added a getter for the PasteboardHelper and made the member private.
2243         * platform/gtk/PasteboardGtk.cpp: Update PasteboardHelper method calls to use new naming.
2244         (WebCore::clipboard_get_contents_cb): Ditto.
2245         (WebCore::Pasteboard::helper): Added, member is now private.
2246         (WebCore::Pasteboard::writeURL): Ditto.
2247         (WebCore::Pasteboard::documentFragment): Update to reflect method renaming.
2248         (WebCore::Pasteboard::plainText): Ditto.
2249         * platform/gtk/PasteboardHelper.cpp: Added.
2250         (WebCore::PasteboardHelper::PasteboardHelper): Added.
2251         (WebCore::PasteboardHelper::~PasteboardHelper): Added.
2252         (WebCore::PasteboardHelper::initializeTargetList): Added, originally from WebKit.
2253         (WebCore::widgetFromFrame): Added helper function.
2254         (WebCore::PasteboardHelper::getCurrentClipboard): Added, originally from WebKit.
2255         (WebCore::PasteboardHelper::getClipboard): Ditto.
2256         (WebCore::PasteboardHelper::getPrimarySelectionClipboard): Ditto.
2257         (WebCore::PasteboardHelper::targetList): Ditto.
2258         (WebCore::PasteboardHelper::fillSelectionData): Ditto.
2259         (WebCore::PasteboardHelper::targetListForDataObject): Ditto.
2260         (WebCore::getClipboardContentsCallback): Ditto.
2261         (WebCore::clearClipboardContentsCallback): Ditto.
2262         (WebCore::PasteboardHelper::writeClipboardContents): Ditto.
2263         * platform/gtk/PasteboardHelper.h: Moved methods from WebKit to WebCore.
2264
2265 2010-04-20  Simon Fraser  <simon.fraser@apple.com>
2266
2267         Reviewed by Anders Carlsson.
2268
2269         backgroundColor is oddly indented in layer tree dump
2270         https://bugs.webkit.org/show_bug.cgi?id=37885
2271
2272         The writeIndent() was mistakenly outside the LayerTreeAsTextDebug clause, causing indents
2273         to be written twice.
2274         
2275         * platform/graphics/GraphicsLayer.cpp:
2276         (WebCore::GraphicsLayer::dumpProperties):
2277
2278 2010-04-20  Simon Fraser  <simon.fraser@apple.com>
2279
2280         Reviewed by Dimitri Glazkov.
2281
2282         Clean up RenderPart/RenderPartObject/RenderFrame/RenderEmbeddedObject
2283         https://bugs.webkit.org/show_bug.cgi?id=37741
2284
2285         RenderPartObject is a useless intermediate class between RenderPart and
2286         RenderEmbeddedObject, and we can now remove it. Its only method, viewCleared(),
2287         applies to objects and embeds when the content is a FrameView, so can move
2288         to RenderEmbeddedObject.
2289
2290         * Android.mk:
2291         * GNUmakefile.am:
2292         * WebCore.gypi:
2293         * WebCore.pro:
2294         * WebCore.vcproj/WebCore.vcproj:
2295         * WebCore.xcodeproj/project.pbxproj:
2296         * rendering/RenderEmbeddedObject.cpp:
2297         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
2298         (WebCore::RenderEmbeddedObject::requiresLayer):
2299         (WebCore::RenderEmbeddedObject::paint):
2300         (WebCore::RenderEmbeddedObject::viewCleared):
2301         * rendering/RenderEmbeddedObject.h:
2302         * rendering/RenderFrameBase.h:
2303         * rendering/RenderPart.cpp:
2304         (WebCore::RenderPart::RenderPart):
2305         * rendering/RenderPart.h:
2306         * rendering/RenderPartObject.cpp: Removed.
2307         * rendering/RenderPartObject.h: Removed.
2308
2309 2010-04-20  Robin Cao  <robin.webkit@gmail.com>
2310
2311         Reviewed by Dirk Schulze.
2312
2313         SVG no AnimateColor for stroke or fill if they are set to none on target.
2314         https://bugs.webkit.org/show_bug.cgi?id=36718
2315
2316         SVGAnimateElement::resetToBaseValue reset 'm_propertyType' in the process of animation.
2317         This will cause problems when attributes 'fill' and 'stroke' have the value 'none', because in this case 
2318         the property type determined by base value may be different from the one determined by 'fromTo' values.
2319
2320         No new tests. The test suite in svg/animation is not working for target element with attribute 'fill' set to 'none'.
2321         Now animateColor on target element with attributes 'fill' and 'stroke' set to 'none' is possible.
2322
2323         * svg/SVGAnimateElement.cpp:
2324         (WebCore::SVGAnimateElement::calculateFromAndToValues):
2325         (WebCore::SVGAnimateElement::resetToBaseValue):
2326
2327 2010-04-20  Sheriff Bot  <webkit.review.bot@gmail.com>
2328
2329         Unreviewed, rolling out r57892.
2330         http://trac.webkit.org/changeset/57892
2331         https://bugs.webkit.org/show_bug.cgi?id=37864
2332
2333         Caused an assertion in Mac builds (Requested by smfr on
2334         #webkit).
2335
2336         * WebCore.xcodeproj/project.pbxproj:
2337         * editing/Editor.cpp:
2338         (WebCore::Editor::insideVisibleArea):
2339         * page/Frame.cpp:
2340         (WebCore::Frame::ownerRenderer):
2341         * page/Frame.h:
2342         * page/FrameView.cpp:
2343         (WebCore::FrameView::~FrameView):
2344         (WebCore::FrameView::clear):
2345         (WebCore::FrameView::invalidateRect):
2346         (WebCore::FrameView::createScrollbar):
2347         * rendering/RenderFrameBase.h:
2348         * rendering/RenderObject.h:
2349
2350 2010-04-20  Jakub Wieczorek  <jwieczorek@webkit.org>
2351
2352         Reviewed by Darin Adler.
2353
2354         RenderListItem: change enclosingList() to only traverse the render tree.
2355         https://bugs.webkit.org/show_bug.cgi?id=37319
2356
2357         This makes the function safe to use for items with nodes that are detached from
2358         the DOM tree and simplifies the code quite a bit.
2359
2360         Covered by existing tests.
2361
2362         * rendering/RenderListItem.cpp:
2363         (WebCore::enclosingList):
2364         (WebCore::previousListItem):
2365         (WebCore::RenderListItem::explicitValueChanged):
2366
2367 2010-04-20  Simon Fraser  <simon.fraser@apple.com>
2368
2369         Reviewed by Dan Bernstein.
2370
2371         Clean up RenderPart/RenderPartObject/RenderFrame/RenderEmbeddedObject
2372         https://bugs.webkit.org/show_bug.cgi?id=37741
2373
2374         Make Frame::ownerRenderer() return a RenderFrameBase* rather than a
2375         RenderPart*, and add the necessary toRenderFrameBase() and isRenderFrameBase().
2376
2377         * WebCore.xcodeproj/project.pbxproj:
2378         * editing/Editor.cpp:
2379         (WebCore::Editor::insideVisibleArea):
2380         * page/Frame.cpp:
2381         (WebCore::Frame::ownerRenderer):
2382         * page/Frame.h:
2383         * page/FrameView.cpp:
2384         (WebCore::FrameView::~FrameView):
2385         (WebCore::FrameView::clear):
2386         (WebCore::FrameView::invalidateRect):
2387         (WebCore::FrameView::createScrollbar):
2388         * rendering/RenderFrameBase.h:
2389         (WebCore::RenderFrameBase::isRenderFrameBase):
2390         (WebCore::toRenderFrameBase):
2391         * rendering/RenderObject.h:
2392         (WebCore::RenderObject::isRenderFrameBase):
2393
2394 2010-04-20  Jay Civelli  <jcivelli@chromium.org>
2395
2396         Reviewed by Dimitri Glazkov.
2397
2398         [chromium] Pressing tab now closes the select popup as it should.
2399         https://bugs.webkit.org/show_bug.cgi?id=37721
2400
2401         * platform/chromium/PopupMenuChromium.cpp:
2402         (WebCore::PopupListBox::handleKeyEvent):
2403
2404 2010-04-20  Yaar Schnitman  <yaar@chromium.org>
2405
2406         Reviewed by Nate Chapin.
2407
2408         Null value should be legit value for wrapped types. This requires some cleanup in canvas which was missing built-in null argument checks;
2409         https://bugs.webkit.org/show_bug.cgi?id=37810
2410
2411         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2412         (WebCore::JSCanvasRenderingContext2D::drawImage): Passes ec to drawImage(3) too
2413         * bindings/scripts/CodeGeneratorV8.pm: A null value is now legit value for wrapped types.
2414         * bindings/v8/test/V8TestObj.cpp:
2415         (WebCore::TestObjInternal::overloadedMethodCallback):
2416         * html/canvas/CanvasRenderingContext2D.cpp:
2417         (WebCore::CanvasRenderingContext2D::drawImage): Added null checks.
2418         (WebCore::CanvasRenderingContext2D::createPattern): Added null checks.
2419         * html/canvas/CanvasRenderingContext2D.h: Added needed raises "DOMException".
2420         * html/canvas/CanvasRenderingContext2D.idl: Added needed raises "DOMException".
2421
2422 2010-04-20  Evan Stade  <estade@chromium.org>
2423
2424         Reviewed by David Levin.
2425
2426         [chromium] crash when dragging images
2427         https://bugs.webkit.org/show_bug.cgi?id=37715
2428
2429         NULL check the return value of nativeImageForCurrentFrame(),
2430         and NULL check Image just for good measure.
2431
2432         Tested by new DragImageTest unit test.
2433
2434         * platform/chromium/DragImageChromiumSkia.cpp:
2435         (WebCore::createDragImageFromImage):
2436
2437 2010-04-20  Dirk Schulze  <krit@webkit.org>
2438
2439         Reviewed by Nikolas Zimmermann.
2440
2441         SVGResourceFilter needs to be moved to under Renderers
2442         https://bugs.webkit.org/show_bug.cgi?id=35320
2443
2444         This patch adds a renderer for SVGFilterElement. SVGFilterElement is now independent
2445         from the SVGResources.
2446         A clean-up solves the dependencies between SVGFilterElement, the filter primitives
2447         and SVGResources. This shall make the filter code more readable and better maintable.
2448         The Filter primitives get dumped now, as long as they have externalRepresentation
2449         implemented.
2450
2451         No behavior changes, so no new tests were added.
2452
2453         * Android.mk:
2454         * GNUmakefile.am:
2455         * WebCore.gypi:
2456         * WebCore.pro:
2457         * WebCore.vcproj/WebCore.vcproj:
2458         * WebCore.xcodeproj/project.pbxproj:
2459         * rendering/RenderPath.cpp:
2460         (WebCore::RenderPath::paint):
2461         * rendering/RenderSVGContainer.cpp:
2462         (WebCore::RenderSVGContainer::selfWillPaint):
2463         (WebCore::RenderSVGContainer::paint):
2464         * rendering/RenderSVGImage.cpp:
2465         (WebCore::RenderSVGImage::paint):
2466         * rendering/RenderSVGResource.h:
2467         (WebCore::):
2468         (WebCore::RenderSVGResource::postApplyResource):
2469         * rendering/RenderSVGResourceClipper.cpp:
2470         (WebCore::RenderSVGResourceClipper::applyResource):
2471         * rendering/RenderSVGResourceClipper.h:
2472         * rendering/RenderSVGResourceFilter.cpp: Added.
2473         (WebCore::RenderSVGResourceFilter::RenderSVGResourceFilter):
2474         (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
2475         (WebCore::RenderSVGResourceFilter::invalidateClients):
2476         (WebCore::RenderSVGResourceFilter::invalidateClient):
2477         (WebCore::RenderSVGResourceFilter::buildPrimitives):
2478         (WebCore::RenderSVGResourceFilter::fitsInMaximumImageSize):
2479         (WebCore::RenderSVGResourceFilter::applyResource):
2480         (WebCore::RenderSVGResourceFilter::postApplyResource):
2481         (WebCore::RenderSVGResourceFilter::resourceBoundingBox):
2482         * rendering/RenderSVGResourceFilter.h: Added.
2483         (WebCore::FilterData::FilterData):
2484         (WebCore::RenderSVGResourceFilter::renderName):
2485         (WebCore::RenderSVGResourceFilter::filterUnits):
2486         (WebCore::RenderSVGResourceFilter::primitiveUnits):
2487         (WebCore::RenderSVGResourceFilter::resourceType):
2488         * rendering/RenderSVGResourceMarker.h:
2489         (WebCore::RenderSVGResourceMarker::applyResource):
2490         * rendering/RenderSVGResourceMasker.cpp:
2491         (WebCore::RenderSVGResourceMasker::applyResource):
2492         * rendering/RenderSVGResourceMasker.h:
2493         * rendering/RenderSVGRoot.cpp:
2494         (WebCore::RenderSVGRoot::selfWillPaint):
2495         (WebCore::RenderSVGRoot::paint):
2496         * rendering/RenderSVGText.cpp:
2497         * rendering/SVGRenderSupport.cpp:
2498         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
2499         (WebCore::SVGRenderBase::finishRenderSVGContent):
2500         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
2501         (WebCore::deregisterFromResources):
2502         * rendering/SVGRenderSupport.h:
2503         * rendering/SVGRenderTreeAsText.cpp:
2504         (WebCore::writeStyle):
2505         (WebCore::writeSVGResource):
2506         (WebCore::writeResources):
2507         (WebCore::writeRenderResources):
2508         * rendering/SVGRootInlineBox.cpp:
2509         (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
2510         (WebCore::SVGRootInlineBox::paint):
2511         * svg/SVGFEBlendElement.cpp:
2512         (WebCore::SVGFEBlendElement::build):
2513         * svg/SVGFEBlendElement.h:
2514         * svg/SVGFEColorMatrixElement.cpp:
2515         (WebCore::SVGFEColorMatrixElement::build):
2516         * svg/SVGFEColorMatrixElement.h:
2517         * svg/SVGFEComponentTransferElement.cpp:
2518         (WebCore::SVGFEComponentTransferElement::build):
2519         * svg/SVGFEComponentTransferElement.h:
2520         * svg/SVGFECompositeElement.cpp:
2521         (WebCore::SVGFECompositeElement::build):
2522         * svg/SVGFECompositeElement.h:
2523         * svg/SVGFEDiffuseLightingElement.cpp:
2524         (WebCore::SVGFEDiffuseLightingElement::build):
2525         * svg/SVGFEDiffuseLightingElement.h:
2526         * svg/SVGFEDisplacementMapElement.cpp:
2527         (WebCore::SVGFEDisplacementMapElement::build):
2528         * svg/SVGFEDisplacementMapElement.h:
2529         * svg/SVGFEFloodElement.cpp:
2530         (WebCore::SVGFEFloodElement::build):
2531         * svg/SVGFEFloodElement.h:
2532         * svg/SVGFEGaussianBlurElement.cpp:
2533         (WebCore::SVGFEGaussianBlurElement::build):
2534         * svg/SVGFEGaussianBlurElement.h:
2535         * svg/SVGFEImageElement.cpp:
2536         (WebCore::SVGFEImageElement::build):
2537         * svg/SVGFEImageElement.h:
2538         * svg/SVGFEMergeElement.cpp:
2539         (WebCore::SVGFEMergeElement::build):
2540         * svg/SVGFEMergeElement.h:
2541         * svg/SVGFEMorphologyElement.cpp:
2542         (WebCore::SVGFEMorphologyElement::build):
2543         * svg/SVGFEMorphologyElement.h:
2544         * svg/SVGFEOffsetElement.cpp:
2545         (WebCore::SVGFEOffsetElement::build):
2546         * svg/SVGFEOffsetElement.h:
2547         * svg/SVGFESpecularLightingElement.cpp:
2548         (WebCore::SVGFESpecularLightingElement::build):
2549         * svg/SVGFESpecularLightingElement.h:
2550         * svg/SVGFETileElement.cpp:
2551         (WebCore::SVGFETileElement::build):
2552         * svg/SVGFETileElement.h:
2553         * svg/SVGFETurbulenceElement.cpp:
2554         (WebCore::SVGFETurbulenceElement::build):
2555         * svg/SVGFETurbulenceElement.h:
2556         (WebCore::):
2557         * svg/SVGFilterElement.cpp:
2558         (WebCore::SVGFilterElement::createRenderer):
2559         * svg/SVGFilterElement.h:
2560         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2561         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2562         * svg/SVGFilterPrimitiveStandardAttributes.h:
2563         (WebCore::SVGFilterPrimitiveStandardAttributes::isFilterEffect):
2564         (WebCore::SVGFilterPrimitiveStandardAttributes::rendererIsNeeded):
2565         * svg/SVGStyledElement.cpp:
2566         (WebCore::SVGStyledElement::invalidateResources):
2567         * svg/graphics/SVGResource.cpp:
2568         * svg/graphics/SVGResource.h:
2569         (WebCore::):
2570         (WebCore::SVGResource::isPaintServer):
2571         * svg/graphics/SVGResourceFilter.cpp: Removed.
2572         * svg/graphics/SVGResourceFilter.h: Removed.
2573         * svg/graphics/filters/SVGFEDisplacementMap.cpp:
2574         (WebCore::FEDisplacementMap::externalRepresentation):
2575         * svg/graphics/filters/SVGFilterBuilder.h:
2576         (WebCore::SVGFilterBuilder::namedEffects):
2577
2578 2010-04-20  Sheriff Bot  <webkit.review.bot@gmail.com>
2579
2580         Unreviewed, rolling out r57880.
2581         http://trac.webkit.org/changeset/57880
2582         https://bugs.webkit.org/show_bug.cgi?id=37846
2583
2584         Broke several bots, FEDisplacmentMap dumps includes pointers,
2585         no one noticed. Dirk will upload a new patch later. (Requested
2586         by WildFox on #webkit).
2587
2588         * Android.mk:
2589         * GNUmakefile.am:
2590         * WebCore.gypi:
2591         * WebCore.pro:
2592         * WebCore.vcproj/WebCore.vcproj:
2593         * WebCore.xcodeproj/project.pbxproj:
2594         * rendering/RenderPath.cpp:
2595         (WebCore::RenderPath::paint):
2596         * rendering/RenderSVGContainer.cpp:
2597         (WebCore::RenderSVGContainer::selfWillPaint):
2598         (WebCore::RenderSVGContainer::paint):
2599         * rendering/RenderSVGImage.cpp:
2600         (WebCore::RenderSVGImage::paint):
2601         * rendering/RenderSVGResource.h:
2602         (WebCore::):
2603         * rendering/RenderSVGResourceClipper.cpp:
2604         (WebCore::RenderSVGResourceClipper::applyResource):
2605         * rendering/RenderSVGResourceClipper.h:
2606         * rendering/RenderSVGResourceFilter.cpp: Removed.
2607         * rendering/RenderSVGResourceFilter.h: Removed.
2608         * rendering/RenderSVGResourceMarker.h:
2609         (WebCore::RenderSVGResourceMarker::applyResource):
2610         * rendering/RenderSVGResourceMasker.cpp:
2611         (WebCore::RenderSVGResourceMasker::applyResource):
2612         * rendering/RenderSVGResourceMasker.h:
2613         * rendering/RenderSVGRoot.cpp:
2614         (WebCore::RenderSVGRoot::selfWillPaint):
2615         (WebCore::RenderSVGRoot::paint):
2616         * rendering/RenderSVGText.cpp:
2617         * rendering/SVGRenderSupport.cpp:
2618         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
2619         (WebCore::SVGRenderBase::finishRenderSVGContent):
2620         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
2621         (WebCore::deregisterFromResources):
2622         * rendering/SVGRenderSupport.h:
2623         * rendering/SVGRenderTreeAsText.cpp:
2624         (WebCore::writeStyle):
2625         (WebCore::writeSVGResource):
2626         (WebCore::writeResources):
2627         (WebCore::writeRenderResources):
2628         * rendering/SVGRootInlineBox.cpp:
2629         (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
2630         (WebCore::SVGRootInlineBox::paint):
2631         * svg/SVGFEBlendElement.cpp:
2632         (WebCore::SVGFEBlendElement::build):
2633         * svg/SVGFEBlendElement.h:
2634         * svg/SVGFEColorMatrixElement.cpp:
2635         (WebCore::SVGFEColorMatrixElement::build):
2636         * svg/SVGFEColorMatrixElement.h:
2637         * svg/SVGFEComponentTransferElement.cpp:
2638         (WebCore::SVGFEComponentTransferElement::build):
2639         * svg/SVGFEComponentTransferElement.h:
2640         * svg/SVGFECompositeElement.cpp:
2641         (WebCore::SVGFECompositeElement::build):
2642         * svg/SVGFECompositeElement.h:
2643         * svg/SVGFEDiffuseLightingElement.cpp:
2644         (WebCore::SVGFEDiffuseLightingElement::build):
2645         * svg/SVGFEDiffuseLightingElement.h:
2646         * svg/SVGFEDisplacementMapElement.cpp:
2647         (WebCore::SVGFEDisplacementMapElement::build):
2648         * svg/SVGFEDisplacementMapElement.h:
2649         * svg/SVGFEFloodElement.cpp:
2650         (WebCore::SVGFEFloodElement::build):
2651         * svg/SVGFEFloodElement.h:
2652         * svg/SVGFEGaussianBlurElement.cpp:
2653         (WebCore::SVGFEGaussianBlurElement::build):
2654         * svg/SVGFEGaussianBlurElement.h:
2655         * svg/SVGFEImageElement.cpp:
2656         (WebCore::SVGFEImageElement::build):
2657         * svg/SVGFEImageElement.h:
2658         * svg/SVGFEMergeElement.cpp:
2659         (WebCore::SVGFEMergeElement::build):
2660         * svg/SVGFEMergeElement.h:
2661         * svg/SVGFEMorphologyElement.cpp:
2662         (WebCore::SVGFEMorphologyElement::build):
2663         * svg/SVGFEMorphologyElement.h:
2664         * svg/SVGFEOffsetElement.cpp:
2665         (WebCore::SVGFEOffsetElement::build):
2666         * svg/SVGFEOffsetElement.h:
2667         * svg/SVGFESpecularLightingElement.cpp:
2668         (WebCore::SVGFESpecularLightingElement::build):
2669         * svg/SVGFESpecularLightingElement.h:
2670         * svg/SVGFETileElement.cpp:
2671         (WebCore::SVGFETileElement::build):
2672         * svg/SVGFETileElement.h:
2673         * svg/SVGFETurbulenceElement.cpp:
2674         (WebCore::SVGFETurbulenceElement::build):
2675         * svg/SVGFETurbulenceElement.h:
2676         (WebCore::):
2677         * svg/SVGFilterElement.cpp:
2678         (WebCore::SVGFilterElement::buildFilter):
2679         (WebCore::SVGFilterElement::canvasResource):
2680         * svg/SVGFilterElement.h:
2681         (WebCore::SVGFilterElement::rendererIsNeeded):
2682         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2683         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2684         * svg/SVGFilterPrimitiveStandardAttributes.h:
2685         (WebCore::SVGFilterPrimitiveStandardAttributes::isFilterEffect):
2686         (WebCore::SVGFilterPrimitiveStandardAttributes::rendererIsNeeded):
2687         * svg/SVGStyledElement.cpp:
2688         (WebCore::SVGStyledElement::invalidateResources):
2689         * svg/graphics/SVGResource.cpp:
2690         * svg/graphics/SVGResource.h:
2691         (WebCore::):
2692         (WebCore::SVGResource::isFilter):
2693         * svg/graphics/SVGResourceFilter.cpp: Added.
2694         (WebCore::SVGResourceFilter::SVGResourceFilter):
2695         (WebCore::SVGResourceFilter::~SVGResourceFilter):
2696         (WebCore::SVGResourceFilter::filterBoundingBox):
2697         (WebCore::shouldProcessFilter):
2698         (WebCore::SVGResourceFilter::addFilterEffect):
2699         (WebCore::SVGResourceFilter::fitsInMaximumImageSize):
2700         (WebCore::SVGResourceFilter::prepareFilter):
2701         (WebCore::SVGResourceFilter::applyFilter):
2702         (WebCore::SVGResourceFilter::externalRepresentation):
2703         (WebCore::getFilterById):
2704         * svg/graphics/SVGResourceFilter.h: Added.
2705         (WebCore::SVGResourceFilter::create):
2706         (WebCore::SVGResourceFilter::resourceType):
2707         (WebCore::SVGResourceFilter::setFilterResolution):
2708         (WebCore::SVGResourceFilter::setHasFilterResolution):
2709         (WebCore::SVGResourceFilter::filterBoundingBoxMode):
2710         (WebCore::SVGResourceFilter::setFilterBoundingBoxMode):
2711         (WebCore::SVGResourceFilter::effectBoundingBoxMode):
2712         (WebCore::SVGResourceFilter::setEffectBoundingBoxMode):
2713         (WebCore::SVGResourceFilter::filterRect):
2714         (WebCore::SVGResourceFilter::setFilterRect):
2715         (WebCore::SVGResourceFilter::scaleX):
2716         (WebCore::SVGResourceFilter::scaleY):
2717         (WebCore::SVGResourceFilter::setFilterBoundingBox):
2718         (WebCore::SVGResourceFilter::builder):
2719         * svg/graphics/filters/SVGFilterBuilder.h:
2720
2721 2010-04-20  Dirk Schulze  <krit@webkit.org>
2722
2723         Reviewed by Nikolas Zimmermann.
2724
2725         SVGResourceFilter needs to be moved to under Renderers
2726         https://bugs.webkit.org/show_bug.cgi?id=35320
2727
2728         This patch adds a renderer for SVGFilterElement. SVGFilterElement is now independent
2729         from the SVGResources.
2730         A clean-up solves the dependencies between SVGFilterElement, the filter primitives
2731         and SVGResources. This shall make the filter code more readable and better maintable.
2732         The Filter primitives get dumped now, as long as they have externalRepresentation
2733         implemented.
2734
2735         No behavior changes, so no new tests were added.
2736
2737         * Android.mk:
2738         * GNUmakefile.am:
2739         * WebCore.gypi:
2740         * WebCore.pro:
2741         * WebCore.vcproj/WebCore.vcproj:
2742         * WebCore.xcodeproj/project.pbxproj:
2743         * rendering/RenderPath.cpp:
2744         (WebCore::RenderPath::paint):
2745         * rendering/RenderSVGContainer.cpp:
2746         (WebCore::RenderSVGContainer::selfWillPaint):
2747         (WebCore::RenderSVGContainer::paint):
2748         * rendering/RenderSVGImage.cpp:
2749         (WebCore::RenderSVGImage::paint):
2750         * rendering/RenderSVGResource.h:
2751         (WebCore::):
2752         * rendering/RenderSVGResourceClipper.cpp:
2753         (WebCore::RenderSVGResourceClipper::applyResource):
2754         * rendering/RenderSVGResourceClipper.h:
2755         * rendering/RenderSVGResourceFilter.cpp: Added.
2756         (WebCore::RenderSVGResourceFilter::RenderSVGResourceFilter):
2757         (WebCore::RenderSVGResourceFilter::~RenderSVGResourceFilter):
2758         (WebCore::RenderSVGResourceFilter::invalidateClients):
2759         (WebCore::RenderSVGResourceFilter::invalidateClient):
2760         (WebCore::RenderSVGResourceFilter::buildPrimitives):
2761         (WebCore::RenderSVGResourceFilter::fitsInMaximumImageSize):
2762         (WebCore::RenderSVGResourceFilter::applyResource):
2763         (WebCore::RenderSVGResourceFilter::postApplyResource):
2764         (WebCore::RenderSVGResourceFilter::resourceBoundingBox):
2765         * rendering/RenderSVGResourceFilter.h: Added.
2766         (WebCore::FilterData::FilterData):
2767         (WebCore::RenderSVGResourceFilter::renderName):
2768         (WebCore::RenderSVGResourceFilter::filterUnits):
2769         (WebCore::RenderSVGResourceFilter::primitiveUnits):
2770         (WebCore::RenderSVGResourceFilter::resourceType):
2771         * rendering/RenderSVGResourceMarker.h:
2772         (WebCore::RenderSVGResourceMarker::applyResource):
2773         * rendering/RenderSVGResourceMasker.cpp:
2774         (WebCore::RenderSVGResourceMasker::applyResource):
2775         * rendering/RenderSVGResourceMasker.h:
2776         * rendering/RenderSVGRoot.cpp:
2777         (WebCore::RenderSVGRoot::selfWillPaint):
2778         (WebCore::RenderSVGRoot::paint):
2779         * rendering/RenderSVGText.cpp:
2780         * rendering/SVGRenderSupport.cpp:
2781         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
2782         (WebCore::SVGRenderBase::finishRenderSVGContent):
2783         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
2784         (WebCore::deregisterFromResources):
2785         * rendering/SVGRenderSupport.h:
2786         * rendering/SVGRenderTreeAsText.cpp:
2787         (WebCore::writeStyle):
2788         (WebCore::writeSVGResource):
2789         (WebCore::writeResources):
2790         (WebCore::writeRenderResources):
2791         * rendering/SVGRootInlineBox.cpp:
2792         (WebCore::SVGRootInlineBoxPaintWalker::SVGRootInlineBoxPaintWalker):
2793         (WebCore::SVGRootInlineBox::paint):
2794         * svg/SVGFEBlendElement.cpp:
2795         (WebCore::SVGFEBlendElement::build):
2796         * svg/SVGFEBlendElement.h:
2797         * svg/SVGFEColorMatrixElement.cpp:
2798         (WebCore::SVGFEColorMatrixElement::build):
2799         * svg/SVGFEColorMatrixElement.h:
2800         * svg/SVGFEComponentTransferElement.cpp:
2801         (WebCore::SVGFEComponentTransferElement::build):
2802         * svg/SVGFEComponentTransferElement.h:
2803         * svg/SVGFECompositeElement.cpp:
2804         (WebCore::SVGFECompositeElement::build):
2805         * svg/SVGFECompositeElement.h:
2806         * svg/SVGFEDiffuseLightingElement.cpp:
2807         (WebCore::SVGFEDiffuseLightingElement::build):
2808         * svg/SVGFEDiffuseLightingElement.h:
2809         * svg/SVGFEDisplacementMapElement.cpp:
2810         (WebCore::SVGFEDisplacementMapElement::build):
2811         * svg/SVGFEDisplacementMapElement.h:
2812         * svg/SVGFEFloodElement.cpp:
2813         (WebCore::SVGFEFloodElement::build):
2814         * svg/SVGFEFloodElement.h:
2815         * svg/SVGFEGaussianBlurElement.cpp:
2816         (WebCore::SVGFEGaussianBlurElement::build):
2817         * svg/SVGFEGaussianBlurElement.h:
2818         * svg/SVGFEImageElement.cpp:
2819         (WebCore::SVGFEImageElement::build):
2820         * svg/SVGFEImageElement.h:
2821         * svg/SVGFEMergeElement.cpp:
2822         (WebCore::SVGFEMergeElement::build):
2823         * svg/SVGFEMergeElement.h:
2824         * svg/SVGFEMorphologyElement.cpp:
2825         (WebCore::SVGFEMorphologyElement::build):
2826         * svg/SVGFEMorphologyElement.h:
2827         * svg/SVGFEOffsetElement.cpp:
2828         (WebCore::SVGFEOffsetElement::build):
2829         * svg/SVGFEOffsetElement.h:
2830         * svg/SVGFESpecularLightingElement.cpp:
2831         (WebCore::SVGFESpecularLightingElement::build):
2832         * svg/SVGFESpecularLightingElement.h:
2833         * svg/SVGFETileElement.cpp:
2834         (WebCore::SVGFETileElement::build):
2835         * svg/SVGFETileElement.h:
2836         * svg/SVGFETurbulenceElement.cpp:
2837         (WebCore::SVGFETurbulenceElement::build):
2838         * svg/SVGFETurbulenceElement.h:
2839         (WebCore::):
2840         * svg/SVGFilterElement.cpp:
2841         (WebCore::SVGFilterElement::createRenderer):
2842         * svg/SVGFilterElement.h:
2843         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2844         (WebCore::SVGFilterPrimitiveStandardAttributes::setStandardAttributes):
2845         * svg/SVGFilterPrimitiveStandardAttributes.h:
2846         (WebCore::SVGFilterPrimitiveStandardAttributes::isFilterEffect):
2847         (WebCore::SVGFilterPrimitiveStandardAttributes::rendererIsNeeded):
2848         * svg/SVGStyledElement.cpp:
2849         (WebCore::SVGStyledElement::invalidateResources):
2850         * svg/graphics/SVGResource.cpp:
2851         * svg/graphics/SVGResource.h:
2852         (WebCore::):
2853         (WebCore::SVGResource::isPaintServer):
2854         * svg/graphics/SVGResourceFilter.cpp: Removed.
2855         * svg/graphics/SVGResourceFilter.h: Removed.
2856         * svg/graphics/filters/SVGFilterBuilder.h:
2857         (WebCore::SVGFilterBuilder::namedEffects):
2858
2859 2010-04-20  Gavin Barraclough  <barraclough@apple.com>
2860
2861         Rubber stamped by Maciej Stachowiak (relanding r57829).
2862         Added missing JS_EXPORTDATA
2863
2864         * ForwardingHeaders/wtf/WTFThreadData.h: Copied from WebCore/ForwardingHeaders/wtf/WTFThreadData.h.
2865         * platform/ThreadGlobalData.cpp:
2866         (WebCore::ThreadGlobalData::ThreadGlobalData):
2867         (WebCore::ThreadGlobalData::~ThreadGlobalData):
2868         * platform/ThreadGlobalData.h:
2869         (WebCore::ThreadGlobalData::eventNames):
2870         * platform/text/AtomicString.cpp:
2871         (WebCore::AtomicStringTable::create):
2872         (WebCore::AtomicStringTable::table):
2873         (WebCore::AtomicStringTable::destroy):
2874         (WebCore::stringTable):
2875
2876 2010-04-20  No'am Rosenthal  <noam.rosenthal@nokia.com>
2877
2878         Reviewed by Antti Koivisto.
2879
2880         [Qt] GraphicsLayer: support fill-modes
2881         https://bugs.webkit.org/show_bug.cgi?id=36216
2882         Implement the CSS-animation "fill mode" concept in GraphicsLayerQt. The concept
2883         enables a key-frame animation to go to the animation's starting point before the delay,
2884         and/or to stay at the animation's ending point after its ended, without reverting to the default
2885         value.
2886         We do that by manually setting the value to keyframe-0 before the delay if fill-mode is backwards/both,
2887         and manually modifying the default value to the animated value as we animate, with fill-mode forwards/both.
2888
2889         * platform/graphics/qt/GraphicsLayerQt.cpp:
2890         (WebCore::AnimationQtBase::AnimationQtBase):
2891         (WebCore::TransformAnimationQt::~TransformAnimationQt):
2892         (WebCore::TransformAnimationQt::applyFrame):
2893         (WebCore::GraphicsLayerQt::addAnimation):
2894
2895 2010-04-19  Leandro Pereira  <leandro@profusion.mobi>
2896
2897         Reviewed by David Hyatt.
2898
2899         Add missing dummy implementations in PluginPackageNone and PluginViewNone.
2900         http://webkit.org/b/37478
2901
2902         * plugins/PluginPackageNone.cpp:
2903         (WebCore::PluginPackage::NPVersion): Add dummy implementation.
2904         * plugins/PluginViewNone.cpp:
2905         (WebCore::PluginView::handleFocusInEvent): Add dummy implementation.
2906         (WebCore::PluginView::handleFocusOutEvent): Add dummy implementation.
2907
2908 2010-04-19  Simon Fraser  <simon.fraser@apple.com>
2909
2910         Reviewed by Geoff Garen.
2911
2912         Clean up RenderPart/RenderPartObject/RenderFrame/RenderEmbeddedObject
2913         https://bugs.webkit.org/show_bug.cgi?id=37741
2914
2915         Move m_hasFallbackContent from RenderPart to RenderEmbeddedObject,
2916         since it's only used for <object> fallback.
2917
2918         * rendering/RenderEmbeddedObject.cpp:
2919         (WebCore::RenderEmbeddedObject::RenderEmbeddedObject):
2920         * rendering/RenderEmbeddedObject.h:
2921         (WebCore::RenderEmbeddedObject::hasFallbackContent):
2922         * rendering/RenderPart.cpp:
2923         (WebCore::RenderPart::RenderPart):
2924         * rendering/RenderPart.h:
2925
2926 2010-04-19  Simon Fraser  <simon.fraser@apple.com>
2927
2928         Reviewed by Darin Adler.
2929
2930         Clean up RenderPart/RenderPartObject/RenderFrame/RenderEmbeddedObject
2931         https://bugs.webkit.org/show_bug.cgi?id=37741
2932
2933         Add a new renderer for iframes, named RenderIFrame. Add a new shared base class
2934         between this and RenderFrame, called RenderFrameBase (following the existing HTMLFrameElementBase),
2935         and move code from RenderPart and RenderPartObject into these new classes.
2936         
2937         There should be no functionality difference with this change, so no new tests.
2938         
2939         Fixing up renderer names in the layout tests will be done in a later pass.
2940         
2941         Fix build systems to include the new files.
2942         
2943         * Android.mk:
2944         * GNUmakefile.am:
2945         * WebCore.gypi:
2946         * WebCore.pro:
2947         * WebCore.vcproj/WebCore.vcproj:
2948         * WebCore.xcodeproj/project.pbxproj:
2949         * html/HTMLIFrameElement.cpp:
2950         (WebCore::HTMLIFrameElement::createRenderer):
2951         * rendering/RenderEmbeddedObject.h:
2952         * rendering/RenderFrame.cpp:
2953         (WebCore::RenderFrame::RenderFrame):
2954         * rendering/RenderFrame.h:
2955         * rendering/RenderFrameBase.cpp: Added.
2956         (WebCore::RenderFrameBase::RenderFrameBase):
2957         (WebCore::RenderFrameBase::layoutWithFlattening):
2958         * rendering/RenderFrameBase.h: Added.
2959         * rendering/RenderIFrame.cpp: Added.
2960         (WebCore::RenderIFrame::RenderIFrame):
2961         (WebCore::RenderIFrame::calcHeight):
2962         (WebCore::RenderIFrame::calcWidth):
2963         (WebCore::RenderIFrame::flattenFrame):
2964         (WebCore::RenderIFrame::layout):
2965         * rendering/RenderIFrame.h: Added.
2966         (WebCore::RenderIFrame::renderName):
2967         * rendering/RenderPart.cpp:
2968         * rendering/RenderPart.h:
2969         * rendering/RenderPartObject.cpp:
2970         * rendering/RenderPartObject.h:
2971
2972 2010-04-19  Dumitru Daniliuc  <dumi@chromium.org>
2973
2974         Reviewed by Geoffrey Garen.
2975
2976         Bindings clean-up.
2977         https://bugs.webkit.org/show_bug.cgi?id=37833
2978
2979         Move some WebSQLDatabases logic out of the bindings into
2980         DOMWindow.cpp where it should be.
2981
2982         * bindings/js/JSDOMWindowCustom.cpp:
2983         (WebCore::JSDOMWindow::openDatabase):
2984         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2985         (WebCore::V8DOMWindow::openDatabaseCallback):
2986         * page/DOMWindow.cpp:
2987         (WebCore::DOMWindow::openDatabase):
2988
2989 2010-04-19  Kevin Ollivier  <kevino@theolliviers.com>
2990
2991         Fix the Mac builders for now by restoring the keepAlive function.
2992
2993         * plugins/PluginViewNone.cpp:
2994         (WebCore::PluginView::keepAlive):
2995
2996 2010-04-19  Kevin Ollivier  <kevino@theolliviers.com>
2997
2998         [wx] Build fix, remove a method that has been moved to PluginView.cpp.
2999
3000         * plugins/PluginViewNone.cpp:
3001
3002 2010-04-19  Gavin Barraclough  <barraclough@apple.com>
3003
3004         Reviewed by NOBODY (rolling out r57829).
3005         This broke windows.
3006
3007         * ForwardingHeaders/wtf/WTFThreadData.h: Removed.
3008         * platform/ThreadGlobalData.cpp:
3009         (WebCore::ThreadGlobalData::ThreadGlobalData):
3010         (WebCore::ThreadGlobalData::~ThreadGlobalData):
3011         * platform/ThreadGlobalData.h:
3012         (WebCore::ThreadGlobalData::atomicStringTable):
3013         * platform/text/AtomicString.cpp:
3014         (WebCore::stringTable):
3015
3016 2010-04-19  Mark Rowe  <mrowe@apple.com>
3017
3018         Build fix.
3019
3020         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3021
3022 2010-04-19  Chris Fleizach  <cfleizach@apple.com>
3023
3024         Reviewed by Beth Dakin.
3025
3026         AX: aria-haspopup needs to be exposed
3027         https://bugs.webkit.org/show_bug.cgi?id=37808
3028
3029         Test: platform/mac/accessibility/element-haspopup.html
3030
3031         * accessibility/AccessibilityObject.h:
3032         (WebCore::AccessibilityObject::ariaHasPopup):
3033         * accessibility/AccessibilityRenderObject.cpp:
3034         (WebCore::AccessibilityRenderObject::ariaHasPopup):
3035         (WebCore::AccessibilityRenderObject::determineAriaRoleAttribute):
3036         * accessibility/AccessibilityRenderObject.h:
3037         * accessibility/mac/AccessibilityObjectWrapper.mm:
3038         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
3039         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3040
3041 2010-04-19  Anders Carlsson  <andersca@apple.com>
3042
3043         Reviewed by Sam Weinig.
3044
3045         Fix a crash when rendering <select> elements with WebKit2.
3046
3047         * rendering/RenderThemeMac.mm:
3048         (WebCore::RenderThemeMac::paintMenuList):
3049         Set the current NSGraphicsContext before calling out to AppKit, otherwise the current graphics context
3050         could point to a CGContext whose memory has been freed.
3051
3052 2010-04-08  Dimitri Glazkov  <dglazkov@chromium.org>
3053
3054         Reviewed by Darin Adler.
3055
3056         Manipulating document fragment members while adding it to tree may result in loss of tree integrity.
3057         https://bugs.webkit.org/show_bug.cgi?id=36031
3058
3059         Changes the logic of appending/inserting document fragment to first stashing all of its children
3060         to a vector, then processing the vector. This avoids ghastliness that would be caused by mutation
3061         events mucking with the document fragment while it's being appended/inserted.
3062
3063         Test: fast/dom/Node/fragment-mutation.html
3064
3065         * dom/ContainerNode.cpp:
3066         (WebCore::targetNodes): Added method to populate a vector of nodes (targets) to be used in
3067             inserting/appending operation.
3068         (WebCore::ContainerNode::insertBefore): Changed to use vector-based iteration.
3069         (WebCore::ContainerNode::appendChild): Ditto.
3070         * dom/Node.cpp:
3071         (WebCore::Node::checkReplaceChild): Cleaned up comments.
3072         (WebCore::Node::checkAddChild): Ditto.
3073
3074 2010-04-19  Eric Carlson  <eric.carlson@apple.com>
3075
3076         Reviewed by Simon Fraser.
3077
3078         Fix regression introduced in r57820.
3079
3080         * html/HTMLMediaElement.cpp:
3081         (WebCore::HTMLMediaElement::loadNextSourceChild): Create a new MediaPlayer instead of
3082         just setting a URL on the one used for the previous <source> element. This restores
3083         the behavior prior to the changes for https://bugs.webkit.org/show_bug.cgi?id=37728.
3084
3085 2010-04-19  Gavin Barraclough  <barraclough@apple.com>
3086
3087         Reviewed by Sam Weinig.
3088
3089         https://bugs.webkit.org/show_bug.cgi?id=37745
3090         Move string uniquing tables to (new) WTFThreadData class.
3091
3092         Remove AtomicString's dependency on ThreadGlobalData so that we can move
3093         WebCore's string classes up to WTF.
3094
3095         * ForwardingHeaders/wtf/WTFThreadData.h: Added.
3096         * platform/ThreadGlobalData.cpp: Remove m_atomicStringTable, all wtfThreadData() to ensure threadsafely initialized.
3097         (WebCore::ThreadGlobalData::ThreadGlobalData):
3098         (WebCore::ThreadGlobalData::~ThreadGlobalData):
3099         * platform/ThreadGlobalData.h: Remove m_atomicStringTable.
3100         (WebCore::ThreadGlobalData::eventNames):
3101         * platform/text/AtomicString.cpp:
3102         (WebCore::AtomicStringTable::create):
3103         (WebCore::AtomicStringTable::table):
3104         (WebCore::AtomicStringTable::destroy):
3105         (WebCore::stringTable): Access the AtomicStringTable on wtfThreadData() rather then threadGlobalData().
3106
3107 2010-04-19  Ada Chan  <adachan@apple.com>
3108
3109         Build fix: wrap Settings::setLocalStorageQuota() and Settings::setSessionStorageQuota()
3110         in #if ENABLE(DOM_STORAGE).
3111
3112         * page/Settings.cpp:
3113         (WebCore::Settings::Settings):
3114         * page/Settings.h:
3115
3116 2010-04-19  Dave Moore  <davemoore@chromium.org>
3117
3118         Reviewed by Dimitri Glazkov.
3119
3120         Added notification when the favicons for a page are changed
3121         from a script.
3122         The Document object will notify the frame loader, which will
3123         notify the client. Implementations of FrameLoaderClient will
3124         have to add one method; dispatchDidChangeIcons().
3125
3126         https://bugs.webkit.org/show_bug.cgi?id=33812
3127
3128         Test: fast/dom/icon-url-property.html
3129
3130         * dom/Document.cpp:
3131         (WebCore::Document::setIconURL):
3132         * loader/DocumentLoader.cpp:
3133         (WebCore::DocumentLoader::setIconURL):
3134         * loader/DocumentLoader.h:
3135         (WebCore::DocumentLoader::iconURL):
3136         * loader/EmptyClients.h:
3137         (WebCore::EmptyFrameLoaderClient::dispatchDidChangeIcons):
3138         * loader/FrameLoader.cpp:
3139         (WebCore::FrameLoader::setIconURL):
3140         (WebCore::FrameLoader::didChangeIcons):
3141         * loader/FrameLoader.h:
3142         * loader/FrameLoaderClient.h:
3143
3144 2010-04-19  Ada Chan  <adachan@apple.com>
3145
3146         Reviewed by Jeremy Orlow.
3147
3148         https://bugs.webkit.org/show_bug.cgi?id=37717
3149         Allow clients concerned with memory consumption to set a quota on session storage
3150         since the memory used won't be released until the Page is destroyed.
3151         The default is noQuota, which matches the current behavior.
3152
3153         * WebCore.base.exp: Export Settings::setSessionStorageQuota().
3154         * page/Page.cpp:
3155         (WebCore::Page::sessionStorage):
3156         * page/Settings.cpp:
3157         (WebCore::Settings::Settings):
3158         (WebCore::Settings::setSessionStorageQuota):
3159         * page/Settings.h:
3160         (WebCore::Settings::sessionStorageQuota):
3161         * storage/StorageNamespace.cpp:
3162         (WebCore::StorageNamespace::sessionStorageNamespace):
3163         * storage/StorageNamespace.h:
3164         * storage/StorageNamespaceImpl.cpp:
3165         (WebCore::StorageNamespaceImpl::sessionStorageNamespace):
3166         * storage/StorageNamespaceImpl.h:
3167
3168 2010-04-19  Eric Carlson  <eric.carlson@apple.com>
3169
3170         Reviewed by Simon Fraser.
3171
3172         Setting media element 'src' attribute should trigger immediate load
3173         https://bugs.webkit.org/show_bug.cgi?id=37728
3174
3175         * html/HTMLMediaElement.cpp:
3176         (WebCore::HTMLMediaElement::attributeChanged): Schedule load every time 'src' attribute
3177         changes unless it is missing.
3178         (WebCore::HTMLMediaElement::prepareForLoad): Include steps 3 to 6 from loadInternal.
3179         (WebCore::HTMLMediaElement::loadInternal): Steps 3 to 6 are now in prepareForLoad.
3180         (WebCore::HTMLMediaElement::loadResource): MediaPlayer is now allocated in prepareForLoad
3181         so the previously loading file, if any, is cancelled there.
3182
3183 2010-04-19  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3184
3185         Reviewed by Simon Hausmann.
3186
3187         [Qt] Fix compilation against namespaced Qt.
3188
3189         * platform/graphics/GraphicsLayer.h:
3190         * platform/graphics/Tile.h:
3191         * platform/graphics/qt/MediaPlayerPrivateQt.h:
3192         * platform/network/qt/NetworkStateNotifierPrivate.h:
3193
3194 2010-04-19  Balazs Kelemen  <kb@inf.u-szeged.hu>
3195
3196         Reviewed by Kenneth Rohde Christiansen.
3197
3198         [Qt] Destroy SharedTimerQt before destruction of QCoreApplication.
3199
3200         To avoid unsafe situations caused by running WebCore code (through firing timers) when destruction of QCoreApplication
3201         has been started, we should explicitly destroy the SharedTimerQt instance on application exit.
3202         We can achieve that through installing a self-destroying slot for the QCoreApplication::aboutToQuit() signal
3203         into the SharedTimerQt instance.
3204
3205         https://bugs.webkit.org/show_bug.cgi?id=36832
3206
3207         No functional change so no new tests.
3208
3209         * platform/qt/SharedTimerQt.cpp:
3210         (WebCore::SharedTimerQt::SharedTimerQt):
3211         (WebCore::SharedTimerQt::destroy):
3212         (WebCore::SharedTimerQt::inst):
3213
3214 2010-04-19  Dan Bernstein  <mitz@apple.com>
3215
3216         Reviewed by Darin Adler.
3217
3218         Make the fix for <rdar://problem/7873647> from r57759 more robust.
3219
3220         * rendering/RenderLayer.cpp:
3221         (WebCore::RenderLayer::updateHoverActiveState): Use RefPtrs for the Nodes.
3222
3223 2010-04-19  Yury Semikhatsky  <yurys@chromium.org>
3224
3225         Unreviewed. Chromium build fix.
3226
3227         * bindings/v8/JavaScriptCallFrame.h:
3228
3229 2010-04-19  Yury Semikhatsky  <yurys@chromium.org>
3230
3231         Reviewed by Pavel Feldman.
3232
3233         Web Inspector: implement JavaScriptCallFrame that works for v8.
3234         Implementing this binding for v8 allows to make evaluations on
3235         call frames and protects access to the debugger context from
3236         inspected context.
3237
3238         https://bugs.webkit.org/show_bug.cgi?id=37755
3239
3240         * WebCore.gyp/WebCore.gyp:
3241         * WebCore.gypi:
3242         * bindings/js/JSJavaScriptCallFrameCustom.cpp:
3243         (WebCore::JSJavaScriptCallFrame::scopeType):
3244         * bindings/v8/JavaScriptCallFrame.cpp: Added.
3245         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
3246         (WebCore::JavaScriptCallFrame::~JavaScriptCallFrame):
3247         (WebCore::JavaScriptCallFrame::caller):
3248         (WebCore::JavaScriptCallFrame::sourceID):
3249         (WebCore::JavaScriptCallFrame::line):
3250         (WebCore::JavaScriptCallFrame::functionName):
3251         (WebCore::JavaScriptCallFrame::scopeChain):
3252         (WebCore::JavaScriptCallFrame::scopeType):
3253         (WebCore::JavaScriptCallFrame::thisObject):
3254         (WebCore::JavaScriptCallFrame::evaluate):
3255         * bindings/v8/JavaScriptCallFrame.h: Added.
3256         (WebCore::JavaScriptCallFrame::create):
3257         * bindings/v8/ScriptDebugServer.cpp:
3258         (WebCore::ScriptDebugServer::currentCallFrame):
3259         * bindings/v8/ScriptDebugServer.h:
3260         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
3261         (WebCore::V8InjectedScriptHost::currentCallFrameCallback):
3262         * bindings/v8/custom/V8JavaScriptCallFrameCustom.cpp: Added.
3263         (WebCore::V8JavaScriptCallFrame::evaluateCallback):
3264         (WebCore::V8JavaScriptCallFrame::scopeChainAccessorGetter):
3265         (WebCore::V8JavaScriptCallFrame::scopeTypeCallback):
3266         (WebCore::V8JavaScriptCallFrame::thisObjectAccessorGetter):
3267         (WebCore::V8JavaScriptCallFrame::typeAccessorGetter):
3268         * inspector/JavaScriptCallFrame.idl:
3269         * inspector/front-end/InjectedScript.js:
3270         (injectedScriptConstructor.):
3271
3272 2010-04-19  Jessie Berlin  <jberlin@webkit.org>
3273
3274         Rubber Stamped by Adam Roben
3275
3276         Chromium Release Build Fix.
3277
3278         * css/CSSSelector.cpp:
3279         (WebCore::CSSSelector::pseudoId):
3280         In the case where the DATALIST is not enabled, fall through to NOPSEUDO instead of omitting PseudoInputListButton entirely from the switch.
3281
3282 2010-04-19  Jessie Berlin  <jberlin@webkit.org>
3283
3284         Reviewed by Dave Hyatt.
3285
3286         First steps towards fixing bug 24021 - pseudo-element styles not accessible / retrievable via DOM methods.
3287         https://bugs.webkit.org/show_bug.cgi?id=24021
3288
3289         Allows access to the computed styles for the pseudo-elements through the second argument to getComputedStyle.
3290         This approach does not provide the correct values for 'length' properties and does not work for the ':selection' pseudo-element and will instead return results similiar to those returned by Firefox. This approach also requires waiting until at least one iteration of a hardware accelerated composited animation to return the correct values for the "opacity" and "transform" properties of a pseudo-element associated with the element being animated.
3291         Those values need to be retrieved from the renderer for the pseudo-element as opposed to the cached RenderStyle for the element on which the pseudo-element is defined, which is further complicated by the fact that not all elements have renderers.
3292
3293         Test: fast/css/getComputedStyle/getComputedStyle-with-pseudo-element.html
3294
3295         * WebCore.base.exp:
3296         * css/CSSComputedStyleDeclaration.cpp:
3297         (WebCore::CSSComputedStyleDeclaration::CSSComputedStyleDeclaration):
3298         Parse the and store the pseudo-element specifier from the string provided by the user.
3299         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
3300         Get the computed style for the pseudo-element if it has been specified.
3301         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
3302         Get the computed style for the pseudo-element if it has been specified, with a FIXME noting that the values returned for the "opacity" and "transform" properties of a pseudo-element associated with an element being animated and using hardware accelerated compositing will not be correct until after the first iteration of the animation.
3303         (WebCore::CSSComputedStyleDeclaration::length):
3304         Get the computed style for the pseudo-element if it has been specified.
3305         (WebCore::CSSComputedStyleDeclaration::cssPropertyMatches):
3306         Ditto.
3307         * css/CSSComputedStyleDeclaration.h:
3308         (WebCore::computedStyle):
3309         Take into consideration the pseudo-element.
3310
3311         * css/CSSSelector.cpp:
3312         (WebCore::CSSSelector::pseudoId):
3313         Return the PseudoId that corresponds to the given PseudoType. If there is no corresponding PseudoId, returns NOPSEUDO.
3314         (WebCore::nameToPseudoTypeMap):
3315         Create and return the mapping between string names and PseudoTypes.
3316         (WebCore::CSSSelector::parsePseudoType):
3317         Parse and the given string into a PseudoType.
3318         (WebCore::CSSSelector::extractPseudoType):
3319         Refactored to use parsePseudoType.
3320         * css/CSSSelector.h:
3321
3322         * css/CSSStyleSelector.cpp:
3323         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
3324         Refactored to use pseudoId.
3325
3326         * dom/Element.cpp:
3327         (WebCore::Element::computedStyle):
3328         If the pseudo-element is specified, then return the cached RenderStyle for that PseudoId. Added a FIXME to find the actual renders of the pseudo-elements instead of just the cached RenderStyle of the RenderStyle for the associated element.
3329         * dom/Element.h:
3330         (WebCore::Element::virtualComputedStyle):
3331         Because Element::computedStyle is used so often, don't make it virtual. Instead, provide a virtualComputedStyle method in the Node.h class andmake computedStyle non-virtual. That way the Element version and the Node version of computedStyle will have the same name and look the same at the call site, but the Element version will be more efficient.
3332
3333         * dom/Node.h:
3334         (WebCore::Node::computedStyle):
3335         Ditto.
3336         * dom/Node.cpp:
3337         (WebCore::Node::virtualComputedStyle):
3338         Get the computed style for the pseudo-element if it has been specified.
3339
3340         * page/DOMWindow.cpp:
3341         (WebCore::DOMWindow::getComputedStyle):
3342         Ditto.
3343
3344 2010-04-18  Simon Hausmann  <simon.hausmann@nokia.com>
3345
3346         Reviewed by Laszlo Gombos.
3347
3348         [Qt] Fix JavaScriptCore's include path for WinCE builds
3349
3350         https://bugs.webkit.org/show_bug.cgi?id=36751
3351
3352         * WebCore.pro:
3353
3354 2010-04-17  Alexey Proskuryakov  <ap@apple.com>
3355
3356         Reviewed by Adam Barth.
3357
3358         https://bugs.webkit.org/show_bug.cgi?id=37720
3359         <rdar://problem/7873752> HTMLFrameSetElement-window-eventListener-attributes.html sometimes
3360         crashes on SnowLeopard Release
3361
3362         Tests: 
3363         * fast/dom/Window/HTMLBodyElement-window-eventListener-attributes.html:
3364         * fast/dom/Window/HTMLFrameSetElement-window-eventListener-attributes.html:
3365
3366         * bindings/scripts/CodeGeneratorJS.pm: Use global object as a wrapper for window event
3367         listeners set via document.body. The body wrapper can go away if nothing else references it.
3368
3369         * html/HTMLBodyElement.idl: Override listeners that exist on Element with custom implementations,
3370         because we need to use window object as a wrapper, not the element. Marked all window event
3371         listeners as such for code generator.
3372
3373         * html/HTMLFrameSetElement.idl: Ditto.
3374
3375 2010-04-17  Juan C. Montemayor  <jmonte03@cs.tufts.edu>
3376
3377         Reviewed by Joseph Pecoraro.
3378
3379         Databases pane doesn't recognize table creation/deletion
3380         https://bugs.webkit.org/show_bug.cgi?id=20219
3381
3382         * inspector/front-end/DatabaseQueryView.js:
3383         (WebInspector.DatabaseQueryView.prototype._queryFinished):
3384
3385 2010-04-17  Yaar Schnitman  <yaar@chromium.org>
3386
3387         Reviewed by Adam Barth.
3388
3389         Auto-generate V8 bindings for canvas.* overloads
3390         https://bugs.webkit.org/show_bug.cgi?id=37453
3391
3392         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp: Deleted custom code that is now auto-generated.
3393         * bindings/scripts/CodeGeneratorV8.pm: Not generating custom signatures for overloaded methods and accepting Object as a string input.
3394         * html/canvas/CanvasRenderingContext2D.cpp:
3395         (WebCore::CanvasRenderingContext2D::drawImage): Added missing 9-arguments overloads for drawImage.
3396         * html/canvas/CanvasRenderingContext2D.h: 
3397         * html/canvas/CanvasRenderingContext2D.idl: Overloaded methods defined (V8 only).
3398
3399 2010-04-17  Yury Semikhatsky  <yurys@chromium.org>
3400
3401         Reviewed by Pavel Feldman.
3402
3403         Web Inspector: move JavaScriptCallFrame.{h,cpp} to WebCore/bindings/js
3404
3405         https://bugs.webkit.org/show_bug.cgi?id=37740
3406
3407         * GNUmakefile.am:
3408         * WebCore.gypi:
3409         * WebCore.pro:
3410         * WebCore.vcproj/WebCore.vcproj:
3411         * WebCore.xcodeproj/project.pbxproj:
3412         * bindings/js/JSBindingsAllInOne.cpp:
3413         * bindings/js/JavaScriptCallFrame.cpp: Renamed from WebCore/inspector/JavaScriptCallFrame.cpp.
3414         (WebCore::JavaScriptCallFrame::JavaScriptCallFrame):
3415         (WebCore::JavaScriptCallFrame::caller):
3416         (WebCore::JavaScriptCallFrame::scopeChain):
3417         (WebCore::JavaScriptCallFrame::dynamicGlobalObject):
3418         (WebCore::JavaScriptCallFrame::functionName):
3419         (WebCore::JavaScriptCallFrame::type):
3420         (WebCore::JavaScriptCallFrame::thisObject):
3421         (WebCore::JavaScriptCallFrame::evaluate):
3422         * bindings/js/JavaScriptCallFrame.h: Renamed from WebCore/inspector/JavaScriptCallFrame.h.
3423         (WebCore::JavaScriptCallFrame::create):
3424         (WebCore::JavaScriptCallFrame::invalidate):
3425         (WebCore::JavaScriptCallFrame::isValid):
3426         (WebCore::JavaScriptCallFrame::sourceID):
3427         (WebCore::JavaScriptCallFrame::line):
3428         (WebCore::JavaScriptCallFrame::update):
3429         * inspector/InjectedScriptHost.h:
3430         * inspector/InspectorController.h:
3431
3432 2010-04-17  Vangelis Kokkevis  <vangelis@chromium.org>
3433
3434         Reviewed by Dimitri Glazkov.
3435
3436         Adding definition of GLES2Context class.
3437         https://bugs.webkit.org/show_bug.cgi?id=37541
3438
3439         No new functionality implemented yet, no tests.
3440
3441         * WebCore.gypi: Added GLES2Context.h
3442         * platform/chromium/GLES2Context.h: Added.
3443
3444 2010-04-17  Julien Chaffraix  <jchaffraix@webkit.org>
3445
3446         Reviewed by Darin Adler.
3447
3448         Crash while handling SVG font in the wrong namespace imported with @font-face
3449         https://bugs.webkit.org/show_bug.cgi?id=18862
3450
3451         Test: fast/invalid/invalidSVGFont.html
3452
3453         * loader/CachedFont.cpp:
3454         (WebCore::CachedFont::getSVGFontById): Make sure we really get an SVGFontElement by using
3455         getElementsByNameNS: the element factory chooses which element to create based on both
3456         localName and namespace.
3457
3458 2010-04-16  Sheriff Bot  <webkit.review.bot@gmail.com>
3459
3460         Unreviewed, rolling out r57770.
3461         http://trac.webkit.org/changeset/57770
3462         https://bugs.webkit.org/show_bug.cgi?id=37746
3463
3464         8 test cases crashed (Requested by Ossy on #webkit).
3465
3466         * platform/graphics/qt/GraphicsLayerQt.cpp:
3467         (WebCore::AnimationQtBase::AnimationQtBase):
3468         (WebCore::TransformAnimationQt::~TransformAnimationQt):
3469         (WebCore::TransformAnimationQt::applyFrame):
3470         (WebCore::OpacityAnimationQt::applyFrame):
3471         (WebCore::GraphicsLayerQt::addAnimation):
3472
3473 2010-04-16  Daniel Bates  <dbates@rim.com>
3474
3475         Reviewed by Adam Treat.
3476
3477         https://bugs.webkit.org/show_bug.cgi?id=36312
3478
3479         Adds support for the viewport meta tag. The code is largely derived in whole
3480         or in part from the WebCore-528.15 source published as part of the iPhone 3.1.3
3481         source code <http://www.opensource.apple.com/source/WebCore/WebCore-528.15/>.
3482
3483         * Android.mk: Added file ViewportArguments.cpp.
3484         * GNUmakefile.am: Added files ViewportArguments.cpp and ViewportArguments.h.
3485         * WebCore.gypi: Ditto.
3486         * WebCore.pro: Ditto.
3487         * WebCore.vcproj/WebCore.vcproj: Ditto.
3488         * WebCore.xcodeproj/project.pbxproj: Ditto.
3489         * dom/Document.cpp:
3490         (WebCore::isSeparator): Added.
3491         (WebCore::Document::processArguments): Added.
3492         (WebCore::Document::processViewport): Added.
3493         * dom/Document.h:
3494         * dom/ViewportArguments.cpp: Added.
3495         (WebCore::setViewportFeature):
3496         (WebCore::viewportErrorMessageTemplate):
3497         (WebCore::viewportErrorMessageLevel):
3498         (WebCore::reportViewportWarning):
3499         * dom/ViewportArguments.h: Added.
3500         (WebCore::):
3501         (WebCore::ViewportArguments::):
3502         (WebCore::ViewportArguments::ViewportArguments):
3503         (WebCore::ViewportArguments::hasCustomArgument):
3504         * html/HTMLMetaElement.cpp:
3505         (WebCore::HTMLMetaElement::process): Modified to call Document::processViewport.
3506         * page/ChromeClient.h:
3507         (WebCore::ChromeClient::didReceiveViewportArguments): Added.
3508
3509 2010-04-16  No'am Rosenthal  <noam.rosenthal@nokia.com>
3510
3511         Reviewed by Antti Koivisto.
3512
3513         [Qt] GraphicsLayer: support fill-modes
3514         https://bugs.webkit.org/show_bug.cgi?id=36216
3515         Implement the CSS-animation "fill mode" concept in GraphicsLayerQt. The concept
3516         enables a key-frame animation to go to the animation's starting point before the delay,
3517         and/or to stay at the animation's ending point after its ended, without reverting to the default
3518         value.
3519         We do that by manually setting the value to keyframe-0 before the delay if fill-mode is backwards/both,
3520         and manually modifying the default value to the animated value as we animate, with fill-mode forwards/both.
3521
3522         * platform/graphics/qt/GraphicsLayerQt.cpp:
3523         (WebCore::AnimationQtBase::AnimationQtBase):
3524         (WebCore::TransformAnimationQt::~TransformAnimationQt):
3525         (WebCore::TransformAnimationQt::applyFrame):
3526         (WebCore::GraphicsLayerQt::addAnimation):
3527
3528 2010-04-16  Gavin Barraclough  <barraclough@apple.com>
3529
3530         Reviewed by NOBODY (arm build fix).
3531
3532         * bindings/js/JSDesktopNotificationsCustom.cpp:
3533         (WebCore::JSNotification::addEventListener):
3534         (WebCore::JSNotification::removeEventListener):
3535
3536 2010-04-16  Dmitry Titov  <dimich@chromium.org>
3537
3538         Reviewed by Yury Semikhatsky.
3539
3540         [v8] In Workers, script errors right after close() are not delivered to the Worker.onerror.
3541         https://bugs.webkit.org/show_bug.cgi?id=37691
3542
3543         Existing worker-close.html will now work in Chromium.
3544
3545         * bindings/v8/V8Utilities.cpp:
3546         (WebCore::getScriptExecutionContext): Stop using proxy() to just retrieve WorkerContext which should be always available.
3547         * bindings/v8/WorkerContextExecutionProxy.h: removed workerContext() accessor which moved to WorkerScriptController.
3548         * bindings/v8/WorkerScriptController.h:
3549         (WebCore::WorkerScriptController::workerContext): Added, to be able to pull WorkerContext out from the controller.
3550
3551 2010-04-16  Gavin Barraclough  <barraclough@apple.com>
3552
3553         Reviewed by Sam Weinig.
3554
3555         https://bugs.webkit.org/show_bug.cgi?id=37735
3556         Remove JSC specific code from WebCore::AtomicString
3557
3558         Add generic constructor/add/find methods that take a UChar* & length, along
3559         with a known existing hash for the string.
3560         This removes the remaining JSC specific code from platform/text.
3561
3562         * bindings/js/JSAbstractWorkerCustom.cpp:
3563         (WebCore::JSAbstractWorker::addEventListener):
3564         (WebCore::JSAbstractWorker::removeEventListener):
3565         * bindings/js/JSDOMApplicationCacheCustom.cpp:
3566         (WebCore::JSDOMApplicationCache::addEventListener):
3567         (WebCore::JSDOMApplicationCache::removeEventListener):
3568         * bindings/js/JSDOMBinding.cpp:
3569         (WebCore::ustringToAtomicString):
3570         (WebCore::identifierToAtomicString):
3571         (WebCore::findAtomicString):
3572         * bindings/js/JSDOMBinding.h:
3573         * bindings/js/JSDOMWindowCustom.cpp:
3574         (WebCore::childFrameGetter):
3575         (WebCore::JSDOMWindow::getOwnPropertySlot):
3576         (WebCore::JSDOMWindow::getOwnPropertyDescriptor):
3577         (WebCore::JSDOMWindow::open):
3578         (WebCore::JSDOMWindow::addEventListener):
3579         (WebCore::JSDOMWindow::removeEventListener):
3580         * bindings/js/JSElementCustom.cpp:
3581         (WebCore::JSElement::setAttribute):
3582         (WebCore::JSElement::setAttributeNS):
3583         * bindings/js/JSEventSourceCustom.cpp:
3584         (WebCore::JSEventSource::addEventListener):
3585         (WebCore::JSEventSource::removeEventListener):
3586         * bindings/js/JSHTMLAllCollectionCustom.cpp:
3587         (WebCore::getNamedItems):
3588         (WebCore::JSHTMLAllCollection::canGetItemsForName):
3589         * bindings/js/JSHTMLCollectionCustom.cpp:
3590         (WebCore::getNamedItems):
3591         (WebCore::JSHTMLCollection::canGetItemsForName):
3592         * bindings/js/JSHTMLDocumentCustom.cpp:
3593         (WebCore::JSHTMLDocument::canGetItemsForName):
3594         * bindings/js/JSHTMLFormElementCustom.cpp:
3595         (WebCore::JSHTMLFormElement::canGetItemsForName):
3596         (WebCore::JSHTMLFormElement::nameGetter):