9051f4d7c86fc28d3ac0453dc974f85ac6dfb386
[WebKit-https.git] / WebCore / ChangeLog
1 2008-04-04  Timothy Hatcher  <timothy@apple.com>
2
3         Restore the user entered text when clearing the auto-completion.
4         This is important when the user typed text that is a different
5         case than the completion. This has no affect on the Console, since
6         it matches completions case-sensitively. This is used in the up-coming
7         Database Query view for words like "SELECT" and "INSERT".
8
9         Reviewed by Adam Roben.
10
11         * page/inspector/TextPrompt.js:
12         (WebInspector.TextPrompt.prototype.clearAutoComplete): Restore the user typed
13         text in the original DOM range that complete() saved away.
14         (WebInspector.TextPrompt.prototype.complete): Store away the fullWordRange
15         and it's text content so clearAutoComplete can restore it.
16
17 2008-04-04  Timothy Hatcher  <timothy@apple.com>
18
19         Don't trim whitespace when looking for the current match, this prevents
20         tabbing through matches in the up-coming Database Query view.
21
22         Reviewed by Adam Roben.
23
24         * page/inspector/TextPrompt.js: Removed a trimTrailingWhitespace() call.
25
26 2008-04-04  Timothy Hatcher  <timothy@apple.com>
27
28         Factor out the Console text completion and command history into
29         a new TextPrompt object. This TextPrompt object will be used later
30         other parts of the Inspector that need text completion and history.
31         Not functionality changed, just moved code around.
32
33         Reviewed by Adam Roben.
34
35         * WebCore.vcproj/WebCore.vcproj: Add TextPrompt.js.
36         * page/inspector/Console.js: Call the new prompt object and
37           delete all the code that moved.
38         * page/inspector/TextPrompt.js: Added. Moved code from Console.js.
39         * page/inspector/WebKit.qrc: Add TextPrompt.js.
40         * page/inspector/inspector.html: Add TextPrompt.js.
41
42 2008-04-04  Timothy Hatcher  <timothy@apple.com>
43
44         Makes setting shouldRefreshChildren on a TreeElement perform the refresh
45         immediately if the element is already expanded.
46
47         Reviewed by Adam Roben.
48
49         * page/inspector/treeoutline.js:
50         (TreeElement.prototype.get shouldRefreshChildren): Return this._shouldRefreshChildren.
51         (TreeElement.prototype.set shouldRefreshChildren): If changing to true, and
52         already expanded,
53         call expand again to trigger the refresh. Sets this._shouldRefreshChildren.
54         (TreeElement.prototype._attach): Check for this._shouldRefreshChildren.
55         (TreeElement.prototype.expand): Ditto.
56
57 2008-04-04  Jon Honeycutt  <jhoneycutt@apple.com>
58
59         Reviewed by Beth.
60
61         Some clean up of AccessibilityObject:
62         - Use existing isImage() in more places.
63         - Use existing isTextControl() in more places.
64         - Added isRenderImage(). Check this before casting to RenderImage,
65           since other, non-RenderImage derived RenderObjects (e.g.
66           RenderListMarker) can return true for isImage().
67         - Fix two copy/paste errors with improper semicolons.
68
69         * page/AccessibilityObject.cpp:
70         (WebCore::AccessibilityObject::isImageButton): Use isImage().
71         (WebCore::AccessibilityObject::isRenderImage): Added.
72         (WebCore::AccessibilityObject::isAnchor): Use isImage().
73         (WebCore::AccessibilityObject::isAttachment): Same.
74         (WebCore::AccessibilityObject::accessibilityDescription): Same.
75         (WebCore::AccessibilityObject::accessibilityIsIgnored): Use
76         isRenderImage() instead of isImage().
77         (WebCore::AccessibilityObject::url): Use isImage().
78         (WebCore::AccessibilityObject::textControl): Remove improper semicolon, 
79         and use isTextControl().
80         (WebCore::AccessibilityObject::textMarkerForIndex): Same.
81         (WebCore::AccessibilityObject::indexForTextMarker): Use isTextControl().
82         (WebCore::AccessibilityObject::doAXRangeForLine): Same.
83         (WebCore::AccessibilityObject::doAXRangeForIndex): Same
84         (WebCore::AccessibilityObject::doAXStringForRange): Same.
85         (WebCore::AccessibilityObject::roleValue):  Use isImage().
86         (WebCore::AccessibilityObject::addChildren): Use isRenderImage().
87         * page/AccessibilityObject.h:
88
89 2008-04-04  Timothy Hatcher  <timothy@apple.com>
90
91         Fixes a null exception when hovering in some areas of the DOM tree.
92
93         Reviewed by Adam Roben.
94
95         * page/inspector/treeoutline.js:
96         (TreeOutline.prototype.treeElementFromPoint): Check listNode for null/undefined
97         before accessing any properties. Return null if listNode is null.
98
99 2008-04-04  Timothy Hatcher  <timothy@apple.com>
100
101         Changing WebInspector.currentFocusElement to/from an input element
102         does not change the actual focus of that input element. You see this
103         in the search field.
104
105         Reviewed by Adam Roben.
106
107         * page/inspector/inspector.js:
108         (WebInspector.set currentFocusElement): Call blur and focus if the
109         node implements them.
110
111 2008-04-04  David Hyatt  <hyatt@apple.com>
112
113         Improve the background size heuristic for SVGs used as background images with no intrinsic size specified.
114         Treat them as having a background-size of 100%.  This means their maximal size will be the box established
115         by background-origin.
116
117         Reviewed by Beth
118
119         * rendering/RenderBox.cpp:
120         (WebCore::RenderBox::calculateBackgroundSize):
121
122 2008-04-04  Timothy Hatcher  <timothy@apple.com>
123
124         Correctly show DOCTYPE in the breadcrumbs and match the CSS rules
125         from view-source.css for the DOCTYPE in the DOM tree.
126
127         Reviewed by Adam Roben.
128
129         * css/view-source.css: Add and correct comments about keeping
130         in-sync with inspector.css.
131         * page/inspector/ElementsPanel.js:
132         (WebInspector.DocumentPanel.prototype.updateBreadcrumb):
133         Add a case for Node.DOCUMENT_TYPE_NODE.
134         * page/inspector/inspector.css: Add a rule for .webkit-html-doctype.
135         * page/inspector/utilities.js:
136         (nodeTitleInfo): Use the webkit-html-doctype class for nodes
137         with Node.DOCUMENT_TYPE_NODE.
138
139 2008-04-04  Dan Bernstein  <mitz@apple.com>
140
141         - try to fix the Tiger build
142
143         * icu/unicode/uscript.h: Copied from WebKit/mac/icu/unicode/uscript.h.
144
145 2008-04-04  Adam Roben  <aroben@apple.com>
146
147         Copy icu/ to PrivateHeaders for WebKit's benefit
148
149         Rubberstamped by Tim Hatcher.
150
151         * WebCore.xcodeproj/project.pbxproj: Renamed the Copy Forwarding
152         Headers build phase to Copy Forwarding and ICU Headers, and added the
153         icu/ directory to it.
154
155 2008-04-04  Adam Roben  <aroben@apple.com>
156
157         Fix <rdar://problem/5804776> Would like to use WebCore's
158         ForwardingHeaders in WebKit without manually creating copies
159
160         Patch by Tim Hatcher, typed by me.
161
162         * WebCore.xcodeproj/project.pbxproj: Added a new build phase, Copy
163         Forwarding Headers, that copies the ForwardingHeaders directory to
164         WebCore's PrivateHeaders directory.
165
166 2008-04-04  Ada Chan  <adachan@apple.com>
167
168         Changed the signature of imageTitleForFilename so we can pass in the width
169         and height as integers.
170
171         Reviewed by Dan.
172
173         * page/mac/WebCoreViewFactory.h:
174         * platform/mac/LocalizedStringsMac.mm:
175         (WebCore::imageTitle):
176
177 2008-04-03  Dan Bernstein  <mitz@apple.com>
178
179         - Windows build fix
180
181         * platform/graphics/win/FontCacheWin.cpp:
182         (WebCore::matchImprovingEnumProc):
183
184 2008-04-03  Kevin Ollivier  <kevino@theolliviers.com>
185
186         Fix PlatformGradient so that it's a pointer on all platforms.
187
188         * platform/graphics/Gradient.h:
189
190 2008-04-03  Dan Bernstein  <mitz@apple.com>
191
192         - 64-bit build fix
193
194         * platform/mac/WebFontCache.mm:
195         (+[WebFontCache internalFontWithFamily:traits:weight:size:]):
196
197 2008-04-03  Kevin Ollivier  <kevino@theolliviers.com>
198
199         wx build fix. Add stubs for gradient class platform functions.
200
201         * platform/graphics/wx/GradientWx.cpp: Added.
202         (WebCore::Gradient::platformDestroy):
203         (WebCore::Gradient::platformGradient):
204
205 2008-04-03  Kevin Ollivier  <kevino@theolliviers.com>
206
207         Reviewed by Dan Bernstein.
208
209         Refactor Gradient.h to have the same API on platforms 
210         without a gradient class.
211
212         * platform/graphics/Gradient.h:
213
214 2008-04-03  Dan Bernstein  <mitz@apple.com>
215
216         - Qt build fix
217
218         * platform/graphics/qt/FontQt.cpp:
219         (WebCore::Font::Font):
220
221 2008-04-03  Dan Bernstein  <mitz@apple.com>
222
223         - Tiger build fix
224
225         * platform/mac/WebFontCache.mm:
226         * rendering/RenderThemeMac.mm:
227
228 2008-04-03  Dan Bernstein  <mitz@apple.com>
229
230         - Gtk build fix
231
232         * platform/graphics/gtk/FontPlatformData.h:
233         (WebCore::FontPlatformData::size):
234         * platform/graphics/gtk/FontPlatformDataGtk.cpp:
235         (WebCore::FontPlatformData::FontPlatformData):
236         * platform/graphics/gtk/FontPlatformDataPango.cpp:
237         (WebCore::FontPlatformData::FontPlatformData):
238
239 2008-04-03  Dan Bernstein  <mitz@apple.com>
240
241         - project file updates in preparation for build fixes
242
243         * GNUmakefile.am:
244         * WebCore.pro:
245         * WebCoreSources.bkl:
246
247 2008-04-03  Nicholas Shanks  <webkit@nickshanks.com>
248
249         Updated by Dan Bernstein. Reviewed by Dave Hyatt.
250
251         - WebCore part of fixing http://bugs.webkit.org/show_bug.cgi?id=6484
252           font-weight does not properly support graded weights
253
254         Tests to come: <http://bugs.webkit.org/show_bug.cgi?id=18306>
255
256         Build fixes for platforms other than Mac and Windows to come.
257
258         * WebCore.vcproj/WebCore.vcproj: Added FontDescription.cpp.
259
260         * WebCore.xcodeproj/project.pbxproj: Ditto.
261
262         * css/CSSComputedStyleDeclaration.cpp:
263         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Changed to
264         return additional weight value keywords 100, 200, 300, 500, 600, 800
265         and 900.
266
267         * css/CSSFontSelector.cpp:
268         (WebCore::hashForFont): Changed the bold parameter into a weight
269         parameter and added the weight to the string to be hashed.
270         (WebCore::CSSFontSelector::addFontFaceRule): Changed to apply all CSS
271         weight values to the font description.
272         (WebCore::CSSFontSelector::getFontData): Updated the fallback logic to
273         go through all weights equal or lighter from the desired weight. For
274         SVG, to also consider heavier weights.
275
276         * css/CSSParser.cpp:
277         (WebCore::CSSParser::parseValue): Cleaned up parsing of the font-weight
278         property.
279
280         * css/CSSStyleSelector.cpp:
281         (WebCore::CSSStyleSelector::applyProperty): Changed to apply all CSS
282         weight values to the font description.
283
284         * platform/graphics/Font.h:
285         (WebCore::Font::weight): Updated for the change to
286         FontDescription::weight().
287
288         * platform/graphics/FontCache.cpp:
289         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey): Replaced
290         the bold component of the key with a weight component.
291         (WebCore::FontPlatformDataCacheKey::operator==): Updated for the above.
292         (WebCore::computeHash): Ditto.
293         (WebCore::FontPlatformDataCacheKeyTraits::deletedValue): Removed
294         unnecessary parameters.
295         (WebCore::FontPlatformDataCacheKeyTraits::emptyValue): Ditto.
296         (WebCore::FontCache::getCachedFontPlatformData): Updated for the change
297         in FontPlatformDataCacheKey.
298
299         * platform/graphics/FontDescription.cpp: Added.
300         (WebCore::FontDescription::lighterWeight): Added. Returns a lighter CSS
301         font-weight value if there is one, or the lightest value.
302         (WebCore::FontDescription::bolderWeight): Added. Returns a heavier CSS
303         font-weight value if there is one, or the heaviest value.
304
305         * platform/graphics/FontDescription.h:
306         (WebCore::FontWeight): Added this enumeration.
307         (WebCore::FontDescription::FontDescription):
308         (WebCore::FontDescription::bold): Removed.
309         (WebCore::FontDescription::weight): Changed to return a FontWeight.
310         (WebCore::FontDescription::setBold): Removed.
311         (WebCore::FontDescription::setWeight): Changed to take a FontWeight.
312
313         * platform/graphics/mac/FontCacheMac.mm:
314         (WebCore::toAppKitFontWeight): Added. Maps a FontWeight to the AppKit
315         font weight scale of 0-15.
316         (WebCore::isAppKitFontWeightBold): Added.
317         (WebCore::FontCache::getFontDataForCharacters): Changed to use a weight
318         instead of the bold trait for custom fonts, and to decide whether to
319         synthesize bold based on the weights rather than the bold trait.
320         (WebCore::FontCache::fontExists): Updated for the change in
321         WebFontCache .
322         (WebCore::FontCache::createFontPlatformData): Ditto. Also changed to
323         decide whether to synthesize bold based on the weights rather than on
324         the bold trait.
325
326         * platform/graphics/win/FontCacheWin.cpp:
327         (WebCore::toGDIFontWeight): Added. Maps a FontWeight to a GDI font
328         weight constant.
329         (WebCore::isGDIFontWeightBold): Added.
330         (WebCore::adjustedGDIFontWeight): Added.
331         (WebCore::MatchImprovingProcData::MatchImprovingProcData): Added this
332         data structure for use by the following callback.
333         (WebCore::matchImprovingEnumProc): Added. The logic of this method is a
334         simplification of the betterChoice() predicate in WebFontCache.mm, which
335         considers only the italic trait and the weight.
336         (WebCore::createGDIFont): Added. Similarly to
337         +[WebFontCache fontWithFamily:traits:weight:size:], this function
338         finds the closest match in the family for the desired italic bit and
339         weight.
340         (WebCore::FontCache::fontExists): Changed to call createGDIFont().
341         (WebCore::FontCache::createFontPlatformData): Ditto. Also changed to
342         compute the synthetic bold and synthetic italic flags based on weights
343         and italic bits and pass them to the FontPlatformData constructor.
344
345         * platform/graphics/win/FontPlatformDataWin.cpp:
346         (WebCore::FontPlatformData::FontPlatformData): Changed the bold and
347         oblique parameters to mean whether these should be synthesized and
348         removed the font enumeration code that used to decide that.
349
350         * platform/graphics/win/SimpleFontDataWin.cpp:
351         (WebCore::SimpleFontData::smallCapsFontData): Changed to pass the
352         synthetic bold and oblique flags from the full-size FontPlatformData to
353         the FontPlatformData constructor for the small caps font.
354
355         * platform/mac/WebCoreTextRenderer.h:
356         * platform/mac/WebCoreTextRenderer.mm:
357         (WebCoreFindFont): Added a weight parameter, which is passed to
358         +[WebFontCache fontWithFamily:traits:weight:size:].
359
360         * platform/mac/WebFontCache.h:
361         * platform/mac/WebFontCache.mm:
362         (acceptableChoice):
363         (betterChoice): Changed to ignore the bold trait. Changed the logic for
364         deciding based on weights to prefer the font whose weight is closer to
365         the desired one, or, if both candidates' weights are the same distance
366         from the desired weight, the one that is more "off-center". 
367         (+[WebFontCache internalFontWithFamily:traits:weight:size:]): Changed to
368         check for weight when matching by full name. Changed to pass
369         the actual desired weight instead of the constant 5 to
370         acceptableChoice() and betterChoice(). Changed to use weights to decide
371         whether to synthesize bold.
372         (+[WebFontCache fontWithFamily:traits:weight:size:]): Added a weight
373         parameter, which is passed to the internal method.
374
375         * platform/win/PopupMenuWin.cpp:
376         (WebCore::PopupMenu::paint): Updated for the change to FontDescription.
377
378         * rendering/RenderListBox.cpp:
379         (WebCore::RenderListBox::updateFromElement): Ditto.
380         (WebCore::RenderListBox::paintItemForeground): Ditto.
381
382         * rendering/RenderThemeMac.mm:
383         (WebCore::toFontWeight): Added. Maps the AppKit font weight range of
384         0-15 to the FontWeight range.
385         (WebCore::RenderThemeMac::systemFont): Updated for the change to
386         FontDescription.
387
388         * rendering/RenderThemeSafari.cpp:
389         (WebCore::RenderThemeSafari::systemFont): Ditto.
390
391 2008-04-03  Dan Bernstein  <mitz@apple.com>
392
393         - another Gtk build fix attempt
394
395         * platform/graphics/cairo/GradientCairo.cpp:
396         (WebCore::Gradient::platformDestroy):
397
398 2008-04-03  Dan Bernstein  <mitz@apple.com>
399
400         - attempted Gtk build fix
401
402         * GNUmakefile.am:
403
404 2008-04-03  Dan Bernstein  <mitz@apple.com>
405
406         - attempted Qt build fix
407
408         * platform/graphics/qt/GradientQt.cpp:
409         (WebCore::Gradient::platformDestroy):
410
411 2008-04-03  Dan Bernstein  <mitz@apple.com>
412
413         - attempted Gtk build fix
414
415         * html/CanvasRenderingContext2D.cpp:
416         (WebCore::CanvasRenderingContext2D::stroke):
417
418 2008-04-03  Dan Bernstein  <mitz@apple.com>
419
420         - attempted Qt build fix
421
422         * html/CanvasRenderingContext2D.cpp:
423         (WebCore::CanvasRenderingContext2D::stroke):
424
425 2008-04-03  Beth Dakin  <bdakin@apple.com>
426
427         Reviewed by Alice.
428
429         Build fix for non-Macs.
430
431         * page/AXObjectCache.h:
432         (WebCore::AXObjectCache::isIDinUse):
433
434 2008-04-03  Brent Fulgham  <bfulgham@gmail.com>
435
436         Reviewed by Darin.
437
438         Correct build error due to incomplete merging of changes to project
439         files from Issue 17985.  This small project file patch corrects
440         the build issue (see http://bugs.webkit.org/show_bug.cgi?id=18195).
441
442         * WebCore.vcproj/WebCore.vcproj:
443
444 2008-04-02  Beth Dakin  <bdakin@apple.com>
445
446         Reviewed by Hyatt.
447
448         This patch eliminates AccessibilityObjectMac. All of the platform-
449         specific code is now in AccessibilityObjectWrapper.
450
451         * WebCore.xcodeproj/project.pbxproj:
452         * dom/Element.h:
453         (WebCore::Element::isPasswordField):
454         * html/HTMLInputElement.h:
455         (WebCore::HTMLInputElement::isPasswordField):
456         * page/AXObjectCache.h:
457         (WebCore::AXObjectCache::isIDinUse):
458         * page/AccessibilityObject.cpp:
459         (WebCore::AccessibilityObject::isPasswordField):
460         (WebCore::AccessibilityObject::press):
461         (WebCore::AccessibilityObject::widgetForAttachmentView):
462         (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange):
463         (WebCore::AccessibilityObject::doAXTextMarkerForPosition):
464         * page/AccessibilityObject.h:
465         (WebCore::AccessibilityObject::areaElement):
466         (WebCore::AccessibilityObject::setWrapper):
467         * page/mac/AXObjectCacheMac.mm:
468         * page/mac/AccessibilityObjectMac.mm: Removed.
469         * page/mac/AccessibilityObjectWrapper.h:
470         * page/mac/AccessibilityObjectWrapper.mm:
471         (-[AccessibilityObjectWrapper attachmentView]):
472         (textMarkerForVisiblePosition):
473         (visiblePositionForTextMarker):
474         (visiblePositionForStartOfTextMarkerRange):
475         (visiblePositionForEndOfTextMarkerRange):
476         (textMarkerRangeFromMarkers):
477         (AXAttributeStringSetFont):
478         (CreateCGColorIfDifferent):
479         (AXAttributeStringSetColor):
480         (AXAttributeStringSetNumber):
481         (AXAttributeStringSetStyle):
482         (blockquoteLevel):
483         (AXAttributeStringSetBlockquoteLevel):
484         (AXAttributeStringSetSpelling):
485         (AXAttributeStringSetHeadingLevel):
486         (AXLinkElementForNode):
487         (AXAttributeStringSetElement):
488         (AXAttributedStringAppendText):
489         (nsStringForReplacedNode):
490         (-[AccessibilityObjectWrapper doAXAttributedStringForTextMarkerRange:]):
491         (textMarkerRangeFromVisiblePositions):
492         (-[AccessibilityObjectWrapper accessibilityActionNames]):
493         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
494         (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
495         (-[AccessibilityObjectWrapper textMarkerRangeForSelection]):
496         (-[AccessibilityObjectWrapper position]):
497         (createAccessibilityRoleMap):
498         (RoleEntry::):
499         (roleValueToNSString):
500         (-[AccessibilityObjectWrapper role]):
501         (-[AccessibilityObjectWrapper subrole]):
502         (-[AccessibilityObjectWrapper roleDescription]):
503         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
504         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
505         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
506         (-[AccessibilityObjectWrapper doAXAttributedStringForRange:]):
507         (-[AccessibilityObjectWrapper doAXRTFForRange:]):
508         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
509         (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
510         * platform/ScrollView.h:
511         * platform/mac/ScrollViewMac.mm:
512         (WebCore::ScrollView::viewRectToScreen):
513         (WebCore::ScrollView::absolutePointToView):
514
515 2008-04-03  David Hyatt  <hyatt@apple.com>
516
517         Create a new cross-platform Gradient abstraction and make CanvasGradient wrap it.  This first
518         step just cleans up CanvasGradient.  The code that calls it remains ifdef'd however.
519
520         Reviewed by olliej
521
522         * WebCore.pro:
523         * WebCore.vcproj/WebCore.vcproj:
524         * WebCore.xcodeproj/project.pbxproj:
525         * WebCoreSources.bkl:
526         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
527         (WebCore::toJS):
528         * html/CanvasGradient.cpp:
529         (WebCore::CanvasGradient::CanvasGradient):
530         * html/CanvasGradient.h:
531         (WebCore::CanvasGradient::gradient):
532         (WebCore::CanvasGradient::addColorStop):
533         (WebCore::CanvasGradient::getColor):
534         * html/CanvasRenderingContext2D.cpp:
535         (WebCore::CanvasRenderingContext2D::fill):
536         (WebCore::CanvasRenderingContext2D::stroke):
537         (WebCore::CanvasRenderingContext2D::fillRect):
538         * html/CanvasStyle.h:
539         (WebCore::CanvasStyle::canvasGradient):
540         * platform/graphics/Gradient.cpp: Added.
541         (WebCore::Gradient::Gradient):
542         (WebCore::Gradient::~Gradient):
543         (WebCore::Gradient::addColorStop):
544         (WebCore::compareStops):
545         (WebCore::Gradient::getColor):
546         (WebCore::Gradient::findStop):
547         * platform/graphics/Gradient.h: Added.
548         (WebCore::Gradient::ColorStop::ColorStop):
549         (WebCore::Gradient::platformInit):
550         * platform/graphics/cairo/GradientCairo.cpp: Added.
551         (WebCore::Gradient::platformDestroy):
552         (WebCore::Gradient::platformGradient):
553         * platform/graphics/cg/GradientCG.cpp: Added.
554         (WebCore::Gradient::platformDestroy):
555         (WebCore::gradientCallback):
556         (WebCore::Gradient::platformGradient):
557         * platform/graphics/qt/GradientQt.cpp: Added.
558         (WebCore::Gradient::platformDestroy):
559         (WebCore::Gradient::platformGradient):
560
561 2008-04-03  Simon Hausmann  <hausmann@webkit.org>
562
563         Reviewed by Mark Rowe.
564
565         Roll out r31599 and r31605 again after discussion with Mark Rowe.
566
567         * history/HistoryItem.cpp:
568         * loader/FrameLoader.cpp:
569         (WebCore::FrameLoader::startIconLoader):
570         * loader/icon/IconDatabase.cpp:
571         (WebCore::IconDatabase::iconForPageURL):
572         (WebCore::IconDatabase::readIconForPageURLFromDisk):
573         * loader/icon/IconDatabase.h:
574         * loader/icon/IconDatabaseNone.cpp:
575
576 2008-04-03  David Hyatt  <hyatt@apple.com>
577
578         Fix for bug 18194, resizable text fields get messed up when resizing in the presence of zoom.
579
580         Reviewed by adele
581
582         * rendering/RenderLayer.cpp:
583         (WebCore::RenderLayer::resize):
584
585 2008-04-03  Oliver Hunt  <oliver@apple.com>
586
587         Reviewed by NOBODY (Rollout).
588
589         Rollout r31566 as there were a few issues i missed during review (thanks to antti for pointing them out)
590
591         * dom/Element.h:
592         * dom/NamedAttrMap.h:
593         * rendering/SVGRootInlineBox.cpp:
594         (WebCore::SVGRootInlineBox::buildLayoutInformation):
595         (WebCore::SVGRootInlineBox::buildTextChunks):
596         * svg/SVGAElement.h:
597         (WebCore::SVGAElement::contextElement):
598         * svg/SVGAltGlyphElement.h:
599         (WebCore::SVGAltGlyphElement::contextElement):
600         * svg/SVGAnimateColorElement.h:
601         * svg/SVGAnimateElement.h:
602         * svg/SVGAnimateMotionElement.h:
603         * svg/SVGAnimateTransformElement.h:
604         * svg/SVGAnimatedTemplate.h:
605         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
606         (WebCore::lookupOrCreateWrapper):
607         * svg/SVGAnimationElement.h:
608         * svg/SVGCircleElement.h:
609         (WebCore::SVGCircleElement::contextElement):
610         * svg/SVGClipPathElement.h:
611         (WebCore::SVGClipPathElement::contextElement):
612         * svg/SVGComponentTransferFunctionElement.cpp:
613         * svg/SVGComponentTransferFunctionElement.h:
614         * svg/SVGCursorElement.cpp:
615         (WebCore::SVGCursorElement::SVGCursorElement):
616         * svg/SVGCursorElement.h:
617         (WebCore::SVGCursorElement::contextElement):
618         * svg/SVGDefsElement.h:
619         (WebCore::SVGDefsElement::contextElement):
620         * svg/SVGElement.cpp:
621         * svg/SVGElement.h:
622         (WebCore::SVGElement::svgAttributeChanged):
623         * svg/SVGEllipseElement.cpp:
624         (WebCore::SVGEllipseElement::SVGEllipseElement):
625         * svg/SVGEllipseElement.h:
626         (WebCore::SVGEllipseElement::contextElement):
627         * svg/SVGExternalResourcesRequired.h:
628         * svg/SVGFEBlendElement.h:
629         * svg/SVGFEColorMatrixElement.cpp:
630         * svg/SVGFEColorMatrixElement.h:
631         * svg/SVGFEComponentTransferElement.h:
632         * svg/SVGFECompositeElement.h:
633         * svg/SVGFEDiffuseLightingElement.h:
634         * svg/SVGFEDisplacementMapElement.h:
635         * svg/SVGFEFloodElement.h:
636         * svg/SVGFEGaussianBlurElement.h:
637         * svg/SVGFEImageElement.cpp:
638         * svg/SVGFEImageElement.h:
639         (WebCore::SVGFEImageElement::contextElement):
640         * svg/SVGFELightElement.h:
641         * svg/SVGFEMergeElement.h:
642         * svg/SVGFEMergeNodeElement.h:
643         * svg/SVGFEOffsetElement.h:
644         * svg/SVGFESpecularLightingElement.h:
645         * svg/SVGFETileElement.h:
646         * svg/SVGFETurbulenceElement.h:
647         * svg/SVGFilterElement.cpp:
648         (WebCore::SVGFilterElement::SVGFilterElement):
649         * svg/SVGFilterElement.h:
650         (WebCore::SVGFilterElement::contextElement):
651         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
652         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
653         * svg/SVGFilterPrimitiveStandardAttributes.h:
654         * svg/SVGFitToViewBox.cpp:
655         * svg/SVGFitToViewBox.h:
656         * svg/SVGFontElement.h:
657         * svg/SVGForeignObjectElement.cpp:
658         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
659         * svg/SVGForeignObjectElement.h:
660         (WebCore::SVGForeignObjectElement::contextElement):
661         * svg/SVGGElement.h:
662         (WebCore::SVGGElement::contextElement):
663         * svg/SVGGradientElement.cpp:
664         * svg/SVGGradientElement.h:
665         * svg/SVGImageElement.cpp:
666         (WebCore::SVGImageElement::SVGImageElement):
667         * svg/SVGImageElement.h:
668         (WebCore::SVGImageElement::contextElement):
669         * svg/SVGLength.cpp:
670         * svg/SVGLength.h:
671         * svg/SVGLengthList.cpp:
672         * svg/SVGLengthList.h:
673         * svg/SVGLineElement.cpp:
674         (WebCore::SVGLineElement::SVGLineElement):
675         * svg/SVGLineElement.h:
676         (WebCore::SVGLineElement::contextElement):
677         * svg/SVGLinearGradientElement.cpp:
678         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
679         (WebCore::SVGLinearGradientElement::collectGradientProperties):
680         * svg/SVGLinearGradientElement.h:
681         * svg/SVGMPathElement.h:
682         * svg/SVGMarkerElement.cpp:
683         (WebCore::SVGMarkerElement::SVGMarkerElement):
684         * svg/SVGMarkerElement.h:
685         (WebCore::SVGMarkerElement::contextElement):
686         * svg/SVGMaskElement.cpp:
687         (WebCore::SVGMaskElement::SVGMaskElement):
688         * svg/SVGMaskElement.h:
689         * svg/SVGNumberList.cpp:
690         * svg/SVGNumberList.h:
691         * svg/SVGPathElement.h:
692         (WebCore::SVGPathElement::contextElement):
693         * svg/SVGPatternElement.cpp:
694         (WebCore::SVGPatternElement::SVGPatternElement):
695         (WebCore::SVGPatternElement::collectPatternProperties):
696         * svg/SVGPatternElement.h:
697         * svg/SVGPolyElement.h:
698         (WebCore::SVGPolyElement::contextElement):
699         * svg/SVGPreserveAspectRatio.cpp:
700         * svg/SVGPreserveAspectRatio.h:
701         * svg/SVGRadialGradientElement.cpp:
702         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
703         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
704         (WebCore::SVGRadialGradientElement::collectGradientProperties):
705         * svg/SVGRadialGradientElement.h:
706         * svg/SVGRectElement.cpp:
707         (WebCore::SVGRectElement::SVGRectElement):
708         * svg/SVGRectElement.h:
709         (WebCore::SVGRectElement::contextElement):
710         * svg/SVGSVGElement.cpp:
711         (WebCore::SVGSVGElement::SVGSVGElement):
712         (WebCore::SVGSVGElement::currentView):
713         * svg/SVGSVGElement.h:
714         * svg/SVGScriptElement.h:
715         (WebCore::SVGScriptElement::contextElement):
716         * svg/SVGSetElement.h:
717         * svg/SVGStyledElement.h:
718         * svg/SVGStyledTransformableElement.cpp:
719         * svg/SVGStyledTransformableElement.h:
720         * svg/SVGSwitchElement.h:
721         (WebCore::SVGSwitchElement::contextElement):
722         * svg/SVGSymbolElement.h:
723         (WebCore::SVGSymbolElement::contextElement):
724         * svg/SVGTRefElement.h:
725         (WebCore::SVGTRefElement::contextElement):
726         * svg/SVGTSpanElement.h:
727         * svg/SVGTextContentElement.cpp:
728         (WebCore::SVGTextContentElement::SVGTextContentElement):
729         * svg/SVGTextContentElement.h:
730         * svg/SVGTextElement.cpp:
731         * svg/SVGTextElement.h:
732         (WebCore::SVGTextElement::contextElement):
733         * svg/SVGTextPathElement.cpp:
734         (WebCore::SVGTextPathElement::SVGTextPathElement):
735         * svg/SVGTextPathElement.h:
736         (WebCore::SVGTextPathElement::contextElement):
737         * svg/SVGTextPositioningElement.cpp:
738         * svg/SVGTextPositioningElement.h:
739         * svg/SVGTransformList.cpp:
740         * svg/SVGTransformList.h:
741         * svg/SVGURIReference.h:
742         * svg/SVGUseElement.cpp:
743         (WebCore::SVGUseElement::SVGUseElement):
744         * svg/SVGUseElement.h:
745         (WebCore::SVGUseElement::contextElement):
746         * svg/SVGViewElement.h:
747         (WebCore::SVGViewElement::contextElement):
748         * svg/SVGViewSpec.cpp:
749         * svg/SVGViewSpec.h:
750
751 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
752
753         Reviewed by Simon.
754
755         * Change IconDatabase::iconForPageURL to return more information. E.g. if
756         an image has been found, or if the loading of an image has been scheduled.
757         * Update FrameLoader to use another method to trigger reading from disk
758         * Update the QWebFrame and QWebSettings
759
760         * history/HistoryItem.cpp:
761         * loader/FrameLoader.cpp:
762         * loader/icon/IconDatabase.cpp:
763         (WebCore::IconDatabase::iconForPageURL):
764         (WebCore::IconDatabase::readIconForPageURLFromDisk):
765         (WebCore::IconDatabase::iconURLForPageURL):
766         (WebCore::IconDatabase::defaultIcon):
767         * loader/icon/IconDatabase.h:
768         (WebCore::):
769
770 2008-04-03  Dan Bernstein  <mitz@apple.com>
771
772         - Mac build fix
773
774         * WebCore.base.exp:
775
776 2008-04-03  Simon Hausmann  <hausmann@webkit.org>
777
778         Fix the build when building without icondatabase.
779
780         * loader/icon/IconDatabaseNone.cpp: Fix the function signature, no
781         bool cache anymore.
782
783 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
784
785         Reviewed by Simon.
786
787         * Remove the unused 'cache' parameter
788
789         * loader/icon/IconDatabase.cpp:
790         (WebCore::IconDatabase::iconForPageURL):
791         * loader/icon/IconDatabase.h:
792
793 2008-04-03  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
794
795         Reviewed by Simon.
796
797         * Add WebCore/loader/icon to the DEPENDPATH as well
798
799         * WebCore.pro:
800
801 2008-04-02  Brady Eidson  <beidson@apple.com>
802
803         Reviewed by Mitz Pettel
804
805         <rdar://problem/5838347> and http://bugs.webkit.org/show_bug.cgi?id=11839
806         Webarchive fails to save CSS files in @import statements
807
808         * css/CSSStyleSheet.cpp:
809         (WebCore::CSSStyleSheet::addSubresourceURLStrings): Recursively add the URL each @import rule under the current style sheet.
810         * css/CSSStyleSheet.h:
811         * css/StyleSheet.h:
812         (WebCore::StyleSheet::addSubresourceURLStrings):
813
814         * html/HTMLLinkElement.cpp:
815         (WebCore::HTMLLinkElement::getSubresourceAttributeStrings): Add the linked URL as well as all @import
816           rules rooted at the linked stylesheet.
817
818         * html/HTMLStyleElement.cpp:
819         (WebCore::HTMLStyleElement::getSubresourceAttributeStrings): Walk all @import rules rooted at this
820           stylesheet to add to the list.
821         * html/HTMLStyleElement.h:
822
823 2008-04-02  Mark Rowe  <mrowe@apple.com>
824
825         Reviewed by Oliver Hunt.
826
827         Ensure that debug symbols are generated for x86_64 and ppc64 builds.
828
829         * Configurations/Base.xcconfig:
830
831 2008-04-02  Christian Persch  <chpe@gnome.org>
832
833         Reviewed by Alp Toker.
834
835         GTK+/Pango font backend build fix.
836
837         * platform/graphics/gtk/FontCustomPlatformDataPango.cpp:
838         (WebCore::FontCustomPlatformData::fontPlatformData):
839
840 2008-04-02  Eric Seidel  <eric@webkit.org>
841
842         No review, build fix only.
843
844         Speculative build fix for no-svg build.
845         Use #if ENABLE(SVG) instead of #if ENABLE_SVG
846
847         * css/CSSMutableStyleDeclaration.cpp:
848         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
849
850 2008-04-02  Adam Roben  <aroben@apple.com>
851
852         Rename instances of ExecState from "state" to "exec" in
853         JavaScriptDebugServer
854
855         Rename requested by Darin Adler.
856
857         * page/JavaScriptDebugServer.cpp:
858
859 2008-04-02  Adam Roben  <aroben@apple.com>
860
861         Make it possible for JavaScriptDebugListeners to listen to specific Pages
862
863         JavaScriptDebugServer now has overloads of its
864         addListener/removeListener methods that take a Page* to indicate for
865         which Page the JavaScriptDebugListener wishes to receive messages.
866
867         Reviewed by Darin.
868
869         * page/JavaScriptDebugServer.cpp:
870         (WebCore::JavaScriptDebugServer::~JavaScriptDebugServer): Delete all
871         ListenerSets being held in m_pageListenersMap.
872         (WebCore::JavaScriptDebugServer::addListener): Changed to call
873         hasListeners().
874         (WebCore::JavaScriptDebugServer::removeListener): Ditto.
875         (WebCore::JavaScriptDebugServer::addListener): Added. This overload
876         takes a Page* and puts the listener in the appropriate ListenerSet
877         within m_pageListenersMap. The ListenerSet is allocated and added to
878         m_pageListenersMap when its first listener is added.
879         (WebCore::JavaScriptDebugServer::removeListener): Added. This overload
880         takes a Page* and removes the listener from the appropriate
881         ListenerSet in m_pageListenersMap. The ListenerSet is deleted and
882         removed from m_pageListenersMap when its last listener is removed.
883         (WebCore::toPage): Added. Retrieves the parent Page from an ExecState.
884         (WebCore::JavaScriptDebugServer::sourceParsed): Changed to call
885         dispatchDidParseSource/dispatchDidFailToParseSource for both the
886         global listeners and the Page listeners.
887         (WebCore::dispatchFunctionToListeners): Added. This code was extracted
888         from the JavaScriptDebugServer method of the same name.
889         (WebCore::JavaScriptDebugServer::dispatchFunctionToListeners): Call
890         dispatchFunctionToListeners for both the global listeners and the Page
891         listeners.
892         * page/JavaScriptDebugServer.h:
893           - Added declarations for new methods.
894           - Made JavaScriptExecutionCallback typedef public so that it could
895             be used by a helper method.
896           - Added new m_pageListenersMap member.
897 2008-04-02  Simon Hausmann  <hausmann@webkit.org>
898
899         Fix compilation on case-sensitive file systems.
900
901         * svg/SVGGradientElement.h: Include SVGTransformList.h instead of
902         SVGTRansformlist.h
903
904 2008-04-02  Nikolas Zimmermann  <zimmermann@kde.org>
905
906         Reviewed by Oliver.
907
908         Fixes: http://bugs.webkit.org/show_bug.cgi?id=17779 (SVG 1.1 Errata demands "SVG JavaScript Liveness" support)
909
910         SVG Errata states: "All SVG DOM objects that directly correspond to an
911         attribute, e.g. the SVGAnimatedLength 'ry' in an SVGRectElement, are live. This
912         means that any changes made to the attribute are immediately reflected in the
913         corresponding SVG DOM object." (see linked URL on bug report)
914
915         Until now only XML -> SVG DOM changes took affect, aka. changing the 'rx' attribute of a <rect>
916         element resuted in changes when accessing 'rx' through SVG DOM (rx.baseVal.value).
917
918         Add a new synchronization layer to handle SVG DOM -> XML changes.
919
920         Added Test: svg/custom/svg-xml-dom-sync.html
921
922         * dom/Element.h:
923         * dom/NamedAttrMap.h:
924         * rendering/SVGRootInlineBox.cpp:
925         (WebCore::nodeToTextContentElement):
926         (WebCore::nodeToTextPositioningElement):
927         (WebCore::SVGRootInlineBox::buildLayoutInformation):
928         (WebCore::SVGRootInlineBox::buildTextChunks):
929         * svg/SVGAElement.h:
930         (WebCore::SVGAElement::contextElement):
931         * svg/SVGAltGlyphElement.h:
932         (WebCore::SVGAltGlyphElement::contextElement):
933         * svg/SVGAnimateColorElement.h:
934         (WebCore::SVGAnimateColorElement::contextElement):
935         * svg/SVGAnimateElement.h:
936         (WebCore::SVGAnimateElement::contextElement):
937         * svg/SVGAnimateMotionElement.h:
938         (WebCore::SVGAnimateMotionElement::contextElement):
939         * svg/SVGAnimateTransformElement.h:
940         (WebCore::SVGAnimateTransformElement::contextElement):
941         * svg/SVGAnimatedTemplate.h:
942         (WebCore::SVGAnimatedTemplate::toString):
943         (WebCore::SVGAnimatedTemplate::associatedAttributeName):
944         (WebCore::lookupOrCreateWrapper):
945         (WebCore::SVGAnimatedAngle::SVGAnimatedAngle):
946         (WebCore::SVGAnimatedAngle::toString):
947         (WebCore::SVGAnimatedBoolean::SVGAnimatedBoolean):
948         (WebCore::SVGAnimatedBoolean::toString):
949         (WebCore::SVGAnimatedEnumeration::SVGAnimatedEnumeration):
950         (WebCore::SVGAnimatedEnumeration::toString):
951         (WebCore::SVGAnimatedInteger::SVGAnimatedInteger):
952         (WebCore::SVGAnimatedInteger::toString):
953         (WebCore::SVGAnimatedLength::SVGAnimatedLength):
954         (WebCore::SVGAnimatedLength::toString):
955         (WebCore::SVGAnimatedLengthList::SVGAnimatedLengthList):
956         (WebCore::SVGAnimatedLengthList::toString):
957         (WebCore::SVGAnimatedNumber::SVGAnimatedNumber):
958         (WebCore::SVGAnimatedNumber::toString):
959         (WebCore::SVGAnimatedNumberList::SVGAnimatedNumberList):
960         (WebCore::SVGAnimatedNumberList::toString):
961         (WebCore::SVGAnimatedPreserveAspectRatio::SVGAnimatedPreserveAspectRatio):
962         (WebCore::SVGAnimatedPreserveAspectRatio::toString):
963         (WebCore::SVGAnimatedRect::SVGAnimatedRect):
964         (WebCore::SVGAnimatedRect::toString):
965         (WebCore::SVGAnimatedString::SVGAnimatedString):
966         (WebCore::SVGAnimatedString::toString):
967         (WebCore::SVGAnimatedTransformList::SVGAnimatedTransformList):
968         (WebCore::SVGAnimatedTransformList::toString):
969         (WebCore::SVGAnimatedType::SVGAnimatedType):
970         * svg/SVGAnimationElement.h:
971         * svg/SVGCircleElement.h:
972         (WebCore::SVGCircleElement::contextElement):
973         * svg/SVGClipPathElement.h:
974         (WebCore::SVGClipPathElement::contextElement):
975         * svg/SVGComponentTransferFunctionElement.cpp:
976         * svg/SVGComponentTransferFunctionElement.h:
977         * svg/SVGCursorElement.cpp:
978         (WebCore::SVGCursorElement::SVGCursorElement):
979         * svg/SVGCursorElement.h:
980         (WebCore::SVGCursorElement::contextElement):
981         * svg/SVGDefsElement.h:
982         (WebCore::SVGDefsElement::contextElement):
983         * svg/SVGElement.cpp:
984         (WebCore::SVGElement::getAttribute):
985         * svg/SVGElement.h:
986         (LazilyUpdatedType::LazilyUpdatedType):
987         (LazilyUpdatedType::operator=):
988         (LazilyUpdatedType::operator==):
989         (LazilyUpdatedType::operator!=):
990         (LazilyUpdatedType::operator StoredType):
991         (WebCore::SVGElement::invokeSVGPropertySynchronizer):
992         (WebCore::SVGElement::addSVGPropertySynchronizer):
993         * svg/SVGEllipseElement.cpp:
994         (WebCore::SVGEllipseElement::SVGEllipseElement):
995         * svg/SVGEllipseElement.h:
996         (WebCore::SVGEllipseElement::contextElement):
997         * svg/SVGExternalResourcesRequired.h:
998         * svg/SVGFEBlendElement.h:
999         (WebCore::SVGFEBlendElement::contextElement):
1000         * svg/SVGFEColorMatrixElement.cpp:
1001         * svg/SVGFEColorMatrixElement.h:
1002         (WebCore::SVGFEColorMatrixElement::contextElement):
1003         * svg/SVGFEComponentTransferElement.h:
1004         (WebCore::SVGFEComponentTransferElement::contextElement):
1005         * svg/SVGFECompositeElement.h:
1006         (WebCore::SVGFECompositeElement::contextElement):
1007         * svg/SVGFEDiffuseLightingElement.h:
1008         (WebCore::SVGFEDiffuseLightingElement::contextElement):
1009         * svg/SVGFEDisplacementMapElement.h:
1010         (WebCore::SVGFEDisplacementMapElement::contextElement):
1011         * svg/SVGFEFloodElement.h:
1012         (WebCore::SVGFEFloodElement::contextElement):
1013         * svg/SVGFEGaussianBlurElement.h:
1014         (WebCore::SVGFEGaussianBlurElement::contextElement):
1015         * svg/SVGFEImageElement.cpp:
1016         * svg/SVGFEImageElement.h:
1017         (WebCore::SVGFEImageElement::contextElement):
1018         * svg/SVGFELightElement.h:
1019         * svg/SVGFEMergeElement.h:
1020         (WebCore::SVGFEMergeElement::contextElement):
1021         * svg/SVGFEMergeNodeElement.h:
1022         (WebCore::SVGFEMergeNodeElement::contextElement):
1023         * svg/SVGFEOffsetElement.h:
1024         (WebCore::SVGFEOffsetElement::contextElement):
1025         * svg/SVGFESpecularLightingElement.h:
1026         (WebCore::SVGFESpecularLightingElement::contextElement):
1027         * svg/SVGFETileElement.h:
1028         (WebCore::SVGFETileElement::contextElement):
1029         * svg/SVGFETurbulenceElement.h:
1030         (WebCore::SVGFETurbulenceElement::contextElement):
1031         * svg/SVGFilterElement.cpp:
1032         (WebCore::SVGFilterElement::SVGFilterElement):
1033         * svg/SVGFilterElement.h:
1034         (WebCore::SVGFilterElement::contextElement):
1035         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
1036         (WebCore::SVGFilterPrimitiveStandardAttributes::SVGFilterPrimitiveStandardAttributes):
1037         * svg/SVGFilterPrimitiveStandardAttributes.h:
1038         (WebCore::SVGFilterPrimitiveStandardAttributes::contextElement):
1039         * svg/SVGFitToViewBox.cpp:
1040         * svg/SVGFitToViewBox.h:
1041         * svg/SVGFontElement.h:
1042         (WebCore::SVGFontElement::contextElement):
1043         * svg/SVGForeignObjectElement.cpp:
1044         (WebCore::SVGForeignObjectElement::SVGForeignObjectElement):
1045         * svg/SVGForeignObjectElement.h:
1046         (WebCore::SVGForeignObjectElement::contextElement):
1047         * svg/SVGGElement.h:
1048         (WebCore::SVGGElement::contextElement):
1049         * svg/SVGGradientElement.cpp:
1050         * svg/SVGGradientElement.h:
1051         * svg/SVGImageElement.cpp:
1052         (WebCore::SVGImageElement::SVGImageElement):
1053         * svg/SVGImageElement.h:
1054         (WebCore::SVGImageElement::contextElement):
1055         * svg/SVGLength.cpp:
1056         (WebCore::SVGLength::SVGLength):
1057         (WebCore::SVGLength::operator=):
1058         (WebCore::SVGLength::operator==):
1059         (WebCore::SVGLength::operator!=):
1060         * svg/SVGLength.h:
1061         * svg/SVGLengthList.cpp:
1062         (WebCore::SVGLengthList::valueAsString):
1063         * svg/SVGLengthList.h:
1064         * svg/SVGLineElement.cpp:
1065         (WebCore::SVGLineElement::SVGLineElement):
1066         * svg/SVGLineElement.h:
1067         (WebCore::SVGLineElement::contextElement):
1068         * svg/SVGLinearGradientElement.cpp:
1069         (WebCore::SVGLinearGradientElement::SVGLinearGradientElement):
1070         (WebCore::SVGLinearGradientElement::collectGradientProperties):
1071         * svg/SVGLinearGradientElement.h:
1072         (WebCore::SVGLinearGradientElement::contextElement):
1073         * svg/SVGMPathElement.h:
1074         (WebCore::SVGMPathElement::contextElement):
1075         * svg/SVGMarkerElement.cpp:
1076         (WebCore::SVGMarkerElement::SVGMarkerElement):
1077         * svg/SVGMarkerElement.h:
1078         (WebCore::SVGMarkerElement::contextElement):
1079         * svg/SVGMaskElement.cpp:
1080         (WebCore::SVGMaskElement::SVGMaskElement):
1081         * svg/SVGMaskElement.h:
1082         (WebCore::SVGMaskElement::contextElement):
1083         * svg/SVGNumberList.cpp:
1084         (WebCore::SVGNumberList::valueAsString):
1085         * svg/SVGNumberList.h:
1086         * svg/SVGPathElement.h:
1087         (WebCore::SVGPathElement::contextElement):
1088         * svg/SVGPatternElement.cpp:
1089         (WebCore::SVGPatternElement::SVGPatternElement):
1090         (WebCore::SVGPatternElement::collectPatternProperties):
1091         * svg/SVGPatternElement.h:
1092         (WebCore::SVGPatternElement::contextElement):
1093         * svg/SVGPolyElement.h:
1094         (WebCore::SVGPolyElement::contextElement):
1095         * svg/SVGPreserveAspectRatio.cpp:
1096         (WebCore::SVGPreserveAspectRatio::valueAsString):
1097         * svg/SVGPreserveAspectRatio.h:
1098         * svg/SVGRadialGradientElement.cpp:
1099         (WebCore::SVGRadialGradientElement::SVGRadialGradientElement):
1100         (WebCore::SVGRadialGradientElement::svgAttributeChanged):
1101         (WebCore::SVGRadialGradientElement::collectGradientProperties):
1102         * svg/SVGRadialGradientElement.h:
1103         (WebCore::SVGRadialGradientElement::contextElement):
1104         * svg/SVGRectElement.cpp:
1105         (WebCore::SVGRectElement::SVGRectElement):
1106         * svg/SVGRectElement.h:
1107         (WebCore::SVGRectElement::contextElement):
1108         * svg/SVGSVGElement.cpp:
1109         (WebCore::SVGSVGElement::SVGSVGElement):
1110         (WebCore::SVGSVGElement::currentView):
1111         * svg/SVGSVGElement.h:
1112         (WebCore::SVGSVGElement::contextElement):
1113         * svg/SVGScriptElement.h:
1114         (WebCore::SVGScriptElement::contextElement):
1115         * svg/SVGSetElement.h:
1116         (WebCore::SVGSetElement::contextElement):
1117         * svg/SVGStyledElement.h:
1118         * svg/SVGStyledTransformableElement.cpp:
1119         * svg/SVGStyledTransformableElement.h:
1120         * svg/SVGSwitchElement.h:
1121         (WebCore::SVGSwitchElement::contextElement):
1122         * svg/SVGSymbolElement.h:
1123         (WebCore::SVGSymbolElement::contextElement):
1124         * svg/SVGTRefElement.h:
1125         (WebCore::SVGTRefElement::contextElement):
1126         * svg/SVGTSpanElement.h:
1127         (WebCore::SVGTSpanElement::contextElement):
1128         * svg/SVGTextContentElement.cpp:
1129         (WebCore::SVGTextContentElement::SVGTextContentElement):
1130         * svg/SVGTextContentElement.h:
1131         * svg/SVGTextElement.cpp:
1132         * svg/SVGTextElement.h:
1133         (WebCore::SVGTextElement::contextElement):
1134         * svg/SVGTextPathElement.cpp:
1135         (WebCore::SVGTextPathElement::SVGTextPathElement):
1136         * svg/SVGTextPathElement.h:
1137         (WebCore::SVGTextPathElement::contextElement):
1138         * svg/SVGTextPositioningElement.cpp:
1139         * svg/SVGTextPositioningElement.h:
1140         * svg/SVGTransformList.cpp:
1141         (SVGTransformList::valueAsString):
1142         * svg/SVGTransformList.h:
1143         * svg/SVGURIReference.h:
1144         * svg/SVGUseElement.cpp:
1145         (WebCore::SVGUseElement::SVGUseElement):
1146         * svg/SVGUseElement.h:
1147         (WebCore::SVGUseElement::contextElement):
1148         * svg/SVGViewElement.h:
1149         (WebCore::SVGViewElement::contextElement):
1150         * svg/SVGViewSpec.cpp:
1151         (WebCore::SVGViewSpec::SVGViewSpec):
1152         (WebCore::SVGViewSpec::contextElement):
1153         * svg/SVGViewSpec.h:
1154
1155 2008-04-02  Darin Adler  <darin@apple.com>
1156
1157         Reviewed by Alexey.
1158
1159         - fix storage leak seen on buildbot
1160
1161         * platform/graphics/cg/ImageBufferCG.cpp:
1162         (WebCore::utiFromMIMEType): Put the result of createCFString() into a RetainPtr. Changed
1163         result to be a RetainPtr.
1164         (WebCore::ImageBuffer::toDataURL): Tweak a little bit, removing one local variable and
1165         some unneeded explicit conversions.
1166
1167 2008-04-01  Darin Adler  <darin@apple.com>
1168
1169         * WebCore.vcproj/WebCore.vcproj: Added RangeBoundaryPoint.h -- not required, but convenient.
1170
1171 2008-04-01  Darin Adler  <darin@apple.com>
1172
1173         Reviewed by Sam and Antti.
1174
1175         - fix <rdar://problem/5829565> paste performance slowed down with the Range Acid3 changes
1176
1177         Added a new class, RangeBoundaryPoint, to use for range boundary points. The "truth" of
1178         the offset is now stored as a node pointer, and the offset is computed as and when needed.
1179         This allows us to efficiently update when the DOM tree is changed -- computation of the
1180         node offsets is deferred until the Range is used later.
1181
1182         * WebCore.base.exp: Export nodeIndex().
1183
1184         * WebCore.xcodeproj/project.pbxproj: Added RangeBoundaryPoint.h, removed NodeWithIndexBefore.h
1185         and NodeWIthIndexAfter.h. Also let Xcode tweak the file formatting.
1186
1187         * dom/ContainerNode.cpp:
1188         (WebCore::ContainerNode::childrenChanged): Pass fewer arguments to Document.
1189
1190         * dom/Document.cpp:
1191         (WebCore::Document::nodeChildrenChanged): Pass fewer arguments to Range.
1192         (WebCore::Document::nodeWillBeRemoved): Pass node to range as a raw node pointer; no need for
1193         the index.
1194         * dom/Document.h: Take fewer arguments.
1195
1196         * dom/NodeWithIndexAfter.h: Removed.
1197         * dom/NodeWithIndexBefore.h: Removed.
1198
1199         * dom/Range.cpp:
1200         (WebCore::Range::Range): Changed to use the new RangeBoundaryPoint constructor.
1201         (WebCore::Range::create): Updated to use RangeBoundaryPoint instead of Position.
1202         (WebCore::Range::~Range): Ditto.
1203         (WebCore::Range::startContainer): Ditto.
1204         (WebCore::Range::startOffset): Ditto.
1205         (WebCore::Range::endContainer): Ditto.
1206         (WebCore::Range::endOffset): Ditto.
1207         (WebCore::Range::commonAncestorContainer): Ditto.
1208         (WebCore::Range::collapsed): Ditto.
1209         (WebCore::Range::setStart): Ditto.
1210         (WebCore::Range::setEnd): Ditto.
1211         (WebCore::Range::collapse): Ditto.
1212         (WebCore::Range::isPointInRange): Ditto.
1213         (WebCore::Range::comparePoint): Ditto.
1214         (WebCore::Range::compareNode): Ditto.
1215         (WebCore::Range::compareBoundaryPoints): Ditto.
1216         (WebCore::Range::boundaryPointsValid): Ditto.
1217         (WebCore::Range::intersectsNode): Ditto.
1218         (WebCore::Range::processContents): Ditto.
1219         (WebCore::Range::cloneContents): Ditto.
1220         (WebCore::Range::insertNode): Updated to use RangeBoundaryPoint. Also simplified the code
1221         at the end that updates the range -- not all of it is needed now since most of the fixup
1222         is done automatically by the range document mutation machinery. The one bit that remains
1223         is arguably a bug, but we need to keep it to keep passing Acid3 until we get clarification
1224         that it is indeed a bug (and then Acid3 will probably have to change).
1225         (WebCore::Range::toString): Update to use RangeBoundaryPoint instead of Position.
1226         (WebCore::Range::text): Ditto.
1227         (WebCore::Range::createContextualFragment): Ditto.
1228         (WebCore::Range::detach): Ditto.
1229         (WebCore::Range::checkNodeWOffset): Changed case where the offset is a node offset to
1230         be more efficient by using childNode instead of childNodeCount, and also return the node
1231         before which is needed to set the value of a RangeBoundaryPoint.
1232         (WebCore::Range::cloneRange): Ditto.
1233         (WebCore::Range::setStartAfter): Ditto.
1234         (WebCore::Range::setEndBefore): Ditto.
1235         (WebCore::Range::setEndAfter): Ditto.
1236         (WebCore::Range::selectNode): Ditto.
1237         (WebCore::Range::selectNodeContents): Ditto.
1238         (WebCore::Range::surroundContents): Ditto.
1239         (WebCore::Range::setStartBefore): Ditto.
1240         (WebCore::Range::checkDeleteExtract): Ditto.
1241         (WebCore::Range::containedByReadOnly): Ditto.
1242         (WebCore::Range::firstNode): Ditto.
1243         (WebCore::Range::editingStartPosition): Ditto.
1244         (WebCore::Range::pastLastNode): Ditto.
1245         (WebCore::Range::addLineBoxRects): Ditto.
1246         (WebCore::Range::formatForDebugger): Ditto.
1247         (WebCore::Range::maxStartOffset): Ditto.
1248         (WebCore::Range::maxEndOffset): Ditto.
1249         (WebCore::boundaryNodeChildrenChanged): Updated to use RangeBoundaryPoint instead of
1250         Position. Also changed name and changed to just call invalidateOffset.
1251         (WebCore::Range::nodeChildrenChanged): Changed to take just a container node.
1252         (WebCore::boundaryNodeWillBeRemoved): Updated to use RangeBoundaryPoint instead of
1253         Position. Also changed name and changed to update childBefore.
1254         (WebCore::Range::nodeWillBeRemoved): Changed to just take a Node*.
1255         (WebCore::boundaryTextInserted): Updated to use RangeBoundaryPoint instead of
1256         Position. Also changed name.
1257         (WebCore::Range::textInserted): Ditto.
1258         (WebCore::boundaryTextRemoved): Ditto.
1259         (WebCore::Range::textRemoved): Ditto.
1260         (WebCore::boundaryTextNodesMerged): Ditto.
1261         (WebCore::Range::textNodesMerged): Ditto.
1262         (WebCore::boundaryTextNodesSplit): Ditto.
1263         (WebCore::Range::textNodeSplit): Ditto.
1264
1265         * dom/Range.h: Updated to use RangeBoundaryPoint instead of Position.
1266
1267         * dom/RangeBoundaryPoint.h: Added.
1268
1269 2008-04-01  Anders Carlsson  <andersca@apple.com>
1270
1271         Reviewed by Sam.
1272
1273         Get rid of old "bindings" forwarding headers.
1274
1275         * ForwardingHeaders/bindings: Removed.
1276         * ForwardingHeaders/bindings/NP_jsobject.h: Removed.
1277         * ForwardingHeaders/bindings/npruntime.h: Removed.
1278         * ForwardingHeaders/bindings/npruntime_impl.h: Removed.
1279         * ForwardingHeaders/bindings/npruntime_internal.h: Removed.
1280         * ForwardingHeaders/bindings/runtime.h: Removed.
1281         * ForwardingHeaders/bindings/runtime_object.h: Removed.
1282         * ForwardingHeaders/bindings/runtime_root.h: Removed.
1283
1284 2008-04-01  Timothy Hatcher  <timothy@apple.com>
1285
1286         Rename DatabasePanel.js to DatabasesPanel.js to facilitate the up-coming UI refresh changes.
1287
1288         http://bugs.webkit.org/show_bug.cgi?id=17773
1289
1290         Rubber-stamped by Brady Eidson.
1291
1292         * WebCore.vcproj/WebCore.vcproj: Reference DatabasesPanel.js.
1293         * page/inspector/DatabasePanel.js: Removed.
1294         * page/inspector/DatabasesPanel.js: Copied from page/inspector/DatabasePanel.js.
1295         * page/inspector/WebKit.qrc: Reference DatabasesPanel.js.
1296         * page/inspector/inspector.html: Reference DatabasesPanel.js.
1297
1298 2008-04-01  Brady Eidson  <beidson@apple.com>
1299
1300         Touch a file to get Windows to rebuild WebCore
1301
1302         * platform/ContextMenu.cpp: Alphabetize headers
1303
1304 2008-04-01  Brady Eidson  <beidson@apple.com>
1305
1306         Reviewed by Adam Roben
1307
1308         Export loader/archive and loader/archive/cf headers for WebKitWin to use
1309
1310         * WebCore.vcproj/WebCore.vcproj:
1311
1312 2008-04-01  Brady Eidson  <beidson@apple.com>
1313
1314         Reviewed by Darin
1315
1316         WebArchives need to load on Windows the same way as on Mac, and this change in the 
1317         finished-loading code path was a big part of that
1318
1319         * loader/FrameLoader.cpp:
1320         (WebCore::FrameLoader::finishedLoadingDocument): Only call the client's finishedLoading()
1321           for non-archive loads
1322
1323 2008-04-01  Dan Bernstein  <mitz@apple.com>
1324
1325         - Mac build fix
1326
1327         * WebCore.xcodeproj/project.pbxproj: Made FontRenderingMode.h private.
1328
1329 2008-04-01  Dan Bernstein  <mitz@apple.com>
1330
1331         Reviewed by Darin Adler.
1332
1333         - move the FontRenderingMode enumeration into its own header file
1334
1335         * WebCore.vcproj/WebCore.vcproj:
1336         * WebCore.xcodeproj/project.pbxproj:
1337         * loader/CachedFont.h:
1338         * platform/graphics/FontDescription.h:
1339         * platform/graphics/FontRenderingMode.h: Added.
1340         (WebCore::):
1341         * platform/graphics/gtk/FontCustomPlatformData.h:
1342         * platform/graphics/mac/FontCustomPlatformData.h:
1343         * platform/graphics/qt/FontCustomPlatformData.h:
1344         * platform/graphics/win/FontCustomPlatformData.h:
1345
1346 2008-04-01  Darin Adler  <darin@apple.com>
1347
1348         Reviewed by Mitz.
1349
1350         - fix <rdar://problem/5833351> REGRESSION: Leak in JSCustomXPathNSResolver::create
1351         - fix <rdar://problem/5833216> REGRESSION: Leak in CSSStyleSelector::addViewportDependentMediaQueryResult
1352
1353         * bindings/js/JSCustomXPathNSResolver.cpp:
1354         (WebCore::JSCustomXPathNSResolver::create): Added a missing adoptRef.
1355         * css/CSSStyleSelector.cpp:
1356         (WebCore::CSSStyleSelector::~CSSStyleSelector): Added a missing call to deleteAllValues.
1357
1358 2008-04-01  Darin Adler  <darin@apple.com>
1359
1360         Reviewed by Sam.
1361
1362         - speed up hasChildNodes, which does not need to be virtual
1363
1364         * dom/ContainerNode.cpp: Removed hasChildNodes.
1365         * dom/ContainerNode.h: Added non-virtual inline hasChildNodes.
1366         * dom/Node.cpp: Removed hasChildNodes.
1367         * dom/Node.h: Added non-vritual inline hasChildNodes.
1368
1369 2008-04-01  Simon Hausmann  <hausmann@webkit.org>
1370
1371         Fix the non-mac build.
1372
1373         * page/AXObjectCache.h: Don't reference AccessibilityObjects when
1374         building without accessibility.
1375         * page/AccessibilityObject.h: Don't include RetainPtr.h for non-mac
1376         builds.
1377
1378 2008-04-01  Holger Hans Peter Freyther  <holger.freyther@trolltech.com>
1379
1380         Reviewed by Simon.
1381
1382         * Do not store the QWebFrame associated with a ScrollView/FrameView
1383         in the WebCore::Widget.
1384         * Instead of asking the Widget for the QWebFrame use the QWebFramePrivate::core
1385         and QWebFramePrivate::kit function to convert from and to QWebFrame.
1386
1387         * platform/Widget.h:
1388         * platform/qt/WidgetQt.cpp:
1389         (WebCore::WidgetPrivate::WidgetPrivate):
1390         (WebCore::Widget::containingWindow):
1391
1392 2008-04-01  Alice Liu  <alice.liu@apple.com>
1393         Patch by Beth Dakin <bdakin@apple.com> and Alice Liu
1394
1395         Reviewed by Darin.
1396
1397         Refactored WebCore Accessibility code.  Prior to this patch, WebCore
1398         accessibility was implemented in an ObjC class named WebCoreAXObject,
1399         with much of the "guts" in C++.  This patch the next natural step of
1400         factoring out the C++ code into a class named AccessibilityObject, and 
1401         in order to maintain the required ObjC object ties, also implements an
1402         ObjC class named AccessibilityObjectWrapper as a thin wrapper around the
1403         C++ object.  Internally within WebCore we operate on the C++ object as
1404         much as possible, and the ObjC object gets used mostly when we need to
1405         return something to AppKit or call something implemented on NSObject.
1406         The AXObjectCache still keeps one HashMap, now of RenderObjects to
1407         AccessibilityObjects instead of WebCoreAXObjects, and the
1408         AccessibilityObject keeps track of its ObjC wrapper.
1409
1410         * WebCore.xcodeproj/project.pbxproj:
1411         * page/AXObjectCache.h:
1412         (WebCore::AXObjectCache::get):
1413         (WebCore::AXObjectCache::removeAXID):
1414         * page/AccessibilityObject.cpp: Added.
1415         (WebCore::AccessibilityObject::AccessibilityObject):
1416         (WebCore::AccessibilityObject::~AccessibilityObject):
1417         (WebCore::AccessibilityObject::create):
1418         (WebCore::AccessibilityObject::detach):
1419         (WebCore::AccessibilityObject::firstChild):
1420         (WebCore::AccessibilityObject::lastChild):
1421         (WebCore::AccessibilityObject::previousSibling):
1422         (WebCore::AccessibilityObject::nextSibling):
1423         (WebCore::AccessibilityObject::parentObject):
1424         (WebCore::AccessibilityObject::parentObjectUnignored):
1425         (WebCore::AccessibilityObject::isWebArea):
1426         (WebCore::AccessibilityObject::isImageButton):
1427         (WebCore::AccessibilityObject::isAnchor):
1428         (WebCore::AccessibilityObject::isTextControl):
1429         (WebCore::AccessibilityObject::isImage):
1430         (WebCore::AccessibilityObject::isAttachment):
1431         (WebCore::isPasswordFieldElement):
1432         (WebCore::AccessibilityObject::isPasswordField):
1433         (WebCore::AccessibilityObject::headingLevel):
1434         (WebCore::AccessibilityObject::isHeading):
1435         (WebCore::AccessibilityObject::anchorElement):
1436         (WebCore::isCheckboxOrRadio):
1437         (WebCore::AccessibilityObject::actionElement):
1438         (WebCore::AccessibilityObject::mouseButtonListener):
1439         (WebCore::AccessibilityObject::helpText):
1440         (WebCore::AccessibilityObject::textUnderElement):
1441         (WebCore::AccessibilityObject::hasIntValue):
1442         (WebCore::AccessibilityObject::intValue):
1443         (WebCore::AccessibilityObject::stringValue):
1444         (WebCore::labelForElement):
1445         (WebCore::AccessibilityObject::title):
1446         (WebCore::AccessibilityObject::accessibilityDescription):
1447         (WebCore::AccessibilityObject::boundingBoxRect):
1448         (WebCore::AccessibilityObject::size):
1449         (WebCore::AccessibilityObject::linkedUIElement):
1450         (WebCore::AccessibilityObject::accessibilityShouldUseUniqueId):
1451         (WebCore::AccessibilityObject::accessibilityIsIgnored):
1452         (WebCore::AccessibilityObject::loaded):
1453         (WebCore::AccessibilityObject::layoutCount):
1454         (WebCore::AccessibilityObject::textLength):
1455         (WebCore::AccessibilityObject::selectedText):
1456         (WebCore::AccessibilityObject::selection):
1457         (WebCore::AccessibilityObject::selectedTextRange):
1458         (WebCore::AccessibilityObject::setSelectedText):
1459         (WebCore::AccessibilityObject::setSelectedTextRange):
1460         (WebCore::AccessibilityObject::makeRangeVisible):
1461         (WebCore::AccessibilityObject::url):
1462         (WebCore::AccessibilityObject::isVisited):
1463         (WebCore::AccessibilityObject::isFocused):
1464         (WebCore::AccessibilityObject::setFocused):
1465         (WebCore::AccessibilityObject::setValue):
1466         (WebCore::AccessibilityObject::isEnabled):
1467         (WebCore::AccessibilityObject::press):
1468         (WebCore::AccessibilityObject::topRenderer):
1469         (WebCore::AccessibilityObject::textControl):
1470         (WebCore::AccessibilityObject::widget):
1471         (WebCore::AccessibilityObject::axObjectCache):
1472         (WebCore::AccessibilityObject::documentLinks):
1473         (WebCore::AccessibilityObject::documentFrameView):
1474         (WebCore::AccessibilityObject::frameViewIfRenderView):
1475         (WebCore::AccessibilityObject::visiblePositionRange):
1476         (WebCore::AccessibilityObject::doAXTextMarkerRangeForLine):
1477         (WebCore::AccessibilityObject::doAXTextMarkerRangeForUnorderedTextMarkers):
1478         (WebCore::AccessibilityObject::doAXLeftWordTextMarkerRangeForTextMarker):
1479         (WebCore::AccessibilityObject::doAXRightWordTextMarkerRangeForTextMarker):
1480         (WebCore::updateAXLineStartForVisiblePosition):
1481         (WebCore::AccessibilityObject::doAXLeftLineTextMarkerRangeForTextMarker):
1482         (WebCore::AccessibilityObject::doAXRightLineTextMarkerRangeForTextMarker):
1483         (WebCore::AccessibilityObject::doAXSentenceTextMarkerRangeForTextMarker):
1484         (WebCore::AccessibilityObject::doAXParagraphTextMarkerRangeForTextMarker):
1485         (WebCore::startOfStyleRange):
1486         (WebCore::endOfStyleRange):
1487         (WebCore::AccessibilityObject::doAXStyleTextMarkerRangeForTextMarker):
1488         (WebCore::AccessibilityObject::textMarkerRangeForRange):
1489         (WebCore::AccessibilityObject::stringForReplacedNode):
1490         (WebCore::AccessibilityObject::doAXStringForTextMarkerRange):
1491         (WebCore::AccessibilityObject::doAXBoundsForTextMarkerRange):
1492         (WebCore::AccessibilityObject::doAXLengthForTextMarkerRange):
1493         (WebCore::AccessibilityObject::doSetAXSelectedTextMarkerRange):
1494         (WebCore::AccessibilityObject::doAXTextMarkerForPosition):
1495         (WebCore::AccessibilityObject::doAXNextTextMarkerForTextMarker):
1496         (WebCore::AccessibilityObject::doAXPreviousTextMarkerForTextMarker):
1497         (WebCore::AccessibilityObject::doAXNextWordEndTextMarkerForTextMarker):
1498         (WebCore::AccessibilityObject::doAXPreviousWordStartTextMarkerForTextMarker):
1499         (WebCore::AccessibilityObject::doAXNextLineEndTextMarkerForTextMarker):
1500         (WebCore::AccessibilityObject::doAXPreviousLineStartTextMarkerForTextMarker):
1501         (WebCore::AccessibilityObject::doAXNextSentenceEndTextMarkerForTextMarker):
1502         (WebCore::AccessibilityObject::doAXPreviousSentenceStartTextMarkerForTextMarker):
1503         (WebCore::AccessibilityObject::doAXNextParagraphEndTextMarkerForTextMarker):
1504         (WebCore::AccessibilityObject::doAXPreviousParagraphStartTextMarkerForTextMarker):
1505         (WebCore::AccessibilityObject::textMarkerForIndex):
1506         (WebCore::AccessibilityObject::doAXUIElementForTextMarker):
1507         (WebCore::AccessibilityObject::doAXLineForTextMarker):
1508         (WebCore::AccessibilityObject::rangeForTextMarkerRange):
1509         (WebCore::AccessibilityObject::indexForTextMarker):
1510         (WebCore::AccessibilityObject::doAXRangeForLine):
1511         (WebCore::AccessibilityObject::doAXRangeForPosition):
1512         (WebCore::AccessibilityObject::doAXRangeForIndex):
1513         (WebCore::AccessibilityObject::doAXStyleRangeForIndex):
1514         (WebCore::AccessibilityObject::doAXStringForRange):
1515         (WebCore::AccessibilityObject::doAXBoundsForRange):
1516         (WebCore::AccessibilityObject::doAXLineForIndex):
1517         (WebCore::AccessibilityObject::doAccessibilityHitTest):
1518         (WebCore::AccessibilityObject::focusedUIElement):
1519         (WebCore::AccessibilityObject::observableObject):
1520         (WebCore::AccessibilityObject::roleValue):
1521         (WebCore::AccessibilityObject::canSetFocusAttribute):
1522         (WebCore::AccessibilityObject::canSetValueAttribute):
1523         (WebCore::AccessibilityObject::canSetTextRangeAttributes):
1524         (WebCore::AccessibilityObject::childrenChanged):
1525         (WebCore::AccessibilityObject::clearChildren):
1526         (WebCore::AccessibilityObject::hasChildren):
1527         (WebCore::AccessibilityObject::addChildren):
1528         (WebCore::AccessibilityObject::axObjectID):
1529         (WebCore::AccessibilityObject::setAXObjectID):
1530         (WebCore::AccessibilityObject::removeAXObjectID):
1531         * page/AccessibilityObject.h: Added.
1532         (WebCore::):
1533         (WebCore::VisiblePositionRange::VisiblePositionRange):
1534         (WebCore::VisiblePositionRange::isNull):
1535         (WebCore::AccessibilityObject::detached):
1536         (WebCore::AccessibilityObject::PlainTextRange::PlainTextRange):
1537         (WebCore::AccessibilityObject::PlainTextRange::isNull):
1538         (WebCore::AccessibilityObject::renderer):
1539         (WebCore::AccessibilityObject::children):
1540         (WebCore::AccessibilityObject::wrapper):
1541         (WebCore::AccessibilityObject::setWrapper):
1542         * page/mac/AXObjectCacheMac.mm:
1543         (WebCore::AXObjectCache::~AXObjectCache):
1544         (WebCore::AXObjectCache::get):
1545         (WebCore::AXObjectCache::remove):
1546         (WebCore::AXObjectCache::getAXID):
1547         (WebCore::AXObjectCache::removeAXID):
1548         (WebCore::AXObjectCache::textMarkerForVisiblePosition):
1549         (WebCore::AXObjectCache::childrenChanged):
1550         (WebCore::AXObjectCache::postNotification):
1551         (WebCore::AXObjectCache::postNotificationToElement):
1552         * page/mac/AccessibilityObjectMac.mm: Added.
1553         (createAccessibilityRoleMap):
1554         (RoleEntry::):
1555         (roleValueToNSString):
1556         (AccessibilityObject::attachmentView):
1557         (AccessibilityObject::performPressActionForAttachment):
1558         (AccessibilityObject::textMarkerRange):
1559         (AccessibilityObject::textMarkerForVisiblePosition):
1560         (AccessibilityObject::startTextMarker):
1561         (AccessibilityObject::visiblePositionForTextMarker):
1562         (AccessibilityObject::visiblePositionForStartOfTextMarkerRange):
1563         (AccessibilityObject::visiblePositionForEndOfTextMarkerRange):
1564         (AccessibilityObject::textMarkerRangeFromVisiblePositions):
1565         (AccessibilityObject::textMarkerRangeForSelection):
1566         (AccessibilityObject::textMarkerRangeFromMarkers):
1567         (AccessibilityObject::convertViewRectToScreenCoords):
1568         (AccessibilityObject::convertAbsolutePointToViewCoords):
1569         (AccessibilityObject::convertWidgetChildrenToNSArray):
1570         (AccessibilityObject::position):
1571         (AccessibilityObject::role):
1572         (AccessibilityObject::subrole):
1573         (AccessibilityObject::roleDescription):
1574         (blockquoteLevel):
1575         (AccessibilityObject::AXAttributeStringSetElement):
1576         (AXAttributeStringSetBlockquoteLevel):
1577         (CreateCGColorIfDifferent):
1578         (AXAttributeStringSetColor):
1579         (AXAttributeStringSetNumber):
1580         (AXAttributeStringSetFont):
1581         (AXAttributeStringSetStyle):
1582         (AccessibilityObject::AXAttributeStringSetHeadingLevel):
1583         (AccessibilityObject::AXLinkElementForNode):
1584         (AXAttributeStringSetSpelling):
1585         (AccessibilityObject::AXAttributedStringAppendText):
1586         (nsStringForReplacedNode):
1587         (AccessibilityObject::doAXAttributedStringForTextMarkerRange):
1588         (AccessibilityObject::doAXAttributedStringForRange):
1589         (AccessibilityObject::doAXRTFForRange):
1590         * page/mac/AccessibilityObjectWrapper.h: Added.
1591         * page/mac/AccessibilityObjectWrapper.mm: Added.
1592         (-[AccessibilityObjectWrapper initWithAccessibilityObject:]):
1593         (-[AccessibilityObjectWrapper unregisterUniqueIdForUIElement]):
1594         (-[AccessibilityObjectWrapper detach]):
1595         (-[AccessibilityObjectWrapper accessibilityObject]):
1596         (-[AccessibilityObjectWrapper accessibilityActionNames]):
1597         (-[AccessibilityObjectWrapper accessibilityAttributeNames]):
1598         (-[AccessibilityObjectWrapper visiblePositionRangeForTextMarkerRange:]):
1599         (-[AccessibilityObjectWrapper renderWidgetChildren]):
1600         (convertToNSArray):
1601         (-[AccessibilityObjectWrapper accessibilityAttributeValue:]):
1602         (-[AccessibilityObjectWrapper accessibilityFocusedUIElement]):
1603         (-[AccessibilityObjectWrapper accessibilityHitTest:]):
1604         (-[AccessibilityObjectWrapper accessibilityIsAttributeSettable:]):
1605         (-[AccessibilityObjectWrapper accessibilityIsIgnored]):
1606         (-[AccessibilityObjectWrapper accessibilityParameterizedAttributeNames]):
1607         (-[AccessibilityObjectWrapper accessibilityPerformAction:]):
1608         (-[AccessibilityObjectWrapper accessibilitySetValue:forAttribute:]):
1609         (rendererForView):
1610         (-[AccessibilityObjectWrapper _accessibilityParentForSubview:]):
1611         (-[AccessibilityObjectWrapper accessibilityActionDescription:]):
1612         (-[AccessibilityObjectWrapper accessibilityAttributeValue:forParameter:]):
1613         (-[AccessibilityObjectWrapper accessibilityShouldUseUniqueId]):
1614         * page/mac/WebCoreAXObject.h: Removed.
1615         * page/mac/WebCoreAXObject.mm: Removed.
1616         * rendering/RenderMenuList.cpp:
1617         (WebCore::RenderMenuList::selectElement):
1618         * rendering/RenderMenuList.h:
1619
1620 2008-03-31  Dan Bernstein  <mitz@apple.com>
1621
1622         - fix previous attempted fixes
1623
1624         * platform/qt/TemporaryLinkStubs.cpp:
1625         (PluginDatabase::getPluginPathsInDirectories):
1626         * platform/wx/TemporaryLinkStubs.cpp:
1627         (PluginDatabase::getPluginPathsInDirectories):
1628
1629 2008-03-31  Dan Bernstein  <mitz@apple.com>
1630
1631         - fix Qt link stubs
1632
1633         * platform/qt/TemporaryLinkStubs.cpp:
1634         (PluginDatabase::getPluginPathsInDirectories):
1635         (PluginDatabase::isPreferredPluginDirectory):
1636
1637 2008-03-31  Dan Bernstein  <mitz@apple.com>
1638
1639         - try to fix the Wx build
1640
1641         * platform/wx/TemporaryLinkStubs.cpp:
1642         (PluginDatabase::getPluginPathsInDirectories):
1643         (PluginDatabase::isPreferredPluginDirectory):
1644
1645 2008-03-31  Dan Bernstein  <mitz@apple.com>
1646
1647         - Gtk and Qt build fixes
1648
1649         * platform/graphics/gtk/FontCustomPlatformData.cpp:
1650         (WebCore::FontCustomPlatformData::fontPlatformData):
1651         * platform/graphics/gtk/FontCustomPlatformData.h:
1652         * platform/graphics/qt/FontCustomPlatformData.cpp:
1653         (WebCore::FontCustomPlatformData::fontPlatformData):
1654         * platform/graphics/qt/FontCustomPlatformData.h:
1655
1656 2008-03-31  Dan Bernstein  <mitz@apple.com>
1657
1658         - Mac build fix
1659
1660         * platform/graphics/mac/FontCustomPlatformData.cpp:
1661         (WebCore::FontCustomPlatformData::fontPlatformData):
1662         * platform/graphics/mac/FontCustomPlatformData.h:
1663
1664 2008-03-31  Dan Bernstein  <mitz@apple.com>
1665
1666         Reviewed by Darin Adler.
1667
1668         - fix <rdar://problem/5792638> @font-face with downloadable fonts doesn't work with GDI text
1669
1670         * WebCore.vcproj/WebCore.vcproj: Added GetEOTHeader.{h,cpp}
1671
1672         * css/CSSFontFaceSource.cpp:
1673         (WebCore::CSSFontFaceSource::getFontData): Changed to pass the rendering
1674         mode to CachedFont::platformDataFromCustomData().
1675
1676         * loader/CachedFont.cpp:
1677         (WebCore::CachedFont::platformDataFromCustomData): Added a rendering
1678         mode parameter which is passed down to
1679         FontCustomPlatformData::fontPlatformData().
1680
1681         * loader/CachedFont.h:
1682
1683         * platform/graphics/win/FontCacheWin.cpp:
1684         (WebCore::FontCache::fontExists): Changed the number 5 to the named
1685         constant CLEARTYPE_QUALITY.
1686
1687         * platform/graphics/win/FontCustomPlatformData.cpp:
1688         (WebCore::FontCustomPlatformData::~FontCustomPlatformData): Added code
1689         to delete the embedded font reference.
1690         (WebCore::FontCustomPlatformData::fontPlatformData): Added code to
1691         create an HFONT from the embedded font reference and pass it along with
1692         the CGFontRef to the FontPlatformData constructor. Added a rendering
1693         mode parameter which is passed down to the FontPlatformData constructor.
1694         (WebCore::EOTStream::EOTStream): Added this helper class used to feed
1695         data to TTLoadEmbeddedFont().
1696         (WebCore::EOTStream::read): Added.
1697         (WebCore::readEmbedProc): Added this TTLoadEmbeddedFont() callback.
1698         (WebCore::createUniqueFontName): Added. Creates a unique GUID-derived
1699         font name. 
1700         (WebCore::createFontCustomPlatformData): Added code to make the font
1701         accessible to GDI by creating an Embedded OpenType stream and
1702         activating it in the process under a globally-unique name.
1703
1704         * platform/graphics/win/FontCustomPlatformData.h:
1705         Added a font reference data member which holds the embedded font.
1706         (WebCore::FontCustomPlatformData::FontCustomPlatformData): Added a
1707         rendering mode parameter.
1708
1709         * platform/graphics/win/FontPlatformData.h:
1710         (WebCore::FontPlatformData::FontPlatformData): Made this class always
1711         own the CGFontRef and the HFONT by turning these data members into a
1712         RetainPtr and a RefPtr around a RefCountedHFONT.
1713         Added an HFONT parameter to the CGFontRef-based constructor.
1714         Made platformDataInit() private.
1715         (WebCore::FontPlatformData::hfont):
1716         (WebCore::FontPlatformData::cgFont):
1717         (WebCore::FontPlatformData::hash):
1718         (WebCore::FontPlatformData::RefCountedHFONT::RefCountedHFONT): Added.
1719         (WebCore::FontPlatformData::RefCountedHFONT::~RefCountedHFONT):
1720         (WebCore::FontPlatformData::RefCountedHFONT::hfont):
1721         (WebCore::FontPlatformData::RefCountedHFONT::hash):
1722
1723         * platform/graphics/win/FontPlatformDataCGWin.cpp:
1724         (WebCore::FontPlatformData::platformDataInit): Changed to take
1725         ownership of the CGFontRef created here.
1726         (WebCore::FontPlatformData::FontPlatformData): Added an HFONT parameter
1727         and a useGDI flag.
1728
1729         * platform/graphics/win/FontPlatformDataWin.cpp:
1730         (WebCore::FontPlatformData::FontPlatformData): Changed to take ownership
1731         of the HFONT.
1732
1733         * platform/graphics/win/GetEOTHeader.cpp: Added.
1734         (WebCore::BigEndianUShort::operator unsigned short):
1735         (WebCore::BigEndianULong::operator unsigned):
1736         (WebCore::appendBigEndianStringToEOTHeader):
1737         (WebCore::getEOTHeader): Added. Creates an Embedded OpenType (.eot)
1738         header for the given font data, making it suitable as input for
1739         TTLoadEmbeddedFont.
1740
1741         * platform/graphics/win/GetEOTHeader.h: Added.
1742
1743         * platform/graphics/win/SimpleFontDataCGWin.cpp:
1744         (WebCore::SimpleFontData::platformDestroy): Removed code to delete parts
1745         of the FontPlatformData, since they are now always owned and managed
1746         by the FontPlatformData.
1747
1748 2008-03-31  Darin Adler  <darin@apple.com>
1749
1750         Reviewed by Anders.
1751
1752         - fix crash seen on buildbot (regression from a recent speedup)
1753
1754         * html/HTMLDocument.cpp:
1755         (WebCore::HTMLDocument::createElement): Check validity before calling isLower, since
1756         that takes care of the null string case.
1757
1758 2008-03-31  Dan Bernstein  <mitz@apple.com>
1759
1760         Reviewed by John Sullivan.
1761
1762         - fix <rdar://problem/5741075> Google Maps: cursor and placemarks don't match up
1763
1764         * platform/win/CursorWin.cpp:
1765         (WebCore::Cursor::Cursor): Set the 1-bit mask for full-alpha cursors
1766         to fully opaque. The mask is ignored and the alpha values from the
1767         32-bit image are used except in the case of a fully-transparent image,
1768         in which the fully-opaque 1-bit mask is required to get transparency.
1769
1770 2008-03-31  Brady Eidson  <beidson@apple.com>
1771
1772         Reviewed by Jon Honeycutt
1773
1774         Move a WebArchive loading check into WebCore
1775         
1776         * loader/FrameLoader.cpp:
1777         (WebCore::FrameLoader::committedLoad): Don't call the client method if currently loading a WebArchive
1778
1779 2008-03-31  Brady Eidson  <beidson@apple.com>
1780
1781         Reviewed by Oliver Hunt
1782
1783         "Turn on" WebArchives for Windows
1784         
1785         Thought I'd done this already, but I hadn't!
1786
1787         * platform/MIMETypeRegistry.cpp:
1788         (WebCore::initializeSupportedNonImageMimeTypes): Apply known ArchiveFactory MIME types
1789
1790 2008-03-31  Dan Bernstein  <mitz@apple.com>
1791
1792         Reviewed by Dave Hyatt.
1793
1794         - fix http://bugs.webkit.org/show_bug.cgi?id=18076
1795           Box disappears after CSS Transition completes
1796
1797         * page/AnimationController.cpp: Changed the BLEND_MAYBE_INVALID_COLOR
1798         macro to not blend two invalid colors.
1799         * rendering/RenderStyle.cpp:
1800         (WebCore::StyleBackgroundData::StyleBackgroundData): Added missing
1801         copying of the m_color data member.
1802
1803 2008-03-31  Julien Chaffraix  <jchaffraix@webkit.org>
1804
1805         Reviewed by Darin.
1806
1807         Bug 18177: m_encoding is used twice in XMLHttpRequest
1808         http://bugs.webkit.org/show_bug.cgi?id=18177
1809
1810         - Change XMLHttpRequest variable m_encoding to m_responseEncoding.
1811
1812         - Change send local variable m_encoding to encoding.
1813
1814         No test case (no functionnal change).
1815
1816         * platform/network/ResourceResponseBase.h: Removed unused variable.
1817         * xml/XMLHttpRequest.cpp:
1818         (WebCore::XMLHttpRequest::send): Changed local m_encoding to encoding.
1819         (WebCore::XMLHttpRequest::didReceiveResponse): m_encoding -> m_responseEncoding.
1820         (WebCore::XMLHttpRequest::didReceiveData): Ditto.
1821         * xml/XMLHttpRequest.h: Change m_encoding to m_responseEncoding to disambiguate
1822         the name as it is only used for response.
1823
1824 2008-03-27  Adam Roben  <aroben@apple.com>
1825
1826         Pass the right ExecStates to toJS when creating JS wrappers for
1827         objects from the inspected page
1828
1829         We now use an ExecState from the inspected page to create the JS
1830         wrappers for objects from the inspected page, rather than use an
1831         ExecState from the Inspector.
1832
1833         Reviewed by Tim Hatcher.
1834
1835         * page/InspectorController.cpp:
1836         (WebCore::getResourceDocumentNode):
1837         (WebCore::InspectorController::focusNode):
1838         (WebCore::InspectorController::addDatabaseScriptResource):
1839
1840 2008-03-31  Adam Roben  <aroben@apple.com>
1841
1842         Stop relying on functions added to prototypes in the Inspector being
1843         callable on objects from the inspected window
1844
1845         Reviewed by Tim Hatcher.
1846
1847         * page/inspector/Console.js:
1848         (WebInspector.ConsolePanel._formatnode): Use nodeTitleInfo.call(node)
1849         instead of node.titleInfo().
1850         * page/inspector/StylesSidebarPane.js: Changed uses of
1851         getShorthandValue, getShorthandPriority, getLonghandProperties, and
1852         getUniqueStyleProperties to call them as functions instead of as
1853         methods on the CSSStyleDeclaration objects.
1854         * page/inspector/utilities.js: Removed Node.prototype.titleInfo, and
1855         changed our CSSStyleDeclaration methods to just be standalone
1856         functions.
1857
1858 2008-03-26  Adam Roben  <aroben@apple.com>
1859
1860         Fix an exception while adding a message to the console
1861
1862         Reviewed by Mark Rowe.
1863
1864         * page/inspector/ConsolePanel.js: Don't call addMessageToSource if the
1865         panel has no such method. This can happen if we get a message for,
1866         e.g., a Database.
1867
1868 2008-03-31  Brady Eidson  <beidson@apple.com>
1869
1870         Reviewed by Darin and Mitz's rubber stamp
1871
1872         Remove dataForArchivedSelection(WebCore::Frame*) from the EditorClient - only usage is now directly in WebCore
1873
1874         * page/EditorClient.h:
1875         * svg/graphics/SVGImageEmptyClients.h:
1876
1877         * platform/mac/PasteboardMac.mm:
1878         (WebCore::Pasteboard::writeSelection): Make the archive and get the data directly
1879
1880 2008-03-31  Brady Eidson  <beidson@apple.com>
1881
1882         Reviewed by Mitz Pettel
1883
1884         Fix for http://bugs.webkit.org/show_bug.cgi?id=18183
1885
1886         Despite the bug reporter's instructions, I have still not been able to actually reproduce this crash and 
1887         therefore don't know how to make a layout test for it.
1888
1889         * loader/archive/ArchiveResource.cpp:
1890         (WebCore::ArchiveResource::response): Fix potential null dereference
1891
1892 2008-03-29  Adam Roben  <aroben@apple.com>
1893
1894         Fix Bug 18208: Acid3 test 65 takes >33ms due to plugin refreshing on
1895         Windows
1896
1897         <http://bugs.webkit.org/show_bug.cgi?id=18208>
1898
1899         We now keep track of all the plugin paths found each time refresh() is
1900         called. We'll only instantiate PluginPackages if there are new paths
1901         or paths with changed timestamps since the last time refresh() was
1902         called.
1903
1904         Reviewed by Darin Adler and Anders Carlsson.
1905
1906         * plugins/PluginDatabase.cpp:
1907         (WebCore::PluginDatabase::refresh):
1908           - Only instantiate PluginPackages if there is a new path or a path
1909             with a changed timestamp since we last ran refresh().
1910           - Cache the set of plugin paths found and their timestamps for the
1911             next call to refresh().
1912           - Only re-register MIME types if our set of plugins changed.
1913         * plugins/PluginDatabase.h: Added a new member to cache plugin paths
1914         and their timestamps.
1915
1916 2008-03-29  Adam Roben  <aroben@apple.com>
1917
1918         Separate filesystem crawling from PluginPackage instantiation
1919
1920         Part of Bug 18208: Acid3 test 65 takes >33ms due to plugin refreshing
1921         on Windows
1922         <http://bugs.webkit.org/show_bug.cgi?id=18208>
1923
1924         refresh() is now the only place where PluginPackages are instantiated.
1925         refresh() now asks for a set of plugins that no longer exist on disk,
1926         and the set of all plugin files in our plugin directories. Using these
1927         two sets we can update our instantiated plugins without copying any
1928         HashSets. The code in refresh() and in the platform-specific methods
1929         to crawl the filesystem is now quite a bit simpler.
1930
1931         PluginDatabase now stores both a PluginSet and a HashMap that maps
1932         plugin paths to PluginPackages. This allows us to quickly determine
1933         whether we already have a PluginPackage instantiated for a particular
1934         path. The new add/remove methods handle the modification of these two
1935         collections.
1936
1937         A nice side effect of all this is that refresh() no longer copies any
1938         HashSets.
1939
1940         Reviewed by Mitz Pettel.
1941
1942         * plugins/PluginDatabase.cpp:
1943         (WebCore::PluginDatabase::refresh): Unload any plugins that have been
1944         deleted from disk, and add any plugins that either weren't installed
1945         last time, or have changed since last time.
1946         (WebCore::PluginDatabase::getDeletedPlugins): Added.
1947         (WebCore::PluginDatabase::add): Added. Returns whether or not the
1948         PluginPackage was actually added to the database (duplicates won't be
1949         added).
1950         (WebCore::PluginDatabase::remove): Added.
1951         * plugins/PluginDatabase.h:
1952         * plugins/PluginPackage.h:
1953         (WebCore::PluginPackage::path): Added.
1954         (WebCore::PluginPackage::lastModified): Added.
1955         * plugins/gtk/PluginDatabaseGtk.cpp:
1956         (WebCore::PluginDatabase::getPluginPathsInDirectories): Renamed from
1957         getPluginsInDirectories. Now fills a HashSet of Strings instead of
1958         instantiated PluginPackages.
1959         * plugins/win/PluginDatabaseWin.cpp:
1960         (WebCore::addPluginPathsFromRegistry): Ditto.
1961         (WebCore::PluginDatabase::getPluginPathsInDirectories): Ditto.
1962
1963 2008-03-29  Adam Roben  <aroben@apple.com>
1964
1965         Change getPluginsInDirectories to use an out parameter
1966
1967         This avoids copying a HashSet.
1968
1969         Reviewed by Mitz Pettel.
1970
1971         * plugins/PluginDatabase.cpp:
1972         (WebCore::PluginDatabase::refresh):
1973         * plugins/PluginDatabase.h:
1974         * plugins/gtk/PluginDatabaseGtk.cpp:
1975         (WebCore::PluginDatabase::getPluginsInDirectories):
1976         * plugins/win/PluginDatabaseWin.cpp:
1977         (WebCore::PluginDatabase::getPluginsInDirectories):
1978
1979 2008-03-29  Adam Roben  <aroben@apple.com>
1980
1981         Make some PluginPackage methods return const String&
1982
1983         Reviewed by Mitz Pettel.
1984
1985         * plugins/PluginPackage.h:
1986
1987 2008-03-29  Adam Roben  <aroben@apple.com>
1988
1989         Rename PluginDatabase's "PluginPaths" to "PluginDirectories"
1990
1991         The code expects these paths to all be directories, so it seems good
1992         to refer to them as such.
1993
1994         This patch just changes "Paths" to "Directories" and "Path" to
1995         "Directory".
1996
1997         Reviewed by Mitz Pettel.
1998
1999         * platform/qt/TemporaryLinkStubs.cpp:
2000         * platform/wx/TemporaryLinkStubs.cpp:
2001         * plugins/PluginDatabase.cpp:
2002         (WebCore::PluginDatabase::installedPlugins):
2003         (WebCore::PluginDatabase::refresh):
2004         * plugins/PluginDatabase.h:
2005         (WebCore::PluginDatabase::setPluginDirectories):
2006         * plugins/gtk/PluginDatabaseGtk.cpp:
2007         (WebCore::PluginDatabase::getPluginsInDirectories):
2008         * plugins/win/PluginDatabaseWin.cpp:
2009         (WebCore::PluginDatabase::getPluginsInDirectories):
2010         (WebCore::safariPluginsDirectory):
2011         (WebCore::PluginDatabase::defaultPluginDirectories):
2012         (WebCore::PluginDatabase::isPreferredPluginDirectory):
2013         * plugins/win/PluginPackageWin.cpp:
2014         (WebCore::PluginPackage::compare):
2015
2016 2008-03-29  Adam Roben  <aroben@apple.com>
2017
2018         Remove PlatformFileTime
2019
2020         This typedef is time_t on all platforms, so we can just get rid of the
2021         typedef.
2022
2023         Reviewed by Mitz Pettel.
2024
2025         * platform/FileSystem.h:
2026         * plugins/PluginPackage.cpp:
2027         * plugins/PluginPackage.h:
2028
2029 2008-03-29  Adam Roben  <aroben@apple.com>
2030
2031         Change PlatformFileTime on Windows to be time_t
2032
2033         This matches other platforms and our existing functions in
2034         FileSystem.h. It will also let us get rid of PlatformFileTime
2035         altogether.
2036
2037         Reviewed by Mitz Pettel.
2038
2039         * platform/FileSystem.h: Change PlatformFileTime to time_t on Windows.
2040         * plugins/win/PluginDatabaseWin.cpp:
2041         (WebCore::addPluginsFromRegistry): Use getFileModificationTime to get
2042         the modification time to pass to PluginPackage::create.
2043         (WebCore::PluginDatabase::getPluginsInPaths): Ditto.
2044         * plugins/win/PluginPackageWin.cpp:
2045         (WebCore::PluginPackage::hash): Updated to use m_lastModified as a
2046         time_t.
2047         (WebCore::PluginPackage::equal): Ditto.
2048
2049 2008-03-29  Adam Roben  <aroben@apple.com>
2050
2051         Make PluginPackage work like our other RefCounted classes
2052
2053         PluginPackage now starts with a ref count of 1, and its createPackage
2054         method now returns a PassRefPtr instead of a raw pointer.
2055
2056         Reviewed by Darin Adler.
2057
2058         * plugins/PluginPackage.cpp:
2059         (WebCore::PluginPackage::PluginPackage): Removed explicit call to the
2060         RefCounted constructor so that we'll start with a ref count of 1.
2061         (WebCore::PluginPackage::createPackage): Changed to return a
2062         PassRefPtr.
2063         * plugins/PluginPackage.h:
2064         * plugins/gtk/PluginDatabaseGtk.cpp:
2065         (WebCore::PluginDatabase::getPluginsInPaths): Changed to store the
2066         newly-created PluginPackage in a RefPtr.
2067         * plugins/win/PluginDatabaseWin.cpp:
2068         (WebCore::addPluginsFromRegistry): Ditto.
2069         (WebCore::PluginDatabase::getPluginsInPaths): Ditto.
2070
2071 2008-03-29  Adam Roben  <aroben@apple.com>
2072
2073         Fix Bug 18214: WebKit will sometimes load duplicate plugins
2074
2075         <http://bugs.webkit.org/show_bug.cgi?id=18214>
2076
2077         We now compare 3 things to determine if two PluginPackages are equal:
2078           1) Name
2079           2) Description
2080           3) Supported MIME types
2081
2082         This matches Gecko's equality logic for plugins (implemented in
2083         nsPluginTag::Equals).
2084
2085         Reviewed by Darin Adler.
2086
2087         * plugins/win/PluginPackageWin.cpp:
2088         (WebCore::PluginPackage::hash): Use the above-mentioned 3 criteria to
2089         calculate the hash.
2090         (WebCore::PluginPackage::equal): Use the above-mentioned 3 criteria to
2091         determine equality.
2092
2093 2008-03-31  Simon Hausmann  <hausmann@webkit.org>
2094
2095         Fix the Qt build.
2096
2097         ResourceHandleInternal.h references ResourceHandle::fireFailure, so include
2098         ResourceHandle.h.
2099
2100         * platform/network/ResourceHandleInternal.h:
2101
2102 2008-03-31  Rob Buis  <buis@kde.org>
2103
2104         Reviewed by Darin.
2105
2106         http://bugs.webkit.org/show_bug.cgi?id=15595
2107         marker property doesn't show up correctly as "shorthand" in inspector
2108
2109         Make sure parsing the marker property sets the individual
2110         marker properties as implicit with marker as shorthand.
2111         Also let CSSStyleDecleration::getPropertyValue return
2112         the correct value for the marker property.
2113
2114         * css/CSSMutableStyleDeclaration.cpp:
2115         (WebCore::CSSMutableStyleDeclaration::getPropertyValue):
2116         * css/CSSParser.cpp:
2117         * css/CSSParser.h:
2118         (WebCore::ShorthandScope::ShorthandScope):
2119         (WebCore::ShorthandScope::~ShorthandScope):
2120         * css/SVGCSSParser.cpp:
2121         (WebCore::CSSParser::parseSVGValue):
2122
2123 2008-03-30  Eric Seidel  <eric@webkit.org>
2124
2125         Reviewed by Oliver.
2126
2127         Make AMatthews life easier -- fix the SVG_FILTERS build
2128
2129         Build fix only, no tests.
2130
2131         * svg/SVGComponentTransferFunctionElement.cpp:
2132         (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement):
2133         * svg/SVGFEColorMatrixElement.cpp:
2134         (WebCore::SVGFEColorMatrixElement::SVGFEColorMatrixElement):
2135         * svg/SVGFEDiffuseLightingElement.cpp:
2136         * svg/SVGFEGaussianBlurElement.cpp:
2137         * svg/SVGFEImageElement.cpp:
2138         (WebCore::SVGFEImageElement::SVGFEImageElement):
2139         * svg/SVGFESpecularLightingElement.cpp:
2140         * svg/SVGFETurbulenceElement.cpp:
2141         * svg/SVGFilterElement.cpp:
2142         * svg/SVGFilterPrimitiveStandardAttributes.cpp:
2143         * svg/graphics/filters/SVGFEBlend.cpp:
2144         * svg/graphics/filters/SVGFEComponentTransfer.cpp:
2145         * svg/graphics/filters/SVGFEComposite.cpp:
2146         * svg/graphics/filters/SVGFEDiffuseLighting.cpp:
2147         * svg/graphics/filters/SVGFEGaussianBlur.cpp:
2148         * svg/graphics/filters/SVGFEImage.cpp:
2149         * svg/graphics/filters/SVGFEMerge.cpp:
2150         * svg/graphics/filters/SVGFEMorphology.cpp:
2151         * svg/graphics/filters/SVGFEOffset.cpp:
2152         * svg/graphics/filters/SVGFESpecularLighting.cpp:
2153         * svg/graphics/filters/SVGFETurbulence.cpp:
2154
2155 2008-03-30  Dan Bernstein  <mitz@apple.com>
2156
2157         Reviewed by Sam Weinig.
2158
2159         - fix http://bugs.webkit.org/show_bug.cgi?id=18115
2160           REGRESSION (r31250): Incomplete repaint of GoogleReader sidebar while reading unread posts
2161
2162         Test: fast/repaint/lines-with-layout-delta.html
2163
2164         * rendering/RenderObject.cpp:
2165         (WebCore::RenderObject::repaintRectangle): Made this method take layout
2166         delta into account.
2167
2168 2008-03-30  Dan Bernstein  <mitz@apple.com>
2169
2170         Reviewed by Maciej Stachowiak.
2171
2172         - fix assertion failure in CSSParser.cpp's equalIgnoringCase() when
2173           parsing certain transforms.
2174
2175         Test: fast/css/transform-function-lowercase-assert.html
2176
2177         * css/CSSParser.cpp:
2178         (WebCore::TransformOperationInfo::TransformOperationInfo): Changed to
2179         always pass a lowercase string as the second argument of
2180         equalIgnoringCase().
2181
2182 2008-03-30  Mark Rowe  <mrowe@apple.com>
2183
2184         ARM build fix.
2185
2186         * platform/text/AtomicString.cpp:
2187         (WebCore::equal): Use correct variable name.
2188
2189 2008-03-30  Hiroyuki Ikezoe  <poincare@ikezoe.net>
2190
2191         Reviewed by Alp Toker.
2192
2193         http://bugs.webkit.org/show_bug.cgi?id=18036
2194         Rendering invalid japanese characters with pango backend.
2195
2196         * platform/graphics/gtk/FontPlatformDataPango.cpp:
2197         (FontPlatformData::FontPlatformData): Set PangoFontDescription for
2198         PangoContext explicitly to use proper font.
2199
2200 2008-03-30  Rob Buis  <buis@kde.org>
2201
2202         Reviewed by Oliver.
2203
2204         http://bugs.webkit.org/show_bug.cgi?id=17633
2205         SVG: modifying x & y attribute of text element from JS fails
2206
2207         Make SVG text relayout when x, y attribute is changed from js.
2208
2209         * svg/SVGTextContentElement.cpp:
2210         (WebCore::SVGTextContentElement::isKnownAttribute):
2211         * svg/SVGTextContentElement.h:
2212         * svg/SVGTextElement.cpp:
2213         (WebCore::SVGTextElement::svgAttributeChanged):
2214         * svg/SVGTextElement.h:
2215         * svg/SVGTextPositioningElement.cpp:
2216         (WebCore::SVGTextPositioningElement::isKnownAttribute):
2217         * svg/SVGTextPositioningElement.h:
2218
2219 2008-03-28  Maciej Stachowiak  <mjs@apple.com>
2220
2221         Reviewed by Oliver.
2222
2223         - yet still more bindings speedup
2224         
2225         Make AtomicString straight from UString in handcoded bindings
2226
2227         * bindings/js/JSElementCustom.cpp:
2228         (WebCore::JSElement::setAttribute):
2229         (WebCore::JSElement::setAttributeNS):
2230         * dom/Document.cpp:
2231         (WebCore::Document::createElement):
2232         * dom/Document.h:
2233         * html/HTMLDocument.cpp:
2234         (WebCore::HTMLDocument::createElement):
2235         * html/HTMLDocument.h:
2236
2237 2008-03-29  Sam Weinig  <sam@webkit.org>
2238
2239         Reviewed by Darin Adler.
2240
2241         Fix for <rdar://problem/5828873>
2242
2243         Since NSURL is allowing invalid urls to be loaded, we need to
2244         check the URL validity at the ResourceHandle level and fire off
2245         a cannotShowURL error.
2246
2247         * loader/FrameLoader.cpp:
2248         (WebCore::FrameLoader::cannotShowURLError):
2249         * loader/FrameLoader.h:
2250         * loader/ResourceLoader.cpp:
2251         (WebCore::ResourceLoader::cannotShowURLError):
2252         (WebCore::ResourceLoader::wasBlocked):
2253         (WebCore::ResourceLoader::cannotShowURL):
2254         * loader/ResourceLoader.h:
2255         * platform/KURL.h:
2256         (WebCore::KURL::isValid):
2257         * platform/network/ResourceHandle.cpp:
2258         (WebCore::ResourceHandle::create):
2259         (WebCore::ResourceHandle::scheduleFailure):
2260         (WebCore::ResourceHandle::fireFailure):
2261         (WebCore::portAllowed):
2262         * platform/network/ResourceHandle.h:
2263         (WebCore::ResourceHandle::):
2264         * platform/network/ResourceHandleClient.h:
2265         (WebCore::ResourceHandleClient::cannotShowURL):
2266         * platform/network/ResourceHandleInternal.h:
2267         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2268
2269 2008-03-29  Darin Adler  <darin@apple.com>
2270
2271         Reviewed by Mitz.
2272
2273         - more bindings speedup
2274
2275         When I changed the temporary variables to be UString that means that the
2276         valueToString functions also need to return UString to avoid converting
2277         from UString to String twice.
2278
2279         * bindings/js/kjs_binding.cpp:
2280         (WebCore::valueToStringWithNullCheck): Changed return value to UString.
2281         (WebCore::valueToStringWithUndefinedOrNullCheck): Ditto.
2282         * bindings/js/kjs_binding.h: Ditto.
2283
2284 2008-03-29  Darin Adler  <darin@apple.com>
2285
2286         Reviewed by Sam.
2287
2288         * DerivedSources.make: Removed temporary remove-stray-JSRGBColor build rule.
2289
2290 2008-03-29  Darin Adler  <darin@apple.com>
2291
2292         Reviewed by Sam.
2293
2294         - tweak handling of the class attribute to speed up code that
2295           sets it but never needs to parse it
2296
2297         6% speedup of Acid3 test 26
2298
2299         * css/CSSStyleSelector.cpp:
2300         (WebCore::CSSStyleSelector::matchRules): Change to use non-virtual
2301         classNames function since the hasClass bit can only be set for a
2302         StyledElement.
2303         (WebCore::CSSStyleSelector::checkOneSelector): Ditto. Also
2304         streamlined the code a bit for the tag matching as well.
2305
2306         * dom/ClassNames.cpp:
2307         (WebCore::hasNonASCIIOrUpper): Added. This function does what other
2308         callers seem to want isLower() to do. We should merge this with
2309         isLower() in a subsequent cleanup pass.
2310         (WebCore::ClassNamesData::createVector): Renamed from parseClassAttribute.
2311         Turns the string into a vector.
2312         (WebCore::ClassNamesData::containsAll): Added. Used by getElementsByClassName.
2313
2314         * dom/ClassNames.h: Added a separate ClassNameData class so we could hold
2315         the string and case folding flag as well as the vector. Changed ClassNames
2316         to have a set function rather than a parseClassAttribute function. Removed
2317         the "static" from isClassWhitespace. There's no reason to ask for internal linkage.
2318
2319         * dom/ClassNodeList.cpp:
2320         (WebCore::ClassNodeList::ClassNodeList): Use constructor instead of the
2321         parseClassAttribute function.
2322         (WebCore::ClassNodeList::nodeMatches): Get rid of unnneeded isElementNode
2323         check, since hasClass will only be true for StyledElement nodes. Use the new
2324         containsAll function in ClassNames instead of having a loop here.
2325
2326         * dom/ClassNodeList.h: Removed unneeded forward declaration.
2327
2328         * dom/Document.cpp: Removed unneeded include.
2329
2330         * dom/Element.cpp:
2331         (WebCore::Element::cloneNode): Changed code to copy attributes to use a
2332         function call instead of the assignment operator. This paves the way to
2333         making the function more efficient, using a virtual function.
2334         (WebCore::Element::setAttributeMap): Updated for PassRefPtr and for name change
2335         (element -> m_element).
2336         (WebCore::Element::createAttributeMap): Changed to use create function instead of
2337         calling the constructor directly.
2338         * dom/Element.h: Removed unneeded virtual getClassNames function.
2339         Changed the argument to setAttributeMap to be a PassRefPtr.
2340
2341         * dom/NamedAttrMap.cpp:
2342         (WebCore::NamedAttrMap::NamedAttrMap): Updated for name change (element -> m_element).
2343         (WebCore::NamedAttrMap::getNamedItem): Ditto.
2344         (WebCore::NamedAttrMap::removeNamedItem): Ditto.
2345         (WebCore::NamedAttrMap::setNamedItem): Ditto.
2346         (WebCore::NamedAttrMap::item): Ditto.
2347         (WebCore::NamedAttrMap::detachFromElement): Ditto.
2348         (WebCore::NamedAttrMap::setAttributes): Renamed this from the assignment operator.
2349         (WebCore::NamedAttrMap::addAttribute): Ditto.
2350         (WebCore::NamedAttrMap::removeAttribute): Ditto.
2351         (WebCore::NamedAttrMap::isReadOnlyNode): Ditto.
2352         * dom/NamedAttrMap.h: Removed the copy constructor and assignment operator and added
2353         a new function, setAttributes, possibly to be made virtual in the future. Made
2354         isReadOnlyNode non-virtual. Renamed element -> m_element. Made constructor protected
2355         and added a create function.
2356
2357         * dom/NamedMappedAttrMap.cpp:
2358         (WebCore::NamedMappedAttrMap::NamedMappedAttrMap): Changed constructor parameter to
2359         take a StyledElement.
2360         (WebCore::NamedMappedAttrMap::setClass): Changed to use the new set function.
2361
2362         * dom/NamedMappedAttrMap.h: Made constructor private and added a create function.
2363         Replaced theparseClassAttribute function with clearClass and setClass functions.
2364         Replaced the getClassNames function with a classNames function returning a reference
2365         instead of a pointer.
2366
2367         * dom/NamedNodeMap.h: Changed to start refcount at 1 instead of 0. Removed unneeded
2368         virtual function isReadOnlyNode.
2369
2370         * dom/StyledElement.cpp:
2371         (WebCore::StyledElement::parseMappedAttribute): Rewrote class attribute handling to
2372         use new function names and took out uneeded special case for null attribute.
2373         (WebCore::StyledElement::createAttributeMap): Changed to use create function instead
2374         of a direct call to new.
2375
2376         * dom/StyledElement.h: Replaced the virtual getClassNames function with a non-virtual
2377         inline classNames function.
2378
2379         * html/HTMLElement.cpp:
2380         (WebCore::HTMLElement::cloneNode): Changed code to copy attributes to use a
2381         function call instead of the assignment operator.
2382
2383         * html/HTMLTokenizer.cpp:
2384         (WebCore::Token::addAttribute): Use create function instead of a a direct call
2385         to new.
2386
2387         * html/HTMLViewSourceDocument.cpp:
2388         (WebCore::HTMLViewSourceDocument::createContainingTable): Use RefPtr and the new
2389         create function.
2390         (WebCore::HTMLViewSourceDocument::addViewSourceToken): Ditto.
2391         (WebCore::HTMLViewSourceDocument::addSpanWithClassName): Ditto.
2392         (WebCore::HTMLViewSourceDocument::addLine): Ditto.
2393         (WebCore::HTMLViewSourceDocument::addText): Ditto.
2394         (WebCore::HTMLViewSourceDocument::addLink): Ditto.
2395         * html/HTMLViewSourceDocument.h: Ditto.
2396
2397         * svg/SVGUseElement.cpp:
2398         (WebCore::SVGUseElement::expandSymbolElementsInShadowTree): Changed code to copy
2399         attributes to use a function call instead of the assignment operator.
2400         (WebCore::SVGUseElement::transferUseAttributesToReplacedElement): Ditto.
2401
2402 2008-03-29  Sam Weinig  <sam@webkit.org>
2403
2404         Reviewed by Brady Eidson.
2405
2406         Fix crash when canceling a resource load while port blocked failure
2407         timer is going.
2408
2409         Test: fast/loader/cancel-load-during-port-block-timer.html
2410
2411         * platform/network/ResourceHandle.cpp:
2412         (WebCore::ResourceHandle::scheduleBlockedFailure):
2413         (WebCore::ResourceHandle::fireBlockedFailure):
2414         * platform/network/ResourceHandleInternal.h:
2415         (WebCore::ResourceHandleInternal::ResourceHandleInternal):
2416         Make the Timer a member variable of ResourceHandleInternal so
2417         that it can be canceled if the ResourceHandle is destroyed.
2418
2419 2008-03-28  Stephanie  <slewis@apple.com>
2420
2421         Fix 64bit build
2422
2423         * WebCore.LP64.exp:
2424         * loader/archive/cf/LegacyWebArchiveMac.mm:
2425         (WebCore::createResourceResponseFromMacArchivedData):
2426
2427 2008-03-28  Steve Falkenburg  <sfalken@apple.com>
2428
2429         Enabled LTCG on files within "page".
2430
2431         Rubber stamped by Oliver.
2432
2433         * WebCore.vcproj/WebCore.vcproj:
2434
2435 2008-03-28  Dan Bernstein  <mitz@apple.com>
2436
2437         Reviewed by Dave Hyatt.
2438
2439         - fix a percentage background position regression from r31389
2440
2441         Test: fast/backgrounds/background-position-1.html
2442
2443         * rendering/Length.h:
2444         (WebCore::Length::calcValue): Divide by 100.
2445         (WebCore::Length::calcMinValue): Ditto.
2446
2447 2008-03-28  David Hyatt  <hyatt@apple.com>
2448
2449         Back out the Ahem font antialiasing hack, since it is now no longer required for LCD antialiased text
2450         to match the reference rendering on Acid 3.
2451
2452         * platform/graphics/SimpleFontData.h:
2453         * platform/graphics/mac/FontMac.mm:
2454         (WebCore::Font::drawGlyphs):
2455         * platform/graphics/mac/SimpleFontDataMac.mm:
2456         (WebCore::SimpleFontData::platformInit):
2457         * platform/graphics/win/FontCGWin.cpp:
2458         (WebCore::Font::drawGlyphs):
2459         * platform/graphics/win/SimpleFontDataCGWin.cpp:
2460         (WebCore::SimpleFontData::platformInit):
2461         * rendering/RenderBlock.cpp:
2462         (WebCore::RenderBlock::positionNewFloats):
2463
2464 2008-03-28  Brady Eidson  <beidson@apple.com>
2465
2466         Reviewed by Darin Adler
2467
2468         More Kit->Core WebArchive changes.
2469
2470         Create an archive from the current selection in a frame
2471
2472         * WebCore.base.exp:
2473
2474         * loader/archive/cf/LegacyWebArchive.cpp:
2475         (WebCore::LegacyWebArchive::createFromSelection):
2476         * loader/archive/cf/LegacyWebArchive.h:
2477
2478 2008-03-28  Kevin McCullough  <kmccullough@apple.com>
2479
2480         - Somehow managed to duplicate code :(
2481
2482         * xml/XMLHttpRequest.cpp:
2483         (WebCore::XMLHttpRequest::didFinishLoading):
2484
2485 2008-03-28  Kevin McCullough  <kmccullough@apple.com>
2486
2487         - Missed some changes in previous checkin.
2488
2489         * xml/XMLHttpRequest.cpp:
2490         (WebCore::XMLHttpRequest::send): Get identifier from synchronous loader.
2491         (WebCore::XMLHttpRequest::didFinishLoading):
2492
2493 2008-03-28  Kevin McCullough  <kmccullough@apple.com>
2494
2495         Reviewed by Adam.
2496
2497         -<rdar://problem/5712804> XMLHttpRequests do not show response contents, preview images (14313)
2498         -<rdar://problem/5712931> XMLHttpRequests should be shown separately and grouped (14315)
2499         -<rdar://problem/5732836> XMLHttpRequest: Inspector should show network activity/XHR in Console (17233)
2500         - Send the XMLHttpRequest data to the Inspector Controller.
2501
2502         * loader/FrameLoader.cpp: Return the identifier for this resource since we need it in the XHR case.
2503         (WebCore::FrameLoader::loadResourceSynchronously):
2504         * loader/FrameLoader.h: Ditto.
2505         * page/InspectorController.cpp:
2506         (WebCore::XMLHttpRequestResource::XMLHttpRequestResource): We only need the data since the type will
2507         be XHR and the encoding is not used (we decoded earlier).
2508         (WebCore::XMLHttpRequestResource::~XMLHttpRequestResource): Locking is necessary when setting and clearing
2509         the KJS::UString::Rep.
2510         (WebCore::InspectorResource::setXMLHttpRequestProperties):
2511         (WebCore::InspectorResource::sourceString): Return the decoded source.
2512         (WebCore::addSourceToFrame): No longer do the decoding here, it has been encapsulated in the InspectorResource.
2513         (WebCore::InspectorController::resourceRetrievedByXMLHttpRequest):
2514         * page/InspectorController.h: Pass a UString instead of copying to a WebCore::String.  In case we
2515         never ask for the string's contents this will save us an extra copy.
2516         * xml/XMLHttpRequest.cpp:
2517         (WebCore::XMLHttpRequest::send): In the synchronous load case we normally do not keep the identifier
2518         but we need it to find the InspectorResource in order to tell it that it was loaded via XHR.
2519         (WebCore::XMLHttpRequest::didFinishLoading): Tell the InspectorController that its resource was loaded
2520         via XHR.
2521         * xml/XMLHttpRequest.h: Ditto.
2522
2523 2008-03-28  Brady Eidson  <beidson@apple.com>
2524
2525         Reviewed by Sam Weinig
2526
2527         WebArchive saga continues - Can now make archives from ranges in WebCore
2528
2529         Again, previous layout test coverage exercised this code
2530
2531         * WebCore.base.exp:
2532
2533         * editing/markup.cpp:
2534         (WebCore::createFullMarkup): Added a "markup from range" variant that copies the previous WebKit implementation
2535         * editing/markup.h:
2536
2537         * loader/archive/cf/LegacyWebArchive.cpp:
2538         (WebCore::LegacyWebArchive::create):
2539         * loader/archive/cf/LegacyWebArchive.h:
2540
2541 2008-03-28  Stephanie Lewis  <slewis@apple.com>
2542
2543         windows build fix.
2544
2545         * platform/win/MainThreadWin.cpp:
2546         (WebCore::initializeThreadingAndMainThread):
2547
2548 2008-03-28  Brady Eidson  <beidson@apple.com>
2549
2550         Reviewed by Sam Weinig
2551
2552         More Kit->Core webarchive code movement
2553
2554         * WebCore.base.exp:
2555         * editing/markup.cpp:
2556         (WebCore::createFullMarkup): Replacement for [DOMNode markupString], creating full markup at this node including 
2557           the document type string, which the WebKit implementation did indirectly
2558         * editing/markup.h:
2559
2560 2008-03-28  Darin Adler  <darin@apple.com>
2561
2562         Reviewed by Maciej.
2563
2564         - cut down on copying and refcount churn a little by using references a bit more for
2565           KURL and String
2566
2567         * bindings/js/JSXMLHttpRequest.cpp:
2568         (WebCore::jsXMLHttpRequestPrototypeFunctionOpen): Use const KURL& instead of KURL.
2569         * css/StyleSheet.h:
2570         (WebCore::StyleSheet::href): Return const String& instead of String.
2571         (WebCore::StyleSheet::title): Ditto.
2572         * dom/Document.cpp:
2573         (WebCore::Document::completeURL): Use const KURL* for a local variable instead of
2574         KURL to avoid copying the KURL.
2575         * dom/Element.cpp:
2576         (WebCore::Element::baseURI): Use const KURL& instead of KURL.
2577         * html/HTMLAnchorElement.cpp:
2578         (WebCore::HTMLAnchorElement::hostname): Ditto.
2579         * html/HTMLFrameElementBase.cpp:
2580         (WebCore::HTMLFrameElementBase::isURLAllowed): Ditto.
2581         * html/HTMLKeygenElement.cpp: Removed unneeded include of KURL.
2582         * page/ContextMenuController.cpp:
2583         (WebCore::ContextMenuController::contextMenuItemSelected): Get rid of temporary
2584         KURL.
2585         * platform/SecurityOrigin.cpp:
2586         (WebCore::SecurityOrigin::createForFrame): Use const KURL& instead of KURL.
2587
2588 2008-03-28  Alexey Proskuryakov  <ap@webkit.org>
2589
2590         Reviewed by Sam Weinig.
2591
2592         Fix a dtoa thread safety issue.
2593
2594         * ForwardingHeaders/kjs/InitializeThreading.h: Added.
2595         * platform/MainThread.cpp:
2596         * platform/MainThread.h:
2597         (WebCore::initializeThreadingAndMainThread): Call KJS::initializeThreading instead of its
2598         WTF counterpart.
2599
2600 2008-03-28  Brent Fulgham  <bfulgham@gmail.com>
2601
2602         Reviewed by Maciej, landed by Brady
2603
2604         Correct build regression (http://bugs.webkit.org/show_bug.cgi?id=18148)
2605
2606         * platform/graphics/win/GraphicsContextCairoWin.cpp:
2607         (WebCore::GraphicsContext::getWindowsContext):
2608         (WebCore::GraphicsContext::releaseWindowsContext):
2609
2610 2008-03-28  Brady Eidson  <beidson@apple.com>
2611
2612         Reviewed by Darin
2613
2614         "Yet another transitional step" to empty out WebKit-based code for archiving.
2615
2616         With this patch, the key operation of "Creating a WebArchive rooted at a single Node" takes place
2617         entirely within WebCore, and opens the door to saving WebArchives on Windows.
2618
2619         This is another "zero behavior change" patch, and current editing/ and webarchive/ layout tests
2620         covered the relevant code
2621
2622         * WebCore.base.exp:
2623         * loader/archive/cf/LegacyWebArchive.cpp:
2624         (WebCore::LegacyWebArchive::create):
2625         * loader/archive/cf/LegacyWebArchive.h:
2626
2627 2008-03-28  Jasper Bryant-Greene  <jasper@unix.geek.nz>
2628
2629         Reviewed by Alp Toker.
2630
2631         http://bugs.webkit.org/show_bug.cgi?id=18061
2632         PlatformScrollBarGtk attempts to allocate negative width and/or height for widgets
2633
2634         Missing clampNegativeToZero() call meant that we tried to allocate widgets with negative width and/or height.
2635
2636         * platform/gtk/PlatformScrollBarGtk.cpp:
2637         (PlatformScrollbar::geometryChanged):
2638
2639 2008-03-28  Brady Eidson  <beidson@apple.com>
2640
2641         Reviewed by Darin
2642
2643         Using convertUTF16ToUTF8() from WTF, add a helper function that gives you a UTF8 SharedBuffer
2644         created from a String.
2645
2646         * ForwardingHeaders/wtf/unicode/UTF8.h: Added.
2647         * platform/text/PlatformString.h:
2648         * platform/text/String.cpp:
2649         (WebCore::utf8Buffer):
2650
2651 2008-03-28  Darin Adler  <darin@apple.com>
2652
2653         Reviewed by Adam.
2654
2655         - eliminate a tiny bit of unnecessary refcount churn
2656
2657         * bindings/js/JSEventTargetBase.cpp:
2658         (WebCore::eventNameForPropertyToken): Return const AtomicString&.
2659         * bindings/js/JSEventTargetBase.h:
2660         (WebCore::JSEventTargetBase::getValueProperty): Update for above change.
2661         (WebCore::JSEventTargetBase::putValueProperty): Ditto.
2662
2663 2008-03-28  Simon Hausmann  <hausmann@webkit.org>
2664
2665         Fix the Qt build.
2666
2667         * rendering/Length.h: Include wtf/MathExtras.h for round().
2668
2669 2008-03-28  David Hyatt  <hyatt@apple.com>
2670
2671         Fix a bug where background-position truncates instead of rounding when it evaluates to fractional
2672         pixel values.  This matches other browsers.
2673
2674         Reviewed by maciej
2675
2676         Added fast/backgrounds/background-position-rounding.html
2677
2678         * rendering/Length.h:
2679         (WebCore::Length::calcValue):
2680         (WebCore::Length::calcMinValue):
2681         * rendering/RenderBox.cpp:
2682         (WebCore::RenderBox::calculateBackgroundImageGeometry):
2683
2684 2008-03-27  Kevin Ollivier  <kevino@theolliviers.com>
2685
2686         wx build fix. Return a default value for operator == 
2687         when !USE(WXGC) (not implemented in that case).
2688
2689         * platform/graphics/wx/AffineTransformWx.cpp:
2690         (WebCore::AffineTransform::operator== ):
2691
2692 2008-03-27  Maciej Stachowiak  <mjs@apple.com>
2693
2694         - fix build
2695
2696         * svg/SVGGlyphMap.h:
2697         (WebCore::GlyphMapNode::create):
2698
2699 2008-03-27  Brady Eidson  <beidson@apple.com>
2700
2701         Forgot a small requested change before committing
2702
2703         * loader/DocumentLoader.cpp:
2704         (WebCore::DocumentLoader::mainResource):
2705
2706 2008-03-27  Brady Eidson  <beidson@apple.com>
2707
2708         Reviewed by Adam Roben
2709
2710         Move [WebDataSource mainResource] and [WebDataSource subresources] down into WebCore
2711         as the push to core-ify WebArchives continues.
2712
2713         This patch also introduces a behavior change.  WebCore allows ArchiveResources with null or empty data.  
2714         WebKit has had the inexplicable distinction of allowing empty Data in a WebResource, but not null.  
2715         Since WebResource is API, I decided to leave it be to avoid a behavior change.  But internally created resources 
2716         (as in "while archiving a page") are accepting of null or empty data.
2717
2718         This actually fixes a bug where not all subframes are archived, and resulted in a layout test change.
2719
2720         * WebCore.base.exp:
2721         * loader/DocumentLoader.cpp:
2722         (WebCore::DocumentLoader::archiveResourceForURL): Make this const
2723         (WebCore::DocumentLoader::mainResource):
2724         (WebCore::DocumentLoader::subresource): Make this const and relocate
2725         (WebCore::DocumentLoader::getSubresources):
2726         * loader/DocumentLoader.h:
2727
2728 2008-03-27  Maciej Stachowiak  <mjs@apple.com>
2729
2730         Reviewed by Darin.
2731
2732         - fixed many buildbot leaks in glyph map code
2733
2734         * svg/SVGGlyphMap.h:
2735         (WebCore::GlyphMapNode::create): Use explicit create pattern, to avoid overreffing and therefore leaking
2736         these objects.
2737         (WebCore::SVGGlyphMap::add): Call create instead of using new.
2738
2739 2008-03-27  Maciej Stachowiak  <mjs@apple.com>
2740
2741         Rubber stamped by Oliver.
2742
2743         - re-fix Acid3, some code was incorrectly moved when fixing the Qt build
2744
2745         * rendering/SVGRootInlineBox.cpp:
2746         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
2747
2748 2008-03-27  Simon Hausmann  <hausmann@webkit.org>
2749
2750         Fix compilation against Qt 4.4 and one missing SVG_FONTS #ifdef.
2751
2752         * platform/graphics/qt/FontQt.cpp:
2753         (WebCore::Font::floatWidth): Forgot to adjust this signture for Qt 4.4.
2754         * bindings/js/JSSVGElementWrapperFactory.cpp: Added a missing #ifdef
2755         for SVG_FONTS
2756
2757 2008-03-27  Simon Hausmann  <hausmann@webkit.org>
2758
2759         Reviewed by Eric Seidel.
2760
2761         Fix the Qt build and the build without ENABLE(SVG_FONTS)
2762
2763         * WebCore.pro: Removed ElementTimeControl.idl as it's ObjC only and
2764         removed some SVG_FONTS specific idl files from IDL_BINDINGS for now
2765         * bindings/js/JSSVGElementWrapperFactory.cpp: altGlyph is
2766         ENABLE(SVG_FONTS) only
2767         * platform/graphics/qt/FontQt.cpp:
2768         (WebCore::Font::floatWidth): Adjust the function signature to Font.h
2769         * rendering/SVGRootInlineBox.cpp:
2770         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): Fix
2771         compilation without SVG_FONTS
2772         * svg/SVGAltGlyphElement.cpp: Compile only if ENABLE(SVG_FONTS)
2773         * svg/SVGAltGlyphElement.h: Ditto
2774         * svg/svgtags.in: hkern and altGlyph are SVG_FONTS only.
2775         * svg/SVGTSpanElement.cpp:
2776         (WebCore::SVGTSpanElement::childShouldCreateRenderer): Compile without
2777         SVG_FONTS
2778         * svg/SVGTextElement.cpp:
2779         (WebCore::SVGTextElement::childShouldCreateRenderer): Ditto
2780         * svg/SVGTextPathElement.cpp:
2781         (WebCore::SVGTextPathElement::childShouldCreateRenderer):
2782
2783 2008-03-26  Timothy Hatcher  <timothy@apple.com>
2784
2785         Rename some Inspector files to facilitate the up-coming UI refresh changes.
2786
2787         http://bugs.webkit.org/show_bug.cgi?id=17773
2788
2789         Rubber-stamped by Adam Roben.
2790
2791         * WebCore.vcproj/WebCore.vcproj:
2792         * page/inspector/Console.js: Copied from page/inspector/ConsolePanel.js.
2793         * page/inspector/ConsolePanel.js: Removed.
2794         * page/inspector/DocumentPanel.js: Removed.
2795         * page/inspector/ElementsPanel.js: Copied from page/inspector/DocumentPanel.js.
2796         * page/inspector/FontPanel.js: Removed.
2797         * page/inspector/FontView.js: Copied from page/inspector/FontPanel.js.
2798         * page/inspector/ImagePanel.js: Removed.
2799         * page/inspector/ImageView.js: Copied from page/inspector/ImagePanel.js.
2800         * page/inspector/NetworkPanel.js: Removed.
2801         * page/inspector/ResourcePanel.js: Removed.
2802         * page/inspector/ResourceView.js: Copied from page/inspector/ResourcePanel.js.
2803         * page/inspector/ResourcesPanel.js: Copied from page/inspector/NetworkPanel.js.
2804         * page/inspector/SourcePanel.js: Removed.
2805         * page/inspector/SourceView.js: Copied from page/inspector/SourcePanel.js.
2806         * page/inspector/WebKit.qrc:
2807         * page/inspector/inspector.html:
2808
2809 2008-03-26  Steve Falkenburg  <sfalken@apple.com>
2810
2811         Enable LTCG on css, dom files in WebCore
2812
2813         Reviewed by Stephanie.
2814
2815         * WebCore.vcproj/WebCore.vcproj:
2816
2817 2008-03-26  Stephanie Lewis  <slewis@apple.com>
2818
2819         Fix Windows Build
2820
2821         * WebCore.vcproj/WebCore.vcproj:
2822
2823 2008-03-26  Mark Rowe  <mrowe@apple.com>
2824
2825         Speculative GTK build fix.
2826
2827         * GNUmakefile.am:
2828
2829 2008-03-26  Mark Rowe  <mrowe@apple.com>
2830
2831         Mac build fix.
2832
2833         * WebCore.base.exp:  Remove nonexistent symbol from the export file.
2834
2835 2008-03-26  Sam Weinig  <sam@webkit.org>
2836
2837         Try and fix Gtk+ again.
2838
2839         * GNUmakefile.am:
2840
2841 2008-03-26  Dan Bernstein  <mitz@apple.com>
2842
2843         Reviewed by Dave Hyatt.
2844
2845         - fix <rdar://problem/5816522> REGRESSION (r30111-30112): Tahoe web cam website has some text in Chinese or japanese
2846
2847         * html/HTMLParser.cpp:
2848         (WebCore::HTMLParser::insertNode): Added call to beginParsingChildren()
2849         on the new node.
2850         (WebCore::HTMLParser::handleError): Ditto.
2851         (WebCore::HTMLParser::reopenResidualStyleTags): Ditto.
2852         (WebCore::HTMLParser::pushBlock): Removed incorrect call to
2853         beginParsingChildren() on the current node.
2854         * manual-tests/applet-finish-parsing-children.html: Added.
2855         * manual-tests/resources/DrawMessage.class: Added.
2856
2857 2008-03-26  Brady Eidson  <beidson@apple.com>
2858
2859         Reviewed by Darin
2860
2861         When we create a WebArchive, we walk every node from some starting point, asking each node
2862         along the way "What are your subresource URLs?"
2863
2864         That logic is currently in DOMNode in WebKitMac - this patch moves that ability down into
2865         WebCore::Node
2866
2867         * WebCore.base.exp:
2868         
2869         * dom/Node.cpp:
2870         (WebCore::Node::getSubresourceURLs):
2871         (WebCore::Node::getSubresourceAttributeStrings):  Virtual and empty.  Subclasses of Node that have 
2872           subresources will override it.
2873
2874         * dom/ProcessingInstruction.cpp:
2875         (WebCore::ProcessingInstruction::getSubresourceAttributeStrings):
2876         * dom/ProcessingInstruction.h:
2877         * html/HTMLBodyElement.cpp:
2878         (WebCore::HTMLBodyElement::getSubresourceAttributeStrings):
2879         * html/HTMLBodyElement.h:
2880         * html/HTMLEmbedElement.cpp:
2881         (WebCore::HTMLEmbedElement::getSubresourceAttributeStrings):
2882         * html/HTMLEmbedElement.h:
2883         * html/HTMLImageElement.cpp:
2884         (WebCore::HTMLImageElement::getSubresourceAttributeStrings):
2885         * html/HTMLImageElement.h:
2886         * html/HTMLInputElement.cpp:
2887         (WebCore::HTMLInputElement::getSubresourceAttributeStrings):
2888         * html/HTMLInputElement.h:
2889         * html/HTMLLinkElement.cpp:
2890         (WebCore::HTMLLinkElement::getSubresourceAttributeStrings):
2891         * html/HTMLLinkElement.h:
2892         * html/HTMLObjectElement.cpp:
2893         (WebCore::HTMLObjectElement::getSubresourceAttributeStrings):
2894         * html/HTMLObjectElement.h:
2895         * html/HTMLParamElement.cpp:
2896         (WebCore::HTMLParamElement::getSubresourceAttributeStrings):
2897         * html/HTMLParamElement.h:
2898         * html/HTMLScriptElement.cpp:
2899         (WebCore::HTMLScriptElement::getSubresourceAttributeStrings):
2900         * html/HTMLScriptElement.h:
2901         * html/HTMLTableCellElement.cpp:
2902         (WebCore::HTMLTableCellElement::getSubresourceAttributeStrings):
2903         * html/HTMLTableCellElement.h:
2904         * html/HTMLTableElement.cpp:
2905         (WebCore::HTMLTableElement::getSubresourceAttributeStrings):
2906         * html/HTMLTableElement.h:
2907         * svg/SVGCursorElement.cpp:
2908         (WebCore::SVGCursorElement::getSubresourceAttributeStrings):
2909         * svg/SVGCursorElement.h:
2910         * svg/SVGFEImageElement.cpp:
2911         (WebCore::SVGFEImageElement::getSubresourceAttributeStrings):
2912         * svg/SVGFEImageElement.h:
2913         * svg/SVGImageElement.cpp:
2914         (WebCore::SVGImageElement::getSubresourceAttributeStrings):
2915         * svg/SVGImageElement.h:
2916         * svg/SVGScriptElement.cpp:
2917         (WebCore::SVGScriptElement::getSubresourceAttributeStrings):
2918         * svg/SVGScriptElement.h:
2919
2920 2008-03-26  Dan Bernstein  <mitz@apple.com>
2921
2922         Reviewed by Dave Hyatt.
2923
2924         - maintain subpixel-antialiasing when drawing text with a simple shadow
2925
2926         * platform/graphics/mac/FontMac.mm:
2927         (WebCore::Font::drawComplexText): If the shadow has a zero blur radius,
2928         draw the shadow by drawing the text at an offset instead of relying on
2929         Core Graphics shadows.
2930         (WebCore::Font::drawGlyphs): Ditto.
2931         * platform/graphics/win/FontCGWin.cpp:
2932         (WebCore::Font::drawGlyphs): Ditto.
2933
2934 2008-03-26  Brady Eidson  <beidson@apple.com>
2935
2936         Reviewed by Mark Rowe
2937
2938         Part of the continued push to move WebArchive-related code down to WebCore, this
2939         moves [WebDataSource subresourceForURL:] down to DocumentLoader->subresource()
2940
2941         * WebCore.base.exp:
2942         * loader/DocumentLoader.cpp:
2943         (WebCore::DocumentLoader::subresource): Create an ArchiveResource from a CachedResource if it exists
2944           Otherwise, fallback to an ArchiveResource from the current Archive if any.  Otherwise, return null
2945         * loader/DocumentLoader.h:
2946
2947         * loader/archive/ArchiveResource.cpp:
2948         (WebCore::ArchiveResource::create):
2949         (WebCore::ArchiveResource::ArchiveResource):
2950         * loader/archive/ArchiveResource.h:
2951
2952 2008-03-26  Sam Weinig  <sam@webkit.org>
2953
2954         Fix Gtk+ build.
2955
2956         * GNUmakefile.am:
2957
2958 2008-03-26  Mark Rowe  <mrowe@apple.com>
2959
2960         Rubber-stamped by Brady Eidson.
2961
2962         Update FEATURE_DEFINES to be consistent with the other locations in which it is defined.
2963
2964         * Configurations/WebCore.xcconfig:
2965
2966 2008-03-26  Brent Fulgham  <bfulgham@gmail.com>
2967
2968         Reviewed by Adam Roben.
2969
2970         Add necessary files and build commands to vcproj files to
2971         build a Curl-based Windows WebKit.  For details, see
2972         http://bugs.webkit.org/show_bug.cgi?id=17985
2973
2974         * WebCore.vcproj/WebCore.vcproj:
2975
2976 2008-03-26  Adam Roben  <aroben@apple.com>
2977
2978         Record JS exceptions triggered by the Inspector's use of JSC
2979
2980         We now dump all exceptions returned from JavaScriptCore into the
2981         Inspector's console.
2982
2983         The HANDLE_EXCEPTION macro records the line on which the exception was
2984         returned. It calls a new private handleException method on
2985         InspectorController.
2986
2987         Reviewed by Kevin McCullough.
2988
2989         * page/InspectorController.cpp:
2990         (WebCore::InspectorController::callSimpleFunction): Made this be a
2991         member of InspectorController so that it can call handleException.
2992         (WebCore::addSourceToFrame): Pass the exception pointer on to inner
2993         JSC calls, and check it after those calls return.
2994         (WebCore::getResourceDocumentNode): Ditto.
2995         (WebCore::search): Ditto. Also changed the name/type of an existing
2996         exception variable to ExceptionCode ec.
2997         (WebCore::databaseTableNames): Ditto.
2998         (WebCore::moveByUnrestricted): Ditto.
2999         (WebCore::InspectorController::~InspectorController): Check for and
3000         record exceptions as we call JSC.
3001         (WebCore::InspectorController::focusNode): Ditto.
3002         (WebCore::InspectorController::scriptObjectReady): Ditto.
3003         (WebCore::addHeaders): Added an exception parameter.
3004         (WebCore::scriptObjectForRequest): Ditto.
3005         (WebCore::scriptObjectForResponse): Ditto.
3006         (WebCore::InspectorController::addScriptResource): Check for and
3007         record exceptions as we call JSC.
3008         (WebCore::InspectorController::addAndUpdateScriptResource): Ditto.
3009         (WebCore::InspectorController::removeScriptResource): Ditto. Also
3010         moved the call to setScriptObject to before the JSC calls so that it
3011         will always be called even if we return early if JSC throws an
3012         exception.
3013         (WebCore::InspectorController::updateScriptResourceRequest): Check for
3014         and record exceptions as we call JSC.
3015         (WebCore::InspectorController::updateScriptResourceResponse): Ditto.
3016         (WebCore::InspectorController::updateScriptResource): Ditto.
3017         (WebCore::InspectorController::addDatabaseScriptResource): Ditto.
3018         (WebCore::InspectorController::removeDatabaseScriptResource): Ditto.
3019         Also moved the call to setScriptObject to before the JSC calls so that
3020         it will always be called even if we return early if JSC throws an
3021         exception.
3022         (WebCore::InspectorController::addScriptConsoleMessage): Check for and
3023         record exceptions as we call JSC.
3024         (WebCore::InspectorController::handleException): Added.
3025         * page/InspectorController.h:
3026
3027 2008-03-26  Darin Adler  <darin@apple.com>
3028
3029         Rubber stamped by Maciej.
3030
3031         - removed a couple log messages in error cases that are handled internally
3032
3033         * platform/text/TextCodecICU.cpp:
3034         (WebCore::TextCodecICU::decode): Removed the LOG_ERROR.
3035         * platform/text/mac/TextCodecMac.cpp:
3036         (WebCore::TextCodecMac::decode): Ditto.
3037
3038 2008-03-26  Sam Weinig  <sam@webkit.org>
3039
3040         Reviewed by Adam Roben.
3041
3042         * page/Location.idl: Don't enumerate toString.
3043
3044 2008-03-26  Mark Rowe  <mrowe@apple.com>
3045
3046         Release build fix.
3047
3048         * rendering/SVGRootInlineBox.cpp:
3049         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): Initialize svgFont to zero.
3050
3051 2008-03-26  Maciej Stachowiak  <mjs@apple.com>
3052
3053         Reviewed by Hyatt and Adam.
3054
3055         Coded by me and Darin.
3056         
3057         - SVG kerning support (horizontal kerning only for now since we don't do vertical text layout right yet) 
3058         
3059         Acid3 100/100
3060
3061         * DerivedSources.make:
3062         * WebCore.vcproj/WebCore.vcproj:
3063         * WebCore.xcodeproj/project.pbxproj:
3064         * platform/graphics/Font.cpp:
3065         (WebCore::Font::floatWidth):
3066         (WebCore::Font::isSVGFont):
3067         * platform/graphics/Font.h:
3068         * rendering/SVGInlineTextBox.cpp:
3069         (WebCore::SVGInlineTextBox::calculateGlyphWidth):
3070         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries):
3071         * rendering/SVGInlineTextBox.h:
3072         * rendering/SVGRootInlineBox.cpp:
3073         (WebCore::cummulatedWidthOrHeightOfTextChunk):
3074         (WebCore::SVGRootInlineBox::buildLayoutInformation):
3075         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
3076         * rendering/SVGRootInlineBox.h:
3077         (WebCore::LastGlyphInfo::LastGlyphInfo):
3078         * svg/SVGFont.cpp:
3079         (WebCore::SVGTextRunWalker::walk):
3080         (WebCore::Font::svgFont):
3081         (WebCore::floatWidthOfSubStringUsingSVGFont):
3082         (WebCore::Font::floatWidthUsingSVGFont):
3083         (WebCore::Font::drawTextUsingSVGFont):
3084         (WebCore::Font::selectionRectForTextUsingSVGFont):
3085         * svg/SVGFontElement.cpp:
3086         (WebCore::SVGFontElement::invalidateGlyphCache):
3087         (WebCore::SVGFontElement::ensureGlyphCache):
3088         (WebCore::parseUnicodeRange):
3089         (WebCore::parseUnicodeRangeList):
3090         (WebCore::stringMatchesUnicodeRange):
3091         (WebCore::matches):
3092         (WebCore::SVGFontElement::getHorizontalKerningPairForStringsAndGlyphs):
3093         * svg/SVGFontElement.h:
3094         * svg/SVGGlyphElement.cpp:
3095         (WebCore::SVGGlyphElement::insertedIntoDocument):
3096         (WebCore::SVGGlyphElement::removedFromDocument):
3097         * svg/SVGHKernElement.cpp: Added.
3098         (WebCore::SVGHKernElement::SVGHKernElement):
3099         (WebCore::SVGHKernElement::~SVGHKernElement):
3100         (WebCore::SVGHKernElement::insertedIntoDocument):
3101         (WebCore::SVGHKernElement::removedFromDocument):
3102         (WebCore::SVGHKernElement::buildHorizontalKerningPair):
3103         * svg/SVGHKernElement.h: Added.
3104         (WebCore::SVGHorizontalKerningPair::SVGHorizontalKerningPair):
3105         (WebCore::SVGHKernElement::rendererIsNeeded):
3106         * svg/SVGHKernElement.idl: Added.
3107         * svg/SVGTextContentElement.cpp:
3108         (WebCore::cummulatedCharacterRangeLength):
3109         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback):
3110         * svg/svgtags.in:
3111
3112 2008-03-26  Sam Weinig  <sam@webkit.org>
3113
3114         Reviewed by Adam Roben.
3115
3116         Autogenerate JSLocation.
3117
3118         * GNUmakefile.am:
3119         * WebCore.pro:
3120         * WebCore.vcproj/WebCore.vcproj:
3121         * WebCore.xcodeproj/project.pbxproj:
3122         * WebCoreSources.bkl:
3123         Add files.
3124
3125         * DerivedSources.make: Add Location, remove JSLocation.lut.h
3126         * bindings/js/JSDOMWindowBase.cpp:
3127         (WebCore::JSDOMWindowBasePrivate::JSDOMWindowBasePrivate):
3128         (WebCore::JSDOMWindowBase::getValueProperty):
3129         (WebCore::JSDOMWindowBase::put):
3130         (WebCore::JSDOMWindowBase::clearHelperObjectProperties):
3131         (WebCore::JSDOMWindowBase::disconnectFrame):
3132         * bindings/js/JSDOMWindowBase.h:
3133         Remove manuel management of the Location object.
3134
3135         * bindings/js/JSDOMWindowCustom.cpp:
3136         (WebCore::JSDOMWindow::mark): Add marking of JSLocation.
3137         (WebCore::JSDOMWindow::setLocation): Add custom setLocation as we only want to do this when
3138         safe and we need to keep Dashboard quirks.
3139
3140         * bindings/js/JSDocumentCustom.cpp:
3141         (WebCore::JSDocument::location):
3142         Fetch the location object using the normal toJS route.
3143
3144         * bindings/js/JSLocation.cpp: Removed.
3145         * bindings/js/JSLocation.h: Removed.
3146         * bindings/js/JSLocationCustom.cpp: Added.
3147         (WebCore::JSLocation::customGetOwnPropertySlot):
3148         (WebCore::JSLocation::customPut):
3149         (WebCore::JSLocation::deleteProperty):
3150         (WebCore::JSLocation::customGetPropertyNames):
3151         (WebCore::navigateIfAllowed):
3152         (WebCore::JSLocation::setHref):
3153         (WebCore::JSLocation::setProtocol):
3154         (WebCore::JSLocation::setHost):
3155         (WebCore::JSLocation::setHostname):
3156         (WebCore::JSLocation::setPort):
3157         (WebCore::JSLocation::setPathname):
3158         (WebCore::JSLocation::setSearch):
3159         (WebCore::JSLocation::setHash):
3160         (WebCore::JSLocation::replace):
3161         (WebCore::JSLocation::reload):
3162         (WebCore::JSLocation::assign):
3163         (WebCore::JSLocation::toString):
3164         Setter and Functions need custom implementations as they rely on the dynamic
3165         global object for determining the behavior of the navigation.
3166
3167         * history/CachedPage.cpp:
3168         (WebCore::CachedPage::CachedPage):
3169         (WebCore::CachedPage::restore):
3170         (WebCore::CachedPage::clear):
3171         * history/CachedPage.h:
3172         Removed all the special casing for location as it should be treated like all
3173         the other objects hanging off the window.
3174
3175         * page/DOMWindow.cpp:
3176         (WebCore::DOMWindow::clear):
3177         (WebCore::DOMWindow::location):
3178         * page/DOMWindow.h:
3179         (WebCore::DOMWindow::optionalLocation):
3180         * page/DOMWindow.idl:
3181         Add Location accessor and pointer getter for marking.
3182
3183         * page/Location.cpp: Added.
3184         (WebCore::Location::Location):
3185         (WebCore::Location::disconnectFrame):
3186         (WebCore::Location::url):
3187         (WebCore::Location::href):
3188         (WebCore::Location::protocol):
3189         (WebCore::Location::host):
3190         (WebCore::Location::hostname):
3191         (WebCore::Location::port):
3192         (WebCore::Location::pathname):
3193         (WebCore::Location::search):
3194         (WebCore::Location::hash):
3195         (WebCore::Location::toString):
3196         * page/Location.h: Added.
3197         (WebCore::Location::create):
3198         (WebCore::Location::frame):
3199         * page/Location.idl: Added.
3200
3201 2008-03-26  David Hyatt  <hyatt@apple.com>
3202
3203         Add support for the rendering and measurement of the <altGlyph> element in SVG.  This patch brings
3204         is half of what's needed to reach 100/100 on Acid3 and pass the test.  Maciej has coded up the other half. :)
3205
3206         Reviewed by mjs
3207
3208         Added svg/custom/altGlyph.svg
3209
3210         * svg/SVGAltGlyphElement.cpp:
3211         (WebCore::SVGAltGlyphElement::childShouldCreateRenderer):
3212         (WebCore::SVGAltGlyphElement::glyphElement):
3213         * svg/SVGAltGlyphElement.h:
3214         * svg/SVGFont.cpp:
3215         (WebCore::SVGTextRunWalker::walk):
3216         * svg/SVGFontFaceElement.cpp:
3217         (WebCore::SVGFontFaceElement::insertedIntoDocument):
3218         * svg/SVGGlyphElement.cpp:
3219         (WebCore::SVGGlyphElement::insertedIntoDocument):
3220         (WebCore::SVGGlyphElement::removedFromDocument):
3221
3222 2008-03-26  Adam Roben  <aroben@apple.com>
3223
3224         Turn on SVG animation on Windows
3225
3226         Also touched some files to force things to rebuild/regenerate.
3227
3228         * WebCore.vcproj/WebCore.vcproj: Added ENABLE_SVG_ANIMATION.
3229         * WebCore.vcproj/build-generated-files.sh: Ditto.
3230         * bindings/scripts/CodeGenerator.pm: Touched.
3231         * config.h: Touched.
3232         * svg/svgtags.in: Touched.
3233
3234 2008-03-26  Justin Garcia  <justin.garcia@apple.com>
3235
3236         Reviewed by Harrison.
3237
3238         <rdar://problem/5820749> REGRESSION (Safari 3.1): Mail's plain text reply omits blank line following the attribution
3239
3240         * editing/markup.cpp:
3241         (WebCore::createFragmentFromText): When asked to create a fragment from "Attribution:\n"
3242         with a context from [html, 0] to [html, 0], we'd return "<html>Attribution</html><br>".
3243         Don't enclose paragraphs in clones of the context's enclosing block if that block is the
3244         html or body element.  Currently no way to test [DOMHTMLElement createFragmentFromText:].
3245
3246 2008-03-26  Antti Koivisto  <antti@apple.com>
3247
3248         Reviewed by Anders.
3249
3250         http://bugs.webkit.org/show_bug.cgi?id=17077
3251         Bug 17077: SVG SMIL animation is currently broken (and turned off) (affects Acid3 tests 75 and 76)
3252
3253         - enable SVG animation support.
3254         - basic implementation of beginElement()/endElement().
3255         
3256         Animation definitely will need more work than this, but it is a start!
3257
3258         * Configurations/WebCore.xcconfig:
3259         * svg/SVGAnimationElement.cpp:
3260         (WebCore::SVGAnimationElement::SVGAnimationElement):
3261         (WebCore::SVGAnimationElement::updateAnimatedValueForElapsedSeconds):
3262         (WebCore::SVGAnimationElement::beginElement):
3263         (WebCore::SVGAnimationElement::beginElementAt):
3264         (WebCore::SVGAnimationElement::endElement):
3265         (WebCore::SVGAnimationElement::endElementAt):
3266         * svg/SVGAnimationElement.h:
3267
3268 2008-03-26  Mark Rowe  <mrowe@apple.com>
3269
3270         Reviewed by David Hyatt.
3271
3272         Make the Ahem font antialias correctly on Acid3 on Tiger.
3273
3274         * WebCore.Tiger.exp:
3275         * platform/graphics/mac/SimpleFontDataMac.mm:
3276         (WebCore::SimpleFontData::platformInit):
3277         * platform/mac/WebCoreSystemInterface.h:
3278         * platform/mac/WebCoreSystemInterface.mm:
3279
3280 2008-03-26  Simon Hausmann  <hausmann@webkit.org>
3281
3282         Attempt to fix the Qt build.
3283
3284         * platform/text/qt/TextCodecQt.cpp: Adjust function signature.
3285         (WebCore::TextCodecQt::decode):
3286         * platform/text/qt/TextCodecQt.h: Ditto.
3287
3288 2008-03-26  Dan Bernstein  <mitz@apple.com>
3289
3290         Reviewed by Anders Carlsson.
3291
3292         - fix http://bugs.webkit.org/show_bug.cgi?id=18104
3293           REGRESSION: LEAK: 2 InlineBox in editing/inserting/12882.html
3294
3295         * rendering/bidi.cpp:
3296         (WebCore::RenderBlock::layoutInlineChildren): When deciding to ditch
3297         old clean lines (due to changed or newly-added floats), keep the
3298         reference to those lines so they can be properly deleted in the end,
3299         and use a separate flag to signal that no matching should be attempted.
3300
3301 2008-03-26  Mark Rowe  <mrowe@apple.com>
3302
3303         Speculative Windows build fix.
3304
3305         * platform/graphics/win/SimpleFontDataCGWin.cpp:
3306
3307 2008-03-25  Steve Falkenburg  <sfalken@apple.com>
3308
3309         Turn on link-time-codegen in html and rendering related files.
3310
3311         Reviewed by Oliver.
3312
3313         * WebCore.vcproj/WebCore.vcproj:
3314
3315 2008-03-26  Maciej Stachowiak  <mjs@apple.com>
3316
3317         Reviewed by Darin.
3318
3319         - fixed "SVG multichar glyph matching matches longest instead of first (affects Acid3 test 79)"
3320         http://bugs.webkit.org/show_bug.cgi?id=18118
3321
3322         * svg/SVGFont.cpp:
3323         (WebCore::SVGTextRunWalker::walk):
3324         * svg/SVGFontElement.cpp:
3325         (WebCore::SVGFontElement::SVGFontElement):
3326         (WebCore::SVGFontElement::addGlyphToCache):
3327         (WebCore::SVGFontElement::removeGlyphFromCache):
3328         (WebCore::SVGFontElement::ensureGlyphCache):
3329         (WebCore::SVGFontElement::getGlyphIdentifiersForString):
3330         * svg/SVGFontElement.h:
3331         * svg/SVGGlyphElement.h:
3332         (WebCore::SVGGlyphIdentifier::SVGGlyphIdentifier):
3333         * svg/SVGGlyphMap.h: Added. New radix tree based glyph map.
3334         (WebCore::GlyphMapNode::GlyphMapNode):
3335         (WebCore::SVGGlyphMap::SVGGlyphMap):
3336         (WebCore::SVGGlyphMap::add):
3337         (WebCore::SVGGlyphMap::compareGlyphPriority):
3338         (WebCore::SVGGlyphMap::get):
3339         (WebCore::SVGGlyphMap::clear):
3340
3341 2008-03-26  David Hyatt  <hyatt@apple.com>
3342
3343         Fix build bustage on Tiger.  Tiger will not have the bug fix.
3344
3345         * platform/graphics/mac/SimpleFontDataMac.mm:
3346         (WebCore::SimpleFontData::platformInit):
3347         * platform/graphics/win/SimpleFontDataCGWin.cpp:
3348         (WebCore::SimpleFontData::platformInit):
3349
3350 2008-03-26  David Hyatt  <hyatt@apple.com>
3351
3352         Make the Ahem font antialias correctly on Acid3.
3353
3354         Reviewed by Dan
3355
3356         * platform/graphics/SimpleFontData.h:
3357         * platform/graphics/mac/FontMac.mm:
3358         (WebCore::Font::drawGlyphs):
3359         * platform/graphics/mac/SimpleFontDataMac.mm:
3360         (WebCore::SimpleFontData::platformInit):
3361         * platform/graphics/win/FontCGWin.cpp:
3362         (WebCore::Font::drawGlyphs):
3363         * platform/graphics/win/SimpleFontDataCGWin.cpp:
3364         (WebCore::SimpleFontData::platformInit):
3365
3366 2008-03-26  Mark Rowe  <mrowe@apple.com>
3367
3368         Fix the Mac build.
3369
3370         * WebCore.xcodeproj/project.pbxproj:  Copy the newly generated header into the right place.
3371
3372 2008-03-26  Adam Roben  <aroben@apple.com>
3373
3374         Fix Bug 17768: REGRESSION (r30146): Inspector no longer shows elements
3375         properties
3376
3377         <http://bugs.webkit.org/show_bug.cgi?id=17768>
3378
3379         We were throwing an exception from Object.describe because of some
3380         undefined variables.
3381
3382         Reviewed by Tim Hatcher.
3383
3384         * page/inspector/utilities.js:
3385         (Object.describe): Reinstate the type1 and type2 variables that were
3386         removed in r30146. They're still used when formatting a function.
3387
3388 2008-03-26  Eric Seidel  <eric@webkit.org>
3389
3390         Reviewed by darin.
3391
3392         Forgot to add braces darin asked for during review.
3393
3394         * dom/XMLTokenizer.cpp:
3395         (WebCore::XMLTokenizer::write):
3396
3397 2008-03-26  Eric Seidel  <eric@webkit.org>
3398
3399         Reviewed by darin.
3400
3401         Fix, makes us pass Test 70
3402         XML documents should be strict about encoding checks
3403         http://bugs.webkit.org/show_bug.cgi?id=17079
3404
3405         Test: fast/encoding/invalid-xml.html
3406
3407         * WebCore.base.exp:
3408         * dom/XMLTokenizer.cpp:
3409         (WebCore::XMLTokenizer::write):
3410         * loader/CachedFont.cpp:
3411         (WebCore::CachedFont::ensureSVGFontData):
3412         * loader/TextResourceDecoder.cpp:
3413         (WebCore::TextResourceDecoder::TextResourceDecoder):
3414         (WebCore::TextResourceDecoder::decode):
3415         * loader/TextResourceDecoder.h:
3416         * platform/text/TextCodec.h:
3417         (WebCore::TextCodec::decode):
3418         * platform/text/TextCodecICU.cpp:
3419         (WebCore::TextCodecICU::decodeToBuffer):
3420         (WebCore::ErrorCallbackSetter::ErrorCallbackSetter):
3421         (WebCore::ErrorCallbackSetter::~ErrorCallbackSetter):
3422         (WebCore::TextCodecICU::decode):
3423         * platform/text/TextCodecICU.h:
3424         * platform/text/TextCodecLatin1.cpp:
3425         * platform/text/TextCodecLatin1.h:
3426         * platform/text/TextCodecUTF16.cpp:
3427         * platform/text/TextCodecUTF16.h:
3428         * platform/text/TextCodecUserDefined.cpp:
3429         * platform/text/TextCodecUserDefined.h:
3430         * platform/text/TextDecoder.cpp:
3431         (WebCore::TextDecoder::checkForBOM):
3432         * platform/text/TextDecoder.h:
3433         (WebCore::TextDecoder::decode):
3434         * platform/text/TextEncoding.cpp:
3435         (WebCore::TextEncoding::decode):
3436         * platform/text/TextEncoding.h:
3437         (WebCore::TextEncoding::decode):
3438         * platform/text/mac/TextCodecMac.cpp:
3439         (WebCore::TextCodecMac::decode):
3440         * platform/text/mac/TextCodecMac.h:
3441
3442 2008-03-26  Antti Koivisto  <antti@apple.com>
3443
3444         Reviewed by Adam.
3445
3446         Add ElementTimeControl interface to SVGAnimationElement.
3447         Passes Acid3 test 75.
3448
3449         * DerivedSources.make:
3450         * WebCore.pro:
3451         * WebCore.vcproj/WebCore.vcproj:
3452         * WebCore.xcodeproj/project.pbxproj:
3453         * bindings/scripts/CodeGeneratorObjC.pm:
3454         * svg/ElementTimeControl.h: Added.
3455         (WebCore::ElementTimeControl::~ElementTimeControl):
3456         * svg/ElementTimeControl.idl: Added.
3457         * svg/SVGAnimationElement.cpp:
3458         (WebCore::SVGAnimationElement::beginElement):
3459         (WebCore::SVGAnimationElement::beginElementAt):
3460         (WebCore::SVGAnimationElement::endElement):
3461         (WebCore::SVGAnimationElement::endElementAt):
3462         * svg/SVGAnimationElement.h:
3463         * svg/SVGAnimationElement.idl:
3464
3465 2008-03-26  Kevin McCullough  <kmccullough@apple.com>
3466
3467         - LayoutTest fix.  Null check.
3468
3469         * xml/XMLHttpRequest.cpp:
3470         (WebCore::XMLHttpRequest::send):
3471
3472 2008-03-26  Dan Bernstein  <mitz@apple.com>
3473
3474         Reviewed by Darin Adler.
3475
3476         - fix http://bugs.webkit.org/show_bug.cgi?id=17994
3477           REGRESSION (523-525+) View not updated when changing CSS size via JavaScript
3478         - fix http://bugs.webkit.org/show_bug.cgi?id=18063
3479           REGRESSION (r31250): Small bug that just cropped up in WebKit r31275
3480
3481         Tests: fast/repaint/subtree-root-clip.html
3482                fast/repaint/subtree-root-clip-2.html
3483                fast/repaint/subtree-root-clip-3.html
3484
3485         * rendering/LayoutState.cpp:
3486         (WebCore::LayoutState::LayoutState): Changed to not set an initial clip.
3487         Since the root is clipping, there is no need to set a clip, and setting
3488         the clip based on the container was wrong because often the root was
3489         not included in the container's overflow rect because it had its own
3490         layer.
3491         * rendering/RenderBox.cpp:
3492         (WebCore::RenderBox::absolutePosition): Removed code that added table
3493         cell's extra top offset only in the slow (recursive) code path.
3494         * rendering/RenderTableCell.cpp:
3495         (WebCore::RenderTableCell::absolutePosition): Added code to add the
3496         extra top offset in both code paths.
3497
3498 2008-03-26  Simon Hausmann  <hausmann@webkit.org>
3499
3500         Fix the Qt build.
3501
3502         * platform/graphics/qt/FontQt.cpp:
3503         (WebCore::Font::floatWidth):
3504
3505 2008-03-24  Maciej Stachowiak  <mjs@apple.com>
3506
3507         Reviewed by Eric.
3508
3509         - fixed "SVGTextElement.getStartPositionOfChar does not correctly account for multichar glyphs"
3510         http://bugs.webkit.org/show_bug.cgi?id=18046
3511
3512         * platform/graphics/Font.cpp:
3513         (WebCore::Font::floatWidth): Allow expressing a run that has extra "context" characters beyond the end,
3514         and reporting of how many characters were actually consumed, to support multichar glyphs in SVG fonts.
3515         * platform/graphics/Font.h:
3516         * rendering/SVGInlineTextBox.cpp:
3517         (WebCore::SVGInlineTextBox::calculateGlyphWidth): Pass along extra chars in argument and chars consumed out
3518         argument.
3519         (WebCore::SVGInlineTextBox::calculateGlyphHeight): Pass along extra chars in argument.
3520         (WebCore::SVGInlineTextBox::calculateGlyphBoundaries): Add boilerplate; may not handle multichar glyphs
3521         right but I don't know what effects this would have.
3522         * rendering/SVGInlineTextBox.h:
3523         * rendering/SVGRootInlineBox.cpp:
3524         (WebCore::cummulatedWidthOrHeightOfTextChunk): Add boilerplate; may not handle multichar glyphs right
3525         but again I am not sure what effect this would have.
3526         (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox): Account for multichar glyphs - let glyph
3527         selection consider extra chars, and account for the fact that a glyph may have consumed multiple chars.
3528         * rendering/SVGRootInlineBox.h:
3529         * svg/SVGFont.cpp:
3530         (WebCore::SVGTextRunWalker::walk): This is the place where glyph selection happens, so this is where
3531         we accout for multichar glyphs (both looking at extra chars past the end of the run, and reporting how
3532         many chars were consumed).
3533         (WebCore::floatWidthOfSubStringUsingSVGFont): Pass aforementioned info through the layers.
3534         (WebCore::Font::floatWidthUsingSVGFont): ditto
3535         (WebCore::Font::drawTextUsingSVGFont): ditto
3536         (WebCore::Font::selectionRectForTextUsingSVGFont): ditto
3537         * svg/SVGTextContentElement.cpp:
3538         (WebCore::cummulatedCharacterRangeLength): ditto
3539         (WebCore::SVGInlineTextBoxQueryWalker::chunkPortionCallback): ditto
3540
3541 2008-03-25  Beth Dakin  <bdakin@apple.com>
3542
3543         Reviewed by Oliver.
3544
3545         Fix for <rdar://problem/5811826> CSSValueList::item() does not 
3546         range-check index
3547
3548         Check bounds before accessing the item to avoid a crash. 
3549         itemWithoutBoundsCheck() is still inlined and not bounds-checked to 
3550         avoid slowing down our internal callers of item().
3551         * css/CSSValueList.cpp:
3552         (WebCore::CSSValueList::item):
3553         * css/CSSValueList.h:
3554         (WebCore::CSSValueList::itemWithoutBoundsCheck):
3555
3556         Call itemWithoutBoundsCheck() to avoid slowing down these internal 
3557         callers.
3558         * css/CSSFontSelector.cpp:
3559         (WebCore::CSSFontSelector::addFontFaceRule):
3560         * css/CSSMutableStyleDeclaration.cpp:
3561         (WebCore::CSSMutableStyleDeclaration::getLayeredShorthandValue):
3562         * css/CSSStyleSelector.cpp:
3563         (WebCore::applyCounterList):
3564         (WebCore::CSSStyleSelector::applyProperty):
3565         * css/MediaQueryEvaluator.cpp:
3566         (WebCore::parseAspectRatio):
3567         * svg/SVGFontFaceElement.cpp:
3568         (WebCore::SVGFontFaceElement::rebuildFontFace):
3569         * svg/graphics/SVGPaintServer.cpp:
3570         (WebCore::dashArrayFromRenderingStyle):
3571
3572 2008-03-25  Antti Koivisto  <antti@apple.com>
3573
3574         Reviewed by Oliver.
3575
3576         Fix http://bugs.webkit.org/show_bug.cgi?id=18082
3577         REGRESSION (r31287): GMail does not work if user stylesheet is set
3578         
3579         Oops, my cache refactoring patch was missing these rather essential lines for
3580         user stylesheets. They would get reloaded repeatedly.
3581
3582         * loader/Cache.cpp:
3583         (WebCore::Cache::requestUserCSSStyleSheet):
3584
3585 2008-03-25  Matt Lilek  <webkit@mattlilek.com>
3586
3587         Rubber stamped by Adam
3588