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