5533328972e41ef6070a333204a2f1cb55428d67
[WebKit-https.git] / WebCore / ChangeLog
1 2009-05-16  Dave Moore  <davemoore@google.com>
2
3         Reviewed by Darin Adler.
4
5         Allow Strings to be created with one malloc node with no copying
6         https://bugs.webkit.org/show_bug.cgi?id=25779
7
8         Add new methods to String and StringImpl, refactoring existing
9         methods in StringImpl to use new createUninitialized() method.
10
11         * platform/text/PlatformString.h:
12         (WebCore::String::createUninitialized):
13         * platform/text/StringImpl.cpp:
14         (WebCore::StringImpl::createUninitialized):
15         (WebCore::StringImpl::create):
16         * platform/text/StringImpl.h:
17
18 2009-05-16  Mark Rowe  <mrowe@apple.com>
19
20         Reviewed by Darin Adler.
21
22         <rdar://problem/6827041> WebCore should stop throwing away the CGImageSourceRef to
23         dramatically improve animated GIF decoding performance
24
25         Recent versions of ImageIO discard previously decoded image frames if the client
26         application no longer holds references to them, so there's no need to throw away
27         the decoder unless we're explicitly asked to destroy all of the frames.
28
29         This drops peak CPU usage when displaying <http://www.aintitcool.com/files/HoD2.gif>
30         from over 90% to below 3%.
31
32         * platform/graphics/cg/ImageSourceCG.cpp:
33         (WebCore::ImageSource::clear):
34
35 2009-05-16  Dan Bernstein  <mitz@apple.com>
36
37         Reviewed by Alexey Proskuryakov.
38
39         - fix <rdar://problem/6873305> Two distinct characters are not displayed
40           correctly with 2 of the font selections from the stickies widget
41
42         Test: platform/mac/editing/pasteboard/text-precomposed.html
43
44         Ensure that "text/plain" data retrieved from the clipboard is always
45         precomposed. This makes Clipboard::getData() and
46         Pasteboard::documentFragment() consistent with Pasteboard::plainText()
47         and -[WebHTMLView _documentFragmentFromPasteboard:forType:inContext:subresources:].
48
49         * platform/mac/ClipboardMac.mm:
50         (WebCore::ClipboardMac::getData):
51         * platform/mac/PasteboardMac.mm:
52         (WebCore::Pasteboard::documentFragment):
53
54 2009-05-16  Mark Rowe  <mrowe@apple.com>
55
56         Build fix.
57
58         * css/CSSComputedStyleDeclaration.cpp:
59         (WebCore::valueForFamily): Declare valueForFamily as static.
60
61 2009-05-15  Darin Adler  <darin@apple.com>
62
63         Reviewed by Dan Bernstein.
64
65         <rdar://problem/6883872> REGRESSION (r43243): computed style for font-family is returning
66         only the generic font, if any generic font is in the family list
67
68         Test: fast/css/getComputedStyle/computed-style-font-family.html
69
70         * css/CSSComputedStyleDeclaration.cpp:
71         Sorted computedProperties alphabetically. Added CSSPropertyClip and CSSPropertyWordBreak.
72         (WebCore::identifierForFamily): Added. Maps internal font family names to identifiers.
73         (WebCore::valueForFamily): Added. Creates either an identifier or a string as appropriate.
74         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Implemented the font-family
75         property as specified in the CSS standard. Fixed clip to return "auto" when there is no
76         clip set instead of nothing at all. Gave inheritableProperties and numInheritableProperties
77         internal linkage since there was no reason for them to have external linkage.
78
79 2009-05-15  Adam Barth  <abarth@webkit.org>
80
81         Reviewed by Oliver Hunt.
82
83         https://bugs.webkit.org/show_bug.cgi?id=25741
84
85         Append instead of throwing when insertItemBefore gets an out-of-bound
86         index.
87
88         Test: svg/dom/svglist-insertItemBefore-appends.html
89
90         * svg/SVGList.h:
91         (WebCore::SVGList::insertItemBefore):
92
93 2009-05-15  Simon Fraser  <simon.fraser@apple.com>
94
95         Reviewed by Darin Adler
96         
97         https://bugs.webkit.org/show_bug.cgi?id=25829
98         
99         Fix -webkit-background-clip:text when the renderer had a non (0,0) x, y offset.
100
101         Test: fast/backgrounds/background-clip-text.html
102
103         * rendering/RenderBoxModelObject.cpp:
104         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
105
106 2009-05-15  Dan Bernstein  <mitz@apple.com>
107
108         Reviewed by Sam Weinig.
109
110         - fix <rdar://problem/6888244> REGRESSION: Using the Up or Down keyboard
111           arrows, I can't navigate caret between To Do items in a Note message
112
113         Test: editing/selection/move-by-line-004.html
114
115         * editing/visible_units.cpp:
116         (WebCore::enclosingNodeWithNonInlineRenderer): Added this helper
117         function.
118         (WebCore::previousLinePosition): When advancing to the next candidate
119         node, stop when leaving the closest ancestor of the original node that
120         is not an inline. The code, incorrectly, was trying to exit the closest
121         ancestor of that type which was editable, and therefore missing other
122         blocks in the same editable root.
123         (WebCore::nextLinePosition): Ditto.
124
125 2009-05-15  Fridrich Strba  <fridrich.strba@bluewin.ch>
126
127         Reviewed by Jan Alonzo.
128
129         Converting filename to uri by concatenating strings is broken
130         on Windows. So, don't do it for that platform.
131
132         * platform/network/soup/ResourceHandleSoup.cpp:
133         (WebCore::ResourceHandle::startGio):
134
135 2009-05-15  Nate Chapin  <japhet@google.com>
136
137         Reviewed by Dimitri Glazkov.
138
139         Upstream V8 bindings for HTMLOptionsCollection and HTMLSelectElementCollection.
140         https://bugs.webkit.org/show_bug.cgi?id=25739
141
142         * bindings/v8/V8Collection.cpp: Added.
143         (WebCore::toOptionsCollectionSetter): Moved from v8_custom.cpp.
144         * bindings/v8/V8Collection.h: Added prototype for toOptionsCollectionSetter().
145         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
146         (WebCore::INDEXED_PROPERTY_SETTER): Moved from v8_custom.cpp.
147         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp: Added.
148         (WebCore::NAMED_PROPERTY_GETTER):  Moved from v8_custom.cpp.
149         (WebCore::INDEXED_PROPERTY_SETTER):  Moved from v8_custom.cpp.
150
151 2009-05-15  David Kilzer  <ddkilzer@apple.com>
152
153         <rdar://problem/6649936> Add *.exp export files to WebCore Xcode project
154
155         Reviewed by Darin Adler and Timothy Hatcher.
156
157         * WebCore.xcodeproj/project.pbxproj: Added Exports group, moved
158         WebCore.base.exp into the group, and added 10 other *.exp files
159         in WebCore.
160
161 2009-05-15  Dimitri Glazkov  <dglazkov@chromium.org>
162
163         Unreviewed, build fix.
164
165         https://bugs.webkit.org/show_bug.cgi?id=25826
166         Change type to only have custom getter in JCS.
167
168         * html/HTMLInputElement.idl: Changed CustomGetter attribute to JSCCustomGetter.
169
170 2009-05-15  Antti Koivisto  <antti@apple.com>
171
172         Reviewed by Dave Kilzer.
173
174         Add a settings entry to en/disable web font support
175         https://bugs.webkit.org/show_bug.cgi?id=25239
176
177         * css/CSSFontSelector.cpp:
178         (WebCore::CSSFontSelector::addFontFaceRule):
179
180 2009-05-15  Sam Weinig  <sam@webkit.org>
181
182         Reviewed by Steve Falkenburg.
183
184         Remove dead youtube site specific hack that was commented out.
185
186         * bindings/js/JSNavigatorCustom.cpp:
187         * page/Navigator.idl:
188
189 2009-05-15  Sam Weinig  <sam@webkit.org>
190
191         Reviewed by Beth Dakin.
192
193         Fix for https://bugs.webkit.org/show_bug.cgi?id=25826
194         <rdar://problem/6884742> 
195         REGRESSION: In Gmail's Edit Link dialog, I can't type in the Link To: field (due to <input type=url> support)
196
197         Added a site specific quirk for mail.google.com which returns "text" when getting the type of an <input type=url>
198
199         * bindings/js/JSHTMLInputElementCustom.cpp:
200         (WebCore::needsGmailQuirk):
201         (WebCore::JSHTMLInputElement::type):
202         * html/HTMLInputElement.idl:
203
204 2009-05-14  Dimitri Glazkov  <dglazkov@chromium.org>
205
206         Reviewed by Eric Seidel.
207
208         https://bugs.webkit.org/show_bug.cgi?id=25810
209         Upstream V8 DOM Wrapper map declarations.
210
211         No behavior change, so no tests.
212
213         * bindings/v8/V8DOMMap.h:
214         (WebCore::WeakReferenceMap::WeakReferenceMap): Added.
215         (WebCore::WeakReferenceMap::~WeakReferenceMap): Added.
216         (WebCore::WeakReferenceMap::get): Added.
217         (WebCore::WeakReferenceMap::set): Added.
218         (WebCore::WeakReferenceMap::forget): Added.
219         (WebCore::WeakReferenceMap::contains): Added.
220         (WebCore::WeakReferenceMap::impl): Added.
221         (WebCore::DOMWrapperMap::DOMWrapperMap): Added.
222
223 2009-05-15  Simon Fraser  <simon.fraser@apple.com>
224
225         Reviewed by Dave Hyatt
226         
227         https://bugs.webkit.org/show_bug.cgi?id=25773
228         
229         Rename GraphicsLayer::graphicsContextsFlipped() to 
230         GraphicsLayer::compositingCoordinatesOrientation() in order to clarify the usage.
231
232         Clean up code around the GraphicsLayer "contents" layer that makes use of this
233         flag, by removing the setHasContentsLayer() method, and just using setContentsLayer(),
234         which can then always do the flipping if necessary.
235
236         Only affects ACCELERATED_COMPOSITING builds.
237         
238         * platform/graphics/GraphicsLayer.h:
239         (WebCore::GraphicsLayer::):
240         * platform/graphics/mac/GraphicsLayerCA.h:
241         (WebCore::GraphicsLayerCA::contentsLayer):
242         * platform/graphics/mac/GraphicsLayerCA.mm:
243         (WebCore::GraphicsLayer::compositingCoordinatesOrientation):
244         (WebCore::GraphicsLayerCA::setBackgroundColor):
245         (WebCore::GraphicsLayerCA::clearBackgroundColor):
246         (WebCore::GraphicsLayerCA::setContentsToImage):
247         (WebCore::GraphicsLayerCA::clearContents):
248         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
249         (WebCore::GraphicsLayerCA::setContentsLayer):
250         * rendering/RenderLayerCompositor.cpp:
251         (WebCore::RenderLayerCompositor::ensureRootPlatformLayer):
252
253 2009-05-15  Chris Marrin  <cmarrin@apple.com>
254
255         Reviewed by Simon Fraser.
256
257         https://bugs.webkit.org/show_bug.cgi?id=25765
258
259         Avoid calling setNeedsStyleRecalc() when we are
260         putting an animated page in the cache. This avoids
261         the assert and subsequent problems with a dirty 
262         page going into the cache.
263
264         * page/animation/KeyframeAnimation.cpp:
265         (WebCore::KeyframeAnimation::endAnimation):
266
267 2009-05-15  Francisco Tolmasky  <francisco@280north.com>
268
269         BUG 25467: JavaScript debugger should use function.displayName as the function's name in the call stack
270         <https://bugs.webkit.org/show_bug.cgi?id=25467>
271         
272         Reviewed by Adam Roben.
273
274         * inspector/JavaScriptCallFrame.cpp:
275         (WebCore::JavaScriptCallFrame::functionName): Use calculatedFunctionName which takes into account displayName
276         * inspector/front-end/CallStackSidebarPane.js: Remove "|| anonymous function" since it is handled internally just like in profiles
277         (WebInspector.CallStackSidebarPane.prototype.update):
278
279 2009-05-15  Alexey Proskuryakov  <ap@webkit.org>
280
281         Windows build fix (and a matching Mac change, to avoid unnecessarily diverging the implementations).
282
283         * platform/network/cf/ResourceHandleCFNet.cpp:
284         (WebCore::ResourceHandle::start):
285         * platform/network/mac/ResourceHandleMac.mm:
286         (WebCore::ResourceHandle::start):
287         Check strings with isEmpty(), not relying on any implicit conversions.
288
289 2009-05-15  Alexey Proskuryakov  <ap@webkit.org>
290
291         Reviewed by Darin Adler, Brady Eidson and Eric Carlson.
292
293         <rdar://problem/6875643> REGRESSION: Unable to download file with FTP URL that includes
294         username and password (Lightwave 9.6 for Mac from Newtek site)
295
296         CFNetwork only invokes didReceiveAuthenticationChallenge for HTTP requests. Credentials
297         for other protocols (including FTP) should be included as part of the URL.
298
299         * platform/network/cf/ResourceHandleCFNet.cpp:
300         (WebCore::ResourceHandle::start):
301         (WebCore::WebCoreSynchronousLoader::load):
302         * platform/network/mac/ResourceHandleMac.mm:
303         (WebCore::ResourceHandle::start):
304         (+[WebCoreSynchronousLoader loadRequest:allowStoredCredentials:returningResponse:error:]):
305         Put credentials in URL for non-HTTP requests.
306
307         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::makeSimpleCrossOriginAccessRequest):
308         Bail out quickly if the URL is non-HTTP. Cross-origin requests require specific HTTP
309         headers to be received, so they cannot work with other protocols.
310
311 2009-05-15  Ariya Hidayat  <ariya.hidayat@nokia.com>
312
313         Reviewed by Holger Freyther.
314
315         [Qt] In the image decoder, remove the raw image data represented as QImage
316         once the image is converted to QPixmap and inserted in the pixmap cache.
317         This effectively reduces the heap usage when running on graphics system
318         other than raster (i.e the case where QImage != QPixmap).
319
320         * platform/graphics/qt/ImageDecoderQt.cpp:
321         (WebCore::ImageDecoderQt::imageAtIndex): Nullified the image on purpose.
322         * platform/graphics/qt/ImageDecoderQt.h: Made m_imageList mutable.
323
324 2009-05-15  Ariya Hidayat  <ariya.hidayat@nokia.com>
325
326         Reviewed by Holger Freyther.
327
328         [Qt] Refactor alpha channel detection the image decoder.
329         Sets the boolean flag as soon as the image is being read.
330
331         * platform/graphics/qt/ImageDecoderQt.cpp:
332         (WebCore::ImageDecoderQt::ImageDecoderQt): Initialized m_hasAlphaChannel.
333         (WebCore::ImageDecoderQt::setData): Set the flag when appropriate.
334         (WebCore::ImageDecoderQt::supportsAlpha): Simplified.
335         (WebCore::ImageDecoderQt::reset): Resetted the flag.
336         * platform/graphics/qt/ImageDecoderQt.h: Added m_hasAlphaChannel.
337
338 2009-05-15  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
339
340         Reviewed by Darin Adler.
341
342         Finish support for disabling the JavaScript Debugger and Profiler 
343         at compile time in WebCore
344         https://bugs.webkit.org/show_bug.cgi?id=24917
345
346         * bindings/js/JSInspectorControllerCustom.cpp: ENABLE_JAVASCRIPT_DEBUGGER guard
347         * bindings/js/JSJavaScriptCallFrameCustom.cpp: Ditto.
348         * inspector/JavaScriptCallFrame.cpp: Ditto.
349         * inspector/JavaScriptCallFrame.h: Ditto.
350         * inspector/JavaScriptCallFrame.idl: Ditto.
351         * inspector/JavaScriptDebugListener.h: Ditto.
352         * inspector/JavaScriptDebugServer.cpp: Ditto.
353         * inspector/JavaScriptDebugServer.h: Ditto.
354         * inspector/JavaScriptProfile.cpp: Ditto.
355         * inspector/JavaScriptProfile.h: Ditto.
356         * inspector/JavaScriptProfileNode.cpp: Ditto.
357         * inspector/JavaScriptProfileNode.h: Ditto.
358         * page/Console.cpp: Use guard ENABLE(JAVASCRIPT_DEBUGGER) instead of USE(JSC)
359         * page/Console.h: Ditto.
360         * page/Console.idl: Use guard ENABLE(JAVASCRIPT_DEBUGGER) instead of !defined(V8_BINDING)
361
362 2009-05-15  Jungshik Shin  <jshin@chromium.org>
363
364         Reviewed by Dimitri Glazkov
365
366         http://bugs.webkit.org/show_bug.cgi?id=25464
367
368         Improve the font fallback for characters belonging to 'common' scripts
369         in ChromiumWin port. Make characters like Danda, Double Danda (punctuation
370         marks in North Indian scripts) and currency signs (e.g. Thai Baht)
371         rendered correctly in Chromium on Win. 
372
373         Tests: fast/text/international/danda-space.html
374                fast/text/international/thai-baht-space.html
375
376         * platform/graphics/chromium/FontUtilsChromiumWin.cpp:
377         (WebCore::FontMap::getScriptBasedOnUnicodeBlock):
378         (WebCore::FontMap::getScript):
379         (WebCore::getFallbackFamily):
380
381 2009-05-15  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
382
383         Reviewed by Holger Freyther.
384
385         https://bugs.webkit.org/show_bug.cgi?id=25731
386         [Qt] Cleanup - move files exclusive to XPATH and XSLT under the
387         appropriate build section
388
389         * WebCore.pro:
390
391 2009-05-14  Evan Martin  <evan@chromium.org>
392
393         Reviewed by Eric Seidel and Darin Fisher.
394
395         Fix a font-related leak in Chromium's Skia backend found by Valgrind.
396         https://bugs.webkit.org/show_bug.cgi?id=25760
397
398         * platform/graphics/chromium/FontCacheLinux.cpp:
399         (WebCore::FontCache::getFontDataForCharacters):
400         Use caches instead of "new" on every call.
401
402 2009-05-14  Rahul Kuchhal  <kuchhal@chromium.org>
403
404         Reviewed by Eric Seidel.
405
406         Initialize m_spreadMethod in the second constructor too. Not sure if
407         a test case can be written, so no test case.
408         https://bugs.webkit.org/show_bug.cgi?id=25814
409
410         No test possible: spreadMethod() is only used by SVG, doesn't seem possible to hit
411         this case, since several other SVG tests already should be calling
412         spreadMethod().
413
414         * platform/graphics/Gradient.cpp:
415         (WebCore::Gradient::Gradient):
416
417 2009-05-14  Simon Fraser  <simon.fraser@apple.com>
418
419         No review.
420
421         Fix Windows build after renaming MediaControlElements to MediaControlElementType.
422
423         * rendering/RenderMediaControls.cpp:
424         (WebCore::RenderMediaControls::paintMediaControlsPart):
425         * rendering/RenderMediaControls.h:
426
427 2009-05-14  Simon Fraser  <simon.fraser@apple.com>
428
429         Reviewed by Darin Adler
430         
431         <rdar://problem/6739671> Movie controller’s play button does not change into a pause
432         button
433
434         Fix a controls repaint issue when the playing state of a video changes by
435         educating the MediaControlInputElements about the state they are currently
436         displaying, and making them repaint when that state changes. This applies
437         to the play/pause and mute/unmute buttons, which both have two states.
438         
439         * rendering/MediaControlElements.cpp:
440         (WebCore::MediaControlInputElement::MediaControlInputElement):
441         (WebCore::MediaControlSeekButtonElement::MediaControlSeekButtonElement):
442         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement):
443         (WebCore::MediaControlFullscreenButtonElement::MediaControlFullscreenButtonElement):
444         Pass in and initialize the MediaControlElementType.
445         
446         (WebCore::MediaControlInputElement::update):
447         Update the display type too
448         
449         (WebCore::MediaControlInputElement::setDisplayType):
450         (WebCore::MediaControlMuteButtonElement::MediaControlMuteButtonElement):
451         (WebCore::MediaControlMuteButtonElement::updateDisplayType):
452         Choose muted vs. unmuted display.
453         
454         (WebCore::MediaControlPlayButtonElement::MediaControlPlayButtonElement):
455         (WebCore::MediaControlPlayButtonElement::updateDisplayType):
456         Choose play vs. paused display.
457
458         * rendering/MediaControlElements.h:
459         Renamed the MediaControlElements enum to MediaControlElementType.
460         (WebCore::MediaControlInputElement::updateDisplayType):
461         Add a MediaControlElementType member variable with a setter to allow
462         the element to know what type it is displaying.
463
464 2009-05-14  Dean Jackson  <dino@apple.com>
465
466         Reviewed by Simon Fraser.
467
468         https://bugs.webkit.org/show_bug.cgi?id=25197
469
470         Add support for aspect-ratio and orientation
471         media queries.
472
473         Tests: fast/media/mq-aspect-ratio.html
474                fast/media/mq-orientation.html
475
476         * css/MediaFeatureNames.h:
477         * css/MediaQueryEvaluator.cpp:
478         (WebCore::orientationMediaFeatureEval):
479         (WebCore::aspect_ratioMediaFeatureEval):
480         (WebCore::min_aspect_ratioMediaFeatureEval):
481         (WebCore::max_aspect_ratioMediaFeatureEval):
482         * css/MediaQueryExp.h:
483         (WebCore::MediaQueryExp::isViewportDependent):
484
485 2009-05-14  Kevin McCullough  <kmccullough@apple.com>
486
487         - Resubmitting previous patch, correctly this time.
488
489         * editing/CompositeEditCommand.cpp:
490         (WebCore::CompositeEditCommand::splitTreeToNode):
491         * editing/IndentOutdentCommand.cpp:
492         (WebCore::IndentOutdentCommand::outdentParagraph):
493
494 2009-05-14  Kevin McCullough  <kmccullough@apple.com>
495
496         - Rolling out to fix a bug and the build
497
498         * editing/CompositeEditCommand.cpp:
499         (WebCore::CompositeEditCommand::splitTreeToNode):
500         * editing/IndentOutdentCommand.cpp:
501         (WebCore::IndentOutdentCommand::outdentParagraph):
502
503 2009-05-14  Kevin McCullough  <kmccullough@apple.com>
504
505         Reviewed by Dan Bernstein.
506
507         <rdar://problem/6510362> In some situations message content is messed up
508         when indentation is decreased
509
510         * editing/CompositeEditCommand.cpp:
511         (WebCore::CompositeEditCommand::splitTreeToNode): Calling recursively
512         here served to do nothing because this function will return if the
513         second argument is the parent of the first.  Not only does this now work
514         as intended, but is necessary for the rest of this fix.
515         * editing/IndentOutdentCommand.cpp:
516         (WebCore::IndentOutdentCommand::outdentParagraph): To determine if we 
517         are the last node in a <blockquote>, and can therefore remove the
518         <blockquote> we need the endOfEnclosingBlock to extend to the end of
519         the <blockquote> not just the next block, which could be a <div>, for
520         example. 
521         - Also If a <blockquote> is removed, but it's the child of another
522         <blockquote> then its children are now children of the top <blockquote>.
523         In this case we want to split the parent <blockquote> because the next
524         paragraph assumes that it is the first node in its <blockquote> and if
525         that is not true, various bugs arise.
526
527 2009-05-14  Brady Eidson  <beidson@apple.com>
528
529         Build fix.
530
531         * platform/network/cf/ResourceHandleCFNet.cpp:
532         (WebCore::setDefaultMIMEType):
533
534 2009-05-14  Brady Eidson  <beidson@apple.com>
535
536         Reviewed by Adam Roben.
537
538         Fix http/tests/xmlhttprequest/cache-override.html on Windows
539
540         * platform/network/cf/ResourceHandleCFNet.cpp:
541         (WebCore::setDefaultMIMEType): Modify the previous response so it maintains all of its data.
542         (WebCore::didReceiveResponse): Call setDefaultMIMEType() when needed.
543         (WebCore::WebCoreSynchronousLoader::load): Ditto.
544
545 2009-05-14  Paul Godavari  <paul@chromium.org>
546
547         Reviewed by Dimitri Glazkov.
548
549         Bug: Mac Chromium popup menus are not positioned correctly
550         on scrolled pages:
551         https://bugs.webkit.org/show_bug.cgi?id=25772
552
553         Fix Mac Chromium popup menu placement by taking into
554         account any scrolling in the current window. This mirrors
555         the positioning done in PopupContainer::show(), which is
556         used on Chromium Windows and linux.
557
558         Also fixed indenting for this method.
559
560         * platform/chromium/PopupMenuChromium.cpp:
561         (WebCore::PopupContainer::showExternal):
562
563 2009-05-14  Drew Wilson  <atwilson@google.com>
564
565         Reviewed by Dimitri Glazkov.
566
567         https://bugs.webkit.org/show_bug.cgi?id=25774
568         Upstream V8MessagePortCustom.cpp from the chromium repository.
569
570         * bindings/v8/custom/V8MessagePortCustom.cpp: Added.
571         (WebCore::ACCESSOR_GETTER):
572         (WebCore::ACCESSOR_SETTER):
573         (WebCore::CALLBACK_FUNC_DECL):
574
575 2009-05-14  Simon Fraser  <simon.fraser@apple.com>
576
577         Reviewed by Darin Adler
578
579         https://bugs.webkit.org/show_bug.cgi?id=25777
580         
581         StyleGeneratedImage::imageSize() needs to take zooming into account for
582         fixed-size images (i.e. canvas) so that canvas-as-image-background
583         renders correctly with zooming.
584
585         Test: fast/canvas/canvas-bg-zoom.html
586
587         * rendering/style/StyleGeneratedImage.cpp:
588         (WebCore::StyleGeneratedImage::imageSize):
589
590 2009-05-14  Alexey Proskuryakov  <ap@webkit.org>
591
592         Reviewed by Darin Adler.
593
594         Patch originally by Darin Adler.
595
596         https://bugs.webkit.org/show_bug.cgi?id=25796
597         <rdar://problem/6886654> Shouldn't set referer and origin in Loader::Host::servePendingRequests().
598
599         Test: http/tests/security/credentials-in-referer.html
600
601         * loader/loader.cpp: (WebCore::Loader::Host::servePendingRequests): This will be done in
602         SubresourceLoader::create() anyway.
603
604 2009-05-14  Chris Fleizach  <cfleizach@apple.com>
605
606         Reviewed by Darin Adler.
607
608         Bug 25797: Pages with image maps are not properly read with Voiceover
609         https://bugs.webkit.org/show_bug.cgi?id=25797
610
611         * page/AccessibilityImageMapLink.h:
612         (WebCore::AccessibilityImageMapLink::isEnabled):
613
614 2009-05-14  Brady Eidson  <beidson@apple.com>
615
616         Reviewed by Darin Adler.
617
618         <rdar://problem/6887762> and https://bugs.webkit.org/show_bug.cgi?id=25790 
619
620         Nuke the bogus ASSERT and add a legitimate ASSERT with a little help from a new accessor.
621
622         * platform/network/ResourceHandle.cpp:
623         (WebCore::ResourceHandle::shouldContentSniff):
624         * platform/network/ResourceHandle.h:
625
626         * platform/network/cf/ResourceHandleCFNet.cpp:
627         (WebCore::createCFURLResponseWithDefaultMIMEType):
628         (WebCore::didReceiveResponse):
629
630 2009-05-14  Eric Carlson  <eric.carlson@apple.com>
631
632         Reviewed by Darin Adler.
633
634         https://bugs.webkit.org/show_bug.cgi?id=25791
635         Bug 25791: HTMLMediaElement: implement 'startTime' attribute
636         
637         Support the recently added HTMLMediaElement 'startTime' attribute. This is a read-only 
638         value that only the media engine can know, so we just need to add the attribute 
639         to HTMLMediaElement and add methods to MediaPlayer and MediaPlayerPrivateInterface so 
640         the engine can make it available.
641
642         Test: media/media-startTime.html
643
644         * html/HTMLMediaElement.cpp:
645         (WebCore::HTMLMediaElement::startTime): New.
646         * html/HTMLMediaElement.h:
647         * html/HTMLMediaElement.idl:
648
649         * platform/graphics/MediaPlayer.cpp:
650         (WebCore::MediaPlayer::startTime): New.
651         * platform/graphics/MediaPlayer.h:
652
653         * platform/graphics/MediaPlayerPrivate.h:
654         (WebCore::MediaPlayerPrivateInterface::startTime): New.
655
656 2009-05-14  Kenneth Rohde Christiansen  <kenneth.christiansen@openbossa.org>
657
658         Reviewed by Ariya Hidayat.
659
660         Only create a QWidget wrapper for the plugin in the case it is not
661         in the Qt window mapper, and thus receiving events from the Qt
662         event system. Native Qt based plugins running in process, will
663         already be in the window mapper, and thus creating a wrapper,
664         stops them from getting events from Qt, as they are redirected
665         to the wrapper.
666
667         * plugins/qt/PluginContainerQt.cpp:
668         (PluginContainerQt::on_clientIsEmbedded):
669
670 2009-05-14  Alexey Proskuryakov  <ap@webkit.org>
671
672         Reviewed by Darin Adler.
673
674         https://bugs.webkit.org/show_bug.cgi?id=25784
675         Leaks seen on HTTP tests
676
677         We should change ResourceHandleMac.mm to use smart pointers some day, but this is a minimal fix.
678
679         * platform/network/mac/ResourceHandleMac.mm:
680         (WebCore::ResourceHandle::loadResourceSynchronously): Release mutable request copy made for
681         disabling content sniffing, matching the normal code path.
682         (-[WebCoreSynchronousLoader connection:willSendRequest:redirectResponse:]): Release m_user
683         and m_pass before overwriting.
684         (-[WebCoreSynchronousLoader connection:didReceiveAuthenticationChallenge:]): Ditto.
685
686 2009-05-14  Yury Semikhatsky <yurys@chromium.org>
687
688         Reviewed by Dimitri Glazkov.
689
690         https://bugs.webkit.org/show_bug.cgi?id=25418
691         Remove new lines from event handler wrapper to make line numbers
692         in the wrapped script conside with the lines in the original script.
693
694         * bindings/v8/V8LazyEventListener.cpp:
695         (WebCore::V8LazyEventListener::getListenerFunction):
696         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
697
698 2009-05-14  Dimitri Glazkov  <dglazkov@chromium.org>
699
700         Reviewed by Alexey Proskuryakov.
701
702         Remove a JSC-specific include that is already added by including
703         ScriptController.
704
705         No change in behavior, so no tests.
706
707         * dom/Document.cpp: Removed JSDOMBinding include.
708
709 2009-05-14  Alexey Proskuryakov  <ap@webkit.org>
710
711         Reviewed by Brady Eidson.
712
713         <rdar://problem/4072827> Downloaded non-ASCII file name becomes garbled
714
715         Hopefully, a final stroke. When updating ResourceRequest from a platform request, a wrong
716         CFString function was used, so a user-friendly name was stored in encoding fallback array.
717
718         * platform/network/cf/ResourceRequestCFNet.cpp: (WebCore::ResourceRequest::doUpdateResourceRequest):
719         * platform/network/mac/ResourceRequestMac.mm: (WebCore::ResourceRequest::doUpdateResourceRequest):
720
721 2009-05-14  Ben Murdoch  <benm@google.com>
722
723         Reviewed by Darin Adler.
724
725         Add more ENABLE_DATABASE guards.
726         https://bugs.webkit.org/show_bug.cgi?id=25616
727
728         See also https://bugs.webkit.org/show_bug.cgi?id=24776 (original set of guards)
729
730         * bindings/js/JSSQLResultSetRowListCustom.cpp:
731         * bindings/v8/custom/V8CustomSQLStatementCallback.cpp:
732         * bindings/v8/custom/V8CustomSQLStatementCallback.h:
733         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.cpp:
734         * bindings/v8/custom/V8CustomSQLStatementErrorCallback.h:
735         * bindings/v8/custom/V8CustomSQLTransactionCallback.cpp:
736         * bindings/v8/custom/V8CustomSQLTransactionCallback.h:
737         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.cpp:
738         * bindings/v8/custom/V8CustomSQLTransactionErrorCallback.h:
739         * bindings/v8/custom/V8DatabaseCustom.cpp:
740         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
741         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
742         * storage/Database.cpp:
743         * storage/DatabaseDetails.h:
744         * storage/OriginUsageRecord.cpp:
745         * storage/OriginUsageRecord.h:
746         * storage/SQLError.h:
747         * storage/SQLError.idl:
748         * storage/SQLResultSet.cpp:
749         * storage/SQLResultSet.h:
750         * storage/SQLResultSet.idl:
751         * storage/SQLResultSetRowList.cpp:
752         * storage/SQLResultSetRowList.h:
753         * storage/SQLResultSetRowList.idl:
754         * storage/SQLStatementCallback.h:
755         * storage/SQLStatementErrorCallback.h:
756         * storage/SQLTransactionCallback.h:
757         * storage/SQLTransactionErrorCallback.h:
758
759 2009-05-11  Holger Hans Peter Freyther  <zecke@selfish.org>
760
761         Reviewed by Darin Adler.
762
763         https://bugs.webkit.org/show_bug.cgi?id=25787
764
765         Gtk was the last platform to not unregister plugins when
766         the plugin is stopped. Catch up with r43550.
767
768         * plugins/gtk/PluginViewGtk.cpp:
769         (WebCore::PluginView::stop):
770
771 2009-05-14  Adam Roben  <aroben@apple.com>
772
773         Make WebCore.vcproj's pre-build event work again
774
775         * WebCore.vcproj/WebCore.vcproj: Removed empty override of the
776         pre-build event that was accidentally left in when the pre-build event
777         was moved to WebCoreCommon.vsprops.
778
779 2009-05-14  Darin Adler  <darin@apple.com>
780
781         * manual-tests/right-click-crash.html: Added.
782
783 2009-05-14  Mark Rowe  <mrowe@apple.com>
784
785         Rubber-stamped by Darin Adler.
786
787         <rdar://problem/6681868> When building with Xcode 3.1.3 should be using gcc 4.2
788
789         The meaning of XCODE_VERSION_ACTUAL is more sensible in newer versions of Xcode.
790         Update our logic to select the compiler version to use the more appropriate XCODE_VERSION_MINOR
791         if the version of Xcode supports it, and fall back to XCODE_VERSION_ACTUAL if not.
792
793         * Configurations/Base.xcconfig:
794
795 2009-05-13  Anders Carlsson  <andersca@apple.com>
796
797         Fix build.
798
799         * WebCore.NPAPI.exp:
800
801 2009-05-13  Eric Seidel  <eric@webkit.org>
802
803         Reviewed by Oliver Hunt.
804
805         Fix invalid memory write seen in HTMLCanvasElement by Valgrind
806         https://bugs.webkit.org/show_bug.cgi?id=25759
807
808         I can't think of any way to catch this with a layout test, so no test.
809
810         * css/CSSCanvasValue.cpp:
811         (WebCore::CSSCanvasValue::canvasDestroyed):
812         * css/CSSCanvasValue.h:
813         * html/HTMLCanvasElement.cpp:
814         (WebCore::HTMLCanvasElement::~HTMLCanvasElement):
815         * html/HTMLCanvasElement.h:
816
817 2009-05-13  Dan Bernstein  <mitz@apple.com>
818
819         Reviewed by Anders Carlsson.
820
821         - fix <rdar://problem/5483015> Replies in Mail are drawn first without
822           the user style sheet and then redrawn with the style sheet
823
824         Test: platform/mac/fast/loader/user-stylesheet-fast-path.html
825
826         * page/mac/FrameMac.mm:
827         (WebCore::Frame::setUserStyleSheetLocation): For data URLs with
828         base64-encoded UTF-8 data, just decode the style sheet here an apply
829         it synchronously instead of invoking an asynchronous loader.
830
831 2009-05-13  Chris Fleizach  <cfleizach@apple.com>
832
833         Bug 25755: Implement ARIA grid role
834         https://bugs.webkit.org/show_bug.cgi?id=25755
835
836         Fix build bustage from last checkin.
837
838         * page/AccessibilityAriaGrid.cpp:
839         (WebCore::AccessibilityAriaGrid::addChild):
840
841 2009-05-13  Chris Fleizach  <cfleizach@apple.com>
842
843         Reviewed by Beth Dakin.
844
845         Bug 25755: Implement ARIA grid role
846         https://bugs.webkit.org/show_bug.cgi?id=25755
847
848         Test: accessibility/aria-tables.html
849
850         * GNUmakefile.am:
851         * WebCore.pro:
852         * WebCore.vcproj/WebCore.vcproj:
853         * WebCore.xcodeproj/project.pbxproj:
854         * WebCoreSources.bkl:
855         * page/AXObjectCache.cpp:
856         (WebCore::AXObjectCache::nodeIsAriaType):
857         (WebCore::AXObjectCache::getOrCreate):
858         * page/AXObjectCache.h:
859         * page/AccessibilityAriaGrid.cpp: Added.
860         (WebCore::AccessibilityAriaGrid::AccessibilityAriaGrid):
861         (WebCore::AccessibilityAriaGrid::~AccessibilityAriaGrid):
862         (WebCore::AccessibilityAriaGrid::create):
863         (WebCore::AccessibilityAriaGrid::addChild):
864         (WebCore::AccessibilityAriaGrid::addChildren):
865         (WebCore::AccessibilityAriaGrid::cellForColumnAndRow):
866         * page/AccessibilityAriaGrid.h: Added.
867         (WebCore::AccessibilityAriaGrid::isAriaTable):
868         * page/AccessibilityAriaGridCell.cpp: Added.
869         (WebCore::AccessibilityAriaGridCell::AccessibilityAriaGridCell):
870         (WebCore::AccessibilityAriaGridCell::~AccessibilityAriaGridCell):
871         (WebCore::AccessibilityAriaGridCell::create):
872         (WebCore::AccessibilityAriaGridCell::parentTable):
873         (WebCore::AccessibilityAriaGridCell::rowIndexRange):
874         (WebCore::AccessibilityAriaGridCell::columnIndexRange):
875         * page/AccessibilityAriaGridCell.h: Added.
876         * page/AccessibilityAriaGridRow.cpp: Added.
877         (WebCore::AccessibilityAriaGridRow::AccessibilityAriaGridRow):
878         (WebCore::AccessibilityAriaGridRow::~AccessibilityAriaGridRow):
879         (WebCore::AccessibilityAriaGridRow::create):
880         (WebCore::AccessibilityAriaGridRow::parentTable):
881         (WebCore::AccessibilityAriaGridRow::headerObject):
882         * page/AccessibilityAriaGridRow.h: Added.
883         * page/AccessibilityList.cpp:
884         (WebCore::AccessibilityList::accessibilityIsIgnored):
885         * page/AccessibilityList.h:
886         * page/AccessibilityObject.h:
887         (WebCore::):
888         * page/AccessibilityRenderObject.cpp:
889         (WebCore::RoleEntry::):
890         * page/AccessibilityTable.cpp:
891         (WebCore::AccessibilityTable::AccessibilityTable):
892         (WebCore::AccessibilityTable::isTableExposableThroughAccessibility):
893         * page/AccessibilityTable.h:
894         (WebCore::AccessibilityTable::isAriaTable):
895         * page/AccessibilityTableCell.cpp:
896         (WebCore::AccessibilityTableCell::parentTable):
897         (WebCore::AccessibilityTableCell::isTableCell):
898         (WebCore::AccessibilityTableCell::titleUIElement):
899         * page/AccessibilityTableCell.h:
900         * page/AccessibilityTableColumn.cpp:
901         (WebCore::AccessibilityTableColumn::setParentTable):
902         (WebCore::AccessibilityTableColumn::headerObject):
903         * page/AccessibilityTableRow.cpp:
904         (WebCore::AccessibilityTableRow::isTableRow):
905         (WebCore::AccessibilityTableRow::parentTable):
906         * page/AccessibilityTableRow.h:
907         * page/mac/AccessibilityObjectWrapper.mm:
908         (RoleEntry::):
909
910 2009-05-13  David Levin  <levin@chromium.org>
911
912         Reviewed by Dimitri Glazkov.
913
914         Bug 25763: Need to move v8 custom binding to the custom directory.
915         https://bugs.webkit.org/show_bug.cgi?id=25763
916
917         No test due to no change in behavior.
918
919         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Renamed from WebCore/bindings/v8/V8CanvasPixelArrayCustom.cpp.
920
921 2009-05-13  Nate Chapin  <japhet@google.com>
922
923         Reviewed by Dimitri Glazkov.
924
925         Fix LayoutTests/fast/dom/Element/attr-param-typechecking.html crashing with V8.
926         https://bugs.webkit.org/show_bug.cgi?id=25758
927
928         * bindings/v8/custom/V8ElementCustom.cpp:
929         (WebCore::CALLBACK_FUNC_DECL): return the result of throwError() if it is called.
930
931 2009-05-13  Jeremy Moskovich  <jeremy@chromium.org>
932
933         Reviewed by Dave Hyatt.
934
935         Fix a number of bugs relating to RTL and text-overflow:ellipsis.
936         Also refactor the relevant code to make it a little clearer.
937
938         This CL fixes 3 fundamental issues:
939         - Corrects behavior if the truncated InlineTextBox's directionality is
940           different from the overall flow direction - bug 25135.
941         - Make decoration drawing in InlineFlowbox RTL-aware - bug 24206.
942         - Full truncation on InlineBoxes in RTL flow - bug 24186
943         - Add tests for the above + reorder/cleanup tests for easier
944           interpretation of outcome.
945
946         The code for placing ellipsis has been refactored to use
947         left/right notation rather than a single variable whose meaning
948         could differ based on flow directionality.
949
950         To support differing inline directionality vs flow directionality,
951         different variables are now used in InlineTextBox::placeEllipsisBox to
952         track the two.
953
954         The drawing mode for underlines in standards mode now correctly handles
955         RTL truncation and relevant test where added.
956
957         https://bugs.webkit.org/show_bug.cgi?id=24186
958         https://bugs.webkit.org/show_bug.cgi?id=25135
959         https://bugs.webkit.org/show_bug.cgi?id=24206
960
961         Tests: fast/css/text-overflow-ellipsis-bidi.html
962                fast/css/text-overflow-ellipsis-strict.html
963
964         * rendering/InlineBox.cpp:
965         (WebCore::InlineBox::placeEllipsisBox):
966         * rendering/InlineBox.h:
967         * rendering/InlineFlowBox.cpp:
968         (WebCore::InlineFlowBox::paintTextDecorations):
969         (WebCore::InlineFlowBox::placeEllipsisBox):
970         * rendering/InlineFlowBox.h:
971         * rendering/InlineTextBox.cpp:
972         (WebCore::InlineTextBox::placeEllipsisBox):
973         (WebCore::InlineTextBox::paint):
974         * rendering/InlineTextBox.h:
975         * rendering/RenderFlexibleBox.cpp:
976         (WebCore::RenderFlexibleBox::layoutVerticalBox):
977         * rendering/RootInlineBox.cpp:
978         (WebCore::RootInlineBox::placeEllipsis):
979         (WebCore::RootInlineBox::placeEllipsisBox):
980         * rendering/RootInlineBox.h:
981         * rendering/bidi.cpp:
982         (WebCore::RenderBlock::checkLinesForTextOverflow):
983
984 2009-05-13  Dmitry Titov  <dimich@chromium.org>
985
986         Rubber-stamped by Mark Rowe.
987
988         https://bugs.webkit.org/show_bug.cgi?id=25746
989         Revert http://trac.webkit.org/changeset/43507 which caused crash in PPC nightlies with Safari 4.
990
991         * dom/XMLTokenizerLibxml2.cpp:
992         (WebCore::matchFunc):
993         (WebCore::openFunc):
994         (WebCore::createStringParser):
995         (WebCore::createMemoryParser):
996         * loader/icon/IconDatabase.cpp:
997         (WebCore::IconDatabase::open):
998         * platform/sql/SQLiteDatabase.cpp:
999         (WebCore::SQLiteDatabase::SQLiteDatabase):
1000         (WebCore::SQLiteDatabase::close):
1001         * storage/DatabaseThread.cpp:
1002         (WebCore::DatabaseThread::DatabaseThread):
1003         (WebCore::DatabaseThread::start):
1004         (WebCore::DatabaseThread::databaseThread):
1005         * storage/LocalStorageThread.cpp:
1006         (WebCore::LocalStorageThread::LocalStorageThread):
1007         (WebCore::LocalStorageThread::start):
1008         (WebCore::LocalStorageThread::localStorageThread):
1009         (WebCore::LocalStorageThread::scheduleImport):
1010         (WebCore::LocalStorageThread::scheduleSync):
1011         (WebCore::LocalStorageThread::terminate):
1012         * workers/WorkerThread.cpp:
1013         (WebCore::WorkerThread::WorkerThread):
1014         (WebCore::WorkerThread::start):
1015
1016 2009-05-13  David Hyatt  <hyatt@apple.com>
1017
1018         Reviewed by Beth Dakin.
1019
1020         Fix for <rdar://problem/6872894> REGRESSION (r41896-42143): First letter cut off in styled select menus
1021         
1022         Make sure to do rounded clipping for overflow and controls relative to the border box and not to the overflow/control clip rect
1023         (which is typically clipped to the padding or content box).  Doing so was causing rounded clips to be incorrectly applied to padding and
1024         content.
1025     
1026         Added fast/overflow/border-radius-clipping.html
1027
1028         * rendering/RenderBox.cpp:
1029         (WebCore::RenderBox::pushContentsClip):
1030
1031 2009-05-13  Darin Adler  <darin@apple.com>
1032
1033         Revert the parser arena change. It was a slowdown, not a speedup.
1034         Better luck next time (I'll break it up into pieces).
1035
1036 2009-05-13  David Hyatt  <hyatt@apple.com>
1037
1038         Reviewed by Beth Dakin and Darin Adler.
1039
1040         Fix for <rdar://problem/6869687> REGRESSION (r41203): Facebook friend suggestions disappear on update.
1041         
1042         Make sure that renderers are marked for layout if a style change causes them to switch from having a self-painting layer
1043         to a non-self-painting layer (and vice versa).
1044         
1045         Move misplaced layer repainting code that was in RenderBox up into RenderBoxModelObject so that inlines with layers
1046         repaint properly on opacity changes, etc.
1047
1048         Added fast/repaint/opacity-change-on-overflow-float.html.
1049
1050         * rendering/RenderBox.cpp:
1051         (WebCore::RenderBox::styleWillChange):
1052         * rendering/RenderBoxModelObject.cpp:
1053         (WebCore::RenderBoxModelObject::styleWillChange):
1054         (WebCore::RenderBoxModelObject::styleDidChange):
1055         * rendering/RenderBoxModelObject.h:
1056
1057 2009-05-13  Dimitri Glazkov  <dglazkov@chromium.org>
1058
1059         Not reviewed, build fix.
1060
1061         Move an include, needed by Debugger under the corresponding guard.
1062
1063         * inspector/InspectorController.cpp: Moved parser/SourceCode under JAVASCRIPT_DEBUGGER
1064             guard.
1065
1066 2009-05-13  David Levin  <levin@chromium.org>
1067
1068         Reviewed by Darin Adler.
1069
1070         Bug 25394: REGRESSION: crash in DocumentLoader::addResponse due to bad |this| pointer
1071         https://bugs.webkit.org/show_bug.cgi?id=25394
1072
1073         Test: http/tests/xmlhttprequest/frame-unload-abort-crash.html
1074
1075         * loader/SubresourceLoader.cpp:
1076         (WebCore::SubresourceLoader::create):
1077         Add another check to subresource loader to avoid doing any loads in frames
1078         when the loaders are being stopped.
1079
1080 2009-05-13  Stephan Haller  <nomad@froevel.de>
1081
1082         Reviewed by Gustavo Noronha.
1083
1084         Wrong handling of file upload if no file selected
1085         https://bugs.webkit.org/show_bug.cgi?id=25649
1086
1087         Fixed returned path if path is empty
1088
1089         * WebCore/platform/gtk/FileSystemGtk.cpp:
1090
1091 2009-05-13  Dan Bernstein  <mitz@apple.com>
1092
1093         Reviewed by Dave Hyatt.
1094
1095         - fix <rdar://problem/6805567> REGRESSION (r42348): Notes flicker white
1096           when loading
1097
1098         Tests: fast/frames/content-opacity-1.html
1099                fast/frames/content-opacity-2.html
1100
1101         * page/FrameView.cpp:
1102         (WebCore::FrameView::reset): Reset m_contentIsOpaque to false.
1103         (WebCore::FrameView::useSlowRepaints): Use slow repaints if the content
1104         is not known to be opaque.
1105         (WebCore::FrameView::setContentIsOpaque): Added. Sets m_contentIsOpaque
1106         and enables or disables fast repaints accordingly.
1107         * page/FrameView.h:
1108         * rendering/RenderBoxModelObject.cpp:
1109         (WebCore::RenderBoxModelObject::paintFillLayerExtended): Removed the
1110         document()->haveStylesheetsLoaded() condition in determining whether the
1111         root is opaque. This is what was causing the bug, as iframes were
1112         considered to be opaque, and thus painted an opaque white background,
1113         whenever they were pending a style sheet load.
1114         Changed to call FrameView::setContentIsOpaqe() instead of
1115         setUseSlowRepaints(), which allows the frame to go back to fast repaints
1116         if the content becomes opaque.
1117         Corrected the check for background color opacity: any alpha value other
1118         than 255--not just zero--is not opaque.
1119
1120 2009-05-13  Ariya Hidayat  <ariya.hidayat@nokia.com>
1121
1122         Reviewed by Sam Weinig.
1123
1124         [Qt] Fix "lighther" composition mode.
1125         QPainter::CompositionMode_Plus is the right match.
1126
1127         * platform/graphics/qt/GraphicsContextQt.cpp:
1128         (WebCore::toQtCompositionMode):
1129
1130 2009-05-13  Darin Adler  <darin@apple.com>
1131
1132         Reviewed by Cameron Zwarich.
1133
1134         Bug 25674: syntax tree nodes should use arena allocation
1135         https://bugs.webkit.org/show_bug.cgi?id=25674
1136
1137         * bindings/js/JSDOMBinding.h: Removed include of JSFunction.h.
1138         We don't want the entire DOM binding to depend on that file.
1139
1140         * bindings/js/JSAudioConstructor.cpp: Added include of Error.h.
1141         Before we inherited this automatically because JDDOMBinding.h
1142         included JSFunction.h, but that was excessive.
1143         * bindings/js/JSDOMWindowCustom.cpp: Ditto.
1144         * bindings/js/JSHTMLInputElementCustom.cpp: Ditto.
1145         * bindings/js/JSImageConstructor.cpp: Ditto.
1146         * bindings/js/JSLazyEventListener.cpp: Ditto, but for JSFunction.h.
1147         * bindings/js/JSMessageChannelConstructor.cpp: Ditto.
1148         * bindings/js/JSOptionConstructor.cpp: Ditto.
1149         * bindings/js/JSWorkerConstructor.cpp: Ditto.
1150         * bindings/js/JSXMLHttpRequestConstructor.cpp: Ditto.
1151         * bridge/jni/jni_jsobject.mm: Ditto, but for SourceCode.h.
1152         * inspector/InspectorController.cpp: Ditto.
1153
1154         * inspector/JavaScriptDebugServer.cpp:
1155         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
1156         Moved mose of this function into the base class in JavaScriptCore,
1157         so the details of compilation don't have to be exposed.
1158
1159 2009-05-13  Douglas R. Davidson  <ddavidso@apple.com>
1160
1161         Reviewed by Darin Adler.
1162
1163         <rdar://problem/6879145>
1164         Generate a contextual menu item allowing autocorrections to
1165         easily be changed back.  Refrain from re-correcting items
1166         that have already been autocorrected once.
1167
1168         * dom/DocumentMarker.h:
1169         * editing/Editor.cpp:
1170         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1171         (WebCore::Editor::changeBackToReplacedString):
1172         * editing/Editor.h:
1173         * page/ContextMenuController.cpp:
1174         (WebCore::ContextMenuController::contextMenuItemSelected):
1175         * page/mac/WebCoreViewFactory.h:
1176         * platform/ContextMenu.cpp:
1177         (WebCore::ContextMenu::populate):
1178         (WebCore::ContextMenu::checkOrEnableIfNeeded):
1179         * platform/ContextMenuItem.h:
1180         * platform/LocalizedStrings.h:
1181         * platform/mac/LocalizedStringsMac.mm:
1182         (WebCore::contextMenuItemTagChangeBack):
1183         * rendering/HitTestResult.cpp:
1184         (WebCore::HitTestResult::replacedString):
1185         * rendering/HitTestResult.h:
1186         * rendering/InlineTextBox.cpp:
1187         (WebCore::InlineTextBox::computeRectForReplacementMarker):
1188         (WebCore::InlineTextBox::paintDocumentMarkers):
1189         * rendering/InlineTextBox.h:
1190
1191 2009-05-13  Holger Hans Peter Freyther  <zecke@selfish.org>
1192
1193         Rubber Stamped by Oliver Hunt.
1194
1195         [GTK] Fix Gtk+/X11 build on OSX
1196
1197         Including the CoreFoundation header here and X11 headers
1198         later will result in different definitions of Boolean. The
1199         CoreFoundation include does not seem to be necessary here
1200         and my mac build was successfull without it. I will remove
1201         it for now. If the build bots disagree this will be replaced
1202         by a #if PLATFORM(CF).
1203
1204         * platform/FileSystem.h:
1205
1206 2009-05-13  Holger Hans Peter Freyther  <zecke@selfish.org>
1207
1208         Rubber Stamped by Gustavo Noronha.
1209
1210         [GTK] Move the #ifdef around for a buildfix for Gtk+ on OSX
1211
1212         When building Gtk+ on OSX we ended up declaring
1213         setNPWindowIfNeeded twice. Fix that by moving
1214         the #if PLATFORM(GTK) up and using elif instead of
1215         else.
1216
1217         * plugins/PluginView.h:
1218
1219 2009-05-13  Holger Hans Peter Freyther  <zecke@selfish.org>
1220
1221         Reviewed by Xan Lopez.
1222
1223         https://bugs.webkit.org/show_bug.cgi?id=25685
1224         [GTK] Middle click paste form the pasteboard
1225
1226         The kit wants to paste from at least two different
1227         clipboards. By introducing getCurrentTarget to the
1228         PasteboardHelper interface we can make this decision
1229         in the kit.
1230         Use the new method in PasteboardGtk to get the right
1231         GdkClipboard for the paste operation.
1232
1233         * platform/gtk/PasteboardGtk.cpp:
1234         (WebCore::Pasteboard::documentFragment):
1235         (WebCore::Pasteboard::plainText):
1236         * platform/gtk/PasteboardHelper.h:
1237
1238 2009-05-13  Eric Carlson  <eric.carlson@apple.com>
1239
1240         Reviewed by Darin Adler.
1241
1242         <rdar://problem/6438177> QTMoviePreferredTransformAttribute only supported on SnowLeopard
1243         <rdar://problem/6872468> QTMovieOpenForPlaybackAttribute only supported on SnowLeopard
1244
1245         QTMoviePreferredTransformAttribute and QTMovieOpenForPlaybackAttribute are not supported
1246         on Tiger or Leopard.
1247
1248         * html/HTMLMediaElement.cpp:
1249         (WebCore::HTMLMediaElement::setNetworkState): Remove invalid ASSERT.
1250
1251         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
1252         (WebCore::MediaPlayerPrivate::createQTMovie): Only request QTMoviePreferredTransformAttribute
1253         when !BUILDING_ON_TIGER and !BUILDING_ON_LEOPARD.
1254         (WebCore::MediaPlayerPrivate::cacheMovieScale): Only ask for QTMovieOpenForPlaybackAttribute 
1255         when !BUILDING_ON_TIGER and !BUILDING_ON_LEOPARD,
1256
1257 2009-05-12  Roland Steiner <rolandsteiner@google.com>
1258
1259         Reviewed by Eric Seidel.
1260
1261         Bug 25738: Skia: CSS border style not cleared for SVG object
1262         https://bugs.webkit.org/show_bug.cgi?id=25738
1263
1264         If no dashing is set, this change reverts to solid stroke
1265         (previously the code bailed and left the old setting, whatever it was)
1266
1267         Test case listed in above bug entry.
1268         (Additional complications due to each platform rendering dotted lines differently -
1269         c.f. https://bugs.webkit.org/show_bug.cgi?id=25737)
1270
1271         * platform/graphics/skia/GraphicsContextSkia.cpp:
1272         (WebCore::GraphicsContext::setLineDash):
1273
1274 2009-05-11  Erik Arvidsson  <arv@chromium.org>
1275
1276         Reviewed by Eric Seidel.
1277
1278         Bug 21903: Adds DOM bindings for the placeholder property of the
1279         HTMLInputElement.
1280         https://bugs.webkit.org/show_bug.cgi?id=21903
1281
1282         Test: fast/forms/placeholder-dom-property.html
1283
1284         * dom/InputElement.cpp:
1285         (WebCore::InputElement::updatePlaceholderVisibility):
1286         * dom/InputElement.h:
1287         * html/HTMLInputElement.cpp:
1288         (WebCore::HTMLInputElement::placeholder):
1289         (WebCore::HTMLInputElement::setPlaceholder):
1290         * html/HTMLInputElement.h:
1291         * html/HTMLInputElement.idl:
1292         * rendering/RenderTextControlSingleLine.cpp:
1293         (WebCore::RenderTextControlSingleLine::updateFromElement):
1294         * wml/WMLInputElement.h:
1295         (WebCore::WMLInputElement::placeholder):
1296         (WebCore::WMLInputElement::setPlaceholder):
1297
1298 2009-05-12  Adam Barth  <abarth@webkit.org>
1299
1300         Reviewed by Dimitri Glazkov.
1301
1302         https://bugs.webkit.org/show_bug.cgi?id=25706
1303
1304         Change V8 bindings to match JSC bindings with respect to using
1305         the lexical or dynamic global object.
1306
1307         Tests: http/tests/security/aboutBlank/security-context-grandchildren-lexical.html
1308                http/tests/security/aboutBlank/security-context-grandchildren-write-lexical.html
1309                http/tests/security/aboutBlank/security-context-grandchildren-writeln-lexical.html
1310
1311         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1312         (WebCore::CALLBACK_FUNC_DECL):
1313
1314 2009-03-19  Oliver Hunt  <oliver@apple.com>
1315
1316         Reviewed by Darin Adler.
1317
1318         <rdar://problem/6702386> Incorrect bound check in SVGList::insertItemBefore
1319
1320         SVGList::insertItemBefore would not perform a bounds check on the
1321         index it was provided, potentially leading to a buffer overflow. 
1322
1323         Test: svg/dom/svglist-exception-on-out-bounds-error.html
1324
1325         * svg/SVGList.h:
1326         (WebCore::SVGList::insertItemBefore):
1327
1328 2009-05-12  Paul Godavari  <paul@chromium.org>
1329
1330         Reviewed by Dimitri Glazkov.
1331
1332         Bug 25708: Cannot choose menu items in popups with many entries in Chromium
1333         https://bugs.webkit.org/show_bug.cgi?id=25708
1334
1335         This change sets the window size for popups on Mac to include all items
1336         in the menu. This is required for hit testing on Mac, where we use native
1337         controls to manage the popups and don't want to artificially limit the
1338         valid hit testing region to a limited scroll window.
1339
1340         * platform/chromium/PopupMenuChromium.cpp:
1341         (WebCore::PopupListBox::layout):
1342
1343 2009-05-12  Stephen White  <senorblanco@chromium.org>
1344
1345         Reviewed by Dimitri Glazkov.
1346
1347         Fixes to build with latest skia:  SkTypeface::Create() is now
1348         SkTypeface::CreateFromName(); computeBounds() has been reworked
1349         as getBounds().  The changes are placed behind an #ifdef for now,
1350         so that we can roll back the skia version in Chromium if necessary
1351         without having to roll back this change.
1352
1353         https://bugs.webkit.org/show_bug.cgi?id=25705
1354
1355         * platform/graphics/chromium/FontCacheLinux.cpp:
1356         (WebCore::FontCache::createFontPlatformData):
1357         * platform/graphics/skia/PathSkia.cpp:
1358         (WebCore::Path::boundingRect):
1359         (WebCore::boundingBoxForCurrentStroke):
1360         * platform/graphics/skia/SkiaUtils.cpp:
1361         (WebCore::SkPathContainsPoint):
1362
1363 2009-05-12  Nate Chapin  <japhet@google.com>
1364
1365         Reviewed by Dimitri Glazkov.
1366
1367         https://bugs.webkit.org/show_bug.cgi?id=25732
1368         Update V8ElementCustom.cpp to match the current API of V8Proxy.
1369
1370         (WebCore::ACCESSOR_SETTER): Change retrieveActiveFrame() to retrieveFrameForEnteredContext().
1371
1372 2009-05-12  Alexey Proskuryakov  <ap@webkit.org>
1373
1374         Reviewed by Darin Adler.
1375
1376         https://bugs.webkit.org/show_bug.cgi?id=25694
1377         HTMLParser::createHead() ASSERT: Creating an element, calling  document.open() and writing
1378         to the document NULL ptr
1379
1380         Test: fast/parser/implicit-head-in-fragment-crash.html
1381
1382         * html/HTMLParser.cpp: (WebCore::HTMLParser::bodyCreateErrorCheck): Do not try to implicitly
1383         create <head> when parsing a fragment.
1384
1385 2009-05-12  Soren Gjesse  <sgjesse@chromium.org>
1386
1387         Reviewed by Dimitri Glazkov.
1388
1389         https://bugs.webkit.org/show_bug.cgi?id=25687
1390         Missing check for valid function in V8 bindings for toString function for event listeners.
1391
1392         * bindings/v8/V8LazyEventListener.cpp:
1393         (WebCore::V8LazyEventListener::getWrappedListenerFunction): Added empty handle checks.
1394
1395 2009-05-11  Yael Aharon  <yael.aharon@nokia.com>
1396
1397         Reviewed by Holger Freyther.
1398
1399         Change Qt port to match the mac and windows ports, and unregister plugins when plugins are stopped.
1400         Not doing that can cause assersion failure.
1401         https://bugs.webkit.org/show_bug.cgi?id=25702
1402
1403         * plugins/qt/PluginViewQt.cpp:
1404         (WebCore::PluginView::stop):
1405
1406 2009-05-11  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1407
1408         Reviewed by Holger Freyther.
1409
1410         Bug 25714: [Qt] Decouple HTML5 Database support from the
1411         SQLite/generic database support in the Qt port
1412
1413         <https://bugs.webkit.org/show_bug.cgi?id=25714>
1414
1415         * WebCore.pro:
1416
1417 2009-05-11  Chris Fleizach  <cfleizach@apple.com>
1418
1419         Reviewed by Beth Dakin.
1420
1421         Bug 25713: AX: Control Elements not identified in HTML content
1422         https://bugs.webkit.org/show_bug.cgi?id=25713
1423
1424         Test: accessibility/onclick-handlers.html
1425
1426         * page/AccessibilityRenderObject.cpp:
1427         (WebCore::AccessibilityRenderObject::mouseButtonListener):
1428
1429 2009-05-11  Darin Adler  <darin@apple.com>
1430
1431         Reviewed by Dan Bernstein.
1432
1433         <rdar://problem/6276843> REGRESSION: TextIterator generates
1434         an extra newline for ranges that start outside of body
1435
1436         * editing/TextIterator.cpp:
1437         (WebCore::TextIterator::shouldRepresentNodeOffsetZero):
1438         Check startPos for null, not just currPos.
1439
1440 2009-05-11  Chris Fleizach  <cfleizach@apple.com>
1441
1442         Reviewed by Darin Adler.
1443
1444         Bug 25700: Regression:WebKit:cmd-left and cmd-right use to go to the beginning and end of a line in Mail
1445         https://bugs.webkit.org/show_bug.cgi?id=25700
1446
1447         Keyboard selection movement handlers need to also watch for the Cmd key when Accessibility is enabled.
1448         Note: This code is only used when accessibility is enabled.
1449
1450         * page/EventHandler.cpp:
1451         (WebCore::EventHandler::handleKeyboardSelectionMovement):
1452
1453 2009-05-11  David Kilzer  <ddkilzer@apple.com>
1454
1455         Bug 25087: Test for ENABLE_FOO macros consistently in IDL files
1456
1457         <https://bugs.webkit.org/show_bug.cgi?id=25087>
1458
1459         Reviewed by Timothy Hatcher.
1460
1461         Change tests for ENABLE macros to check for both existence and
1462         value:
1463
1464         - Negative:  #if !defined(ENABLE_FOO) || !ENABLE_FOO
1465         - Positive:  #if defined(ENABLE_FOO) && ENABLE_FOO
1466
1467         * css/CSSCharsetRule.idl:
1468         * css/CSSPrimitiveValue.idl:
1469         * css/RGBColor.idl:
1470         * dom/Attr.idl:
1471         * dom/DOMCoreException.idl:
1472         * dom/DOMImplementation.idl:
1473         * dom/Document.idl:
1474         * dom/Element.idl:
1475         * dom/Event.idl:
1476         * dom/EventException.idl:
1477         * dom/KeyboardEvent.idl:
1478         * dom/MessagePort.idl:
1479         * dom/MouseEvent.idl:
1480         * dom/Node.idl:
1481         * dom/ProcessingInstruction.idl:
1482         * dom/Range.idl:
1483         * dom/RangeException.idl:
1484         * dom/WheelEvent.idl:
1485         * html/CanvasPixelArray.idl:
1486         * html/HTMLAnchorElement.idl:
1487         * html/HTMLAppletElement.idl:
1488         * html/HTMLAreaElement.idl:
1489         * html/HTMLBaseFontElement.idl:
1490         * html/HTMLCanvasElement.idl:
1491         * html/HTMLDocument.idl:
1492         * html/HTMLElement.idl:
1493         * html/HTMLEmbedElement.idl:
1494         * html/HTMLFrameElement.idl:
1495         * html/HTMLIFrameElement.idl:
1496         * html/HTMLImageElement.idl:
1497         * html/HTMLInputElement.idl:
1498         * html/HTMLLinkElement.idl:
1499         * html/HTMLObjectElement.idl:
1500         * html/HTMLOptionElement.idl:
1501         * html/HTMLOptionsCollection.idl:
1502         * html/HTMLSelectElement.idl:
1503         * html/HTMLStyleElement.idl:
1504         * html/ImageData.idl:
1505         * inspector/InspectorController.idl:
1506         * loader/appcache/DOMApplicationCache.idl:
1507         * page/Console.idl:
1508         * page/Coordinates.idl:
1509         * page/DOMSelection.idl:
1510         * page/DOMWindow.idl:
1511         * page/Geoposition.idl:
1512         * page/History.idl:
1513         * page/Location.idl:
1514         * page/Navigator.idl:
1515         * svg/SVGElementInstance.idl:
1516         * svg/SVGException.idl:
1517         * workers/WorkerContext.idl:
1518         * xml/XMLHttpRequestException.idl:
1519         * xml/XPathException.idl:
1520
1521 2009-05-11  Norbert Leser  <norbert.leser@nokia.com>
1522
1523         Reviewed by Darin Adler.
1524
1525         Bug 24538: class/struct mixup in forward declarations
1526         https://bugs.webkit.org/show_bug.cgi?id=24538
1527
1528         * inspector/InspectorResource.h:
1529         * loader/CachedFont.h:
1530         * loader/appcache/ApplicationCache.h:
1531         * rendering/RenderBlock.h:
1532         * rendering/RootInlineBox.h:
1533         * rendering/SVGInlineTextBox.h:
1534         * svg/SVGGlyphElement.h:
1535         * svg/SVGHKernElement.h:
1536
1537 2009-05-11  Norbert Leser  <norbert.leser@nokia.com>
1538
1539         Reviewed by Darin Adler.
1540
1541         Bug 24539: Unresolved CSSMutableStyleDeclaration
1542         https://bugs.webkit.org/show_bug.cgi?id=24539
1543
1544         The Symbian tools can't compile and link this without this include.
1545         It's not clear why this is different from other toolsets or why it affects
1546         only this header file, but adding the include for now.
1547
1548         * editing/RemoveCSSPropertyCommand.h: Added include of CSSMutableStyleDeclaration.h.
1549
1550 2009-05-11  Alice Liu  <alice.liu@apple.com>
1551
1552         Reviewed by Dan Bernstein.
1553
1554         https://bugs.webkit.org/show_bug.cgi?id=25701
1555         REGRESSION(r38788 & r42020): styled searchfields look wrong on Windows, affects Facebook
1556
1557         Test: fast/forms/search-styled.html
1558
1559         * css/themeWin.css:
1560         Remove the overriding of -webkit-appearance for searchfields. This will cause background
1561         images to not be honored when styling searchfields
1562
1563         * rendering/RenderThemeWin.cpp:
1564         (WebCore::RenderThemeWin::adjustSearchFieldStyle):
1565         * rendering/RenderThemeWin.h:
1566         Re-instate final adjustments to searchfield styling that were removed in r42020
1567
1568 2009-05-11  Brady Eidson  <beidson@apple.com>
1569
1570         Fix Windows build
1571
1572         * platform/network/cf/ResourceHandleCFNet.cpp:
1573         (WebCore::createCFURLResponseWithDefaultMIMEType):
1574
1575 2009-05-11  Nate Chapin  <japhet@google.com>
1576
1577         Reviewed by Dimitri Glazkov.
1578
1579         https://bugs.webkit.org/show_bug.cgi?id=25626
1580         Update V8ElementCustom.cpp to match the current API of Node.
1581
1582         * bindings/v8/custom/V8ElementCustom.cpp:
1583         (WebCore::ACCESSOR_SETTER): Changed a couple of method names to match current names.
1584         (WebCore::ACCESSOR_GETTER): Changed a method name to match current name.
1585
1586 2009-05-11  Brady Eidson  <beidson@apple.com>
1587
1588         Fix Windows build
1589
1590         * platform/network/cf/ResourceHandleCFNet.cpp:
1591         (WebCore::createCFURLResponseWithDefaultMIMEType):
1592         (WebCore::WebCoreSynchronousLoader::load):
1593
1594 2009-05-11  Brady Eidson  <beidson@apple.com>
1595
1596         Fix Windows build
1597
1598         * platform/network/cf/ResourceHandleCFNet.cpp:
1599         (WebCore::createCFURLResponseWithDefaultMIMEType):
1600
1601 2009-05-11  Nate Chapin  <japhet@google.com>
1602
1603         Reviewed by Dimitri Glazkov.
1604
1605         V8CustomBinding.cpp is missing a header file
1606
1607         https://bugs.webkit.org/show_bug.cgi?id=25644
1608
1609         * bindings/v8/custom/V8CustomBinding.cpp: Added #include "V8Proxy.h".
1610
1611 2009-05-11  Aaron Boodman  <aa@chromium.org>
1612
1613         Reviewed by Darin Fisher.
1614
1615         https://bugs.webkit.org/show_bug.cgi?id=25634
1616         Change V8Proxy::retrieveActiveFrame() call sites to V8Proxy::retrieveFrameForEnteredContext().
1617
1618         Also, change instances of ScriptController::retrieveActiveFrame() to
1619         V8::retrieveFrameForEnteredContext() for consistency.
1620
1621
1622         See http://codereview.chromium.org/113085 for the corresponding Chromium change.
1623
1624         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1625         (WebCore::V8Custom::WindowSetLocation):
1626         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1627         (WebCore::CALLBACK_FUNC_DECL):
1628         * bindings/v8/custom/V8LocationCustom.cpp:
1629         (WebCore::navigateIfAllowed):
1630         (WebCore::ACCESSOR_SETTER):
1631         (WebCore::CALLBACK_FUNC_DECL):
1632
1633 2009-05-11  Brady Eidson  <beidson@apple.com>
1634
1635         Reviewed by Darin Adler.
1636
1637         <rdar://problem/5972751> Local image files (BMP, ico) can be misidentified as HTML.
1638
1639         First part of the fix - Disable content sniffing for file resources which never should've been happening anyways.
1640         Second part of the fix - If the networking layer doesn't give us back a MIME type default to "application/octet-stream".
1641
1642         * platform/MIMETypeRegistry.cpp:
1643         (WebCore::defaultMIMEType): "application/octet-stream"
1644         * platform/MIMETypeRegistry.h:
1645
1646         * platform/network/ResourceHandle.cpp:
1647         (WebCore::ResourceHandle::create): If content sniffing is true, double check with "shouldContentSniffRequest()" which
1648           might override it to false.
1649         (WebCore::ResourceHandle::shouldContentSniffURL): Return false for file:// urls, true for everything else.
1650         * platform/network/ResourceHandle.h:
1651
1652         * platform/network/cf/ResourceHandleCFNet.cpp:
1653         (WebCore::createCFURLResponseWithDefaultMIMEType): Create a copy of the CFURLRequest with the default MIME type instead
1654           of null.
1655         (WebCore::didReceiveResponse): If the MIME type for the response is null, create a copy with the default MIME type.
1656         (WebCore::WebCoreSynchronousLoader::load): Use shouldContentSniffRequest() to make synchronous loads have the same 
1657           sniffing policy as asynchronous loads.  Also, correct a null MIME type by creating a copy with the default type.
1658
1659         * platform/network/mac/ResourceHandleMac.mm:
1660         (WebCore::ResourceHandle::loadResourceSynchronously): Use shouldContentSniffRequest() to make synchronous loads have the
1661           same sniffing policy as asynchronous loads.
1662         (-[WebCoreResourceHandleAsDelegate connection:didReceiveResponse:]): Set up the [NSURLResponse MIMEType] swizzling if
1663           it hasn't been set up yet.
1664         (_web_NSURLResponse_MIMEType): Either return the actual MIME type of the response, or the default MIME type if it's nil.
1665
1666         * xml/XMLHttpRequest.cpp:
1667         (WebCore::XMLHttpRequest::loadRequestAsynchronously): Remove the workaround added in r29370 as it will now be covered by
1668           the new mechanism.
1669
1670 2009-05-11  David Kilzer  <ddkilzer@apple.com>
1671
1672         Fix typo "APPLICATION_CAHE_DYNAMIC_ENTRIES" to "APPLICATION_CACHE_DYNAMIC_ENTRIES"
1673
1674         This was added in r39816 to disable dynamic entries.  They are
1675         still disabled after fixing the typo since this feature define
1676         is never set anywhere.
1677
1678         * bindings/js/JSDOMApplicationCacheCustom.cpp:
1679         * loader/appcache/DOMApplicationCache.idl:
1680
1681 2009-05-11  Dmitry Titov  <dimich@chromium.org>
1682
1683         Reviewed by Alexey Proskuryakov and Adam Roben.
1684
1685         https://bugs.webkit.org/show_bug.cgi?id=25348
1686         Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.
1687
1688         Most of the change is in WTF.
1689         Unless noted, all the following files changed to use the new ThreadIdentifier::isValid()
1690         method instead of just doing 'if(m_threadID)' kind of checks, since ThreadIdentifier
1691         is now a class rather then an integer.
1692         Also, there is no need to initialize threadID in constructors to 0 now.
1693
1694         * dom/XMLTokenizerLibxml2.cpp:
1695         (WebCore::libxmlLoaderThread): use DEFINE_STATIC_LOCAL and accessor function for static thread id,
1696         since now ThreadIdentifier needs construction and we avoid having global initializers.
1697         (WebCore::matchFunc): use the new accessor function.
1698         (WebCore::openFunc): ditto.
1699         (WebCore::createStringParser): ditto.
1700         (WebCore::createMemoryParser): ditto.
1701         * loader/icon/IconDatabase.cpp:
1702         (WebCore::IconDatabase::open):
1703         * platform/sql/SQLiteDatabase.cpp:
1704         (WebCore::SQLiteDatabase::SQLiteDatabase):
1705         (WebCore::SQLiteDatabase::close):
1706         * storage/DatabaseThread.cpp:
1707         (WebCore::DatabaseThread::start):
1708         (WebCore::DatabaseThread::databaseThread): remove m_threadID from debug output.
1709         * storage/LocalStorageThread.cpp:
1710         (WebCore::LocalStorageThread::start):
1711         (WebCore::LocalStorageThread::scheduleImport):
1712         (WebCore::LocalStorageThread::scheduleSync):
1713         (WebCore::LocalStorageThread::terminate):
1714         * workers/WorkerThread.cpp:
1715         (WebCore::WorkerThread::start):
1716         (WebCore::WorkerThread::WorkerThread):
1717         (WebCore::WorkerThread::start):
1718
1719 2009-05-11  Brady Eidson  <beidson@apple.com>
1720
1721         Reviewed by Darin Adler.
1722
1723         Remove unused header that declared one function which was never defined anywhere.
1724
1725         * WebCore.vcproj/WebCore.vcproj:
1726         * platform/network/cf/ResourceResponseCFNet.cpp: Change to include ResourceResponse.h (which really means
1727           platform/network/cf/ResourceResponse.h)
1728         * platform/network/cf/ResourceResponseCFNet.h: Removed.
1729
1730 2009-05-11  Dimitri Glazkov  <dglazkov@chromium.org>
1731
1732         Reviewed by Timothy Hatcher.
1733
1734         https://bugs.webkit.org/show_bug.cgi?id=25213
1735         Fix assert during Inspector destruction.
1736
1737         * inspector/InspectorController.cpp:
1738         (WebCore::InspectorController::inspectedPageDestroyed): Moved closing
1739             inspector above removing InspectorController object to fix JS errors,
1740             added clearing inspector page ptr.
1741
1742 2009-05-11  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1743
1744         Reviewed by Holger Freyther.
1745
1746         [Qt] Make sure that public APIs are properly exported on all Qt platforms
1747         https://bugs.webkit.org/show_bug.cgi?id=25601
1748
1749         * WebCore.pro: Define QT_MAKEDLL for all non-static builds, not just for win
1750
1751 2009-05-11  Csaba Osztrogonac  <oszi@inf.u-szeged.hu>
1752
1753         Reviewed by Holger Freyther.
1754
1755         https://bugs.webkit.org/show_bug.cgi?id=24284
1756
1757         * WebCore.pro: duplicated values removed from INCLUDEPATH
1758
1759 2009-05-11  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
1760
1761         Reviewed by Eric Seidel.
1762
1763         Build fix Symbian; clean Up WebKit/Qt if ENABLE_NETSCAPE_PLUGIN_API=0
1764         https://bugs.webkit.org/show_bug.cgi?id=24688
1765
1766         * WebCore.pro: Use platform independent plugin stubs if ENABLE_NETSCAPE_PLUGIN_API=0
1767         * platform/qt/TemporaryLinkStubs.cpp: Remove stub functions for plugins
1768
1769 2009-05-10  Dan Bernstein  <mitz@apple.com>
1770
1771         Reviewed by Darin Adler.
1772
1773         - fix a crash when deactivating a document that had adopted a <form>
1774           element
1775
1776         Test: fast/dom/HTMLFormElement/document-deactivation-callback-crash.html
1777
1778         * html/HTMLFormElement.cpp:
1779         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Corrected the
1780         logic here: <form> elements should be registered for document activation
1781         callbacks if and only if autocomplete is off.
1782
1783 2009-05-10  Alexey Proskuryakov  <ap@webkit.org>
1784
1785         Reviewed by Dan Bernstein.
1786
1787         <rdar://problem/6867598> REGRESSION (r42483): Have to enter credentials twice when trying
1788         to view protected MobileMe video
1789
1790         Add a temporary workaround.
1791
1792         * platform/network/ResourceHandleInternal.h:
1793         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
1794         Added an m_useSiteSpecificQuirks boolean (Mac-only). A Frame pointer is only available when
1795         starting a request, so we need to store this data for later use.
1796
1797         * platform/network/mac/ResourceHandleMac.mm:
1798         (WebCore::ResourceHandle::start): Initialize m_useSiteSpecificQuirks.
1799         (WebCore::ResourceHandle::receivedCredential): Use per-session credentials with gallery.me.com.
1800
1801 2009-05-10  Alexey Proskuryakov  <ap@webkit.org>
1802
1803         Reviewed by Dan Bernstein.
1804
1805         <rdar://problem/6870383> Have to enter credentials twice when downloading from a protected page
1806
1807         * platform/network/cf/AuthenticationCF.cpp:
1808         * platform/network/cf/AuthenticationCF.h:
1809         (WebCore::WebCoreCredentialStorage::set):
1810         (WebCore::WebCoreCredentialStorage::get):
1811         * platform/network/cf/ResourceHandleCFNet.cpp:
1812         Move WebCore credential storage to AuthenticationCF, so that WebKit could use it (macthing
1813         an earlier Mac change).
1814
1815 2009-05-10  Alexey Proskuryakov  <ap@webkit.org>
1816
1817         Reviewed by Dan Bernstein.
1818
1819         Match newer XMLHttpRequest draft and make withCredential setter raise an exception when
1820         called at a wrong time.
1821
1822         No test, because we are waiting for a newer version of system frameworks to test the attribute.
1823
1824         * xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::setWithCredentials):
1825         * xml/XMLHttpRequest.h:
1826         * xml/XMLHttpRequest.idl:
1827         Raise INVALID_STATE_ERR if the state is not OPENED, or if the send() flag is true.
1828
1829 2009-05-10  Dan Bernstein  <mitz@apple.com>
1830
1831         Reviewed by Dave Kilzer.
1832
1833         - fix https://bugs.webkit.org/show_bug.cgi?id=25602
1834           REGRESSION: fast/overflow/overflow-focus-ring.html seems double-drawn
1835           on ToT
1836
1837         Test: fast/layers/self-painting-outline.html
1838
1839         * rendering/RenderLayer.cpp:
1840         (WebCore::RenderLayer::paintLayer): Paint the layer's own outline only
1841         if it is a self-painting layer.
1842
1843 2009-05-09  Dan Bernstein  <mitz@apple.com>
1844
1845         Reviewed by Geoffrey Garen and Mark Rowe.
1846
1847         - fix https://bugs.webkit.org/show_bug.cgi?id=25666
1848           Assertion failure in Node::setDocument()
1849           (willMoveToNewOwnerDocumentWasCalled) when adopting a <form> element
1850
1851         Test: fast/dom/HTMLFormElement/adopt-assertion.html
1852
1853         * html/HTMLFormElement.cpp:
1854         (WebCore::HTMLFormElement::willMoveToNewOwnerDocument): Overrides of
1855         this method are required to call the base class implementation. Do it.
1856         (WebCore::HTMLFormElement::didMoveToNewOwnerDocument): Ditto.
1857
1858 2009-03-29  Kevin Ollivier  <kevino@theolliviers.com>
1859
1860         Reviewed by Maciej Stachowiak.
1861
1862         WebCore::DocumentLoader::mainReceivedError now asserts if error.isNull(), so
1863         make sure CURL does not create empty ResourceError() objects.
1864         
1865         https://bugs.webkit.org/show_bug.cgi?id=24927
1866
1867         * platform/network/curl/ResourceHandleManager.cpp:
1868         (WebCore::ResourceHandleManager::downloadTimerCallback):
1869
1870 2009-05-09  Gustavo Noronha Silva  <gns@gnome.org>
1871
1872         Build fix, adding missing files to make dist.
1873
1874         * GNUmakefile.am:
1875
1876 2009-05-08  Simon Fraser  <simon.fraser@apple.com>
1877
1878         Reviewed by Dan Bernstein
1879         
1880         https://bugs.webkit.org/show_bug.cgi?id=25656
1881         
1882         Reduce the inline capacity of CSSParserValueList's m_values
1883         vector to reduce the size of CSSParserValueList from 544 to 160 bytes in 64-bit.
1884
1885         * css/CSSParserValues.h:
1886
1887 2009-05-08  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
1888
1889         Not reviewed. Used sort-Xcode-project-file to sort the XCode project file - it hasn't been done for a while.
1890
1891         * WebCore.xcodeproj/project.pbxproj:
1892
1893 2009-05-08  Dan Bernstein  <mitz@apple.com>
1894
1895         Reviewed by Darin Adler.
1896
1897         - fix <rdar://problem/6864786> REGRESSION: Crash below
1898           ApplyStyleCommand::applyInlineStyleToRange when reviewing a patch in
1899           Bugzilla
1900
1901         Test: editing/style/apply-through-end-of-document.html
1902
1903         * editing/ApplyStyleCommand.cpp:
1904         (WebCore::ApplyStyleCommand::applyInlineStyleToRange): Added a null
1905         check for the case of a range extending through the end of the document,
1906         in which pastEndNode is 0.
1907
1908 2009-05-08  Douglas R. Davidson  <ddavidso@apple.com>
1909
1910         Reviewed by Beth Dakin.
1911
1912         <rdar://problem/6857446> REGRESSION (Safari 3-4): Contraction base 
1913         marked as misspelled even though contraction is a word
1914         Make sure spelling underline does not persist on words like 
1915         <doesn't>.  
1916
1917         * editing/TypingCommand.cpp:
1918         (WebCore::TypingCommand::typingAddedToOpenCommand):
1919
1920 2009-05-08  Kevin Watters  <kevinwatters@gmail.com>
1921
1922         Reviewed by Kevin Ollivier.
1923
1924         Make sure the path's refdata isn't deleted before we're done with the object.
1925         
1926         https://bugs.webkit.org/show_bug.cgi?id=25652
1927
1928         * platform/graphics/wx/PathWx.cpp:
1929         (WebCore::Path::~Path):
1930         (WebCore::Path::Path):
1931         (WebCore::Path::translate):
1932
1933 2009-05-08  Kevin Watters  <kevinwatters@gmail.com>
1934
1935         Reviewed by Darin Adler.
1936
1937         Fix for memory leak on Mac.
1938         
1939         https://bugs.webkit.org/show_bug.cgi?id=25650
1940
1941         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
1942         (wxFontProperties::wxFontProperties):
1943
1944 2009-05-08  Beth Dakin  <bdakin@apple.com>
1945
1946         Reviewed by Dan Bernstein.
1947
1948         <rdar://problem/6857446> REGRESSION (r37591): Cannot print or 
1949         preview from maps.yandex.ru
1950
1951         We need to fall into the stretchesToViewHeight() quirk when we are 
1952         printing and we are the root and the root has percentage height OR 
1953         when we are the body and the root has percentage height. Otherwise 
1954         we have a height of 0 and can run into painting troubles.
1955
1956         * rendering/RenderBox.cpp:
1957         (WebCore::RenderBox::calcHeight):
1958
1959 2009-05-08  Douglas Davidson  <ddavidso@apple.com>
1960
1961         Reviewed by Darin Adler.
1962
1963         Fixes for <rdar://problem/6852771>.
1964         Prevent text checking replacement immediately after an apostrophe
1965         and automatic link addition except immediately after typing.
1966
1967         * editing/Editor.cpp:
1968         (WebCore::Editor::markAllMisspellingsAndBadGrammarInRanges):
1969
1970 2009-05-08  Eric Carlson  <eric.carlson@apple.com>
1971
1972         Reviewed by Darin Adler.
1973         
1974         https://bugs.webkit.org/show_bug.cgi?id=25627
1975         Bug 25627: HTMLMediaElement: some errors should fire on <source> elements
1976
1977         Update for HTML5 spec change to fire 'error' events on <source> element
1978         when there is a failure while processing/loading a <source>.
1979
1980         Test: media/video-source-error.html
1981
1982         * html/HTMLMediaElement.cpp:
1983         (WebCore::HTMLMediaElement::enqueueEvent): Remove white-space.
1984         (WebCore::HTMLMediaElement::loadInternal): Call cancelPendingEventsAndCallbacks instead
1985         of just calling m_pendingEvents.clear() as we now also need to cancel pending errors on
1986         all <source> element. 
1987         (WebCore::HTMLMediaElement::selectMediaResource): Call isSafeToLoadURL() here instead of in
1988         loadResource() as we need to report errors differently depending on the type of failure. Use
1989         KURL instead of String.
1990         (WebCore::HTMLMediaElement::loadNextSourceChild): nextSourceChild -> selectNextSourceChild.
1991         Fail silently when there are no more <source> canditates because that is what spec mandates.
1992         Keep url as KURL instead of converting to String.
1993         (WebCore::HTMLMediaElement::loadResource): ASSERT that the URL is safe to load as we now 
1994         assume the safety check now done before this function. Takes KURL instead of String.
1995         (WebCore::HTMLMediaElement::isSafeToLoadURL): New, checks to see if a url is safe to load, logs
1996         failure if not.
1997         (WebCore::HTMLMediaElement::noneSupported): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED
1998         (WebCore::HTMLMediaElement::cancelPendingEventsAndCallbacks): New, clear all events pending on
1999         the media and all source elements.
2000         (WebCore::HTMLMediaElement::setNetworkState): Fire an error on the source element when the 
2001         the failure happened while processing one. Only call nonSupported() when the failure happened
2002         while processing media element 'src' attribute.
2003         (WebCore::HTMLMediaElement::havePotentialSourceChild): nextSourceChild -> selectNextSourceChild.
2004         Deal with selectNextSourceChild returning a KURL instead of a String.
2005         (WebCore::HTMLMediaElement::selectNextSourceChild): Renamed from nextSourceChild, add optional
2006         param to control whether or not errors are fired on a source element when it will not be used.
2007         Check safety of url here instead of waiting until loadResource(). Return a KURL instead of a
2008         String.
2009         (WebCore::HTMLMediaElement::initialURL): nextSourceChild -> selectNextSourceChild. Keep url as
2010         a KURL instead of a String.
2011         * html/HTMLMediaElement.h:
2012         (WebCore::HTMLMediaElement::):
2013
2014         * html/HTMLSourceElement.cpp:
2015         (WebCore::HTMLSourceElement::HTMLSourceElement): Initialize timer related variables.
2016         (WebCore::HTMLSourceElement::scheduleErrorEvent): New, start one-shot timer to fire an error
2017         event ASAP.
2018         (WebCore::HTMLSourceElement::cancelPendingErrorEvent): New, cancel pending error event.
2019         (WebCore::HTMLSourceElement::errorEventTimerFired): New, fire error event if it has not been
2020         cancelled.
2021         * html/HTMLSourceElement.h:
2022
2023         * html/MediaError.h: 
2024         (WebCore::MediaError::): MEDIA_ERR_NONE_SUPPORTED -> MEDIA_ERR_SRC_NOT_SUPPORTED
2025         * html/MediaError.idl: Ditto
2026
2027 2009-05-08  Dan Bernstein  <mitz@apple.com>
2028
2029         Reviewed by Maciej Stachowiak.
2030
2031         - fix <rdar://problem/6859955> Undoing typed text after selecting all
2032           leaves non-text areas highlighted
2033
2034         Test: fast/repaint/selection-clear.html
2035
2036         When RenderView::clearSelection() is called from
2037         SelectionController::nodeWillBeRemoved(), selected renderers may already
2038         be marked for layout, which means that they can no longer compute
2039         their selection repaint info. Instead, an empty IntRect (or GapRects) is
2040         returned, leading to incomplete repaint.
2041
2042         The fix is not to rely on individual renderers when clearing the
2043         selection, but instead, cache the bounding rectangle of the selected
2044         blocks' GapRects when setting the selection, and invalidate that
2045         entire rectangle when clearing it.
2046
2047         * rendering/RenderView.cpp:
2048         (WebCore::RenderView::setSelection): Added a parameter saying whether
2049         the repainting of selected blocks should include both
2050         previously-selected areas and newly-selected areas or only
2051         newly-selected areas. The default is both. Also compute
2052         m_cachedSelectionBounds to be the bounding rectangle of the
2053         new selection's BlockSelectionInfos' GapRects.
2054         (WebCore::RenderView::clearSelection): Repaint m_cachedSelectionBounds,
2055         and tell setSelection() that it should not paint areas that were in
2056         the old selection's BlockSelectionInfos' GapRects.
2057         * rendering/RenderView.h:
2058         (WebCore::RenderView::):
2059
2060 2009-05-08  Alexey Proskuryakov  <ap@webkit.org>
2061
2062         Reviewed by Maciej Stachowiak.
2063
2064         <rdar://problem/6868773> NPN_GetAuthenticationInfo does not work with non-permanent credentials
2065
2066         * WebCore.base.exp:
2067         * platform/network/mac/AuthenticationMac.h:
2068         (WebCore::WebCoreCredentialStorage::set):
2069         (WebCore::WebCoreCredentialStorage::get):
2070         * platform/network/mac/AuthenticationMac.mm:
2071         * platform/network/mac/ResourceHandleMac.mm:
2072         Moved WebCoreCredentialStorage to AuthenticationMac, so that it could be used from WebKit.
2073
2074 2009-05-08  Jedrzej Nowacki  <jedrzej.nowacki@nokia.com>
2075
2076         Reviewed by Simon Hausmann.
2077
2078         Fix the Qt build, add missing JSC_HOST_CALL macros to the runtime
2079         call methods.
2080
2081         * bridge/qt/qt_runtime.h:
2082
2083 2009-05-08  Jan Michael Alonzo  <jmalonzo@webkit.org>
2084
2085         Reviewed by Mark Rowe.
2086
2087         Add missing strings to localizedStrings.js
2088         https://bugs.webkit.org/show_bug.cgi?id=25635
2089
2090         Add the strings "Delete", "Key", "Refresh" and "Value".
2091
2092         * English.lproj/localizedStrings.js:
2093
2094 2009-05-08  Robert Hogan  <robert@roberthogan.net>
2095
2096         Reviewed, tweaked and landed by Alexey Proskuryakov.
2097
2098         https://bugs.webkit.org/show_bug.cgi?id=24992
2099         [Qt] crash at http://browserspy.dk/browser.php
2100
2101         This cannot be easily tested in DRT, because it relies on interaction with QApplication,
2102         but the added assertions guard against re-introducing this issue.
2103
2104         * loader/FrameLoader.cpp: (WebCore::FrameLoader::didOpenURL): Don't make client calls
2105         while the frame is being constructed, because the intermediate state without a document
2106         is something we don't want to expose.
2107
2108         * page/Frame.cpp:
2109         (WebCore::Frame::setJSStatusBarText): Assert that the frame has a document, which is an
2110         approximation of it being in a consistent state for client calls.
2111         (WebCore::Frame::setJSDefaultStatusBarText): Ditto.
2112
2113 2009-05-07  Mark Rowe  <mrowe@apple.com>
2114
2115         Rubber-stamped by Oliver Hunt.
2116
2117         Fix <https://bugs.webkit.org/show_bug.cgi?id=25640>.
2118         Bug 25640: Crash on quit in r43384 nightly build on Leopard w/ Safari 4 beta installed
2119         
2120         Roll out r43366 as it removed symbols that Safari 4 Beta uses.
2121
2122         * dom/XMLTokenizerLibxml2.cpp:
2123         (WebCore::matchFunc):
2124         (WebCore::openFunc):
2125         (WebCore::createStringParser):
2126         (WebCore::createMemoryParser):
2127         * loader/icon/IconDatabase.cpp:
2128         (WebCore::IconDatabase::open):
2129         * platform/sql/SQLiteDatabase.cpp:
2130         (WebCore::SQLiteDatabase::SQLiteDatabase):
2131         (WebCore::SQLiteDatabase::close):
2132         * storage/DatabaseThread.cpp:
2133         (WebCore::DatabaseThread::DatabaseThread):
2134         (WebCore::DatabaseThread::start):
2135         (WebCore::DatabaseThread::databaseThread):
2136         * storage/LocalStorageThread.cpp:
2137         (WebCore::LocalStorageThread::LocalStorageThread):
2138         (WebCore::LocalStorageThread::start):
2139         (WebCore::LocalStorageThread::localStorageThread):
2140         (WebCore::LocalStorageThread::scheduleImport):
2141         (WebCore::LocalStorageThread::scheduleSync):
2142         (WebCore::LocalStorageThread::terminate):
2143         * workers/WorkerThread.cpp:
2144         (WebCore::WorkerThread::WorkerThread):
2145         (WebCore::WorkerThread::start):
2146
2147 2009-05-08  Xan Lopez  <xlopez@igalia.com>
2148
2149         Reviewed by Gustavo Noronha.
2150
2151         Unify scrolling code via adjustments and keys. Use the WebCore
2152         defined constants, since that's what people are most used to at
2153         this point.
2154
2155         * platform/gtk/ScrollViewGtk.cpp:
2156         (WebCore::ScrollView::platformHandleHorizontalAdjustment):
2157         (WebCore::ScrollView::platformHandleVerticalAdjustment):
2158
2159 2009-05-07  David Levin  <levin@chromium.org>
2160
2161         Reviewed by NOBODY.
2162         Suggested by Oliver Hunt.
2163
2164         Rolling back http://trac.webkit.org/changeset/43385
2165         because we have to use mac artwork for the underline on OSX.
2166
2167         * platform/graphics/cg/GraphicsContextCG.cpp:
2168         * platform/graphics/mac/GraphicsContextMac.mm:
2169         (WebCore::createPatternColor):
2170         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
2171         * platform/graphics/win/GraphicsContextCGWin.cpp:
2172         (WebCore::setCGStrokeColor):
2173         (WebCore::spellingPatternColor):
2174         (WebCore::grammarPatternColor):
2175         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
2176
2177 2009-05-07  John Grabowski  <jrg@chromium.org>
2178
2179         Reviewed by Simon Fraser.
2180   
2181         https://bugs.webkit.org/show_bug.cgi?id=25573
2182         Unify use of CG-common routine for drawLineForMisspellingOrBadGrammar.
2183         Cleanup for WebKit, but required for Chromium happiness.
2184
2185         * platform/graphics/cg/GraphicsContextCG.cpp:
2186         (WebCore::spellingPatternColor):
2187         (WebCore::grammarPatternColor):
2188         (WebCore::GraphicsContext::drawLineForMisspellingOrBadGrammar):
2189         * platform/graphics/mac/GraphicsContextMac.mm:
2190         * platform/graphics/win/GraphicsContextCGWin.cpp:
2191
2192 2009-05-07  Darin Adler  <darin@apple.com>
2193
2194         Reviewed by Simon Fraser.
2195
2196         Bug 25575: Registered mutation event listener crashes HTMLMediaElement
2197         https://bugs.webkit.org/show_bug.cgi?id=25575
2198
2199         Test: fast/media/video-controls-with-mutation-event-handler.html
2200
2201         * rendering/MediaControlElements.cpp:
2202         (WebCore::MediaControlTimelineElement::MediaControlTimelineElement): Don't call setAttribute.
2203         * rendering/RenderMedia.cpp:
2204         (WebCore::RenderMedia::createTimeline): Call setAttribute here.
2205
2206 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
2207
2208         Rubber Stamped by Dave Hyatt
2209         
2210         Shuffle the data members to minimize padding.
2211
2212         * rendering/RenderTableSection.cpp:
2213         (WebCore::RenderTableSection::RenderTableSection):
2214         * rendering/RenderTableSection.h:
2215
2216 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
2217
2218         Rubber Stamped by Dave Hyatt
2219         
2220         Shuffle the data members to make Events 8 bytes smaller in 64-bit.
2221
2222         * dom/Event.cpp:
2223         (WebCore::Event::Event):
2224         * dom/Event.h:
2225
2226 2009-05-07  Eric Seidel  <eric@webkit.org>
2227
2228         Reviewed by Beth Dakin.
2229
2230         Fix regression caused by r41469, add test case to prevent it from 
2231         happening again.
2232         https://bugs.webkit.org/show_bug.cgi?id=25252
2233   
2234         hasLayer() was true during removeOnlyThisLayer()/
2235         updateLayerPositions()
2236         which caused updateLayerPosition()'s walk up the render tree to 
2237         include offsets from the layer we were about to remove.
2238   
2239         I'm not 100% convinced that this wasn't a bug in 
2240         updateLayerPosition() or in RenderBoxModelObject::styleDidChange, 
2241         because the layer in question is not the containing block for the 
2242         block which gets laid out wrong. But this restores the previous 
2243         behavior and adds a test.  So the next time someone is in here re-
2244         factoring, they will at least know if they break something.
2245   
2246         Test: fast/layers/remove-only-this-layer-update.html
2247
2248         * rendering/RenderBoxModelObject.cpp:
2249         (WebCore::RenderBoxModelObject::destroyLayer):
2250         * rendering/RenderLayer.cpp:
2251         (WebCore::RenderLayer::removeOnlyThisLayer):
2252         * rendering/RenderObject.cpp:
2253         (WebCore::RenderObject::destroy):
2254         * rendering/RenderWidget.cpp:
2255         (WebCore::RenderWidget::destroy):
2256
2257 2009-05-07  Dmitry Titov  <dimich@chromium.org>
2258
2259         Attempt to fix GTK build.
2260
2261         * platform/graphics/GlyphPageTreeNode.h: add #include <string.h> to ensure memcpy and memset are defined.
2262
2263 2009-05-07  Oliver Hunt  <oliver@apple.com>
2264
2265         Reviewed by Gavin Barraclough.
2266
2267         Improve native call performance
2268
2269         Add calling convention declarations where necessary, and update bindings
2270         script to generate them as well.
2271
2272         * bindings/js/JSHTMLCollectionCustom.cpp:
2273         (WebCore::callHTMLCollection):
2274         * bindings/js/JSNodeListCustom.cpp:
2275         (WebCore::callNodeList):
2276         * bindings/js/JSPluginElementFunctions.cpp:
2277         (WebCore::callPlugin):
2278         * bindings/js/JSQuarantinedObjectWrapper.h:
2279         * bindings/scripts/CodeGeneratorJS.pm:
2280         * bridge/runtime_method.cpp:
2281         (JSC::callRuntimeMethod):
2282         * bridge/runtime_object.cpp:
2283         (JSC::callRuntimeObject):
2284
2285 2009-05-07  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
2286
2287         Reviewed by Dave Hyatt.
2288
2289         Fixes: https://bugs.webkit.org/show_bug.cgi?id=25617
2290
2291         Fix memory/performance regression because of too much form control related abstraction just for WMLs sake.
2292
2293         Remove FormControlElement and FormControlElementWithState base classes, as the overhead is too high for the
2294         gain. HTML has no benefit of that kind of abstraction, so we're going to move the functionality to Element directly.
2295
2296         The functions now living in FormControlElement(WithState) lived in Node/Element/HTMLFormControlElement before.
2297         This patches moves all of them in a central place in Element.h, as virtual functions with an inline default implementation.
2298         To avoid confusion like isEnabled() living on Node, before the creation of the FormControlElement abstraction layer, all
2299         methods are renamed to clarify where they belong to. All renames are listed here:
2300
2301         From FormControlElement:
2302         - isEnabled() -> isEnabledFormControl()
2303         - isReadOnly() -> isReadOnlyFormControl()
2304         - isTextControl() -> isTextFormControl()
2305         - valueMatchesRenderer() -> formControlValueMatchesRenderer()
2306         - setValueMatchesRenderer() -> setFormControlValueMatchesRenderer()
2307         - name() -> formControlName()
2308         - type() -> formControlType()
2309
2310         From FormControlElementWithState:
2311         - saveState() -> saveFormControlState()
2312         - restoreState() -> restoreFormControlState()
2313
2314         A lot of Element -> FormControlElement(WithState) casting is gone again, so it's not only a memory, but also a performance progression.
2315
2316         No testcases affected, no new tests needed.
2317
2318         * GNUmakefile.am:
2319         * WebCore.pro:
2320         * WebCore.vcproj/WebCore.vcproj:
2321         * WebCore.xcodeproj/project.pbxproj:
2322         * WebCoreSources.bkl:
2323         * css/CSSStyleSelector.cpp:
2324         (WebCore::CSSStyleSelector::canShareStyleWithElement):
2325         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2326         * dom/Document.cpp:
2327         (WebCore::Document::formElementsState):
2328         * dom/Document.h:
2329         (WebCore::Document::registerFormElementWithState):
2330         (WebCore::Document::unregisterFormElementWithState):
2331         * dom/Element.h:
2332         (WebCore::Element::isFormControlElement):
2333         (WebCore::Element::isEnabledFormControl):
2334         (WebCore::Element::isReadOnlyFormControl):
2335         (WebCore::Element::isTextFormControl):
2336         (WebCore::Element::formControlValueMatchesRenderer):
2337         (WebCore::Element::setFormControlValueMatchesRenderer):
2338         (WebCore::Element::formControlName):
2339         (WebCore::Element::formControlType):
2340         (WebCore::Element::saveFormControlState):
2341         (WebCore::Element::restoreFormControlState):
2342         * dom/FormControlElement.cpp: Removed.
2343         * dom/FormControlElement.h: Removed.
2344         * dom/FormControlElementWithState.cpp: Removed.
2345         * dom/FormControlElementWithState.h: Removed.
2346         * dom/InputElement.cpp:
2347         (WebCore::InputElement::setValueFromRenderer):
2348         * html/HTMLButtonElement.cpp:
2349         (WebCore::HTMLButtonElement::formControlType):
2350         * html/HTMLButtonElement.h:
2351         * html/HTMLFieldSetElement.cpp:
2352         (WebCore::HTMLFieldSetElement::formControlType):
2353         * html/HTMLFieldSetElement.h:
2354         * html/HTMLFormControlElement.cpp:
2355         (WebCore::HTMLFormControlElement::attach):
2356         (WebCore::HTMLFormControlElement::formControlName):
2357         (WebCore::HTMLFormControlElement::willValidate):
2358         (WebCore::HTMLFormControlElementWithState::HTMLFormControlElementWithState):
2359         (WebCore::HTMLFormControlElementWithState::~HTMLFormControlElementWithState):
2360         (WebCore::HTMLFormControlElementWithState::willMoveToNewOwnerDocument):
2361         (WebCore::HTMLFormControlElementWithState::didMoveToNewOwnerDocument):
2362         (WebCore::HTMLFormControlElementWithState::finishParsingChildren):
2363         * html/HTMLFormControlElement.h:
2364         (WebCore::HTMLFormControlElement::isTextFormControl):
2365         (WebCore::HTMLFormControlElement::isEnabledFormControl):
2366         (WebCore::HTMLFormControlElement::formControlValueMatchesRenderer):
2367         (WebCore::HTMLFormControlElement::setFormControlValueMatchesRenderer):
2368         (WebCore::HTMLFormControlElement::isReadOnlyFormControl):
2369         (WebCore::HTMLFormControlElement::type):
2370         (WebCore::HTMLFormControlElement::name):
2371         * html/HTMLInputElement.cpp:
2372         (WebCore::HTMLInputElement::formControlName):
2373         (WebCore::HTMLInputElement::formControlType):
2374         (WebCore::HTMLInputElement::saveFormControlState):
2375         (WebCore::HTMLInputElement::restoreFormControlState):
2376         (WebCore::HTMLInputElement::parseMappedAttribute):
2377         (WebCore::HTMLInputElement::detach):
2378         (WebCore::HTMLInputElement::setValue):
2379         (WebCore::HTMLInputElement::setFileListFromRenderer):
2380         * html/HTMLInputElement.h:
2381         (WebCore::HTMLInputElement::readOnly):
2382         (WebCore::HTMLInputElement::isTextFormControl):
2383         * html/HTMLKeygenElement.cpp:
2384         (WebCore::HTMLKeygenElement::formControlType):
2385         * html/HTMLKeygenElement.h:
2386         * html/HTMLLegendElement.cpp:
2387         (WebCore::HTMLLegendElement::formControlType):
2388         * html/HTMLLegendElement.h:
2389         * html/HTMLOptGroupElement.cpp:
2390         (WebCore::HTMLOptGroupElement::formControlType):
2391         * html/HTMLOptGroupElement.h:
2392         * html/HTMLOptionElement.cpp:
2393         (WebCore::HTMLOptionElement::formControlType):
2394         * html/HTMLOptionElement.h:
2395         * html/HTMLSelectElement.cpp:
2396         (WebCore::HTMLSelectElement::formControlType):
2397         (WebCore::HTMLSelectElement::saveFormControlState):
2398         (WebCore::HTMLSelectElement::restoreFormControlState):
2399         * html/HTMLSelectElement.h:
2400         * html/HTMLTextAreaElement.cpp:
2401         (WebCore::HTMLTextAreaElement::HTMLTextAreaElement):
2402         (WebCore::HTMLTextAreaElement::formControlType):
2403         (WebCore::HTMLTextAreaElement::saveFormControlState):
2404         (WebCore::HTMLTextAreaElement::restoreFormControlState):
2405         (WebCore::HTMLTextAreaElement::updateValue):
2406         (WebCore::HTMLTextAreaElement::setValue):
2407         * html/HTMLTextAreaElement.h:
2408         (WebCore::HTMLTextAreaElement::readOnly):
2409         (WebCore::HTMLTextAreaElement::isTextFormControl):
2410         * page/AccessibilityRenderObject.cpp:
2411         (WebCore::AccessibilityRenderObject::isEnabled):
2412         (WebCore::AccessibilityRenderObject::canSetFocusAttribute):
2413         * page/DragController.cpp:
2414         (WebCore::DragController::concludeEditDrag):
2415         * rendering/RenderMenuList.cpp:
2416         (WebCore::RenderMenuList::itemIsEnabled):
2417         * rendering/RenderTextControl.cpp:
2418         (WebCore::updateUserModifyProperty):
2419         (WebCore::RenderTextControl::setInnerTextValue):
2420         * rendering/RenderTextControl.h:
2421         * rendering/RenderTextControlMultiLine.cpp:
2422         (WebCore::RenderTextControlMultiLine::subtreeHasChanged):
2423         * rendering/RenderTextControlSingleLine.cpp:
2424         (WebCore::RenderTextControlSingleLine::updateFromElement):
2425         * rendering/RenderTheme.cpp:
2426         (WebCore::RenderTheme::isEnabled):
2427         (WebCore::RenderTheme::isReadOnlyControl):
2428         * rendering/RenderThemeChromiumMac.mm:
2429         (WebCore::RenderThemeChromiumMac::adjustMenuListStyle):
2430         * rendering/RenderThemeMac.mm:
2431         (WebCore::RenderThemeMac::adjustMenuListStyle):
2432         * rendering/RenderThemeSafari.cpp:
2433         (WebCore::RenderThemeSafari::adjustMenuListStyle):
2434         * wml/WMLFormControlElement.cpp:
2435         * wml/WMLFormControlElement.h:
2436         (WebCore::WMLFormControlElement::isReadOnlyFormControl):
2437         (WebCore::WMLFormControlElement::isTextFormControl):
2438         (WebCore::WMLFormControlElement::formControlValueMatchesRenderer):
2439         (WebCore::WMLFormControlElement::setFormControlValueMatchesRenderer):
2440         * wml/WMLInputElement.cpp:
2441         (WebCore::WMLInputElement::WMLInputElement):
2442         (WebCore::WMLInputElement::isKeyboardFocusable):
2443         (WebCore::WMLInputElement::isMouseFocusable):
2444         (WebCore::WMLInputElement::dispatchBlurEvent):
2445         (WebCore::WMLInputElement::formControlType):
2446         (WebCore::WMLInputElement::formControlName):
2447         (WebCore::WMLInputElement::setValue):
2448         (WebCore::WMLInputElement::saveFormControlState):
2449         (WebCore::WMLInputElement::restoreFormControlState):
2450         (WebCore::WMLInputElement::parseMappedAttribute):
2451         (WebCore::WMLInputElement::detach):
2452         (WebCore::WMLInputElement::appendFormData):
2453         (WebCore::WMLInputElement::init):
2454         * wml/WMLInputElement.h:
2455         (WebCore::WMLInputElement::isTextFormControl):
2456         * wml/WMLOptGroupElement.cpp:
2457         (WebCore::WMLOptGroupElement::formControlType):
2458         * wml/WMLOptGroupElement.h:
2459         * wml/WMLOptionElement.cpp:
2460         (WebCore::WMLOptionElement::formControlType):
2461         * wml/WMLOptionElement.h:
2462
2463 2009-05-07  Dmitry Titov  <dimich@chromium.org>
2464
2465         Reviewed by Alexey Proskuryakov and Adam Roben.
2466
2467         https://bugs.webkit.org/show_bug.cgi?id=25348
2468         Change WTF::ThreadIdentifier to be an actual (but wrapped) thread id, remove ThreadMap.
2469
2470         Most of the change is in WTF.
2471         Unless noted, all the following files changed to use the new ThreadIdentifier::isValid()
2472         method instead of just doing 'if(m_threadID)' kind of checks, since ThreadIdentifier
2473         is now a class rather then an integer.
2474         Also, there is no need to initialize threadID in constructors to 0 now.
2475
2476         * dom/XMLTokenizerLibxml2.cpp:
2477         (WebCore::libxmlLoaderThread): use DEFINE_STATIC_LOCAL and accessor function for static thread id,
2478         since now ThreadIdentifier needs construction and we avoid having global initializers.
2479         (WebCore::matchFunc): use the new accessor function.
2480         (WebCore::openFunc): ditto.
2481         (WebCore::createStringParser): ditto.
2482         (WebCore::createMemoryParser): ditto.
2483         * loader/icon/IconDatabase.cpp:
2484         (WebCore::IconDatabase::open):
2485         * platform/sql/SQLiteDatabase.cpp:
2486         (WebCore::SQLiteDatabase::SQLiteDatabase):
2487         (WebCore::SQLiteDatabase::close):
2488         * storage/DatabaseThread.cpp:
2489         (WebCore::DatabaseThread::start):
2490         (WebCore::DatabaseThread::databaseThread): remove m_threadID from debug output.
2491         * storage/LocalStorageThread.cpp:
2492         (WebCore::LocalStorageThread::start):
2493         (WebCore::LocalStorageThread::scheduleImport):
2494         (WebCore::LocalStorageThread::scheduleSync):
2495         (WebCore::LocalStorageThread::terminate):
2496         * workers/WorkerThread.cpp:
2497         (WebCore::WorkerThread::start):
2498         (WebCore::WorkerThread::WorkerThread):
2499         (WebCore::WorkerThread::start):
2500
2501 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
2502
2503         Rubber Stamped by Dave Hyatt
2504         
2505         Shuffle the data members to minimize padding.
2506
2507         * dom/ClassNames.h:
2508
2509 2009-05-07  Simon Fraser  <simon.fraser@apple.com>
2510
2511         Reviewed by Darin Adler
2512
2513         <rdar://problem/6864062> Shrink GlyphPage from 4112 to 2576 bytes in 64-bit
2514         https://bugs.webkit.org/show_bug.cgi?id=25605
2515
2516         Shrink GlyphPage by splitting the array of GlyphData, which has lots
2517         of padding, into separate Glyph and SimpleFontData* arrays.
2518
2519         * platform/graphics/Font.h:
2520         glyphDataForCharacter has to return a GlyphData by value now.
2521         
2522         * platform/graphics/FontFastPath.cpp:
2523         (WebCore::Font::glyphDataForCharacter):
2524         Return GlyphData by value.
2525         
2526         * platform/graphics/GlyphPageTreeNode.cpp:
2527         (WebCore::GlyphPageTreeNode::initializePage):
2528         Better encapsulation of GlyphPage, using the new methods.
2529
2530         * platform/graphics/Font.h:
2531         * platform/graphics/FontFastPath.cpp:
2532         (WebCore::Font::glyphDataForCharacter):
2533         * platform/graphics/GlyphPageTreeNode.cpp:
2534         (WebCore::GlyphPageTreeNode::initializePage):
2535         * platform/graphics/GlyphPageTreeNode.h:
2536         (WebCore::GlyphData::GlyphData):
2537         (WebCore::GlyphPage::indexForCharacter):
2538         (WebCore::GlyphPage::glyphDataForCharacter):
2539         (WebCore::GlyphPage::glyphDataForIndex):
2540         (WebCore::GlyphPage::glyphAt):
2541         (WebCore::GlyphPage::fontDataForCharacter):
2542         (WebCore::GlyphPage::setGlyphDataForCharacter):
2543         (WebCore::GlyphPage::setGlyphDataForIndex):
2544         (WebCore::GlyphPage::copyFrom):
2545         (WebCore::GlyphPage::clear):
2546
2547 2009-05-07  Dimitri Glazkov  <dglazkov@chromium.org>
2548
2549         Reviewed by Darin Fisher.
2550
2551         https://bugs.webkit.org/show_bug.cgi?id=25625
2552         Implement Image/Option constructors in V8 bindings.
2553
2554         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2555         (WebCore::NAMED_PROPERTY_GETTER): Removed old JS-based code.
2556         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp: Added.
2557         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp: Added.
2558
2559 2009-05-07  Brady Eidson  <beidson@apple.com>
2560
2561         I hate myself for doing this, but need to fix that ChangeLog entry.
2562
2563         * ChangeLog:
2564
2565 2009-05-07  Brady Eidson  <beidson@apple.com>
2566
2567         Rubberstamped by Darin Adler
2568
2569         * html/HTMLParser.cpp: Use the correct style of BUILDING_ON_* for WebCore.
2570         * html/HTMLParser.h: Ditto
2571
2572 2009-05-07  David Hyatt  <hyatt@apple.com>
2573
2574         Restore intrinsic margins to all form controls on Mac and Windows.  Some of this regressed in 43007
2575         when textareas were given explicit margins.  Some of it had already regressed earlier whenever intrinsic
2576         margins were turned off in themeWin.css.
2577
2578         Reviewed by Beth Dakin.
2579
2580         * css/html4.css:
2581         * css/themeWin.css:
2582
2583 2009-05-07  Brady Eidson  <beidson@apple.com>
2584
2585         Reviewed by Darin Adler and Alexey Proskuryakov.
2586
2587         <rdar://problem/6863795> Exception occurs in Mail when attempting to create signatures due to <head> element creation
2588
2589         * dom/Document.cpp:
2590         (WebCore::Document::implicitClose): Check shouldCreateImplicitHead() before creating it.
2591
2592         * html/HTMLParser.cpp:
2593         (WebCore::HTMLParser::handleError): Check shouldCreateImplicitHead() before creating it.
2594         (WebCore::HTMLParser::bodyCreateErrorCheck): Ditto.
2595         (WebCore::shouldCreateImplicitHead): For Tiger/Leopard when running under Mail, the implicit <head> shouldn't be created.
2596         * html/HTMLParser.h:
2597         (WebCore::shouldCreateImplicitHead): Inline implementation for non-Tiger/Leopard platforms
2598
2599 2009-05-07  Antony Sargent  <asargent@chromium.org>
2600
2601         Reviewed by Darin Fisher.
2602
2603         Fix a memory leak in V8EventListenerList::remove.
2604
2605         https://bugs.webkit.org/show_bug.cgi?id=25618
2606
2607         No new functionality so no new tests. 
2608
2609         * bindings/v8/V8EventListenerList.cpp:
2610         (WebCore::V8EventListenerList::remove):
2611
2612 2009-05-07  Darin Fisher  <darin@chromium.org>
2613
2614         Fix Chromium build bustage.
2615
2616         * bindings/v8/custom/V8HTMLFormElementCustom.cpp: Add missing
2617         HTMLCollection.h include.
2618
2619 2009-05-07  Chris Fleizach  <cfleizach@apple.com>
2620
2621         Reviewed by Beth Dakin.
2622
2623         Bug 25598: AX: if a radio button has a label and a title, the label is not exposed
2624         https://bugs.webkit.org/show_bug.cgi?id=25598
2625
2626         Test: accessibility/radio-button-title-label.html
2627
2628         * page/AccessibilityObject.h:
2629         (WebCore::AccessibilityObject::exposesTitleUIElement):
2630         * page/AccessibilityRenderObject.cpp:
2631         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
2632         (WebCore::AccessibilityRenderObject::titleUIElement):
2633         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
2634         * page/AccessibilityRenderObject.h:
2635
2636 2009-05-07  Darin Fisher  <darin@chromium.org>
2637
2638         Fix Chromium build bustage.
2639
2640         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
2641         (WebCore::INDEXED_PROPERTY_GETTER): ":" should be "::"
2642
2643 2009-05-07  Xan Lopez  <xlopez@igalia.com>
2644
2645         Reviewed by Gustavo Noronha.
2646
2647         https://bugs.webkit.org/show_bug.cgi?id=25610
2648         [GTK] text.caretOffset is reportedly always 0
2649
2650         Use the right function to get the caret offset in an
2651         element. selectionStart() would only work for text
2652         controls (there's even an ASSERT when calculating the selected
2653         text range). Instead just get the selection and get the offset of
2654         the start position.
2655
2656         * page/gtk/AccessibilityObjectWrapperAtk.cpp:
2657
2658 2009-05-07  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
2659
2660         Reviewed by Simon Hausmann.
2661
2662         [Qt] Fix support for antialiased CSS border-radius
2663         
2664         WebKit implements border-radius by drawing a double-size border,
2665         and then letting the clip constrain the border to the right width
2666         and position. This requires support for antialiased clipping, as
2667         well as painting, to get a nice smooth border.
2668         
2669         Qt only does antialiased clipping if the anti-alias flag is set
2670         at the time of clipping, so we have to enable this in the method
2671         addInnerRoundedRectClip(), as well as when we draw the border.
2672         
2673         Currently the raster-engine is the only Qt paint engine to support
2674         anti-aliased clipping, but the OpenGL and Mac paint engines could
2675         potentially support this in the future.
2676
2677         * platform/graphics/qt/GraphicsContextQt.cpp:
2678         (WebCore::GraphicsContext::strokeArc):
2679         (WebCore::GraphicsContext::addInnerRoundedRectClip):
2680
2681 2009-05-07  Adam Langley  <agl@google.com>
2682
2683         Reviewed by Eric Seidel.
2684
2685         Render empty optgroup elements.
2686
2687         https://bugs.webkit.org/show_bug.cgi?id=24900
2688
2689         Currently, optgroup elements which are empty are not rendered. The
2690         HTML specification gives no guidance on this situation.
2691
2692         However, the test for being empty is that they have no children, thus
2693         this will not render:
2694           <optgroup label="test"></optgroup>
2695         while this /will/ render (because of the text node child):
2696           <optgroup label="test"> </optgroup>
2697
2698         This patch will cause both cases to render which matches IE's and
2699         Firefox's behaviour.
2700
2701         The difference only appears when opening the select element and does
2702         not appear in the render tree. Thus, a manual layout-test is required.
2703
2704         * html/HTMLSelectElement.cpp:
2705         (WebCore::HTMLSelectElement::recalcListItems):
2706         * manual-tests/optgroup-empty-and-nested.html: Added.
2707
2708 2009-05-06  Julie Parent  <jparent@google.com>
2709
2710         Reviewed by Eric Seidel.
2711
2712         Bug 25608: Unused m_frame in ChromiumClipboard.
2713         https://bugs.webkit.org/show_bug.cgi?id=25608
2714
2715         * platform/chromium/ClipboardChromium.h:
2716         
2717         No tests added as this is only removing dead code, no functional changes.
2718
2719 2009-05-06  Dan Bernstein  <mitz@apple.com>
2720
2721         Reviewed by Simon Fraser and Justin Garcia.
2722
2723         - fix another part of <rdar://problem/6703873> Triple-click quoted line
2724           and type Return creates an extra quoted blank line
2725
2726         Test: editing/inserting/6703873-2.html
2727
2728         * editing/BreakBlockquoteCommand.cpp:
2729         (WebCore::BreakBlockquoteCommand::doApply): Corrected the logic for
2730         determining the first node that should go into the new blockquote
2731         given the split position: if it is at the end of a container, use the
2732         next node after the container. Otherwise, use the child at the
2733         position's offset.
2734
2735 2009-05-06  Kevin Ollivier  <kevino@theolliviers.com>
2736
2737         wx build fix, fixes for wx trunk builds.
2738
2739         * platform/graphics/wx/ImageWx.cpp:
2740         (WebCore::BitmapImage::draw):
2741         * platform/wx/RenderThemeWx.cpp:
2742         * platform/wx/wxcode/mac/carbon/fontprops.cpp:
2743         (wxFontProperties::wxFontProperties):
2744
2745 2009-05-06  Albert J. Wong  <ajwong@chromium.org>
2746
2747         Reviewed by Darin Fisher.
2748
2749         https://bugs.webkit.org/show_bug.cgi?id=25597
2750         Fix API drift compile errors that occurred while this was ifdef-ed out.
2751         The two big issues were that RenderObject::element() became
2752         RenderObject::node() and some of the wk* drawing functions had
2753         an extra theme parameter added to the argument list.
2754
2755         * rendering/RenderThemeChromiumMac.mm:
2756         (WebCore::RenderThemeChromiumMac::paintMediaFullscreenButton):
2757         (WebCore::RenderThemeChromiumMac::paintMediaMuteButton):
2758         (WebCore::RenderThemeChromiumMac::paintMediaPlayButton):
2759         (WebCore::RenderThemeChromiumMac::paintMediaSeekBackButton):
2760         (WebCore::RenderThemeChromiumMac::paintMediaSeekForwardButton):
2761         (WebCore::RenderThemeChromiumMac::paintMediaSliderTrack):
2762         (WebCore::RenderThemeChromiumMac::paintMediaSliderThumb):
2763
2764 2009-05-06  Jian Li  <jianli@chromium.org>
2765
2766         Reviewed by Dimitri Glazkov.
2767
2768         https://bugs.webkit.org/show_bug.cgi?id=25385
2769         Upstream changes to V8 bindings for supporting nested workers.
2770
2771         * bindings/v8/WorkerContextExecutionProxy.cpp:
2772         (WebCore::WorkerContextExecutionProxy::ToV8Object):
2773         (WebCore::WorkerContextExecutionProxy::EventTargetToV8Object):
2774         * bindings/v8/custom/V8WorkerCustom.cpp:
2775         (WebCore::getEventListener):
2776         (WebCore::ACCESSOR_SETTER WorkerOnmessage):
2777         (WebCore::CALLBACK_FUNC_DECL WorkerAddEventListener):
2778
2779 2009-05-06  Dave Moore  <davemoore@google.com>
2780
2781         Reviewed by Dimitri Glazkov.
2782
2783         https://bugs.webkit.org/show_bug.cgi?id=25513
2784         The V8 bindings convert every javascript property to its associated css style
2785         name. It then calls functions that convert that name to an id. This makes
2786         getting or setting css styles on elements slow.
2787         
2788         The patch fixes this by caching the results of the transformation, mapping a
2789         javascript property name to its css property id. It then calls the already
2790         public webkit methods that take the id in place of the string property names.
2791
2792         * bindings/v8/custom/V8CSSStyleDeclarationCustom.cpp:
2793
2794 2009-05-06  Nate Chapin  <japhet@google.com>
2795
2796         Reviewed by Dimitri Glazkov.
2797
2798         https://bugs.webkit.org/show_bug.cgi?id=25591
2799         Upstream V8HTMLFormElement from the Chromium repository.
2800
2801         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
2802         (WebCore::INDEXED_PROPERTY_GETTER HTMLFormElement): Upstreamed from Chromium repository
2803         (WebCore::NAMED_PROPERTY_GETTER HTMLFormElement): Changed empty element return case to return notHandledByInterceptor();
2804         (WebCore::CALLBACK_FUNC_DECL HTMLFormElementSubmit): Upstreamed from Chromium repository
2805
2806 2009-05-06  Albert J. Wong  <ajwong@chromium.org>
2807
2808         Reviewed by Dimitri Glazkov.
2809
2810         https://bugs.webkit.org/show_bug.cgi?id=25595
2811         Upstream V8CanvasPixelArrayCustom from chromium port tree.
2812
2813         * bindings/v8/V8CanvasPixelArrayCustom.cpp: Added.
2814
2815 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
2816
2817         Rubber-stampted by Eric Seidel
2818
2819         Add braces to clarify logic flow in RenderObject::adjustStyleDifference.
2820         Only affects ACCELERATED_COMPOSITING builds.
2821
2822         * rendering/RenderObject.cpp:
2823         (WebCore::RenderObject::adjustStyleDifference):
2824
2825 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
2826
2827         Reviewed by Dan Bernstein
2828
2829         <rdar://problem/6862550> Reduce size of RenderText in 64-bit
2830         
2831         Rearrange data members of RenderText so that an int comes
2832         first, to minimize padding.
2833
2834         * rendering/RenderText.cpp:
2835         (WebCore::RenderText::RenderText):
2836         * rendering/RenderText.h:
2837
2838 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
2839
2840         Reviewed by Dan Bernstein
2841
2842         <rdar://problem/6862823> Reduce size of RenderStyle in 64-bit
2843         
2844         Rearrange data members of RenderStyle to minimize padding
2845         when building for 64-bit.
2846
2847         * rendering/style/RenderStyle.cpp:
2848         (WebCore::RenderStyle::RenderStyle):
2849         * rendering/style/RenderStyle.h:
2850         (WebCore::):
2851
2852 2009-05-06  Darin Fisher  <darin@chromium.org>
2853
2854         Reviewed by Dimitri Glazkov.
2855
2856         https://bugs.webkit.org/show_bug.cgi?id=25596
2857
2858         Fixes Chromium build bustage caused by r43317 (making
2859         RefCountedBase::m_refCount private)
2860
2861         * page/chromium/AccessibilityObjectWrapper.h:
2862         (WebCore::AccessibilityObjectWrapper::AccessibilityObjectWrapper):
2863
2864 2009-05-06  Hin-Chung Lam  <hclam@chromium.org>
2865
2866         Reviewed by Darin Fisher.
2867
2868         https://bugs.webkit.org/show_bug.cgi?id=25593
2869
2870         Refactor for MediaPlayerPrivate for Chromium port. Remove
2871         the implementation of MediaPlayerPrivateInferface from it.
2872
2873         * platform\graphics\chromium\MediaPlayerPrivateChromium.h:
2874
2875 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
2876
2877         Reviewed by Dave Hyatt, Dan Bernstein
2878         
2879         <rdar://problem/6860197> Reduce the size of FontFallbackList in 64-bit
2880
2881         Re-order the data members of FontFallbackList to save 8 bytes when building 64-bit.
2882
2883         * platform/graphics/FontFallbackList.cpp:
2884         (WebCore::FontFallbackList::FontFallbackList):
2885         * platform/graphics/FontFallbackList.h:
2886
2887 2009-05-06  Simon Fraser  <simon.fraser@apple.com>
2888
2889         Reviewed by Darin Adler, Dan Bernstein
2890
2891         <rdar://problem/6860068> Reduce size of InlineBox in 64-bit
2892
2893         Re-order the data members of InlineBox to save 8 bytes when building 64-bit.
2894
2895         * rendering/InlineBox.h:
2896         (WebCore::InlineBox::InlineBox):
2897
2898 2009-05-06  David Levin  <levin@chromium.org>
2899
2900         Reviewed by Dimitri Glazkov.
2901
2902         https://bugs.webkit.org/show_bug.cgi?id=25588
2903         Adding the custom v8 bindings Document.location.
2904
2905         * bindings/v8/custom/V8DocumentLocationCustom.cpp: Added.
2906
2907 2009-05-06  Kevin McCullough  <kmccullough@apple.com>
2908
2909         -Clarified a comment
2910
2911         * editing/InsertParagraphSeparatorCommand.cpp:
2912         (WebCore::InsertParagraphSeparatorCommand::doApply):
2913
2914 2009-05-06  Nikolas Zimmermann  <nikolas.zimmermann@torchmobile.com>
2915
2916         Not reviewed. Fix WML enabled builds by including "MappedAttribute.h" in several places.
2917
2918         * wml/WMLAElement.cpp:
2919         * wml/WMLAccessElement.cpp:
2920         * wml/WMLBRElement.cpp:
2921         * wml/WMLCardElement.cpp:
2922         * wml/WMLDoElement.cpp:
2923         * wml/WMLElement.cpp:
2924         * wml/WMLFieldSetElement.cpp:
2925         * wml/WMLGoElement.cpp:
2926         * wml/WMLImageElement.cpp:
2927         * wml/WMLInputElement.cpp:
2928         * wml/WMLMetaElement.cpp:
2929         * wml/WMLOnEventElement.cpp:
2930         * wml/WMLOptGroupElement.cpp:
2931         * wml/WMLOptionElement.cpp:
2932         * wml/WMLPElement.cpp:
2933         * wml/WMLPostfieldElement.cpp:
2934         * wml/WMLSetvarElement.cpp:
2935         * wml/WMLTableElement.cpp:
2936         * wml/WMLTemplateElement.cpp:
2937         * wml/WMLTimerElement.cpp:
2938
2939 2009-05-06  Xan Lopez  <xlopez@igalia.com>
2940
2941         Reviewed by Gustavo Noronha.
2942
2943         https://bugs.webkit.org/show_bug.cgi?id=25526
2944         [Gtk] Additional support is needed for caret browsing
2945
2946         Emit AtkText::text-selection-changed when the selection changes
2947         and the current selection is of Range (ie, the start and end
2948         positions are different) type. This seems to match what Gecko
2949         does.
2950
2951         * editing/gtk/SelectionControllerGtk.cpp:
2952         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
2953
2954 2009-05-05  Xan Lopez  <xlopez@igalia.com>
2955
2956         Reviewed by Gustavo Noronha.
2957
2958         https://bugs.webkit.org/show_bug.cgi?id=25526
2959         [Gtk] Additional support is needed for caret browsing
2960
2961         Emit AtkText::text-caret-moved when selection changes.
2962
2963         * GNUmakefile.am:
2964         * editing/SelectionController.h:
2965         * editing/gtk/SelectionController.cpp: Added.
2966         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
2967
2968 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
2969
2970         Reviewed by Gustavo Noronha.
2971
2972         Use mozilla cursors for the previously not implemented
2973         cursors. The manual-tests/cursor.html is looking complete
2974         now.
2975
2976         * platform/gtk/CursorGtk.cpp:
2977         (WebCore::cellCursor):
2978         (WebCore::noDropCursor):
2979         (WebCore::progressCursor):
2980         (WebCore::noneCursor):
2981         (WebCore::notAllowedCursor):
2982         (WebCore::grabCursor):
2983         (WebCore::grabbingCursor):
2984         * platform/gtk/CursorGtk.h:
2985
2986 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
2987
2988         Reviewed by Xan Lopez.
2989
2990         Properly indent the header file.
2991
2992         * platform/gtk/CursorGtk.h:
2993
2994 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
2995
2996         Reviewed by Gustavo Noronha.
2997
2998         Use the mozilla copyright header. Use MPL1.1/GPL2.0
2999         and LGPL2.1 as the license compared to LGPL2.0.
3000
3001         * platform/gtk/CursorGtk.h:
3002
3003 2009-05-06  Holger Hans Peter Freyther  <zecke@selfish.org>
3004
3005         Reviewed by Gustavo Noronha.
3006
3007         Move PluginView::invalidateRegion from the
3008         TemporaryLinkStubs to PluginViewGtk.cpp and implement
3009         it with a call to Widget::invalidate() just like
3010         mac is doing. Optimisations would have to be window
3011         system specific.
3012
3013         * platform/gtk/TemporaryLinkStubs.cpp:
3014         * plugins/gtk/PluginViewGtk.cpp:
3015         (WebCore::PluginView::invalidateRegion):
3016
3017 2009-05-06  Jan Michael Alonzo  <jmalonzo@webkit.org>
3018
3019         Reviewed by Holger Freyther.
3020
3021         Misc fixes to InspectorClientGtk.
3022
3023         * GNUmakefile.am: Add localizedStrings.js to webinspector_DATA.
3024         This prevents copious amounts "Localized string not found" errors
3025         in the console
3026
3027 2009-05-06  Simon Hausmann  <simon.hausmann@nokia.com>
3028
3029         Reviewed by Ariya Hidayat.
3030
3031         Fix the Qt build on Windows.
3032
3033         * platform/graphics/GraphicsContext.h:
3034         (WebCore::GraphicsContext::shouldIncludeChildWindows): Implemented dummy accessor.
3035
3036 2009-05-06  Simon Hausmann  <simon.hausmann@nokia.com>
3037
3038         Reviewed by Tor Arne Vestbø.
3039
3040         Tweak WebCore.pro for being able to override the generated sources dir for the
3041         generated_files target.
3042
3043         * WebCore.pro:
3044
3045 2009-05-06  Simon Hausmann  <simon.hausmann@nokia.com>
3046
3047         Reviewed by Holger Freyther.
3048
3049         Fix the Qt/Windows build, use iface instead of interface to avoid conflict
3050         with VS2005 headers.
3051
3052         * css/CSSStyleSelector.cpp:
3053         (WebCore::CSSStyleSelector::SelectorChecker::checkPseudoState):
3054
3055 2009-05-06  Joerg Bornemann  <joerg.bornemann@trolltech.com>
3056
3057         Reviewed by Simon Hausmann.
3058
3059         We need to include StringExtras.h on Windows CE to access the strdup function.
3060
3061         * plugins/PluginStream.cpp:
3062
3063 2009-05-06  Soren Gjesse  <sgjesse@chromium.org>
3064
3065         Reviewed by Eric Seidel.
3066
3067         Changed the toString behaviour for non document dom node event handlers in the V8 bindings.
3068         https://bugs.webkit.org/show_bug.cgi?id=25544
3069
3070         In the V8 bindings non document dom node event handlers are wrapped in a number of with blocks and uses an inner
3071         function. This causes the default toString on such a handler to return all this wrapper code. As some web sites
3072         use the source of an event handler to create new functions this wrapper code causes compatibility problems.
3073
3074         Create a specific toString function for these handlers which will return a function source compatible with the
3075         source returned by the JSC bindings and other browsers.
3076
3077         Test: fast/events/event-function-toString.html
3078
3079         * bindings/v8/ScriptEventListener.cpp:
3080         (WebCore::createAttributeEventListener):
3081         * bindings/v8/V8LazyEventListener.cpp:
3082         (WebCore::V8LazyEventListener::V8LazyEventListener):
3083         (WebCore::V8LazyEventListener::getListenerFunction):
3084         (WebCore::V8LazyEventListenerToString):
3085         (WebCore::V8LazyEventListener::getWrappedListenerFunction):
3086         * bindings/v8/V8LazyEventListener.h:
3087         (WebCore::V8LazyEventListener::create):
3088
3089 2009-05-06  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3090
3091         Reviewed by Simon Hausmann.
3092
3093         Build QtWebKit as a framework on Mac
3094
3095         This implies both debug and release build by default, unless
3096         one of the --debug or --release config options are passed to
3097         the build-webkit script.
3098
3099         Frameworks can be disabled by passing CONFIG+=webkit_no_framework
3100         to the build-webkit script.
3101
3102         To be able to build both debug and release targets in parallel
3103         we have to use separate output directories for the generated
3104         sources, which is not optimal, but required to avoid race conditions.
3105
3106         An optimization would be to only require this spit-up on Mac.
3107
3108         * WebCore.pro:
3109
3110 2009-05-06  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
3111
3112         Reviewed by Simon Hausmann.
3113
3114         [Qt] Use $$GENERATED_SOURCES_DIR as output when running bison
3115
3116         A couple of the generators left the bison output file in the source
3117         tree, and then moved it into $$GENERATED_SOURCES_DIR, which did not
3118         work well when building release and debug configurations in parallel.
3119
3120         * WebCore.pro:
3121
3122 2009-05-06  Dan Bernstein  <mitz@apple.com>
3123
3124         Reviewed by Justin Garcia.
3125
3126         - fix an assertion failure in RemoveNodeCommand() when deleting a <br>
3127           between a block and a mail blockquote
3128
3129         Test: editing/deleting/removeNodeCommand-assert.html
3130
3131         * editing/DeleteSelectionCommand.cpp:
3132         (WebCore::DeleteSelectionCommand::mergeParagraphs): Pass the start block
3133         to prune() instead of passing m_upstreamStart.node(), because the latter
3134         may have been removed already.
3135
3136 2009-05-05  Eric Seidel  <eric@webkit.org>
3137
3138         No review, roll out only.
3139
3140         Roll out r23072 since it broke layout tests
3141
3142         * page/AccessibilityRenderObject.cpp:
3143         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3144
3145 2009-05-05  Ben Murdoch  <benm@google.com>
3146
3147         Reviewed by Eric Seidel.
3148         
3149         Add #if ENABLE(DATABASE) guards around database code so toggling ENABLE_DATABASE off does not break builds.
3150         https://bugs.webkit.org/show_bug.cgi?id=24776
3151
3152         No functional changes, thus no tests.
3153
3154         * bindings/js/JSCustomSQLStatementCallback.cpp:
3155         * bindings/js/JSCustomSQLStatementCallback.h:
3156         * bindings/js/JSCustomSQLStatementErrorCallback.cpp:
3157         * bindings/js/JSCustomSQLStatementErrorCallback.h:
3158         * bindings/js/JSCustomSQLTransactionCallback.cpp:
3159         * bindings/js/JSCustomSQLTransactionCallback.h:
3160         * bindings/js/JSCustomSQLTransactionErrorCallback.cpp:
3161         * bindings/js/JSCustomSQLTransactionErrorCallback.h:
3162         * bindings/js/JSDatabaseCustom.cpp:
3163         * bindings/js/JSSQLTransactionCustom.cpp:
3164         * loader/EmptyClients.h:
3165         * page/ChromeClient.h:
3166         * storage/ChangeVersionWrapper.cpp:
3167         * storage/ChangeVersionWrapper.h:
3168         * storage/Database.cpp:
3169         (WebCore::Database::databaseInfoTableName):
3170         * storage/Database.h:
3171         * storage/Database.idl:
3172         * storage/DatabaseTask.cpp:
3173         * storage/DatabaseTask.h:
3174         * storage/DatabaseThread.cpp:
3175         * storage/DatabaseThread.h:
3176         * storage/DatabaseTracker.cpp:
3177         * storage/DatabaseTracker.h:
3178         * storage/DatabaseTrackerClient.h:
3179         * storage/OriginQuotaManager.cpp:
3180         * storage/OriginQuotaManager.h:
3181         * storage/SQLStatement.cpp:
3182         * storage/SQLStatement.h:
3183         * storage/SQLTransaction.cpp:
3184         * storage/SQLTransaction.h:
3185         * storage/SQLTransaction.idl:
3186
3187 2009-05-05  Jeremy Moskovich  <jeremy@chromium.org>
3188
3189         Reviewed by Eric Seidel.
3190
3191         Add some documentation to InlineBox::x(),y().
3192         https://bugs.webkit.org/show_bug.cgi?id=25378
3193
3194         * rendering/InlineBox.h:
3195
3196 2009-05-05  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3197
3198         Reviewed by Eric Seidel.
3199
3200         Disable all the SVG features for WebKit/Qt if ENABLE_SVG=0 
3201         https://bugs.webkit.org/show_bug.cgi?id=24693
3202
3203         * WebCore.pro:
3204
3205 2009-05-05  Sankar Aditya Tanguturi  <sankaraditya@gmail.com>
3206
3207         Reviewed by Eric Seidel.
3208
3209         Anonymous blocks should not be exposed in accessibility tree.
3210         Part of https://bugs.webkit.org/show_bug.cgi?id=23072
3211
3212         Tests: accessibility/ignore-anonymous-block.html
3213                platform/win/accessibility/document-role.html
3214
3215         * page/AccessibilityRenderObject.cpp:
3216         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):Return
3217         true for Anonymous blocks. Matching Firefox 2.0.0.14
3218
3219 2009-05-05  Jungshik Shin  <jshin@chromium.org>
3220
3221         Reviewed by Alexey Proskuryakov.
3222
3223         http://bugs.webkit.org/show_bug.cgi?id=25487
3224
3225         For euc-kr and other 8bit Korean encodings
3226         (similar to euc-kr/windows-949), make document.charset return
3227         EUC-KR instead of windows-949. The latter is not recognized by
3228         Korean web servers.
3229
3230         Add domName method to TextEncoding to deal with cases where
3231         our internal encoding name does not match what's widely recognized
3232         by web servers. Currently, the only case is 'windows-949' (internal
3233         name) vs 'EUC-KR'.
3234
3235         Test: fast/encoding/euckr-name.html
3236
3237         * dom/Document.cpp:
3238         (WebCore::Document::encoding): Call TextEncoding.domName() instead
3239         of TextEncoding.name().
3240         * platform/text/TextEncoding.cpp:
3241         (WebCore::TextEncoding::domName): For the canonical name 'windows-949',
3242         return 'EUC-KR'. Otherwise, just return the canonical name.
3243         * platform/text/TextEncoding.h:
3244
3245 2009-05-05  Adam Langley  <agl@google.com>
3246
3247         Reviewed by Darin Adler.
3248
3249         Rendering fix for <select> elements.
3250         https://bugs.webkit.org/show_bug.cgi?id=25558
3251
3252         When switching a <select> element from display:none to default
3253         display, we would fail to invalidate the parent's pref widths in some
3254         situations:
3255
3256         When attaching the element, RenderMenuList::updateOptionsWidth would
3257         call setNeedsLayoutAndPrefWidthsRecalc before the parent pointer was
3258         set. This would mark the pref widths as dirty, but not for any parent
3259         objects.
3260
3261         When RenderObjectChildList::appendChildNode later calls
3262         setNeedsLayoutAndPrefWidthsRecalc again, with a valid parent pointer,
3263         nothing would be done because the pref widths were already dirty for.
3264         the RenderMenuList.
3265
3266         * rendering/RenderMenuList.cpp:
3267         (WebCore::RenderMenuList::updateOptionsWidth):
3268
3269 2009-05-05  Antony Sargent  <asargent@chromium.org>
3270
3271         Reviewed by Dimitri Glazkov.
3272
3273         Switch V8EventListenerList to use HashTable<T>.
3274         https://bugs.webkit.org/show_bug.cgi?id=25496
3275         
3276         This avoids some tricky issues with event listener removal in the 
3277         current implementation and has slightly better performance.
3278
3279         No new functionality so no new tests.
3280
3281         * bindings/v8/V8EventListenerList.cpp: Added V8EventListenerListIterator.
3282         * bindings/v8/V8EventListenerList.h:
3283         (WebCore::V8EventListenerList::size):
3284         * bindings/v8/WorkerContextExecutionProxy.cpp:
3285         (WebCore::WorkerContextExecutionProxy::initContextIfNeeded):
3286
3287 2009-05-05  Darin Fisher  <darin@chromium.org>
3288
3289         Fixing build bustage.
3290
3291         Add some missing includes to fix the Chromium build.
3292
3293         * bindings/v8/custom/V8DOMWindowCustom.cpp:
3294         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
3295
3296 2009-05-05  Darin Fisher  <darin@chromium.org>
3297
3298         Reviewed by Darin Adler.
3299
3300         https://bugs.webkit.org/show_bug.cgi?id=25570
3301
3302         history.{back,forward,go} should always be dispatched asynchronously,
3303         even when the history navigation would just result in scrolling the
3304         page.  This matches the behavior of other browsers like IE and FF.
3305
3306         Test: fast/history/back-forward-is-asynchronous.html
3307
3308         * loader/FrameLoader.cpp:
3309         (WebCore::FrameLoader::scheduleHistoryNavigation):
3310
3311 2009-05-05  Eric Seidel  <eric@webkit.org>
3312
3313         Reviewed by Simon Fraser.
3314
3315         Add an ASSERT(useTransforms) to mapLocalToContainer implementations in SVG.
3316         https://bugs.webkit.org/show_bug.cgi?id=25532
3317         https://bugs.webkit.org/show_bug.cgi?id=25568
3318
3319         Adding this ASSERT exposed a bug in SVGPaintServerPattern::setup
3320         which was causing transformed SVG text when filled/stroked with a
3321         pattern using patternUnits=objectBoundingBox to draw incorrectly.
3322
3323         I fixed the incorrect drawing (by removing the broken code) and added
3324         two test cases to test the fix:
3325         * svg/transforms/text-with-pattern-inside-transformed-html.xhtml
3326         * svg/transforms/text-with-pattern-with-svg-transform.svg
3327
3328         * rendering/RenderSVGRoot.cpp:
3329         (WebCore::RenderSVGRoot::mapLocalToContainer):
3330         * rendering/SVGRenderSupport.cpp:
3331         (WebCore::SVGRenderBase::mapLocalToContainer):
3332         * svg/graphics/SVGPaintServerPattern.cpp:
3333         (WebCore::SVGPaintServerPattern::setup):
3334
3335 2009-05-05  Greg Bolsinga  <bolsinga@apple.com>
3336
3337         Reviewed by Sam Weinig.
3338
3339         https://bugs.webkit.org/show_bug.cgi?id=25554
3340         
3341         Support HTML5 text control input types: email, number, tel, url
3342
3343         Test: fast/html/text-field-input-types.html
3344
3345         * bindings/objc/DOMHTML.mm:
3346         (-[DOMHTMLInputElement _isTextField]): Call HTMLInputElement::isTextField directly.
3347         * html/HTMLInputElement.cpp: Use the new types where appropriate.
3348         (WebCore::HTMLInputElement::setInputType):
3349         (WebCore::HTMLInputElement::type):
3350         (WebCore::HTMLInputElement::saveState):
3351         (WebCore::HTMLInputElement::restoreState):
3352         (WebCore::HTMLInputElement::accessKeyAction):
3353         (WebCore::HTMLInputElement::rendererIsNeeded):
3354         (WebCore::HTMLInputElement::createRenderer):
3355         (WebCore::HTMLInputElement::appendFormData):
3356         (WebCore::HTMLInputElement::valueWithDefault):
3357         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
3358         (WebCore::HTMLInputElement::defaultEventHandler):
3359         * html/HTMLInputElement.h: Ditto.
3360         (WebCore::HTMLInputElement::):
3361         (WebCore::HTMLInputElement::isTextField):
3362
3363 2009-04-01  miggilin  <mr.diggilin@gmail.com>
3364
3365         Reviewed by Kevin Ollivier.
3366
3367         Mouse wheel scrolling and keyboard shortcut support for wx.
3368         
3369         https://bugs.webkit.org/show_bug.cgi?id=24797
3370
3371         * platform/ScrollView.cpp:
3372         (WebCore::ScrollView::wheelEvent):
3373         * platform/wx/KeyboardEventWx.cpp:
3374         (WebCore::windowsKeyCodeForKeyEvent):
3375         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
3376         * platform/wx/ScrollViewWx.cpp:
3377         (WebCore::ScrollView::platformSetScrollPosition):
3378
3379 2009-05-05  Kevin Ollivier  <kevino@theolliviers.com>
3380
3381         wx build fix for Windows, add missing include.
3382         
3383         https://bugs.webkit.org/show_bug.cgi?id=24798
3384
3385         * platform/wx/wxcode/win/non-kerned-drawing.cpp:
3386
3387 2009-05-05  Chris Fleizach  <cfleizach@apple.com>
3388
3389         Reviewed by Beth Dakin.
3390
3391         Bug 25574: AXImageMap children links don't respond properly to accessibilityHitTest:
3392         https://bugs.webkit.org/show_bug.cgi?id=25574
3393
3394         Enable accessibility hit-testing for image map links. 
3395         Allow image map links to return AXURLs and AXAccessKey information.
3396
3397         Test: platform/mac/accessibility/imagemap-hittest.html
3398
3399         * page/AccessibilityImageMapLink.cpp:
3400         (WebCore::AccessibilityImageMapLink::url):
3401         * page/AccessibilityImageMapLink.h:
3402         * page/AccessibilityObject.h:
3403         (WebCore::AccessibilityObject::minValueForRange):
3404         * page/AccessibilityRenderObject.cpp:
3405         (WebCore::AccessibilityRenderObject::accessibilityParentForImageMap):
3406         (WebCore::AccessibilityRenderObject::accessibilityImageMapHitTest):
3407         (WebCore::AccessibilityRenderObject::doAccessibilityHitTest):
3408         * page/AccessibilityRenderObject.h:
3409         * page/mac/AccessibilityObjectWrapper.mm:
3410         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3411
3412 2009-05-05  Kevin McCullough  <kmccullough@apple.com>
3413
3414         Reviewed by Dan Bernstein.
3415
3416         <rdar://problem/6552129> Select a quote line and paste elsewhere, you
3417         get that line and an extra quoted blank line
3418         <rdar://problem/6609308> Triple-click a quoted header line, copy, paste
3419         onto an empty line makes an extra quoted line
3420
3421         - When pasting a blockquote with a newline, make sure we put the newline
3422         outside of the blockquote so that it is not quoted.
3423
3424         * editing/InsertParagraphSeparatorCommand.cpp:
3425         (WebCore::InsertParagraphSeparatorCommand::doApply):
3426
3427 2009-05-05  Jan Michael Alonzo  <jmalonzo@webkit.org>
3428
3429         Reviewed by Xan Lopez.
3430
3431         Call moz_gtk_shutdown on RenderThemeGtk destruction.
3432
3433         * platform/gtk/RenderThemeGtk.cpp:
3434         (WebCore::RenderThemeGtk::~RenderThemeGtk):
3435         * platform/gtk/RenderThemeGtk.h:
3436
3437 2009-05-05  Darin Adler  <darin@apple.com>
3438
3439         Reviewed by Steve Falkenburg.
3440
3441         <rdar://problem/6858340> REGRESSION: can't drag local HTML files into Safari because CFURLCreateWithFileSystemPath inserts "localhost"
3442
3443         * platform/win/ClipboardUtilitiesWin.cpp: (WebCore::urlFromPath): Remove localhost.
3444
3445 2009-05-05  Peter Kasting  <pkasting@google.com>
3446
3447         Reviewed by Brady Eidson.
3448
3449         Safety-check m_documentLoader before dereferencing.  While it seems
3450         unlikely this could fail (as Safari 3 shipped without this),
3451         technically almost any call can change or reset m_documentLoader.
3452
3453         * loader/FrameLoader.cpp:
3454         (WebCore::FrameLoader::receivedFirstData):
3455
3456 2009-05-05  Dan Bernstein  <mitz@apple.com>
3457
3458         - Tiger build fix
3459
3460         * css/CSSComputedStyleDeclaration.cpp:
3461         (WebCore::toCSSIdentifier):
3462
3463 2009-05-05  Peter Kasting  <pkasting@google.com>
3464
3465         Reviewed by Eric Seidel.
3466
3467         https://bugs.webkit.org/show_bug.cgi?id=25303
3468         No need to ref the internal buffer inside the Skia ImageDecoder.
3469
3470         * platform/image-decoders/skia/ImageDecoder.h:
3471         (WebCore::RGBA32Buffer::RGBA32Buffer):
3472         (WebCore::RGBA32Buffer::operator=):
3473         (WebCore::RGBA32Buffer::clear):
3474         (WebCore::RGBA32Buffer::copyBitmapData):
3475         (WebCore::RGBA32Buffer::bitmap):
3476         (WebCore::RGBA32Buffer::setSize):
3477         (WebCore::RGBA32Buffer::width):
3478         (WebCore::RGBA32Buffer::height):
3479         (WebCore::RGBA32Buffer::hasAlpha):
3480         (WebCore::RGBA32Buffer::setStatus):
3481         (WebCore::RGBA32Buffer::setHasAlpha):
3482         (WebCore::RGBA32Buffer::setRGBA):
3483
3484 2009-05-05  Dan Bernstein  <mitz@apple.com>
3485
3486         Reviewed by Darin Adler.
3487
3488         - fix https://bugs.webkit.org/show_bug.cgi?id=24192
3489           <rdar://problem/5760774> Replying to a Mail message that contains
3490           fixed width text can change the size of the text
3491
3492         Covered by existing tests: editing/pasteboard/5027857.html
3493                                    editing/pasteboard/paste-pre-002.html
3494
3495         * css/CSSComputedStyleDeclaration.cpp:
3496         (WebCore::CSSComputedStyleDeclaration::getFontSizeCSSValuePreferringKeyword):
3497         Added. If the font-size is keyword-based, returns the keyword value
3498         instead of the pixel size.
3499         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): If
3500         font-family is a generic family, return the generic family instead of
3501         the the internal string -webkit-[serif|sans-serif|cursive|fantasy
3502         |monospace].
3503         (WebCore::CSSComputedStyleDeclaration::copyInheritableProperties):
3504         For the font-size property, prefer a keyword value over a pixel size.
3505         * css/CSSComputedStyleDeclaration.h:
3506         * editing/ApplyStyleCommand.cpp:
3507         (WebCore::StyleChange::currentlyHasStyle): For the font-size property,
3508         call getFontSizeCSSValuePreferringKeyword().
3509         * platform/graphics/FontDescription.h:
3510         (WebCore::FontDescription::keywordSize): Changed the return type to
3511         unsigned.
3512         (WebCore::FontDescription::setKeywordSize): Changed the parameter type
3513         to unsigned.
3514         (WebCore::FontDescription::m_keywordSize): Changed the type of this
3515         4-bit field to unsigned, because it takes values as high as 8.
3516
3517 2009-05-05  Oliver Hunt  <oliver@apple.com>
3518
3519         Reviewed by Maciej Stachowiak.
3520
3521         Fix http/tests/misc/DOMContentLoaded-event.html
3522
3523         The native call performance improvement removed a few places where we
3524         unintentionally performed a toThisObject conversion.  This patch updates
3525         the bindings codegen to not rely on this bug.
3526
3527         * bindings/scripts/CodeGeneratorJS.pm:
3528
3529 2009-05-05  Holger Hans Peter Freyther  <zecke@selfish.org>
3530
3531         Reviewed by Xan Lopez and Gustavo Noronha.
3532
3533         Implement WebCore::directoryName for Gtk+.
3534
3535         * platform/gtk/FileSystemGtk.cpp:
3536         (WebCore::directoryName):
3537
3538 2009-05-05  Eric Seidel  <eric@webkit.org>
3539
3540         Reviewed by Adam Roben.
3541
3542         Fix mappedAttributes() access without NULL check
3543         https://bugs.webkit.org/show_bug.cgi?id=25553
3544
3545         SVGStyledElement::getPresentationAttribute was using mappedAttributes()
3546         without checking for NULL.
3547
3548         HTMLInputElement::setInputType also doesn't NULL check, but I was not
3549         able to get it to crash with a test case so I just added an ASSERT.
3550
3551         * html/HTMLInputElement.cpp:
3552         (WebCore::HTMLInputElement::setInputType):
3553         * svg/SVGStyledElement.cpp:
3554         (WebCore::SVGStyledElement::getPresentationAttribute):
3555
3556 2009-05-05  Holger Hans Peter Freyther  <zecke@selfish.org>
3557
3558         Reviewed by Xan Lopez.
3559
3560         Implement WebCore::imageTitle for Gtk+.
3561
3562         * platform/gtk/LocalizedStringsGtk.cpp:
3563         (WebCore::imageTitle):
3564
3565 2009-05-05  Oliver Hunt  <oliver@apple.com>
3566
3567         Reviewed by Gavin Barraclough.
3568
3569         Bug 25559: Improve native function call performance
3570         <https://bugs.webkit.org/show_bug.cgi?id=25559>
3571
3572         Add forwarding header necessary for compilation, and fix debugger
3573         to correctly account for change in JSFunction behaviour.
3574
3575         * ForwardingHeaders/jit/JITCode.h: Added.
3576         * inspector/JavaScriptDebugServer.cpp:
3577         (WebCore::JavaScriptDebugServer::recompileAllJSFunctions):
3578
3579 2009-05-05  Simon Hausmann  <simon.hausmann@nokia.com>
3580
3581         Reviewed by Ariya Hidayat.
3582
3583         Make convertValueToQVariant more robust against null JSValues.
3584
3585         Don't require the caller to do the null check.
3586
3587         * bridge/qt/qt_runtime.cpp:
3588         (JSC::Bindings::convertValueToQVariant):
3589
3590 2009-05-05  Eric Seidel  <eric@webkit.org>
3591
3592         No review, just a revert.
3593
3594         Roll out http://trac.webkit.org/changeset/43213 as it caused 4 tests to crash.
3595
3596         * rendering/RenderSVGRoot.cpp:
3597         (WebCore::RenderSVGRoot::mapLocalToContainer):
3598         * rendering/SVGRenderSupport.cpp:
3599         (WebCore::SVGRenderBase::mapLocalToContainer):
3600
3601 2009-05-04  Alexey Proskuryakov  <ap@webkit.org>
3602
3603         Reviewed by Dave Hyatt.
3604
3605         <rdar://problem/6576889> REGRESSION (r35185): Cannot watch Flash movies on omg.yahoo.com
3606
3607         The problem was caused by missing <head> element - we used to create it when moving a
3608         misplaced <style> element, but we now handle those in place. Other browsers always create
3609         a <head> element.
3610
3611         There is no guarantee that a <head> element always exists - first, it can be removed with
3612         removeChild or innerHTML, and also, we don't currently create it for frameset documents, or
3613         for manually created ones (e.g. ImageDocument).
3614
3615         Test: fast/parser/head-element-for-yahoo-player.html
3616
3617         * dom/Document.cpp: (WebCore::Document::implicitClose): Create a <head> element for about:blank.
3618         A removed comment talked about rdar://3758785, but that problem doesn't re-occur even if this
3619         code is removed completely.
3620
3621         * html/HTMLHtmlElement.cpp: (WebCore::HTMLHtmlElement::checkDTD): No longer allow <script>
3622         elements as children of <html>. This isn't directly related to this bug, but it was easier
3623         to fix both at once (IE and Firefox both don't allow such mispositioned <script> elements).
3624
3625         * html/HTMLParser.cpp:
3626         (WebCore::HTMLParser::handleError): Move <script> to <head> if <body> hasn't been created yet.
3627         Create a <head> it a <body> is created implicitly to contain some other element.
3628         (WebCore::HTMLParser::bodyCreateErrorCheck): Ensure that a <head> exists when <body> is
3629         explicitly present in source.
3630         (WebCore::HTMLParser::createHead): Do the work even if <html> element hasn't been created yet.
3631
3632 2009-05-04  Jakub Wieczorek  <faw217@gmail.com>
3633
3634         Reviewed by Simon Hausmann.
3635
3636         As Qtish implementation of MIMETypeRegistry::getMIMETypeForExtension()
3637         returns the application/octet-stream mimetype when it can't associate
3638         extension with any mimetype, it can happen that the application/octet-stream
3639         mimetype will hit the list of supported image formats. For instance,
3640         it is possible when QImageReader or QImageWriter support an extension
3641         that is not in the extensions map.
3642
3643         Make sure that this mimetype is not treated as displayable image type.
3644
3645         * platform/MIMETypeRegistry.cpp:
3646         (WebCore::initializeSupportedImageMIMETypes):
3647         (WebCore::initializeSupportedImageMIMETypesForEncoding):
3648
3649 2009-05-03  Eric Seidel  <eric@webkit.org>
3650
3651         Reviewed by Simon Fraser.
3652
3653         ASSERT(useTransforms) in SVG mapLocalToContainer implementations
3654         https://bugs.webkit.org/show_bug.cgi?id=25532
3655
3656         * rendering/RenderSVGRoot.cpp:
3657         (WebCore::RenderSVGRoot::mapLocalToContainer):
3658         * rendering/SVGRenderSupport.cpp:
3659         (WebCore::SVGRenderBase::mapLocalToContainer):
3660
3661 2009-05-03  Eric Seidel  <eric@webkit.org>
3662
3663         Reviewed by Simon Fraser.
3664
3665         Remove m_absoluteBounds hack from RenderSVGText
3666         https://bugs.webkit.org/show_bug.cgi?id=25532
3667
3668         No functional changes (SVGs inside CSS transformed HTML should theoretically repaint better)
3669
3670         * rendering/RenderSVGText.cpp:
3671         (WebCore::RenderSVGText::layout):
3672         * rendering/RenderSVGText.h:
3673
3674 2009-05-03  Eric Seidel  <eric@webkit.org>
3675
3676         Reviewed by Simon Fraser.
3677
3678         Remove the vestigial calculateLocalTransform()
3679         https://bugs.webkit.org/show_bug.cgi?id=25532
3680
3681         RenderSVGContainer is now the only render which needs this
3682         function, but it no longer returns the unused bool.
3683
3684         calculateLocalTransform() previously was called by the DOM before
3685         transform updates were part of layout().
3686
3687         * rendering/RenderForeignObject.cpp:
3688         (WebCore::RenderForeignObject::layout):
3689         * rendering/RenderForeignObject.h:
3690         (WebCore::RenderForeignObject::localTransform):
3691         * rendering/RenderPath.cpp:
3692         (WebCore::RenderPath::layout):
3693         * rendering/RenderPath.h:
3694         * rendering/RenderSVGContainer.cpp:
3695         * rendering/RenderSVGContainer.h:
3696         (WebCore::RenderSVGContainer::calculateLocalTransform):
3697         * rendering/RenderSVGImage.cpp:
3698         (WebCore::RenderSVGImage::layout):
3699         * rendering/RenderSVGImage.h:
3700         * rendering/RenderSVGText.cpp:
3701         (WebCore::RenderSVGText::layout):
3702         * rendering/RenderSVGText.h:
3703         * rendering/RenderSVGTransformableContainer.cpp:
3704         (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
3705         * rendering/RenderSVGTransformableContainer.h:
3706
3707 2009-05-03  Eric Seidel  <eric@webkit.org>
3708
3709         Reviewed by Simon Fraser.
3710
3711         Move more code into SVGRenderBase
3712         https://bugs.webkit.org/show_bug.cgi?id=25532
3713
3714         clippedOverflowRectForRepaint, computeRectForRepaint and mapLocalToContainer
3715         are now all shared via SVGRenderBase.
3716
3717         RenderForeignObject should also be sharing this code, but I've left it
3718         alone for now, as changing that would likely cause test changes.
3719
3720         No test changes.  It's possible that transformed <svg:image> elements will
3721         now show up with better metrics in the inspector.
3722
3723         * rendering/RenderSVGImage.cpp:
3724         (WebCore::RenderSVGImage::clippedOverflowRectForRepaint):
3725         (WebCore::RenderSVGImage::computeRectForRepaint):
3726         (WebCore::RenderSVGImage::mapLocalToContainer):
3727         * rendering/RenderSVGImage.h:
3728         * rendering/RenderSVGModelObject.cpp:
3729         (WebCore::RenderSVGModelObject::clippedOverflowRectForRepaint):
3730         (WebCore::RenderSVGModelObject::computeRectForRepaint):
3731         (WebCore::RenderSVGModelObject::mapLocalToContainer):
3732         * rendering/RenderSVGText.cpp:
3733         (WebCore::RenderSVGText::clippedOverflowRectForRepaint):
3734         (WebCore::RenderSVGText::computeRectForRepaint):
3735         (WebCore::RenderSVGText::mapLocalToContainer):
3736         * rendering/SVGRenderSupport.cpp:
3737         (WebCore::SVGRenderBase::clippedOverflowRectForRepaint):
3738         (WebCore::SVGRenderBase::computeRectForRepaint):
3739         (WebCore::SVGRenderBase::mapLocalToContainer):
3740         * rendering/SVGRenderSupport.h:
3741
3742 2009-05-03  Eric Seidel  <eric@webkit.org>
3743
3744         Reviewed by Simon Fraser.
3745
3746         Add SVGRenderBase to share logic between SVG renderers
3747         https://bugs.webkit.org/show_bug.cgi?id=25532
3748
3749         I've added an SVGRenderBase base class which is shared by
3750         all of the SVG renders now.  This patch is just moving code
3751         there are no functional changes in this patch.
3752
3753         Currently I've left these functions in SVGRenderSupport.h
3754         In a later patch I will rename SVGRenderSupport.* to SVGRenderBase.*
3755
3756         clampImageBufferSizeToViewport now takes a FrameView* which makes some code easier to read.
3757
3758         * rendering/RenderSVGBlock.h:
3759         * rendering/RenderSVGImage.h:
3760         * rendering/RenderSVGModelObject.h:
3761         * rendering/RenderSVGRoot.h:
3762         * rendering/SVGRenderSupport.cpp:
3763         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
3764         (WebCore::SVGRenderBase::finishRenderSVGContent):
3765         (WebCore::clampImageBufferSizeToViewport):
3766         (WebCore::SVGRenderBase::computeContainerBoundingBox):
3767         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
3768         * rendering/SVGRenderSupport.h:
3769         * rendering/SVGRootInlineBox.cpp:
3770         (WebCore::SVGRootInlineBoxPaintWalker::chunkStartCallback):
3771         (WebCore::SVGRootInlineBoxPaintWalker::chunkEndCallback):
3772         (WebCore::SVGRootInlineBox::paint):
3773         * svg/SVGMaskElement.cpp:
3774         (WebCore::SVGMaskElement::drawMaskerContent):
3775         * svg/SVGPatternElement.cpp:
3776         (WebCore::SVGPatternElement::buildPattern):
3777         * svg/graphics/SVGPaintServerGradient.cpp:
3778         (WebCore::createMaskAndSwapContextForTextGradient):
3779         (WebCore::clipToTextMask):
3780
3781 2009-05-05  Simon Hausmann  <simon.hausmann@nokia.com>
3782
3783         Unreviewed SVG build fix.
3784
3785         Include MappedAttribute.h after r43187.
3786
3787         * svg/SVGComponentTransferFunctionElement.cpp:
3788         * svg/SVGFEBlendElement.cpp:
3789         * svg/SVGFEColorMatrixElement.cpp:
3790         * svg/SVGFEComponentTransferElement.cpp:
3791         * svg/SVGFECompositeElement.cpp:
3792         * svg/SVGFEDiffuseLightingElement.cpp:
3793         * svg/SVGFEDisplacementMapElement.cpp:
3794         * svg/SVGFEGaussianBlurElement.cpp:
3795         * svg/SVGFEImageElement.cpp:
3796         * svg/SVGFELightElement.cpp:
3797         * svg/SVGFEMergeNodeElement.cpp:
3798         * svg/SVGFEOffsetElement.cpp:
3799         * svg/SVGFESpecularLightingElement.cpp:
3800         * svg/SVGFETileElement.cpp:
3801         * svg/SVGFETurbulenceElement.cpp:
3802         * svg/SVGFilterElement.cpp:
3803         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
3804
3805 2009-05-04  Brady Eidson  <beidson@apple.com>
3806
3807         Reviewed by Sam 'The Belly' Weinig
3808
3809         <rdar://problem/6828894> - Facebook photo uploader applet broken on Leopard only
3810
3811         In r41568 we started adding a default codebase attribute to <applet> tags if they didn't specify one
3812         themselves.  Leopard's Java plug-in mishandles this case and fails to load code for the applet.
3813
3814         The spirit of r41568 can be maintained by removing the "default codebase" piece and only performing
3815         the canLoad() check if a codebase was actually set on the applet tag.
3816
3817         * html/HTMLAppletElement.cpp:
3818         (WebCore::HTMLAppletElement::createRenderer): Don't create a default codebase attribute.
3819
3820         * loader/FrameLoader.cpp:
3821         (WebCore::FrameLoader::createJavaAppletWidget): Only perform the canLoad() check if the codebase was set.
3822
3823 2009-05-04  Adam Roben  <aroben@apple.com>
3824
3825         Windows build fix
3826
3827         * html/HTMLCollection.h:
3828         * html/HTMLFormElement.h:
3829         Declare CollectionCache as a struct, not a class, to match its
3830         definition.
3831
3832 2009-05-04  Chris Fleizach  <cfleizach@apple.com>
3833
3834         Reviewed by Beth Dakin, Oliver Hunt.
3835
3836         Bug 25557: REGRESSION: Canvas elements are ignored instead of being exposed as AXImage
3837         https://bugs.webkit.org/show_bug.cgi?id=25557
3838
3839         Test: accessibility/canvas.html
3840
3841         * page/AccessibilityRenderObject.cpp:
3842         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3843         (WebCore::AccessibilityRenderObject::roleValue):
3844
3845 2009-05-04  Brady Eidson  <beidson@apple.com>
3846
3847         Fix an ancient Changelog entry where Sam Weinig flat out lied and confused my exploration of a bug.
3848
3849         * ChangeLog
3850
3851 2009-05-04  Kai Brüning  <kai@granus.net>
3852
3853         Reviewed by Eric Seidel.
3854         
3855         https://bugs.webkit.org/show_bug.cgi?id=24883
3856         24883: Bad success test in parseXMLDocumentFragment in XMLTokenizerLibxml2.cpp
3857         
3858         Fixed test whether all the chunk has been processed to correctly count utf8 bytes.
3859
3860         Test: fast/innerHTML/innerHTML-nbsp.xhtml
3861
3862         * dom/XMLTokenizerLibxml2.cpp:
3863         (WebCore::parseXMLDocumentFragment):
3864
3865 2009-05-04  Darin Adler  <darin@apple.com>
3866
3867         Reviewed by Eric Seidel.
3868
3869         Bug 24924: remove Document.h include of Attr.h and HTMLCollection.h,
3870         and NamedMappedAttrMap.h include of MappedAttribute.h
3871         https://bugs.webkit.org/show_bug.cgi?id=24924
3872
3873         Make compiles faster, and debugging info smaller.
3874
3875         * GNUmakefile.am: Added new source files.
3876         * WebCore.pro: Ditto.
3877         * WebCore.scons: Ditto.
3878         * WebCore.vcproj/WebCore.vcproj: Ditto.
3879         * WebCore.xcodeproj/project.pbxproj: Ditto.
3880         * WebCoreSources.bkl: Ditto.
3881
3882         * bindings/js/JSHTMLCollectionCustom.cpp:
3883         (WebCore::toJS): Updated for new collection type names.
3884
3885         * dom/Document.cpp:
3886         (WebCore::Document::createAttribute): Added. No longer inline.
3887         (WebCore::Document::images): Updated for new collection type names.
3888         (WebCore::Document::applets): Ditto.
3889         (WebCore::Document::embeds): Ditto.
3890         (WebCore::Document::plugins): Ditto.
3891         (WebCore::Document::objects): Ditto.
3892         (WebCore::Document::scripts): Ditto.
3893         (WebCore::Document::links): Ditto.
3894         (WebCore::Document::forms): Ditto.
3895         (WebCore::Document::anchors): Ditto.
3896         (WebCore::Document::all): Ditto.
3897         (WebCore::Document::windowNamedItems): Ditto.
3898         (WebCore::Document::documentNamedItems): Ditto.
3899         (WebCore::Document::nameCollectionInfo): Ditto.
3900
3901         * dom/Document.h: Changed around includes and forward declarations.
3902         Updated for changes to collection types.
3903
3904         * dom/NamedMappedAttrMap.h: Removed include of MappedAttribute.h.
3905
3906         * html/CollectionCache.cpp: Copied from WebCore/html/HTMLCollection.cpp.
3907         Contains the class that used to be HTMLCollection::CollectionInfo.
3908         * html/CollectionCache.h: Copied from WebCore/html/HTMLCollection.h.
3909         Ditto.
3910
3911         * html/CollectionType.h: Copied from WebCore/html/HTMLCollection.h.
3912         Has the enum that used to be HTMLCollection::Type.
3913
3914         * html/HTMLCollection.cpp:
3915         (WebCore::HTMLCollection::HTMLCollection): Update for collection type change.
3916         (WebCore::HTMLCollection::create): Ditto.
3917         (WebCore::HTMLCollection::resetCollectionInfo): Ditto.
3918         (WebCore::HTMLCollection::itemAfter): Ditto.
3919         * html/HTMLCollection.h: Ditto.
3920
3921         * html/HTMLElement.cpp:
3922         (WebCore::HTMLElement::children): Updated for new collection type names.
3923         * html/HTMLFormCollection.cpp:
3924         (WebCore::HTMLFormCollection::formCollectionInfo): Ditto.
3925         (WebCore::HTMLFormCollection::HTMLFormCollection): Ditto.
3926         * html/HTMLFormCollection.h: Ditto.
3927         * html/HTMLFormElement.h: Ditto.
3928         * html/HTMLMapElement.cpp:
3929         (WebCore::HTMLMapElement::areas): Ditto.
3930         * html/HTMLNameCollection.cpp:
3931         (WebCore::HTMLNameCollection::HTMLNameCollection): Ditto.
3932         * html/HTMLNameCollection.h:
3933         (WebCore::HTMLNameCollection::create): Ditto.
3934         * html/HTMLSelectElement.h:
3935         (WebCore::HTMLSelectElement::collectionInfo): Ditto.
3936         * html/HTMLTableElement.cpp:
3937         (WebCore::HTMLTableElement::tBodies):Ditto.
3938         * html/HTMLTableRowElement.cpp:
3939         (WebCore::HTMLTableRowElement::cells):Ditto.
3940         * html/HTMLTableRowsCollection.cpp:
3941         (WebCore::HTMLTableRowsCollection::HTMLTableRowsCollection): Ditto.
3942         * html/HTMLTableSectionElement.cpp:
3943         (WebCore::HTMLTableSectionElement::rows): Ditto.
3944
3945         * bindings/js/JSDOMWindowBase.cpp: Added newly-needed includes.
3946         * bindings/js/JSHTMLFrameSetElementCustom.cpp: Ditto.
3947         * css/CSSStyleSelector.cpp: Ditto.
3948         * dom/Element.cpp: Ditto.
3949         * dom/InputElement.cpp: Ditto.
3950         * dom/NamedAttrMap.cpp: Ditto.
3951         * dom/NamedMappedAttrMap.cpp: Ditto.
3952         * dom/Node.cpp: Ditto.
3953         * dom/StyledElement.cpp: Ditto.
3954         * dom/StyledElement.h: Ditto.
3955         * editing/ApplyStyleCommand.cpp: Ditto.
3956         * editing/DeleteSelectionCommand.cpp: Ditto.
3957         * editing/Editor.cpp: Ditto.
3958         * editing/EditorCommand.cpp: Ditto.
3959         * editing/InsertParagraphSeparatorCommand.cpp: Ditto.
3960         * editing/ReplaceSelectionCommand.cpp: Ditto.
3961         * editing/markup.cpp: Ditto.
3962         * html/CanvasRenderingContext2D.cpp: Ditto.
3963         * html/HTMLAnchorElement.cpp: Ditto.
3964         * html/HTMLAppletElement.cpp: Ditto.
3965         * html/HTMLAreaElement.cpp: Ditto.
3966         * html/HTMLBRElement.cpp: Ditto.
3967         * html/HTMLBaseElement.cpp: Ditto.
3968         * html/HTMLBodyElement.cpp: Ditto.
3969         * html/HTMLButtonElement.cpp: Ditto.
3970         * html/HTMLCanvasElement.cpp: Ditto.
3971         * html/HTMLDivElement.cpp: Ditto.
3972         * html/HTMLEmbedElement.cpp: Ditto.
3973         * html/HTMLFontElement.cpp: Ditto.
3974         * html/HTMLFormControlElement.cpp: Ditto.
3975         * html/HTMLFormElement.cpp: Ditto.
3976         * html/HTMLFrameElement.cpp: Ditto.
3977         * html/HTMLFrameElementBase.cpp: Ditto.
3978         * html/HTMLFrameSetElement.cpp: Ditto.
3979         * html/HTMLHRElement.cpp: Ditto.
3980         * html/HTMLIFrameElement.cpp: Ditto.
3981         * html/HTMLImageElement.cpp: Ditto.
3982         * html/HTMLInputElement.cpp: Ditto.
3983         * html/HTMLIsIndexElement.cpp: Ditto.
3984         * html/HTMLKeygenElement.cpp: Ditto.
3985         * html/HTMLLIElement.cpp: Ditto.
3986         * html/HTMLLinkElement.cpp: Ditto.
3987         * html/HTMLMarqueeElement.cpp: Ditto.
3988         * html/HTMLMetaElement.cpp: Ditto.
3989         * html/HTMLOListElement.cpp: Ditto.
3990         * html/HTMLObjectElement.cpp: Ditto.
3991         * html/HTMLOptionElement.cpp: Ditto.
3992         * html/HTMLParagraphElement.cpp: Ditto.
3993         * html/HTMLParamElement.cpp: Ditto.
3994         * html/HTMLPlugInElement.cpp: Ditto.
3995         * html/HTMLPreElement.cpp: Ditto.
3996         * html/HTMLScriptElement.cpp: Ditto.
3997         * html/HTMLSelectElement.cpp: Ditto.
3998         * html/HTMLStyleElement.cpp: Ditto.
3999         * html/HTMLTableCaptionElement.cpp: Ditto.
4000         * html/HTMLTableCellElement.cpp: Ditto.
4001         * html/HTMLTableColElement.cpp: Ditto.
4002         * html/HTMLTablePartElement.cpp: Ditto.
4003         * html/HTMLTextAreaElement.cpp: Ditto.
4004         * html/HTMLTokenizer.cpp: Ditto.
4005         * html/HTMLUListElement.cpp: Ditto.
4006         * html/HTMLVideoElement.cpp: Ditto.
4007         * html/HTMLViewSourceDocument.cpp: Ditto.
4008         * loader/ImageDocument.cpp: Ditto.
4009         * page/Frame.cpp: Ditto.
4010         * rendering/RenderTreeAsText.cpp: Ditto.
4011         * svg/SVGAElement.cpp: Ditto.
4012         * svg/SVGAnimateMotionElement.cpp: Ditto.
4013         * svg/SVGAnimateTransformElement.cpp: Ditto.
4014         * svg/SVGAnimationElement.cpp: Ditto.
4015         * svg/SVGCircleElement.cpp: Ditto.
4016         * svg/SVGClipPathElement.cpp: Ditto.
4017         * svg/SVGCursorElement.cpp: Ditto.
4018         * svg/SVGElement.cpp: Ditto.
4019         * svg/SVGEllipseElement.cpp: Ditto.
4020         * svg/SVGExternalResourcesRequired.cpp: Ditto.
4021         * svg/SVGFitToViewBox.cpp: Ditto.
4022         * svg/SVGFontFaceElement.cpp: Ditto.
4023         * svg/SVGFontFaceUriElement.cpp: Ditto.
4024         * svg/SVGForeignObjectElement.cpp: Ditto.
4025         * svg/SVGGlyphElement.cpp: Ditto.
4026         * svg/SVGGradientElement.cpp: Ditto.
4027         * svg/SVGImageElement.cpp: Ditto.
4028         * svg/SVGLangSpace.cpp: Ditto.
4029         * svg/SVGLineElement.cpp: Ditto.
4030         * svg/SVGLinearGradientElement.cpp: Ditto.
4031         * svg/SVGMarkerElement.cpp: Ditto.
4032         * svg/SVGMaskElement.cpp: Ditto.
4033         * svg/SVGPathElement.cpp: Ditto.
4034         * svg/SVGPatternElement.cpp: Ditto.
4035         * svg/SVGPolyElement.cpp: Ditto.
4036         * svg/SVGRadialGradientElement.cpp: Ditto.
4037         * svg/SVGRectElement.cpp: Ditto.
4038         * svg/SVGSVGElement.cpp: Ditto.
4039         * svg/SVGScriptElement.cpp: Ditto.
4040         * svg/SVGStopElement.cpp: Ditto.
4041         * svg/SVGStyleElement.cpp: Ditto.
4042         * svg/SVGStyledElement.cpp: Ditto.
4043         * svg/SVGStyledTransformableElement.cpp: Ditto.
4044         * svg/SVGTests.cpp: Ditto.
4045         * svg/SVGTextContentElement.cpp: Ditto.
4046         * svg/SVGTextElement.cpp: Ditto.
4047         * svg/SVGTextPathElement.cpp: Ditto.
4048         * svg/SVGTextPositioningElement.cpp: Ditto.
4049         * svg/SVGURIReference.cpp: Ditto.
4050         * svg/SVGUseElement.cpp: Ditto.
4051         * svg/SVGViewElement.cpp: Ditto.
4052         * svg/animation/SVGSMILElement.cpp: Ditto.
4053         * xml/XPathStep.cpp: Ditto.
4054
4055 2009-05-04  Pavel Feldman  <pfeldman@chromium.org>
4056
4057         Reviewed by Timothy Hatcher.
4058
4059         Do not instantiate hidden WebInspector panels. Otherwise they are hitting unimplemented InspectorController methods.
4060         https://bugs.webkit.org/show_bug.cgi?id=25520
4061
4062         * inspector/front-end/inspector.js:
4063         (WebInspector.loaded):
4064
4065 2009-05-04  Brady Eidson <beidson@apple.com>
4066
4067         Reviewed by Darin Adler.
4068
4069         <rdar://problem/6839881> With "Mail Contents of This Page" in Safari images don't appear in the Tiger Mail compose window
4070
4071         DocumentLoader::subresource() is the implementation for the WebKit API [WebDataSource subresourceForURL:] and has 
4072         particularly sticky behavior.  
4073
4074         If the DocumentLoader represents a WebArchive, this method should return ArchiveResources from that archive.  However, we 
4075         prefer CachedResources over ArchiveResources because they might represent fresher data than what was originally loaded 
4076         from the WebArchive.
4077
4078         In some instances, CachedResources are created and associated with the DocumentLoader but not immediately run through the 
4079         loading delegate machinery.  This was always a possibility, but the Preload Scanner made this significantly more likely.
4080
4081         When this happens and someone asks the WebDataSource for a subresource, it would prefer the CachedResource over an 
4082         ArchiveResource it has even if the CachedResource hasn't been loaded yet.  The CachedResource has nil data, so no
4083         WebResource is returned, and the client thinks the subresource doesn't exist even though it does.
4084
4085         This broke Tiger Mail and probably various other WebKit applications but has a fairly straightforward fix.
4086
4087         * loader/DocumentLoader.cpp:
4088         (WebCore::DocumentLoader::subresource): If there is a CachedResource but it hasn't been loaded yet, fallback to the
4089           ArchiveResource.
4090
4091 2009-05-04  Eric Carlson  <eric.carlson@apple.com>
4092
4093         Reviewed by Adam Roben.
4094         
4095         https://bugs.webkit.org/show_bug.cgi?id=25545
4096         Bug 25545: HTMLMediaElement: display anamorphic video correctly
4097         
4098         Tell QuickTime to use clean aperture mode so movies with non-square pixels are sized
4099         and displayed correctly.
4100
4101         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
4102         (WebCore::MediaPlayerPrivate::createQTMovie): Ask QuickTime to use clean aperture mode.
4103         * platform/graphics/win/QTMovieWin.cpp:
4104         (QTMovieWin::load): Ditto. Add ASSERT to ensure that static movie property array isn't 
4105         filled beyond capacity.
4106
4107 2009-05-03  Mark Rowe  <mrowe@apple.com>
4108
4109         Reviewed by Darin Adler.
4110
4111         Fix <https://bugs.webkit.org/show_bug.cgi?id=25332>.
4112         Bug 25332: Plug-in inserted in to DOM of PluginDocument fails to load
4113
4114         Only the first plug-in in a PluginDocument can use the main resource data.  For all
4115         subsequent plug-ins, such as the plug-in that ClickToFlash inserts when swapping itself
4116         out for the real Flash plug-in, we need to load the resource data in the same manner
4117         as for other embedded plug-ins.
4118
4119         * loader/FrameLoader.cpp:
4120         (WebCore::FrameLoader::loadPlugin):
4121
4122 2009-05-04  Simon Hausmann  <simon.hausmann@nokia.com>
4123
4124         Rubber-stamped by Ariya Hidayat.
4125
4126         Update the qrc file for the Web Inspector in the Qt build
4127         with missing files.
4128
4129         * inspector/front-end/WebKit.qrc:
4130
4131 2009-05-03  Eric Seidel  <eric@webkit.org>
4132
4133         Reviewed by George Staikos.
4134
4135         Move absoluteRects and absoluteQuads into RenderSVGInline and remove absoluteTransform() usage
4136         https://bugs.webkit.org/show_bug.cgi?id=25532
4137
4138         * rendering/RenderSVGInline.cpp:
4139         (WebCore::RenderSVGInline::absoluteRects):
4140         (WebCore::RenderSVGInline::absoluteQuads):
4141         * rendering/RenderSVGInline.h:
4142         * rendering/RenderSVGTSpan.cpp:
4143         * rendering/RenderSVGTSpan.h:
4144         * rendering/RenderSVGTextPath.cpp:
4145         * rendering/RenderSVGTextPath.h:
4146
4147 2009-05-03  Eric Seidel  <eric@webkit.org>
4148
4149         Reviewed by George Staikos.
4150
4151         Move RenderSVGText off of localToAbsolute()
4152         https://bugs.webkit.org/show_bug.cgi?id=25532
4153
4154         * rendering/RenderSVGText.cpp:
4155         (WebCore::RenderSVGText::absoluteRects):
4156         (WebCore::RenderSVGText::absoluteQuads):
4157
4158 2009-05-03  Eric Seidel  <eric@webkit.org>
4159
4160         Reviewed by George Staikos.
4161
4162         Remove broken absoluteTransform() code from RenderSVGInlineText
4163         https://bugs.webkit.org/show_bug.cgi?id=25532
4164
4165         This improved SVG text focus rings.
4166         This also improved SVG.getScreenCTM() results.
4167
4168         SVGSVGElement::getScreenCTM was passing "true" for the second argument in
4169         localToAbsolute, which is "fixed" it meant to pass "true" for the
4170         third argument (useTransforms).  That change alone caused no layout test changes, however
4171         before I fixed this, it was hitting ASSERT(!fixed) in RenderSVGRoot::mapLocalToContainer
4172
4173         mapLocalToContainer implementations really should be shared,
4174         but I'll do that in a later patch.
4175
4176         * rendering/RenderSVGInlineText.cpp:
4177         (WebCore::RenderSVGInlineText::styleDidChange):
4178         (WebCore::RenderSVGInlineText::absoluteQuads):
4179         (WebCore::RenderSVGInlineText::computeRepaintRectForRange):
4180         (WebCore::RenderSVGInlineText::computeRepaintQuadForRange):
4181         * rendering/RenderSVGInlineText.h:
4182         * rendering/RenderSVGRoot.cpp:
4183         (WebCore::RenderSVGRoot::mapLocalToContainer):
4184         * rendering/RenderSVGRoot.h:
4185         * rendering/RenderSVGText.cpp:
4186         (WebCore::RenderSVGText::mapLocalToContainer):
4187         * rendering/RenderSVGText.h:
4188         * svg/SVGSVGElement.cpp:
4189         (WebCore::SVGSVGElement::getScreenCTM):
4190
4191 2009-05-03  Eric Seidel  <eric@webkit.org>
4192
4193         Reviewed by George Staikos.
4194
4195         Remove dead code from RenderPath
4196         https://bugs.webkit.org/show_bug.cgi?id=25532
4197
4198         * rendering/RenderPath.cpp:
4199         * rendering/RenderPath.h:
4200
4201 2009-05-03  Eric Seidel  <eric@webkit.org>
4202
4203         Reviewed by George Staikos.
4204
4205         Share layout code between RenderSVGViewportContainer and RenderSVGContainer
4206         https://bugs.webkit.org/show_bug.cgi?id=25532
4207
4208         * rendering/RenderSVGContainer.cpp:
4209         (WebCore::RenderSVGContainer::layout):
4210         * rendering/RenderSVGContainer.h:
4211         (WebCore::RenderSVGContainer::calcViewport):
4212         * rendering/RenderSVGViewportContainer.cpp:
4213         (WebCore::RenderSVGViewportContainer::applyViewportClip):
4214         * rendering/RenderSVGViewportContainer.h:
4215
4216 2009-05-03  Eric Seidel  <eric@webkit.org>
4217
4218         Reviewed by George Staikos.
4219
4220         Remove redundant disableLayoutState() calls
4221         https://bugs.webkit.org/show_bug.cgi?id=25532
4222
4223         * rendering/RenderForeignObject.cpp:
4224         (WebCore::RenderForeignObject::layout):
4225         * rendering/RenderSVGContainer.cpp:
4226         (WebCore::RenderSVGContainer::layout):
4227         * rendering/RenderSVGViewportContainer.cpp:
4228         (WebCore::RenderSVGViewportContainer::layout):
4229
4230 2009-05-03  Eric Seidel  <eric@webkit.org>
4231
4232         Reviewed by George Staikos.
4233
4234         Simplify RenderForeignObject::paint and fix a repaint bug.
4235         Paint now calls applyTransformToPaintInfo which correctly transforms the damage rect.
4236         https://bugs.webkit.org/show_bug.cgi?id=16939
4237
4238         * rendering/RenderForeignObject.cpp:
4239         (WebCore::RenderForeignObject::paint):
4240
4241 2009-05-03  Hironori Bono  <hbono@chromium.org>
4242
4243         Reviewed by Eric Seidel.
4244
4245         Test: editing/spelling/spellcheck-attribute.html
4246
4247         Bug 14552: Add a way to disable spell checking for specific element
4248         https://bugs.webkit.org/show_bug.cgi?id=14552
4249
4250         For compatibility with Firefox, this code ascends the DOM tree when an element does
4251         not have its "spellcheck" attribute.
4252
4253         * editing/Editor.cpp:
4254         (WebCore::markMisspellingsOrBadGrammar): Retrieve the value of the "spellcheck"
4255         attribute of an element before calling a spell checker or a grammar checker.
4256         * html/HTMLAttributeNames.in: Add a "spellcheck" attribute.
4257
4258 2009-05-03  Sam Weinig  <sam@webkit.org>
4259
4260         Roll JSC API number marshaling back in one last time (I hope).
4261
4262 2009-05-03  Sam Weinig  <sam@webkit.org>
4263
4264         Roll JSC API number marshaling back out. It still breaks windows.
4265
4266 2009-05-03  Sam Weinig  <sam@webkit.org>
4267
4268         Roll JSC API number marshaling back in.
4269
4270 2009-05-02  Dan Bernstein  <mitz@apple.com>
4271
4272         Reviewed by Darin Adler.
4273
4274         - another fix for <rdar://problem/6617298> Typing delete on an unquoted
4275           blank line unquotes the preceding, quoted blank line
4276
4277         Test: editing/deleting/type-delete-after-quote-2.html
4278
4279         * editing/DeleteSelectionCommand.cpp:
4280         (WebCore::DeleteSelectionCommand::DeleteSelectionCommand): Initial