7f65057729b20224963b0b4a6d6e560a4a39b1c5
[WebKit-https.git] / WebCore / ChangeLog
1 2009-11-19  Beth Dakin  <bdakin@apple.com>
2
3        Build fix. No review needed.
4
5         * platform/chromium/ScrollbarThemeChromium.cpp:
6         (WebCore::ScrollbarThemeChromium::paintTickmarks):
7         * rendering/RenderMediaControlsChromium.cpp:
8         (WebCore::paintMediaButton):
9
10 2009-11-19  Beth Dakin  <bdakin@apple.com>
11       
12        Build fix. No review needed.
13
14         * rendering/RenderThemeChromiumSkia.cpp:
15         (WebCore::RenderThemeChromiumSkia::paintCheckbox):
16         (WebCore::RenderThemeChromiumSkia::paintRadio):
17         (WebCore::RenderThemeChromiumSkia::paintSearchFieldCancelButton):
18         (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsDecoration):
19         (WebCore::RenderThemeChromiumSkia::paintSearchFieldResultsButton):
20
21 2009-11-19  Beth Dakin  <bdakin@apple.com>
22
23        Build fix. No review needed.
24
25         * platform/graphics/qt/StillImageQt.cpp:
26         (WebCore::StillImage::draw):
27         * platform/graphics/qt/StillImageQt.h:
28
29 2009-11-19  Beth Dakin  <bdakin@apple.com>
30
31        Build fix. No review needed.
32
33         * rendering/RenderThemeWin.cpp:
34         (WebCore::RenderThemeWin::paintSearchFieldCancelButton):
35         (WebCore::RenderThemeWin::paintSearchFieldResultsDecoration):
36         (WebCore::RenderThemeWin::paintSearchFieldResultsButton):
37
38 2009-11-19  Beth Dakin  <bdakin@apple.com>
39
40        Build fix. No review needed.
41
42         * plugins/PluginView.cpp:
43         (WebCore::PluginView::paintMissingPluginIcon):
44
45 2009-11-19  Beth Dakin  <bdakin@apple.com>
46
47         Build fix. No review needed.
48
49         * platform/graphics/win/ImageCGWin.cpp:
50         (WebCore::BitmapImage::getHBITMAPOfSize):
51         (WebCore::BitmapImage::drawFrameMatchingSourceSize):
52
53 2009-11-19  Beth Dakin  <bdakin@apple.com>
54
55         Reviewed by Darin Adler.
56
57         Fix for https://bugs.webkit.org/show_bug.cgi?id=31321 Make -webkit-
58         color-correction work with untagged images
59
60         Image's draw(), drawPattern(), and fillWithSolidColor() functions 
61         now take a ColorSpace. A bunch of classes inherit from Image, so 
62         draw() and drawPattern() functions there must also take a 
63         ColorSpace.
64         * platform/graphics/Image.cpp:
65         (WebCore::Image::fillWithSolidColor):
66         (WebCore::Image::drawTiled):
67         * platform/graphics/Image.h:
68         * platform/graphics/BitmapImage.h:
69         * platform/graphics/GeneratedImage.cpp:
70         (WebCore::GeneratedImage::draw):
71         (WebCore::GeneratedImage::drawPattern):
72         * platform/graphics/GeneratedImage.h:
73         * platform/graphics/cg/PDFDocumentImage.cpp:
74         (WebCore::PDFDocumentImage::draw):
75         * platform/graphics/cg/PDFDocumentImage.h:
76         * svg/graphics/SVGImage.cpp:
77         (WebCore::SVGImage::draw):
78         * svg/graphics/SVGImage.h:
79
80         All of the drawImage() functions and drawTiled() functions of 
81         GraphicsContext now take a ColorSpace.
82         * platform/graphics/GraphicsContext.cpp:
83         (WebCore::GraphicsContext::drawImage):
84         (WebCore::GraphicsContext::drawTiledImage):
85         * platform/graphics/GraphicsContext.h:
86
87         This is where the actual work is done.
88         * platform/graphics/cg/ImageCG.cpp:
89         (WebCore::imageWithColorSpace): New static function that returns a 
90         copy of the given image in the given ColorSpace *IF* we should use 
91         the given ColorSpace. We will ignore the color space if the image 
92         is tagged and return 0. 
93         (WebCore::BitmapImage::draw): Now takes a ColorSpace and uses it to 
94         call imageWithColorSpace(). 
95         (WebCore::Image::drawPattern): Same.
96
97         Attempt to keep all ports building. 
98         * platform/graphics/cairo/ImageCairo.cpp:
99         (WebCore::BitmapImage::draw):
100         (WebCore::Image::drawPattern):
101         * platform/graphics/haiku/ImageHaiku.cpp:
102         (WebCore::BitmapImage::draw):
103         (WebCore::Image::drawPattern):
104         * platform/graphics/qt/ImageQt.cpp:
105         (WebCore::Image::drawPattern):
106         (WebCore::BitmapImage::draw):
107         * platform/graphics/skia/BitmapImageSingleFrameSkia.h:
108         * platform/graphics/skia/ImageSkia.cpp:
109         (WebCore::Image::drawPattern):
110         (WebCore::BitmapImage::draw):
111         (WebCore::BitmapImageSingleFrameSkia::draw):
112         * platform/graphics/wx/ImageWx.cpp:
113         (WebCore::BitmapImage::draw):
114         (WebCore::BitmapImage::drawPattern):
115
116         Callers of GraphicsContext's drawImage() and drawTiled() functions 
117         now need to send a ColorSpace.
118         * html/HTMLCanvasElement.cpp:
119         (WebCore::HTMLCanvasElement::paint):
120         * html/canvas/CanvasRenderingContext2D.cpp:
121         (WebCore::CanvasRenderingContext2D::drawImage):
122         (WebCore::CanvasRenderingContext2D::drawImageFromRect):
123         * platform/ScrollView.cpp:
124         (WebCore::ScrollView::wheelEvent):
125         * platform/graphics/filters/FEColorMatrix.cpp:
126         (WebCore::FEColorMatrix::apply):
127         * platform/graphics/filters/FEComposite.cpp:
128         (WebCore::FEComposite::apply):
129         * platform/graphics/filters/SourceGraphic.cpp:
130         (WebCore::SourceGraphic::apply):
131         * platform/mac/ScrollbarThemeMac.mm:
132         (WebCore::ScrollbarThemeMac::paint):
133         * rendering/RenderBoxModelObject.cpp:
134         (WebCore::RenderBoxModelObject::paintFillLayerExtended):
135         (WebCore::RenderBoxModelObject::paintNinePieceImage):
136         * rendering/RenderImage.cpp:
137         (WebCore::RenderImage::paintReplaced):
138         * rendering/RenderLayer.cpp:
139         (WebCore::RenderLayer::paintResizer):
140         * rendering/RenderListMarker.cpp:
141         (WebCore::RenderListMarker::paint):
142         * rendering/RenderSVGImage.cpp:
143         (WebCore::RenderSVGImage::paint):
144         * rendering/RenderWidget.cpp:
145         (WebCore::RenderWidget::paint):
146         * svg/graphics/SVGPaintServerPattern.cpp:
147         (WebCore::SVGPaintServerPattern::setup):
148         * svg/graphics/SVGResourceFilter.cpp:
149         (WebCore::SVGResourceFilter::applyFilter):
150         * svg/graphics/filters/SVGFEMerge.cpp:
151         (WebCore::FEMerge::apply):
152         * svg/graphics/filters/SVGFEOffset.cpp:
153         (WebCore::FEOffset::apply):
154         * svg/graphics/filters/SVGFETile.cpp:
155         (WebCore::FETile::apply):
156
157 2009-11-19  Avi Drissman  <avi@chromium.org>
158
159         Reviewed by Darin Adler.
160
161         Properly create a CGImageRef on non-PLATFORM(MAC).
162         https://bugs.webkit.org/show_bug.cgi?id=27777
163
164         * platform/graphics/cg/ImageSourceCG.cpp:
165         (WebCore::sharedBufferGetBytesAtPosition):
166         (WebCore::sharedBufferRelease):
167         (WebCore::ImageSource::setData):
168         * platform/graphics/cg/ImageSourceCG.h:
169         * platform/graphics/cg/PDFDocumentImage.cpp:
170         (WebCore::PDFDocumentImage::dataChanged):
171
172 2009-11-19  Oliver Hunt  <oliver@apple.com>
173
174         Reviewed by Dave Hyatt.
175
176         -webkit-user-drag: element Drag images include overflow decorations from incorrect nodes
177         https://bugs.webkit.org/show_bug.cgi?id=31656
178
179         Make sure we're a child of the painting root before drawing overflow features.
180
181         * manual-tests/user-drag-with-decorations.html: Added.
182         * rendering/RenderBlock.cpp:
183         (WebCore::RenderBlock::paint):
184
185 2009-11-19  Dmitry Titov  <dimich@chromium.org>
186
187         Not reviewed, attempt to fix Chromium build.
188
189         * rendering/RenderMediaControlsChromium.cpp:
190         (WebCore::RenderMediaControlsChromium::paintMediaControlsPart): Add new enum values for Show/HideClosedCaptionButton to make it compile.
191
192 2009-11-19  Rahul Kuchhal  <kuchhal@chromium.org>
193
194         Reviewed by Darin Adler.
195
196         Do not assert when a high number is used for roman numerals in lists.
197         https://bugs.webkit.org/show_bug.cgi?id=31652
198
199         Test: fast/lists/ol-start-roman.html
200
201         * rendering/RenderListMarker.cpp:
202         (WebCore::toRoman): Increase the char array size.
203
204 2009-11-19  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
205
206         Rubber-stamped by Oliver Hunt.
207
208         Add translatable strings to cover validationMessage, after
209         r51172. Already covered by existing test.
210
211         * platform/gtk/LocalizedStringsGtk.cpp:
212         (WebCore::validationMessageValueMissingText):
213         (WebCore::validationMessageTypeMismatchText):
214         (WebCore::validationMessagePatternMismatchText):
215         (WebCore::validationMessageTooLongText):
216         (WebCore::validationMessageRangeUnderflowText):
217         (WebCore::validationMessageRangeOverflowText):
218         (WebCore::validationMessageStepMismatchText):
219
220 2009-11-19  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
221
222         Reviewed by Darin Adler.
223
224         Remove HAVE(FLOAT_H) guard
225         https://bugs.webkit.org/show_bug.cgi?id=31661
226
227         WebCore has a dependency on float.h, there is
228         no need to guard float.h.
229
230         No new tests as there is no functional change.
231
232         * html/HTMLInputElement.cpp: Remove include directive
233         for float.h as it is included in MathExtras.h already.
234
235 2009-11-19  Simon Fraser  <simon.fraser@apple.com>
236
237         Reviewed by Pavel Feldman.
238
239         Instrumentation should account for painting in compositing layers
240         https://bugs.webkit.org/show_bug.cgi?id=31674
241
242         Add calls to InspectorTimelineAgent for painting into compositing layers,
243         which is not accounted for in FrameView::paintContents().
244
245         * rendering/RenderLayerBacking.cpp:
246         (WebCore::RenderLayerBacking::paintIntoLayer):
247         Avoid fetching the FrameView multiple times.
248         
249         (WebCore::inspectorTimelineAgent):
250         (WebCore::RenderLayerBacking::paintContents):
251
252 2009-11-19  Eric Carlson  <eric.carlson@apple.com>
253
254         Reviewed by Dan Bernstein.
255
256         <rdar://problem/7035231>
257         Support closed caption in <video> element
258
259         Test: media/media-captions.html
260
261         * WebCore.base.exp:
262         * accessibility/AccessibilityMediaControls.cpp:
263         (WebCore::AccessibilityMediaControl::controlTypeName):
264             Define ShowClosedCaptionsButton and HideClosedCaptionsButton.
265
266         * css/CSSPrimitiveValueMappings.h:
267         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
268             Add MediaToggleClosedCaptionsButtonPart.
269
270         * css/CSSSelector.cpp:
271         (WebCore::CSSSelector::extractPseudoType):
272             Define and match mediaControlsToggleClosedCaptionsButton.
273
274         * css/CSSSelector.h:
275         (WebCore::CSSSelector::):
276         * css/CSSStyleSelector.cpp:
277         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
278             Define and match PseudoMediaControlsToggleClosedCaptions.
279
280         * css/CSSValueKeywords.in:
281             Define and use media-toggle-closed-captions-button.
282
283         * css/mediaControls.css:
284         * css/mediaControlsQuickTime.css:
285             Add webkit-media-controls-toggle-closed-captions-button.
286
287         * html/HTMLMediaElement.cpp:
288         (WebCore::HTMLMediaElement::HTMLMediaElement): 
289             Initialize m_closedCaptionsVisible.
290         (WebCore::HTMLMediaElement::loadInternal): 
291             Set m_closedCaptionsVisible to false.
292         (WebCore::HTMLMediaElement::hasClosedCaptions): 
293         (WebCore::HTMLMediaElement::closedCaptionsVisible): 
294         (WebCore::HTMLMediaElement::setClosedCaptionsVisible): 
295             New, captions internal methods.
296         (WebCore::HTMLMediaElement::setWebkitClosedCaptionsVisible): 
297         (WebCore::HTMLMediaElement::webkitClosedCaptionsVisible): 
298         (WebCore::HTMLMediaElement::webkitHasClosedCaptions): 
299             New, captions DOM API.
300
301         * html/HTMLMediaElement.h:
302         * html/HTMLMediaElement.idl:
303             Declare methods needed for captions API.
304
305         * platform/ThemeTypes.h:
306             Add MediaToggleClosedCaptionsButtonPart.
307
308         * platform/android/LocalizedStringsAndroid.cpp:
309         (WebCore::localizedMediaControlElementString):
310         (WebCore::localizedMediaControlElementHelpText):
311         (WebCore::localizedMediaTimeDescription):
312             Add empty implmentations.
313
314         * platform/graphics/MediaPlayer.cpp:
315         (WebCore::NullMediaPlayerPrivate::hasClosedCaptions):
316         (WebCore::NullMediaPlayerPrivate::setClosedCaptionsVisible):
317             New, empty implementations of media engine closed caption functions.
318         (WebCore::MediaPlayer::hasClosedCaptions):
319         (WebCore::MediaPlayer::setClosedCaptionsVisible):
320             New, call media engine closed caption functions.
321
322         * platform/graphics/MediaPlayer.h:
323         * platform/graphics/MediaPlayerPrivate.h:
324         (WebCore::MediaPlayerPrivateInterface::hasClosedCaptions):
325         (WebCore::MediaPlayerPrivateInterface::setClosedCaptionsVisible):
326             Declare new media engine methods.
327
328         * platform/graphics/mac/MediaPlayerPrivateQTKit.h:
329         * platform/graphics/mac/MediaPlayerPrivateQTKit.mm:
330         (WebCore::MediaPlayerPrivate::hasClosedCaptions):
331         (WebCore::MediaPlayerPrivate::setClosedCaptionsVisible):
332             New, QTKit implementation of closed caption methods.
333
334         * platform/gtk/LocalizedStringsGtk.cpp:
335         (WebCore::localizedMediaControlElementString):
336         (WebCore::localizedMediaControlElementHelpText):
337             Add help text for ShowClosedCaptionsButton and HideClosedCaptionsButton.
338
339         * platform/mac/WebCoreSystemInterface.h:
340         * platform/mac/WebCoreSystemInterface.mm:
341             Declare and initialize wkQTMovieHasClosedCaptions and wkQTMovieSetShowClosedCaptions.
342
343         * rendering/MediaControlElements.cpp:
344         (WebCore::MediaControlInputElement::MediaControlInputElement):
345             Deal with MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
346         (WebCore::MediaControlToggleClosedCaptionsButtonElement::MediaControlToggleClosedCaptionsButtonElement):
347         (WebCore::MediaControlToggleClosedCaptionsButtonElement::defaultEventHandler):
348         (WebCore::MediaControlToggleClosedCaptionsButtonElement::updateDisplayType):
349             New, implement the closed caption toggle button,
350
351         * rendering/MediaControlElements.h:
352             Define MediaShowClosedCaptionsButton and MediaHideClosedCaptionsButton,
353             declare MediaControlToggleClosedCaptionsButtonElement.
354
355         * rendering/RenderMedia.cpp:
356         (WebCore::RenderMedia::styleDidChange):
357         (WebCore::RenderMedia::createToggleClosedCaptionsButton):
358         (WebCore::RenderMedia::createStatusDisplay):
359         (WebCore::RenderMedia::updateControls):
360         (WebCore::RenderMedia::forwardEvent):
361         * rendering/RenderMedia.h:
362             Deal with m_toggleClosedCaptionsButton.
363
364         * rendering/RenderTheme.cpp:
365         (WebCore::RenderTheme::paint):
366             Deal with MediaToggleClosedCaptionsButtonPart.
367
368         * rendering/RenderTheme.h:
369         * rendering/RenderThemeMac.h:
370             Declare paintMediaToggleClosedCaptionsButton.
371
372         * rendering/RenderThemeMac.mm:
373         (WebCore::RenderThemeMac::paintMediaToggleClosedCaptionsButton):
374             New.
375         (WebCore::RenderThemeMac::shouldRenderMediaControlPart):
376             Don't render captions toggle button unless we are using the new theme, the
377             movie has captions, and the movie is in a <video> element since we currently
378             rely on QTKit to render the captions.
379
380         * rendering/style/RenderStyleConstants.h:
381             Define MEDIA_CONTROLS_TOGGLE_CLOSED_CAPTIONS_BUTTON.
382
383 2009-11-19  Kevin Ollivier  <kevino@theolliviers.com>
384
385         wx build fix. Add missing header.
386
387         * platform/wx/LocalizedStringsWx.cpp:
388
389 2009-11-19  Alexey Proskuryakov  <ap@apple.com>
390
391         Reviewed by Darin Adler.
392
393         https://bugs.webkit.org/show_bug.cgi?id=31634
394         Ignore realm for proxy protection spaces
395
396         Only affects WebSocket proxy authentication, cannot be tested in DRT.
397
398         * platform/network/ProtectionSpace.cpp:
399         (WebCore::operator==):
400         * platform/network/ProtectionSpaceHash.h:
401         (WebCore::ProtectionSpaceHash::hash):
402
403 2009-11-19  Olivier Goffart  <ogoffart@trolltech.com>
404
405         Reviewed by Simon Hausmann.
406
407         [Qt] Normalize signal and slot signatures.
408
409         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
410         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
411
412 2009-11-19  Alexander Pavlov  <apavlov@chromium.org>
413
414         Reviewed by Pavel Feldman.
415
416         Store cookie domains in the WebInspector object
417
418         The cookie domains have been moved from StoragePanel into WebInspector.
419         Also, the document URLs are now passed inside the WebInspector.addResource()
420         payload rather than pushed directly from InspectorController.
421         https://bugs.webkit.org/show_bug.cgi?id=31627
422
423         * inspector/InspectorController.cpp:
424         (WebCore::InspectorController::populateScriptObjects):
425         (WebCore::InspectorController::didFinishLoading):
426         * inspector/InspectorFrontend.cpp:
427         * inspector/InspectorFrontend.h:
428         * inspector/InspectorResource.cpp:
429         (WebCore::InspectorResource::createScriptObject):
430         (WebCore::InspectorResource::updateScriptObject):
431         * inspector/front-end/StoragePanel.js:
432         (WebInspector.StoragePanel.prototype.reset):
433         (WebInspector.StoragePanel.prototype.addCookieDomain):
434         * inspector/front-end/inspector.js:
435         (WebInspector.addResource):
436         (WebInspector.addCookieDomain):
437         (WebInspector.reset):
438
439 2009-11-19  Zoltan Horvath  <zoltan@webkit.org>
440
441         Reviewed by Darin Adler.
442
443         Allow custom memory allocation control for the other part of platform directory in WebCore
444         https://bugs.webkit.org/show_bug.cgi?id=31585
445
446         Inherits the following classes from FastAllocBase because these are
447         instantiated by 'new':
448
449         class RegularExpression    - instantiated at: WebCore/page/Frame.cpp:415
450         class TransformationMatrix - instantiated at: WebCore/rendering/TransformState.cpp:62
451         class Path                 - instantiated at: WebCore/html/HTMLAreaElement.cpp:73
452         class FontPlatformData     - instantiated at: WebCore/platform/graphics/qt/FontCacheQt.cpp:188
453
454         Inherits the following classes from Noncopyable because these are
455         instantiated by 'new' and no need to be copyable:
456
457         class Cursors                         - instantiated at: WebCore/platform/qt/CursorQt.cpp:146
458         class NetworkStateNotifier            - instantiated at: WebCore/platform/network/NetworkStateNotifier.cpp:37
459         struct CrossThreadResourceRequestData - instantiated at: WebCore/platform/network/ResourceRequestBase.cpp:71
460
461         class ImageDecoder - its child class is instantiated at: WebCore/platform/graphics/qt/ImageDecoderQt.cpp:46
462         class MediaPlayerPrivateInterface - its child class is instantiated at: WebCore/platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:119
463
464         * platform/graphics/MediaPlayerPrivate.h:
465         * platform/graphics/Path.h:
466         * platform/graphics/qt/FontPlatformData.h:
467         * platform/graphics/transforms/TransformationMatrix.h:
468         * platform/image-decoders/ImageDecoder.h:
469         * platform/network/NetworkStateNotifier.h:
470         * platform/network/ResourceRequestBase.h:
471         * platform/qt/CursorQt.cpp:
472         * platform/text/RegularExpression.h:
473
474 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
475
476         Unreviewed.
477
478         [Qt] Build fix for QtWebKit after r51172.
479
480         * platform/qt/Localizations.cpp:
481         (WebCore::validationMessageValueMissingText):
482         (WebCore::validationMessageTypeMismatchText):
483         (WebCore::validationMessagePatternMismatchText):
484         (WebCore::validationMessageTooLongText):
485         (WebCore::validationMessageRangeUnderflowText):
486         (WebCore::validationMessageRangeOverflowText):
487         (WebCore::validationMessageStepMismatchText):
488
489 2009-11-18  Dan Bernstein  <mitz@apple.com>
490
491         Reviewed by Simon Fraser.
492
493         Fixed <rdar://problem/7398987> Assertion failure in
494         RenderLayer::updateClipRects when a plug-in’s enclosing layer is
495         enclosed by a transformed layer
496
497         Tests: fast/layers/clip-rects-transformed-2.html
498                fast/layers/clip-rects-transformed.html
499
500         * rendering/RenderLayer.cpp:
501         (WebCore::RenderLayer::clippingRoot): Added. Finds the nearest ancestor
502         that is either transformed or composited. During painting and hit
503         testing, when a transformed or composited layer is hit, it becomes the
504         new root layer, which ultimately gets passed to calculateRects().
505         (WebCore::RenderLayer::childrenClipRect): Pass the clipping root as the
506         root layer to calculateRects(), and return the bounding box of the
507         transformed rectangle.
508         (WebCore::RenderLayer::selfClipRect): Ditto.
509         * rendering/RenderLayer.h:
510
511 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
512
513         Reviewed by Kenneth Rohde Christiansen.
514
515         [Qt] Remove support for Qt v4.3 or older versions
516         https://bugs.webkit.org/show_bug.cgi?id=29469
517
518         No new tests as there is no change if compiled with 
519         Qt v4.4 or later version.
520
521         * WebCore.pro:
522         * dom/XMLTokenizerQt.cpp:
523         (WebCore::EntityResolver::resolveUndeclaredEntity):
524         (WebCore::XMLTokenizer::XMLTokenizer):
525         (WebCore::XMLTokenizer::~XMLTokenizer):
526         (WebCore::XMLTokenizer::doWrite):
527         (WebCore::XMLTokenizer::startDocument):
528         (WebCore::XMLTokenizer::parseDtd):
529         * platform/graphics/qt/FontQt.cpp:
530         * platform/graphics/qt/FontQt43.cpp: Removed.
531         * platform/graphics/qt/ImageQt.cpp:
532         * platform/network/ResourceHandleInternal.h:
533         * platform/network/qt/QNetworkReplyHandler.cpp:
534         * platform/network/qt/QNetworkReplyHandler.h:
535         * platform/network/qt/ResourceHandleQt.cpp:
536         (WebCore::ResourceHandle::start):
537         (WebCore::ResourceHandle::cancel):
538         (WebCore::ResourceHandle::loadResourceSynchronously):
539         (WebCore::ResourceHandle::setDefersLoading):
540         * platform/network/qt/ResourceRequest.h:
541         * platform/network/qt/ResourceRequestQt.cpp:
542         * platform/qt/ClipboardQt.cpp:
543         (WebCore::ClipboardQt::clearData):
544         * platform/qt/CookieJarQt.cpp:
545         (WebCore::cookieJar):
546         (WebCore::setCookies):
547         (WebCore::cookies):
548         (WebCore::cookiesEnabled):
549         * platform/qt/PlatformKeyboardEventQt.cpp:
550         (WebCore::keyIdentifierForQtKeyCode):
551         (WebCore::windowsKeyCodeForKeyEvent):
552         * platform/text/qt/TextBoundaries.cpp:
553         * platform/text/qt/TextBreakIteratorQt.cpp:
554         * plugins/qt/PluginDataQt.cpp:
555         (WebCore::PluginData::initPlugins):
556
557 2009-11-18  Michelangelo De Simone  <micdesim@gmail.com>
558
559         Reviewed by Darin Adler.
560
561         Fix for <https://bugs.webkit.org/show_bug.cgi?id=27959>.
562         Support for validationMessage attribute, as per HTML5 specs.
563
564         Test: fast/forms/validationMessage.html
565
566         * html/HTMLButtonElement.idl: validationMessage attribute
567         * html/HTMLFieldSetElement.idl: validationMessage attribute
568         * html/HTMLFormControlElement.cpp:
569         * html/HTMLFormControlElement.h:
570         * html/HTMLInputElement.idl: validationMessage attribute
571         * html/HTMLSelectElement.idl: validationMessage attribute
572         * html/HTMLTextAreaElement.idl: validationMessage attribute
573         * html/ValidityState.cpp: new method to retrieve pertinent localized text
574         * html/ValidityState.h:
575         * page/mac/WebCoreViewFactory.h:
576         * platform/LocalizedStrings.h:
577         * platform/android/LocalizedStringsAndroid.cpp:
578         * platform/gtk/LocalizedStringsGtk.cpp:
579         * platform/haiku/LocalizedStringsHaiku.cpp:
580         * platform/mac/LocalizedStringsMac.mm:
581         * platform/wx/LocalizedStringsWx.cpp:
582
583 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
584
585         Unreviewed.
586
587         Fix a typo. Remove the trailing semicolon
588         from an include directive after r51137.
589
590         No new tests as there is no functional change.
591
592         * platform/qt/QWebPageClient.h:
593
594 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
595
596         Unreviewed.
597
598         [Qt] Build fix for QtWebKit after r51159.
599
600         Include float.h for DBL_MANT_DIG. Not sure why this
601         is not a problem for other ports.
602
603         * html/HTMLInputElement.cpp:
604
605 2009-11-19  Roland Steiner  <rolandsteiner@chromium.org>
606
607         Reviewed by Darin Adler.
608
609         Bug 31574 -  Crashing bug when removing <ruby> element
610         (https://bugs.webkit.org/show_bug.cgi?id=31574)
611
612         Cause of the bug:
613         1.) RenderBlock::destroy() of the RenderRubyRun called destroyLeftoverChildren()
614         2.) that called destroy() of the RenderRubyBase(), which in RenderObject::destroy() calls remove()
615         3.) remove() is being redirected as parent()->removeChild() in RenderObject.h
616         4.) this triggers the special handling of child removal in RenderRubyRun that
617             causes it to destroy itself
618         5.) On returning from all this the renderer crashes when accessing a member
619             or virtual function on this now illegal object.
620
621         I therefore added a flag that tracks if the ruby run is being destroyed.
622         If so, avoid doing the special handling in removeChild that caused this.
623         It's not the most elegant solution, but the easiest to implement without
624         touching unrelated code. Also, it's self-documenting.
625
626         Test: fast/ruby/ruby-remove.html
627
628         * rendering/RenderRubyRun.cpp:
629         (WebCore::RenderRubyRun::RenderRubyRun):
630         (WebCore::RenderRubyRun::destroy):
631         (WebCore::RenderRubyRun::removeChild):
632         * rendering/RenderRubyRun.h:
633
634 2009-11-18  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
635
636         Reviewed by Kenneth Rohde Christiansen.
637
638         [Qt] Remove WTF_USE_JAVASCRIPTCORE_BINDINGS as it is no longer used
639         https://bugs.webkit.org/show_bug.cgi?id=31643
640
641         No new tests as there is no functional change.
642
643         * WebCore.pro:
644
645 2009-11-18  Yong Li  <yong.li@torchmobile.com>
646
647         Reviewed by Eric Seidel.
648
649         Implement TextBoundaries for WINCE port.
650         https://bugs.webkit.org/show_bug.cgi?id=27371
651
652         * platform/text/wince/TextBoundariesWince.cpp: Added.
653
654 2009-11-18  Yong Li  <yong.li@torchmobile.com>
655
656         Reviewed by Eric Seidel.
657
658         Implement TextBreakIterator for WINCE port.
659         https://bugs.webkit.org/show_bug.cgi?id=27371
660
661         * platform/text/wince/TextBreakIteratorWince.cpp: Added.
662
663 2009-11-18  Kent Tamura  <tkent@chromium.org>
664
665         Reviewed by Darin Adler.
666
667         Add support for ValidityState.typeMismatch for the following INPUT types:
668           date datetime datetime-local month time week
669         https://bugs.webkit.org/show_bug.cgi?id=31342
670
671         Tests: fast/forms/ValidityState-typeMismatch-date.html
672                fast/forms/ValidityState-typeMismatch-datetime.html
673                fast/forms/ValidityState-typeMismatch-datetimelocal.html
674                fast/forms/ValidityState-typeMismatch-month.html
675                fast/forms/ValidityState-typeMismatch-time.html
676                fast/forms/ValidityState-typeMismatch-week.html
677
678         * html/HTMLInputElement.cpp:
679         (WebCore::HTMLInputElement::formStringToISODateTime): Check the type
680           validity of the specified type and string using the ISODateTime class.
681         * html/HTMLInputElement.h:
682         * html/ValidityState.cpp:
683         (WebCore::ValidityState::typeMismatch): Check the type validity
684           for date, datetime, datetime-local, month, time and week with
685           HTMLInputElemtn::formStringToISODateTime()
686
687 2009-11-18  Maciej Stachowiak  <mjs@apple.com>
688
689         Reviewed by Oliver Hunt.
690
691         Fix REGRESSION (r47022): Performance of DocumentFragment.appendChild is 1000x slower sometimes
692         https://bugs.webkit.org/show_bug.cgi?id=31237
693         
694         Also speeds up Dromaeo DOM Core tests by 1.31x.
695
696         * bindings/js/JSNodeCustom.cpp:
697         (WebCore::JSNode::markChildren): Change marking algorithm to avoid O(N^2) behavior. The subtree
698         mark bit was no longer effective; instead I changed things so only a node that has no ancestors
699         with wrappers would do marking; there should be only one in the typical case (the root of the
700         detached subtree).
701         * dom/Node.cpp:
702         (WebCore::Node::Node): Remove now useless m_inSubtreeMark bit and related functions.
703         * dom/Node.h: ditto
704
705 2009-11-18  Darin Adler  <darin@apple.com>
706
707         Reviewed by Sam Weinig.
708
709         Get rid of the redundant strokeType and fillType data members on
710         a GraphicsContext as well as the FillOrStrokeType enum. Use
711         null pointers instead.
712
713         * platform/graphics/GraphicsContext.cpp:
714         (WebCore::GraphicsContext::setStrokeColor): Null out the pattern
715         and gradient.
716         (WebCore::GraphicsContext::setFillColor): Ditto.
717         (WebCore::GraphicsContext::setStrokePattern): Null out the graident.
718         (WebCore::GraphicsContext::setFillPattern): Ditto.
719         (WebCore::GraphicsContext::setStrokeGradient): Null out the pattern.
720         (WebCore::GraphicsContext::setFillGradient): Ditto.
721
722         * platform/graphics/GraphicsContextPrivate.h: Remove all that stuff.
723
724         * platform/graphics/cairo/GraphicsContextCairo.cpp:
725         (WebCore::setPlatformFill): Use null checks on fillPattern and
726         fillGraident instead of a switch statement.
727         (WebCore::setPlatformStroke): Ditto.
728
729         * platform/graphics/cg/GraphicsContextCG.cpp:
730         (WebCore::GraphicsContext::applyStrokePattern): Removed unneeded get.
731         (WebCore::GraphicsContext::applyFillPattern): Ditto.
732         (WebCore::calculateDrawingMode): Use fillPattern and strokePattern
733         to see if there is a pattern instead of fillType and strokeType.
734         (WebCore::GraphicsContext::drawPath): Use fillGradient, strokeGradient,
735         fillPattern, and strokePattern instead of fillType and strokeType.
736         (WebCore::GraphicsContext::fillPath): Added FIXME about color space that
737         is used in the pattern and gradient case probably erroneously. Moved
738         gradient code inside an if statement. Streamlined pattern code and
739         use an if statement. No switch any more.
740         (WebCore::GraphicsContext::strokePath): Ditto.
741         (WebCore::GraphicsContext::fillRect): Ditto.
742         (WebCore::GraphicsContext::strokeRect): Ditto.
743
744         * platform/graphics/qt/GraphicsContextQt.cpp:
745         (WebCore::GraphicsContext::fillPath): Use null checks on fillPattern and
746         fillGraident instead of a switch statement.
747         (WebCore::GraphicsContext::strokePath): Ditto.
748         (WebCore::GraphicsContext::fillRect): Ditto.
749
750         * platform/graphics/wince/GraphicsContextWince.cpp:
751         (WebCore::GraphicsContext::fillPath): Removed unneeded check of fillType.
752         (WebCore::GraphicsContext::fillRect): Ditto.
753
754 2009-11-18  Kent Tamura  <tkent@chromium.org>
755
756         Reviewed by Darin Adler.
757
758         Support for step attribute and ValidityStae.stepMismatch for
759         type=number and range.  stepMismatch will be false if the
760         difference between the current value and a multiple of the step
761         value is very small.
762
763         Change the behavior of RenderSlider so that it always has a value
764         rounded to the step attribute value.
765
766         https://bugs.webkit.org/show_bug.cgi?id=31331
767
768         Tests: fast/forms/ValidityState-stepMismatch-number.html
769                fast/forms/ValidityState-stepMismatch-range.html
770                fast/forms/ValidityState-stepMismatch-unsupported.html
771                fast/forms/input-step.html
772
773         * html/HTMLAttributeNames.in: Add "step".
774         * html/HTMLInputElement.cpp:
775         (WebCore::HTMLInputElement::stepMismatch):
776         (WebCore::HTMLInputElement::getStepParameters):
777         (WebCore::HTMLInputElement::getAllowedValueStep):
778         * html/HTMLInputElement.h:
779         * html/HTMLInputElement.idl: Add "step".
780         * html/ValidityState.cpp:
781         (WebCore::ValidityState::stepMismatch): Forward to HTMLInputElement::stepMismatch().
782         * html/ValidityState.h:
783         * rendering/RenderSlider.cpp:
784         (WebCore::SliderRange::SliderRange):
785         (WebCore::SliderRange::clampValue):
786
787 2009-11-18  Dmitry Titov  <dimich@chromium.org>
788
789         Reviewed by Darin Adler.
790
791         Need to ASSERT(isMainThread()) in ThreadShared methods.
792         https://bugs.webkit.org/show_bug.cgi?id=31637
793
794         Added ASSERT(IsMainThread()) to all following methods:
795         * platform/TreeShared.h:
796         (WebCore::TreeShared::TreeShared):
797         (WebCore::TreeShared::~TreeShared):
798         (WebCore::TreeShared::ref):
799         (WebCore::TreeShared::deref):
800         (WebCore::TreeShared::setParent):
801         (WebCore::TreeShared::parent):
802
803 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
804
805         Reviewed by Eric Seidel.
806
807         Add plugin visibility manual test
808
809         https://bugs.webkit.org/show_bug.cgi?id=31542
810
811         * manual-tests/plugins/windowed.html:
812         * manual-tests/plugins/windowless.html:
813
814 2009-11-18  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
815
816         Reviewed by Pavel Feldman.
817
818         Web Inspector - remember last script displayed in Scripts panel
819         https://bugs.webkit.org/show_bug.cgi?id=27552
820
821         Manual test added
822         
823         * inspector/front-end/ScriptsPanel.js:
824         (WebInspector.ScriptsPanel.prototype.showScript):
825         (WebInspector.ScriptsPanel.prototype.showResource):
826         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
827         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
828         (WebInspector.ScriptsPanel.prototype._callFrameSelected):
829         (WebInspector.ScriptsPanel.prototype._goBack):
830         (WebInspector.ScriptsPanel.prototype._goForward):
831         * manual-tests/inspector/remember-last-script.html: Added.
832
833 2009-11-18  Shinichiro Hamaji  <hamaji@chromium.org>
834
835         Reviewed by Dimitri Glazkov.
836
837         Win chromium is slow to draw transparent texts
838         https://bugs.webkit.org/show_bug.cgi?id=31258
839
840         Create bounded transparency layers instead of just clipping.
841
842         No new tests because this is just a performance improvement.
843
844         * platform/graphics/chromium/FontChromiumWin.cpp:
845         (WebCore::TransparencyAwareFontPainter::TransparencyAwareFontPainter::initializeForGDI):
846
847 2009-11-18  Shu Chang  <Chang.Shu@nokia.com>
848
849         Reviewed by Eric Seidel.
850
851         [Qt] Add support for displaying deleteButton.
852         https://bugs.webkit.org/show_bug.cgi?id=31560
853
854         Test: LayoutTests/editing/deleting/5408255.html
855
856         * WebCore.qrc:
857         * platform/graphics/qt/ImageQt.cpp:
858         (loadResourcePixmap):
859
860 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
861
862         Reviewed by Eric Seidel.
863
864         Fix Qt build without JavaScript debugger.
865
866         https://bugs.webkit.org/show_bug.cgi?id=31575
867
868         * page/Console.idl:
869
870 2009-11-18  Daniel Bates  <dbates@webkit.org>
871
872         Reviewed by Dave Hyatt.
873
874         https://bugs.webkit.org/show_bug.cgi?id=24971
875         And
876         <rdar://problem/7138265>
877
878         Fixes an issue where setting the height of a table row programmatically
879         (via JavaScript) causes the table to be improperly rendered because the
880         height of each row in the table is not recalculated with respect to the
881         CSS height property.
882
883         In particular, programmatically setting the height of some table row causes
884         the rows of that table to be rendered with a height equal to the minimum
885         height required by the cells in that row, regardless of any specified cell
886         heights. Instead, when RenderTableSection::recalcCells is called, the height
887         of each row should be set to the CSS height property just as we do in
888         RenderTableSection::addChild.
889
890         Test: fast/table/row-height-recalc2.html
891
892         * rendering/RenderTableSection.cpp:
893         (WebCore::setRowHeightToRowStyleHeightIfNotRelative): Added.
894         (WebCore::RenderTableSection::addChild): Moved code that set row height into
895         method WebCore::setRowHeightToRowStyleHeightIfNotRelative.
896         (WebCore::RenderTableSection::recalcCells): Modified to call
897         WebCore::setRowHeightToRowStyleHeightIfNotRelative.
898
899 2009-11-18  Zoltan Horvath  <zoltan@webkit.org>
900
901         Reviewed by Darin Adler.
902
903         Allow custom memory allocation control for the part of platform directory in WebCore
904         https://bugs.webkit.org/show_bug.cgi?id=31473
905
906         Inherits the following classes from FastAllocBase because these are
907         instantiated by 'new':
908
909         class  AnimationList         - instantiated at WebCore/rendering/style/StyleRareNonInheritedData.cpp:85
910         class  Color                 - instantiated at WebCore/rendering/RenderTheme.cpp:48
911         struct Length                - instantiated at WebCore/platform/Length.cpp:103
912         class  PlatformKeyboardEvent - instantiated at WebCore/dom/KeyboardEvent.cpp:63
913         class  ContextMenuItem       - instantiated at WebCore/platform/ContextMenu.cpp:70
914         class  DeprecatedPtrList     - instantiated at WebCore/rendering/RenderBlock.cpp:2284
915
916         Inherits the following classes from Noncopyable because these are
917         instantiated by 'new' and no need to be copyable:
918
919         class  GraphicsContextPrivate - instantiated at WebCore/platform/graphics/GraphicsContext.cpp:78
920         class  FontCache              - instantiated at WebCore/platform/graphics/qt/FontCacheQt.cpp:43
921         struct MediaPlayerFactory     - instantiated at WebCore/platform/graphics/MediaPlayer.cpp:163
922         class  DeprecatedPtrListNode  - instantiated at WebCore/platform/DeprecatedPtrListImpl.cpp:53
923
924         * platform/ContextMenuItem.h:
925         * platform/DeprecatedPtrList.h:
926         * platform/DeprecatedPtrListImpl.cpp:
927         * platform/Length.h:
928         * platform/PlatformKeyboardEvent.h:
929         * platform/animation/AnimationList.h:
930         * platform/graphics/Color.h:
931         * platform/graphics/FontCache.h:
932         * platform/graphics/GraphicsContextPrivate.h:
933         * platform/graphics/MediaPlayer.cpp:
934
935 2009-11-18  Daniel Bates  <dbates@webkit.org>
936
937         Reviewed by Darin Adler.
938
939         https://bugs.webkit.org/show_bug.cgi?id=31186
940
941         Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
942         m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
943         These are more descriptive names so as to clear an ambiguity surrounding
944         their usage. Also, renames associated setters and getters so that they
945         coincide with the renamed fields.
946
947         No functionality was changed. So, no tests were included.
948
949         * bindings/objc/DOMHTML.mm:
950         (-[DOMHTMLInputElement _isEdited]):
951         (-[DOMHTMLTextAreaElement _isEdited]):
952         * dom/Document.cpp:
953         (WebCore::Document::setFocusedNode):
954         * html/HTMLInputElement.cpp:
955         (WebCore::HTMLInputElement::defaultEventHandler):
956         * rendering/RenderTextControl.cpp:
957         (WebCore::RenderTextControl::RenderTextControl):
958         (WebCore::RenderTextControl::setInnerTextValue):
959         (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
960         (WebCore::RenderTextControl::subtreeHasChanged):
961         * rendering/RenderTextControl.h:
962         (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
963         (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
964         (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
965         * rendering/RenderTextControlSingleLine.cpp:
966         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
967         * wml/WMLInputElement.cpp:
968         (WebCore::WMLInputElement::defaultEventHandler):
969
970 2009-11-18  Tony Chang  <tony@chromium.org>
971
972         Reviewed by Adam Barth.
973
974         Remove V8CanvasPixelArrayCustom.cpp because it is no longer used by V8.
975         https://bugs.webkit.org/show_bug.cgi?id=31499
976
977         No new tests, just a build cleanup.
978
979         * WebCore.gypi:
980         * bindings/v8/custom/V8CanvasPixelArrayCustom.cpp: Removed.
981         * bindings/v8/custom/V8CustomBinding.h:
982
983 2009-11-18  Kevin Watters  <kevinwatters@gmail.com>
984
985         Reviewed by Kevin Ollivier.
986
987         Enable wx plugin support using the Windows implementation as a base.
988         
989         https://bugs.webkit.org/show_bug.cgi?id=31636
990
991         * platform/graphics/GraphicsContext.h:
992         (WebCore::GraphicsContext::inTransparencyLayer):
993         * platform/graphics/wx/GraphicsContextWx.cpp:
994         (WebCore::GraphicsContext::getWindowsContext):
995         (WebCore::GraphicsContext::releaseWindowsContext):
996         * platform/wx/FileSystemWx.cpp:
997         (WebCore::unloadModule):
998         (WebCore::listDirectory):
999         * plugins/PluginDatabase.cpp:
1000         * plugins/PluginView.cpp:
1001         (WebCore::PluginView::stop):
1002         (WebCore::PluginView::PluginView):
1003         * plugins/PluginView.h:
1004         * plugins/win/PluginViewWin.cpp:
1005         (windowHandleForPageClient):
1006         (WebCore::PluginView::handleMouseEvent):
1007         (WebCore::PluginView::platformStart):
1008         (WebCore::PluginView::snapshot):
1009         * wscript:
1010
1011 2009-11-18  Andrei Popescu  <andreip@google.com>
1012
1013         Reviewed by Dimitri Glazkov.
1014
1015         [Android] Add shared timer and sound utilities to platform/android
1016         https://bugs.webkit.org/show_bug.cgi?id=31584
1017
1018         No new tests required, this is platform specific code.
1019
1020         * platform/android/SharedTimerAndroid.cpp: Added.
1021         (WebCore::setSharedTimerFiredFunction):
1022         (WebCore::setSharedTimerFireTime):
1023         (WebCore::stopSharedTimer):
1024         * platform/android/SoundAndroid.cpp: Added.
1025         (WebCore::systemBeep):
1026
1027 2009-11-18  Mikhail Naganov  <mnaganov@chromium.org>
1028
1029         Reviewed by Timothy Hatcher.
1030
1031         Fix profile tree nodes loss after focus / restore actions.
1032
1033         Focusing on a node is currently implemented via nodes reattaching
1034         with some caching involved. It seems that not all code was updated
1035         to handle this scenario correctly.
1036
1037         https://bugs.webkit.org/show_bug.cgi?id=31553
1038
1039         * inspector/front-end/BottomUpProfileDataGridTree.js:
1040         (WebInspector.BottomUpProfileDataGridNode):
1041         (WebInspector.BottomUpProfileDataGridNode.prototype._restore):
1042         (WebInspector.BottomUpProfileDataGridNode.prototype._sharedPopulate):
1043         (WebInspector.BottomUpProfileDataGridNode.prototype._willHaveChildren):
1044         * inspector/front-end/DataGrid.js:
1045         (WebInspector.DataGrid.prototype.insertChild):
1046         (WebInspector.DataGridNode.prototype._detach):
1047         (WebInspector.DataGridNode.prototype.savePosition):
1048         (WebInspector.DataGridNode.prototype.restorePosition):
1049         * inspector/front-end/TopDownProfileDataGridTree.js:
1050         (WebInspector.TopDownProfileDataGridTree.prototype.focus):
1051         (WebInspector.TopDownProfileDataGridTree.prototype.restore):
1052
1053 2009-11-18  Carol Szabo  <carol.szabo@nokia.com>
1054
1055         Reviewed by Kenneth Rohde Christiansen.
1056
1057         [Qt] QWebPageClient.h needs in some cases QCursor, but it does not
1058         include it 
1059         https://bugs.webkit.org/show_bug.cgi?id=31527
1060
1061         No new tests as this is just a coding style fix that affects the 
1062         build of some not yet submitted patches (i.e. for bug 30173).
1063
1064         * platform/qt/QWebPageClient.h:
1065
1066 2009-11-18  Nicolas Roard   <nicolas@roard.com>
1067
1068         Reviewed by Dimitri Glazkov.
1069
1070         InspectorTimelineAgent.h should be guarded by ENABLE(INSPECTOR)
1071         https://bugs.webkit.org/show_bug.cgi?id=31504
1072
1073         * inspector/InspectorTimelineAgent.h:Added the guard.
1074
1075 2009-11-18  Jens Alfke  <snej@chromium.org>
1076
1077         Build fix to my previous checkin, for Windows Chromium
1078
1079         * svg/SVGAnimatedProperty.h:
1080         (WebCore::PropertySynchronizer::synchronize): Fix implicit-conversion error on AtomicString.
1081
1082 2009-11-18  Joseph Pecoraro  <joepeck@webkit.org>
1083
1084         Reviewed by Pavel Feldman.
1085
1086         Web Inspector: Directly Access <head> Instead of Searching for It
1087         https://bugs.webkit.org/show_bug.cgi?id=31641
1088         
1089         Changed old access of the head element (document.getElementsByTagName)
1090         to just use the document.head accessor.
1091
1092         * inspector/front-end/FontView.js:
1093         (WebInspector.FontView):
1094         * inspector/front-end/InjectedScript.js:
1095         (InjectedScript.addStyleSelector):
1096         * inspector/front-end/SourceFrame.js:
1097         (WebInspector.SourceFrame.prototype._loaded):
1098         * inspector/front-end/inspector.js:
1099         (windowLoaded):
1100
1101 2009-11-18  Sam Weinig  <sam@webkit.org>
1102
1103         Reviewed by Anders Carlsson.
1104
1105         Fix two Geolocation assertions.
1106
1107         * page/Chrome.cpp:
1108         (WebCore::Chrome::requestGeolocationPermissionForFrame): No need to use PageGroupLoadDeferrer since this
1109         is not called from JS. 
1110         * page/Geolocation.cpp:
1111         (WebCore::Geolocation::Watchers::set): The PassRefPtr was getting nulled out, so we need to put it in
1112         a RefPtr first.
1113
1114 2009-11-18  Alexey Proskuryakov  <ap@apple.com>
1115
1116         Case sensitive file system build fix.
1117
1118         * platform/network/Credential.h: It's not WTF, just wtf.
1119
1120 2009-11-18  Aaron Golden  <agolden@apple.com>
1121
1122         Reviewed by Alexey Proskuryakov.
1123
1124         Add support for certificates to WebCore::Credential so we can convert between NSURLCredential
1125         objects and WebCore::Credential objects without losing certificate information.
1126
1127         * platform/network/Credential.cpp:
1128         (WebCore::Credential::Credential):  Adding a constructor that takes an identity argument and a certificate chain argument
1129         (WebCore::Credential::isEmpty):  Modifying isEmpty to support certificate based credentials (which don't have a username or password)
1130         (WebCore::Credential::identity): Accessor for the m_identity property
1131         (WebCore::Credential::certificates): Accessor for the m_certificates property
1132         (WebCore::Credential::type):  Accessor for the m_type property
1133         (WebCore::operator==):  Modifying == to compare the identity and certificate chains of certificate based credentials.
1134         * platform/network/Credential.h:  Adding new fields to WebCore::Credential to support certificate based credentials.
1135         * platform/network/mac/AuthenticationMac.mm:
1136         (WebCore::mac):  Modifying the mac() conversion method to correctly convert certificate based WebCore::Credential objects.
1137         (WebCore::core):  Modifying the core() conversion method to correctly convert certificate based NSURLCredential objects.
1138
1139 2009-11-18  Dmitry Titov  <dimich@chromium.org>
1140
1141         Reviewed by Eric Seidel.
1142
1143         Reverting r50919 that has introduced a non-thread-safe refcounting in ScriptExecutionContext::postTaskToMainThread.
1144         https://bugs.webkit.org/show_bug.cgi?id=31615
1145
1146         * dom/Document.cpp:
1147         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
1148         (WebCore::ScriptExecutionContextTaskTimer::fired):
1149         (WebCore::PerformTaskContext::PerformTaskContext):
1150         (WebCore::performTask):
1151         (WebCore::Document::postTask):
1152         * dom/ScriptExecutionContext.cpp:
1153         * dom/ScriptExecutionContext.h:
1154
1155 2009-11-18  Jens Alfke  <snej@chromium.org>
1156
1157         Reviewed by Darin Adler.
1158
1159         Eliminate unnecessary String-->AtomicString conversions from generated V8 bindings,
1160         by causing the right v8-to-WebCore conversion function to be called for every parameter.
1161         This no longer requires any IDL metadata, so I've removed the [HintAtomic] annotations.
1162         To enforce correctness, I added a mode that disables implicit
1163         String-->AtomicString conversions while compiling the generated bindings.
1164         https://bugs.webkit.org/show_bug.cgi?id=31168
1165
1166         * bindings/scripts/CodeGeneratorV8.pm:  Generate usage of V8Parameter class.
1167         * bindings/v8/DerivedSourcesAllInOne.cpp:  Enable NO_IMPLICIT_ATOMICSTRING.
1168         * bindings/v8/V8Binding.h:  Add V8Parameter class.
1169         * css/WebKitCSSKeyframesRule.h:  Make AtomicString conversions explicit.
1170         * dom/Document.idl:  Remove obsolete [HintAtomic] annotation.
1171         * platform/text/AtomicString.h:  Added NO_IMPLICIT_ATOMICSTRING option.
1172         * svg/SVGAnimatedTemplate.h:  Change some return types to String to avoid implicit conversion.
1173         * svg/SVGAnimatedProperty.h: Adapt to changed return types in SVGAnimatedTemplate.
1174
1175 2009-11-18  Darin Adler  <darin@apple.com>
1176
1177         Reviewed by Dan Bernstein.
1178
1179         Move FillOrStrokeType out of public header.
1180
1181         * platform/graphics/GraphicsContext.h: Updated copyright date to cover
1182         some years we published Apple changes, sorted forward declarations,
1183         removed FillOrStrokeType enum.
1184         * platform/graphics/GraphicsContextPrivate.h: Updated copyright date
1185         to cover some years we published Apple changes, sorted includes,
1186         moved FillOrStrokeType enum here.
1187
1188 2009-11-18  Chris Marrin  <cmarrin@apple.com>
1189
1190         Reviewed by Simon Fraser.
1191
1192         Add Settings for WebKitShowDebugBorders and WebKitShowRepaintCounter
1193         https://bugs.webkit.org/show_bug.cgi?id=31601
1194
1195         These are used to debug accelerated compositing layers. I removed
1196         the platform specific code from GraphicsLayerCA.mm and added calls
1197         to GraphicsLayerClient to get it from the higher levels. The values 
1198         now get cached in RenderLayerCompositing and are queried from there
1199         by RenderLayerBacking (which implements the GraphicsLayerClient interface).
1200
1201         * WebCore.base.exp:
1202         * page/FrameView.cpp:
1203         (WebCore::FrameView::updateCompositingLayers):
1204         * page/Settings.cpp:
1205         (WebCore::Settings::Settings):
1206         (WebCore::Settings::setShowDebugBorders):
1207         (WebCore::Settings::setShowRepaintCounter):
1208         * page/Settings.h:
1209         (WebCore::Settings::showDebugBorders):
1210         (WebCore::Settings::showRepaintCounter):
1211         * platform/graphics/GraphicsLayer.h:
1212         (WebCore::GraphicsLayer::showDebugBorders):
1213         (WebCore::GraphicsLayer::showRepaintCounter):
1214         * platform/graphics/GraphicsLayerClient.h:
1215         * platform/graphics/mac/GraphicsLayerCA.mm:
1216         * rendering/RenderLayerBacking.cpp:
1217         (WebCore::RenderLayerBacking::showDebugBorders):
1218         (WebCore::RenderLayerBacking::showRepaintCounter):
1219         * rendering/RenderLayerBacking.h:
1220         * rendering/RenderLayerCompositor.cpp:
1221         (WebCore::RenderLayerCompositor::RenderLayerCompositor):
1222         (WebCore::RenderLayerCompositor::cacheAcceleratedCompositingFlags):
1223         * rendering/RenderLayerCompositor.h:
1224         (WebCore::RenderLayerCompositor::showDebugBorders):
1225         (WebCore::RenderLayerCompositor::showRepaintCounter):
1226
1227 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
1228
1229         Reviewed by Timothy Hatcher.
1230
1231         Web Inspector: Get rid of metrics and properties sidebars'
1232         flickering.
1233
1234         https://bugs.webkit.org/show_bug.cgi?id=31629
1235
1236         * inspector/front-end/MetricsSidebarPane.js:
1237         * inspector/front-end/PropertiesSidebarPane.js:
1238
1239 2009-11-17  Brian Weinstein  <bweinstein@apple.com>
1240
1241         Reviewed by Pavel Feldman.
1242
1243         Fixes <http://webkit.org/b/31606>.
1244         Web Inspector: Enter/Return key should enter edit mode for Editable Fields.
1245         
1246         This implements Enter starting editing mode in an editable DataGrid. If the
1247         DataGrid is editable and the user hits return, startEditing the first child
1248         of the selected node. Also refactored some editing functions to take an 
1249         event target instead of the event itself, because the functions only needed
1250         the target. Lastly, added had return in editing mode stop propogation, because
1251         when enter was hit to confirm text, it would propagate back to the datagrid
1252         and try to start editing again.
1253
1254         * inspector/front-end/DataGrid.js:
1255         (WebInspector.DataGrid.prototype._ondblclick):
1256         (WebInspector.DataGrid.prototype._startEditing):
1257         (WebInspector.DataGrid.prototype.handleKeyEvent):
1258         (WebInspector.DataGrid.prototype.dataGridNodeFromEvent):
1259         (WebInspector.DataGrid.prototype._mouseDownInDataTable):
1260         (WebInspector.DataGrid.prototype._clickInDataTable):
1261         * inspector/front-end/inspector.js:
1262         (WebInspector.startEditing.element.handleKeyEvent):
1263         (WebInspector.startEditing):
1264
1265 2009-11-18  Ben Murdoch  <benm@google.com>
1266
1267         Reviewed by Darin Adler.
1268
1269         HTMLAnchorElement is inconsistent with its internal handling of the value returned for the href attribute.
1270         https://bugs.webkit.org/show_bug.cgi?id=31593
1271
1272         Test: fast/dom/HTMLAnchorElement/set-href-attribute-whitespace.html
1273
1274         * html/HTMLAnchorElement.cpp:
1275         (WebCore::HTMLAnchorElement::href): Add call to deprecatedParseURL.
1276
1277 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
1278
1279         Not reviewed. Touch InspectorController so that frontend
1280         JS files are deployed on Windows.
1281
1282         * inspector/InspectorController.cpp:
1283
1284 2009-11-18  Pavel Feldman  <pfeldman@chromium.org>
1285
1286         Reviewed by Timothy Hatcher.
1287
1288         Web Inspector: clone timeline records array instead of
1289         copying reference on invalidate all.
1290
1291         https://bugs.webkit.org/show_bug.cgi?id=31596
1292
1293         * inspector/front-end/AbstractTimelinePanel.js:
1294         (WebInspector.AbstractTimelinePanel.prototype.invalidateAllItems):
1295
1296 2009-11-18  Simon Fraser  <simon.fraser@apple.com>
1297
1298         Reviewed by Dan Bernstein.
1299
1300         Elements don't drop out of compositing layers when animation ends
1301         https://bugs.webkit.org/show_bug.cgi?id=31613
1302         <rdar://problem/7402913>
1303
1304         Avoid setting the mustOverlapCompositedLayers flag on RenderLayers which
1305         are compositing anyway for other reasons. Doing so can cause those layers
1306         to stay in compositing mode even after animations finish, because needsToBeComposited()
1307         continues to return true.
1308         
1309         No new tests because it's not possible to determine which elements are in
1310         compositing layers from DRT output.
1311
1312         * rendering/RenderLayerCompositor.cpp:
1313         (WebCore::RenderLayerCompositor::computeCompositingRequirements):
1314
1315 2009-11-18  Girish Ramakrishnan  <girish@forwardbias.in>
1316
1317         Reviewed by Tor Arne Vestbø.
1318
1319         [Qt] Mac Plugins: Remove null timer
1320         
1321         A null timer was used to send mouse move events. Instead, we now use
1322         move events to send nullEvent. This brings down CPU usage by 20-30%.
1323         
1324         https://bugs.webkit.org/show_bug.cgi?id=31624
1325
1326         * plugins/PluginView.h:
1327         * plugins/mac/PluginViewMac.cpp:
1328         (WebCore::PluginView::platformStart):
1329         (WebCore::PluginView::handleMouseEvent):
1330
1331 2009-11-18  Benjamin Poulain  <benjamin.poulain@nokia.com>
1332
1333         Reviewed by Simon Hausmann.
1334
1335         [Qt] WebKit crashes when loading certain SVG images
1336
1337         Check if the familly exist before creating the PlatformData from it.
1338
1339         https://bugs.webkit.org/show_bug.cgi?id=29443
1340
1341         Test: svg/text/text-font-invalid.html
1342
1343         * platform/graphics/qt/FontFallbackListQt.cpp:
1344         (WebCore::FontFallbackList::fontDataAt):
1345
1346 2009-11-17  Nicolas Weber  <thakis@chromium.org>
1347
1348         Reviewed by Darin Fisher.
1349
1350         Fix crash in Chromium/Mac where dropdowns weren't dismissed correctly
1351         after navigation.
1352         https://bugs.webkit.org/show_bug.cgi?id=31609
1353
1354         * platform/chromium/PopupMenuChromium.cpp:
1355         (WebCore::PopupContainer::showExternal): Set parent for external
1356         dropdowns, so that |PopupListBox::hidePopup()| can successfully notify
1357         its parent's client.
1358
1359 2009-11-17  Hayato Ito  <hayato@google.com>
1360
1361         Reviewed by Darin Adler.
1362
1363         Avoid infinite mutual recursion when deeply nested tags are loaded
1364         https://bugs.webkit.org/show_bug.cgi?id=30651
1365
1366         Test: fast/parser/block-nesting-cap-table.html
1367
1368         * html/HTMLParser.cpp:
1369         (WebCore::HTMLParser::parseToken):
1370         (WebCore::tagPriorityOfNode):
1371         (WebCore::HTMLParser::limitBlockDepth):
1372         (WebCore::HTMLParser::insertNodeAfterLimitBlockDepth):
1373         (WebCore::HTMLParser::insertNode):
1374         * html/HTMLParser.h:
1375
1376 2009-11-17  Brent Fulgham  <bfulgham@webkit.org>
1377
1378         Rubber-stamped by Alexey Proskuryakov.
1379
1380         Final clean-ups for minor coding standard violations.
1381         https://bugs.webkit.org/show_bug.cgi?id=26102.
1382
1383         * platform/graphics/cairo/GraphicsContextCairo.cpp:
1384
1385 2009-11-17  Johnny Ding  <jnd@chromium.org>
1386
1387         Reviewed by Darin Adler.
1388
1389         In all valid script tags for JavaScript, the event handler in <script...for> should not get executed.
1390         https://bugs.webkit.org/show_bug.cgi?id=31567
1391
1392         * dom/ScriptElement.cpp:
1393         (WebCore::ScriptElementData::shouldExecuteAsJavaScript):
1394
1395 2009-11-17  Pavel Feldman  <pfeldman@chromium.org>
1396
1397         Reviewed by Timothy Hatcher.
1398
1399         Web Inspector: Make DRT show web inspector for tests in inspector/ folder.
1400         - Updated DRT to show/close inspector for all tests under /inspector
1401         - Introduced LayoutTestController::setTimelineProfilingEnabled and
1402           WebInspector::setTimelineProfilingEnabled beside setJavaScriptProfilingEnabled
1403         - Removed reload on each inspector test
1404         - Renamed fast/inspector to fast/inspector-support in order not to trigger
1405         inspector for those.
1406         - Reimplemented timeline tests in order to get rid of reload there.
1407         - Moved tests that don't require harness into the fast group.
1408
1409         https://bugs.webkit.org/show_bug.cgi?id=31472
1410
1411         * WebCore.Inspector.exp:
1412         * inspector/front-end/TimelinePanel.js:
1413         (WebInspector.TimelinePanel.prototype._formatRecord):
1414
1415 2009-11-17  Andrei Popescu  <andreip@google.com>
1416
1417         Reviewed by Dimitri Glazkov.
1418
1419         [Android] Android is missing the implementation of the GeolocationService iface.
1420         https://bugs.webkit.org/show_bug.cgi?id=31554
1421
1422         No new tests required as this is platform specific code.
1423
1424         * platform/android/GeolocationServiceAndroid.cpp: Added.
1425         (WebCore::GeolocationServiceAndroid::create):
1426         (WebCore::GeolocationServiceAndroid::GeolocationServiceAndroid):
1427         (WebCore::GeolocationServiceAndroid::startUpdating):
1428         (WebCore::GeolocationServiceAndroid::stopUpdating):
1429         (WebCore::GeolocationServiceAndroid::suspend):
1430         (WebCore::GeolocationServiceAndroid::resume):
1431         (WebCore::GeolocationServiceAndroid::newPositionAvailable):
1432         (WebCore::GeolocationServiceAndroid::newErrorAvailable):
1433         (WebCore::GeolocationServiceAndroid::timerFired):
1434         (WebCore::GeolocationServiceAndroid::isPositionMovement):
1435         (WebCore::GeolocationServiceAndroid::isPositionMoreAccurate):
1436         (WebCore::GeolocationServiceAndroid::isPositionMoreTimely):
1437         * platform/android/GeolocationServiceAndroid.h: Added.
1438         (WebCore::GeolocationServiceAndroid::~GeolocationServiceAndroid):
1439         (WebCore::GeolocationServiceAndroid::lastPosition):
1440         (WebCore::GeolocationServiceAndroid::lastError):
1441         * platform/android/GeolocationServiceBridge.cpp: Added.
1442         (WebCore::):
1443         (WebCore::GeolocationServiceBridge::GeolocationServiceBridge):
1444         (WebCore::GeolocationServiceBridge::~GeolocationServiceBridge):
1445         (WebCore::GeolocationServiceBridge::start):
1446         (WebCore::GeolocationServiceBridge::stop):
1447         (WebCore::GeolocationServiceBridge::setEnableGps):
1448         (WebCore::GeolocationServiceBridge::newLocationAvailable):
1449         (WebCore::GeolocationServiceBridge::newErrorAvailable):
1450         (WebCore::GeolocationServiceBridge::toGeoposition):
1451         (WebCore::GeolocationServiceBridge::startJavaImplementation):
1452         (WebCore::GeolocationServiceBridge::stopJavaImplementation):
1453         * platform/android/GeolocationServiceBridge.h: Added.
1454
1455 2009-11-16  Kent Tamura  <tkent@chromium.org>
1456
1457         Unreviewd build fix.
1458
1459         - Fix typo in WebCore.vcproj.
1460         - Intlude limits.h for INT_MAX.
1461         - Enclose with parenthesis to suspress warning.
1462
1463         * WebCore.vcproj/WebCore.vcproj:
1464         * html/ISODateTime.cpp:
1465         (WebCore::ISODateTime::addDay):
1466
1467 2009-11-16  Robin Dunn  <robin@alldunn.com>
1468
1469         Reviewed by Kevin Ollivier.
1470
1471         Make sure wx scrollbar drawing code factors in transforms when switching backends,
1472         fix calcs for scrollbar length, and tweak the Mac scrollbar tracking rects.
1473         
1474         https://bugs.webkit.org/show_bug.cgi?id=31570
1475
1476         * platform/wx/ScrollbarThemeWx.cpp:
1477         (WebCore::ScrollbarThemeWx::minimumThumbLength):
1478         (WebCore::ScrollbarThemeWx::splitTrack):
1479         (WebCore::ScrollbarThemeWx::forwardButtonRect):
1480         * platform/wx/ScrollbarThemeWx.h:
1481         * platform/wx/wxcode/gtk/scrollbar_render.cpp:
1482         (wxRenderer_DrawScrollbar):
1483         * platform/wx/wxcode/scrollbar_render.h:
1484         (calcThumbStartAndLength):
1485         * platform/wx/wxcode/win/scrollbar_render.cpp:
1486         (wxRenderer_DrawScrollbar):
1487
1488 2009-11-16  Kent Tamura  <tkent@chromium.org>
1489
1490         Reviewed by David Levin.
1491
1492         Introduce WebCore::ISODateTime class.
1493         https://bugs.webkit.org/show_bug.cgi?id=31340
1494
1495         This class represents a value of date/time types of the HTML5 INPUT
1496         element, and has some parsing methods for ISO 8601.
1497
1498         This change has no tests because the class is not used yet.
1499
1500         * GNUmakefile.am: Add ISODateTime.cpp and ISODateTime.h.
1501         * WebCore.gypi: ditto.
1502         * WebCore.pro: ditto.
1503         * WebCore.vcproj/WebCore.vcproj: ditto.
1504         * WebCore.xcodeproj/project.pbxproj: ditto.
1505         * WebCoreSources.bkl: ditto.
1506         * html/ISODateTime.cpp: Added. Implementation of WebCore::ISODateTime class.
1507         (WebCore::isLeapYear):
1508         (WebCore::maxDayOfMonth):
1509         (WebCore::dayOfWeek):
1510         (WebCore::ISODateTime::maxWeekNumberInYear):
1511         (WebCore::countDigits):
1512         (WebCore::toInt):
1513         (WebCore::ISODateTime::parseYear): Private helper for parseDate() and parseWeek().
1514         (WebCore::ISODateTime::addDay): Private helper for parseTimeZone().
1515         (WebCore::ISODateTime::addMinute): ditto.
1516         (WebCore::ISODateTime::parseTimeZone): Private helper for parseDateTime().
1517         (WebCore::ISODateTime::parseMonth): Parser for <input type=month>.
1518         (WebCore::ISODateTime::parseDate): Parser for <input type=date>.
1519         (WebCore::ISODateTime::parseWeek): Parser for <input type=week>.
1520         (WebCore::ISODateTime::parseTime): Parser for <input type=time>.
1521         (WebCore::ISODateTime::parseDateTimeLocal): Parser for <input type=datetime-local>.
1522         (WebCore::ISODateTime::parseDateTime): Parser for <input type=datetime>.
1523         * html/ISODateTime.h: Added.  Declare WebCore::ISODateTime class.
1524         (WebCore::ISODateTime::ISODateTime):
1525         (WebCore::ISODateTime::millisecond):
1526         (WebCore::ISODateTime::second):
1527         (WebCore::ISODateTime::minute):
1528         (WebCore::ISODateTime::hour):
1529         (WebCore::ISODateTime::monthDay):
1530         (WebCore::ISODateTime::month):
1531         (WebCore::ISODateTime::fullYear):
1532         (WebCore::ISODateTime::week):
1533
1534 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1535
1536         Fix a typo in previous commit.
1537
1538         * platform/network/cf/SocketStreamHandleCFNet.cpp: #ifdef, not #if.
1539
1540 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1541
1542         Fix a typo in previous commit.
1543
1544         * platform/network/cf/SocketStreamHandleCFNet.cpp:
1545
1546 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1547
1548         Tiger build fix.
1549
1550         * platform/network/cf/SocketStreamHandleCFNet.cpp: Define CFN_EXPORT, as this macro was named
1551         differently in Tiger CFNetwork.
1552
1553 2009-11-16  Dimitri Glazkov  <dglazkov@chromium.org>
1554
1555         Reviewed by Darin Fisher.
1556
1557         [KURLGoogle] setHostAndPort doesn't handle arguments without port correctly.
1558
1559         Fix a bug in the code that was dormant until http://trac.webkit.org/changeset/50784.
1560
1561         Covered by existing test: LayoutTests/fast/dom/HTMLAnchorElement/set-href-attribute-host.html
1562
1563         * platform/KURLGoogle.cpp:
1564         (WebCore::KURL::setHostAndPort): Added handling of arguments without port specified.
1565
1566 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1567
1568         Rubber-stamped by Jon Honeycutt.
1569
1570         A better Windows build fix
1571
1572         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
1573         Use a macro that inserts __declspec(dllimport) when appropriate for CFNetwork imports.
1574
1575 2009-11-16  Yael Aharon  <yael.aharon@nokia.com>
1576
1577         Reviewed by Darin Adler.
1578
1579         Rename protocolIsValid to isValidProtocol.
1580         https://bugs.webkit.org/show_bug.cgi?id=31503
1581
1582         This name change was suggested in https://bugs.webkit.org/show_bug.cgi?id=29972#c19.
1583
1584         No new tests since no new functionality was introduced.
1585
1586         * html/HTMLAnchorElement.cpp:
1587         (WebCore::HTMLAnchorElement::setProtocol):
1588         * platform/KURL.cpp:
1589         (WebCore::isValidProtocol):
1590         * platform/KURL.h:
1591         * platform/KURLGoogle.cpp:
1592         (WebCore::isValidProtocol):
1593
1594 2009-11-16  Chris Fleizach  <cfleizach@apple.com>
1595
1596         Reviewed by Beth Dakin.
1597
1598         AX: aria-labelledby duplicates some of its WAI-ARIA label
1599         https://bugs.webkit.org/show_bug.cgi?id=31565
1600
1601         Test: accessibility/aria-labelledby-overrides-label.html
1602
1603         * accessibility/AccessibilityRenderObject.cpp:
1604         (WebCore::AccessibilityRenderObject::hasTextAlternative):
1605         (WebCore::AccessibilityRenderObject::exposesTitleUIElement):
1606         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
1607         * accessibility/AccessibilityRenderObject.h:
1608
1609 2009-11-16  Nate Chapin  <japhet@chromium.org>
1610
1611         Reviewed by Darin Fisher.
1612
1613         Handle the case of a null NPObject* in NPN_SetException in
1614         the V8 bindings.  This allow out of process plugins calling
1615         NPN_SetException to just send null instead of sending an
1616         NPObject* that would be an address in a different 
1617         process's memory space.
1618
1619         https://bugs.webkit.org/show_bug.cgi?id=31561
1620
1621         * bindings/v8/NPV8Object.cpp:
1622         (_NPN_SetException): Allow null NPObject* and just throw a general error.
1623
1624 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1625
1626         Windows build fix.
1627
1628         * platform/network/cf/SocketStreamHandleCFNet.cpp: (WebCore::SocketStreamHandle::createStreams):
1629         Disable CONNECT proxies on Windows until WebKitSupportLibrary includes support for those.
1630
1631 2009-11-14  Yael Aharon  <yael.aharon@nokia.com>
1632
1633         Reviewed by Kenneth Rohde Christiansen.
1634
1635         [Qt] ASSERT failure while running DRT
1636         https://bugs.webkit.org/show_bug.cgi?id=30978
1637
1638         Add needed Structure typeInfo flags to QtRuntimeObjectImpl and QtRuntimeMethod.
1639         These flags are needed after r49649, where HasDefaultmark was changed to OverrideMarkChildren.
1640
1641         * bridge/qt/qt_instance.cpp:
1642         (JSC::Bindings::QtRuntimeObjectImp::createStructure):
1643         * bridge/qt/qt_runtime.h:
1644         (JSC::Bindings::QtRuntimeMethod::createStructure):
1645
1646 2009-11-16  Mark Rowe  <mrowe@apple.com>
1647
1648         Attempt to fix the build.  Land a file that was missing from r51049.
1649
1650         * bindings/js/JSWebGLArrayHelper.h: Copied from WebCore/html/canvas/WebGLByteArray.idl.
1651         (WebCore::setWebGLArrayFromArray):
1652
1653 2009-11-16  Kenneth Russell  <kbr@google.com>
1654
1655         Reviewed by Oliver Hunt.
1656
1657         Update API of WebGLArray and friends
1658         https://bugs.webkit.org/show_bug.cgi?id=31175
1659
1660         * bindings/js/JSWebGLArrayCustom.cpp:
1661         (WebCore::toJS):
1662         * bindings/js/JSWebGLArrayHelper.h: Added.
1663         (WebCore::setWebGLArrayFromArray):
1664         * bindings/js/JSWebGLByteArrayCustom.cpp:
1665         (WebCore::JSWebGLByteArray::set):
1666         * bindings/js/JSWebGLFloatArrayCustom.cpp:
1667         (WebCore::JSWebGLFloatArray::set):
1668         * bindings/js/JSWebGLIntArrayCustom.cpp:
1669         (WebCore::JSWebGLIntArray::set):
1670         * bindings/js/JSWebGLShortArrayCustom.cpp:
1671         (WebCore::JSWebGLShortArray::set):
1672         * bindings/js/JSWebGLUnsignedByteArrayCustom.cpp:
1673         (WebCore::JSWebGLUnsignedByteArray::set):
1674         * bindings/js/JSWebGLUnsignedIntArrayCustom.cpp:
1675         (WebCore::JSWebGLUnsignedIntArray::set):
1676         * bindings/js/JSWebGLUnsignedShortArrayCustom.cpp:
1677         (WebCore::JSWebGLUnsignedShortArray::set):
1678         * bindings/scripts/CodeGeneratorV8.pm:
1679         * bindings/v8/V8DOMWrapper.cpp:
1680         (WebCore::V8DOMWrapper::convertToV8Object):
1681         * bindings/v8/custom/V8CustomBinding.h:
1682         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
1683         (WebCore::CALLBACK_FUNC_DECL):
1684         * bindings/v8/custom/V8WebGLArrayCustom.h:
1685         (WebCore::constructWebGLArray):
1686         (WebCore::getWebGLArrayElement):
1687         (WebCore::setWebGLArrayFromArray):
1688         (WebCore::setWebGLArray):
1689         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
1690         (WebCore::CALLBACK_FUNC_DECL):
1691         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
1692         (WebCore::CALLBACK_FUNC_DECL):
1693         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
1694         (WebCore::CALLBACK_FUNC_DECL):
1695         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
1696         (WebCore::CALLBACK_FUNC_DECL):
1697         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
1698         (WebCore::CALLBACK_FUNC_DECL):
1699         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
1700         (WebCore::CALLBACK_FUNC_DECL):
1701         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
1702         (WebCore::CALLBACK_FUNC_DECL):
1703         * html/canvas/WebGLArray.cpp:
1704         (WebCore::WebGLArray::WebGLArray):
1705         (WebCore::WebGLArray::~WebGLArray):
1706         (WebCore::WebGLArray::setImpl):
1707         * html/canvas/WebGLArray.h:
1708         (WebCore::WebGLArray::isByteArray):
1709         (WebCore::WebGLArray::isUnsignedByteArray):
1710         (WebCore::WebGLArray::isShortArray):
1711         (WebCore::WebGLArray::isUnsignedShortArray):
1712         (WebCore::WebGLArray::isIntArray):
1713         (WebCore::WebGLArray::isUnsignedIntArray):
1714         (WebCore::WebGLArray::isFloatArray):
1715         (WebCore::WebGLArray::buffer):
1716         (WebCore::WebGLArray::baseAddress):
1717         (WebCore::WebGLArray::byteOffset):
1718         * html/canvas/WebGLArray.idl:
1719         * html/canvas/WebGLArrayBuffer.cpp:
1720         (WebCore::WebGLArrayBuffer::create):
1721         (WebCore::WebGLArrayBuffer::WebGLArrayBuffer):
1722         (WebCore::WebGLArrayBuffer::data):
1723         (WebCore::WebGLArrayBuffer::byteLength):
1724         (WebCore::WebGLArrayBuffer::~WebGLArrayBuffer):
1725         * html/canvas/WebGLArrayBuffer.h:
1726         * html/canvas/WebGLByteArray.cpp:
1727         (WebCore::WebGLByteArray::create):
1728         (WebCore::WebGLByteArray::byteLength):
1729         (WebCore::WebGLByteArray::slice):
1730         (WebCore::WebGLByteArray::set):
1731         * html/canvas/WebGLByteArray.h:
1732         (WebCore::WebGLByteArray::isByteArray):
1733         (WebCore::WebGLByteArray::data):
1734         (WebCore::WebGLByteArray::set):
1735         (WebCore::WebGLByteArray::get):
1736         (WebCore::WebGLByteArray::item):
1737         * html/canvas/WebGLByteArray.idl:
1738         * html/canvas/WebGLFloatArray.cpp:
1739         (WebCore::WebGLFloatArray::create):
1740         (WebCore::WebGLFloatArray::WebGLFloatArray):
1741         (WebCore::WebGLFloatArray::length):
1742         (WebCore::WebGLFloatArray::byteLength):
1743         (WebCore::WebGLFloatArray::slice):
1744         (WebCore::WebGLFloatArray::set):
1745         * html/canvas/WebGLFloatArray.h:
1746         (WebCore::WebGLFloatArray::isFloatArray):
1747         (WebCore::WebGLFloatArray::data):
1748         (WebCore::WebGLFloatArray::set):
1749         (WebCore::WebGLFloatArray::get):
1750         (WebCore::WebGLFloatArray::item):
1751         * html/canvas/WebGLFloatArray.idl:
1752         * html/canvas/WebGLIntArray.cpp:
1753         (WebCore::WebGLIntArray::create):
1754         (WebCore::WebGLIntArray::WebGLIntArray):
1755         (WebCore::WebGLIntArray::length):
1756         (WebCore::WebGLIntArray::byteLength):
1757         (WebCore::WebGLIntArray::slice):
1758         (WebCore::WebGLIntArray::set):
1759         * html/canvas/WebGLIntArray.h:
1760         (WebCore::WebGLIntArray::isIntArray):
1761         (WebCore::WebGLIntArray::data):
1762         (WebCore::WebGLIntArray::set):
1763         (WebCore::WebGLIntArray::get):
1764         (WebCore::WebGLIntArray::item):
1765         * html/canvas/WebGLIntArray.idl:
1766         * html/canvas/WebGLShortArray.cpp:
1767         (WebCore::WebGLShortArray::create):
1768         (WebCore::WebGLShortArray::WebGLShortArray):
1769         (WebCore::WebGLShortArray::length):
1770         (WebCore::WebGLShortArray::byteLength):
1771         (WebCore::WebGLShortArray::slice):
1772         (WebCore::WebGLShortArray::set):
1773         * html/canvas/WebGLShortArray.h:
1774         (WebCore::WebGLShortArray::isShortArray):
1775         (WebCore::WebGLShortArray::data):
1776         (WebCore::WebGLShortArray::set):
1777         (WebCore::WebGLShortArray::get):
1778         (WebCore::WebGLShortArray::item):
1779         * html/canvas/WebGLShortArray.idl:
1780         * html/canvas/WebGLUnsignedByteArray.cpp:
1781         (WebCore::WebGLUnsignedByteArray::create):
1782         (WebCore::WebGLUnsignedByteArray::WebGLUnsignedByteArray):
1783         (WebCore::WebGLUnsignedByteArray::length):
1784         (WebCore::WebGLUnsignedByteArray::byteLength):
1785         (WebCore::WebGLUnsignedByteArray::slice):
1786         (WebCore::WebGLUnsignedByteArray::set):
1787         * html/canvas/WebGLUnsignedByteArray.h:
1788         (WebCore::WebGLUnsignedByteArray::isUnsignedByteArray):
1789         (WebCore::WebGLUnsignedByteArray::data):
1790         (WebCore::WebGLUnsignedByteArray::set):
1791         (WebCore::WebGLUnsignedByteArray::get):
1792         (WebCore::WebGLUnsignedByteArray::item):
1793         * html/canvas/WebGLUnsignedByteArray.idl:
1794         * html/canvas/WebGLUnsignedIntArray.cpp:
1795         (WebCore::WebGLUnsignedIntArray::create):
1796         (WebCore::WebGLUnsignedIntArray::WebGLUnsignedIntArray):
1797         (WebCore::WebGLUnsignedIntArray::length):
1798         (WebCore::WebGLUnsignedIntArray::byteLength):
1799         (WebCore::WebGLUnsignedIntArray::slice):
1800         (WebCore::WebGLUnsignedIntArray::set):
1801         * html/canvas/WebGLUnsignedIntArray.h:
1802         (WebCore::WebGLUnsignedIntArray::isUnsignedIntArray):
1803         (WebCore::WebGLUnsignedIntArray::data):
1804         (WebCore::WebGLUnsignedIntArray::set):
1805         (WebCore::WebGLUnsignedIntArray::get):
1806         (WebCore::WebGLUnsignedIntArray::item):
1807         * html/canvas/WebGLUnsignedIntArray.idl:
1808         * html/canvas/WebGLUnsignedShortArray.cpp:
1809         (WebCore::WebGLUnsignedShortArray::create):
1810         (WebCore::WebGLUnsignedShortArray::WebGLUnsignedShortArray):
1811         (WebCore::WebGLUnsignedShortArray::length):
1812         (WebCore::WebGLUnsignedShortArray::byteLength):
1813         (WebCore::WebGLUnsignedShortArray::slice):
1814         (WebCore::WebGLUnsignedShortArray::set):
1815         * html/canvas/WebGLUnsignedShortArray.h:
1816         (WebCore::WebGLUnsignedShortArray::isUnsignedShortArray):
1817         (WebCore::WebGLUnsignedShortArray::data):
1818         (WebCore::WebGLUnsignedShortArray::set):
1819         (WebCore::WebGLUnsignedShortArray::get):
1820         (WebCore::WebGLUnsignedShortArray::item):
1821         * html/canvas/WebGLUnsignedShortArray.idl:
1822         * platform/graphics/mac/GraphicsContext3DMac.cpp:
1823         (WebCore::GraphicsContext3D::bufferData):
1824         (WebCore::GraphicsContext3D::bufferSubData):
1825
1826 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1827
1828         Windows build fix.
1829
1830         * platform/network/cf/SocketStreamHandleCFNet.cpp: Declare constants as extern "C".
1831
1832 2009-11-15  Brent Fulgham  <bfulgham@webkit.org>
1833
1834         Reviewed by Oliver Hunt.
1835
1836         Enable support for webkit-box-shadow in Cairo builds.
1837         https://bugs.webkit.org/show_bug.cgi?id=26102.
1838
1839         Covered by existing fast/box-shadow tests.
1840
1841         * platform/graphics/cairo/GraphicsContextCairo.cpp:  Add
1842           support for fillRect shadows.
1843
1844 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1845
1846         Windows build fix.
1847
1848         * platform/network/cf/SocketStreamHandleCFNet.cpp: Don't try to include a file that's not
1849         in WebKitSupportLibrary.
1850
1851 2009-11-16  Alexey Proskuryakov  <ap@apple.com>
1852
1853         Reviewed by Darin Adler.
1854
1855         https://bugs.webkit.org/show_bug.cgi?id=31494
1856         Add unauthenticated proxy support to SocketStreamHandleCFNet
1857
1858         Cannot be tested in DRT.
1859
1860         * platform/network/cf/SocketStreamHandleCFNet.cpp:
1861         (WebCore::SocketStreamHandle::chooseProxy): Fetch proxy information from OS.
1862         (WebCore::SocketStreamHandle::createStreams): Apply it to the newly created streams.
1863
1864 2009-11-14  Antonio Gomes  <tonikitoo@webkit.org>
1865
1866         Reviewed by Antti Koivisto.
1867
1868         [Qt] Broken back/forward after using ErrorPageExtension to set error page
1869         https://bugs.webkit.org/show_bug.cgi?id=30573
1870
1871         Make FrameLoader::checkLoadCompleteForThisFrame method
1872         to check for any working DocumentLoader instance (through
1873         activeDocumentLoader()) instead of only checking for
1874         'm_provisionalDocumentLoader' in order to decide to if
1875         it is going to reset of not the back and forward history.
1876         after an error page has been loaded.
1877
1878         Test: LayoutTests/fast/history/back-forward-reset-after-error-handling.html
1879
1880         * loader/FrameLoader.cpp:
1881         (WebCore::FrameLoader::checkLoadCompleteForThisFrame):
1882
1883 2009-11-14  Chris Fleizach  <cfleizach@apple.com>
1884
1885         Reviewed by Darin Adler.
1886
1887         Need to implement ARIA role="directory"
1888         https://bugs.webkit.org/show_bug.cgi?id=31516
1889
1890         Test: platform/mac/accessibility/aria-directory.html
1891
1892         * accessibility/AXObjectCache.cpp:
1893         (WebCore::AXObjectCache::getOrCreate):
1894         * accessibility/AccessibilityList.cpp:
1895         (WebCore::AccessibilityList::isOrderedList):
1896         * accessibility/AccessibilityRenderObject.cpp:
1897         (WebCore::createARIARoleMap):
1898
1899 2009-11-15  Dave Tapuska  <dtapuska@rim.com>
1900
1901         Reviewed by George Staikos.
1902         
1903         Compare UChars single unit at a time as opposed to the uint32_t
1904         approach as casting to unaligned addresses may cause a bus failure
1905         on ARMv5 and below. This change replicates the same defines that
1906         exists in AtomicString.cpp
1907
1908         https://bugs.webkit.org/show_bug.cgi?id=31475
1909         
1910         * platform/text/StringHash.h:
1911         (WebCore::StringHash::equal):
1912
1913 2009-11-15  Evan Martin  <evan@chromium.org>
1914
1915         Reviewed by Adam Barth.
1916
1917         Wrap some SVG code in V8DOMWrapper with an ENABLE(SVG) test.
1918
1919         https://bugs.webkit.org/show_bug.cgi?id=31490
1920
1921         * bindings/v8/V8DOMWrapper.cpp:
1922
1923 2009-11-15  Maxime Simon  <simon.maxime@gmail.com>
1924
1925         Reviewed by Adam Barth.
1926
1927         [Haiku] Build fix. The FileChooser constructor doesn't need to be redefined.
1928
1929         * platform/haiku/FileChooserHaiku.cpp:
1930
1931 2009-11-15  Maxime Simon  <simon.maxime@gmail.com>
1932
1933         Reviewed by Adam Barth.
1934
1935         [Haiku] Build fix. ColorSpace name had a wrong CamelCase.
1936
1937         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
1938         (WebCore::GraphicsContext::setPlatformStrokeColor):
1939
1940 2009-11-15  Daniel Bates  <dbates@webkit.org>
1941
1942         No review, rolling out r50999.
1943         http://trac.webkit.org/changeset/50999
1944
1945         Need to fix some issues in the Windows build. Missed some places where
1946         RenderTextControl::isEdited is called.
1947
1948         * bindings/objc/DOMHTML.mm:
1949         (-[DOMHTMLInputElement _isEdited]):
1950         (-[DOMHTMLTextAreaElement _isEdited]):
1951         * dom/Document.cpp:
1952         (WebCore::Document::setFocusedNode):
1953         * html/HTMLInputElement.cpp:
1954         (WebCore::HTMLInputElement::defaultEventHandler):
1955         * rendering/RenderTextControl.cpp:
1956         (WebCore::RenderTextControl::RenderTextControl):
1957         (WebCore::RenderTextControl::setInnerTextValue):
1958         (WebCore::RenderTextControl::setUserEdited):
1959         (WebCore::RenderTextControl::subtreeHasChanged):
1960         * rendering/RenderTextControl.h:
1961         (WebCore::RenderTextControl::isEdited):
1962         (WebCore::RenderTextControl::setEdited):
1963         (WebCore::RenderTextControl::isUserEdited):
1964         * rendering/RenderTextControlSingleLine.cpp:
1965         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
1966         * wml/WMLInputElement.cpp:
1967         (WebCore::WMLInputElement::defaultEventHandler):
1968
1969 2009-11-15  Daniel Bates  <dbates@webkit.org>
1970
1971         Reviewed by Darin Adler.
1972
1973         https://bugs.webkit.org/show_bug.cgi?id=31186
1974
1975         Renames RenderTextControl::m_edited and RenderTextControl::m_userEdited to
1976         m_wasChangedSinceLastChangeEvent and m_lastChangeWasUserEdit, respectively.
1977         These are more descriptive names so as to clear an ambiguity surrounding
1978         their usage. Also, renames associated setters and getters so that they
1979         coincide with the renamed fields.
1980
1981         No functionality was changed. So, no tests were included.
1982
1983         * bindings/objc/DOMHTML.mm:
1984         (-[DOMHTMLInputElement _isEdited]):
1985         (-[DOMHTMLTextAreaElement _isEdited]):
1986         * dom/Document.cpp:
1987         (WebCore::Document::setFocusedNode):
1988         * html/HTMLInputElement.cpp:
1989         (WebCore::HTMLInputElement::defaultEventHandler):
1990         * rendering/RenderTextControl.cpp:
1991         (WebCore::RenderTextControl::RenderTextControl):
1992         (WebCore::RenderTextControl::setInnerTextValue):
1993         (WebCore::RenderTextControl::setLastChangeWasUserEdit): Formerly named setUserEdited.
1994         (WebCore::RenderTextControl::subtreeHasChanged):
1995         * rendering/RenderTextControl.h:
1996         (WebCore::RenderTextControl::wasChangedSinceLastChangeEvent): Formerly named isEdited.
1997         (WebCore::RenderTextControl::setChangedSinceLastChangeEvent): Formerly named setEdited.
1998         (WebCore::RenderTextControl::lastChangeWasUserEdit): Formerly named setUserEdited.
1999         * rendering/RenderTextControlSingleLine.cpp:
2000         (WebCore::RenderTextControlSingleLine::subtreeHasChanged):
2001         * wml/WMLInputElement.cpp:
2002         (WebCore::WMLInputElement::defaultEventHandler):
2003
2004 2009-11-14  Adele Peterson  <adele@apple.com>
2005
2006         Reviewed by Dan Bernstein.
2007
2008         Fix for <rdar://problem/6946165> Would like to be able to specify the number of visible lines when using -webkit-line-clamp
2009
2010         Test: fast/overflow/line-clamp.html
2011
2012         * css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Updated to handle different types of values.
2013         * css/CSSParser.cpp: (WebCore::CSSParser::parseValue): ditto.
2014         * css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty): ditto.
2015
2016         * rendering/RenderFlexibleBox.cpp: (WebCore::RenderFlexibleBox::layoutVerticalBox):
2017         Use the line count value if available.  Otherwise, convert the percentage to the line count, as we did before.  Also,
2018         if there is anchor as the last child box, still allow adding the ellipsis.
2019
2020         * rendering/RenderLayer.cpp:
2021         (WebCore::RenderLayer::scrollByRecursively): Call isNone on the LineClampValue to see if the line-clamp property has been set.
2022         (WebCore::RenderLayer::scrollRectToVisible): ditto.
2023
2024         * WebCore.xcodeproj/project.pbxproj: Added LineClampValue.h
2025         * rendering/style/LineClampValue.h: Added.
2026         (WebCore::LineClampValue::LineClampValue):
2027         (WebCore::LineClampValue::value):
2028         (WebCore::LineClampValue::isPercentage):
2029         (WebCore::LineClampValue::isNone):
2030         (WebCore::LineClampValue::operator==):
2031         (WebCore::LineClampValue::operator!=):
2032         * rendering/style/RenderStyleConstants.h: (WebCore::): Define ELineClampType enum for percentage or line count.
2033
2034         * rendering/style/RenderStyle.h: Use LineClampValue.
2035         (WebCore::InheritedFlags::lineClamp):
2036         (WebCore::InheritedFlags::setLineClamp):
2037         (WebCore::InheritedFlags::initialLineClamp):
2038         * rendering/style/StyleRareNonInheritedData.h:
2039
2040 2009-11-14  Eric Carlson  <eric.carlson@apple.com>
2041
2042         Reviewed by Oliver Hunt.
2043
2044         <rdar://problem/7287487> 
2045         Do not use QuickTime version to detect media controller theme
2046
2047         * WebCore.base.exp: Export wkMediaControllerThemeAvailable
2048         * platform/mac/WebCoreSystemInterface.h: Ditto.
2049         * platform/mac/WebCoreSystemInterface.mm: Ditto.
2050
2051         * rendering/RenderThemeMac.mm:
2052         (WebCore::mediaControllerTheme): Use wkMediaControllerThemeAvailable instead of the
2053         QuickTime version to see if it is possible to use MediaControllerThemeQuickTime.
2054
2055 2009-11-14  Kent Tamura  <tkent@chromium.org>
2056
2057         Reviewed by Darin Adler.
2058
2059         - Recognizes date/datetime/datetime-local/month/time/week types of INPUT element.
2060           They have no dedicated UI and no type validation for now.
2061         - Clean up setInputType() and formControlType() of HTMLInputElement.
2062         https://bugs.webkit.org/show_bug.cgi?id=29004
2063
2064         Test: fast/forms/input-type-change3.html
2065
2066         * html/HTMLInputElement.cpp:
2067         (WebCore::HTMLInputElement::valueMissing):
2068         (WebCore::HTMLInputElement::patternMismatch):
2069         (WebCore::HTMLInputElement::tooLong):
2070         (WebCore::createTypeMap):
2071         (WebCore::HTMLInputElement::setInputType):
2072         (WebCore::createFormControlTypes):
2073         (WebCore::HTMLInputElement::formControlType):
2074         (WebCore::HTMLInputElement::saveFormControlState):
2075         (WebCore::HTMLInputElement::restoreFormControlState):
2076         (WebCore::HTMLInputElement::accessKeyAction):
2077         (WebCore::HTMLInputElement::rendererIsNeeded):
2078         (WebCore::HTMLInputElement::createRenderer):
2079         (WebCore::HTMLInputElement::appendFormData):
2080         (WebCore::HTMLInputElement::isTextField):
2081         (WebCore::HTMLInputElement::valueWithDefault):
2082         (WebCore::HTMLInputElement::storesValueSeparateFromAttribute):
2083         (WebCore::HTMLInputElement::defaultEventHandler):
2084         (WebCore::HTMLInputElement::isRequiredFormControl):
2085         (WebCore::HTMLInputElement::dataList):
2086         * html/HTMLInputElement.h:
2087         (WebCore::HTMLInputElement::):
2088
2089 2009-11-13  Chris Fleizach  <cfleizach@apple.com>
2090
2091         Reviewed by Darin Adler.
2092
2093         WAI-ARIA: checkbox does not determine its label from text content
2094         https://bugs.webkit.org/show_bug.cgi?id=31456
2095
2096         Test: accessibility/aria-checkbox-text.html
2097
2098         * accessibility/AccessibilityRenderObject.cpp:
2099         (WebCore::AccessibilityRenderObject::title):
2100
2101 2009-11-13  Dimitri Glazkov  <dglazkov@chromium.org>
2102
2103         Unreviewed, build fix.
2104
2105         [Chromium] Fix build to catch up with http://trac.webkit.org/changeset/50973.
2106         This is just enough changes to unbreak the port.
2107
2108         * bindings/v8/ScriptController.cpp:
2109         (WebCore::mainThreadNormalWorld):
2110         * bindings/v8/V8Proxy.cpp:
2111         (WebCore::V8Proxy::initContextIfNeeded):
2112         * loader/FrameLoaderClient.h:
2113
2114 2009-11-13  Aaron Boodman  <aa@chromium.org>
2115
2116         Unreviewed fix for Chromium build.
2117
2118         * loader/FrameLoaderClient.h:
2119         (WebCore::FrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2120         Provide an empty implementation of this method because I don't know
2121         what it is supposed to do on Chromium.
2122
2123 2009-11-13  Aaron Boodman  <aa@chromium.org>
2124
2125         Unreviewed fix for Chromium build.
2126
2127         * loader/FrameLoader.h: Make dispatchDidClearWindowObjectsInAllWorlds()
2128         public, as Chromium's V8Proxy calls it.
2129
2130 2009-11-13  Aaron Boodman  <aa@chromium.org>
2131
2132         Unreviewed fix to Chromium build.
2133
2134         * bindings/v8/ScriptController.cpp:
2135         (WebCore::ScriptController::getAllWorlds): 
2136
2137 2009-11-13  Aaron Boodman  <aa@chromium.org>
2138
2139         Unreviewed fix for Chromium build.
2140
2141         * platform/text/TextBoundaries.cpp: Use longer path to refer to Unicode.h.
2142
2143 2009-11-13  Adam Barth  <abarth@webkit.org>
2144
2145         Unreviewed partial build fix for Chromium.  Should fix failure #4.
2146
2147         * bindings/v8/ScriptController.cpp:
2148         (WebCore::ScriptController::getAllWorlds):
2149         * bindings/v8/ScriptController.h:
2150         * bindings/v8/V8Proxy.cpp:
2151         (WebCore::V8Proxy::initContextIfNeeded):
2152
2153 2009-11-13  Adam Barth  <abarth@webkit.org>
2154
2155         Unreviewed partial build fix for Chromium.
2156
2157         * bindings/v8/ScriptController.h:
2158         (WebCore::ScriptController::getAllWorlds):
2159
2160 2009-11-13  Eric Seidel  <eric@webkit.org>
2161
2162         No review, build fix only.
2163
2164         Fix Windows and Chromium builds after http://trac.webkit.org/changeset/50977.
2165
2166         Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
2167         https://bugs.webkit.org/show_bug.cgi?id=31468
2168
2169         * WebCore.gypi: Rename TextBoundariesICU -> TextBoundaries
2170         * WebCore.vcproj/WebCore.vcproj: Rename TextBoundariesICU -> TextBoundaries
2171
2172 2009-11-12  Jeremy Orlow  <jorlow@chromium.org>
2173
2174         Reviewed by Dmitry Titov.
2175
2176         LocalStorage quota should include key sizes in its count
2177         https://bugs.webkit.org/show_bug.cgi?id=31451
2178
2179         * storage/StorageMap.cpp:
2180         (WebCore::StorageMap::setItem):
2181             Count keys in the quota when adding a new item.
2182         (WebCore::StorageMap::removeItem):
2183             Remove the key's length from the quota if we're removing the item.
2184         (WebCore::StorageMap::importItem):
2185             Assume that we're adding things for the first time.
2186             Count keys in the quota.
2187
2188 2009-11-13  Dominik Röttsches  <dominik.roettsches@access-company.com>
2189
2190         Reviewed by Eric Seidel.
2191
2192         Unify TextBoundaries implementations by only relying on WTF Unicode abstractions
2193         https://bugs.webkit.org/show_bug.cgi?id=31468
2194
2195         Moving TextBoundariesICU.cpp to TextBoundaries.cpp
2196         by removing the direct ICU dependency and replacing it
2197         with WTF functions and WebCore's own TextBreakIterator
2198         abstractions.
2199
2200         * GNUmakefile.am:
2201         * platform/graphics/gtk/SimpleFontDataGtk.cpp:
2202         * platform/text/TextBoundaries.cpp: Added.
2203         (WebCore::findNextWordFromIndex):
2204         (WebCore::findWordBoundary):
2205         * platform/text/TextBoundariesICU.cpp: Removed.
2206         * platform/text/TextBreakIterator.h:
2207         * platform/text/TextBreakIteratorICU.cpp:
2208         (WebCore::textBreakLast):
2209         (WebCore::textBreakPrevious):
2210
2211 2009-11-13  Shinichiro Hamaji  <hamaji@chromium.org>
2212
2213         Reviewed by Darin Adler.
2214
2215         WebCore::externalRepresentation should update layout before getting render object
2216         https://bugs.webkit.org/show_bug.cgi?id=31459
2217
2218         * rendering/RenderTreeAsText.cpp:
2219         (WebCore::externalRepresentation):
2220
2221 2009-11-13  Adam Roben  <aroben@apple.com>
2222
2223         Tell FrameLoaderClient when window objects in isolated worlds are
2224         cleared
2225
2226         Fixes <http://webkit.org/b/31124> Tell the WebFrameLoadDelegate when
2227         window objects in isolated worlds are cleared
2228
2229         Test: http/tests/security/isolatedWorld/didClearWindowObject.html
2230
2231         Reviewed by Dave Hyatt.
2232
2233         * bindings/js/JSDOMBinding.h:
2234         (WebCore::WebCoreJSClientData::getAllWorlds): Added. Copies all the
2235         worlds in m_worldSet to the passed-in Vector.
2236
2237         * bindings/js/ScriptController.cpp:
2238         (WebCore::ScriptController::getAllWorlds): Added. Calls through to
2239         WebCoreJSClientData.
2240         (WebCore::ScriptController::initScript): Changed to call
2241         FrameLoader::dispatchDidClearWindowObjectInWorld.
2242
2243         * bindings/js/ScriptController.h: Added getAllWorlds.
2244
2245         * loader/EmptyClients.h:
2246         (WebCore::EmptyFrameLoaderClient::dispatchDidClearWindowObjectInWorld):
2247         Updated for FrameLoaderClient change.
2248
2249         * loader/FrameLoader.cpp:
2250         (WebCore::FrameLoader::receivedFirstData):
2251         (WebCore::FrameLoader::begin):
2252         Changed to call dispatchDidClearWindowObjectsInAllWorlds.
2253
2254         (WebCore::FrameLoader::dispatchDidClearWindowObjectsInAllWorlds):
2255         Added. Retrieves all the worlds, then calls through to
2256         dispatchDidClearWindowObjectInWorld for each one.
2257         (WebCore::FrameLoader::dispatchDidClearWindowObjectInWorld): Replaces
2258         dispatchWindowObjectAvailable. Calls up to the client, then, if the
2259         world is the mainThreadNormalWorld(), tells the Inspector about it,
2260         too.
2261
2262         * loader/FrameLoader.h: Replaced dispatchWindowObjectAvailable with
2263         dispatchDidClearWindowObjectInWorld. Added
2264         dispatchDidClearWindowObjectsInAllWorlds.
2265
2266         * loader/FrameLoaderClient.h: Replaced windowObjectCleared with
2267         dispatchDidClearWindowObjectForWorld.
2268
2269 2009-11-13  Vitaly Repeshko  <vitalyr@chromium.org>
2270
2271         Reviewed by Dimitri Glazkov.
2272
2273         [V8] Fix SVG context assignment for pod types.
2274         https://bugs.webkit.org/show_bug.cgi?id=31497
2275
2276         I broke this in r50958.
2277
2278         Tested by svg/custom/viewport-update2.svg.
2279
2280         * bindings/scripts/CodeGeneratorV8.pm:
2281
2282 2009-11-13  Andrei Popescu  <andreip@google.com>
2283
2284         Reviewed by Dmitry Titov.
2285
2286         Bring the platform/android files inline with Android 2.0
2287         https://bugs.webkit.org/show_bug.cgi?id=31423
2288
2289         No new tests required: these are all Android-specific files.
2290
2291         * platform/android/ClipboardAndroid.cpp:
2292         (WebCore::ClipboardAndroid::files):
2293         * platform/android/ClipboardAndroid.h:
2294         * platform/android/FileChooserAndroid.cpp:
2295         (WebCore::FileChooser::basenameForWidth):
2296         (WebCore::fileButtonChooseFileLabel):
2297         * platform/android/KeyEventAndroid.cpp:
2298         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
2299         * platform/android/LocalizedStringsAndroid.cpp:
2300         (WebCore::contextMenuItemTagOpenLinkInNewWindow):
2301         (WebCore::contextMenuItemTagDownloadLinkToDisk):
2302         (WebCore::contextMenuItemTagCopyLinkToClipboard):
2303         (WebCore::contextMenuItemTagOpenImageInNewWindow):
2304         (WebCore::contextMenuItemTagDownloadImageToDisk):
2305         (WebCore::contextMenuItemTagCopyImageToClipboard):
2306         (WebCore::contextMenuItemTagOpenFrameInNewWindow):
2307         (WebCore::contextMenuItemTagCopy):
2308         (WebCore::contextMenuItemTagGoBack):
2309         (WebCore::contextMenuItemTagGoForward):
2310         (WebCore::contextMenuItemTagStop):
2311         (WebCore::contextMenuItemTagReload):
2312         (WebCore::contextMenuItemTagCut):
2313         (WebCore::contextMenuItemTagPaste):
2314         (WebCore::contextMenuItemTagNoGuessesFound):
2315         (WebCore::contextMenuItemTagIgnoreSpelling):
2316         (WebCore::contextMenuItemTagLearnSpelling):
2317         (WebCore::contextMenuItemTagSearchWeb):
2318         (WebCore::contextMenuItemTagLookUpInDictionary):
2319         (WebCore::contextMenuItemTagOpenLink):
2320         (WebCore::contextMenuItemTagIgnoreGrammar):
2321         (WebCore::contextMenuItemTagSpellingMenu):
2322         (WebCore::contextMenuItemTagShowSpellingPanel):
2323         (WebCore::contextMenuItemTagCheckSpelling):
2324         (WebCore::contextMenuItemTagCheckSpellingWhileTyping):
2325         (WebCore::contextMenuItemTagCheckGrammarWithSpelling):
2326         (WebCore::contextMenuItemTagFontMenu):
2327         (WebCore::contextMenuItemTagBold):
2328         (WebCore::contextMenuItemTagItalic):
2329         (WebCore::contextMenuItemTagUnderline):
2330         (WebCore::contextMenuItemTagOutline):
2331         (WebCore::contextMenuItemTagWritingDirectionMenu):
2332         (WebCore::contextMenuItemTagTextDirectionMenu):
2333         (WebCore::contextMenuItemTagDefaultDirection):
2334         (WebCore::contextMenuItemTagLeftToRight):
2335         (WebCore::contextMenuItemTagRightToLeft):
2336         (WebCore::mediaElementLoadingStateText):
2337         (WebCore::mediaElementLiveBroadcastStateText):
2338         (WebCore::searchableIndexIntroduction):
2339         (WebCore::resetButtonDefaultLabel):
2340         (WebCore::submitButtonDefaultLabel):
2341         (WebCore::inputElementAltText):
2342         * platform/android/RenderThemeAndroid.cpp:
2343         (WebCore::RenderTheme::themeForPage):
2344         (WebCore::RenderThemeAndroid::baselinePosition):
2345         (WebCore::RenderThemeAndroid::paintButton):
2346         (WebCore::adjustMenuListStyleCommon):
2347         (WebCore::RenderThemeAndroid::paintCombo):
2348         * platform/android/ScreenAndroid.cpp:
2349         * platform/android/ScrollViewAndroid.cpp:
2350         (WebCore::ScrollView::platformOffscreenContentRectangle):
2351         * platform/android/TemporaryLinkStubs.cpp:
2352         (JSC::Bindings::dispatchJNICall):
2353         * platform/android/WidgetAndroid.cpp:
2354         (WebCore::Widget::setFrameRect):
2355
2356 2009-11-13  Norbert Leser  <norbert.leser&nokia.com>
2357
2358         Reviewed by Eric Seidel.
2359
2360         Added macros for USERINCLUDE paths within symbian blocks
2361         to guarantee inclusion of respective header files from local path
2362         first (to avoid clashes with same names of header files in system include path).
2363
2364         * WebCore.pro:
2365
2366 2009-11-13  Hironori Bono  <hbono@chromium.org>
2367
2368         Reviewed by Oliver Hunt.
2369
2370         Implement composition events introduced in DOM Level 3.
2371         This change adds a new IDL which defines the composition events, adds a class which
2372         implements the composition events, and sends the composition events according to
2373         the specification.
2374         https://bugs.webkit.org/show_bug.cgi?id=26310
2375
2376         Test: fast/events/ime-composition-events-001.html
2377
2378         * DerivedSources.make: Added CompositionEvent so we can compile "CompositionEvent.idl".
2379         * GNUmakefile.am: Added "CompositionEvent.{cpp,h,idl}".
2380         * WebCore.gypi: ditto.
2381         * WebCore.pro: ditto
2382         * WebCore.vcproj/WebCore.vcproj: ditto.
2383         * WebCore.xcodeproj/project.pbxproj: Added "CompositionEvent.{cpp,h,idl}" and "JSCompositionEvent.{cpp,h}".
2384         * WebCoreSources.bkl: Added "JSCompositionEvent.{cpp,h}".
2385         * bindings/js/JSEventCustom.cpp:
2386         (WebCore::toJS): Call isCompositionEvent() to create the CompositionEvent wrapper.
2387         * bindings/v8/DOMObjectsInclude.h: Added "JSCompositionEvent.h".
2388         * bindings/v8/DerivedSourcesAllInOne.cpp: Added "JSCompositionEvent.cpp".
2389         * bindings/v8/V8DOMWrapper.cpp: Call isCompositionEvent() to identify an event as a CompositionEvent.
2390         (WebCore::V8DOMWrapper::convertEventToV8Object):
2391         * bindings/v8/V8Index.cpp: Added "V8CompositionEvent.h".
2392         * bindings/v8/V8Index.h: Added V8Index::COMPOSITIONEVENT.
2393         * dom/CompositionEvent.cpp: Implements the CompositionEvent class.
2394         (WebCore::CompositionEvent::CompositionEvent):
2395         (WebCore::CompositionEvent::~CompositionEvent):
2396         (WebCore::CompositionEvent::initCompositionEvent):
2397         (WebCore::CompositionEvent::isCompositionEvent):
2398         * dom/CompositionEvent.h: Declares the CompositionEvent class.
2399         (WebCore::CompositionEvent::create):
2400         (WebCore::CompositionEvent::data):
2401         * dom/CompositionEvent.idl: Added the IDL of DOM CompositionEvent.
2402         * dom/Event.cpp:
2403         (WebCore::Event::isCompositionEvent): Added a method to identify an event is a CompositionEvent.
2404         * dom/Event.h:
2405         * dom/EventNames.h: Added composition{start,update,end} to eventNames.
2406         * editing/Editor.cpp:
2407         (WebCore::Editor::confirmComposition): Sent a CompositionEnd event.
2408         (WebCore::Editor::setComposition): Sent a Composition{Start,Update,End} event.
2409
2410 2009-11-13  Jens Alfke  <snej@chromium.org>
2411
2412         Reviewed by Dimitri Glazkov.
2413
2414         Fix a link error in unofficial GCC 4.4 builds on Linux.
2415         https://bugs.webkit.org/show_bug.cgi?id=31477
2416
2417         * bindings/v8/V8Binding.cpp:  Add explicit instantiations of v8StringToWebCoreString template.
2418
2419 2009-11-13  Eric Seidel  <eric@webkit.org>
2420
2421         No review, build fix only.
2422
2423         Fix Debug build after http://trac.webkit.org/changeset/50960.
2424
2425         The CounterNode class does not support all methods necessary to efficiently update the counter tree as needed per CSS2.1
2426         https://bugs.webkit.org/show_bug.cgi?id=31213
2427
2428         * rendering/CounterNode.cpp:
2429         (WebCore::showTreeAndMark):
2430         * rendering/RenderCounter.cpp:
2431         (WebCore::destroyCounterNodeChildren):
2432
2433 2009-11-13  Dirk Schulze  <krit@webkit.org>
2434
2435         Reviewed by Gustavo Noronha.
2436
2437         [CAIRO] shadow support for Canvas and SVG
2438         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2439
2440         We currently fill a path with solid color instead of filling
2441         a clipping path. This causes problems on some composite operators,
2442         since Cairo modifies the area outside the path.
2443         This fixes the behavior of WebKitGtk on fast/canvas/canvas-composite-alpha.html
2444
2445         Thanks to Benjamin Otte for tracking the bug down.
2446
2447         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2448         (WebCore::setPlatformFill):
2449
2450 2009-11-12  Dumitru Daniliuc  <dumi@chromium.org>
2451
2452         Reviewed by Dimitri Glazkov.
2453
2454         Adding Chromium's DatabaseTracker implementation.
2455
2456         https://bugs.webkit.org/show_bug.cgi?id=31440
2457
2458         * WebCore.gyp/WebCore.gyp:
2459         * WebCore.gypi:
2460         * storage/DatabaseTracker.h:
2461         * storage/chromium/DatabaseTrackerChromium.cpp:
2462         (WebCore::DatabaseTracker::fullPathForDatabase):
2463         (WebCore::DatabaseTracker::getMaxSizeForDatabase):
2464         * storage/chromium/QuotaTracker.cpp:
2465         (WebCore::QuotaTracker::updateDatabaseSize):
2466         * storage/chromium/QuotaTracker.h:
2467
2468 2009-11-13  Carol Szabo  <carol.szabo@nokia.com>
2469
2470         Reviewed by Darin Adler.
2471
2472         The CounterNode class is missing some basic tree navigation methods common in other WebKit trees such as the rendering tree
2473         https://bugs.webkit.org/show_bug.cgi?id=31213
2474         Added tree navigation methods that permit full implementation of CSS2.1
2475         counter feature without using recursion proportional to the counter
2476         tree depth.
2477         No new tests because I did not find any bug that is fixed by this
2478         commit yet, this just reduces the size of the patch for 11031 and
2479         helps respond to some concerns regarding that patch.
2480
2481         * rendering/CounterNode.cpp:
2482         (WebCore::CounterNode::CounterNode):
2483
2484         (WebCore::CounterNode::nextInPreOrderAfterChildren):
2485         (WebCore::CounterNode::nextInPreOrder):
2486         Added to support non-recursive tree traversal necessary for
2487         efficient full implementation of CSS2.1 counters.
2488
2489         (WebCore::CounterNode::lastDescendant):
2490         (WebCore::CounterNode::previousInPreOrder):
2491         Moved this methods such that they occupy a place similar to that of
2492         identically named methods on the render tree. This allows for their
2493         broader use needed in full implementation of CSS2.1 counters.
2494
2495         (WebCore::CounterNode::resetRenderer):
2496         (WebCore::CounterNode::resetRenderers):
2497         (WebCore::CounterNode::recount):
2498         (WebCore::CounterNode::insertAfter):
2499         (WebCore::CounterNode::removeChild):
2500         Changed such that insertion/removal of a counter, triggers not only
2501         recalculation of PrefixWidths, but also reassesment of values in
2502         counter nodes. This is the basis full implementation of CSS2.1
2503         counters. It does not change current behavior by much because of
2504         changes needed to the recalculation algorithm, but those are comming
2505         in the patch for 11031.
2506         (WebCore::showTreeAndMark):
2507         * rendering/CounterNode.h:
2508         * rendering/RenderCounter.cpp:
2509         (WebCore::counter):
2510         Only changed argument type to prepare for implementation of Darin
2511         Adler's recommendation for the patch to 11031.
2512
2513         (WebCore::RenderCounter::invalidate):
2514         (WebCore::destroyCounterNodeChildren):
2515         (WebCore::RenderCounter::destroyCounterNodes):
2516         * rendering/RenderCounter.h:
2517         * rendering/RenderObjectChildList.cpp:
2518         (WebCore::invalidateCountersInContainer):
2519         (WebCore::RenderObjectChildList::invalidateCounters):
2520         * rendering/RenderObjectChildList.h:
2521         Added the ability to restrict invalidation to counters with a given
2522         identifier.
2523         Also invalidated counters that are on the child container itself
2524         which were missed by the previous algorithm, but were a valid case.
2525
2526 2009-11-13  Vitaly Repeshko  <vitalyr@chromium.org>
2527
2528         Reviewed by Dimitri Glazkov.
2529
2530         [V8] Protect SVG animated properties from destruction in bindings.
2531         https://bugs.webkit.org/show_bug.cgi?id=31474
2532
2533         See http://crbug.com/26719.
2534
2535         Tested by LayoutTests/svg/custom/js-update-transform-addition.svg
2536         under Valgrind.
2537
2538         Made sure we keep a reference to SVG properties while setting a
2539         context:
2540         * bindings/scripts/CodeGeneratorV8.pm:
2541         * bindings/v8/V8Proxy.h:
2542         (WebCore::V8Proxy::withSVGContext):
2543
2544 2009-11-13  Brent Fulgham  <bfulgham@webkit.org>
2545
2546         Reviewed by Alexey Proskuryakov.
2547
2548         [CAIRO] shadow support for Canvas and SVG.
2549         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2550
2551         Incorporate Benjamin Otte's recommendations to avoid
2552         a buffer overrun, and small performance improvement.
2553
2554         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2555         (WebCore::copyContextProperties): Correctly size output
2556          storage for cairo_get_dash to avoid buffer overrun.
2557         (WebCore::drawPathShadow): Prefer cairo_fill_extents
2558          to slower cairo_stroke_extents when not drawing shadows.
2559
2560 2009-11-13  Dumitru Daniliuc  <dumi@chromium.org>
2561
2562         Reviewed by Dimitri Glazkov.
2563
2564         Do not register Chromium's HTML5 DB VFS as the default
2565         VFS. Otherwise, other sqlite DB users in the same process will
2566         stop working.
2567
2568         https://bugs.webkit.org/show_bug.cgi?id=31462
2569
2570         * platform/sql/chromium/SQLiteFileSystemChromium.cpp:
2571         (WebCore::SQLiteFileSystem::openDatabase):
2572         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
2573         (WebCore::SQLiteFileSystem::registerSQLiteVFS):
2574         * platform/sql/chromium/SQLiteFileSystemChromiumWin.cpp:
2575         (WebCore::SQLiteFileSystem::registerSQLiteVFS):
2576
2577 2009-11-13  Alexey Proskuryakov  <ap@apple.com>
2578
2579         Windows build fix
2580
2581         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2582         (WebCore::SocketStreamHandle::SocketStreamHandle): Explicitly cast "-1" to CFOptionFlags,
2583         avoiding a sign mismatch warning.
2584
2585 2009-11-13  Alexey Proskuryakov  <ap@apple.com>
2586
2587         Release build fix.
2588
2589         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2590         (WebCore::SocketStreamHandle::readStreamCallback):
2591         (WebCore::SocketStreamHandle::writeStreamCallback):
2592         Use ASSERT_UNUSED for unused stream parameter.
2593
2594 2009-11-12  Alexey Proskuryakov  <ap@apple.com>
2595
2596         Reviewed by Darin Adler.
2597
2598         https://bugs.webkit.org/show_bug.cgi?id=31441
2599         Implement SocketStreamHandleCFNet
2600
2601         Existing WebSocket tests now pass on Mac. No proxy support yet.
2602
2603         * platform/network/SocketStreamHandleClient.h:
2604         * platform/network/cf/SocketStreamHandle.h:
2605         (WebCore::SocketStreamHandle::shouldUseSSL):
2606         (WebCore::SocketStreamHandle::refAuthenticationClient):
2607         (WebCore::SocketStreamHandle::derefAuthenticationClient):
2608         (WebCore::SocketStreamHandle::):
2609         * platform/network/cf/SocketStreamHandleCFNet.cpp:
2610         (WebCore::SocketStreamHandle::SocketStreamHandle):
2611         (WebCore::SocketStreamHandle::chooseProxy):
2612         (WebCore::SocketStreamHandle::createStreams):
2613         (WebCore::SocketStreamHandle::copyCFStreamDescription):
2614         (WebCore::SocketStreamHandle::readStreamCallback):
2615         (WebCore::SocketStreamHandle::writeStreamCallback):
2616         (WebCore::SocketStreamHandle::~SocketStreamHandle):
2617         (WebCore::SocketStreamHandle::platformSend):
2618         (WebCore::SocketStreamHandle::platformClose):
2619         (WebCore::SocketStreamHandle::receivedCredential):
2620         (WebCore::SocketStreamHandle::receivedRequestToContinueWithoutCredential):
2621         (WebCore::SocketStreamHandle::receivedCancellation):
2622
2623 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2624
2625         Reviewed by Timothy Hatcher.
2626
2627         Web Inspector: preload status bar button glyphs
2628         in order to prevent them from flickering (take 2).
2629
2630         https://bugs.webkit.org/show_bug.cgi?id=31439
2631
2632         * inspector/front-end/inspector.js:
2633         (preloadImages):
2634
2635 2009-11-13  Pavel Feldman  <pfeldman@chromium.org>
2636
2637         Reviewed by Adam Barth.
2638
2639         Chromium: [REGRESSION] Crash while stopping on a breakpoint.
2640         Rolling back r50890.
2641
2642         https://bugs.webkit.org/show_bug.cgi?id=31467
2643
2644         * bindings/v8/V8Proxy.cpp:
2645         (WebCore::V8Proxy::canAccessPrivate):
2646
2647 2009-11-13  Dirk Schulze  <krit@webkit.org>
2648
2649         Reviewed by Gustavo Noronha.
2650
2651         [CAIRO] shadow support for Canvas and SVG
2652         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2653         
2654         This is the fix of a regression, caused by the shadow patch
2655         from the bug above. Reinserted the save and restore calls
2656         that were accidently removed by the previous patch.
2657
2658         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2659         (WebCore::setPlatformFill):
2660         (WebCore::setPlatformStroke):
2661
2662 2009-11-13  Pavel Feldman  <pfeldman@chromium.org>
2663
2664         Not reviewed. Reverting r50908 since it makes inspector tests
2665         time out.
2666
2667         https://bugs.webkit.org/show_bug.cgi?id=31439
2668
2669         * inspector/front-end/inspector.js:
2670
2671 2009-11-13  Mikhail Naganov  <mnaganov@chromium.org>
2672
2673         Reviewed by Timothy Hatcher.
2674
2675         Enable 'console.profile()' and 'console.profileEnd()'
2676         regardless of JAVASCRIPT_DEBUGGER.
2677
2678         https://bugs.webkit.org/show_bug.cgi?id=31293
2679
2680         * WebCore.gypi:
2681         * bindings/js/JSConsoleCustom.cpp:
2682         (WebCore::JSConsole::profile):
2683         (WebCore::JSConsole::profileEnd):
2684         * bindings/v8/custom/V8ConsoleCustom.cpp: Added.
2685         (WebCore::CALLBACK_FUNC_DECL):
2686         * bindings/v8/custom/V8CustomBinding.h:
2687         * page/Console.idl:
2688
2689 2009-11-12  David Levin  <levin@chromium.org>
2690
2691         Reviewed by NOBODY.
2692
2693         Chromium build fix.
2694
2695         * bindings/v8/ScriptController.h:
2696         (WebCore::ScriptController::evaluateInWorld): Add a dummy
2697          method which isn't called in chromium to make things compile.
2698
2699 2009-11-12  Anantanarayanan G Iyengar  <ananta@chromium.org>
2700
2701         Reviewed by Adam Barth.
2702         
2703         The document-open.html test was flaky at times. The test invokes the layout test plugin
2704         which in its destroy stream handler opens a new document. This basically tears down the
2705         stream and the associated plugin instance, which causes a crash when the plugin stream
2706         dereferences an invalid m_client pointer which points to the PluginView instance which
2707         is invalid at this time. Fix is to set the m_client pointer to NULL in the stop function
2708         and check for the same.
2709        
2710         https://bugs.webkit.org/show_bug.cgi?id=31067
2711
2712         * plugins/PluginStream.cpp:
2713         (WebCore::PluginStream::stop):
2714         (WebCore::PluginStream::destroyStream):
2715
2716 2009-11-12  Dumitru Daniliuc  <dumi@chromium.org>
2717
2718         Reviewed by Dimitri Glazkov.
2719
2720         Renaming some parameters passed to DB-related methods to better
2721         indicate their purpose.
2722
2723         https://bugs.webkit.org/show_bug.cgi?id=31449
2724
2725         * platform/chromium/ChromiumBridge.h:
2726
2727 2009-11-12  Simon Fraser  <simon.fraser@apple.com>
2728
2729         Reviewed by Dan Bernstein.
2730
2731         Transformed reflected elements are clipped inside element with opacity
2732         https://bugs.webkit.org/show_bug.cgi?id=30957
2733         
2734         transparencyClipBox() attemped to minimize the size of the transparency layer by mapping
2735         each clip rect into painting space before taking the unions. This, however, did not work
2736         correctly with combinations of reflections and transforms. Fixed by unioning the
2737         clipRect and mapping through transforms along the way.
2738         
2739         Also leave some #ifdeffed code in beginTransparencyLayers() that makes it easy to see
2740         where the transparency layers are.
2741
2742         Test: fast/reflections/opacity-reflection-transform.html
2743
2744         * rendering/RenderLayer.cpp:
2745         (WebCore::expandClipRectForDescendantsAndReflection):
2746         (WebCore::transparencyClipBox):
2747         (WebCore::RenderLayer::beginTransparencyLayers):
2748
2749 2009-11-12  Adam Barth  <abarth@webkit.org>
2750
2751         Reviewed by Darin Fisher.
2752
2753         Improve SecurityOrigin::toString comment
2754         https://bugs.webkit.org/show_bug.cgi?id=31041
2755
2756         * page/SecurityOrigin.h:
2757
2758 2009-11-12  Shinichiro Hamaji  <hamaji@chromium.org>
2759
2760         Reviewed by Darin Adler.
2761
2762         externalRepresentation should take Frame as the argument
2763         https://bugs.webkit.org/show_bug.cgi?id=31393
2764
2765         No new tests as this is just a refactoring.
2766
2767         * WebCore.base.exp:
2768         * rendering/RenderTreeAsText.cpp:
2769         (WebCore::externalRepresentation):
2770         * rendering/RenderTreeAsText.h:
2771
2772 2009-11-12  Ben Murdoch  <benm@google.com>
2773
2774         Reviewed by Dimitri Glazkov.
2775
2776         [Android] The Android specific files in page/Android are out of date.
2777         https://bugs.webkit.org/show_bug.cgi?id=31437
2778
2779         No tests required.
2780
2781         * page/android/DragControllerAndroid.cpp:
2782         (WebCore::DragController::dragOperation): Added.
2783         (WebCore::DragController::cleanupAfterSystemDrag):
2784         * page/android/EventHandlerAndroid.cpp:
2785         (WebCore::EventHandler::accessKeyModifiers): Added.
2786         * page/android/InspectorControllerAndroid.cpp: Removed.
2787
2788 2009-11-12  Brent Fulgham  <bfulgham@webkit.org>
2789
2790         Reviewed by Simon Fraser.
2791
2792         [CAIRO] shadow support for Canvas and SVG.
2793         [https://bugs.webkit.org/show_bug.cgi?id=30960]
2794
2795         Implement Canvas/SVG shadow support for Cairo.  This patch
2796         uses the filter code from SVG Filters.  That means that it is
2797         necessary to activate filters to see the shadows.
2798
2799         Test: fast/canvas/canvas-shadow.html
2800
2801         * GNUmakefile.am:
2802         * WebCore.vcproj/WebCore.vcproj: Add new ImageBufferFilter files.
2803         * platform/graphics/GraphicsContext.h:
2804         * platform/graphics/cairo/GraphicsContextCairo.cpp:
2805         (GraphicsContext::calculateShadowBufferDimensions): New helper routine.
2806         (WebCore::setPlatformFill):
2807         (WebCore::setPlatformStroke):
2808         (WebCore::copyContextProperties):
2809         (WebCore::drawPathShadow):
2810         (WebCore::GraphicsContext::fillPath):
2811         (WebCore::GraphicsContext::strokePath):
2812         (WebCore::GraphicsContext::drawPath):
2813         (WebCore::GraphicsContext::setPlatformShadow):
2814         (WebCore::GraphicsContext::createPlatformShadow):
2815         * platform/graphics/cairo/ImageCairo.cpp:
2816         (WebCore::BitmapImage::draw): Add filter effect.
2817         * platform/graphics/filters/Filter.h: Correct 'const' signatures.
2818         * platform/graphics/filters/ImageBufferFilter.cpp: Added.
2819         * platform/graphics/filters/ImageBufferFilter.h: Added.
2820         * svg/graphics/filters/SVGFilter.cpp: Correct 'const' signatures.
2821         * svg/graphics/filters/SVGFilter.h: Correct 'const' signatures.
2822
2823 2009-11-12  Dmitry Titov  <dimich@chromium.org>
2824
2825         Reviewed by Alexey Proskuryakov.
2826
2827         Add postTaskToMainThread to ScriptExecutionContext.
2828         Move the code to post task to the main thread into a new method on ScriptExecutionContext,
2829         to use as a helper implementation of the virtual ScriptExecutionContext::postTask(Task) in
2830         contexts that live on the main thread.
2831         https://bugs.webkit.org/show_bug.cgi?id=31427
2832
2833         No new tests - simply moving the code.
2834
2835         * dom/Document.cpp:
2836         (WebCore::Document::postTask):
2837         * dom/ScriptExecutionContext.cpp:
2838         (WebCore::ScriptExecutionContextTaskTimer::ScriptExecutionContextTaskTimer):
2839         (WebCore::ScriptExecutionContextTaskTimer::fired):
2840         (WebCore::PerformTaskData::PerformTaskData):
2841         (WebCore::PerformTaskData::performTask):
2842         (WebCore::ScriptExecutionContext::postTaskToMainThread):
2843         * dom/ScriptExecutionContext.h:
2844
2845 2009-11-12  Simon Fraser  <simon.fraser@apple.com>
2846
2847         Reviewed by Darin Adler.
2848
2849         Fix crash when removing compositing layers when GC is enabled
2850         https://bugs.webkit.org/show_bug.cgi?id=31429
2851
2852         Workaround <rdar://problem/7390716> by special-casing the removal
2853         of all sublayers when GC is enabled.
2854
2855         * platform/graphics/mac/GraphicsLayerCA.mm:
2856         (WebCore::safeSetSublayers):
2857         (WebCore::GraphicsLayerCA::updateSublayerList):
2858         (WebCore::GraphicsLayerCA::swapFromOrToTiledLayer):
2859
2860 2009-11-12  Jens Alfke  <snej@chromium.org>
2861
2862         Reviewed by Dimitri Glazkov.
2863
2864         The last of the V8 binding optimizations.
2865         - Replace string-valued element accessors with a shared getter/setter function.
2866         - Change error handling flow of control to avoid extra branches and function calls.
2867         https://bugs.webkit.org/show_bug.cgi?id=31443
2868         
2869         * bindings/scripts/CodeGeneratorV8.pm:
2870         * bindings/v8/V8Binding.cpp:
2871         (WebCore::getElementStringAttr):  Body of string-valued Element getter function.
2872         (WebCore::setElementStringAttr):  Body of string-valued Element setter function.
2873         * bindings/v8/V8Binding.h:
2874
2875 2009-11-12  Sam Weinig  <sam@webkit.org>
2876
2877         Reviewed by Oliver Hunt.
2878
2879         Fix for <rdar://problem/7267951>
2880         Canvas methods should reject uses of NaN and Infinity.
2881
2882         Test: fast/canvas/canvas-with-illegal-args.html
2883
2884         * html/canvas/CanvasRenderingContext2D.cpp:
2885         (WebCore::CanvasRenderingContext2D::scale):
2886         (WebCore::CanvasRenderingContext2D::rotate):
2887         (WebCore::CanvasRenderingContext2D::translate):
2888         (WebCore::CanvasRenderingContext2D::transform):
2889         (WebCore::CanvasRenderingContext2D::setTransform):
2890
2891 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2892
2893         Reviewed by Timothy Hatcher.
2894
2895         Web Inspector: profile timeline panel, fix obvious problems.
2896
2897         https://bugs.webkit.org/show_bug.cgi?id=31432
2898
2899         * inspector/front-end/AbstractTimelinePanel.js:
2900         (WebInspector.AbstractTimelinePanel.prototype.updateGraphDividersIfNeeded):
2901         * inspector/front-end/TimelinePanel.js:
2902         (WebInspector.TimelinePanel.prototype._setWindowPosition):
2903         (WebInspector.TimelineCalculator):
2904         (WebInspector.TimelineCalculator.prototype.get minimumBoundary):
2905         (WebInspector.TimelineCalculator.prototype.get maximumBoundary):
2906         (WebInspector.TimelineCalculator.prototype.reset):
2907         (WebInspector.TimelineCalculator.prototype.updateBoundaries):
2908         (WebInspector.TimelineCalculator.prototype.formatValue):
2909         (WebInspector.TimelineGraph):
2910         (WebInspector.TimelineGraph.prototype.refresh):
2911         * inspector/front-end/utilities.js:
2912         (Element.prototype.hasStyleClass):
2913
2914 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
2915
2916         Reviewed by Timothy Hatcher.
2917
2918         Web Inspector: preload status bar button glyphs
2919         in order to prevent them from flickering.
2920
2921         https://bugs.webkit.org/show_bug.cgi?id=31439
2922
2923         * inspector/front-end/inspector.js:
2924         (preloadImages):
2925
2926 2009-11-12  Adam Roben  <aroben@apple.com>
2927
2928         Replace worldIDs with world objects
2929
2930         Part of <http://webkit.org/b/31414> Implement new SPI for dealing with
2931         user scripts/stylesheets and isolated worlds
2932
2933         Reviewed by Sam Weinig.
2934
2935         Covered by existing tests.
2936
2937         * WebCore.base.exp: Update exported symbols to match what now exists
2938         and is needed by WebKit.
2939
2940         * bindings/js/ScheduledAction.cpp:
2941         (WebCore::ScheduledAction::execute): Updated for function rename.
2942
2943         * bindings/js/ScriptController.cpp: Removed code that dealt with
2944         worldIDs.
2945         (WebCore::ScriptController::createWorld): Added. Returns a new world
2946         suitable for use on the main thread.
2947         (WebCore::ScriptController::executeScriptInWorld): Renamed from
2948         executeScriptInIsolatedWorld, since this works just fine with a
2949         "normal" world.
2950
2951         * bindings/js/ScriptController.h: Added createWorld, removed functions
2952         that took worldIDs, renamed executeScriptInIsolatedWorld to
2953         executeScriptInWorld.
2954
2955         * page/Frame.cpp:
2956         (WebCore::Frame::injectUserScripts):
2957         (WebCore::Frame::injectUserScriptsForWorld):
2958         Updated for changes to UserScriptMap and ScriptController.
2959
2960         * page/Frame.h: Changed injectUserScriptsForWorld to take a
2961         DOMWrapperWorld* instead of a worldID.
2962
2963         * page/PageGroup.cpp:
2964         (WebCore::PageGroup::addUserScriptToWorld):
2965         (WebCore::PageGroup::addUserStyleSheetToWorld):
2966         (WebCore::PageGroup::removeUserScriptFromWorld):
2967         (WebCore::PageGroup::removeUserStyleSheetFromWorld):
2968         (WebCore::PageGroup::removeUserScriptsFromWorld):
2969         (WebCore::PageGroup::removeUserStyleSheetsFromWorld):
2970         * page/PageGroup.h:
2971         Changed these functions to take a DOMWrapperWorld* instead of a
2972         worldID. Also updated for changes to UserScript and UserStyleSheet.
2973
2974         * page/UserScript.h:
2975         * page/UserStyleSheet.h: Changed not to hold a worldID, since it was
2976         never used.
2977
2978         * page/UserScriptTypes.h:
2979         * page/UserStyleSheetTypes.h: Changed UserScriptMap and
2980         UserStyleSheetMap to use a RefPtr<DOMWrapperWorld> instead of a
2981         worldID as their key type.
2982
2983
2984 2009-11-12  Brian Weinstein  <bweinstein@apple.com>
2985
2986         Reviewed by Tim Hatcher.
2987
2988         Fixes <http://webkit.org/b/31260>.
2989         Web Inspector: Main Resources Other than HTML are mis-detected.
2990         
2991         Even if the resource is a main resource, look at its CachedResource type, 
2992         because it might be an image, stylesheet, or JavaScript file, and we
2993         want to show them all correctly.
2994
2995         * inspector/InspectorResource.cpp:
2996         (WebCore::InspectorResource::cachedResourceType): Move this method out so it can be called in multiple places.
2997         (WebCore::InspectorResource::type): 
2998         * inspector/InspectorResource.h:
2999
3000 2009-11-12  Jens Alfke  <snej@chromium.org>
3001
3002         Reviewed by Dimitri Glazkov.
3003
3004         Table-driven setup for V8 binding template callback functions. 100k in code savings.
3005         https://bugs.webkit.org/show_bug.cgi?id=31420
3006
3007         * bindings/scripts/CodeGeneratorV8.pm:  Change generated ConfigureXXXTemplate fn
3008             to call configureTemplate().
3009         * bindings/v8/V8Binding.cpp:
3010         (WebCore::configureTemplate):  New function; does all the standard configuration work.
3011         (WebCore::createCallback):  De-inlined wrapper for FunctionTemplate creation.
3012         * bindings/v8/V8Binding.h:
3013         * bindings/v8/V8Proxy.cpp:
3014         (WebCore::batchConfigureAttributes):  Just wrapped the very long fn parameter list.
3015         (WebCore::batchConfigureCallbacks):  New function, used by configureTemplate.
3016         (WebCore::batchConfigureConstants):  Just wrapped the very long fn parameter list.
3017         * bindings/v8/V8Proxy.h:
3018
3019 2009-11-12  Dumitru Daniliuc  <dumi@chromium.org>
3020
3021         Unreviewed, fix Chromium build after http://trac.webkit.org/changeset/50876.
3022
3023         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
3024
3025 2009-11-12  Eric Carlson  <eric.carlson@apple.com>
3026
3027         Reviewed by Dan Bernstein.
3028
3029         <rdar://problem/7388969> Add DOM API for fullscreen video
3030         
3031         DOM API for fullscreen <video>.
3032
3033         Tests: media/media-fullscreen-inline.html
3034                media/media-fullscreen-not-in-document.html
3035
3036         * dom/EventNames.h:
3037             Add webkitbeginfullscreen and webkitendfullscreen.
3038
3039         * html/HTMLAttributeNames.in:
3040             Add onwebkitbeginfullscreen and onwebkitendfullscreen.
3041
3042         * html/HTMLMediaElement.cpp:
3043         (WebCore::HTMLMediaElement::parseMappedAttribute):
3044             Deal with onwebkitbeginfullscreen and onwebkitendfullscreen.
3045         (WebCore::HTMLMediaElement::enterFullscreen):
3046             Schedule webkitbeginfullscreenEvent event, don't set m_isFullscreen unless we
3047             actually do enter fullscreen.
3048         (WebCore::HTMLMediaElement::exitFullscreen):
3049             Schedule webkitendfullscreenEvent event.
3050         (WebCore::HTMLMediaElement::webkitEnterFullScreen):
3051         (WebCore::HTMLMediaElement::webkitExitFullScreen):
3052         (WebCore::HTMLMediaElement::webkitSupportsFullscreen):
3053         (WebCore::HTMLMediaElement::webkitDisplayingFullscreen):
3054             New, access to fullscreen properties and methods.
3055
3056         * html/HTMLMediaElement.h:
3057         * html/HTMLMediaElement.idl:
3058             Declare methods needed for fullscreen API.
3059
3060         * html/HTMLVideoElement.cpp:
3061         (WebCore::HTMLVideoElement::supportsFullscreen):
3062             Return false if a movie does not have video.
3063
3064         * page/DOMWindow.h:
3065             Add webkitbeginfullscreen and webkitendfullscreen.
3066
3067 2009-11-12  Adam Barth  <abarth@webkit.org>
3068
3069         Reviewed by Dimitri Glazkov.
3070
3071         [Chromium] Sify compose button alerts error
3072         https://bugs.webkit.org/show_bug.cgi?id=31394
3073
3074         Test: http/tests/security/calling-versus-current.html
3075
3076         We're supposed to use the calling context for security checks.  In JSC
3077         land, this is the lexicalGlobalObject.
3078
3079         * bindings/v8/V8Proxy.cpp:
3080         (WebCore::V8Proxy::canAccessPrivate):
3081
3082 2009-11-12  Daniel Bates  <dbates@webkit.org>
3083
3084         Reviewed by Darin Adler.
3085
3086         https://bugs.webkit.org/show_bug.cgi?id=30291
3087
3088         Fixes an issue where the returned drop effect is incorrect when
3089         effectAllowed == "uninitialized".
3090
3091         According to section 7.9.2 of the HTML 5 spec.
3092         <http://dev.w3.org/html5/spec/Overview.html#the-dragevent-and-datatransfer-interfaces>
3093         when effectAllowed = "uninitialized" the resulting dropEffect should be the
3094         user-specified dropEffect (i.e. "copy", "move", "link") and "none" for any
3095         other case.
3096         
3097         No test cases are included because we have an existing test case from
3098         bug #24731.
3099
3100         * dom/Clipboard.cpp:
3101         (WebCore::dragOpFromIEOp): Added case for op == "uninitialized".
3102
3103 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
3104
3105         Reviewed by Timothy Hatcher.
3106
3107         Web Inspector: Do not highlight node on refresh.
3108
3109         https://bugs.webkit.org/show_bug.cgi?id=31419
3110
3111         * inspector/front-end/ElementsPanel.js:
3112         (WebInspector.ElementsPanel.prototype.reset):
3113
3114 2009-11-12  Pavel Feldman  <pfeldman@chromium.org>
3115
3116         Reviewed by Timothy Hatcher.
3117
3118         Web Inspector: Minor timeline fixes.
3119
3120         https://bugs.webkit.org/show_bug.cgi?id=31417
3121
3122         * inspector/front-end/TimelinePanel.js:
3123         (WebInspector.TimelinePanel.prototype._getRecordDetails):
3124         (WebInspector.TimelineRecordTreeElement.prototype.onattach):
3125         (WebInspector.TimelineRecordTreeElement.prototype._updateDetails):
3126         (WebInspector.TimelineRecordTreeElement.prototype.refresh):
3127
3128 2009-11-12  Alexey Proskuryakov  <ap@apple.com>
3129
3130         SnowLeopard build fix.
3131
3132         Renamed initWithClient to initWithAuthenticationClient.
3133
3134         * platform/network/mac/AuthenticationMac.mm:
3135         (-[WebCoreAuthenticationClientAsChallengeSender initWithAuthenticationClient:]):
3136         (WebCore::AuthenticationChallenge::setAuthenticationClient):
3137
3138 2009-11-12  Chris Fleizach  <cfleizach@apple.com>
3139
3140         Reviewed by Darin Adler.
3141
3142         ARIA: add alert type roles
3143         https://bugs.webkit.org/show_bug.cgi?id=31392
3144
3145         Test: platform/mac/accessibility/aria-alerts.html
3146
3147         * accessibility/AccessibilityObject.h:
3148         * accessibility/AccessibilityRenderObject.cpp:
3149         * accessibility/mac/AccessibilityObjectWrapper.mm:
3150
3151 2009-11-11  Alexey Proskuryakov  <ap@apple.com>
3152
3153         Reviewed by Darin Adler.
3154
3155         https://bugs.webkit.org/show_bug.cgi?id=31386
3156         Make Mac AuthenticationChallenge usable from cross-platform code
3157
3158         No change in behavior, so no tests.
3159
3160         * platform/network/ResourceHandle.cpp:
3161         (WebCore::ResourceHandle::clearAuthentication):
3162         * platform/network/ResourceHandleInternal.h:
3163         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
3164         Don't store m_currentCFChallenge, which was only used for a single assertion. Unlike the
3165         NSURLConnection case, CF challenge doesn't carry a sender with it, so the copy in web challenge
3166         is identical.
3167
3168         * platform/network/cf/AuthenticationChallenge.h:
3169         (WebCore::AuthenticationChallenge::setAuthenticationClient): Added a setter to match the new
3170         Mac interface. Previously, one had to create a new AuthenticationChallenge to replace client.
3171
3172         * platform/network/cf/ResourceHandleCFNet.cpp:
3173         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Fixed assertions after removal
3174         of m_currentCFChallenge. Also, there is no need to set client now, as it's guaranteed to
3175         be already set.
3176
3177         * platform/network/mac/AuthenticationChallenge.h:
3178         (WebCore::AuthenticationChallenge::m_sender): Explained the existence of this member to the
3179         best of my understanding.
3180         (WebCore::AuthenticationChallenge::m_nsChallenge): Renamed from m_macChallenge to prevent
3181         confusion with "mac" and "web" challenges in ResourceHandleInternal.
3182
3183         * platform/network/mac/AuthenticationMac.mm:
3184         (WebCoreAuthenticationClientAsChallengeSender): Added a Obj-C wrapper for AuthenticationClient,
3185         making it possible to use the latter with NSURLAuthenticationChallenge.
3186         (WebCore::AuthenticationChallenge::AuthenticationChallenge): Updated for m_macChallenge ->
3187         m_nsChallenge renaming.
3188         (WebCore::AuthenticationChallenge::setAuthenticationClient): Wrap the client in Obj-C and
3189         set it as sender (or unset, if client is null).
3190
3191         * platform/network/mac/ResourceHandleMac.mm:
3192         (WebCoreResourceHandleAsDelegate) WebCoreResourceHandleAsDelegate no longer doubles as
3193         authentication challenge sender.
3194         (WebCore::ResourceHandle::~ResourceHandle): A navigation can happen underneath an
3195         authentication sheet.
3196         (WebCore::ResourceHandle::didReceiveAuthenticationChallenge): Form m_currentWebChallenge
3197         using the new setAuthenticationClient() method.
3198         (WebCore::ResourceHandle::didCancelAuthenticationChallenge): Fixed an incorrect assertion.
3199         Since didCancelAuthenticationChallenge is called by connection, the passed challenge is
3200         the original Mac one, not the one we created for use with authentication sheet. I don't
3201         know when a connection would cancel authentication in practice, so I haven't tested this.
3202
3203 2009-11-12  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3204
3205         Reviewed by Timothy Hatcher.
3206
3207         Web Inspector: breakpoint sidebar entries should allow click over entire list item
3208         https://bugs.webkit.org/show_bug.cgi?id=31411
3209
3210         No new tests; no new functionality, small usability change. 
3211
3212         * inspector/front-end/BreakpointsSidebarPane.js:
3213         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement):
3214         (WebInspector.BreakpointsSidebarPane.prototype._appendBreakpointElement.breakpointClicked):
3215
3216 2009-11-12  Patrick Mueller  <Patrick_Mueller@us.ibm.com>
3217
3218         Reviewed by Timothy Hatcher.
3219
3220         Web Inspector: breakpoints in named evals are not restored after a reload
3221         https://bugs.webkit.org/show_bug.cgi?id=31375
3222
3223         Manual test added
3224
3225         * inspector/front-end/ScriptsPanel.js:
3226         (WebInspector.ScriptsPanel.prototype.addScript):
3227         * manual-tests/inspector/bp-in-named-eval-after-reload.html: Added.
3228
3229 2009-11-12  Benjamin Poulain  <benjamin.poulain@nokia.com>
3230
3231         Reviewed by Kenneth Rohde Christiansen.
3232
3233         Custom printing shrink factors
3234         https://bugs.webkit.org/show_bug.cgi?id=29042
3235
3236         This reverts commit r49769. The public API for this needs to be reviewed
3237         before its inclusion in Qt.
3238
3239         * page/PrintContext.cpp:
3240         (WebCore::PrintContext::begin):
3241         * page/Settings.cpp:
3242         (WebCore::Settings::Settings):
3243         * page/Settings.h:
3244
3245 2009-11-12  Alexander Pavlov  <apavlov@chromium.org>
3246
3247         Reviewed by Pavel Feldman.
3248
3249         Web Inspector: Resource errors/warnings not shown in the Resource tree.
3250
3251         Error/Warning bubbles are not displayed next to the resource in the 
3252         Resources panel if those occur before the resource is attached to the tree.
3253         https://bugs.webkit.org/show_bug.cgi?id=31404
3254
3255         Test: manual-tests/inspector/styled-error-bubbles-in-scripts.html
3256
3257         * inspector/front-end/AbstractTimelinePanel.js:
3258         (WebInspector.AbstractTimelinePanel.prototype.removeItem):
3259         * inspector/front-end/ResourcesPanel.js:
3260         (WebInspector.ResourceSidebarTreeElement.prototype.onattach):
3261
3262 2009-11-12  Philippe Normand  <pnormand@igalia.com>
3263
3264         Reviewed by Jan Alonzo.
3265
3266         https://bugs.webkit.org/show_bug.cgi?id=31047
3267         [GTK] Failing test media/video-played-ranges-1.html
3268
3269         Follow-up of r50726, don't block the UI thread when calling
3270         gst_element_get_state(). Also fixed a compilation warning and some
3271         static casts.
3272
3273         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3274         (WebCore::playbackPosition):
3275         (WebCore::MediaPlayerPrivate::seek):
3276         (WebCore::MediaPlayerPrivate::setRate):
3277
3278 2009-11-12  Philippe Normand  <pnormand@igalia.com>
3279
3280         Reviewed by Jan Alonzo.
3281
3282         https://bugs.webkit.org/show_bug.cgi?id=31047
3283         [GTK] Failing test media/video-played-ranges-1.html
3284
3285         don't pause pipeline if already paused, same for play()
3286
3287         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3288         (WebCore::MediaPlayerPrivate::play):
3289         (WebCore::MediaPlayerPrivate::pause):
3290
3291 2009-11-12  Kinuko Yasuda  <kinuko@google.com>
3292
3293         Reviewed by David Levin.
3294
3295         Support Gtk scrollwheel behavior for horizontal scrollbars on Linux
3296         Chromium too.
3297         https://bugs.webkit.org/show_bug.cgi?id=31292
3298
3299         No new tests. (Corresponding test for Gtk+ is
3300         platform/gtk/scrollbars/overflow-scrollbar-horizontal-wheel-scroll.html)
3301
3302         * page/EventHandler.cpp:
3303         * page/chromium/EventHandlerChromium.cpp:
3304
3305 2009-11-12  Yuta Kitamura  <yutak@chromium.org>
3306
3307         Reviewed by Eric Seidel.
3308
3309         Prevent text inside a multi-column block from being split into columns.
3310         
3311         If the tentative height of a multi-column block was too small, we need to
3312         expand the block height and try to layout again, in order to prevent text
3313         from being split into different columns.
3314
3315         CSS Multicolumn text is split awkwardly
3316         https://bugs.webkit.org/show_bug.cgi?id=22249
3317
3318         Test: fast/multicol/single-line.html
3319
3320         * rendering/RenderBlock.cpp:
3321         (WebCore::RenderBlock::layoutColumns):
3322         * rendering/RenderBlock.h:
3323         * rendering/RenderLineBoxList.cpp:
3324         (WebCore::RenderLineBoxList::paint):
3325         * rendering/RenderView.h:
3326         (WebCore::RenderView::setTruncatedAt):
3327         (WebCore::RenderView::setMinimumColumnHeight):
3328         (WebCore::RenderView::minimumColumnHeight):
3329
3330 2009-11-11  Kent Tamura  <tkent@chromium.org>
3331
3332         Reviewed by Darin Adler.
3333
3334         Fix a bug that RenderFileUploadControl isn't initialized with multiple files.
3335         https://bugs.webkit.org/show_bug.cgi?id=31195
3336
3337         Test: fast/forms/input-file-re-render.html
3338
3339         * rendering/RenderFileUploadControl.cpp:
3340         (WebCore::RenderFileUploadControl::RenderFileUploadControl):
3341
3342 2009-11-09  Dumitru Daniliuc  <dumi@chromium.org>
3343
3344         Reviewed by Dimitri Glazkov.
3345
3346         Fixing Chromium's POSIX VFS implementation, by adding the required
3347         "used file descriptors" logic.
3348
3349         https://bugs.webkit.org/show_bug.cgi?id=31275
3350
3351         * platform/sql/chromium/SQLiteFileSystemChromiumPosix.cpp:
3352
3353 2009-11-11  Chris Fleizach  <cfleizach@apple.com>
3354
3355         Reviewed by Oliver Hunt.
3356
3357         need to implement aria tree roles
3358         https://bugs.webkit.org/show_bug.cgi?id=31284
3359
3360         Tests: platform/mac/accessibility/aria-multiselectable.html
3361                platform/mac/accessibility/aria-tree.html
3362
3363         * accessibility/AccessibilityList.cpp:
3364         (WebCore::AccessibilityList::accessibilityIsIgnored):
3365         * accessibility/AccessibilityObject.cpp:
3366         (WebCore::AccessibilityObject::ariaTreeRows):
3367         (WebCore::AccessibilityObject::ariaTreeItemContent):
3368         (WebCore::AccessibilityObject::ariaTreeItemDisclosedRows):
3369         * accessibility/AccessibilityObject.h:
3370         (WebCore::):
3371         (WebCore::AccessibilityObject::isTree):
3372         (WebCore::AccessibilityObject::isTreeItem):
3373         (WebCore::AccessibilityObject::setIsExpanded):
3374         (WebCore::AccessibilityObject::canSetExpandedAttribute):
3375         (WebCore::AccessibilityObject::hierarchicalLevel):
3376         (WebCore::AccessibilityObject::setSelectedRows):
3377         (WebCore::AccessibilityObject::performDefaultAction):
3378         * accessibility/AccessibilityRenderObject.cpp:
3379         (WebCore::AccessibilityRenderObject::hierarchicalLevel):
3380         (WebCore::AccessibilityRenderObject::accessibilityIsIgnored):
3381         (WebCore::AccessibilityRenderObject::isExpanded):
3382         (WebCore::AccessibilityRenderObject::setElementAttributeValue):
3383         (WebCore::AccessibilityRenderObject::elementAttributeValue):
3384         (WebCore::AccessibilityRenderObject::setIsExpanded):
3385         (WebCore::AccessibilityRenderObject::isSelected):
3386         (WebCore::AccessibilityRenderObject::setSelected):
3387         (WebCore::AccessibilityRenderObject::setSelectedRows):
3388         (WebCore::createARIARoleMap):
3389         (WebCore::AccessibilityRenderObject::canSetExpandedAttribute):
3390         (WebCore::AccessibilityRenderObject::ariaTreeSelectedRows):
3391         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
3392         (WebCore::AccessibilityRenderObject::selectedChildren):
3393         * accessibility/AccessibilityRenderObject.h:
3394         * accessibility/mac/AccessibilityObjectMac.mm:
3395         (WebCore::AccessibilityObject::accessibilityPlatformIncludesObject):
3396         * accessibility/mac/AccessibilityObjectWrapper.mm:
3397         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
3398         (RoleEntry::):
3399         (-[AccessibilityObjectWrapper subrole]):
3400         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
3401         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
3402         (-[AccessibilityObjectWrapper accessibilityPerformShowMenuAction]):
3403         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
3404         (-[AccessibilityObjectWrapper accessibilityArrayAttributeCount:]):
3405         * html/HTMLAttributeNames.in:
3406
3407 2009-11-11  Brent Fulgham  <bfulgham@webkit.org>
3408
3409         Build fix after @r50760 with ENABLE_FILTERS.
3410
3411         * platform/graphics/filters/SourceAlpha.cpp:
3412         (WebCore::SourceAlpha::apply): Supply ColorSpace to fillRect.
3413         * svg/graphics/filters/SVGFEFlood.cpp: Supply ColorSpace argument
3414           to fillRect.
3415
3416 2009-11-11  Fumitoshi Ukai  <ukai@chromium.org>
3417
3418         Reviewed by Alexey Proskuryakov.
3419
3420         Fix WebSocket frame parser of frame_type with high-order bit set.
3421         https://bugs.webkit.org/show_bug.cgi?id=30668
3422
3423         If buffer is smaller than frame's length, it should break the loop
3424         instead of reading next byte.
3425
3426         Tests: websocket/tests/frame-length-longer-than-buffer.html
3427                websocket/tests/frame-length-skip.html
3428
3429         * websockets/WebSocketChannel.cpp:
3430         (WebCore::WebSocketChannel::didReceiveData):
3431
3432 2009-11-11  Yusuke Sato  <yusukes@chromium.org>
3433
3434         Reviewed by Adam Barth.
3435
3436         [chromium] Remove t2embed.dll functions from FontCustomPlatformData.cpp for Chromium
3437         https://bugs.webkit.org/show_bug.cgi?id=31345
3438
3439         Remove dependency on t2embed.dll so that Chromium for Windows can start even if t2embed.dll cannot be accessed.
3440
3441         * platform/graphics/chromium/FontCustomPlatformData.cpp:
3442         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Remove TTDeleteEmbeddedFont() call. Always use RemoveFontMemResourceEx().
3443         (WebCore::FontCustomPlatformData::fontPlatformData): Remove TTGetNewFontName() call.
3444         (WebCore::createFontCustomPlatformData): Remove TTLoadEmbeddedFont() call. Always use AddFontMemResourceEx() via renameAndActivateFont() in opentype/OpenTypeUtility.h. Remove EOTStream class as well.
3445
3446 2009-11-11  Beth Dakin  <bdakin@apple.com>
3447
3448         Build fix. No review needed.
3449
3450         * platform/graphics/gtk/FontGtk.cpp:
3451         (WebCore::Font::drawComplexText):
3452
3453 2009-11-11  Beth Dakin  <bdakin@apple.com>
3454
3455         Build fix. No review needed.
3456
3457         * platform/graphics/cairo/FontCairo.cpp:
3458         (WebCore::Font::drawGlyphs):
3459
3460 2009-11-11  Beth Dakin  <bdakin@apple.com>
3461
3462         Windows build fix. No review needed. 
3463
3464         * platform/graphics/win/FontCGWin.cpp:
3465         (WebCore::Font::drawGlyphs):
3466
3467 2009-11-11  Beth Dakin  <bdakin@apple.com>
3468
3469         Reviewed by Simon Fraser.
3470
3471         Fix for https://bugs.webkit.org/show_bug.cgi?id=31382
3472         Make -webkit-color-correction work with shadows
3473
3474         From canvas, just send DeviceColorSpace to setShadow() for now. 
3475         Will fix soon when I address https://bugs.webkit.org/show_bug.cgi?id=31319
3476         * html/canvas/CanvasRenderingContext2D.cpp:
3477         (WebCore::CanvasRenderingContext2D::setShadow):
3478         (WebCore::CanvasRenderingContext2D::applyShadow):
3479
3480         setShadow() and setPlatformShadow() now take a ColorSpace.
3481         * platform/graphics/GraphicsContext.cpp:
3482         (WebCore::GraphicsContext::setShadow):
3483         * platform/graphics/GraphicsContext.h:
3484         * platform/graphics/cg/GraphicsContextCG.cpp:
3485         (WebCore::createCGColorWithColorSpace): New helper to create a 
3486         color in a ColorSpace.
3487         (WebCore::setCGFillColor): Call new helper.
3488         (WebCore::setCGStrokeColor): Call new helper.
3489         (WebCore::GraphicsContext::setPlatformShadow): Call new helper.
3490         * platform/graphics/haiku/GraphicsContextHaiku.cpp:
3491         (WebCore::GraphicsContext::setPlatformShadow):
3492
3493         Send appropriate ColorSpace to setShadow().
3494         * platform/graphics/mac/FontMac.mm:
3495         (WebCore::Font::drawGlyphs):
3496         * rendering/EllipsisBox.cpp:
3497         (WebCore::EllipsisBox::paint):
3498         * rendering/InlineFlowBox.cpp:
3499         (WebCore::InlineFlowBox::paintTextDecorations):
3500         * rendering/InlineTextBox.cpp:
3501         (WebCore::paintTextWithShadows):
3502         (WebCore::InlineTextBox::paintDecoration):
3503         * rendering/RenderBoxModelObject.cpp:
3504         (WebCore::RenderBoxModelObject::paintBoxShadow):
3505         * rendering/SVGInlineTextBox.cpp:
3506         (WebCore::SVGInlineTextBox::paintCharacters):
3507         * rendering/SVGRenderSupport.cpp:
3508         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
3509
3510         Attempt to keep ports building.
3511         * platform/graphics/cairo/GraphicsContextCairo.cpp:
3512         (WebCore::GraphicsContext::setPlatformShadow):
3513         * platform/graphics/qt/GraphicsContextQt.cpp:
3514         (WebCore::GraphicsContext::setPlatformShadow):
3515         * platform/graphics/skia/GraphicsContextSkia.cpp:
3516         (WebCore::GraphicsContext::setPlatformShadow):
3517         * platform/graphics/wince/GraphicsContextWince.cpp:
3518         (WebCore::GraphicsContext::setPlatformShadow):
3519         * platform/graphics/wx/GraphicsContextWx.cpp:
3520         (WebCore::GraphicsContext::setPlatformShadow):
3521
3522 2009-11-11  Kent Tamura  <tkent@chromium.org>
3523
3524         Reviewed by Darin Adler.
3525
3526         Print the file text of a file upload control in DumpRenderTree for ease of tests.
3527         https://bugs.webkit.org/show_bug.cgi?id=31195
3528
3529         * rendering/RenderFileUploadControl.cpp:
3530         (WebCore::RenderFileUploadControl::paintObject):
3531         (WebCore::RenderFileUploadControl::fileTextValue):
3532         * rendering/RenderFileUploadControl.h:
3533         (WebCore::RenderFileUploadControl::isFileUploadControl):
3534         (WebCore::toRenderFileUploadControl):
3535         * rendering/RenderObject.h:
3536         (WebCore::RenderObject::isFileUploadControl):
3537         * rendering/RenderTreeAsText.cpp:
3538         (WebCore::operator<<):
3539
3540 2009-11-11  Gavin Barraclough  <barraclough@apple.com>
3541
3542         Reviewed by Sam Weinig.
3543
3544         DOM Wrappers for some nodes may not be marked.
3545         https://bugs.webkit.org/show_bug.cgi?id=31380
3546
3547         Some markChildren methods are calling getCachedDOMNodeWrapper, which will find
3548         the wrapper for the current world only.  This means that wrappers may be GC'ed
3549         prematurely, and properties lost.
3550
3551         Move to a model more like markDOMObjectWrapper, mark wrappers for all worlds.
3552
3553         * bindings/js/JSAttrCustom.cpp:
3554         (WebCore::JSAttr::markChildren):
3555         * bindings/js/JSDOMBinding.cpp:
3556         (WebCore::markDOMNodeWrapper):
3557         * bindings/js/JSDOMBinding.h:
3558         * bindings/js/JSNamedNodeMapCustom.cpp:
3559         (WebCore::JSNamedNodeMap::markChildren):
3560         * bindings/js/JSNodeCustom.cpp:
3561         (WebCore::JSNode::markChildren):
3562         * bindings/js/JSSVGElementInstanceCustom.cpp:
3563         (WebCore::JSSVGElementInstance::markChildren):
3564         * bindings/js/JSStyleSheetCustom.cpp:
3565         (WebCore::JSStyleSheet::markChildren):
3566
3567 2009-11-11  Ben Murdoch  <benm@google.com>
3568
3569         Reviewed by Darin Adler.
3570
3571         bindings/js/ScriptObject.cpp is missing and ENABLE(INSPECTOR) guard.
3572         https://bugs.webkit.org/show_bug.cgi?id=31384
3573
3574         No functionality change so no tests required.
3575
3576         * bindings/js/ScriptObject.cpp: Add ENABLE(INSPECTOR) guard around the JSInspectorBackend.h include.
3577
3578 2009-11-11  Jens Alfke  <snej@chromium.org>
3579
3580         Reviewed by Dimitri Glazkov.
3581
3582         The Big De-Inlining. 450k code size reduction (32-bit x86.)
3583         - Various inline functions in V8Binding.h made non-inline.
3584         - Some renaming for consistency.
3585         - New function createRawTemplate().
3586         https://bugs.webkit.org/show_bug.cgi?id=31383
3587
3588         * bindings/scripts/CodeGeneratorV8.pm:
3589         * bindings/v8/V8Binding.cpp:
3590         (WebCore::v8DOMWrapperToNative):
3591         (WebCore::v8ValueToWebCoreString):
3592         (WebCore::v8ValueToAtomicWebCoreString):
3593         (WebCore::toInt32):
3594         (WebCore::toWebCoreString):
3595         (WebCore::toWebCoreStringWithNullCheck):
3596         (WebCore::toAtomicWebCoreStringWithNullCheck):
3597         (WebCore::toWebCoreStringWithNullOrUndefinedCheck):
3598         (WebCore::isUndefinedOrNull):
3599         (WebCore::v8Boolean):
3600         (WebCore::v8UndetectableString):
3601         (WebCore::v8StringOrNull):
3602         (WebCore::v8StringOrUndefined):
3603         (WebCore::v8StringOrFalse):
3604         (WebCore::v8StringToWebCoreString):
3605         (WebCore::v8ExternalString):
3606         (WebCore::createRawTemplate):  New function.
3607         * bindings/v8/V8Binding.h:
3608         (WebCore::v8DOMWrapperTo):
3609         (WebCore::v8DOMWrapperToNode):
3610         (WebCore::v8StringToWebCoreString):
3611         (WebCore::v8StringToAtomicWebCoreString):
3612
3613 2009-11-11  Jens Alfke  <snej@chromium.org>
3614
3615         Reviewed by Dimitri Glazkov.
3616
3617         More V8 de-inlining (outlining?) Abstracted a chunk of boilerplate code from every
3618         event-listener setter into a new subroutine transferHiddenDependency().
3619         https://bugs.webkit.org/show_bug.cgi?id=31377
3620
3621         * bindings/scripts/CodeGeneratorV8.pm:  Replace boilerplate with call to transferHiddenDependency().
3622         * bindings/v8/V8Utilities.cpp:
3623         (WebCore::transferHiddenDependency):  New.
3624         * bindings/v8/V8Utilities.h:  Declaration of transferHiddenDependency.
3625
3626 2009-11-11  Brian Weinstein  <bweinstein@apple.com>
3627
3628         Reviewed by Beth Dakin.
3629
3630         If we are on Windows, don't try and get the kCGColorSpaceSRGB ColorSpace,
3631         because there is a CG bug preventing this from working.
3632
3633         * platform/graphics/cg/GraphicsContextCG.cpp:
3634         (WebCore::sRGBColorSpaceRef):
3635
3636 2009-11-11  Pavel Feldman  <pfeldman@chromium.org>
3637
3638         Reviewed by Timothy Hatcher.
3639
3640         Check that if Storage panel exists before calling its methods
3641
3642         https://bugs.webkit.org/show_bug.cgi?id=31343
3643
3644         * inspector/front-end/inspector.js:
3645         (WebInspector.addDatabase):
3646         (WebInspector.addCookieDomain):
3647         (WebInspector.addDOMStorage):
3648         (WebInspector.updateDOMStorage):
3649
3650 2009-11-11  Jens Alfke  <snej@chromium.org>
3651
3652         Reviewed by Dimitri Glazkov.
3653
3654         De-inline convertNodeToV8Object(), which expands to a lot of asm code and is inlined 136
3655         times in the generated V8 bindings.
3656         https://bugs.webkit.org/show_bug.cgi?id=31368
3657
3658         * bindings/v8/V8DOMWrapper.cpp:
3659         (WebCore::V8DOMWrapper::convertNodeToV8Object):  Moved body here from .h file
3660         * bindings/v8/V8DOMWrapper.h:  Removed inline method body.
3661
3662 2009-11-11  Jessie Berlin  <jberlin@webkit.org>
3663
3664         Reviewed by Timothy Hatcher.
3665
3666         Display the correct summary in the web inspector for the shorthands
3667         border-color, border-width, border-style, margin, and padding.
3668         https://bugs.webkit.org/show_bug.cgi?id=7987
3669
3670         Test: fast/css/shorthands-four-values.html
3671
3672         * css/CSSMutableStyleDeclaration.cpp:
3673         (WebCore::CSSMutableStyleDeclaration::get4Values):
3674         Display the summary information in the same way the shorthand would be
3675         specified in a css rule.
3676
3677 2009-11-11  Jens Alfke  <snej@chromium.org>
3678
3679         Reviewed by Dimitri Glazkov.
3680
3681         Make V8 bindings return NULL handles instead of calling v8::Undefined(). This has equivalent
3682         meaning to the caller, saves code, and appears to save a few cycles at runtime too.
3683         https://bugs.webkit.org/show_bug.cgi?id=31367
3684
3685         * bindings/scripts/CodeGeneratorV8.pm: Change "v8::Undefined()" to "v8::Handle<v8::Value>()"
3686
3687 2009-11-11  Jens Alfke  <snej@chromium.org>
3688
3689         Reviewed by Dimitri Glazkov.
3690
3691         Optimize V8 getDOMNodeMap(), a hot function in Dromaeo DOM tests, by increasing inlining.
3692
3693         * bindings/v8/DOMData.cpp:
3694         (WebCore::DOMData::getCurrent):  Moved getCurrentMainThread to MainThreadDOMData::getCurrent
3695             so it can be inlined by its caller.
3696         * bindings/v8/DOMData.h:
3697         * bindings/v8/MainThreadDOMData.cpp:
3698         (WebCore::MainThreadDOMData::getCurrent):  Moved here from DOMData.cpp.
3699         (WebCore::MainThreadDOMData::getMainThreadStore):  Added UNLIKELY macro to improve codegen.
3700         (WebCore::MainThreadDOMData::getCurrentMainThreadStore):  Combination of getCurrentMainThread
3701             and getStore, which inline both calls together.
3702         * bindings/v8/MainThreadDOMData.h:
3703         (WebCore::MainThreadDOMData::getStore):  Broke out nonvirtual getMainThreadStore for inlineability.
3704         * bindings/v8/V8DOMMap.cpp:
3705         (WebCore::getDOMNodeMap):  Call new getCurrentMainThreadStore, which is faster.
3706
3707 2009-11-11  Nate Chapin  <japhet@chromium.org>
3708
3709         Reviewed by Dimitri Glazkov.
3710
3711         Add methods to KURLGoogle.cpp declared in http://trac.webkit.org/changeset/50784 but not defined when using KURLGoogle.
3712
3713         https://bugs.webkit.org/show_bug.cgi?id=31357
3714
3715         * platform/KURLGoogle.cpp:
3716         (WebCore::isSchemeFirstChar):
3717         (WebCore::isSchemeChar):
3718         (WebCore::KURL::hasPort):
3719         (WebCore::KURL::removePort):
3720         (WebCore::protocolIsValid):
3721
3722 2009-11-11  Brent Fulgham  <bfulgham@webkit.org>
3723
3724         Build fix, no reviewed.
3725
3726         Correct setPlatformFillColor and setPlatformStrokeColor calls
3727         to match new ColorSpace-supporting signatures.
3728
3729         * platform/graphics/win/GraphicsContextCairoWin.cpp:  Add the
3730           color space to the set[...]Color calls.
3731
3732 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
3733
3734         Reviewed by Sam Weinig.
3735
3736         https://bugs.webkit.org/show_bug.cgi?id=31327
3737         Clean up SocketStreamHandleClient interface
3738
3739         No change in behavior.
3740
3741         * platform/network/SocketStreamHandleClient.h: Removed willOpenStream and willSendData.
3742         (WebCore::SocketStreamHandleClient::willOpenStream): Removed. This is currently not used by
3743         the only client (WebSocketChannel), and it's not clear what this callback's semantics
3744         should be.
3745         (WebCore::SocketStreamHandleClient::willSendData): Ditto.
3746         (WebCore::SocketStreamHandleClient::receivedCancellation): Removed, because it was misplaced.
3747         For ResourceHandle, this method is called when the user cancels authentication sheet,
3748         not when something happens with the stream.
3749
3750         * websockets/WebSocketChannel.h: Some WebSocketChannel methods were virtual without any
3751         reason. Also, added didReceiveAuthenticationChallenge/didCancelAuthenticationChallenge.
3752
3753         * websockets/WebSocketChannel.cpp: Adjusted for the above change. Authentication-related
3754         callbacks have no real implementation yet.
3755
3756 2009-11-11  Zoltan Horvath  <zoltan@webkit.org>
3757
3758         Reviewed by Eric Seidel.
3759
3760         Allow custom memory allocation control for the part of page directory in WebCore
3761         https://bugs.webkit.org/show_bug.cgi?id=31350
3762
3763         Inherits the following classes from Noncopyable because these are instantiated
3764         by 'new' and these are no need to be copyable:
3765
3766         class DragController         - instantiated at: WebCore/page/Page.cpp:107
3767         class FocusController        - instantiated at: WebCore/page/Page.cpp:109
3768         class Settings               - instantiated at: WebCore/page/Page.cpp:116
3769         class PluginHalter           - instantiated at: WebCore/page/Page.cpp:160
3770         struct ScheduledEvent        - instantiated at: WebCore/page/FrameView.cpp:1275
3771         class UserScript             - instantiated at: WebCore/page/PageGroup.cpp:208
3772         struct EventHandlerDragState - instantiated at: WebCore/page/EventHandler.cpp:182
3773         class XSSAuditor             - instantiated at: WebCore/bindings/js/ScriptController.cpp:70
3774         class UserStyleSheet         - instantiated at: WebCore/page/PageGroup.cpp:222
3775
3776         Inherits PropertyWrapperBase class from Noncopyable because (its child class) 
3777         PropertyWrapper is instantiated by 'new' in 
3778         WebCore/page/animation/AnimationBase.cpp:564 it is no need to be copyable.
3779
3780         * page/DragController.h:
3781         * page/EventHandler.h:
3782         * page/FocusController.h:
3783         * page/FrameView.cpp:
3784         * page/PluginHalter.h:
3785         * page/Settings.h:
3786         * page/UserScript.h:
3787         * page/UserStyleSheet.h:
3788         * page/XSSAuditor.h:
3789         * page/animation/AnimationBase.cpp:
3790
3791 2009-11-11  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
3792
3793         Reviewed by Kenneth Rohde Christiansen.
3794
3795         https://bugs.webkit.org/show_bug.cgi?id=31323
3796         Fix a few compiler warnings
3797
3798         No new tests as there is no new functionality.
3799
3800         * editing/htmlediting.cpp:
3801         (WebCore::isRenderedAsNonInlineTableImageOrHR): Use explicit
3802         parentheses to silence gcc 4.4 -Wparentheses warnings
3803
3804 2009-11-11  Kenneth Rohde Christiansen  <kenneth@webkit.org>
3805
3806         Reviewed by Mark Rowe.
3807
3808         Set m_hasPendingGeometryChange to true by default, so that
3809         at least one call to NPP_SetWindow is executed, which is
3810         needed by the DRT plugin testing framework.
3811
3812         * plugins/PluginView.cpp:
3813         (WebCore::PluginView::PluginView):
3814
3815 2009-11-11  Csaba Osztrogonác  <ossy@webkit.org>
3816
3817         Rubber-stamped by Kenneth Rohde Christiansen.
3818
3819         https://bugs.webkit.org/show_bug.cgi?id=31348
3820         [Qt] Remove unnecessary LUT creator from WebCore.pro
3821
3822         * WebCore.pro:
3823
3824 2009-11-11  Simon Hausmann  <simon.hausmann@nokia.com>
3825
3826         Reviewed by Tor Arne Vestbø.
3827
3828         Introduce a function for querying the input method status
3829         in QWebPageClient.
3830
3831         * platform/qt/QWebPageClient.h:
3832
3833 2009-11-11  Benjamin Otte  <otte@gnome.org>
3834
3835         Reviewed by Jan Alonzo.
3836
3837         [GTK] Black artifacts in youtube.com/html5
3838
3839         Paint the video to the given size. It's the job of the callers to keep
3840         track of aspect ratio. RenderVideo.cpp does it for the <video>
3841         element.
3842         https://bugs.webkit.org/show_bug.cgi?id=30925
3843
3844         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3845         (WebCore::MediaPlayerPrivate::paint):
3846
3847 2009-11-11  Joanmarie Diggs  <joanmarie.diggs@gmail.com>
3848
3849         Reviewed by Reviewed by Jan Alonzo.
3850
3851         https://bugs.webkit.org/show_bug.cgi?id=30901
3852         [Gtk] Need to de-lint the Atk a11y code
3853
3854         Cleaned up some missed capitalization style-guideline violations.
3855
3856         * accessibility/gtk/AccessibilityObjectWrapperAtk.cpp:
3857
3858 2009-11-11  Jocelyn Turcotte  <jocelyn.turcotte@nokia.com>
3859
3860         Reviewed by Eric Seidel.
3861
3862         [Qt] Make the default style background color valid.
3863         Currently the color is transparent but invalid, this causes
3864         list boxes in QtWebKit to be drawn with a black background
3865         since r49242.
3866         https://bugs.webkit.org/show_bug.cgi?id=31295
3867
3868         * rendering/style/RenderStyle.h:
3869         (WebCore::InheritedFlags::initialBackgroundColor):
3870         * rendering/style/StyleBackgroundData.cpp:
3871         (WebCore::StyleBackgroundData::StyleBackgroundData):
3872
3873 2009-11-10  Gavin Barraclough  <barraclough@apple.com>
3874
3875         Reviewed by Geoff Garen.
3876
3877         Simplify the ownership model for worlds - rather than having a pair of weak references
3878         between DOMWrapperWorld and ScriptController/ScriptCachedFrameData, give the latter an
3879         ref pointer to the former.  This reduces complexity & cost of the caching entries in the
3880         back forward cache.
3881
3882         * WebCore.base.exp:
3883         * bindings/js/JSDOMBinding.cpp:
3884         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
3885         * bindings/js/JSDOMBinding.h:
3886         (WebCore::DOMWrapperWorld::forgetDocument):
3887         * bindings/js/ScriptCachedFrameData.cpp:
3888         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
3889         (WebCore::ScriptCachedFrameData::restore):
3890         (WebCore::ScriptCachedFrameData::clear):
3891         * bindings/js/ScriptCachedFrameData.h:
3892         * bindings/js/ScriptController.cpp:
3893         (WebCore::ScriptController::~ScriptController):
3894         (WebCore::ScriptController::clearWindowShell):
3895         (WebCore::ScriptController::initScript):
3896         (WebCore::ScriptController::updateDocument):
3897         * bindings/js/ScriptController.h:
3898
3899 2009-11-10  Shinichiro Hamaji  <hamaji@chromium.org>
3900
3901         Reviewed by Darin Adler.
3902
3903         rename counter to makeCounterNode in RenderCounter.cpp
3904         https://bugs.webkit.org/show_bug.cgi?id=31289
3905
3906         No new test because this is just a small refactoring.
3907
3908         * rendering/RenderCounter.cpp:
3909         (WebCore::findPlaceForCounter):
3910         (WebCore::makeCounterNode):
3911         (WebCore::RenderCounter::originalText):
3912
3913 2009-11-10  Daniel Bates  <dbates@webkit.org>
3914
3915         Reviewed by Oliver Hunt.
3916
3917         https://bugs.webkit.org/show_bug.cgi?id=30754
3918
3919         Patch 2 of 2.
3920
3921         Removed method EventHandler::dragSourceMovedTo, since it is no longer
3922         needed. This method fired a drag event whenever the mouse moved, but
3923         section 7.9.4 of the HTML 5 spec. defines the drag-and-drop processing
3924         model independent of when the mouse moves. See "Among other changes..."
3925         in the change log for patch 1 for more details.
3926
3927         * WebCore.DragSupport.exp:
3928         * page/EventHandler.cpp: Removed method EventHandler::dragSourceMovedTo.
3929         (WebCore::EventHandler::handleDrag): Updated comment about reentrancy issue.
3930         * page/EventHandler.h:
3931
3932 2009-11-10  Daniel Bates  <dbates@webkit.org>
3933
3934         Reviewed by Oliver Hunt.
3935
3936         https://bugs.webkit.org/show_bug.cgi?id=30754
3937
3938         Patch 1 of 2.
3939
3940         As per Section 7.9.4 of the HTML 5 spec. <http://dev.w3.org/html5/spec/Overview.html#drag-and-drop-processing-model>,
3941         the drag event should always fire before the dragover event.
3942
3943         In fixing this bug, this patch also makes our drag processing model
3944         conform to the HTML 5 spec.
3945
3946         Among the changes, this patch ensures that the drag event isn't fired outside
3947         of the drag-and-drop processing loop, WebCore::EventHandler::updateDragAndDrop.
3948         Currently, the drag event is fired whenever the mouse button is down and the OS
3949         detects the mouse moved. But, as per the spec, the drag event should
3950         fire approx. every 350ms so long as the mouse button is down.
3951
3952         Test: fast/events/drag-and-drop-fire-drag-dragover.html
3953
3954         * page/EventHandler.cpp:
3955         (WebCore::EventHandler::clear):
3956         (WebCore::EventHandler::canHandleDragAndDropForTarget): Formerly named handleDragAndDropForTarget.
3957         Modified to determine when we are in the correct instance of EventHandler to service the drag
3958         and drop operation.
3959         (WebCore::EventHandler::updateDragAndDrop): Moved code from WebCore::EventHandler::dragSourceMovedTo
3960         into this method.
3961         (WebCore::EventHandler::cancelDragAndDrop):
3962         (WebCore::EventHandler::performDragAndDrop):
3963         (WebCore::EventHandler::clearDragState):
3964         * page/EventHandler.h: Added field m_shouldOnlyFireDragOverEvent to determine whether
3965         we should fire both drag and dragover events or only the dragover event.
3966
3967 2009-11-10  Vitaly Repeshko  <vitalyr@chromium.org>
3968
3969         Reviewed by Dimitri Glazkov.
3970
3971         [V8] Fix crash in V8CustomXPathNSResolver (http://crbug.com/26726).
3972         https://bugs.webkit.org/show_bug.cgi?id=31301
3973
3974         Tested by new fast/xpath/xpath-detached-iframe-resolver-crash.html.
3975
3976         Allowed passing V8Proxy for the calling JS context:
3977         * bindings/v8/V8DOMWrapper.h:
3978         (WebCore::V8DOMWrapper::getXPathNSResolver):
3979         * bindings/v8/custom/V8CustomXPathNSResolver.cpp:
3980         (WebCore::V8CustomXPathNSResolver::create):
3981         (WebCore::V8CustomXPathNSResolver::V8CustomXPathNSResolver):
3982         (WebCore::V8CustomXPathNSResolver::lookupNamespaceURI):
3983         * bindings/v8/custom/V8CustomXPathNSResolver.h:
3984         * bindings/v8/custom/V8DocumentCustom.cpp:
3985         (WebCore::CALLBACK_FUNC_DECL):
3986
3987 2009-11-10  Yael Aharon  <yael.aharon@nokia.com>
3988
3989         Reviewed by Timothy Hatcher.
3990
3991         Implement URL decomposition IDL attributes for HTMLAnchorElement.
3992         https://bugs.webkit.org/show_bug.cgi?id=29972.
3993
3994         Add methods for setting different parts of the URL in href attribute.
3995
3996         Tests: fast/dom/HTMLAnchorElement/set-href-attribute-hash.html
3997                fast/dom/HTMLAnchorElement/set-href-attribute-host.html
3998                fast/dom/HTMLAnchorElement/set-href-attribute-hostname.html
3999                fast/dom/HTMLAnchorElement/set-href-attribute-pathname.html
4000                fast/dom/HTMLAnchorElement/set-href-attribute-port.html
4001                fast/dom/HTMLAnchorElement/set-href-attribute-protocol.html
4002                fast/dom/HTMLAnchorElement/set-href-attribute-search.html
4003
4004         * bindings/js/JSLocationCustom.cpp:
4005         (WebCore::JSLocation::setPort):
4006         * html/HTMLAnchorElement.cpp:
4007         (WebCore::parsePortFromStringPosition):
4008         (WebCore::HTMLAnchorElement::setHash):
4009         (WebCore::HTMLAnchorElement::setHost):
4010         (WebCore::HTMLAnchorElement::setHostname):
4011         (WebCore::HTMLAnchorElement::setPathname):
4012         (WebCore::HTMLAnchorElement::setPort):
4013         (WebCore::HTMLAnchorElement::setProtocol):
4014         (WebCore::HTMLAnchorElement::setSearch):
4015         * html/HTMLAnchorElement.h:
4016         * html/HTMLAnchorElement.idl:
4017         * loader/FrameLoader.cpp:
4018         (WebCore::FrameLoader::iconURL):
4019         * platform/KURL.cpp:
4020         (WebCore::KURL::removePort):
4021         (WebCore::KURL::setPort):
4022         (WebCore::KURL::prettyURL):
4023         (WebCore::protocolIsValid):
4024         * platform/KURL.h:
4025         (WebCore::KURL::canSetHostOrPort):
4026         (WebCore::KURL::canSetPathname):
4027         (WebCore::KURL::hasPort):
4028         * platform/network/soup/ResourceHandleSoup.cpp:
4029         (WebCore::):
4030
4031 2009-11-10  Nate Chapin  <japhet@chromium.org>
4032
4033         Unreviewed, fix Chromium build after http://trac.webkit.org/changeset/50760.
4034
4035         * platform/chromium/PopupMenuChromium.cpp:
4036         (WebCore::PopupContainer::paintBorder):
4037         (WebCore::PopupListBox::paint):
4038         (WebCore::PopupListBox::paintRow):
4039         * platform/graphics/chromium/TransparencyWin.cpp:
4040         (WebCore::TransparencyWin::setupLayerForWhiteLayer):
4041         * platform/graphics/skia/GraphicsContextSkia.cpp:
4042         (WebCore::GraphicsContext::fillRect):
4043         (WebCore::GraphicsContext::fillRoundedRect):
4044         (WebCore::GraphicsContext::setPlatformFillColor):
4045         (WebCore::GraphicsContext::setPlatformStrokeColor):
4046         * rendering/RenderMediaControlsChromium.cpp:
4047         (WebCore::paintMediaSlider):
4048         (WebCore::paintMediaVolumeSlider):
4049         (WebCore::paintMediaTimelineContainer):
4050         * rendering/RenderThemeChromiumMac.mm:
4051         (WebCore::RenderThemeChromiumMac::paintMenuListButton):
4052
4053 2009-11-10  Brady Eidson  <beidson@apple.com>
4054
4055         Reviewed by Sam Weinig.
4056
4057         Repro crash saving pcmag.com article as a webarchive.
4058         <rdar://problem/7381219> and https://webkit.org/b/31322
4059
4060         Test: http/tests/webarchive/cross-origin-stylesheet-crash.html
4061
4062         * css/CSSStyleSheet.cpp:
4063         (WebCore::CSSStyleSheet::addSubresourceStyleURLs): Walk the stylesheet itself instead
4064           of creating a CSSRuleList (and subjecting ourselves to the security origin check)
4065
4066 2009-11-10  Beth Dakin  <bdakin@apple.com>
4067
4068         Attempt 2 to fix Tiger build. No review needed.
4069
4070         * platform/graphics/cg/GraphicsContextCG.cpp:
4071         (WebCore::deviceRGBColorSpaceRef):
4072         (WebCore::sRGBColorSpaceRef):
4073
4074 2009-11-10  Kevin Ollivier  <kevino@theolliviers.com>
4075
4076         wx build fix. Changes needed after r50760.
4077
4078         * platform/graphics/wx/GraphicsContextWx.cpp:
4079         (WebCore::GraphicsContext::GraphicsContext):
4080         * platform/wx/wxcode/mac/carbon/non-kerned-drawing.cpp:
4081         (WebCore::drawTextWithSpacing):
4082
4083 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
4084
4085         Qt build fix.
4086
4087         * platform/network/ResourceHandle.h: Only inherit from AuthenticationClient on platforms
4088         that use ResourceHandle as a delegate (Mac, CFNetwork, Curl).
4089
4090 2009-11-10  Beth Dakin  <bdakin@apple.com>
4091
4092         Tiger build fix. No review needed.
4093
4094         * platform/graphics/cg/GraphicsContextCG.cpp:
4095         (WebCore::sRGBColorSpaceRef):
4096
4097 2009-11-10  Alexey Proskuryakov  <ap@apple.com>
4098
4099         Reviewed by Dan Bernstein.
4100
4101         https://bugs.webkit.org/show_bug.cgi?id=31312
4102         Decouple authentication panel callbacks from ResourceHandle
4103
4104         No change in functionality.
4105
4106         SocketStreamHandle also needs to request credentials, so it's not appropriate to store
4107         ResourceHandle as delegate.
4108
4109         * WebCore.vcproj/WebCore.vcproj:
4110         * platform/network/AuthenticationClient.h: Added.
4111         Added a new interface for listening to authentication panel notifications.
4112
4113         * WebCore.xcodeproj/project.pbxproj: Added AuthenticationClient.h. Let Visual Studio do what
4114         it wants with the project file.
4115
4116         (WebCore::AuthenticationClient::ref): Using our usual method of exposing refcounting on an
4117         interface class.
4118         (WebCore::AuthenticationClient::deref): Ditto.
4119
4120         * platform/network/ResourceHandle.h:
4121         (WebCore::ResourceHandle::refAuthenticationClient): Ditto.
4122         (WebCore::ResourceHandle::derefAuthenticationClient): Ditto.
4123
4124         * platform/network/cf/AuthenticationCF.cpp:
4125         (WebCore::AuthenticationChallenge::AuthenticationChallenge):
4126         (WebCore::AuthenticationChallenge::platformCompare):
4127         * platform/network/cf/AuthenticationChallenge.h:
4128         (WebCore::AuthenticationChallenge::authenticationClient):
4129         * platform/network/chromium/AuthenticationChallenge.h:
4130         (WebCore::AuthenticationChallenge::authenticationClient):
4131         * platform/network/curl/AuthenticationChallenge.h:
4132         (WebCore::AuthenticationChallenge::authenticationClient):
4133         Keeping a reference to AuthenticationClient, not to ResourceHandle.
4134
4135 2009-11-10  Beth Dakin  <bdakin@apple.com>
4136
4137        Second attempted gtk build fix. No review needed.
4138
4139         * html/canvas/CanvasStyle.cpp:
4140         (WebCore::CanvasStyle::applyStrokeColor):
4141
4142
4143 2009-11-10  Gavin Barraclough  <barraclough@apple.com>
4144
4145         Reviewed by Geoff Garen.
4146
4147         Fix back/forwards cache with JSC isolated worlds.
4148         https://bugs.webkit.org/show_bug.cgi?id=31310
4149         <rdar://problem/7328111> Cached back navigation doesn't restore global object in extension isolated world
4150
4151         Store the global object for all worlds, not just the normal world.
4152         Also maintain bidirectional weak references between the ScriptCachedFrameData and the DOMWrapperWorld,
4153         so we can forget global objects if a world goes away.
4154
4155         * bindings/js/JSDOMBinding.cpp:
4156         (WebCore::DOMWrapperWorld::~DOMWrapperWorld):
4157         * bindings/js/JSDOMBinding.h:
4158         (WebCore::DOMWrapperWorld::rememberScriptCachedFrameData):
4159         (WebCore::DOMWrapperWorld::forgetScriptCachedFrameData):
4160         * bindings/js/ScriptCachedFrameData.cpp:
4161         (WebCore::ScriptCachedFrameData::ScriptCachedFrameData):
4162         (WebCore::ScriptCachedFrameData::forgetWorld):
4163         (WebCore::ScriptCachedFrameData::domWindow):
4164         (WebCore::ScriptCachedFrameData::restore):
4165         (WebCore::ScriptCachedFrameData::clear):
4166         * bindings/js/ScriptCachedFrameData.h:
4167         * bindings/js/ScriptController.h:
4168
4169 2009-11-10  Csaba Osztrogonác  <ossy@webkit.org>
4170
4171         [Qt] Unreviewed buildfix after r50760.
4172
4173         * platform/graphics/qt/GraphicsContextQt.cpp:
4174         (WebCore::GraphicsContext::GraphicsContext):
4175
4176 2009-11-10  Beth Dakin  <bdakin@apple.com>
4177
4178         Attempted build fix. (No review needed.)
4179
4180         * GNUmakefile.am: Adding ColorSpace.h
4181
4182 2009-11-10  Brian Weinstein  <bweinstein@apple.com>
4183
4184         Reviewed by NOBODY - Build Fix.
4185
4186         Updated function calls to take a ColorSpace argument, passing
4187         in DeviceColorSpace for now - this should be fixed. Also added
4188         ColorSpace.h to WebCore project.
4189
4190         * WebCore.vcproj/WebCore.vcproj:
4191         * platform/graphics/win/FontCGWin.cpp:
4192         (WebCore::Font::drawGlyphs):
4193         * platform/graphics/win/GraphicsContextCGWin.cpp:
4194         (WebCore::GraphicsContext::GraphicsContext):
4195         * platform/win/PopupMenuWin.cpp:
4196         (WebCore::PopupMenu::paint):
4197         * platform/win/WebCoreTextRenderer.cpp:
4198         (WebCore::doDrawTextAtPoint):
4199         * rendering/RenderThemeSafari.cpp:
4200         (WebCore::RenderThemeSafari::paintMenuListButton):
4201
4202 2009-11-10  Jens Alfke  <snej@chromium.org>
4203
4204         Reviewed by Darin Adler.
4205
4206         Optimizations to Element::getAttribute
4207         https://bugs.webkit.org/show_bug.cgi?id=30926
4208
4209         * dom/Element.cpp:
4210         (WebCore::Element::getAttribute):  User case-insensitive compare instead of lowercasing the name.
4211         * dom/NamedAttrMap.cpp:
4212         (WebCore::NamedNodeMap::getAttributeItem):  Avoid redundant compares, and do fast/likely compares first.
4213         * platform/text/PlatformString.h:
4214         (WebCore::equalPossiblyIgnoringCase):  New inline method, used by both of the above.
4215
4216 2009-11-10  Beth Dakin  <bdakin@apple.com>
4217
4218         Reviewed by Darin Adler.
4219
4220         Fix for <rdar://problem/7059710> 
4221         -and corresponding-
4222         https://bugs.webkit.org/show_bug.cgi?id=31196 Implement -webkit-
4223         color-correction for CSS colors
4224
4225         New exported symbol for GraphicsContext::fillColor() which now 
4226         accepts a ColorSpace as an optional parameter.
4227         * WebCore.base.exp:
4228
4229         Added a new file, ColorSpace.h, to define the ColorSpace enum.
4230         * WebCore.xcodeproj/project.pbxproj:
4231
4232         Computed Style for -webkit-color-correction
4233         * css/CSSComputedStyleDeclaration.cpp:
4234         (WebCore::):
4235         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
4236
4237         Parse -webkit-color-correction
4238         * css/CSSParser.cpp:
4239         (WebCore::CSSParser::parseValue):
4240
4241        Map CSS identifiers to the appropriate values of the ColorSpace enum
4242         * css/CSSPrimitiveValueMappings.h:
4243         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
4244         (WebCore::CSSPrimitiveValue::operator ColorSpace):
4245
4246         New property -webkit-color-correction
4247         * css/CSSPropertyNames.in:
4248
4249         Map -webkit-color-correction into the RenderStyle.
4250         * css/CSSStyleSelector.cpp:
4251         (WebCore::CSSStyleSelector::applyProperty):
4252
4253         Add new value sRGB.
4254         * css/CSSValueKeywords.in:
4255
4256         Comment out the reference to sRGB since it will now be inherited as 
4257         a value from CSSValueKeywords.
4258         * css/SVGCSSValueKeywords.in:
4259
4260         Definition of the ColorSpace enum.
4261         * platform/graphics/ColorSpace.h: Added.
4262         (WebCore::):
4263
4264         These functions all now take a ColorSpace as a parameter.
4265         * platform/graphics/GraphicsContext.cpp:
4266         (WebCore::GraphicsContext::setStrokeColor):
4267         (WebCore::GraphicsContext::setFillColor):
4268         (WebCore::GraphicsContext::drawHighlightForText):
4269
4270         Return the appropriate ColorSpace.
4271         (WebCore::GraphicsContext::strokeColorSpace):
4272         (WebCore::GraphicsContext::fillColorSpace):
4273
4274         These functions all call other functions which require a ColorSpace 
4275         as a parameter.
4276         (WebCore::GraphicsContext::setStrokePattern):
4277         (WebCore::GraphicsContext::setFillPattern):