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