501e34234e6707a5505a42ea29c14d92196fcae9
[WebKit-https.git] / WebCore / ChangeLog
1 2009-12-29  Nikolas Zimmermann  <nzimmermann@rim.com>
2
3         Reviewed by Dirk Schulze.
4
5         Marker code is buggy: referencePoint translation is off
6         https://bugs.webkit.org/show_bug.cgi?id=33012
7
8         Rewrite marker code, as it was buggy:
9         - Correct refX/refY handling (covered by new marker-referencePoint.svg test)
10         - Calculate marker bounds on layout time, instead of paint time, to deliver correct repaint rects
11         - Cleanup RenderPath code, which was cluttered by marker stuff (outlay in SVGMarkerLayoutInfo)
12         - Fix SVGResource assuming that there is only one resource per resource type per element. Markers
13           can have three different resources of the same type (three markers, start/mid/end markers)
14
15         Fixes all svg/custom/marker*.svg tests, that use dynamic updates (propagation failed before).
16         Test: svg/custom/marker-referencePoint.svg
17
18         * Android.mk:
19         * GNUmakefile.am:
20         * WebCore.pro:
21         * WebCore.vcproj/WebCore.vcproj:
22         * WebCore.xcodeproj/project.pbxproj:
23         * rendering/RenderPath.cpp:
24         (WebCore::RenderPath::repaintRectInLocalCoordinates):
25         (WebCore::RenderPath::setPath):
26         (WebCore::RenderPath::paint):
27         (WebCore::RenderPath::calculateMarkerBoundsIfNeeded):
28         * rendering/RenderPath.h:
29         (WebCore::RenderPath::path):
30         * rendering/RenderSVGContainer.h:
31         * rendering/RenderSVGViewportContainer.cpp:
32         (WebCore::RenderSVGViewportContainer::markerContentTransformation):
33         * rendering/RenderSVGViewportContainer.h:
34         * rendering/SVGMarkerLayoutInfo.cpp: Added.
35         (WebCore::SVGMarkerLayoutInfo::SVGMarkerLayoutInfo):
36         (WebCore::SVGMarkerLayoutInfo::~SVGMarkerLayoutInfo):
37         (WebCore::SVGMarkerLayoutInfo::initialize):
38         (WebCore::updateMarkerDataForElement):
39         (WebCore::recordMarkerData):
40         (WebCore::processStartAndMidMarkers):
41         (WebCore::SVGMarkerLayoutInfo::calculateBoundaries):
42         (WebCore::SVGMarkerLayoutInfo::drawMarkers):
43         * rendering/SVGMarkerLayoutInfo.h: Added.
44         (WebCore::MarkerData::):
45         (WebCore::MarkerData::MarkerData):
46         (WebCore::MarkerLayout::MarkerLayout):
47         * svg/SVGMarkerElement.cpp:
48         (WebCore::SVGMarkerElement::canvasResource):
49         * svg/graphics/SVGResource.cpp:
50         (WebCore::resourceSet):
51         (WebCore::SVGResource::SVGResource):
52         (WebCore::SVGResource::~SVGResource):
53         (WebCore::SVGResource::removeClient):
54         (WebCore::SVGResource::addClient):
55         * svg/graphics/SVGResourceMarker.cpp:
56         (WebCore::SVGResourceMarker::SVGResourceMarker):
57         (WebCore::SVGResourceMarker::markerBoundaries):
58         (WebCore::SVGResourceMarker::markerTransformation):
59         (WebCore::SVGResourceMarker::draw):
60         (WebCore::SVGResourceMarker::externalRepresentation):
61         * svg/graphics/SVGResourceMarker.h:
62         (WebCore::SVGResourceMarker::setRenderer):
63         (WebCore::SVGResourceMarker::setReferencePoint):
64         (WebCore::SVGResourceMarker::referencePoint):
65
66 2009-12-29  Alexander Pavlov  <apavlov@chromium.org>
67
68         Reviewed by Pavel Feldman.
69
70         Fix UI nits in the Audits panel.
71         https://bugs.webkit.org/show_bug.cgi?id=32932
72
73         * inspector/front-end/AuditLauncherView.js:
74         (WebInspector.AuditLauncherView.prototype._selectAllClicked):
75         (WebInspector.AuditLauncherView.prototype._createCategoryElement):
76         (WebInspector.AuditLauncherView.prototype._createLauncherUI.handleSelectAllClick):
77         (WebInspector.AuditLauncherView.prototype._createLauncherUI):
78         * inspector/front-end/AuditResultView.js:
79         (WebInspector.AuditResultView):
80         (WebInspector.AuditRuleResultPane):
81         * inspector/front-end/audits.css:
82
83 2009-12-29  Johnny Ding  <jnd@chromium.org>
84
85         Reviewed by Dimitri Glazkov.
86
87         https://bugs.webkit.org/show_bug.cgi?id=32863
88         Make NodeList support call-as-function
89
90         Test: fast/dom/NodeList/nodelist-item-call-as-function.html
91
92         * bindings/scripts/CodeGeneratorV8.pm:
93         * bindings/v8/V8DOMWrapper.cpp:
94         (WebCore::V8DOMWrapper::getTemplate):
95         * bindings/v8/custom/V8NodeListCustom.cpp:
96         (WebCore::V8NodeList::callAsFunctionCallback):
97
98 2009-12-29  Simon Fraser  <simon.fraser@apple.com>
99
100         Reviewed by Dan Bernstein.
101
102         Typed text in table not correctly redrawn on page with compositing layers
103         https://bugs.webkit.org/show_bug.cgi?id=32874
104         
105         Use the same test in RenderTableCell::computeRectForRepaint() that we use elsewhere
106         to decide when to use layoutState, which is to test for layoutStateEnabled()
107         and no repaint container.
108
109         Not possible to make a repaint test that exercises the problem, so no test.
110
111         * rendering/RenderTableCell.cpp:
112         (WebCore::RenderTableCell::computeRectForRepaint):
113
114 2009-12-29  Alexander Pavlov  <apavlov@chromium.org>
115
116         Reviewed by Timothy Hatcher.
117
118         Discard port from cookie domain when matching cookies.
119
120         WebKit cookies do not hold the port information, so we should match only hostnames.
121         https://bugs.webkit.org/show_bug.cgi?id=31787
122
123         * inspector/front-end/inspector.js:
124         (WebInspector.updateResource):
125
126 2009-12-29  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
127
128         Reviewed by Kenneth Rohde Christiansen.
129
130         [Qt] Fix warnings in MediaPlayerPrivatePhonon.cpp
131         https://bugs.webkit.org/show_bug.cgi?id=33019
132
133         No new tests as there is no new functionality.
134
135         * platform/graphics/qt/MediaPlayerPrivatePhonon.cpp:
136         (WebCore::MediaPlayerPrivate::totalTimeChanged):
137
138 2009-12-29  Kent Tamura  <tkent@chromium.org>
139
140         Reviewed by Maciej Stachowiak.
141
142         Implement HTML5 <aside> element.
143         https://bugs.webkit.org/show_bug.cgi?id=32943
144
145         <aside> should behave the same as <nav>, <section>, and <article>.
146
147         Test: fast/html/aside-element.html
148
149         * css/html.css: Add aside as a block element.
150         * editing/htmlediting.cpp:
151         (WebCore::validBlockTag): Add asideTag.
152         * html/HTMLElement.cpp:
153         (WebCore::HTMLElement::tagPriority): Returns 5 for asideTag.
154         (WebCore::blockTagList): Add asideTag.
155         * html/HTMLParser.cpp:
156         (WebCore::HTMLParser::getNode): Add asideTag.
157         * html/HTMLTagNames.in: Add aside.
158
159 2009-12-29  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
160
161         Reviewed by Eric Seidel.
162
163         Use explicit parentheses to silence gcc 4.4 -Wparentheses warnings
164         https://bugs.webkit.org/show_bug.cgi?id=33003
165
166         No new tests as there is no new functionality.
167
168         * editing/CompositeEditCommand.cpp:
169         (WebCore::CompositeEditCommand::breakOutOfEmptyMailBlockquotedParagraph):
170         * page/animation/ImplicitAnimation.cpp:
171         (WebCore::ImplicitAnimation::sendTransitionEvent):
172         * page/animation/KeyframeAnimation.cpp:
173         (WebCore::KeyframeAnimation::sendAnimationEvent):
174         * rendering/RenderSVGContainer.h:
175         (WebCore::toRenderSVGContainer):
176         * rendering/style/RenderStyle.cpp:
177         (WebCore::RenderStyle::setTextShadow):
178         * svg/graphics/SVGPaintServerGradient.cpp:
179         (WebCore::SVGPaintServerGradient::setup):
180         * svg/graphics/SVGPaintServerPattern.cpp:
181         (WebCore::SVGPaintServerPattern::setup):
182
183 2009-12-28  Andrei Popescu  <andreip@google.com>
184
185         Reviewed by Dmitry Titov.
186
187         On Android, ResourceHandle instances make use of a pointer to a
188         ResourceLoaderAndroid pointer. This needs to be stored in order to later cancel
189         the load, if necessary. Since this pointer is an internal implementation
190         details of ResourceHandle on Android, it needs to be stored in the
191         ResourceHandleInternal class. This patch adds this pointer.
192         https://bugs.webkit.org/show_bug.cgi?id=32873
193
194         No new tests needed, this is platform-specific code.
195
196         * platform/network/ResourceHandle.h:
197         * platform/network/ResourceHandleInternal.h:
198         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
199
200 2009-12-28  Charles Wei  <charles.wei@torchmobile.com.cn>
201
202         Reviewed by Maciej Stachowiak.
203
204         Remove the macro ENABLE(XHTMLMP) for noscriptAreateErrorCheck in HTMLParser,
205         since with XHTMLMP enabled, it's not checking create Errors,  and then contents inside 
206         <noscript> are always parsed and rendered.
207         https://bugs.webkit.org/show_bug.cgi?id=32706
208
209         Tests: fast/parser/noscript-with-javascript-disabled.html
210                fast/parser/noscript-with-javascript-enabled.html
211
212         * html/HTMLParser.cpp:
213         (WebCore::HTMLParser::getNode):
214
215 2009-12-28  Kinuko Yasuda  <kinuko@chromium.org>
216
217         Reviewed by Maciej Stachowiak.
218
219         Fixed isKeypadEvent behavior for Mac to correctly report keyLocation
220         as DOM_KEY_LOCATION_NUMPAD for numeric pad key events.
221         https://bugs.webkit.org/show_bug.cgi?id=28247
222
223         Test: fast/events/keydown-numpad-keys.html
224
225         * platform/mac/KeyEventMac.mm:
226         (WebCore::isKeypadEvent):
227
228 2009-12-28  Mike Moretti  <webkit9@mordent.com>
229
230         Reviewed by Darin Adler.
231
232         Fix bug 28245 - problem with inserting a span into a long text block causing a crash because of a null string
233
234         Test: fast/dom/insert-span-into-long-text-bug-28245.html
235
236         * rendering/RenderBlockLineLayout.cpp:
237         (WebCore::RenderBlock::findNextLineBreak):
238
239 2009-12-28  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
240
241         Rubber-stamped by Xan Lopez.
242
243         Follow Apple's decision to disable HTML DataGrid by default.
244
245         * GNUmakefile.am:
246
247 2009-12-28  Gustavo Noronha Silva  <gns@gnome.org>
248
249         Reviewed by Ariya Hidayat.
250
251         Fix warnings when generating files using gperf. The warnings are
252         currently harmless, but some changes in the build system may make
253         them fatal.
254
255         [GTK] Build time must be reduced
256         https://bugs.webkit.org/show_bug.cgi?id=32921
257
258         * GNUmakefile.am:
259
260 2009-12-28  Laszlo Gombos  <laszlo.1.gombos@nokia.com>
261
262         Reviewed by Adam Barth.
263
264         [Qt] Fix build break for Qt 4.4
265         https://bugs.webkit.org/show_bug.cgi?id=30327
266
267         No new tests, as there is no new functionality.
268
269         * platform/graphics/qt/GraphicsContextQt.cpp:
270         (WebCore::GraphicsContext::clipOut): Use intersected() instead of
271         operator &, which was only introduced in Qt version 4.5.
272
273         * platform/qt/ScrollbarThemeQt.cpp:
274         (WebCore::ScrollbarThemeQt::paintScrollCorner): Pass ColorSpace
275         argument to fillColor() introduced in r50760
276
277 2009-12-28  Kent Tamura  <tkent@chromium.org>
278
279         Reviewed by Maciej Stachowiak.
280
281         Implement HTML5 <article> element.
282         https://bugs.webkit.org/show_bug.cgi?id=32936
283
284         <article> should behave the same as <nav> and <section>.
285
286         Test: fast/html/article-element.html
287
288         * css/html.css: Add article as a block element.
289         * editing/htmlediting.cpp:
290         (WebCore::validBlockTag): Add articleTag.
291         * html/HTMLElement.cpp:
292         (WebCore::HTMLElement::tagPriority): Returns 5 for articleTag.
293         (WebCore::blockTagList): Add articleTag.
294         * html/HTMLParser.cpp:
295         (WebCore::HTMLParser::getNode): Add articleTag.
296         * html/HTMLTagNames.in: Add article.
297
298 2009-12-27  Jakub Wieczorek  <faw217@gmail.com>
299
300         Reviewed by Eric Seidel.
301
302         [Qt] Support upload progress events in XMLHttpRequest
303         https://bugs.webkit.org/show_bug.cgi?id=32969
304
305         Make QNetworkReplyHandler report the upload progress to the client.
306
307         Already covered by tests:
308         http/tests/xmlhttprequest/upload-onload-event.html
309         http/tests/xmlhttprequest/upload-onloadstart-event.html
310         http/tests/xmlhttprequest/upload-progress-events.html
311         http/tests/xmlhttprequest/upload-onprogress-event.html
312
313         which have been unskipped.
314
315         * platform/network/qt/QNetworkReplyHandler.cpp:
316         (WebCore::QNetworkReplyHandler::uploadProgress):
317         (WebCore::QNetworkReplyHandler::start):
318         * platform/network/qt/QNetworkReplyHandler.h:
319
320 2009-12-27  Dirk Schulze  <krit@webkit.org>
321
322         Reviewed by Nikolas Zimmermann.
323
324         SVG: Stop rendering of objects with empty mask and filter content
325         https://bugs.webkit.org/show_bug.cgi?id=32968
326
327         It's not neccessary to continue rendering of an object and its' childs
328         if the mask clips the complete content away.
329         The same for filters, if the filter rendering is discontinued or either
330         width or height are zero.
331         We might also stop rendering if repaintRectInLocalCoordinates is empty.
332         But it needs to be fixed first.
333
334         Test: svg/custom/empty-mask.svg
335
336         * rendering/RenderPath.cpp:
337         (WebCore::RenderPath::paint):
338         * rendering/RenderSVGContainer.cpp:
339         (WebCore::RenderSVGContainer::paint):
340         * rendering/RenderSVGImage.cpp:
341         (WebCore::RenderSVGImage::paint):
342         * rendering/RenderSVGRoot.cpp:
343         (WebCore::RenderSVGRoot::paint):
344         * rendering/SVGRenderSupport.cpp:
345         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
346         * rendering/SVGRenderSupport.h:
347         * rendering/SVGRootInlineBox.cpp:
348         (WebCore::SVGRootInlineBox::paint):
349         * svg/SVGMaskElement.cpp:
350         (WebCore::SVGMaskElement::drawMaskerContent):
351         * svg/SVGMaskElement.h:
352         * svg/graphics/SVGResourceFilter.cpp:
353         (WebCore::SVGResourceFilter::prepareFilter):
354         (WebCore::SVGResourceFilter::applyFilter):
355         * svg/graphics/SVGResourceFilter.h:
356         * svg/graphics/SVGResourceMasker.cpp:
357         (WebCore::SVGResourceMasker::SVGResourceMasker):
358         (WebCore::SVGResourceMasker::applyMask):
359         * svg/graphics/SVGResourceMasker.h:
360
361 2009-12-27  Christian Dywan  <christian@twotoasts.de>
362
363         Reviewed by Eric Seidel.
364
365         [GTK] Spell Check Suggestions (Do not work)
366         https://bugs.webkit.org/show_bug.cgi?id=30908
367
368         * platform/gtk/ContextMenuItemGtk.cpp:
369         (WebCore::ContextMenuItem::ContextMenuItem):
370         (WebCore::ContextMenuItem::title):
371         (WebCore::ContextMenuItem::setTitle): Implement the 'title' member
372         and set the title from the native menu item.
373
374 2009-12-27  Dirk Schulze  <krit@webkit.org>
375
376         Reviewed by Nikolas Zimmermann.
377
378         SVG Mask result wrong, if two different objects call the same mask id
379         https://bugs.webkit.org/show_bug.cgi?id=32787
380
381         At the moment we create one resource per maskId. Some resources (like mask)
382         create ImageBuffers and depends on the properties of the RenderObject,
383         thus we can't use it for a second object.
384         This patch stores multiple mask resources for one maskId and different
385         RenderObject can use the same maskId.
386         Clipper, Filter and Patterns also need to store multiple resources later.
387
388         Test: svg/custom/mask-on-multiple-objects.svg
389
390         * rendering/RenderPath.cpp:
391         (WebCore::RenderPath::drawMarkersIfNeeded):
392         * rendering/RenderSVGContainer.cpp:
393         (WebCore::RenderSVGContainer::selfWillPaint):
394         * rendering/RenderSVGGradientStop.cpp:
395         (WebCore::RenderSVGGradientStop::styleDidChange):
396         * rendering/RenderSVGRoot.cpp:
397         (WebCore::RenderSVGRoot::selfWillPaint):
398         * rendering/SVGRenderSupport.cpp:
399         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
400         (WebCore::SVGRenderBase::filterBoundingBoxForRenderer):
401         * rendering/SVGRenderTreeAsText.cpp:
402         (WebCore::writeRenderResources):
403         * svg/SVGClipPathElement.cpp:
404         (WebCore::SVGClipPathElement::canvasResource):
405         * svg/SVGClipPathElement.h:
406         * svg/SVGFilterElement.cpp:
407         (WebCore::SVGFilterElement::canvasResource):
408         * svg/SVGFilterElement.h:
409         * svg/SVGGradientElement.cpp:
410         (WebCore::SVGGradientElement::canvasResource):
411         * svg/SVGGradientElement.h:
412         * svg/SVGMarkerElement.cpp:
413         (WebCore::SVGMarkerElement::canvasResource):
414         * svg/SVGMarkerElement.h:
415         * svg/SVGMaskElement.cpp:
416         (WebCore::SVGMaskElement::svgAttributeChanged):
417         (WebCore::SVGMaskElement::childrenChanged):
418         (WebCore::SVGMaskElement::canvasResource):
419         * svg/SVGMaskElement.h:
420         * svg/SVGPatternElement.cpp:
421         (WebCore::SVGPatternElement::canvasResource):
422         * svg/SVGPatternElement.h:
423         * svg/SVGStyledElement.cpp:
424         (WebCore::SVGStyledElement::invalidateResourcesInAncestorChain):
425         * svg/SVGStyledElement.h:
426         (WebCore::SVGStyledElement::canvasResource):
427         * svg/graphics/SVGPaintServer.cpp:
428         (WebCore::getPaintServerById):
429         (WebCore::SVGPaintServer::fillPaintServer):
430         (WebCore::SVGPaintServer::strokePaintServer):
431         * svg/graphics/SVGPaintServer.h:
432         * svg/graphics/SVGResource.cpp:
433         (WebCore::getResourceById):
434         * svg/graphics/SVGResource.h:
435         * svg/graphics/SVGResourceClipper.cpp:
436         (WebCore::getClipperById):
437         * svg/graphics/SVGResourceClipper.h:
438         * svg/graphics/SVGResourceFilter.cpp:
439         (WebCore::getFilterById):
440         * svg/graphics/SVGResourceFilter.h:
441         * svg/graphics/SVGResourceMarker.cpp:
442         (WebCore::getMarkerById):
443         * svg/graphics/SVGResourceMarker.h:
444         * svg/graphics/SVGResourceMasker.cpp:
445         (WebCore::getMaskerById):
446         * svg/graphics/SVGResourceMasker.h:
447
448 2009-12-27  Nikolas Zimmermann  <nzimmermann@rim.com>
449
450         Reviewed by Dirk Schulze.
451
452         Cleanup RenderPath code, related to markers. Pass around
453         PaintInfo objects instead of GraphicsContext directly, to
454         avoid having to recreate a new PaintInfo object in
455         SVGResourceMarker::draw().
456
457         No layout test changes.
458
459         * rendering/RenderPath.cpp:
460         (WebCore::RenderPath::paint):
461         (WebCore::DrawMarkersData::DrawMarkersData):
462         (WebCore::drawMarkerWithData):
463         (WebCore::drawStartAndMidMarkers):
464         (WebCore::RenderPath::drawMarkersIfNeeded):
465         * rendering/RenderPath.h:
466         * svg/graphics/SVGResourceMarker.cpp:
467         (WebCore::SVGResourceMarker::draw):
468         * svg/graphics/SVGResourceMarker.h:
469
470 2009-12-27  Patrick Gansterer  <paroga@paroga.com>
471
472         Reviewed by Eric Seidel.
473
474         WinCE buildfix (added missing header)
475
476         * platform/text/wince/TextBreakIteratorWince.cpp:
477
478 2009-12-27  Patrick Gansterer  <paroga@paroga.com>
479
480         Reviewed by Eric Seidel.
481
482         Buildfix after r50760 and some style fixes.
483
484         * rendering/RenderThemeWince.cpp:
485         (WebCore::RenderThemeWince::paintSearchFieldCancelButton):
486         (WebCore::RenderThemeWince::paintSliderTrack):
487         (WebCore::RenderThemeWince::paintSliderThumb):
488         (WebCore::RenderThemeWince::paintMediaMuteButton):
489         (WebCore::RenderThemeWince::paintMediaPlayButton):
490
491 2009-12-27  Patrick Gansterer  <paroga@paroga.com>
492
493         Reviewed by Adam Barth.
494
495         WinCE buildfixes (missing headers and unsupported HWND_MESSAGE)
496
497         * platform/wince/MIMETypeRegistryWince.cpp:
498         * platform/wince/SearchPopupMenuWince.cpp:
499         * platform/wince/SharedTimerWince.cpp:
500         (WebCore::initializeOffScreenTimerWindow):
501
502 2009-12-26  Eric Seidel  <eric@webkit.org>
503
504         No review, rolling out r52554.
505         http://trac.webkit.org/changeset/52554
506
507         https://bugs.webkit.org/show_bug.cgi?id=32955
508         The original change was covered under
509         https://bugs.webkit.org/show_bug.cgi?id=32913
510
511         r52554 was itself a rollout of r52536.
512         However it caused two layout tests to fail on Leopard:
513         storage/open-database-while-transaction-in-progress.html
514         svg/W3C-SVG-1.1/filters-conv-01-f.svg (no clue why?)
515
516         So I'm rolling out the rollout in an attempt to get the bots green.
517         r52554 did not explain why it was rolled out, so I do not know
518         what might fail for Chromium after this change.  I warned the folks
519         in #chromium that it was coming.
520
521         * storage/Database.cpp:
522         (WebCore::Database::openDatabase):
523         (WebCore::Database::Database):
524         (WebCore::Database::performOpenAndVerify):
525
526 2009-12-26  Dan Bernstein  <mitz@apple.com>
527
528         Reviewed by Sam Weinig.
529
530         <rdar://problem/7483622> REGRESSION (r47255): Extra Large Amount of Empty Space
531         https://bugs.webkit.org/show_bug.cgi?id=32690
532
533         Test: fast/block/float/clear-to-fit.html
534
535         * rendering/RenderBlock.cpp:
536         (WebCore::RenderBlock::getClearDelta): Only clear floats as needed to
537         fit the child on the line.
538
539 2009-12-25  Kent Tamura  <tkent@chromium.org>
540
541         Reviewed by Darin Adler.
542
543         Implement HTML5 section element.
544         https://bugs.webkit.org/show_bug.cgi?id=32936
545
546         <section> should behave the same as <nav>.
547
548         Test: fast/html/section-element.html
549
550         * css/html.css: Add section as a block element.
551         * editing/htmlediting.cpp:
552         (WebCore::validBlockTag): Add sectionTag.
553         * html/HTMLElement.cpp:
554         (WebCore::HTMLElement::tagPriority): Returns 5 for sectionTag.
555         (WebCore::blockTagList): Add sectionTag.
556         * html/HTMLParser.cpp:
557         (WebCore::HTMLParser::getNode): Add sectionTag.
558         * html/HTMLTagNames.in: Add section.
559
560 2009-12-25  Daniel Bates  <dbates@webkit.org>
561
562         Reviewed by Adam Barth.
563
564         https://bugs.webkit.org/show_bug.cgi?id=32938
565
566         Cleans up XSSAuditor.
567
568         Currently, we pass various parameters through to XSSAuditor::findInRequest
569         that are used to determine how to decode the HTTP input parameters so that
570         we can perform a match against the script source. Instead, we have defined
571         a structure XSSAuditor::FindTask that can hold all of these parameters.
572
573         No functionality was changed. So, no new tests.
574
575         * page/XSSAuditor.cpp:
576         (WebCore::XSSAuditor::canEvaluate): Modified to use struct
577         XSSAuditor::FindTask.
578         (WebCore::XSSAuditor::canEvaluateJavaScriptURL): Ditto.
579         (WebCore::XSSAuditor::canCreateInlineEventListener): Ditto.
580         (WebCore::XSSAuditor::canLoadExternalScriptFromSrc): Ditto.
581         (WebCore::XSSAuditor::canLoadObject): Ditto.
582         (WebCore::XSSAuditor::canSetBaseElementURL): Ditto.
583         (WebCore::XSSAuditor::findInRequest): Ditto.
584         * page/XSSAuditor.h:
585         (WebCore::XSSAuditor::FindTask::FindTask): Added.
586
587 2009-12-25  Nikolas Zimmermann  <nzimmermann@rim.com>
588
589         Reviewed by Dirk Schulze.
590
591         DOMWindow is missing lots of SVG* constructor objects
592         https://bugs.webkit.org/show_bug.cgi?id=20430
593
594         Expose all implemented SVG 1.1 constructors.
595
596         Test: svg/custom/global-constructors.js
597
598         * bindings/v8/V8Index.cpp: Add missing includes for SVGFontFaceElement & SVGMissingGlyphElement
599         * bindings/v8/V8Index.h: Add misisng SVGFontFaceElement & SVGMissingGlyphElement declarations.
600         * page/DOMWindow.idl: Add a bunch of new SVG object ctors.
601         * svg/SVGAnimatedPathData.idl: Add OmitConstructor flag, as this is a SVG MI class, which is not exposable at the moment.
602         * svg/SVGAnimatedPoints.idl: Ditto.
603
604 2009-12-25  Alexander Pavlov  <apavlov@chromium.org>
605
606         Reviewed by Pavel Feldman.
607
608         AuditsPanel for Web Inspector (hidden, no preset audits).
609
610         https://bugs.webkit.org/show_bug.cgi?id=31665
611
612         * English.lproj/localizedStrings.js:
613         * WebCore.gypi:
614         * WebCore.vcproj/WebCore.vcproj:
615         * inspector/front-end/AuditLauncherView.js: Added.
616         (WebInspector.AuditLauncherView.categorySortFunction):
617         (WebInspector.AuditLauncherView):
618         (WebInspector.AuditLauncherView.prototype.updateResourceTrackingState):
619         (WebInspector.AuditLauncherView.prototype._setAuditRunning):
620         (WebInspector.AuditLauncherView.prototype._launchButtonClicked.profilingFinishedCallback):
621         (WebInspector.AuditLauncherView.prototype._launchButtonClicked):
622         (WebInspector.AuditLauncherView.prototype._selectAllClicked):
623         (WebInspector.AuditLauncherView.prototype._categoryClicked):
624         (WebInspector.AuditLauncherView.prototype._createCategoryElement):
625         (WebInspector.AuditLauncherView.prototype._createLauncherUI):
626         (WebInspector.AuditLauncherView.prototype._updateButton):
627         (WebInspector.AuditLauncherView.prototype.resize):
628         * inspector/front-end/AuditResultView.js: Added.
629         (WebInspector.AuditResultView.entrySortFunction):
630         (WebInspector.AuditResultView):
631         (WebInspector.AuditCategoryResultPane):
632         (WebInspector.AuditRuleResultPane):
633         (WebInspector.AuditRuleResultPane.prototype._decorateRuleResult):
634         (WebInspector.AuditRuleResultChildSection):
635         (WebInspector.AuditRuleResultChildSection.prototype.set title):
636         (WebInspector.AuditRuleResultChildSection.prototype.expand):
637         * inspector/front-end/AuditsPanel.js: Added.
638         (WebInspector.AuditsPanel):
639         (WebInspector.AuditsPanel.prototype.toolbarItemClass.get toolbarItemLabel):
640         (WebInspector.AuditsPanel.prototype.get statusBarItems):
641         (WebInspector.AuditsPanel.prototype.get mainResourceLoadTime):
642         (WebInspector.AuditsPanel.prototype.set mainResourceLoadTime):
643         (WebInspector.AuditsPanel.prototype.get mainResourceDOMContentTime):
644         (WebInspector.AuditsPanel.prototype.set mainResourceDOMContentTime):
645         (WebInspector.AuditsPanel.prototype.get categoriesById):
646         (WebInspector.AuditsPanel.prototype.get visibleView):
647         (WebInspector.AuditsPanel.prototype._constructCategories):
648         (WebInspector.AuditsPanel.prototype._executeAudit.ruleResultReadyCallback):
649         (WebInspector.AuditsPanel.prototype._executeAudit):
650         (WebInspector.AuditsPanel.prototype._auditFinishedCallback):
651         (WebInspector.AuditsPanel.prototype.initiateAudit.initiateAuditCallback):
652         (WebInspector.AuditsPanel.prototype.initiateAudit):
653         (WebInspector.AuditsPanel.prototype._reloadResources):
654         (WebInspector.AuditsPanel.prototype._didMainResourceLoad):
655         (WebInspector.AuditsPanel.prototype.showResults):
656         (WebInspector.AuditsPanel.prototype.showLauncherView):
657         (WebInspector.AuditsPanel.prototype.showView):
658         (WebInspector.AuditsPanel.prototype.show):
659         (WebInspector.AuditsPanel.prototype.attach):
660         (WebInspector.AuditsPanel.prototype.resize):
661         (WebInspector.AuditsPanel.prototype.updateMainViewWidth):
662         (WebInspector.AuditsPanel.prototype._updateLauncherViewControls):
663         (WebInspector.AuditsPanel.prototype._clearButtonClicked):
664         (WebInspector.AuditsPanel.prototype._closeVisibleView):
665         (WebInspector.AuditCategory):
666         (WebInspector.AuditCategory.prototype.get id):
667         (WebInspector.AuditCategory.prototype.get displayName):
668         (WebInspector.AuditCategory.prototype.get ruleCount):
669         (WebInspector.AuditCategory.prototype.addRule):
670         (WebInspector.AuditCategory.prototype.runRules):
671         (WebInspector.AuditRule):
672         (WebInspector.AuditRule.prototype.get id):
673         (WebInspector.AuditRule.prototype.get displayName):
674         (WebInspector.AuditRule.prototype.run):
675         (WebInspector.AuditRule.prototype.doRun):
676         (WebInspector.AuditRule.prototype.getValue):
677         (WebInspector.AuditCategoryResult):
678         (WebInspector.AuditCategoryResult.prototype.addEntry):
679         (WebInspector.AuditRuleResult):
680         (WebInspector.AuditRuleResult.prototype.appendChild):
681         (WebInspector.AuditRuleResult.prototype.set type):
682         (WebInspector.AuditRuleResult.prototype.get type):
683         (WebInspector.AuditsSidebarTreeElement):
684         (WebInspector.AuditsSidebarTreeElement.prototype.onattach):
685         (WebInspector.AuditsSidebarTreeElement.prototype.onselect):
686         (WebInspector.AuditsSidebarTreeElement.prototype.get selectable):
687         (WebInspector.AuditsSidebarTreeElement.prototype.refresh):
688         (WebInspector.AuditResultSidebarTreeElement):
689         (WebInspector.AuditResultSidebarTreeElement.prototype.onselect):
690         (WebInspector.AuditResultSidebarTreeElement.prototype.get selectable):
691         * inspector/front-end/WebKit.qrc:
692         * inspector/front-end/audits.css: Added.
693         * inspector/front-end/inspector.html:
694         * inspector/front-end/inspector.js:
695         (WebInspector._createPanels):
696         (WebInspector.updateResource):
697
698 2009-12-25  Pavel Feldman  <pfeldman@chromium.org>
699
700         Reviewed by Timothy Hatcher.
701
702         Web Inspector: Implement Edit Inner HTML action.
703
704         https://bugs.webkit.org/show_bug.cgi?id=32924
705
706         * English.lproj/localizedStrings.js:
707         * bindings/js/JSInjectedScriptHostCustom.cpp:
708         (WebCore::JSInjectedScriptHost::pushNodePathToFrontend):
709         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
710         (WebCore::V8InjectedScriptHost::pushNodePathToFrontendCallback):
711         * inspector/InjectedScriptHost.cpp:
712         (WebCore::InjectedScriptHost::pushNodePathToFrontend):
713         * inspector/InjectedScriptHost.h:
714         * inspector/InjectedScriptHost.idl:
715         * inspector/InspectorDOMAgent.h:
716         * inspector/front-end/ElementsPanel.js:
717         (WebInspector.ElementsPanel.prototype.show):
718         (WebInspector.ElementsPanel.prototype._updateModifiedNodesSoon):
719         (WebInspector.ElementsPanel.prototype.updateModifiedNodes):
720         * inspector/front-end/ElementsTreeOutline.js:
721         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
722         (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML.commit):
723         (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML.dispose):
724         (WebInspector.ElementsTreeElement.prototype._startEditingAsHTML):
725         ():
726         * inspector/front-end/InjectedScript.js:
727         (InjectedScript.getNodePropertyValue):
728         (InjectedScript.setOuterHTML):
729         (InjectedScript.performSearch.addNodesToResults):
730         (InjectedScript._inspectObject):
731         (InjectedScript._copy):
732         (InjectedScript.pushNodeToFrontend):
733         * inspector/front-end/InjectedScriptAccess.js:
734         * inspector/front-end/InspectorFrontendHostStub.js:
735         (.WebInspector.InspectorFrontendHostStub.prototype.hiddenPanels):
736         (.WebInspector.InspectorFrontendHostStub.prototype.windowUnloading):
737         * inspector/front-end/inspector.css:
738         * inspector/front-end/inspector.js:
739         (WebInspector.startEditing.keyDownEventListener):
740         (WebInspector.startEditing):
741
742 2009-12-24  Dan Bernstein  <mitz@apple.com>
743
744         Reviewed by Timothy Hatcher.
745
746         Web Inspector: Console should force long URLs to wrap
747         https://bugs.webkit.org/show_bug.cgi?id=32927
748
749         * inspector/front-end/inspector.css: Added "word-wrap: break-word;" to
750         the #console-messages rule.
751
752 2009-12-24  Shinichiro Hamaji  <hamaji@chromium.org>
753
754         Unreviewed Chromium test fix by reverting r52536.
755
756         Do not a new Database pointer to any structure until its version has been verified
757         https://bugs.webkit.org/show_bug.cgi?id=32913
758
759         * storage/Database.cpp:
760         (WebCore::Database::openDatabase):
761         (WebCore::Database::Database):
762         (WebCore::Database::performOpenAndVerify):
763
764 2009-12-24  Jessie Berlin  <jberlin@webkit.org>
765
766         Reviewed by Dan Bernstein.
767
768         Fix for WebKit bug 29968 - Selecting text with text-overflow ellipsis
769         should not show cut off text
770         https://bugs.webkit.org/show_bug.cgi?id=29968
771
772         Also fixes the issue on both Mac OS X and Windows where the highlight
773         would extend only partway into the ellipsis based on the size of the
774         characters being truncated.
775
776         Test: editing/selection/select-text-overflow-ellipsis.html
777
778         * rendering/EllipsisBox.cpp:
779         (WebCore::EllipsisBox::paint):
780         When the ellipsis have been selected, paints them with the color for
781         selected text.
782         (WebCore::EllipsisBox::selectionRect):
783         Returns the selection rect for the ellipsis text.
784         (WebCore::EllipsisBox::paintSelection):
785         Paints the selection highlight around the ellipsis text.
786
787         * rendering/EllipsisBox.h:
788         (WebCore::EllipsisBox::EllipsisBox):
789         Default the selection state of the EllipsisBox to SelectionNone.
790         (WebCore::EllipsisBox::setSelectionState):
791         Allow the selection state to be explicitly set by the InlineTextBox
792         that it is associated with, since the selection state depends on the
793         position of the selection within the truncated text.
794         (WebCore::EllipsisBox::selectionState):
795         Return the cached selection state.
796         
797         * rendering/InlineTextBox.cpp:
798         (WebCore::InlineTextBox::selectionState):
799         If the text is truncated and the selection extends into the truncation
800         where there are ellipsis, set the selection state on the EllipsisBox.
801         (WebCore::paintTextWithShadows):
802         Allow for an upper bound to be specified on the maximum length of the
803         text to be painted.
804         (WebCore::InlineTextBox::paint):
805         Make sure the text that is drawn gets appropriately truncated. This was
806         not an issue before on Mac OS X because it wasn't necessary to draw the
807         selected text separately (the selected text had the same color as the
808         non-selected text).
809         (WebCore::InlineTextBox::paintSelection):
810         If the text is being truncated, let whatever is being painted in the
811         space after the truncated text paint its own highlight. 
812         
813         * rendering/InlineTextBox.h:
814         (WebCore::InlineTextBox::truncation):
815         Allow RenderText to access the truncation status.
816         
817         * rendering/RenderText.cpp:
818         (WebCore::RenderText::selectionRectForRepaint):
819         Make sure that any ellipsis box that falls within the selection also
820         gets repainted.
821
822 2009-12-24  Pavel Feldman  <pfeldman@chromium.org>
823
824         Reviewed by Timothy Hatcher.
825
826         Web Inspector: add Settings.js class that would manage
827         frontend settings.
828
829         This change:
830         - Splits preferences and settings
831         - Pushes settings to the frontend on load
832         - Stores settings on each change
833         - Stores showInheritedStyles as setting.
834
835         https://bugs.webkit.org/show_bug.cgi?id=32832
836
837         * WebCore.gypi:
838         * WebCore.vcproj/WebCore.vcproj:
839         * inspector/InspectorBackend.cpp:
840         (WebCore::InspectorBackend::saveFrontendSettings):
841         * inspector/InspectorBackend.h:
842         * inspector/InspectorBackend.idl:
843         * inspector/InspectorController.cpp:
844         (WebCore::InspectorController::populateScriptObjects):
845         * inspector/InspectorController.h:
846         * inspector/InspectorFrontend.cpp:
847         (WebCore::InspectorFrontend::populateFrontendSettings):
848         * inspector/InspectorFrontend.h:
849         * inspector/InspectorFrontendHost.cpp:
850         * inspector/InspectorFrontendHost.h:
851         * inspector/InspectorFrontendHost.idl:
852         * inspector/front-end/EventListenersSidebarPane.js:
853         (WebInspector.EventListenersSidebarPane.prototype._settingsLoaded):
854         (WebInspector.EventListenersSidebarPane.prototype):
855         ():
856         * inspector/front-end/InspectorBackendStub.js:
857         (.WebInspector.InspectorBackendStub):
858         (.WebInspector.InspectorBackendStub.prototype.saveFrontendSettings):
859         (.WebInspector.InspectorBackendStub.prototype.releaseWrapperObjectGroup):
860         * inspector/front-end/InspectorFrontendHostStub.js:
861         (.WebInspector.InspectorFrontendHostStub):
862         (.WebInspector.InspectorFrontendHostStub.prototype.hiddenPanels):
863         * inspector/front-end/ResourcesPanel.js:
864         (WebInspector.ResourcesPanel.prototype._createStatusbarButtons):
865         (WebInspector.ResourcesPanel.prototype._settingsLoaded):
866         (WebInspector.ResourcesPanel.prototype._toggleLargerResources):
867         (WebInspector.ResourcesPanel.prototype._setLargerResources):
868         * inspector/front-end/ScriptsPanel.js:
869         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
870         (WebInspector.ScriptsPanel.prototype._addScriptToFilesMenu):
871         * inspector/front-end/Settings.js: Added.
872         (WebInspector.populateFrontendSettings):
873         (WebInspector.Settings):
874         (WebInspector.Settings.prototype._load):
875         (WebInspector.Settings.prototype._installSetting):
876         (WebInspector.Settings.prototype._get):
877         (WebInspector.Settings.prototype._set):
878         * inspector/front-end/StylesSidebarPane.js:
879         (WebInspector.StylesSidebarPane.prototype._settingsLoaded):
880         (WebInspector.StylesSidebarPane.prototype.update):
881         (WebInspector.StylesSidebarPane.prototype._changeSetting):
882         (WebInspector.StylesSidebarPane.prototype._changeColorFormat):
883         (WebInspector.StylePropertiesSection.showInheritedToggleFunction):
884         (WebInspector.StylePropertiesSection):
885         * inspector/front-end/WatchExpressionsSidebarPane.js:
886         (WebInspector.WatchExpressionsSidebarPane):
887         (WebInspector.WatchExpressionsSidebarPane.prototype._settingsLoaded):
888         (WebInspector.WatchExpressionsSidebarPane.prototype.refreshExpressions):
889         (WebInspector.WatchExpressionsSection):
890         (WebInspector.WatchExpressionsSection.prototype.saveExpressions):
891         * inspector/front-end/WebKit.qrc:
892         * inspector/front-end/inspector.html:
893         * inspector/front-end/inspector.js:
894         (WebInspector.loaded):
895
896 2009-12-23  Pavel Feldman  <pfeldman@chromium.org>
897
898         Reviewed by Timothy Hatcher.
899
900         Web Inspector: [REGRESSION] console's clear command does not work.
901
902         https://bugs.webkit.org/show_bug.cgi?id=32897
903
904         Test: inspector/console-clear.html
905
906         * inspector/InjectedScriptHost.cpp:
907         (WebCore::InjectedScriptHost::clearConsoleMessages):
908         * inspector/InjectedScriptHost.h:
909         * inspector/InjectedScriptHost.idl:
910         * inspector/InspectorBackend.cpp:
911         * inspector/InspectorBackend.h:
912         * inspector/InspectorBackend.idl:
913         * inspector/InspectorController.cpp:
914         (WebCore::InspectorController::clearConsoleMessages):
915         (WebCore::InspectorController::didCommitLoad):
916         * inspector/InspectorController.h:
917         * inspector/front-end/ConsoleView.js:
918         (WebInspector.ConsoleView):
919         (WebInspector.ConsoleView.prototype.requestClearConsoleMessages):
920         (WebInspector.ConsoleView.prototype.clearConsoleMessages):
921         (WebInspector.ConsoleView.prototype._clearButtonClicked):
922         * inspector/front-end/InjectedScript.js:
923         (InjectedScript.clearConsoleMessages):
924         (InjectedScript._ensureCommandLineAPIInstalled):
925         * inspector/front-end/InjectedScriptAccess.js:
926         * inspector/front-end/inspector.js:
927         (WebInspector.clearConsoleMessages):
928         (WebInspector.reset):
929
930 2009-12-23  Pavel Feldman  <pfeldman@chromium.org>
931
932         Reviewed by Timothy Hatcher.
933
934         Web Inspector: Console dumps strings in escaped form.
935
936         https://bugs.webkit.org/show_bug.cgi?id=32488
937
938         * inspector/front-end/ConsoleView.js:
939         (WebInspector.ConsoleMessage.prototype._formatIndividualValue):
940
941 2009-12-23  Alexey Proskuryakov  <ap@apple.com>
942
943         Reviewed by Darin Adler.
944
945         https://bugs.webkit.org/show_bug.cgi?id=32905
946         With Pinyin Simplified IM, a wrong character is deleted from google.com suggestion
947
948         Test: platform/mac/editing/input/selection-change-closes-typing.html
949
950         * editing/Editor.cpp: (WebCore::Editor::confirmComposition): If this function wasn't allowed
951         to change selection, it needs to close the current typing command - otherwise, its idea of
952         selection would be used for future typing.
953
954 2009-12-23  Yuta Kitamura  <yutak@chromium.org>
955
956         Reviewed by Eric Seidel.
957
958         PlatformContextSkia::beginLayerClippedToImage() needs to clip outside of the image.
959         
960         This method should limit the current painting window to the bounds of the given
961         image, but it did not. Due to this bug, unnecessary contents were rendered in
962         some (limited) situations.
963
964         [Skia] PlatformContextSkia::beginLayerClippedToImage does not clip outside of the image
965         https://bugs.webkit.org/show_bug.cgi?id=32817
966         
967         No new tests, because this is a fix of an existing test which is currently failing in
968         Chromium.
969
970         * platform/graphics/skia/PlatformContextSkia.cpp:
971         (PlatformContextSkia::beginLayerClippedToImage): Add clipRect() call.
972
973 2009-12-23  Nikolas Zimmermann  <nzimmermann@rim.com>
974
975         Rubber-stamped by Eric Seidel.
976
977         Remove all references to "GenerateConstructor", as this is the default behaviour now.
978
979         * css/CSSCharsetRule.idl:
980         * css/CSSFontFaceRule.idl:
981         * css/CSSImportRule.idl:
982         * css/CSSMediaRule.idl:
983         * css/CSSPageRule.idl:
984         * css/CSSPrimitiveValue.idl:
985         * css/CSSRule.idl:
986         * css/CSSRuleList.idl:
987         * css/CSSStyleDeclaration.idl:
988         * css/CSSStyleRule.idl:
989         * css/CSSStyleSheet.idl:
990         * css/CSSValue.idl:
991         * css/CSSValueList.idl:
992         * css/CSSVariablesDeclaration.idl:
993         * css/CSSVariablesRule.idl:
994         * css/Counter.idl:
995         * css/Media.idl:
996         * css/MediaList.idl:
997         * css/RGBColor.idl:
998         * css/Rect.idl:
999         * css/StyleSheet.idl:
1000         * css/StyleSheetList.idl:
1001         * css/WebKitCSSKeyframeRule.idl:
1002         * css/WebKitCSSKeyframesRule.idl:
1003         * css/WebKitCSSTransformValue.idl:
1004         * dom/Attr.idl:
1005         * dom/BeforeLoadEvent.idl:
1006         * dom/CDATASection.idl:
1007         * dom/CharacterData.idl:
1008         * dom/ClientRect.idl:
1009         * dom/ClientRectList.idl:
1010         * dom/Clipboard.idl:
1011         * dom/Comment.idl:
1012         * dom/CompositionEvent.idl:
1013         * dom/DOMCoreException.idl:
1014         * dom/DOMImplementation.idl:
1015         * dom/Document.idl:
1016         * dom/DocumentFragment.idl:
1017         * dom/DocumentType.idl:
1018         * dom/Element.idl:
1019         * dom/Entity.idl:
1020         * dom/EntityReference.idl:
1021         * dom/ErrorEvent.idl:
1022         * dom/Event.idl:
1023         * dom/EventException.idl:
1024         * dom/KeyboardEvent.idl:
1025         * dom/MessageEvent.idl:
1026         * dom/MessagePort.idl:
1027         * dom/MouseEvent.idl:
1028         * dom/MutationEvent.idl:
1029         * dom/NamedNodeMap.idl:
1030         * dom/Node.idl:
1031         * dom/NodeFilter.idl:
1032         * dom/NodeIterator.idl:
1033         * dom/NodeList.idl:
1034         * dom/Notation.idl:
1035         * dom/OverflowEvent.idl:
1036         * dom/PageTransitionEvent.idl:
1037         * dom/PopStateEvent.idl:
1038         * dom/ProcessingInstruction.idl:
1039         * dom/ProgressEvent.idl:
1040         * dom/Range.idl:
1041         * dom/RangeException.idl:
1042         * dom/Text.idl:
1043         * dom/TextEvent.idl:
1044         * dom/Touch.idl:
1045         * dom/TouchEvent.idl:
1046         * dom/TouchList.idl:
1047         * dom/TreeWalker.idl:
1048         * dom/UIEvent.idl:
1049         * dom/WebKitAnimationEvent.idl:
1050         * dom/WebKitTransitionEvent.idl:
1051         * dom/WheelEvent.idl:
1052         * html/DataGridColumn.idl:
1053         * html/DataGridColumnList.idl:
1054         * html/File.idl:
1055         * html/FileList.idl:
1056         * html/HTMLAllCollection.idl:
1057         * html/HTMLAnchorElement.idl:
1058         * html/HTMLAppletElement.idl:
1059         * html/HTMLAreaElement.idl:
1060         * html/HTMLAudioElement.idl:
1061         * html/HTMLBRElement.idl:
1062         * html/HTMLBaseElement.idl:
1063         * html/HTMLBaseFontElement.idl:
1064         * html/HTMLBlockquoteElement.idl:
1065         * html/HTMLBodyElement.idl:
1066         * html/HTMLButtonElement.idl:
1067         * html/HTMLCanvasElement.idl:
1068         * html/HTMLCollection.idl:
1069         * html/HTMLDListElement.idl:
1070         * html/HTMLDataGridCellElement.idl:
1071         * html/HTMLDataGridColElement.idl:
1072         * html/HTMLDataGridElement.idl:
1073         * html/HTMLDataGridRowElement.idl:
1074         * html/HTMLDataListElement.idl:
1075         * html/HTMLDirectoryElement.idl:
1076         * html/HTMLDivElement.idl:
1077         * html/HTMLDocument.idl:
1078         * html/HTMLElement.idl:
1079         * html/HTMLEmbedElement.idl:
1080         * html/HTMLFieldSetElement.idl:
1081         * html/HTMLFontElement.idl:
1082         * html/HTMLFormElement.idl:
1083         * html/HTMLFrameElement.idl:
1084         * html/HTMLFrameSetElement.idl:
1085         * html/HTMLHRElement.idl:
1086         * html/HTMLHeadElement.idl:
1087         * html/HTMLHeadingElement.idl:
1088         * html/HTMLHtmlElement.idl:
1089         * html/HTMLIFrameElement.idl:
1090         * html/HTMLImageElement.idl:
1091         * html/HTMLInputElement.idl:
1092         * html/HTMLIsIndexElement.idl:
1093         * html/HTMLLIElement.idl:
1094         * html/HTMLLabelElement.idl:
1095         * html/HTMLLegendElement.idl:
1096         * html/HTMLLinkElement.idl:
1097         * html/HTMLMapElement.idl:
1098         * html/HTMLMarqueeElement.idl:
1099         * html/HTMLMediaElement.idl:
1100         * html/HTMLMenuElement.idl:
1101         * html/HTMLMetaElement.idl:
1102         * html/HTMLModElement.idl:
1103         * html/HTMLOListElement.idl:
1104         * html/HTMLObjectElement.idl:
1105         * html/HTMLOptGroupElement.idl:
1106         * html/HTMLOptionElement.idl:
1107         * html/HTMLParagraphElement.idl:
1108         * html/HTMLParamElement.idl:
1109         * html/HTMLPreElement.idl:
1110         * html/HTMLQuoteElement.idl:
1111         * html/HTMLScriptElement.idl:
1112         * html/HTMLSelectElement.idl:
1113         * html/HTMLSourceElement.idl:
1114         * html/HTMLStyleElement.idl:
1115         * html/HTMLTableCaptionElement.idl:
1116         * html/HTMLTableCellElement.idl:
1117         * html/HTMLTableColElement.idl:
1118         * html/HTMLTableElement.idl:
1119         * html/HTMLTableRowElement.idl:
1120         * html/HTMLTableSectionElement.idl:
1121         * html/HTMLTextAreaElement.idl:
1122         * html/HTMLTitleElement.idl:
1123         * html/HTMLUListElement.idl:
1124         * html/HTMLVideoElement.idl:
1125         * html/ImageData.idl:
1126         * html/MediaError.idl:
1127         * html/TextMetrics.idl:
1128         * html/canvas/CanvasNumberArray.idl:
1129         * html/canvas/CanvasRenderingContext.idl:
1130         * html/canvas/CanvasRenderingContext2D.idl:
1131         * html/canvas/WebGLRenderingContext.idl:
1132         * inspector/InjectedScriptHost.idl:
1133         * inspector/InspectorBackend.idl:
1134         * inspector/InspectorFrontendHost.idl:
1135         * page/PositionError.idl:
1136         * plugins/MimeType.idl:
1137         * plugins/MimeTypeArray.idl:
1138         * plugins/Plugin.idl:
1139         * plugins/PluginArray.idl:
1140         * storage/Storage.idl:
1141         * storage/StorageEvent.idl:
1142         * svg/SVGAngle.idl:
1143         * svg/SVGColor.idl:
1144         * svg/SVGComponentTransferFunctionElement.idl:
1145         * svg/SVGException.idl:
1146         * svg/SVGFEBlendElement.idl:
1147         * svg/SVGFEColorMatrixElement.idl:
1148         * svg/SVGFECompositeElement.idl:
1149         * svg/SVGFEDisplacementMapElement.idl:
1150         * svg/SVGFEFloodElement.idl:
1151         * svg/SVGFEMorphologyElement.idl:
1152         * svg/SVGFETurbulenceElement.idl:
1153         * svg/SVGGradientElement.idl:
1154         * svg/SVGLength.idl:
1155         * svg/SVGMarkerElement.idl:
1156         * svg/SVGPaint.idl:
1157         * svg/SVGPathSeg.idl:
1158         * svg/SVGPreserveAspectRatio.idl:
1159         * svg/SVGRenderingIntent.idl:
1160         * svg/SVGTextContentElement.idl:
1161         * svg/SVGTextPathElement.idl:
1162         * svg/SVGTransform.idl:
1163         * svg/SVGUnitTypes.idl:
1164         * svg/SVGZoomAndPan.idl:
1165         * workers/AbstractWorker.idl:
1166         * workers/WorkerLocation.idl:
1167         * xml/DOMParser.idl:
1168         * xml/XMLHttpRequestException.idl:
1169         * xml/XMLHttpRequestProgressEvent.idl:
1170         * xml/XMLHttpRequestUpload.idl:
1171         * xml/XMLSerializer.idl:
1172         * xml/XPathEvaluator.idl:
1173         * xml/XPathException.idl:
1174         * xml/XPathExpression.idl:
1175         * xml/XPathResult.idl:
1176
1177 2009-12-23  Dumitru Daniliuc  <dumi@chromium.org>
1178
1179         Reviewed by Eric Seidel.
1180
1181         A new database should be registered with the Document,
1182         DatabaseTracker and DatabaseThread only after it was successfully
1183         opened and its version was successfully verified.
1184
1185         Fixes a regression introduced by
1186         http://trac.webkit.org/changeset/52530.
1187
1188         LayoutTests/storage/open-database-while-transaction-in-progress.html
1189         should pass again (or rather, it should pass again when run after
1190         open-database-set-empty-version.html).
1191
1192         https://bugs.webkit.org/show_bug.cgi?id=32913
1193
1194         * storage/Database.cpp:
1195         (WebCore::Database::openDatabase):
1196         (WebCore::Database::Database):
1197         (WebCore::Database::performOpenAndVerify):
1198
1199 2009-12-23  David Levin  <levin@chromium.org>
1200
1201         REGRESSION (r52494): Assertion failure in Frame::caretBlinkTimerFired() (selection()->isCaret())
1202         https://bugs.webkit.org/show_bug.cgi?id=32903
1203
1204         No review but ok'ed by Darin Adler. Rolling out r52494 due to above regression.
1205
1206         * editing/SelectionController.cpp:
1207         (WebCore::SelectionController::SelectionController):
1208         (WebCore::SelectionController::setSelection):
1209         * editing/SelectionController.h:
1210         * page/Frame.cpp:
1211         (WebCore::Frame::setCaretVisible):
1212         (WebCore::Frame::selectionLayoutChanged):
1213         * page/FrameView.cpp:
1214         (WebCore::FrameView::needsLayout):
1215
1216 2009-12-23  Nikolas Zimmermann  <nzimmermann@rim.com>
1217
1218         Reviewed by Eric Seidel.
1219
1220         Reverse JS GenerateConstructor logic
1221         https://bugs.webkit.org/show_bug.cgi?id=32910
1222
1223         Make 'GenerateConstructor' the default setting for all classes, defined in IDL files. The flag is now obsolete and
1224         can be removed from all IDL files in a follow-up patch. Add new 'OmitConstructor' flag, that allows to restore the
1225         old default behaviour: do not generate JSFoobarConstructor class.
1226
1227         No change in functionality, despite the fact that we're generating a lot more constructors now, as they have to
1228         be exposed through DOMWindow.idl -- this can be done per affected class in follow-up patches. Especially the SVG
1229         classes have to be exposed, most of them are missing JS constructors so far.
1230
1231         As side effect HTMLOptionsCollection is now correctly exposing its constructor, thus fixing a test in fast/dom/wrapper-classes.html
1232
1233         * bindings/scripts/CodeGeneratorJS.pm:
1234         * css/CSSUnknownRule.idl:
1235         * css/WebKitCSSMatrix.idl:
1236         * dom/EventListener.idl:
1237         * dom/EventTarget.idl:
1238         * dom/MessageChannel.idl:
1239         * html/TimeRanges.idl:
1240         * html/ValidityState.idl:
1241         * html/VoidCallback.idl:
1242         * html/canvas/CanvasGradient.idl:
1243         * html/canvas/CanvasPattern.idl:
1244         * html/canvas/CanvasPixelArray.idl:
1245         * html/canvas/WebGLActiveInfo.idl:
1246         * html/canvas/WebGLArray.idl:
1247         * html/canvas/WebGLArrayBuffer.idl:
1248         * html/canvas/WebGLBuffer.idl:
1249         * html/canvas/WebGLByteArray.idl:
1250         * html/canvas/WebGLFloatArray.idl:
1251         * html/canvas/WebGLFramebuffer.idl:
1252         * html/canvas/WebGLIntArray.idl:
1253         * html/canvas/WebGLProgram.idl:
1254         * html/canvas/WebGLRenderbuffer.idl:
1255         * html/canvas/WebGLShader.idl:
1256         * html/canvas/WebGLShortArray.idl:
1257         * html/canvas/WebGLTexture.idl:
1258         * html/canvas/WebGLUniformLocation.idl:
1259         * html/canvas/WebGLUnsignedByteArray.idl:
1260         * html/canvas/WebGLUnsignedIntArray.idl:
1261         * html/canvas/WebGLUnsignedShortArray.idl:
1262         * inspector/JavaScriptCallFrame.idl:
1263         * loader/appcache/DOMApplicationCache.idl:
1264         * notifications/Notification.idl:
1265         * notifications/NotificationCenter.idl:
1266         * page/AbstractView.idl:
1267         * page/BarInfo.idl:
1268         * page/Console.idl:
1269         * page/Coordinates.idl:
1270         * page/DOMSelection.idl:
1271         * page/DOMWindow.idl:
1272         * page/EventSource.idl:
1273         * page/Geolocation.idl:
1274         * page/Geoposition.idl:
1275         * page/History.idl:
1276         * page/Location.idl:
1277         * page/Navigator.idl:
1278         * page/Screen.idl:
1279         * page/WebKitPoint.idl:
1280         * page/WorkerNavigator.idl:
1281         * storage/Database.idl:
1282         * storage/SQLError.idl:
1283         * storage/SQLResultSet.idl:
1284         * storage/SQLResultSetRowList.idl:
1285         * storage/SQLTransaction.idl:
1286         * websockets/WebSocket.idl:
1287         * workers/DedicatedWorkerContext.idl:
1288         * workers/SharedWorker.idl:
1289         * workers/SharedWorkerContext.idl:
1290         * workers/Worker.idl:
1291         * workers/WorkerContext.idl:
1292         * xml/XMLHttpRequest.idl:
1293         * xml/XPathNSResolver.idl:
1294         * xml/XSLTProcessor.idl:
1295
1296 2009-12-23  Adam Barth  <abarth@webkit.org>
1297
1298         Reviewed by Eric Seidel.
1299
1300         "Refused to execute a JavaScript script" error when embedding SWF with
1301         a URL that is also a query parameter
1302         https://bugs.webkit.org/show_bug.cgi?id=32908
1303
1304         Don't block direct injections into the object src attribute unless
1305         there's an illegal character (like < or ") in the URL.  This change
1306         lets some very unusual vulnerabilities through the filter but removes a
1307         false positive that we've seen several times.
1308
1309         * page/XSSAuditor.cpp:
1310         (WebCore::XSSAuditor::canLoadObject):
1311
1312 2009-12-23  Dumitru Daniliuc  <dumi@chromium.org>
1313
1314         Reviewed by Dmitry Titov.
1315
1316         Remove pointers to a database that failed to open from the
1317         DatabaseTracker and Document.
1318
1319         https://bugs.webkit.org/show_bug.cgi?id=32885
1320
1321         * storage/Database.cpp:
1322         (WebCore::Database::openDatabase):
1323
1324 2009-12-23  Dan Bernstein  <mitz@apple.com>
1325
1326         Reviewed by Darin Adler.
1327
1328         <rdar://problem/7487164> First line of text cannot be selected
1329         https://bugs.webkit.org/show_bug.cgi?id=32749
1330
1331         Test: fast/text/remove-zero-length-run.html
1332
1333         * rendering/RenderText.cpp:
1334         (WebCore::RenderText::positionLineBox): Changed code that assumed that if a box was being
1335             removed, it was the only box in the RenderText. Instead, correctly preserve the list of
1336             text boxes.
1337         (WebCore::RenderText::checkConsistency): Updated for earlier rename.
1338
1339 2009-12-18  Tor Arne Vestbø  <tor.arne.vestbo@nokia.com>
1340
1341         Reviewed by Darin Adler.
1342
1343         Fix for newlines turning into missing-gyphs when using SVG fonts
1344
1345         https://bugs.webkit.org/show_bug.cgi?id=32710
1346
1347         Font::drawText() has three code paths:
1348
1349           - drawTextUsingSVGFont()
1350           - drawSimpleText()
1351           - drawComplexText()
1352
1353         The latter two both have logic to replace newlines and tabs, as well
1354         as a few other control characters that are considered spaces, with
1355         spaces, before actually drawing the text. Previously the SVG font
1356         path did not have this kind of logic.
1357
1358         This change introduces two helper functions in Font to do this space
1359         replacement, which are then used for the simple path, the SVG path,
1360         and the Qt implementation of the complex path.
1361
1362         Test: svg/custom/svg-fonts-in-html-linebreaks.html
1363
1364         * platform/graphics/Font.cpp:
1365         (WebCore::Font::normalizeSpaces): Helper function
1366         * platform/graphics/Font.h:
1367         * platform/graphics/FontFastPath.cpp:
1368         (WebCore::Font::glyphDataForCharacter): Use helper
1369         * platform/graphics/qt/FontQt.cpp:
1370         (WebCore::fromRawDataWithoutRef): Rename from "qstring"
1371         (WebCore::Font::drawComplexText): Use helper
1372         (WebCore::Font::floatWidthForComplexText): Use helper
1373         (WebCore::Font::offsetForPositionForComplexText): Use helper
1374         (WebCore::Font::selectionRectForComplexText): Use helper
1375         * platform/text/CharacterNames.h: Add enum for 0x0020
1376         * svg/SVGFont.cpp: Use helper to fix bug
1377         (WebCore::SVGTextRunWalker::walk):
1378
1379 2009-12-23  Kent Tamura  <tkent@chromium.org>
1380
1381         Reviewed by Darin Adler.
1382
1383         HTMLInputElement::valueAsDate getter support.
1384         https://bugs.webkit.org/show_bug.cgi?id=32876
1385
1386         To implement the valueAsDate getter,
1387         - Add a method to calculate milliseconds from 1970-01-01 to ISODateTime.
1388         - Introduce m_type field to ISODateTime.
1389
1390         Tests: fast/forms/input-valueasdate-date.html
1391                fast/forms/input-valueasdate-datetime.html
1392                fast/forms/input-valueasdate-datetimelocal.html
1393                fast/forms/input-valueasdate-month.html
1394                fast/forms/input-valueasdate-time.html
1395                fast/forms/input-valueasdate-week.html
1396
1397         * html/HTMLInputElement.cpp:
1398         (WebCore::HTMLInputElement::valueAsDate):
1399           Implement it with ISODateTime::millisecondsSinceEpoch().
1400         (WebCore::HTMLInputElement::formStringToISODateTime):
1401           Early exit for a null String. This avoids assertion failures in ISODateTime::parse*().
1402         * html/ISODateTime.cpp:
1403         (WebCore::ISODateTime::parseMonth): Sets m_type.
1404         (WebCore::ISODateTime::parseDate): ditto.
1405         (WebCore::ISODateTime::parseWeek): ditto.
1406         (WebCore::ISODateTime::parseTime): ditto.
1407         (WebCore::ISODateTime::parseDateTimeLocal): ditto.
1408         (WebCore::ISODateTime::parseDateTime): ditto.
1409         (WebCore::ISODateTime::millisecondsSinceEpochForTime): Added.
1410         (WebCore::ISODateTime::millisecondsSinceEpoch): Added.
1411         * html/ISODateTime.h:
1412         (WebCore::ISODateTime::ISODateTime):
1413         (WebCore::ISODateTime::invalidMilliseconds):
1414
1415 2009-12-22  Daniel Bates  <dbates@webkit.org>
1416
1417         Reviewed by Eric Seidel.
1418
1419         https://bugs.webkit.org/show_bug.cgi?id=32799
1420
1421         Renames enums in RenderStyleConstants::EListStyleType to conform to
1422         the WebKit Code Style Guidelines.
1423
1424         No functionality was changed. So, no new tests.
1425
1426         * css/CSSPrimitiveValueMappings.h:
1427         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
1428         (WebCore::CSSPrimitiveValue::operator EListStyleType):
1429         * rendering/RenderListItem.cpp:
1430         (WebCore::RenderListItem::styleDidChange):
1431         * rendering/RenderListMarker.cpp:
1432         (WebCore::listMarkerText):
1433         (WebCore::RenderListMarker::paint):
1434         (WebCore::RenderListMarker::calcPrefWidths):
1435         (WebCore::RenderListMarker::updateMargins):
1436         (WebCore::RenderListMarker::getRelativeMarkerRect):
1437         * rendering/style/RenderStyle.h:
1438         (WebCore::InheritedFlags::initialListStyleType):
1439         * rendering/style/RenderStyleConstants.h:
1440         (WebCore::):
1441
1442 2009-12-22  James Su  <suzhe@chromium.org>
1443
1444         Reviewed by Darin Fisher.
1445
1446         [Chromium] Keyboard shortcut in dropdown not working.
1447         https://bugs.webkit.org/show_bug.cgi?id=32008
1448
1449         Consider PlatformKeyboardEvent::Char type event as character type
1450         event on all platforms. It fixes the "type ahead find" feature
1451         of the popup listbox on Linux and Mac platforms.
1452
1453         Merge the case-sensitive type ahead find fix from
1454         WebCore/dom/SelectElement.cpp. See
1455         https://bugs.webkit.org/show_bug.cgi?id=29103
1456
1457         * platform/chromium/PopupMenuChromium.cpp:
1458         (WebCore::isCharacterTypeEvent):
1459
1460 2009-12-22  Carol Szabo  <carol.szabo@nokia.com>
1461
1462         Reviewed by Eric Seidel.
1463
1464         [Qt] The "Search" input type is not rendered correctly when styled.
1465         https://bugs.webkit.org/show_bug.cgi?id=32417
1466
1467         There are no new tests because only pixel tests may be affected by
1468         this change and those changes can only be done on the build bot.
1469
1470         * platform/qt/RenderThemeQt.cpp:
1471         (WebCore::RenderThemeQt::paintSearchField):
1472         Since currently we paint the Search control as a QLineEdit, I have
1473         deferred painting to WebCore, as in the case of the text input so 
1474         that the painting is consistent.
1475
1476 2009-12-22  Yongjun Zhang  <yongjun.zhang@nokia.com>
1477
1478         Reviewed by Kenneth Rohde Christiansen.
1479
1480         https://bugs.webkit.org/show_bug.cgi?id=32121
1481         [Qt] implement ImageDecoderQt::clearFrameBufferCache().
1482        
1483         * platform/graphics/qt/ImageDecoderQt.cpp:
1484         (WebCore::ImageDecoderQt::initializeDecoder):
1485         (WebCore::ImageDecoderQt::setData):
1486         (WebCore::ImageDecoderQt::clearFrameBufferCache):
1487         * platform/graphics/qt/ImageDecoderQt.h:
1488
1489 2009-12-22  Nayan Kumar K  <nayankk@gmail.com>
1490
1491         Reviewed by Eric Seidel.
1492
1493         Fix assert failure with WML pages having 'Refresh' task in
1494         'onenterforward' event.
1495
1496         https://bugs.webkit.org/show_bug.cgi?id=30989
1497
1498         Writing Layout test is not possible. Please refer to the discussion
1499         in bug id #30989. A sample test case is attached in BugZilla.
1500
1501         * wml/WMLCardElement.cpp:
1502         (WebCore::WMLCardElement::handleIntrinsicEventIfNeeded):
1503
1504 2009-12-22  Darin Adler  <darin@apple.com>
1505
1506         Reviewed by Sam Weinig.
1507
1508         ASSERTION FAILED: m_numNodeListCaches
1509         https://bugs.webkit.org/show_bug.cgi?id=19526
1510         <rdar://problem/7431572>
1511
1512         Test: fast/dom/NodeList/adoptNode-node-list-cache.html
1513
1514         * dom/Node.cpp:
1515         (WebCore::Node::setDocument): Call removeNodeListCache on the old
1516         document and addNodeListCache on the new one if moving a node that
1517         has node lists.
1518
1519 2009-12-22  Darin Adler  <darin@apple.com>
1520
1521         First cut at fixing Windows build.
1522
1523         * WebCorePrefix.cpp: Touch it.
1524
1525 2009-12-22  Darin Adler  <darin@apple.com>
1526
1527         Reviewed by Mark Rowe.
1528
1529         Turn off datagrid by default, at least for all platforms Apple ships.
1530         The datagrid implementation isn't ready for general web use yet.
1531
1532         * Configurations/FeatureDefines.xcconfig: Turn off datagrid by default.
1533         * WebCore.vcproj/WebCoreCommon.vsprops: Ditto.
1534         * WebCore.vcproj/build-generated-files.sh: Ditto.
1535         * page/DOMWindow.idl: Sorted things here to touch the file to give
1536         the Windows build a slightly better chance of success.
1537
1538 2009-12-22  Darin Adler  <darin@apple.com>
1539
1540         Rubber stamped by Dan Bernstein.
1541
1542         * page/FrameView.h: Removed incorrect comment.
1543
1544 2009-12-22  Pavel Feldman  <pfeldman@chromium.org>
1545
1546         Reviewed by Timothy Hatcher.
1547
1548         Web Inspector: simplify highlighter definition.
1549
1550         https://bugs.webkit.org/show_bug.cgi?id=32869
1551
1552         * inspector/front-end/CSSSourceSyntaxHighlighter.js:
1553         (WebInspector.CSSSourceSyntaxHighlighter):
1554         * inspector/front-end/JavaScriptSourceSyntaxHighlighter.js:
1555         (WebInspector.JavaScriptSourceSyntaxHighlighter.):
1556         (WebInspector.JavaScriptSourceSyntaxHighlighter):
1557         * inspector/front-end/SourceSyntaxHighlighter.js:
1558         (WebInspector.SourceSyntaxHighlighter.prototype.lex):
1559         * inspector/front-end/utilities.js:
1560         ():
1561
1562 2009-12-21  Darin Adler  <darin@apple.com>
1563
1564         Reviewed by Sam Weinig.
1565
1566         Reentrancy problem with selection in some edge cases.
1567         https://bugs.webkit.org/show_bug.cgi?id=32842
1568         rdar://problem/7449974
1569
1570         Test: fast/forms/selection-layout-reentry-strange-case.html
1571
1572         Move the selection display update process done in the
1573         selectionLayoutChanged function into the layout timer
1574         instead of doing it immediately when selection changes occur.
1575
1576         * editing/SelectionController.cpp:
1577         (WebCore::SelectionController::SelectionController):
1578         Initialize m_needsDisplayUpdate to false.
1579         (WebCore::SelectionController::setSelection): Call
1580         the new setNeedsDisplayUpdate function instead of the old
1581         badly named Frame::selectionLayoutChanged function.
1582         (WebCore::SelectionController::setNeedsDisplayUpdate):
1583         Set m_needsDisplayUpdate. If it is just becoming true, then
1584         call FrameView::scheduleRelayout.
1585
1586         * editing/SelectionController.h: Added setNeedsDisplayUpdate,
1587         needsDisplayUpdate, and m_needsDisplayUpdate.
1588
1589         * page/Frame.cpp:
1590         (WebCore::Frame::setCaretVisible): Call setNeedsDisplayUpdate.
1591         (WebCore::Frame::selectionLayoutChanged): Call
1592         setNeedsDisplayUpdate to set it to false, since this is the
1593         function that performs "selection display update". Later I want
1594         to rename this function.
1595
1596         * page/FrameView.cpp:
1597         (WebCore::FrameView::needsLayout): Add a new clause, since
1598         we need a call to layout if needsDisplayUpdate is true.
1599
1600 2009-12-22  Kwang Yul Seo  <skyul@company100.net>
1601
1602         Reviewed by Darin Adler.
1603
1604         Allocate RemoteFontStream on the heap
1605         https://bugs.webkit.org/show_bug.cgi?id=32850
1606
1607         RemoteFontStream is allocated on the stack, so its memory is freed
1608         immediately when FontCustomPlatformData::createFontCustomPlatformData
1609         returns. 
1610
1611         SkTypeface::CreateFromStream increments the reference count, but it keeps
1612         the pointer to the memory allocated on the stack which is not valid
1613         anymore.
1614
1615         RemoteFontStream is a descendant of SkRefCount and SkRefCount::unref
1616         invokes SkDELETE(this) internally once the reference count reaches zero.
1617         This means that SkRefCount-ed instances must be allocated on the heap.
1618
1619         * platform/graphics/chromium/FontCustomPlatformData.cpp:
1620         (WebCore::createFontCustomPlatformData):
1621
1622 2009-12-22  Kwang Yul Seo  <skyul@company100.net>
1623
1624         Reviewed by Darin Adler.
1625
1626         when condition COMPILER(RVCT) is fulfilled, we are trying to free a pointer to array allocated on the stack
1627         https://bugs.webkit.org/show_bug.cgi?id=32861
1628
1629         Don't free the pointer for COMPILER(RVCT).
1630
1631         * dom/XMLTokenizerLibxml2.cpp:
1632         (WebCore::XMLTokenizer::error):
1633
1634 2009-12-22  Sam Weinig  <sam@webkit.org>
1635
1636         Rubber-stamped by Dan Bernstein.
1637
1638         Remove no longer necessary experimental single view #ifdefs from Widget and
1639         ScrollView.
1640
1641         * page/Chrome.h:
1642         * page/mac/ChromeMac.mm:
1643         * platform/ScrollView.cpp:
1644         (WebCore::ScrollView::wheelEvent):
1645         * platform/Widget.cpp:
1646         * platform/Widget.h:
1647         * platform/mac/ScrollViewMac.mm:
1648         * platform/mac/WidgetMac.mm:
1649
1650 2009-12-21  Pavel Feldman  <pfeldman@chromium.org>
1651
1652         Reviewed by Timothy Hatcher.
1653
1654         Web Inspector: Do not lose original request for non-main resource redirects.
1655
1656         https://bugs.webkit.org/show_bug.cgi?id=32678
1657
1658         * inspector/InspectorResource.cpp:
1659         (WebCore::InspectorResource::appendRedirect):
1660         * inspector/front-end/Resource.js:
1661         (WebInspector.Resource):
1662         * inspector/front-end/inspector.js:
1663         (WebInspector.updateResource):
1664
1665 2009-12-21  Kwang Yul Seo  <skyul@company100.net>
1666
1667         Reviewed by Eric Seidel.
1668
1669         Use ASSERT instead of assert in image-decoders
1670         https://bugs.webkit.org/show_bug.cgi?id=32852
1671
1672         Other decoders use WTF's ASSERT macro.
1673         Follow this convention.
1674
1675         * platform/image-decoders/jpeg/JPEGImageDecoder.cpp:
1676         (WebCore::JPEGImageReader::decode):
1677         * platform/image-decoders/png/PNGImageDecoder.cpp:
1678         (WebCore::PNGImageDecoder::headerAvailable):
1679
1680 2009-12-21  Kwang Yul Seo  <skyul@company100.net>
1681
1682         Reviewed by Eric Seidel.
1683
1684         Use vsnprintf instead of vasprintf for RVCT.
1685         https://bugs.webkit.org/show_bug.cgi?id=32851
1686
1687         RVCT does not support vasprint, so use vsnprintf instead.
1688
1689         * dom/XMLTokenizerLibxml2.cpp:
1690         (WebCore::XMLTokenizer::error):
1691
1692 2009-12-21  Fumitoshi Ukai  <ukai@chromium.org>
1693
1694         Reviewed by Alexey Proskuryakov.
1695
1696         Invalid url should raise SYNTAX_ERR exception.
1697         https://bugs.webkit.org/show_bug.cgi?id=32700
1698
1699         Check url is valid in WebSocket::connect.
1700         Also log the detailed reason of websocket failures to console.
1701
1702         * websockets/WebSocket.cpp:
1703         (WebCore::encodeProtocolString):
1704         (WebCore::WebSocket::connect):
1705
1706 2009-12-21  Anders Carlsson  <andersca@apple.com>
1707
1708         Reviewed by Sam Weinig.
1709
1710         Make sure that we check for the right thread.
1711
1712         * platform/mac/WebCoreObjCExtras.mm:
1713         (WebCoreObjCScheduleDeallocateOnMainThread):
1714
1715 2009-12-21  Enrica Casucci  <enrica@apple.com>
1716
1717         Reviewed by Maciej Stachowiak.
1718
1719         REGRESSION(4.0.4-ToT): Indent deletes non highlighted text in gmail.
1720         <rdar://problem/7489326>
1721         https://bugs.webkit.org/show_bug.cgi?id=32843
1722         
1723         The fix for 7442387 did not handle the case where the end of paragraph
1724         is not a descendant of the computed outer block.
1725         Updated editing/execCommand/indent-with-style2.html to cover this case too.
1726
1727         * editing/CompositeEditCommand.cpp:
1728         (WebCore::CompositeEditCommand::cloneParagraphUnderNewElement): 
1729
1730 2009-12-21  Gavin Barraclough  <barraclough@apple.com>
1731
1732         Reviewed by Darin Adler.
1733
1734         https://bugs.webkit.org/show_bug.cgi?id=32831
1735         Replace UString::Rep implementation, following introduction of ropes to JSC.
1736
1737         * ForwardingHeaders/runtime/UStringImpl.h: Added.
1738             - add forwarding header.
1739
1740         * platform/text/StringImpl.cpp:
1741         (WebCore::StringImpl::ustring):
1742             - order of arguments to UString::Rep constructor for shared strings changed.
1743
1744 2009-12-18  Nate Chapin  <japhet@chromium.org>
1745
1746         Reviewed by Adam barth.
1747
1748         Generate V8 bindings non-constructor callback declarations 
1749         in CodeGeneratorV8.pm instead of manually declaring them in
1750         V8CustomBinding.h.
1751
1752         https://bugs.webkit.org/show_bug.cgi?id=32638
1753
1754         * bindings/scripts/CodeGeneratorV8.pm:
1755         * bindings/v8/V8DOMWrapper.cpp:
1756         * bindings/v8/custom/V8AbstractWorkerCustom.cpp:
1757         * bindings/v8/custom/V8CanvasRenderingContext2DCustom.cpp:
1758         * bindings/v8/custom/V8ClipboardCustom.cpp:
1759         * bindings/v8/custom/V8ConsoleCustom.cpp:
1760         * bindings/v8/custom/V8CustomBinding.h:
1761         * bindings/v8/custom/V8DOMApplicationCacheCustom.cpp:
1762         * bindings/v8/custom/V8DOMParserConstructor.cpp:
1763         * bindings/v8/custom/V8DOMWindowCustom.cpp:
1764         * bindings/v8/custom/V8DatabaseCustom.cpp:
1765         * bindings/v8/custom/V8DedicatedWorkerContextCustom.cpp:
1766         * bindings/v8/custom/V8DocumentCustom.cpp:
1767         * bindings/v8/custom/V8GeolocationCustom.cpp:
1768         * bindings/v8/custom/V8HTMLAllCollectionCustom.cpp:
1769         * bindings/v8/custom/V8HTMLAudioElementConstructor.cpp:
1770         * bindings/v8/custom/V8HTMLCanvasElementCustom.cpp:
1771         * bindings/v8/custom/V8HTMLCollectionCustom.cpp:
1772         * bindings/v8/custom/V8HTMLDocumentCustom.cpp:
1773         * bindings/v8/custom/V8HTMLFormElementCustom.cpp:
1774         * bindings/v8/custom/V8HTMLImageElementConstructor.cpp:
1775         * bindings/v8/custom/V8HTMLInputElementCustom.cpp:
1776         * bindings/v8/custom/V8HTMLOptionElementConstructor.cpp:
1777         * bindings/v8/custom/V8HTMLOptionsCollectionCustom.cpp:
1778         * bindings/v8/custom/V8HTMLPlugInElementCustom.cpp:
1779         * bindings/v8/custom/V8HTMLPlugInElementCustom.h: Added.
1780         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp:
1781         * bindings/v8/custom/V8HistoryCustom.cpp:
1782         * bindings/v8/custom/V8InjectedScriptHostCustom.cpp:
1783         * bindings/v8/custom/V8InspectorFrontendHostCustom.cpp:
1784         * bindings/v8/custom/V8LocationCustom.cpp:
1785         * bindings/v8/custom/V8MessageChannelConstructor.cpp:
1786         * bindings/v8/custom/V8MessageEventCustom.cpp:
1787         * bindings/v8/custom/V8MessagePortCustom.cpp:
1788         * bindings/v8/custom/V8NodeCustom.cpp:
1789         * bindings/v8/custom/V8NodeFilterCustom.cpp:
1790         * bindings/v8/custom/V8NodeIteratorCustom.cpp:
1791         * bindings/v8/custom/V8NotificationCenterCustom.cpp:
1792         * bindings/v8/custom/V8SQLResultSetRowListCustom.cpp:
1793         * bindings/v8/custom/V8SQLTransactionCustom.cpp:
1794         * bindings/v8/custom/V8SVGElementInstanceCustom.cpp:
1795         * bindings/v8/custom/V8SVGLengthCustom.cpp:
1796         * bindings/v8/custom/V8SVGMatrixCustom.cpp:
1797         * bindings/v8/custom/V8SharedWorkerCustom.cpp:
1798         * bindings/v8/custom/V8TreeWalkerCustom.cpp:
1799         * bindings/v8/custom/V8WebGLArrayBufferCustom.cpp:
1800         * bindings/v8/custom/V8WebGLByteArrayCustom.cpp:
1801         * bindings/v8/custom/V8WebGLFloatArrayCustom.cpp:
1802         * bindings/v8/custom/V8WebGLIntArrayCustom.cpp:
1803         * bindings/v8/custom/V8WebGLRenderingContextCustom.cpp:
1804         * bindings/v8/custom/V8WebGLShortArrayCustom.cpp:
1805         * bindings/v8/custom/V8WebGLUnsignedByteArrayCustom.cpp:
1806         * bindings/v8/custom/V8WebGLUnsignedIntArrayCustom.cpp:
1807         * bindings/v8/custom/V8WebGLUnsignedShortArrayCustom.cpp:
1808         * bindings/v8/custom/V8WebKitCSSMatrixConstructor.cpp:
1809         * bindings/v8/custom/V8WebKitPointConstructor.cpp:
1810         * bindings/v8/custom/V8WebSocketCustom.cpp:
1811         * bindings/v8/custom/V8WorkerContextCustom.cpp:
1812         * bindings/v8/custom/V8WorkerCustom.cpp:
1813         * bindings/v8/custom/V8XMLHttpRequestConstructor.cpp:
1814         * bindings/v8/custom/V8XMLHttpRequestCustom.cpp:
1815         * bindings/v8/custom/V8XMLHttpRequestUploadCustom.cpp:
1816         * bindings/v8/custom/V8XMLSerializerConstructor.cpp:
1817         * bindings/v8/custom/V8XPathEvaluatorConstructor.cpp:
1818         * bindings/v8/custom/V8XSLTProcessorCustom.cpp:
1819
1820 2009-12-21  Nate Chapin  <japhet@chromium.org>
1821
1822         Rubber-stamped by Darin Adler.
1823
1824         Revert r52446 due to crashiness.
1825
1826         https://bugs.webkit.org/show_bug.cgi?id=32839
1827
1828         * loader/DocumentThreadableLoader.cpp:
1829         (WebCore::DocumentThreadableLoader::loadRequest):
1830         * loader/FrameLoader.cpp:
1831         (WebCore::FrameLoader::FrameLoader):
1832         (WebCore::FrameLoader::stopLoading):
1833         (WebCore::FrameLoader::loadURL):
1834         (WebCore::FrameLoader::loadWithDocumentLoader):
1835         (WebCore::FrameLoader::stopAllLoaders):
1836         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy):
1837         (WebCore::FrameLoader::pageHidden):
1838         * loader/FrameLoader.h:
1839         (WebCore::FrameLoader::suppressOpenerInNewFrame):
1840         * loader/Request.cpp:
1841         (WebCore::Request::Request):
1842         (WebCore::Request::~Request):
1843         * loader/Request.h:
1844         * loader/SubresourceLoader.cpp:
1845         (WebCore::SubresourceLoader::create):
1846         * loader/SubresourceLoader.h:
1847         * loader/loader.cpp:
1848         (WebCore::Loader::load):
1849         (WebCore::Loader::cancelRequests):
1850         (WebCore::Loader::Host::servePendingRequests):
1851         (WebCore::Loader::Host::cancelPendingRequests):
1852         (WebCore::Loader::Host::cancelRequests):
1853
1854 2009-12-19  Kent Tamura  <tkent@chromium.org>
1855
1856         Reviewed by Adam Barth.
1857
1858         Add support for V8 Date binding.
1859         https://bugs.webkit.org/show_bug.cgi?id=32699
1860
1861         This implements the same behavior as the recent change of
1862         CodeGeneratorJS.pm and JSDOMBinding.cpp.
1863
1864         * bindings/scripts/CodeGeneratorV8.pm:
1865           Produce toWebCoreDate() or v8DateOrNull() for Date type.
1866         * bindings/v8/V8Binding.cpp:
1867         (WebCore::toWebCoreDate):
1868           Converts a JavaScript object to a double representing Date.
1869         (WebCore::v8DateOrNull):
1870           Converts a double representing Date to a JavaScript Date object or null.
1871         * bindings/v8/V8Binding.h: Declare toWebCoreDate() and v8DateOrNull().
1872         * html/HTMLInputElement.idl: Delete V8_BINGIN exclusion for valueAsDate.
1873
1874 2009-12-21  Darin Adler  <darin@apple.com>
1875
1876         Reviewed by Mark Rowe.
1877
1878         Renamed m_sel to m_selection. Used do-webcore-rename.
1879
1880         * editing/SelectionController.cpp:
1881         (WebCore::SelectionController::setSelection):
1882         (WebCore::SelectionController::nodeWillBeRemoved):
1883         (WebCore::SelectionController::willBeModified):
1884         (WebCore::SelectionController::directionOfEnclosingBlock):
1885         (WebCore::SelectionController::modifyExtendingRight):
1886         (WebCore::SelectionController::modifyExtendingForward):
1887         (WebCore::SelectionController::modifyMovingRight):
1888         (WebCore::SelectionController::modifyMovingForward):
1889         (WebCore::SelectionController::modifyExtendingLeft):
1890         (WebCore::SelectionController::modifyExtendingBackward):
1891         (WebCore::SelectionController::modifyMovingLeft):
1892         (WebCore::SelectionController::modifyMovingBackward):
1893         (WebCore::SelectionController::modify):
1894         (WebCore::SelectionController::expandUsingGranularity):
1895         (WebCore::SelectionController::xPosForVerticalArrowNavigation):
1896         (WebCore::SelectionController::setBase):
1897         (WebCore::SelectionController::setExtent):
1898         (WebCore::SelectionController::layout):
1899         (WebCore::SelectionController::caretRenderer):
1900         (WebCore::SelectionController::invalidateCaretRect):
1901         (WebCore::SelectionController::paintCaret):
1902         (WebCore::SelectionController::debugRenderer):
1903         (WebCore::SelectionController::contains):
1904         (WebCore::SelectionController::selectAll):
1905         (WebCore::SelectionController::formatForDebugger):
1906         (WebCore::SelectionController::showTreeForThis):
1907         * editing/SelectionController.h:
1908         * editing/gtk/SelectionControllerGtk.cpp:
1909         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
1910         * editing/mac/SelectionControllerMac.mm:
1911         (WebCore::SelectionController::notifyAccessibilityForSelectionChange):
1912         Let the script do its thing. Made sure no tests broke.
1913
1914 2009-12-21  Carol Szabo  <carol.szabo@nokia.com>
1915
1916         Reviewed by Darin Adler.
1917
1918         Inconsistent use of counterName and identifier in CSS counter code and loss of information about the counter type.
1919         https://bugs.webkit.org/show_bug.cgi?id=31814
1920
1921         No new tests because there are no functional changes in this patch.
1922
1923         * rendering/CounterNode.cpp:
1924         (WebCore::CounterNode::CounterNode):
1925         (WebCore::CounterNode::computeCountInParent):
1926         (WebCore::showTreeAndMark):
1927         * rendering/RenderCounter.cpp:
1928         (WebCore::planCounter):
1929         (WebCore::findPlaceForCounter):
1930         (WebCore::makeCounterNode):
1931         (WebCore::RenderCounter::originalText):
1932         Changed to use identifier instead of counterName and actsAsReset or hasResetType, as appropriate instead of isReset.
1933         * rendering/CounterNode.h:
1934         (WebCore::CounterNode::actsAsReset):
1935         (WebCore::CounterNode::hasResetType):
1936
1937 2009-12-21  Dirk Schulze  <krit@webkit.org>
1938
1939         Reviewed by Darin Adler and Nikolas Zimmermann.
1940
1941         Speed-up SVG Masking
1942         https://bugs.webkit.org/show_bug.cgi?id=32738
1943
1944         This patch makes SVG Masking faster. The luminance calculaton of the ImageBuffer,
1945         that is created by pixel manipulation, got optimized. The ImageBuffer and it's
1946         luminance is created once now, not on every call of applyMask.
1947         The size of the intermediate ImageBuffer depends on the visible area now and is
1948         clipped by the mask rect.
1949         
1950         The patch doesn't change functionality so no new tests needed.
1951         The new ImageBuffer handling in Mask causes two updates of test results. The pixel
1952         tests and LayoutTests pass, but the checksum doesn't match.
1953
1954         * svg/SVGMaskElement.cpp:
1955         (WebCore::SVGMaskElement::drawMaskerContent):
1956         * svg/graphics/SVGResourceMasker.cpp:
1957         (WebCore::SVGResourceMasker::applyMask):
1958
1959 2009-12-21  Andreas Kling  <andreas.kling@nokia.com>
1960
1961         Reviewed by Darin Adler.
1962
1963         Fix assertion failure when dragging an SVG image.
1964         https://bugs.webkit.org/show_bug.cgi?id=32511
1965
1966         Test: fast/images/drag-svg-as-image.html
1967
1968         * svg/graphics/SVGImage.cpp:
1969         (WebCore::SVGImage::filenameExtension): Return "svg"
1970         * svg/graphics/SVGImage.h:
1971
1972 2009-12-17  Philippe Normand  <pnormand@igalia.com>
1973
1974         Reviewed by Xan Lopez.
1975
1976         [GTK] G_OBJECT() cast is not necessary for signals connection and properties access
1977         https://bugs.webkit.org/show_bug.cgi?id=32661
1978
1979         Removed useless calls to the G_OBJECT() macro and replaced NULL
1980         occurences with a SENTINEL macro.
1981
1982         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
1983         (WebCore::MediaPlayerPrivate::hasVideo):
1984         (WebCore::MediaPlayerPrivate::hasAudio):
1985         (WebCore::MediaPlayerPrivate::setVolume):
1986         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
1987
1988 2009-12-21  Nate Chapin  <japhet@chromium.org>
1989
1990         Reviewed by Darin Adler.
1991
1992         If an image load is started during an unload or beforeunload event, run it
1993         asynchronously (and allow it to outlive its page) so navigation can continue 
1994         while the load completes.
1995
1996         https://bugs.webkit.org/show_bug.cgi?id=30457
1997
1998         Tests: http/tests/navigation/image-load-in-beforeunload-handler.html
1999                http/tests/navigation/image-load-in-unload-handler.html
2000
2001         * loader/DocumentThreadableLoader.cpp:
2002         (WebCore::DocumentThreadableLoader::loadRequest): 
2003         * loader/FrameLoader.cpp: Rename m_unloadEventBeingDispatched to m_isDispatchingUnloadEvent.
2004         (WebCore::FrameLoader::FrameLoader):
2005         (WebCore::FrameLoader::stopLoading):
2006         (WebCore::FrameLoader::loadURL):
2007         (WebCore::FrameLoader::loadWithDocumentLoader):
2008         (WebCore::FrameLoader::stopAllLoaders):
2009         (WebCore::FrameLoader::continueLoadAfterNavigationPolicy): Set m_isDispatchingBeforeUnloadEvent.
2010         (WebCore::FrameLoader::pageHidden):
2011         * loader/FrameLoader.h:
2012         (WebCore::FrameLoader::isDispatchingUnloadFamilyEvent): Added.
2013         * loader/Request.cpp:
2014         (WebCore::Request::Request): Add OutlivePagePolicy to constructor parameters
2015         * loader/Request.h:
2016         (WebCore::): Add OutlivePagePolicy enum.
2017         (WebCore::Request::shouldOutlivePage): Added.
2018         (WebCore::Request::frame): Added.
2019         * loader/SubresourceLoader.cpp:
2020         (WebCore::SubresourceLoader::create): Change one of the security checks to an outlive page check.
2021         * loader/SubresourceLoader.h:
2022         * loader/loader.cpp:
2023         (WebCore::Loader::load): Add OutlivePagePolicy to Request constructor call,
2024              ensure requests that should outlive page are done asynchronously.
2025         (WebCore::Loader::cancelRequests): Remove ending ASSERT since it will now be hard to predict how
2026              many requests might possibly outlive a cancel in every case.
2027         (WebCore::Loader::Host::servePendingRequests): Use the correct frame in the case of a request outliving its page.
2028         (WebCore::Loader::Host::cancelPendingRequests): Ensure we don't cancel request that should outlive their page.
2029         (WebCore::Loader::Host::cancelRequests): Ensure we don't cancel request that should outlive their page.
2030
2031 2009-12-18  Adam Roben  <aroben@apple.com>
2032
2033         Fix Windows build warnings
2034
2035         * WebCore.vcproj/WebCore.vcproj: Exclude SVG files from the build that
2036         are compiled via SVGAllInOne.cpp.
2037
2038 2009-12-20  Pavel Feldman  <pfeldman@chromium.org>
2039
2040         Reviewed by Timothy Hatcher.
2041
2042         Web Inspector: Can’t copy outer html of selected node.
2043         Also adds "Copy as HTML" context menu item.
2044
2045         https://bugs.webkit.org/show_bug.cgi?id=32802
2046
2047         * English.lproj/localizedStrings.js:
2048         * inspector/front-end/ElementsTreeOutline.js:
2049         (WebInspector.ElementsTreeElement.prototype._populateTagContextMenu):
2050         * inspector/front-end/inspector.js:
2051         (WebInspector.documentCanCopy):
2052
2053 2009-12-20  Pavel Feldman  <pfeldman@chromium.org>
2054
2055         Reviewed by Eric Seidel.
2056
2057         Web Inspector: extract syntax highlighters into separate files.
2058
2059         https://bugs.webkit.org/show_bug.cgi?id=32803
2060
2061         * WebCore.gypi:
2062         * WebCore.vcproj/WebCore.vcproj:
2063         * inspector/front-end/CSSSourceSyntaxHighlighter.js: Added.
2064         (WebInspector.CSSSourceSyntaxHighlighter):
2065         * inspector/front-end/JavaScriptSourceSyntaxHighlighter.js: Added.
2066         (WebInspector.JavaScriptSourceSyntaxHighlighter):
2067         (WebInspector.JavaScriptSourceSyntaxHighlighter.):
2068         * inspector/front-end/SourceFrame.js:
2069         * inspector/front-end/SourceSyntaxHighlighter.js: Added.
2070         (WebInspector.SourceSyntaxHighlighter):
2071         (WebInspector.SourceSyntaxHighlighter.prototype.createSpan):
2072         (WebInspector.SourceSyntaxHighlighter.prototype.process.processChunk):
2073         (WebInspector.SourceSyntaxHighlighter.prototype.process.moveToNextLine):
2074         (WebInspector.SourceSyntaxHighlighter.prototype.process):
2075         (WebInspector.SourceSyntaxHighlighter.prototype.lex):
2076         (WebInspector.SourceSyntaxHighlighter.prototype.appendNonToken):
2077         (WebInspector.SourceSyntaxHighlighter.prototype.syntaxHighlightNode):
2078         * inspector/front-end/WebKit.qrc:
2079         * inspector/front-end/inspector.html:
2080
2081 2009-12-18  Julien Chaffraix  <jchaffraix@pleyo.com>
2082
2083         Reviewed by Darin Adler.
2084
2085         defersLoading is disabled in current libcURL.
2086         https://bugs.webkit.org/show_bug.cgi?id=32707
2087
2088         Basically this change reverts r49577 that was totally wrong.
2089         According to curlver.h, LIBCURL_VERSION_NUM is a
2090         "6-digit (24 bits) hexadecimal number".
2091
2092         The check should be against 0x071200 (7.18) as it was originally the case.
2093
2094        * platform/network/curl/ResourceHandleManager.cpp:
2095         (WebCore::ResourceHandleManager::initializeHandle): Use the right check.
2096         * platform/network/curl/ResourceHandleCurl.cpp:
2097         (WebCore::ResourceHandle::setDefersLoading): Ditto. Also removed a print
2098         to use a LOG_ERROR instead.
2099  
2100 2009-12-20  Kent Tamura  <tkent@chromium.org>
2101
2102         Reviewed by Darin Adler.
2103
2104         Add support for JavaScriptCore Date binding.
2105         https://bugs.webkit.org/show_bug.cgi?id=32698
2106
2107         This is needed for HTMLInputElement::valueAsDate and
2108         HTMLTimeElement::valueAsDate.
2109
2110         A Date instance is mapped to a double value in C++.
2111         - If null or undefined is set to a JavaScript property, C++ setter
2112           function receives NaN.
2113         - If a getter C++ function returns NaN or infinity, a JavaScript
2114           property returns null.
2115
2116         Test: fast/forms/input-valueasdate.html
2117
2118         * bindings/js/JSDOMBinding.cpp:
2119         (WebCore::jsDateOrNull): Implement the above.
2120         (WebCore::valueToDate): ditto.
2121         * bindings/js/JSDOMBinding.h: Declare them.
2122         * bindings/scripts/CodeGeneratorJS.pm: Produce jsDateOrNull() or
2123           valueToDate() for Date type.
2124         * html/HTMLInputElement.cpp:
2125         (WebCore::HTMLInputElement::valueAsDate): Temporal implementation.
2126         (WebCore::HTMLInputElement::setValueAsDate): ditto.
2127         * html/HTMLInputElement.h:
2128         * html/HTMLInputElement.idl: Declare valueAsDate.
2129
2130 2009-12-20  Kent Tamura  <tkent@chromium.org>
2131
2132         Reviewed by Darin Adler.
2133
2134         Introduce the followings:
2135           - ::-webkit-inner-spin-button pseudo CSS selector
2136           - ::-webkit-outer-spin-button pseudo CSS selector
2137           - new appearance type: inner-spin-button
2138           - new appearance type: outer-spin-button
2139         They're going to be used for <input type=number> UI.
2140         https://bugs.webkit.org/show_bug.cgi?id=31821
2141
2142         Inner-spin-button will be used for Windows, and outer-spin-button
2143         will be used for Mac. A spin-button will represent a pair of an
2144         increasing button part and a decreasing button part. SpinUpState,
2145         which is defined in ThemeTypes.h, will be used to distinguish
2146         these two parts.
2147
2148         The outer-spin-button implementation will use NSStepperCell.
2149         NSStepperCell represents the pair of the parts and we can't draw them
2150         independently. So a spin-button also represents the pair of the parts.
2151
2152         This change has no tests.  The following changes with tests will cover.
2153
2154         * css/CSSPrimitiveValueMappings.h:
2155         (WebCore::CSSPrimitiveValue::CSSPrimitiveValue):
2156         * css/CSSSelector.cpp:
2157         (WebCore::CSSSelector::extractPseudoType):
2158         * css/CSSSelector.h:
2159         (WebCore::CSSSelector::):
2160         * css/CSSStyleSelector.cpp:
2161         (WebCore::CSSStyleSelector::SelectorChecker::checkOneSelector):
2162         * css/CSSValueKeywords.in:
2163         * css/html.css:
2164         * platform/ThemeTypes.h:
2165         (WebCore::ControlState): Add SpinUpState.
2166         (WebCore::ControlPart): Add InnerSpinButtonPart and OuterSpinButtonPart.
2167         * rendering/RenderTheme.cpp:
2168         (WebCore::RenderTheme::adjustStyle):
2169         (WebCore::RenderTheme::paint):
2170         (WebCore::RenderTheme::adjustInnerSpinButtonStyle): Add an empty implementation.
2171         (WebCore::RenderTheme::adjustOuterSpinButtonStyle): Add an empty implementation.
2172         * rendering/RenderTheme.h:
2173         (WebCore::RenderTheme::paintInnerSpinButton): Add an empty implementation.
2174         (WebCore::RenderTheme::paintOuterSpinButton): Add an empty implementation.
2175         * rendering/style/RenderStyleConstants.h:
2176         (WebCore::PseudoId): Add INNER_SPIN_BUTTON and OUTER_SPIN_BUTTON.
2177
2178 2009-12-20  Nayan Kumar K  <nayankk@gmail.com>
2179
2180         Reviewed by Darin Adler.
2181
2182         Fix for compilation errors in WML module, due to the changeset #52314.
2183         https://bugs.webkit.org/show_bug.cgi?id=32786
2184
2185         No new tests, this is compilation error fix.
2186
2187         * wml/WMLDocument.cpp:
2188         * wml/WMLPageState.cpp:
2189         * wml/WMLPageState.h:
2190
2191 2009-12-20  Dan Bernstein  <mitz@apple.com>
2192
2193         Reviewed by Mark Rowe.
2194
2195         <rdar://problem/7487689> REGRESSION (r52203): Inspector console uses
2196         Monaco on Snow Leopard
2197         https://bugs.webkit.org/show_bug.cgi?id=32775
2198
2199         * inspector/front-end/inspector.css: Use the default monospace family
2200         and size.
2201
2202 2009-12-20  Martin Robinson  <martin.james.robinson@gmail.com>
2203
2204         Reviewed by Xan Lopez.
2205
2206         [GTK] Remove more GTK+ and GLib headers from WebCore
2207         https://bugs.webkit.org/show_bug.cgi?id=32795
2208
2209         Remove most GTK+ and GLib includes from WebCore headers.
2210
2211         * platform/graphics/cairo/GraphicsContextPlatformPrivateCairo.h:
2212         * platform/gtk/PasteboardHelper.h:
2213         * platform/gtk/RenderThemeGtk.cpp:
2214         * platform/gtk/RenderThemeGtk.h:
2215         * platform/gtk/ScrollbarGtk.cpp:
2216         * platform/gtk/ScrollbarThemeGtk.h:
2217         * platform/gtk/gtk2drawing.c:
2218         * platform/gtk/gtkdrawing.h:
2219
2220 2009-12-20  Kevin Ollivier  <kevino@theolliviers.com>
2221
2222         [wx] build fixes after recent changes.
2223
2224         * bindings/BindingSecurityBase.cpp: Removed V8 header in common code.
2225         * platform/wx/ContextMenuWx.cpp: Added missing header.
2226         * plugins/mac/PluginViewMac.cpp: Added missing header.
2227
2228 2009-12-20  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2229
2230         Reviewed by Xan Lopez.
2231
2232         Hopefully fix the assertion we are hitting by not forcing updating
2233         the state of scrollbars when setting the adjustments. This was
2234         leading to a premature layout.
2235
2236         fast/dom/open-and-close-by-DOM.html
2237         fast/dom/Window/closure-access-after-navigation-window.html
2238         fast/harness/use-page-cache.html
2239
2240         * platform/gtk/ScrollViewGtk.cpp:
2241         (WebCore::ScrollView::setGtkAdjustments):
2242
2243 2009-12-20  Pavel Feldman  <pfeldman@chromium.org>
2244
2245         Reviewed by Darin Adler.
2246
2247         Web Inspector: Constrain the number of messages the inspector shows.
2248
2249         https://bugs.webkit.org/show_bug.cgi?id=20919
2250
2251         * English.lproj/localizedStrings.js:
2252         * inspector/InspectorController.cpp:
2253         (WebCore::InspectorController::InspectorController):
2254         (WebCore::InspectorController::addConsoleMessage):
2255         (WebCore::InspectorController::clearConsoleMessages):
2256         (WebCore::InspectorController::populateScriptObjects):
2257         * inspector/InspectorController.h:
2258         * inspector/InspectorFrontend.cpp:
2259         (WebCore::InspectorFrontend::updateConsoleMessageExpiredCount):
2260         * inspector/InspectorFrontend.h:
2261         * inspector/front-end/inspector.js:
2262         (WebInspector.updateConsoleMessageExpiredCount):
2263
2264 2009-12-20  Andrei Popescu  <andreip@google.com>
2265
2266         Reviewed by Adam Barth.
2267
2268         [Android] Android needs implementation of setCookies, cookies and cookiesEnabled functions.
2269         https://bugs.webkit.org/show_bug.cgi?id=32559
2270
2271         Add implementation of the cookie functions.
2272         Fix a crash caused by dereferencing a 0 MainResourceLoader pointer
2273         in ResourceHandle::start().
2274
2275         No new tests, this is platform code.
2276
2277         * platform/android/PlatformBridge.h:
2278         * platform/network/android/AuthenticationChallenge.h: Added.
2279         * platform/network/android/CookieJarAndroid.cpp: Added.
2280         (WebCore::setCookies):
2281         (WebCore::cookies):
2282         (WebCore::cookiesEnabled):
2283         * platform/network/android/ResourceHandleAndroid.cpp:
2284         (WebCore::ResourceHandle::start):
2285
2286 2009-12-19  Eric Seidel  <eric@webkit.org>
2287
2288         No review, rolling out r52395.
2289         http://trac.webkit.org/changeset/52395
2290
2291         * svg/SVGMaskElement.cpp:
2292         (WebCore::SVGMaskElement::drawMaskerContent):
2293         * svg/SVGMaskElement.h:
2294         * svg/graphics/SVGResourceMasker.cpp:
2295         (WebCore::SVGResourceMasker::applyMask):
2296         * svg/graphics/SVGResourceMasker.h:
2297
2298 2009-12-19  Adam Barth  <abarth@webkit.org>
2299
2300         No review, rolling out r52399.
2301         http://trac.webkit.org/changeset/52399
2302
2303         * websockets/WebSocket.cpp:
2304         (WebCore::WebSocket::connect):
2305
2306 2009-12-19  Adam Barth  <abarth@webkit.org>
2307
2308         Reviewed by Eric Seidel.
2309
2310         Added a missing "not".
2311
2312         Test: http/tests/security/xss-DENIED-window-open-javascript-url.html
2313
2314         * bindings/v8/custom/V8DOMWindowCustom.cpp:
2315         (WebCore::createWindow):
2316
2317 2009-12-19  Fumitoshi Ukai  <ukai@chromium.org>
2318
2319         Reviewed by Alexey Proskuryakov.
2320
2321         Invalid url should raise SYNTAX_ERR exception.
2322         https://bugs.webkit.org/show_bug.cgi?id=32700
2323
2324         Check url is valid in WebSocket::connect.
2325         Also log the detailed reason of websocket failures to console.
2326
2327         * websockets/WebSocket.cpp:
2328         (WebCore::WebSocket::connect):
2329
2330 2009-12-19  Dan Bernstein  <mitz@apple.com>
2331
2332         Reviewed by Darin Adler.
2333
2334         REGRESSION: Up/down arrow keys do not step numeric CSS property values
2335         https://bugs.webkit.org/show_bug.cgi?id=32776
2336
2337         * inspector/front-end/inspector.js:
2338         (WebInspector.documentKeyDown): Call the focused element’s
2339         handleKeyEvent method.
2340
2341 2009-12-19  Dirk Schulze  <krit@webkit.org>
2342
2343         Reviewed by Nikolas Zimmermann.
2344
2345         Speed-up SVG Masking
2346         https://bugs.webkit.org/show_bug.cgi?id=32738
2347
2348         This patch makes SVG Masking faster. At the moment we create a new ImageBuffer
2349         and copy the complete pixel array. That is rather inefficient. This patch
2350         uses the mask image directly.
2351         It also bounds the direct pixel manipultation to the viewable area to minimize
2352         the calculation of the mask.
2353
2354         No change in functionality. So no new test.
2355
2356         * svg/SVGMaskElement.cpp:
2357         (WebCore::SVGMaskElement::drawMaskerContent):
2358         * svg/SVGMaskElement.h:
2359         * svg/graphics/SVGResourceMasker.cpp:
2360         (WebCore::SVGResourceMasker::applyMask):
2361         * svg/graphics/SVGResourceMasker.h:
2362
2363 2009-12-19  Dirk Schulze  <krit@webkit.org>
2364
2365         Reviewed by Nikolas Zimmermann.
2366
2367         Add tests to check filter, mask, clip, opacity and marker ordering
2368         https://bugs.webkit.org/show_bug.cgi?id=14010
2369
2370         The right ordering for applying effects on objects in SVG is filters,
2371         clipper/masker and opacity. This patch fixes the order of filter and
2372         clipper/masker. Opacity and marker need another test.
2373         This change is according to the SVG Specification:
2374         http://www.w3.org/TR/SVG11/render.html#Elements
2375
2376         Test: svg/filters/filter-clip.svg
2377
2378         * rendering/SVGRenderSupport.cpp:
2379         (WebCore::SVGRenderBase::prepareToRenderSVGContent):
2380
2381 2009-12-19  Evan Martin  <evan@chromium.org>
2382
2383         Reviewed by Gustavo Noronha Silva.
2384
2385         Revert my attempt at making --disable-geolocation work; it is
2386         more complicated than I anticipated.  (It passed on the build bots
2387         because they build with --enable-geolocation.)
2388
2389         * GNUmakefile.am:
2390
2391 2009-12-19  MORITA Hajime  <morrita@gmail.com>
2392
2393         Reviewed by Darin Adler.
2394
2395         WebCore::Range::surroundContents NULL pointer crash.
2396
2397         https://bugs.webkit.org/show_bug.cgi?id=31684
2398
2399         Test: fast/dom/Range/31684.html
2400
2401         * dom/Range.cpp:
2402         (WebCore::Range::surroundContents):
2403         throw exception when parentOfNewParent->parentNode() is NULL.
2404
2405 2009-12-19  Christian Dywan  <christian@twotoasts.de>
2406
2407         Reviewed by Gustavo Noronha Silva.
2408
2409         Don't use an icon for all spelling guess menu items.
2410
2411         * platform/gtk/ContextMenuItemGtk.cpp:
2412         (WebCore::gtkStockIDFromContextMenuAction):
2413
2414 2009-12-19  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
2415
2416         Unreviewed build fix. Missing \.
2417
2418         * GNUmakefile.am:
2419
2420 2009-12-19  Evan Martin  <evan@chromium.org>
2421
2422         Reviewed by Gustavo Noronha Silva.
2423
2424         Make --disable-geolocation and --disable-svg work, by conditionally
2425         building the relevant files.
2426
2427         * GNUmakefile.am:
2428
2429 2009-12-18  Peter Kasting  <pkasting@google.com>
2430
2431         Reviewed by Simon Fraser.
2432
2433         Add a comment about some confusing code that otherwise would look like
2434         it might be a bug.
2435         https://bugs.webkit.org/show_bug.cgi?id=32534
2436
2437         * rendering/RenderLayer.cpp:
2438         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2439
2440 2009-12-18  Nikolas Zimmermann  <nzimmermann@rim.com>
2441
2442         Not reviewed. Messed up the XCode file, trying to fix.
2443
2444         * WebCore.xcodeproj/project.pbxproj:
2445
2446 2009-12-18  Nikolas Zimmermann  <nzimmermann@rim.com>
2447
2448         Not reviewed, fix typos in WebCore.xcodeproj.
2449
2450         * WebCore.xcodeproj/project.pbxproj:
2451
2452 2009-12-18  Nikolas Zimmermann  <nzimmermann@rim.com>
2453
2454         Reviewed by Eric Seidel.
2455
2456         SVGAngle / SVGPreserveAspectRatio should be POD types
2457         https://bugs.webkit.org/show_bug.cgi?id=32758
2458
2459         Convert SVGAngle / SVGPreserveAspectRatio to be non-refcounted types, just
2460         like it has been done for SVGMatrix / SVGLength before.
2461
2462         This patch prepares removing the special DOMObjectWithSVGContext hack.
2463         No change in functionality, thus no new tests.
2464
2465         * WebCore.xcodeproj/project.pbxproj: Add SVGNames.h to the 'Copy Generated Headers' phase, and set SVGAngle/SVGPreserveAspectRatio role to 'Private', so WebKit can access it.
2466         * bindings/scripts/CodeGenerator.pm: Recognize SVGAngle / SVGPreserveAspectRatio as new POD-types (similar to SVGLength)
2467         * bindings/scripts/CodeGeneratorJS.pm: Ditto. 
2468         * bindings/scripts/CodeGeneratorV8.pm: Ditto.
2469         * bindings/v8/V8Index.h: Ditto.
2470         * rendering/RenderSVGImage.cpp: All following changes, modify SVGAngle/SVGPreserveAspectRatio access, as they are non-refcounted now.
2471         (WebCore::RenderSVGImage::adjustRectsForAspectRatio):
2472         (WebCore::RenderSVGImage::paint):
2473         * rendering/RenderSVGImage.h:
2474         * svg/SVGAngle.h:
2475         * svg/SVGAngle.idl:
2476         * svg/SVGAnimatedTemplate.h:
2477         (WebCore::):
2478         * svg/SVGFEImageElement.cpp:
2479         (WebCore::SVGFEImageElement::SVGFEImageElement):
2480         (WebCore::SVGFEImageElement::parseMappedAttribute):
2481         * svg/SVGFitToViewBox.cpp:
2482         (WebCore::SVGFitToViewBox::viewBoxToViewTransform):
2483         (WebCore::SVGFitToViewBox::parseMappedAttribute):
2484         * svg/SVGFitToViewBox.h:
2485         * svg/SVGImageElement.cpp:
2486         (WebCore::SVGImageElement::SVGImageElement):
2487         (WebCore::SVGImageElement::parseMappedAttribute):
2488         * svg/SVGMarkerElement.cpp:
2489         (WebCore::SVGMarkerElement::SVGMarkerElement):
2490         (WebCore::SVGMarkerElement::parseMappedAttribute):
2491         (WebCore::SVGMarkerElement::setOrientToAuto):
2492         (WebCore::SVGMarkerElement::setOrientToAngle):
2493         (WebCore::SVGMarkerElement::canvasResource):
2494         * svg/SVGMarkerElement.h:
2495         * svg/SVGPatternElement.cpp:
2496         (WebCore::SVGPatternElement::SVGPatternElement):
2497         * svg/SVGPreserveAspectRatio.cpp:
2498         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
2499         (WebCore::SVGPreserveAspectRatio::getCTM):
2500         * svg/SVGPreserveAspectRatio.h:
2501         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
2502         * svg/SVGPreserveAspectRatio.idl:
2503         * svg/SVGSVGElement.cpp:
2504         (WebCore::SVGSVGElement::SVGSVGElement):
2505         (WebCore::SVGSVGElement::createSVGAngle):
2506         (WebCore::SVGSVGElement::inheritViewAttributes):
2507         * svg/SVGSVGElement.h:
2508         * svg/SVGSymbolElement.cpp:
2509         (WebCore::SVGSymbolElement::SVGSymbolElement):
2510         * svg/SVGViewElement.cpp:
2511         (WebCore::SVGViewElement::SVGViewElement):
2512         * svg/SVGViewSpec.cpp:
2513         (WebCore::SVGViewSpec::SVGViewSpec):
2514         (WebCore::SVGViewSpec::setPreserveAspectRatioString):
2515         (WebCore::SVGViewSpec::parseViewSpec):
2516
2517 2009-12-18  Dumitru Daniliuc  <dumi@chromium.org>
2518
2519         Chromium build fix, no review.
2520
2521         * storage/chromium/DatabaseTrackerChromium.cpp:
2522
2523 2009-12-18  Brent Fulgham  <bfulgham@webkit.org>
2524
2525         Build fix, no review.
2526
2527         * platform/graphics/win/FontCacheWin.cpp:
2528         (WebCore::FontCache::createFontPlatformData): Correct my typo
2529           on the CG build.
2530
2531 2009-12-18  Dumitru Daniliuc  <dumi@chromium.org>
2532
2533         Reviewed by Eric Seidel.
2534
2535         Make DatabaseTrackerChromium::removeOpenDatabase() send and IPC on
2536         the main thread when a database is being closed.
2537
2538         https://bugs.webkit.org/show_bug.cgi?id=32627
2539
2540         * storage/chromium/DatabaseTrackerChromium.cpp:
2541         (WebCore::removeOpenDatabaseOnMainThread):
2542         (WebCore::DatabaseTracker::removeOpenDatabase):
2543
2544 2009-12-18  Brent Fulgham  <bfulgham@webkit.org>
2545
2546         Build fix, no review.
2547
2548         * page/win/FrameCairoWin.cpp: Add missing include.
2549         * platform/graphics/win/FontCacheWin.cpp:
2550         (WebCore::FontCache::createFontPlatformData): Conditionalize
2551           Safari-only call.
2552
2553 2009-12-18  Dumitru Daniliuc  <dumi@chromium.org>
2554
2555         Reviewed by Dmitry Titov.
2556
2557         Move some code related to database closing from the destructor to
2558         the close() method. This would allow us to do things such as post
2559         tasks to other threads when a database closes, which cannot be
2560         done now, because we cannot increment the ref count to a database
2561         object when we're in its destructor.
2562
2563         https://bugs.webkit.org/show_bug.cgi?id=32626
2564
2565         * storage/Database.cpp:
2566         (WebCore::Database::~Database):
2567         (WebCore::Database::close):
2568
2569 2009-12-18  Jon Honeycutt  <jhoneycutt@apple.com>
2570
2571         REGRESSION(r52233): MSAA: Accessibility role of lists is wrong
2572
2573         https://bugs.webkit.org/show_bug.cgi?id=32736
2574
2575         Reviewed by Adam Roben.
2576
2577         Test: platform/win/accessibility/list-role.html
2578
2579         * accessibility/AccessibilityObject.h:
2580         (WebCore::AccessibilityObject::roleValueForMSAA):
2581         Return roleValue(), rather than m_role, as subclasses may override it.
2582
2583         * accessibility/AccessibilityRenderObject.cpp:
2584         (WebCore::AccessibilityRenderObject::roleValueForMSAA):
2585         Fallback to roleValue(), rather than m_role, as it may be overriden.
2586
2587 2009-12-17  Jon Honeycutt  <jhoneycutt@apple.com>
2588
2589         MSAA: Accessibility role of list items is wrong
2590
2591         https://bugs.webkit.org/show_bug.cgi?id=32688
2592
2593         Reviewed by Adam Roben.
2594
2595         Test: platform/win/accessibility/list-item-role.html
2596
2597         * accessibility/AccessibilityObject.h:
2598         (WebCore::):
2599         Add a ListItemRole to the enum.
2600
2601         * accessibility/AccessibilityRenderObject.cpp:
2602         (WebCore::msaaRoleForRenderer):
2603         Return the role for the RenderObject, or UnknownRole if unknown.
2604         (WebCore::AccessibilityRenderObject::roleValueForMSAA):
2605         Call msaaRoleForRenderer() to get the role. If it is UnknownRole, fall
2606         back to m_role.
2607
2608 2009-12-18  Simon Fraser  <simon.fraser@apple.com>
2609
2610         Reviewed by Darin Adler.
2611
2612         Crash when accessing webkitTransition property after setting webkitTransitionProperty with invalid value.
2613         https://bugs.webkit.org/show_bug.cgi?id=31559
2614         
2615         Fix an array bounds error when accessing the CSS value for a shorthand property that takes
2616         a comma-separated list, after the list for one of the component properties has been set to a different length.
2617
2618         Test: fast/css/shorthand-mismatched-list-crash.html
2619
2620         * css/CSSMutableStyleDeclaration.cpp:
2621         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue):
2622
2623 2009-12-18  Simon Fraser  <simon.fraser@apple.com>
2624
2625         Reviewed by Mark Rowe.
2626
2627         Remove WebCore.ClientBasedGeolocation.exp from Sources, and remove two IDL files from Resources.
2628
2629         * WebCore.xcodeproj/project.pbxproj:
2630
2631 2009-12-18  Sam Weinig  <sam@webkit.org>
2632
2633         Fix mac Geolocation build.
2634
2635         * DerivedSources.make:
2636         * WebCore.ClientBasedGeolocation.exp: Added.
2637         * WebCore.xcodeproj/project.pbxproj:
2638         * page/Geolocation.h:
2639         * page/GeolocationError.h:
2640         (WebCore::GeolocationError::GeolocationError):
2641         * page/GeolocationPosition.h:
2642
2643 2009-12-18  Brian Weinstein  <bweinstein@apple.com>
2644
2645         Reviewed by Adam Roben.
2646
2647         Fixes <http://webkit.org/b/32613>.
2648         REGRESSION (r52008): Middle-clicking on a linked image starts a pan scroll,
2649         but should follow the link instead.
2650
2651         The node itself isn't the only possible node that can be a link (that was the
2652         original check), any of its ancestors could be links as well, we need to climb
2653         up the tree to see. Created a new function (enclosingAnchorNode), that finds a
2654         node's enclosing anchor element (if it exists), that we can share between RenderLayer
2655         and Node, and also added tests that test pan scrolling behavior in image maps.
2656
2657         Tests: platform/win/fast/events/panScroll-image-no-scroll.html
2658                platform/win/fast/events/panScroll-imageMap-href-no-scroll.html
2659                platform/win/fast/events/panScroll-imageMap-noHref-scroll.html
2660
2661         * dom/Node.cpp:
2662         (WebCore::Node::enclosingAnchorNode):
2663         (WebCore::Node::defaultEventHandler):
2664         * dom/Node.h:
2665         * rendering/RenderLayer.cpp:
2666         (WebCore::RenderLayer::hitTest):
2667
2668 2009-12-18  Benjamin Otte  <otte@gnome.org>
2669
2670         Reviewed by Xan Lopez.
2671
2672         [GTK] RemoveDashboard support. It's useless.
2673
2674         * GNUmakefile.am:
2675
2676 2009-12-18  Christian Dywan  <christian@twotoasts.de>
2677
2678         Reviewed by Xan Lopez.
2679
2680         [GTK] context menu overriding API is very limited
2681         https://bugs.webkit.org/show_bug.cgi?id=27546
2682
2683         Omit SearchWeb from the context menu in the GTK+ port.
2684
2685         * platform/ContextMenu.cpp:
2686         (WebCore::ContextMenu::populate):
2687
2688 2009-12-18  Sam Weinig  <sam@webkit.org>
2689
2690         Reviewed by Anders Carlsson.
2691
2692         Add export the new symbol in WebCoreSystemInterface.
2693
2694         * WebCore.base.exp:
2695         * platform/mac/WebCoreSystemInterface.h:
2696         * platform/mac/WebCoreSystemInterface.mm:
2697
2698 2009-12-18  Sam Weinig  <sam@webkit.org>
2699
2700         Reviewed by Anders Carlsson.
2701
2702         Forward declare NSMutableArray when not compiling for Objective-C.
2703
2704         * platform/mac/WebCoreSystemInterface.h:
2705
2706 2009-12-18  Gavin Barraclough  <barraclough@apple.com>
2707
2708         Reviewed by Sam Weinig.
2709
2710         https://bugs.webkit.org/show_bug.cgi?id=32720
2711         Replace UString addition/append with use of JSC::StringBuilder.
2712
2713         * ForwardingHeaders/runtime/StringBuilder.h: Added.
2714         * bindings/js/ScriptString.h:
2715         (WebCore::ScriptString::operator+=):
2716         * bridge/jni/jni_runtime.cpp:
2717         (appendClassName):
2718         (JavaMethod::signature):
2719         * inspector/InspectorController.cpp:
2720         (WebCore::InspectorController::addProfileFinishedMessageToConsole):
2721         (WebCore::InspectorController::addStartProfilingMessageToConsole):
2722         (WebCore::InspectorController::getCurrentUserInitiatedProfileName):
2723
2724 2009-12-18  Kenneth Russell  <kbr@google.com>
2725
2726         Reviewed by Darin Fisher.
2727
2728         Index validation for drawElements examines too many indices
2729         https://bugs.webkit.org/show_bug.cgi?id=32692
2730
2731         Test: fast/canvas/webgl/bug-32692.html
2732
2733         * html/canvas/WebGLRenderingContext.cpp:
2734         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
2735
2736 2009-12-18  Sam Weinig  <sam@webkit.org>
2737
2738         Reviewed by Anders Carlsson.
2739
2740         Update WebKitSystemInterface for <rdar://problem/7237059>.        
2741
2742         * platform/mac/WebCoreSystemInterface.h:
2743         * platform/mac/WebCoreSystemInterface.mm:
2744
2745 2009-12-18  Adam Roben  <aroben@apple.com>
2746
2747         GTK build fix
2748
2749         * plugins/gtk/PluginViewGtk.cpp: Added #include.
2750
2751 2009-12-18  Adam Roben  <aroben@apple.com>
2752
2753         Chromium build fix
2754
2755         * platform/chromium/PopupMenuChromium.cpp: Added #include.
2756
2757 2009-12-18  Adam Roben  <aroben@apple.com>
2758
2759         Chromium build fix
2760
2761         * html/HTMLLinkElement.cpp: Added #include.
2762
2763 2009-12-18  Adam Roben  <aroben@apple.com>
2764
2765         Qt build fix
2766
2767         * platform/qt/RenderThemeQt.cpp:
2768         * plugins/qt/PluginDataQt.cpp:
2769         * plugins/qt/PluginViewQt.cpp:
2770         Added #includes.
2771
2772 2009-12-18  Adam Roben  <aroben@apple.com>
2773
2774         V8 build fix
2775
2776         * bindings/v8/custom/V8DOMWindowCustom.cpp: Added #include.
2777
2778 2009-12-18  Adam Roben  <aroben@apple.com>
2779
2780         GTK (and others?) build fix
2781
2782         * platform/text/StringImpl.h: Added #include.
2783
2784 2009-12-18  Adam Roben  <aroben@apple.com>
2785
2786         Reduce #includes in a few high-use headers
2787
2788         Removed unnecessary #includes in these headers:
2789           - Frame.h
2790           - FrameWin.h
2791           - Node.h
2792           - Page.h
2793           - StringImpl.h
2794
2795         The rest of the patch is all adding #includes to source files that now
2796         require them.
2797
2798         Fixes <http://webkit.org/b/32718>.
2799
2800         Rubber-stamped by Anders Carlsson.
2801
2802         * dom/Node.h:
2803         * page/Frame.h:
2804         * page/Page.h:
2805         * page/win/FrameWin.h:
2806         * platform/text/StringImpl.h:
2807         Removed unnecessary #includes.
2808
2809         * accessibility/win/AXObjectCacheWin.cpp:
2810         * bindings/js/JSDOMWindowBase.cpp:
2811         * bindings/js/JSDOMWindowCustom.cpp:
2812         * dom/Document.cpp:
2813         * dom/InputElement.cpp:
2814         * dom/Node.cpp:
2815         * dom/SelectElement.cpp:
2816         * editing/EditorCommand.cpp:
2817         * html/HTMLFormControlElement.cpp:
2818         * html/HTMLFormElement.cpp:
2819         * html/HTMLMediaElement.cpp:
2820         * html/HTMLParser.cpp:
2821         * html/HTMLTextAreaElement.cpp:
2822         * html/HTMLVideoElement.cpp:
2823         * inspector/InspectorController.cpp:
2824         * loader/FrameLoader.cpp:
2825         * loader/HistoryController.cpp:
2826         * loader/appcache/ApplicationCacheGroup.cpp:
2827         * page/Console.cpp:
2828         * page/EventHandler.cpp:
2829         * page/Frame.cpp:
2830         * page/FrameView.cpp:
2831         * page/Navigator.cpp:
2832         * page/PageGroup.cpp:
2833         * page/Settings.cpp:
2834         * page/mac/EventHandlerMac.mm:
2835         * platform/KURL.h:
2836         * platform/ScrollbarThemeComposite.cpp:
2837         * platform/cf/BinaryPropertyList.cpp:
2838         * platform/graphics/mac/GraphicsLayerCA.h:
2839         * platform/graphics/win/WKCACFLayerRenderer.cpp:
2840         * platform/mac/PopupMenuMac.mm:
2841         * platform/mac/WidgetMac.mm:
2842         * platform/network/cf/DNSCFNet.cpp:
2843         * platform/text/StringImpl.cpp:
2844         * platform/win/FileSystemWin.cpp:
2845         * platform/win/PlatformScreenWin.cpp:
2846         * platform/win/PopupMenuWin.cpp:
2847         * platform/win/WidgetWin.cpp:
2848         * plugins/PluginView.cpp:
2849         * plugins/win/PluginViewWin.cpp:
2850         * rendering/InlineTextBox.cpp:
2851         * rendering/RenderBox.cpp:
2852         * rendering/RenderFileUploadControl.cpp:
2853         * rendering/RenderInline.cpp:
2854         * rendering/RenderLayerCompositor.cpp:
2855         * rendering/RenderObject.cpp:
2856         * rendering/RootInlineBox.cpp:
2857         * storage/DatabaseTracker.cpp:
2858         * storage/DatabaseTracker.h:
2859         * storage/SQLTransactionClient.cpp:
2860         * svg/graphics/SVGImage.cpp:
2861         Added now-needed #includes.
2862
2863 2009-12-18  Shu Chang  <Chang.Shu@nokia.com>
2864
2865         Reviewed by Darin Adler.
2866
2867         Implemented isId as specified by DOM Level 3. See detailed description below.
2868         https://bugs.webkit.org/show_bug.cgi?id=5578
2869
2870         Added isId property and implementation:
2871         Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
2872                fast/dom/Element/attrisid-extra01.html
2873         * dom/Attr.cpp:
2874         (WebCore::Attr::isId):
2875         * dom/Attr.h:
2876         * dom/Attr.idl:
2877
2878         Replaced instances of HTMLNames::idAttr with Element::idAttributeName()
2879         for the reason that id attribute name could be customized to a different
2880         string other than "id". A test case is associated to each code change.
2881         * dom/Document.cpp:
2882         (WebCore::Document::getElementById): Test: fast/dom/Element/id-in-getelement01.html
2883         * dom/Element.cpp: Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
2884         (WebCore::Element::setAttribute):
2885         (WebCore::Element::setAttributeMap):
2886         (WebCore::Element::insertedIntoDocument):
2887         (WebCore::Element::removedFromDocument):
2888         (WebCore::Element::formatForDebugger):
2889         (WebCore::Element::rareIDAttributeName):
2890         * dom/Element.h: Added function idAttributeName().
2891         (WebCore::Element::idAttributeName):
2892         * dom/ElementRareData.h: Added member variable to store customized id name in ElementRareData.
2893         (WebCore::ElementRareData::ElementRareData):
2894         * dom/NamedAttrMap.cpp: Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
2895         (WebCore::NamedNodeMap::setNamedItem):
2896         (WebCore::NamedNodeMap::removeNamedItem):
2897         (WebCore::NamedNodeMap::setAttributes):
2898         * dom/Node.cpp: Removed ASSERT as it may not hold any more.
2899         (WebCore::Node::querySelector):
2900         * dom/SelectorNodeList.cpp: Removed ASSERT as it may not hold any more.
2901         (WebCore::createSelectorNodeList):
2902         * dom/StyledElement.cpp: Tests: dom/xhtml/level3/core/attrisid01-07.xhtml
2903         (WebCore::StyledElement::parseMappedAttribute):
2904         * editing/DeleteButtonController.cpp: Test: fast/dom/Element/id-in-deletebutton.html
2905         (WebCore::DeleteButtonController::createDeletionUI):
2906         * editing/EditorCommand.cpp: Test: fast/dom/Element/id-in-insert-hr.html
2907         (WebCore::executeInsertHorizontalRule):
2908         * html/HTMLAppletElement.cpp: Test: fast/dom/Element/id-in-applet.html
2909         (WebCore::HTMLAppletElement::parseMappedAttribute):
2910         (WebCore::HTMLAppletElement::createRenderer):
2911         * html/HTMLCollection.cpp:
2912         (WebCore::HTMLCollection::checkForNameMatch): Test: fast/forms/select-namedItem.html
2913         (WebCore::HTMLCollection::updateNameCache): Test: fast/dom/collection-namedItem-via-item.html
2914         * html/HTMLDataGridColElement.cpp:
2915         (WebCore::HTMLDataGridColElement::ensureColumn): Test: fast/dom/HTMLDataGridElement/DataGridColumns-dom.html
2916         (WebCore::HTMLDataGridColElement::parseMappedAttribute): Test: fast/dom/HTMLDataGridElement/DataGridColumns-dom-attributes.html
2917         * html/HTMLElement.cpp:
2918         (WebCore::HTMLElement::parseMappedAttribute):
2919         * html/HTMLFormCollection.cpp: Test: fast/dom/Element/id-in-formcollection.html
2920         (WebCore::HTMLFormCollection::getNamedFormItem):
2921         (WebCore::HTMLFormCollection::nextNamedItem):
2922         (WebCore::HTMLFormCollection::updateNameCache):
2923         * html/HTMLFrameElementBase.cpp: Test: fast/dom/Element/id-in-frame.html
2924         (WebCore::HTMLFrameElementBase::parseMappedAttribute):
2925         (WebCore::HTMLFrameElementBase::setNameAndOpenURL):
2926         * html/HTMLImageElement.cpp: Test: fast/dom/Element/id-in-deletebutton.html
2927         (WebCore::HTMLImageElement::parseMappedAttribute):
2928         * html/HTMLMapElement.cpp: Test: fast/dom/Element/id-in-map.html
2929         (WebCore::HTMLMapElement::parseMappedAttribute):
2930         * html/HTMLNameCollection.cpp: Test: fast/dom/Element/id-in-frameset.html
2931         (WebCore::HTMLNameCollection::itemAfter):
2932         * html/HTMLObjectElement.cpp: Test: fast/dom/HTMLDocument/object-by-name-or-id.html
2933         (WebCore::HTMLObjectElement::parseMappedAttribute):
2934         * html/HTMLParamElement.cpp: Test: fast/dom/Element/id-in-param.html
2935         (WebCore::HTMLParamElement::parseMappedAttribute):
2936         * loader/CachedFont.cpp: Test: svg/custom/acid3-test-77.html
2937         (WebCore::CachedFont::getSVGFontById):
2938         * rendering/RenderLayerBacking.cpp:
2939         (WebCore::RenderLayerBacking::createGraphicsLayer): Debug-only code
2940         * rendering/SVGRenderTreeAsText.cpp: Test: svg/text/text-gradient-positioning.svg
2941         (WebCore::writeRenderResources):
2942         * svg/SVGElement.cpp: Test: svg/custom/acid3-test-77.html
2943         (WebCore::SVGElement::insertedIntoDocument):
2944         * svg/SVGStyledElement.cpp: Test: svg/custom/js-update-image-and-display.svg
2945         (WebCore::SVGStyledElement::isKnownAttribute):
2946         * wml/WMLElement.cpp:
2947         (WebCore::WMLElement::parseMappedAttribute):
2948
2949 2009-12-18  Simon Hausmann  <simon.hausmann@nokia.com>
2950
2951         Reviewed by Tor Arne Vestbø.
2952
2953         [Qt] Clean up the qmake build system to distinguish between trunk builds and package builds
2954
2955         https://bugs.webkit.org/show_bug.cgi?id=32716
2956
2957         Introduce standalone_package as config that is set when QTDIR_build is set or when
2958         the directory for the generated files is present.
2959
2960         Renamed uses of QTDIR_build that apply to generic package builds to use standalone_package.
2961         Others remain as they are specific to building inside Qt.
2962
2963         * WebCore.pro:
2964
2965 2009-12-18  Simon Hausmann  <simon.hausmann@nokia.com>
2966
2967         Reviewed by Tor Arne Vestbø.
2968
2969         [Qt] Fix the build on Symbian.
2970
2971         Use QFont::lastRestortFamily() instead of QFont::lastRestortFont(),
2972         which is a missing symbol in Qt 4.6.0 on Symbian.
2973
2974         Functionally they should be equivalent, according to the source.
2975
2976         * platform/graphics/qt/FontCacheQt.cpp:
2977         (WebCore::FontCache::getLastResortFallbackFont):
2978
2979 2009-12-18  Philippe Normand  <pnormand@igalia.com>
2980
2981         Reviewed by Xan Lopez.
2982
2983         [GTK] segfault during controls initialization if not GTK theme is present.
2984         https://bugs.webkit.org/show_bug.cgi?id=32705
2985
2986         Create empty images for the controls if no GTK theme is set.
2987
2988         * platform/graphics/gtk/ImageGtk.cpp:
2989         (WebCore::getThemeIconFileName):
2990         (WebCore::loadImageFromFile):
2991
2992 2009-12-18  Alejandro G. Castro  <alex@igalia.com>
2993
2994         Reviewed by Darin Adler.
2995
2996         REGRESSION (r38898): Using the up arrow in a textarea gets "stuck"
2997         at the beginning.
2998         https://bugs.webkit.org/show_bug.cgi?id=31920
2999
3000         Moving up from a position after the end of the previous lines
3001         should use UPSTREAM affinity to render the caret in the previous
3002         line.
3003
3004         Test: editing/selection/wrapped-line-caret-3.html
3005
3006         * rendering/RenderText.cpp:
3007         (WebCore::RenderText::positionForPoint):
3008
3009 2009-12-17  Eric Seidel  <eric@webkit.org>
3010
3011         Reviewed by Darin Adler.
3012
3013         HTMLInputElement::stepMismatch() uses ambiguous overload of pow()
3014         https://bugs.webkit.org/show_bug.cgi?id=32675
3015
3016         Use the double constant 2.0 instead of static_cast<double>(2).
3017
3018         * html/HTMLInputElement.cpp:
3019         (WebCore::HTMLInputElement::stepMismatch):
3020
3021 2009-12-17  Justin Schuh  <jschuh@chromium.org>
3022
3023         Reviewed by Dan Bernstein.
3024
3025         Bug 32357: SVG test case crashes WebKit (invalid font URL)
3026         https://bugs.webkit.org/show_bug.cgi?id=32357
3027
3028         Added check for NULL return value from DocLoader::requestFont()
3029
3030         * svg/SVGFontFaceUriElement.cpp:
3031         (WebCore::SVGFontFaceUriElement::loadFont):
3032
3033 2009-12-17  Shinichiro Hamaji  <hamaji@chromium.org>
3034
3035         Reviewed by Dan Bernstein.
3036
3037         marquee with display:inline causes crash
3038         https://bugs.webkit.org/show_bug.cgi?id=32374
3039
3040         Test: fast/inline/inline-marquee-crash.html
3041
3042         * html/HTMLMarqueeElement.cpp:
3043         (WebCore::HTMLMarqueeElement::start):
3044         (WebCore::HTMLMarqueeElement::stop):
3045         (WebCore::HTMLMarqueeElement::suspend):
3046         (WebCore::HTMLMarqueeElement::resume):
3047         (WebCore::HTMLMarqueeElement::renderMarquee):
3048         * html/HTMLMarqueeElement.h:
3049         * rendering/RenderLayer.cpp:
3050         (WebCore::RenderLayer::styleChanged):
3051
3052 2009-12-17  Zoltan Horvath  <zoltan@webkit.org>
3053
3054         Reviewed by Darin Adler.
3055
3056         Allow custom memory allocation control for inspector's classes
3057         https://bugs.webkit.org/show_bug.cgi?id=32660                               
3058
3059         Inherits the following classes from Noncopyable because these are
3060         instantiated by 'new' and no need to be copyable:                                           
3061
3062         class name                  - instantiated at:  WebCore/'location'
3063
3064         class JavaScriptDebugServer - inspector/JavaScriptDebugServer.cpp:72
3065         class ConsoleMessage        - inspector/InspectorController.cpp:329 
3066         class InspectorController   - page/Page.cpp:119
3067
3068         * inspector/ConsoleMessage.h:
3069         * inspector/InspectorController.h:
3070         * inspector/JavaScriptDebugServer.h:
3071
3072 2009-12-17  Steve Block  <steveblock@google.com>
3073
3074         Reviewed by Eric Seidel.
3075
3076         Fixes HTMLInputElement::stepMismatch() to avoid ambiguous overload of pow().
3077         https://bugs.webkit.org/show_bug.cgi?id=32675
3078
3079         Build fix only, no new tests.
3080
3081         * html/HTMLInputElement.cpp: Modified.
3082         (WebCore::HTMLInputElement::stepMismatch): Cast first argument of pow to double to force 'double pow(double, int)'
3083
3084 2009-12-17  Marc-Antoine Ruel  <maruel@chromium.org>
3085
3086         Reviewed by Eric Seidel.
3087
3088         Fix link failure on LTCG builds on Windows for chromium port.
3089
3090         Reenable SVGAllInOne.cpp. This required some fixups.
3091
3092         Namely, there was conflicts in constants between HTMLNames and
3093         SVGNames, and conflicts between static functions names.
3094
3095         No new tests as functionality has not changed.
3096
3097         * WebCore.gyp/WebCore.gyp:
3098         * svg/SVGAllInOne.cpp:
3099         * svg/SVGFontFaceElement.cpp:
3100         (WebCore::SVGFontFaceElement::rebuildFontFace):
3101         * svg/SVGGlyphElement.cpp:
3102         (WebCore::SVGGlyphElement::invalidateGlyphCache):
3103         (WebCore::SVGGlyphElement::buildGlyphIdentifier):
3104         * svg/SVGHKernElement.cpp:
3105         (WebCore::SVGHKernElement::insertedIntoDocument):
3106         (WebCore::SVGHKernElement::removedFromDocument):
3107         * svg/SVGStyleElement.cpp:
3108         (WebCore::SVGStyleElement::type):
3109         (WebCore::SVGStyleElement::setType):
3110         (WebCore::SVGStyleElement::media):
3111         (WebCore::SVGStyleElement::setMedia):
3112         (WebCore::SVGStyleElement::title):
3113         (WebCore::SVGStyleElement::setTitle):
3114         (WebCore::SVGStyleElement::parseMappedAttribute):
3115         * svg/SVGStyledElement.cpp:
3116         (WebCore::mapAttributeToCSSProperty):
3117         (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName):
3118         * svg/SVGStyledElement.h:
3119
3120 2009-12-17  Adam Roben  <aroben@apple.com>
3121
3122         Chromium build fix VI
3123
3124         * svg/animation/SMILTimeContainer.h: Added now-needed #include.
3125
3126 2009-12-17  Adam Roben  <aroben@apple.com>
3127
3128         Chromium build fix V
3129
3130         * platform/KURLGoogle.cpp: Added now-needed #include.
3131
3132 2009-12-17  Adam Roben  <aroben@apple.com>
3133
3134         Chromium build fix IV
3135
3136         * loader/CrossOriginPreflightResultCache.h: Added now-needed
3137         #includes.
3138
3139 2009-12-17  Adam Roben  <aroben@apple.com>
3140
3141         Chromium build fix III
3142
3143         * platform/graphics/Font.h: Added now-needed #include.
3144
3145 2009-12-17  Adam Roben  <aroben@apple.com>
3146
3147         Chromium build fix II
3148
3149         * dom/EventTarget.h: Added now-needed #include.
3150
3151 2009-12-17  Zoltan Horvath  <zoltan@webkit.org>
3152
3153         Reviewed by Eric Seidel.
3154
3155         Allow custom memory allocation control for js bindings
3156         https://bugs.webkit.org/show_bug.cgi?id=32655
3157
3158         Inherits the following classes from Noncopyable because these are instantiated 
3159         by 'new' and no need to be copyable:
3160
3161         class name                  - instantiated at:  WebCore/'location'
3162
3163         class ScriptCachedFrameData - history/CachedFrame.cpp:117
3164         class WebCoreJSClientData   - bindings/js/JSDOMWindowBase.cpp:162
3165         class ScheduledAction       - bindings/js/ScheduledAction.cpp:58
3166
3167         * bindings/js/JSDOMBinding.h:
3168         * bindings/js/ScheduledAction.h:
3169         * bindings/js/ScriptCachedFrameData.h:
3170
3171 2009-12-17  Adam Roben  <aroben@apple.com>
3172
3173         Chromium build fix
3174
3175         * dom/QualifiedName.h: Added now-needed #include of HashTraits.h
3176         (which itself #includes HashFunctions.h).
3177
3178 2009-12-17  Pavel Feldman  <pfeldman@dhcp-172-28-174-220.spb.corp.google.com>
3179
3180         Reviewed by Timothy Hatcher.
3181
3182         Web Inspector: Incorrect Doctype.
3183
3184         REGRESSION(4.0.4-TOT):Web Inspector: Incorrect Doctype
3185         https://bugs.webkit.org/show_bug.cgi?id=32671
3186
3187         * inspector/InspectorDOMAgent.cpp:
3188         (WebCore::InspectorDOMAgent::buildObjectForNode):
3189         * inspector/front-end/DOMAgent.js:
3190         (WebInspector.DOMNode):
3191
3192 2009-12-17  Benjamin Otte  <otte@gnome.org>
3193
3194         Reviewed by Adam Roben.
3195
3196         Don't include all JSC headers everywhere
3197         https://bugs.webkit.org/show_bug.cgi?id=32663
3198
3199         Remove HashMap HashSet and OwnPtr includes from PlatformString.h.
3200         Reduces code size of Gtk build by another 5%.
3201
3202         * platform/text/PlatformString.h:
3203
3204 2009-12-17  Adam Roben  <aroben@apple.com>
3205
3206         Mac/Qt build fixes
3207
3208         * platform/graphics/mac/Canvas3DLayer.mm:
3209         * platform/graphics/mac/GraphicsContext3DMac.cpp:
3210         * platform/qt/Localizations.cpp:
3211         Added missing #includes.
3212
3213 2009-12-17  Benjamin Otte  <otte@gnome.org>
3214
3215         Reviewed by Adam Roben.
3216
3217         Don't include all JSC headers everywhere
3218         https://bugs.webkit.org/show_bug.cgi?id=32663
3219
3220         PlatformString.h included almost all of JSC via runtime/Identifier.h.
3221         This patch gets rid of this include by forward-declaring the required
3222         classes instead.
3223         This reduces the build size of the object files on a Gtk debug build
3224         by 10%. The resulting libwebkit.so gets 5% smaller.
3225
3226         No new tests as it's just a build improvement.
3227
3228         * platform/gtk/LocalizedStringsGtk.cpp:
3229         include math.h here (it used to be pulled by JSC)
3230         * platform/text/PlatformString.h:
3231         * platform/text/String.cpp:
3232
3233 2009-12-17  Evan Martin  <evan@chromium.org>
3234
3235         Reviewed by Xan Lopez.
3236
3237         Always use all WebCore include paths in GtkWebKit.
3238
3239         With this patch, I can disable all optional features and still build.
3240
3241         * GNUmakefile.am:
3242
3243 2009-12-17  Yaar Schnitman  <yaar@chromium.org>
3244
3245         Reviewed by Darin Fisher.
3246
3247         Added WebPageSerializer to WebKit API.
3248
3249         https://bugs.webkit.org/show_bug.cgi?id=31737
3250
3251         * platform/text/StringBuilder.cpp: Added methods to make StringBuilder even more useful for large scale string concatenation.
3252         (WebCore::StringBuilder::clear):
3253         (WebCore::StringBuilder::length):
3254         * platform/text/StringBuilder.h:
3255
3256 2009-12-10  Philippe Normand  <pnormand@igalia.com>
3257
3258         Reviewed by Xan Lopez.
3259
3260         [GTK] Add controls for playing html5 video.
3261         https://bugs.webkit.org/show_bug.cgi?id=26304
3262
3263         Media controls UI, first step. This patch was written by Zan
3264         Dobersek. In addition I fixed the compilation errors and
3265         re-enabled some of the media tests involving the controls UI.
3266
3267         * GNUmakefile.am:
3268         * css/mediaControlsGtk.css: Added.
3269         * platform/graphics/Image.h:
3270         * platform/graphics/gtk/ImageGtk.cpp:
3271         (WebCore::getThemeIconFileName):
3272         (WebCore::loadResourceSharedBuffer):
3273         (WebCore::loadImageFromFile):
3274         (WebCore::Image::loadPlatformResource):
3275         (WebCore::Image::loadPlatformThemeIcon):
3276         * platform/gtk/RenderThemeGtk.cpp:
3277         (WebCore::getMediaElementFromRenderObject):
3278         (WebCore::getIconNameForTextDirection):
3279         (WebCore::RenderThemeGtk::initMediaStyling):
3280         (WebCore::RenderThemeGtk::RenderThemeGtk):
3281         (WebCore::RenderThemeGtk::~RenderThemeGtk):
3282         (WebCore::supportsFocus):
3283         (WebCore::RenderThemeGtk::baselinePosition):
3284         (WebCore::paintMozWidget):
3285         (WebCore::setToggleSize):
3286         (WebCore::RenderThemeGtk::adjustSliderThumbSize):
3287         (WebCore::RenderThemeGtk::gtkContainer):
3288         (WebCore::RenderThemeGtk::platformColorsDidChange):
3289         (WebCore::RenderThemeGtk::extraMediaControlsStyleSheet):
3290         (WebCore::paintMediaButton):
3291         (WebCore::RenderThemeGtk::paintMediaFullscreenButton):
3292         (WebCore::RenderThemeGtk::paintMediaMuteButton):
3293         (WebCore::RenderThemeGtk::paintMediaPlayButton):
3294         (WebCore::RenderThemeGtk::paintMediaSeekBackButton):
3295         (WebCore::RenderThemeGtk::paintMediaSeekForwardButton):
3296         (WebCore::RenderThemeGtk::paintMediaSliderTrack):
3297         (WebCore::RenderThemeGtk::paintMediaSliderThumb):
3298         * platform/gtk/RenderThemeGtk.h:
3299
3300 2009-12-17  Yael Aharon  <yael.aharon@nokia.com>
3301
3302         Reviewed by Kenneth Rohde Christiansen.
3303
3304         [Qt] support navigator.onLine and ononline/onoffline events.
3305         https://bugs.webkit.org/show_bug.cgi?id=32555
3306
3307         Hooked up Bearer Management to NetworkStateNotifier. This solution is available 
3308         only if QtMobility's Bearer Management is installed.
3309
3310         * WebCore.pro:
3311         * platform/network/NetworkStateNotifier.h:
3312         * platform/network/qt/NetworkStateNotifierPrivate.h: Added.
3313         * platform/network/qt/NetworkStateNotifierQt.cpp: Added.
3314         (WebCore::NetworkStateNotifierPrivate::NetworkStateNotifierPrivate):
3315         (WebCore::NetworkStateNotifierPrivate::onlineStateChanged):
3316         (WebCore::NetworkStateNotifierPrivate::~NetworkStateNotifierPrivate):
3317         (WebCore::NetworkStateNotifier::updateState):
3318         (WebCore::NetworkStateNotifier::NetworkStateNotifier):
3319
3320 2009-12-17  Pavel Feldman  <pfeldman@chromium.org>
3321
3322         Reviewed by Timothy Hatcher.
3323
3324         Web Inspector: Switch to 11px as default for source-code in WebKit.
3325
3326         https://bugs.webkit.org/show_bug.cgi?id=32646
3327
3328         * inspector/front-end/inspector.css:
3329
3330 2009-12-17  Simon Hausmann  <simon.hausmann@nokia.com>
3331
3332         Reviewed by Tor Arne Vestbø.
3333
3334         [Qt] Symbian build fix: Don't include QtXml/qxmlstream.h but omit the prefix, to
3335         make sure we pick up the header file from QtCore. That is where the implementation
3336         is compiled.
3337
3338         * dom/XMLTokenizer.h:
3339
3340 2009-12-17  Martin Robinson  <martin.james.robinson@gmail.com>
3341
3342         Reviewed by Gustavo Noronha Silva.
3343
3344         [GTK] WebKit GTK needs a wrapper for ref counted glib/gobject structs
3345         https://bugs.webkit.org/show_bug.cgi?id=21599
3346
3347         Add GRefPtr support for GTK types to WebCore, as JSC does not link against
3348         GTK+. Also convert PopupMenu::m_poup from a raw pointer to a GRefPtr.
3349
3350         No new tests as functionality has not changed.
3351
3352         * GNUmakefile.am:
3353         * platform/PopupMenu.h:
3354         * platform/gtk/GRefPtrGtk.cpp: Added.
3355         (WTF::refGPtr):
3356         (WTF::derefGPtr):
3357         * platform/gtk/GRefPtrGtk.h: Added.
3358         * platform/gtk/PopupMenuGtk.cpp:
3359         (WebCore::PopupMenu::PopupMenu):
3360         (WebCore::PopupMenu::~PopupMenu):
3361         (WebCore::PopupMenu::show):
3362         (WebCore::PopupMenu::hide):
3363         (WebCore::PopupMenu::menuRemoveItem):
3364
3365 2009-12-17  Mikhail Naganov  <mnaganov@chromium.org>
3366
3367         Reviewed by Pavel Feldman.
3368
3369         Advice links to source code in CPU profiler to open in debugger,
3370         not in resources tab.
3371
3372         Also work around the case when resources are disabled, but scripts are present.
3373
3374         https://bugs.webkit.org/show_bug.cgi?id=32610
3375
3376         * inspector/front-end/Panel.js:
3377         (WebInspector.Panel.prototype.updateMainViewWidth):
3378         (WebInspector.Panel.prototype.canShowSourceLineForURL):
3379         (WebInspector.Panel.prototype.showSourceLineForURL):
3380         * inspector/front-end/ProfileDataGridTree.js:
3381         (WebInspector.ProfileDataGridNode.prototype.createCell):
3382         * inspector/front-end/ResourcesPanel.js:
3383         (WebInspector.ResourcesPanel.prototype.canShowSourceLineForURL):
3384         (WebInspector.ResourcesPanel.prototype.showSourceLineForURL):
3385         * inspector/front-end/ScriptsPanel.js:
3386         (WebInspector.ScriptsPanel.prototype.scriptForURL):
3387         (WebInspector.ScriptsPanel.prototype.canShowSourceLineForURL):
3388         (WebInspector.ScriptsPanel.prototype.showSourceLineForURL):
3389         (WebInspector.ScriptsPanel.prototype._showScriptOrResource):
3390         * inspector/front-end/inspector.js:
3391         (WebInspector.documentClick.followLink):
3392         (WebInspector.documentClick):
3393         (WebInspector._choosePanelToShowSourceLineForURL):
3394         (WebInspector.canShowSourceLineForURL):
3395         (WebInspector.showSourceLineForURL):
3396
3397 2009-12-15  Philippe Normand  <pnormand@igalia.com>
3398
3399         Reviewed by Xan Lopez.
3400
3401         [GTK] display FPS stats for video element
3402         https://bugs.webkit.org/show_bug.cgi?id=32560
3403
3404         Display FPS statistics if WEBKIT_DEBUG environment variable
3405         contains the Media log category. This feature requires a very
3406         recent (>= 0.10.18) version of gst-plugins-bad.
3407
3408         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3409         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
3410         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
3411         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
3412         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
3413
3414 2009-11-11  Philippe Normand  <pnormand@igalia.com>
3415
3416         Reviewed by Gustavo Noronha Silva.
3417
3418         [GStreamer] Should emit {networkState,readyState,volume,time,size,rate,duration}Changed signals
3419         https://bugs.webkit.org/show_bug.cgi?id=30377
3420
3421         Emit volumeChanged and durationChanged upon notification from
3422         GStreamer.
3423
3424         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3425         (WebCore::mediaPlayerPrivateMessageCallback):
3426         (WebCore::mediaPlayerPrivateVolumeCallback):
3427         (WebCore::notify_volume_idle_cb):
3428         (WebCore::MediaPlayerPrivate::didEnd):
3429         (WebCore::MediaPlayerPrivate::durationChanged):
3430         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
3431         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
3432
3433 2009-12-16  Philippe Normand  <pnormand@igalia.com>
3434
3435         Reviewed by Gustavo Noronha Silva.
3436
3437         [GTK] segfault during volume notification
3438         https://bugs.webkit.org/show_bug.cgi?id=32603
3439
3440         Emit volumeChanged and durationChanged upon notification from
3441         GStreamer. Also don't reset the volume property on playbin, it is
3442         not needed as it is 1.0 by default both on playbin and in the
3443         MediaPlayer.
3444
3445         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3446         (WebCore::mediaPlayerPrivateMessageCallback):
3447         (WebCore::mediaPlayerPrivateVolumeChangedCallback):
3448         (WebCore::notifyVolumeIdleCallback):
3449         (WebCore::doGstInit):
3450         (WebCore::MediaPlayerPrivate::isAvailable):
3451         (WebCore::MediaPlayerPrivate::MediaPlayerPrivate):
3452         (WebCore::MediaPlayerPrivate::~MediaPlayerPrivate):
3453         (WebCore::MediaPlayerPrivate::volumeChanged):
3454         (WebCore::MediaPlayerPrivate::didEnd):
3455         (WebCore::MediaPlayerPrivate::durationChanged):
3456         (WebCore::mimeTypeCache):
3457         (WebCore::MediaPlayerPrivate::createGSTPlayBin):
3458         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.h:
3459
3460 2009-12-17  Evan Martin  <evan@chromium.org>
3461
3462         Reviewed by Xan Lopez.
3463
3464         gtk: always use standard include paths, regardless of settings.
3465         WebKit style is to wrap the body of a header in #if ENABLE(FOO),
3466         so they're always safe to include whether the features are enabled or
3467         not.
3468
3469         This fixes building with --disable-database and other flags.
3470
3471         * GNUmakefile.am:
3472
3473 2009-12-17  Gustavo Noronha Silva  <gustavo.noronha@collabora.co.uk>
3474
3475         Unreviewed. Build fixes for make distcheck.
3476
3477         * GNUmakefile.am:
3478
3479 2009-12-17  Philippe Normand  <pnormand@igalia.com>
3480
3481         Rubber-stamped by Gustavo Noronha Silva.
3482
3483         Trivial WebKit coding style fix.
3484
3485         * platform/graphics/gtk/MediaPlayerPrivateGStreamer.cpp:
3486         (WebCore::MediaPlayerPrivate::paint):
3487
3488 2009-12-15 MORITA Hajime <morrita@gmail.com>
3489
3490         Reviewed by Eric Seidel.
3491
3492         Bug 28306: double-clicking a word inside <b> beside newline select two words
3493         https://bugs.webkit.org/show_bug.cgi?id=28306
3494         
3495         SimplifiedBackwardsTextIterator missed trailing whitespaces just
3496         before folding line-break, which is used to detect word
3497         boundaries. This fix checks strings on RenderText and expand text
3498         range on SimplifiedBackwardsTextIterator to include trailing
3499         whitespaces if availble.
3500
3501         Test: editing/selection/doubleclick-beside-cr-span.html
3502
3503         * editing/TextIterator.cpp:
3504         (WebCore::collapsedSpaceLength):
3505         (WebCore::maxOffsetIncludingCollapsedSpaces):
3506         (WebCore::SimplifiedBackwardsTextIterator::advance):
3507
3508 2009-12-16  Fumitoshi Ukai  <ukai@chromium.org>
3509
3510         Reviewed by Alexey Proskuryakov.
3511
3512         Fix flakiness in WebSocket handshake console message.
3513         https://bugs.webkit.org/show_bug.cgi?id=32598
3514
3515         In chromium, LayoutTests/websocket/tests/handshake-error.html is
3516         flaky, because it outputs the following console message several times:
3517           CONSOLE MESSAGE: line 0: Unexpected response code:101
3518         Update m_mode in WebSocketHandshake correctly: Once it finds
3519         error in handshake message, set m_mode to Failed and don't try
3520         reading handshake message again.  If handshake message is not yet
3521         fully received, set m_mode to Incomplete, so next didReceiveData()
3522         will try to check handshake message again.
3523
3524         * websockets/WebSocketChannel.cpp:
3525         (WebCore::WebSocketChannel::didReceiveData):
3526         * websockets/WebSocketHandshake.cpp:
3527         (WebCore::WebSocketHandshake::readServerHandshake):
3528
3529 2009-12-16  Jon Honeycutt  <jhoneycutt@apple.com>
3530
3531         MSAA: Accessibility role of text nodes is wrong
3532
3533         https://bugs.webkit.org/show_bug.cgi?id=32631
3534         <rdar://problem/7369084>
3535
3536         Reviewed by Alice Liu.
3537
3538         Test: platform/win/accessibility/text-role.html
3539
3540         * accessibility/AccessibilityObject.h:
3541         (WebCore::):
3542         Add a new role to the enum.
3543         (WebCore::AccessibilityObject::roleValueForMSAA):
3544         Declare a function to return the accessibility role for MSAA; the base
3545         implementation returns the old role value.
3546
3547         * accessibility/AccessibilityRenderObject.cpp:
3548         (WebCore::AccessibilityRenderObject::AccessibilityRenderObject):
3549         Initialize m_roleForMSAA.
3550         (WebCore::AccessibilityRenderObject::roleValueForMSAA):
3551         If m_roleForMSAA has been set, return it. If the renderer is a
3552         RenderText, set the role to EditableTextRole to match IE and Firefox.
3553         Otherwise, set the role for MSAA to the old role value.
3554
3555         * accessibility/AccessibilityRenderObject.h:
3556         Add a member to hold the role for MSAA, and declare an override of
3557         roleValueForMSAA().
3558
3559 2009-12-16  Eric Seidel  <eric@webkit.org>
3560
3561         No review, rolling out r52206.
3562         http://trac.webkit.org/changeset/52206
3563         https://bugs.webkit.org/show_bug.cgi?id=31187
3564
3565         This broke pixel tests on Mac.  Presumably the code in
3566         ImageCG is wrong here.
3567
3568         * platform/graphics/BitmapImage.h:
3569         * platform/graphics/GeneratedImage.cpp:
3570         (WebCore::GeneratedImage::drawPattern):
3571         * platform/graphics/GeneratedImage.h:
3572         * platform/graphics/Image.cpp:
3573         (WebCore::Image::drawTiled):
3574         * platform/graphics/Image.h:
3575         * platform/graphics/cairo/ImageCairo.cpp:
3576         (WebCore::Image::drawPattern):
3577         * platform/graphics/cg/ImageCG.cpp:
3578         (WebCore::Image::drawPattern):
3579         * platform/graphics/haiku/ImageHaiku.cpp:
3580         (WebCore::Image::drawPattern):
3581         * platform/graphics/qt/ImageQt.cpp:
3582         (WebCore::Image::drawPattern):
3583         * platform/graphics/skia/ImageSkia.cpp:
3584         (WebCore::Image::drawPattern):
3585         * platform/graphics/wince/GraphicsContextWince.cpp:
3586         (WebCore::GraphicsContext::drawBitmapPattern):
3587         * platform/graphics/wince/ImageBufferWince.cpp:
3588         (WebCore::):
3589         (WebCore::BufferedImage::drawPattern):
3590         * platform/graphics/wx/ImageWx.cpp:
3591         (WebCore::BitmapImage::drawPattern):
3592         (WebCore::Image::drawPattern):
3593
3594 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
3595
3596         Reviewed by David Levin.
3597
3598         https://bugs.webkit.org/show_bug.cgi?id=32637
3599         [V8] Generate most named property getters.
3600
3601         Covered by existing tests.
3602
3603         * bindings/scripts/CodeGeneratorV8.pm: Added generation of SetNamedPropertyHandler call.
3604         * bindings/v8/V8DOMWrapper.cpp:
3605         (WebCore::V8DOMWrapper::getTemplate): Removed now-generated SetNamedPropertyHandler callsites.
3606
3607 2009-12-16  Luiz Agostini  <luiz.agostini@openbossa.org>
3608
3609         Reviewed by Kenneth Rohde Christiansen.
3610
3611         [Qt] Implement combobox delegate for Qt
3612         https://bugs.webkit.org/show_bug.cgi?id=32550
3613
3614         Abstract popup menu factory.
3615
3616         A static method from QtAbstractPopupMenu is used to create its instances. If a factory
3617         has been suplied to class QtAbstractPopupMenu the factory will be used to create the
3618         objects. If not an instance of QtFallbackPopupMenu will be created.
3619
3620         The objective is to make it easy to replace the combobox popup at WebCore layer providing
3621         support to the combobox popup delegation API. Future patches will make it possible to
3622         replace the combobox popup at WebKit layer.
3623
3624         No behavior changes.
3625
3626         * platform/qt/PopupMenuQt.cpp:
3627         (WebCore::PopupMenu::PopupMenu):
3628         * platform/qt/QtAbstractWebPopup.cpp:
3629         (WebCore::QtAbstractWebPopup::setFactory):
3630         (WebCore::QtAbstractWebPopup::create):
3631         * platform/qt/QtAbstractWebPopup.h:
3632         * platform/qt/QtFallbackWebPopup.cpp:
3633
3634 2009-12-16  Mark Rowe  <mrowe@apple.com>
3635
3636         Build fix.  Disable debug variants of WebKit frameworks.
3637
3638         * WebCore.xcodeproj/project.pbxproj:
3639
3640 2009-12-16  Enrica Casucci  <enrica@apple.com>
3641
3642         Reviewed by Eric Seidel.
3643
3644         Right clicking in a table cell creates a selection that extends into the next cell.
3645         <rdar://problem/5565465>
3646         https://bugs.webkit.org/show_bug.cgi?id=32622
3647         
3648         Avoid extending the selection to the next cell if we start from an empty cell.
3649
3650         Test: editing/selection/empty-cell-right-click.html
3651
3652         * editing/TypingCommand.cpp:
3653         (WebCore::TypingCommand::deleteKeyPressed): Replaced the code that check for empty table cell
3654         with a call to the new function.
3655         * editing/VisibleSelection.cpp:
3656         (WebCore::VisibleSelection::setStartAndEndFromBaseAndExtentRespectingGranularity): Extends the
3657         selection only if we are not starting from an empty table cell.
3658         * editing/htmlediting.cpp:
3659         (WebCore::isEmptyTableCell): Added a function since this check is performed now in two places.
3660         * editing/htmlediting.h: Added isEmptyTableCell declaration.
3661
3662 2009-12-16  Dirk Schulze  <krit@webkit.org>
3663
3664         Reviewed by Nikolas Zimmermann.
3665
3666         feMerge crahses if feMergeNodes attribute in is empty
3667         https://bugs.webkit.org/show_bug.cgi?id=32489
3668
3669         SVGFEMergeElement only stored pointers to all effects of it's nodes
3670         in a list. But it should store the RefPtr otherwise the effects get
3671         dereferenced and WebKit crashes.
3672         I also made a short clean-up in SVGFilterBuilder. No change in
3673         functionality.
3674
3675         Test: I updated svg/custom/empty-merge.svg to cover this problem.
3676
3677         * svg/SVGFEMergeElement.cpp:
3678         (WebCore::SVGFEMergeElement::build):
3679         * svg/graphics/filters/SVGFEMerge.cpp:
3680         (WebCore::FEMerge::FEMerge):
3681         (WebCore::FEMerge::create):
3682         (WebCore::FEMerge::mergeInputs):
3683         (WebCore::FEMerge::setMergeInputs):
3684         * svg/graphics/filters/SVGFEMerge.h:
3685         * svg/graphics/filters/SVGFilterBuilder.cpp:
3686         (WebCore::SVGFilterBuilder::add):
3687
3688 2009-12-16  Brian Weinstein  <bweinstein@apple.com>
3689
3690         Reviewed by Timothy Hatcher.
3691
3692         Part of <http://webkit.org/b/32568>.
3693         Web Inspector: Context Menus should be used in more places.
3694         
3695         Add a context menu entry in the console to clear the console. This
3696         is only shown when there is no user selection of text, because if
3697         there is selection of the text, then we want to give the user the Copy +
3698         Spell Check context menu that they are used to.
3699
3700         * English.lproj/localizedStrings.js: Added "Clear Console".
3701         * inspector/front-end/ConsoleView.js:
3702         (WebInspector.ConsoleView.prototype._handleContextMenuEvent):
3703
3704 2009-12-16  Brian Weinstein  <bweinstein@apple.com>
3705
3706         Reviewed by Pavel Feldman.
3707
3708         Fixes <https://bugs.webkit.org/show_bug.cgi?id=32621>.
3709         Web Inspector: [REGRESSION (52095-52100)] Resources filter disappears when switching 
3710         from / to resources panel.
3711
3712         Changed style in sidebar-resizer-vertical, because if the min-height was 100%, we start
3713         to cover the scope bar.
3714
3715         * inspector/front-end/inspector.css:
3716
3717 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
3718
3719         Reviewed by Adam Barth.
3720
3721         [V8] Switch all indexers to be generated.
3722         https://bugs.webkit.org/show_bug.cgi?id=32569
3723
3724         Covered by existing tests.
3725
3726         * WebCore.gypi: Remove V8FileListCustom.cpp and V8ClientRecListCustom.cpp,
3727             as they are now generated.
3728         * bindings/v8/V8DOMWrapper.cpp:
3729         (WebCore::V8DOMWrapper::getTemplate): Remove customization of ClientRectList,
3730             FileList, and DataGridColumnList templates.
3731         * bindings/v8/custom/V8ClientRectListCustom.cpp: Removed.
3732         * bindings/v8/custom/V8CustomBinding.h: Remove custom indexer getter decls.
3733         * bindings/v8/custom/V8DataGridColumnListCustom.cpp: Remove indexer getter definition.
3734         * bindings/v8/custom/V8FileListCustom.cpp: Removed.
3735
3736 2009-12-16  anton muhin  <antonm@chromium.org>
3737
3738         Reviewed by Darin Adler.
3739
3740         [dom] make dom/Node.cpp compile if DUMP_NODE_STATISTICS is on
3741         https://bugs.webkit.org/show_bug.cgi?id=32617
3742
3743         * dom/Node.cpp:
3744         (WebCore::Node::dumpStatistics):
3745
3746 2009-12-16  Dimitri Glazkov  <dglazkov@chromium.org>
3747
3748         Reviewed by Darin Fisher.
3749
3750         [V8] There is no such thing as HTMLSelectElementCollection.
3751         https://bugs.webkit.org/show_bug.cgi?id=32616
3752
3753         Refactoring, covered by existing tests.
3754
3755         * WebCore.gypi: Removed V8HTMLSelectElementCollectionCustom.cpp
3756         * bindings/v8/V8Collection.h: Removed one-off template.
3757         * bindings/v8/V8DOMWrapper.cpp:
3758         (WebCore::V8DOMWrapper::getTemplate): Renamed all references to HTMLSelectElementCollection
3759             to HTMLSelectElement.
3760         * bindings/v8/custom/V8CustomBinding.h: Renamed custom indexer decls.
3761         * bindings/v8/custom/V8HTMLSelectElementCollectionCustom.cpp: Removed.
3762         * bindings/v8/custom/V8HTMLSelectElementCustom.cpp: Moved code as-is from
3763             V8HTMLSelectElementCollectionCustom.cpp
3764
3765 2009-12-16  Dan Winship  <danw@gnome.org>
3766
3767         Reviewed by Gustavo Noronha Silva.
3768
3769         [Gtk] Content-Encoding support
3770
3771         https://bugs.webkit.org/show_bug.cgi?id=25855
3772
3773         * platform/network/soup/ResourceHandleSoup.cpp:
3774         (WebCore::startHttp): Don't force "Accept-Encoding: identity" any
3775         more
3776
3777 2009-12-16  Benjamin Otte  <otte@gnome.org>
3778
3779         Reviewed by Darin Adler.
3780
3781         Get rid of the phase argument to Image::drawPattern.
3782         https://bugs.webkit.org/show_bug.cgi?id=31187
3783
3784         The argument can be expressed equally well as part of the
3785         patternTransform. All backends but the Qt one did exactly that
3786         manually anyway.
3787
3788         * platform/graphics/BitmapImage.h:
3789         * platform/graphics/GeneratedImage.cpp:
3790         (WebCore::GeneratedImage::drawPattern):
3791         * platform/graphics/GeneratedImage.h:
3792         * platform/graphics/Image.cpp:
3793         (WebCore::Image::drawTiled):
3794         * platform/graphics/Image.h:
3795         * platform/graphics/cairo/ImageCairo.cpp:
3796         (WebCore::Image::drawPattern):
3797         * platform/graphics/cg/ImageCG.cpp:
3798         (WebCore::Image::drawPattern):
3799         * platform/graphics/haiku/ImageHaiku.cpp:
3800         (WebCore::Image::drawPattern):
3801         * platform/graphics/qt/ImageQt.cpp:
3802         (WebCore::Image::drawPattern):
3803         * platform/graphics/skia/ImageSkia.cpp:
3804         (WebCore::Image::drawPattern):
3805         * platform/graphics/wince/GraphicsContextWince.cpp:
3806         (WebCore::GraphicsContext::drawBitmapPattern):
3807         * platform/graphics/wince/ImageBufferWince.cpp:
3808         (WebCore::):
3809         (WebCore::BufferedImage::drawPattern):
3810         * platform/graphics/wx/ImageWx.cpp:
3811         (WebCore::BitmapImage::drawPattern):
3812         (WebCore::Image::drawPattern):
3813
3814 2009-12-16  Kenneth Russell  <kbr@google.com>
3815
3816         Reviewed by Darin Fisher.
3817
3818         Performance problems with index validation code for drawElements
3819         https://bugs.webkit.org/show_bug.cgi?id=32466
3820
3821         Added a cache of the maximum index for each element type to
3822         WebGLBuffer, querying it before iterating through the indices in
3823         the client-side copy of the buffer's data. Hoisted checks of the
3824         size of the element array itself into validateElementArraySize to
3825         avoid duplicating code.
3826
3827         The performance improvement has been measured with manual tests.
3828         Existing layout tests cover the index validation functionality
3829         and continue to pass as before.
3830
3831         * html/canvas/WebGLBuffer.cpp:
3832         (WebCore::WebGLBuffer::WebGLBuffer):
3833         (WebCore::WebGLBuffer::associateBufferData):
3834         (WebCore::WebGLBuffer::associateBufferSubData):
3835         (WebCore::WebGLBuffer::getCachedMaxIndex):
3836         (WebCore::WebGLBuffer::setCachedMaxIndex):
3837         (WebCore::WebGLBuffer::clearCachedMaxIndices):
3838         * html/canvas/WebGLBuffer.h:
3839         * html/canvas/WebGLRenderingContext.cpp:
3840         (WebCore::WebGLRenderingContext::validateElementArraySize):
3841         (WebCore::WebGLRenderingContext::validateIndexArrayConservative):
3842         (WebCore::WebGLRenderingContext::validateIndexArrayPrecise):
3843         (WebCore::WebGLRenderingContext::validateRenderingState):
3844         (WebCore::WebGLRenderingContext::drawElements):
3845         * html/canvas/WebGLRenderingContext.h:
3846
3847 2009-12-16  Zelidrag Hornung  <zelidrag@chromium.org>
3848
3849         Reviewed by Darin Adler.
3850
3851         https://bugs.webkit.org/show_bug.cgi?id=32261
3852         Added ability to separate the autocomplete suggestion previewing from
3853         the actual accepting of the suggested value in HTMLInputElement.
3854         This element (it's single line text incarnation) can now
3855         be put in suggestion mode where renderer might display the suggested
3856         value without making it automatically exposed to JavaScript.
3857
3858         No new tests. This new methods are not exposed yet. It's use will be
3859         platform specific. PopupMenu and Chromium specific changes will be
3860         separated based on Darin Adler's comments.
3861
3862         * dom/InputElement.h:
3863         (WebCore::InputElementData::suggestedValue):
3864         (WebCore::InputElementData::setSuggestedValue):
3865         * html/HTMLInputElement.cpp:
3866         (WebCore::HTMLInputElement::suggestedValue):
3867         (WebCore::HTMLInputElement::setSuggestedValue):
3868         (WebCore::HTMLInputElement::setValue):
3869         (WebCore::HTMLInputElement::setValueFromRenderer):
3870         * html/HTMLInputElement.h:
3871         * rendering/RenderTextControlSingleLine.cpp:
3872         (WebCore::RenderTextControlSingleLine::updateFromElement):
3873         * wml/WMLInputElement.cpp:
3874         (WebCore::WMLInputElement::suggestedValue):
3875         * wml/WMLInputElement.h:
3876
3877 2009-12-16  Pavel Feldman  <pfeldman@chromium.org>
3878
3879         Reviewed by Timothy Hatcher.
3880
3881         Web Inspector: Make Elements tree, properties section and resources
3882         view monospace.
3883
3884         https://bugs.webkit.org/show_bug.cgi?id=32609
3885
3886         * inspector/front-end/ElementsPanel.js:
3887         * inspector/front-end/PropertiesSection.js:
3888         (WebInspector.PropertiesSection):
3889         * inspector/front-end/ResourceView.js:
3890         (WebInspector.ResourceView):
3891         * inspector/front-end/inspector.css:
3892
3893 2009-12-16  Dirk Schulze  <krit@webkit.org>
3894
3895         Reviewed by Darin Adler.
3896
3897         sourceGraphic wrong if positive x,y is >0 and objectBB is selected on Filter
3898         https://bugs.webkit.org/show_bug.cgi?id=32575
3899
3900         On SVG Filters, the rest of the source graphic gets clipped to the filter
3901         rest. This helps us to minimize the size of intermediate ImageBuffers. If
3902         the position moves to the right or to the bottom, we have to adjust the
3903         GraphicContext of this intermediate ImageBuffer.
3904         This patch fixes the adjustment of the context, according to the clipping.
3905
3906         Test: svg/filters/filter-source-position.svg
3907
3908         * svg/graphics/SVGResourceFilter.cpp:
3909         (WebCore::SVGResourceFilter::prepareFilter):
3910
3911 2009-12-16  Enrica Casucci  <enrica@apple.com>
3912
3913         Reviewed by Adele Peterson.
3914
3915         CrashTracer: [USER] 1 crash in Safari at com.apple.WebCore: WebCore::endsOfNodeAreVisuallyDistinctPositions + 115
3916         <rdar://problem/7467108>
3917         https://bugs.webkit.org/show_bug.cgi?id=32590
3918
3919         If the element is a button there is no need to look at the children to calculate the caret position.
3920         
3921         Test: editing/selection/button-right-click.html
3922
3923         * dom/Position.cpp:
3924         (WebCore::Position::getInlineBoxAndOffset): Avoid calling recursively this method,
3925         when starting from a button element.
3926
3927 2009-12-16  Luiz Agostini  <luiz.agostini@openbossa.org>
3928
3929         Reviewed by Kenneth Rohde Christiansen.
3930
3931         [Qt] Implement combobox delegate for Qt
3932         https://bugs.webkit.org/show_bug.cgi?id=32550
3933
3934         Refactoring of class QWebPopup.
3935
3936         Class QWebPopup has been split in QtAbstractWebPopup and QtFallbackWebPopup.
3937         Both new classes are now in corresponding files and files QWebPopup.* have been removed.
3938
3939         Custom combo popup classes will inherit from QtAbstractWebPopup. It is not the public API as it is
3940         in WebCore and will not be visible by users of QtWebKit. It will be used in implementation of
3941         public QtWebKit combobox popup delegation API.
3942
3943         Class QtFallbackWebPopup inherits from QtAbstractWebPopup and implements the currently used combobox popup.
3944         It needs to be improved to provide standard features that are missing like style or indentation.
3945
3946         No behavior changes.
3947
3948         * WebCore.pro:
3949         * platform/PopupMenu.h:
3950         * platform/qt/PopupMenuQt.cpp:
3951         (WebCore::PopupMenu::PopupMenu):
3952         * platform/qt/QWebPopup.cpp: Removed.
3953         * platform/qt/QWebPopup.h: Removed.
3954         * platform/qt/QtAbstractWebPopup.cpp: Added.
3955         (WebCore::QtAbstractWebPopup::QtAbstractWebPopup):
3956         (WebCore::QtAbstractWebPopup::~QtAbstractWebPopup):
3957         (WebCore::QtAbstractWebPopup::client):
3958         * platform/qt/QtAbstractWebPopup.h: Added.
3959         * platform/qt/QtFallbackWebPopup.cpp: Added.
3960         (WebCore::QtFallbackWebPopup::QtFallbackWebPopup):
3961         (WebCore::QtFallbackWebPopup::show):
3962         (WebCore::QtFallbackWebPopup::populate):
3963         (WebCore::QtFallbackWebPopup::showPopup):
3964         (WebCore::QtFallbackWebPopup::hidePopup):
3965         (WebCore::QtFallbackWebPopup::activeChanged):
3966         * platform/qt/QtFallbackWebPopup.h: Added.
3967         (WebCore::QtFallbackWebPopup::hide):
3968
3969 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
3970
3971         Reviewed by Timothy Hatcher.
3972
3973         Web Inspector: beautify HTTP info section.
3974
3975         https://bugs.webkit.org/show_bug.cgi?id=32583
3976
3977         * English.lproj/localizedStrings.js:
3978         * inspector/front-end/ResourceView.js:
3979         (WebInspector.ResourceView):
3980         (WebInspector.ResourceView.prototype._refreshURL):
3981         (WebInspector.ResourceView.prototype._refreshHTTPInformation):
3982         * inspector/front-end/inspector.css:
3983
3984 2009-12-13  Roland Steiner  <rolandsteiner@chromium.org>
3985
3986         Reviewed by Adam Barth.
3987
3988         Fix crash when encountering illegal HTML within a continuation inside <ruby>.
3989         (https://bugs.webkit.org/show_bug.cgi?id=32316)
3990
3991         Avoid having the anonymous blocks utilized in the ruby renderers being
3992         re-used as continuation blocks.
3993         Avoid having ruby runs collected as "leftover blocks".
3994
3995         Test: fast/ruby/ruby-illegal.html
3996
3997         * rendering/RenderRuby.h:
3998         (WebCore::RenderRubyAsInline::removeLeftoverAnonymousBlock): mustn't be called
3999         (WebCore::RenderRubyAsInline::isRuby): made private
4000         (WebCore::RenderRubyAsInline::renderName): made private
4001         (WebCore::RenderRubyAsInline::createsAnonymousWrapper): return true
4002         (WebCore::RenderRubyAsBlock::removeLeftoverAnonymousBlock): mustn't be called
4003         (WebCore::RenderRubyAsBlock::isRuby): made private
4004         (WebCore::RenderRubyAsBlock::renderName): made private
4005         (WebCore::RenderRubyAsBlock::createsAnonymousWrapper): return true
4006         * rendering/RenderRubyRun.h:
4007         (WebCore::RenderRubyRun::removeLeftoverAnonymousBlock): avoid
4008         (WebCore::RenderRubyRun::isRubyRun): made private
4009         (WebCore::RenderRubyRun::renderName): made private
4010         (WebCore::RenderRubyRun::createsAnonymousWrapper): return true
4011
4012 2009-12-15  Nate Chapin  <japhet@chromium.org>
4013
4014         Reviewed by Darin Adler.
4015
4016         Rename skipCanLoadCheck to skipSecurityCheck in a bunch of places in WebCore/loader.
4017
4018         https://bugs.webkit.org/show_bug.cgi?id=32529
4019
4020         * loader/Cache.cpp:
4021         (WebCore::Cache::requestUserCSSStyleSheet):
4022         * loader/CachedImage.cpp:
4023         (WebCore::CachedImage::load):
4024         * loader/CachedResource.cpp:
4025         (WebCore::CachedResource::load):
4026         * loader/CachedResource.h:
4027         (WebCore::CachedResource::load):
4028         * loader/DocumentThreadableLoader.cpp:
4029         (WebCore::DocumentThreadableLoader::DocumentThreadableLoader):
4030         (WebCore::DocumentThreadableLoader::makeSimpleCrossOriginAccessRequest):
4031         (WebCore::DocumentThreadableLoader::makeCrossOriginAccessRequestWithPreflight):
4032         (WebCore::DocumentThreadableLoader::preflightSuccess):
4033         (WebCore::DocumentThreadableLoader::loadRequest):
4034         * loader/DocumentThreadableLoader.h:
4035         * loader/FrameLoaderTypes.h:
4036         (WebCore::):
4037         * loader/Request.cpp:
4038         (WebCore::Request::Request):
4039         * loader/Request.h:
4040         (WebCore::Request::shouldDoSecurityCheck):
4041         * loader/SubresourceLoader.cpp:
4042         (WebCore::SubresourceLoader::create):
4043         * loader/SubresourceLoader.h:
4044         * loader/loader.cpp:
4045         (WebCore::Loader::load):
4046         (WebCore::Loader::Host::servePendingRequests):
4047         * loader/loader.h:
4048
4049 2009-12-15  Dan Bernstein  <mitz@apple.com>
4050
4051         Reviewed by Darin Adler.
4052
4053         <rdar://problem/7470452> Safari/Chromium crashes on complicated @font-face rule
4054         https://bugs.webkit.org/show_bug.cgi?id=32257
4055
4056         Test: fast/css/font-face-unused-source-loaded.html
4057
4058         The loading of a font resource caused a CSSFontFace that had the resource in one of its
4059         sources, but wasn’t using it (due to using an earlier source) to invalidate its
4060         CSSSegmentedFontFaces. This caused FontData for the active source (the one that did not just
4061         finish loading) to be deleted, but that went unnoticed by Font::operator==(), since the
4062         corresponding FontFallbackLists were not in the loading state. The fix is for CSSFontFace to
4063         ignore loads from unused sources.
4064
4065         * css/CSSFontFace.cpp:
4066         (WebCore::CSSFontFace::fontLoaded): Bail out if the loaded source is not the active source.
4067         (WebCore::CSSFontFace::getFontData): Set m_activeSource to the source that supplied the
4068             FontData.
4069         * css/CSSFontFace.h:
4070         (WebCore::CSSFontFace::CSSFontFace): Initialize m_activeSource.
4071
4072 2009-12-15  Yael Aharon  <yael.aharon@nokia.com>
4073
4074         Reviewed by Kenneth Rohde Christiansen.
4075
4076         [Qt] Cannot load flash files from a local file.
4077         https://bugs.webkit.org/show_bug.cgi?id=32572
4078
4079         When loading the main resource and its mime type is application/octet-stream,
4080         use the file extenstion to check if it is a supported plugin.
4081
4082         No new tests were added since any existing swf file can be used as a manual test.
4083
4084         * loader/MainResourceLoader.cpp:
4085         (WebCore::MainResourceLoader::didReceiveResponse):
4086         * loader/MainResourceLoader.h:
4087         * plugins/PluginDatabase.h:
4088
4089 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
4090
4091         Reviewed by Timothy Hatcher.
4092
4093         Fixes <https://bugs.webkit.org/show_bug.cgi?id=18498>.
4094         REGRESSION: Tips are not shown for resources anymore.
4095         
4096         As discussed in the bug, Tips are not coming back, and the feature
4097         will be moved to the audits panel. This patch is to remove the Tips
4098         code and the resources that it needed.
4099
4100         * WebCore.gypi: Removed tips files.
4101         * inspector/front-end/Images/tipBalloon.png: Removed.
4102         * inspector/front-end/Images/tipBalloonBottom.png: Removed.
4103         * inspector/front-end/Images/tipIcon.png: Removed.
4104         * inspector/front-end/Images/tipIconPressed.png: Removed.
4105         * inspector/front-end/Resource.js: Removed tips code.
4106         (WebInspector.Resource.prototype.set finished): 
4107         * inspector/front-end/WebKit.qrc: Removed tips files.
4108         * inspector/front-end/inspector.css: Removes tips style rules.
4109         
4110 2009-12-15  Pavel Feldman  <pfeldman@chromium.org>
4111
4112         Reviewed by Timothy Hatcher.
4113
4114         Web Inspector: Display request headers for main resource
4115         having redirects.
4116
4117         https://bugs.webkit.org/show_bug.cgi?id=32577
4118
4119         * inspector/InspectorController.cpp:
4120         (WebCore::InspectorController::identifierForInitialRequest):
4121         (WebCore::InspectorController::willSendRequest):
4122         * inspector/InspectorResource.cpp:
4123         (WebCore::InspectorResource::InspectorResource):
4124         (WebCore::InspectorResource::appendRedirect):
4125         (WebCore::InspectorResource::createCached):
4126         (WebCore::InspectorResource::updateRequest):
4127         * inspector/InspectorResource.h:
4128         (WebCore::InspectorResource::create):
4129
4130 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
4131
4132         Reviewed by Timothy Hatcher.
4133
4134         Fixes <https://bugs.webkit.org/show_bug.cgi?id=32578>.
4135         Web Inspector: No Need for ?="" now that we have context menus.
4136         
4137         Remove the toggleNewAttributeButton function and callers to it, as
4138         we don't need this behavior anymore, now that we have context menus.
4139
4140         * inspector/front-end/ElementsTreeOutline.js:
4141         (WebInspector.ElementsTreeElement.prototype.set hovered):
4142         (WebInspector.ElementsTreeElement.prototype.toggleNewAttributeButton):
4143         (WebInspector.ElementsTreeElement.prototype._startEditing):
4144
4145 2009-12-15  Dimitri Glazkov  <dglazkov@chromium.org>
4146
4147         Reviewed by Eric Seidel.
4148
4149         [V8] Generate trivial named property getters.
4150         https://bugs.webkit.org/show_bug.cgi?id=32562
4151
4152         Covered by existing tests.
4153
4154         * bindings/scripts/CodeGeneratorV8.pm: Added GenerateImplementationNamedPropertyGetter.
4155         * bindings/v8/V8Collection.h:
4156         (WebCore::getNamedPropertyOfCollection): Fixed a booboo by using AtomicString like we're supposed to.
4157         * bindings/v8/V8DOMWrapper.cpp:
4158         (WebCore::V8DOMWrapper::getTemplate): Removed code that's now generated.
4159
4160 2009-12-15  Brian Weinstein  <bweinstein@apple.com>
4161
4162         Reviewed by Timothy Hatcher.
4163
4164         Part of <http://webkit.org/b/32568>.
4165         New Web Inspector: The Context Menu should be used in more places.
4166         
4167         Add support for context menu entries for editing and deleting elements
4168         in the datagrid. This gives support to deleting cookies, and editing and
4169         deleting session storage and local storage.
4170
4171         * English.lproj/localizedStrings.js: Added "Edit" and "Add New" entries (delete was already there)
4172         * inspector/front-end/DataGrid.js:
4173         (WebInspector.DataGrid): Added context menu listener.
4174         (WebInspector.DataGrid.prototype._contextMenuInDataTable):
4175
4176 2009-12-15  Kenneth Russell  <kbr@google.com>
4177
4178         Reviewed by Darin Fisher.
4179
4180         Don't allow default framebuffer to be mutated
4181         https://bugs.webkit.org/show_bug.cgi?id=32391
4182
4183         * html/canvas/WebGLRenderingContext.cpp:
4184         (WebCore::WebGLRenderingContext::framebufferRenderbuffer):
4185         (WebCore::WebGLRenderingContext::framebufferTexture2D):
4186         * platform/graphics/mac/GraphicsContext3DMac.cpp:
4187         (WebCore::GraphicsContext3D::bindFramebuffer):
4188
4189 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
4190
4191         Reviewed by Darin Adler.
4192
4193         Allow custom memory allocation control for FontPlatformDataCacheKey class
4194         https://bugs.webkit.org/show_bug.cgi?id=32552
4195
4196         Inherits the following struct from FastAllocBase because it is instantiated by 'new':
4197
4198         struct name                     - instantiated at: WebCore/'location'
4199         struct FontPlatformDataCacheKey - platform/graphics/FontCache.cpp:118
4200
4201         * platform/graphics/FontCache.cpp:
4202
4203 2009-12-15  Jian Li  <jianli@chromium.org>
4204
4205         Reviewed by Dmitry Titov.
4206
4207         Bug 31090 - [Chromium] Add DownloadURL format to Chromium clipboard.
4208         https://bugs.webkit.org/show_bug.cgi?id=31090
4209
4210         The proposal to whatwg can be found here:
4211         http://lists.whatwg.org/htdig.cgi/whatwg-whatwg.org/2009-August/022118.html
4212
4213         * platform/chromium/ChromiumDataObject.cpp:
4214         (WebCore::ChromiumDataObject::clear):
4215         (WebCore::ChromiumDataObject::hasData):
4216         (WebCore::ChromiumDataObject::ChromiumDataObject):
4217         * platform/chromium/ChromiumDataObject.h:
4218         * platform/chromium/ClipboardChromium.cpp:
4219         (WebCore::):
4220         (WebCore::clipboardTypeFromMIMEType):
4221         (WebCore::ClipboardChromium::setData):
4222
4223 2009-12-15  Chris Fleizach  <cfleizach@apple.com>
4224
4225         Reviewed by Darin Adler.
4226
4227         WAI-ARIA: implement treegrid
4228         https://bugs.webkit.org/show_bug.cgi?id=31299
4229
4230         Test: platform/mac/accessibility/aria-treegrid.html
4231
4232         * accessibility/AXObjectCache.cpp:
4233         (WebCore::AXObjectCache::getOrCreate):
4234         * accessibility/AccessibilityARIAGrid.h:
4235         (WebCore::AccessibilityARIAGrid::supportsSelectedRows):
4236         * accessibility/AccessibilityARIAGridRow.cpp:
4237         (WebCore::AccessibilityARIAGridRow::isARIATreeGridRow):
4238         (WebCore::AccessibilityARIAGridRow::disclosedRows):
4239         (WebCore::AccessibilityARIAGridRow::disclosedByRow):
4240         * accessibility/AccessibilityARIAGridRow.h:
4241         * accessibility/AccessibilityObject.cpp:
4242         (WebCore::createARIARoleMap):
4243         * accessibility/AccessibilityObject.h:
4244         (WebCore::):
4245         (WebCore::AccessibilityObject::isARIATreeGridRow):
4246         * accessibility/AccessibilityRenderObject.cpp:
4247         (WebCore::AccessibilityRenderObject::isMultiSelectable):
4248         (WebCore::AccessibilityRenderObject::setIsExpanded):
4249         (WebCore::AccessibilityRenderObject::setSelectedRows):
4250         (WebCore::AccessibilityRenderObject::ariaSelectedRows):
4251         (WebCore::AccessibilityRenderObject::ariaListboxSelectedChildren):
4252         (WebCore::AccessibilityRenderObject::selectedChildren):
4253         * accessibility/AccessibilityRenderObject.h:
4254         * accessibility/AccessibilityTable.h:
4255         (WebCore::AccessibilityTable::supportsSelectedRows):
4256         * accessibility/mac/AccessibilityObjectWrapper.mm:
4257         (-[AccessibilityObjectWrapper additionalAccessibilityAttributeNames]):
4258         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
4259         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
4260         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
4261
4262 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
4263
4264         Reviewed by Darin Adler.
4265
4266         Allow custom memory allocation control for EmptyEditorClient and EmptyInspectorClient
4267         https://bugs.webkit.org/show_bug.cgi?id=32557
4268
4269         Inherits the following classes from Noncopyable because these are instantiated
4270         by 'new' and no need to be copyable:
4271
4272         class name                 - instantiated at: WebCore/'location'
4273         class EmptyEditorClient    - svg/graphics/SVGImage.cpp:230
4274         class EmptyInspectorClient - svg/graphics/SVGImage.cpp:241
4275
4276         * loader/EmptyClients.h:
4277
4278 2009-12-15  Zoltan Horvath  <zoltan@webkit.org>
4279
4280         Reviewed by Darin Adler.
4281
4282         Allow custom memory allocation control for WebCore/inspector directory's classes
4283         https://bugs.webkit.org/show_bug.cgi?id=32556
4284
4285         Inherits the following class from Noncopyable because these are instantiated
4286         by 'new' and no need to be copyable:
4287
4288         class name                   - instantiated at: WebCore/'location'