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