fa734792ab08c1cb237b703a33ed3c6be49d9b87
[WebKit-https.git] / WebCore / ChangeLog
1 2006-10-01  Anders Carlsson  <acarlsson@apple.com>
2
3         Reviewed by Geoff.
4
5         * dom/Document.cpp:
6         (WebCore::Document::recalcStyleSelector):
7         * dom/Document.h:
8         Get rid of availableStyleSheets() and remove DeprecatedStringList.h include.
9         
10         * dom/Node.h:
11         Remove DeprecatedStringList class forward declaration.
12         
13         * editing/markup.cpp:
14         Include DeprecatedStringList.h here since it's not included by Document.h anymore.
15         
16         * kcanvas/KCanvasTreeDebug.cpp:
17         * kcanvas/KCanvasTreeDebug.h:
18         Remove unused functions.
19         
20         * loader/loader.cpp:
21         * page/Frame.cpp:
22         * page/Frame.h:
23         * page/FrameView.h:
24         Fixup DeprecatedStringList.h includes.
25
26 2006-09-30  David Harrison  <harrison@apple.com>
27
28         Reviewed by John Sullivan.
29
30         <rdar://problem/4641262> REGRESSION: Japanese text corrupts on wrapping point
31
32         Problem was that the decision to trim was based only on whether the character
33         is a soft hyphen, which caused pretty much any Japanese character to go.
34         Changed to decide based on whether the character is ignorable whitespace.
35         
36         Test:
37         * fast/text/international/wrap-CJK-001.html
38
39         * rendering/bidi.cpp:
40         (WebCore::isTrimmableChar):
41         New. Checks whether character is whitespace that can be ignored
42         according to the text node's style.
43         trimmed from the end of wrapped line.
44         (WebCore::checkMidpoints):
45         Call isTrimmable() rather than checking for char != SOFT_HYPHEN.
46
47 2006-10-01  Anders Carlsson  <acarlsson@apple.com>
48
49         Reviewed by Mitz Pettel.
50
51         Convert the SVG code to use Vector<String> instead of DeprecatedStringList.
52
53         * ksvg2/svg/SVGColor.cpp:
54         (WebCore::SVGColor::setRGBColor):
55         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
56         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
57         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
58         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
59         (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
60         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
61         (SVGFESpecularLightingElement::parseMappedAttribute):
62         * ksvg2/svg/SVGFETurbulenceElement.cpp:
63         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
64         * ksvg2/svg/SVGLengthList.cpp:
65         * ksvg2/svg/SVGNumberList.cpp:
66         (SVGNumberList::parse):
67         * ksvg2/svg/SVGNumberList.h:
68         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
69         (WebCore::SVGPreserveAspectRatio::parsePreserveAspectRatio):
70         * ksvg2/svg/SVGStringList.cpp:
71         (WebCore::SVGStringList::reset):
72         * ksvg2/svg/SVGStringList.h:
73         * ksvg2/svg/SVGTransformable.cpp:
74         (SVGTransformable::parseTransformAttribute):
75
76 2006-10-01  Nikolas Zimmermann  <zimmermann@kde.org>
77
78         Reviewed by Eric, tweaked and landed by ap.
79
80         Fix Qt/Linux build.
81
82         * CMakeLists.txt:
83         * platform/qt/PlatformScrollBar.h:
84         * platform/qt/TemporaryLinkStubs.cpp:
85         (WebCore::ScrollBar::ScrollBar):
86         (WebCore::PlatformScrollBar::PlatformScrollBar):
87         (FrameView::passMousePressEventToSubframe):
88         (FrameView::passMouseMoveEventToSubframe):
89         (FrameView::passMouseReleaseEventToSubframe):
90         (FrameView::passWheelEventToSubframe):
91         (FrameView::passMousePressEventToScrollbar):
92         * ksvg2/svg/SVGDocument.h:
93
94 2006-10-01  Mitz Pettel  <opendarwin.org@mitzpettel.com>
95
96         Reviewed by Darin.
97
98         Fix for http://bugs.webkit.org/show_bug.cgi?id=10190
99         REGRESSION: Repro crash when navigating away from an image document that hasn't finished loading
100
101         No test case added (probably requires new DumpRenderTree functionality)
102
103         * rendering/RenderImage.cpp:
104         (WebCore::RenderImage::imageChanged): Added early return if the document is
105         being destroyed.
106
107 2006-10-01  Graham Dennis  <graham.dennis@gmail.com>
108
109         Reviewed by Hyatt.
110
111         Fix for http://bugs.webkit.org/show_bug.cgi?id=10842
112         REGRESSION (r15418): contenteditable div truncates rightmost Japanese character
113         
114         Make sure we only break after a space (and not any other valid line-break) if
115         the style is -webkit-line-break: after-white-space (e.g. for a contentEditable div).
116         I also did a logic shuffle at Mitz's request to prevent doing an if on the same expression
117         twice in quick succession.
118
119         * rendering/bidi.cpp:
120         (WebCore::RenderBlock::findNextLineBreak): 
121
122 2006-10-01  Alexey Proskuryakov  <ap@nypop.com>
123
124         Reviewed by Maciej and Darin.
125
126         http://bugs.webkit.org/show_bug.cgi?id=4372
127         JavaScript document.write page form does not submit in Safari
128
129         Test: fast/forms/document-write.html
130
131         * page/Frame.cpp:
132         (WebCore::Frame::submitForm): Don't check for parsing().
133
134 2006-10-01  Alexey Proskuryakov  <ap@nypop.com>
135
136         Build fix.
137
138         * bridge/mac/FrameViewMac.mm: Add missing #imports.
139
140 2006-10-01  Dave Hyatt  <hyatt@apple.com>
141
142         Refactor the code that passes mouse presses to the Mac scrollbar and make it cross-platform.
143        
144         Reviewed by mitz
145
146         * bridge/mac/FrameMac.mm:
147         (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
148         * bridge/mac/FrameViewMac.mm:
149         (WebCore::FrameView::passMousePressEventToScrollbar):
150         * page/FrameView.cpp:
151         (WebCore::FrameView::handleMousePressEvent):
152         (WebCore::FrameView::setMousePressed):
153         * page/FrameView.h:
154         * platform/win/TemporaryLinkStubs.cpp:
155         (FrameView::passMousePressEventToScrollbar):
156
157 2006-09-30  Sam Weinig  <sam.weinig@gmail.com>
158
159         Reviewed by Darin.
160
161         Patch for http://bugs.webkit.org/show_bug.cgi?id=11102
162         Add more SVG Objective-C DOM bindings
163
164         - Auto-generate Objective-C DOM bindings for DOMSVGAElement,
165           DOMSVGAnimateColorElement, DOMSVGAnimateElement, DOMSVGAnimateTransformElement,
166           DOMSVGAnimatedPathData, DOMSVGAnimatedPoints, DOMSVGAnimatedPreserveAspectRatio,
167           DOMSVGAnimationElement, DOMSVGCircleElement, DOMSVGClipPathElement, DOMSVGColor,
168           DOMSVGCursorElement, DOMSVGDefsElement, DOMSVGDescElement, DOMSVGDocument, 
169           DOMSVGEllipseElement, DOMSVGPreserveAspectRatio, and DOMSVGURIReference.
170
171         * DerivedSources.make:
172         * WebCore.xcodeproj/project.pbxproj:
173         * bindings/objc/DOMInternal.h:
174         * bindings/objc/DOMSVG.h:
175         * bindings/scripts/CodeGeneratorObjC.pm:
176         * ksvg2/svg/SVGAElement.idl:
177         * ksvg2/svg/SVGAnimateColorElement.idl:
178         * ksvg2/svg/SVGAnimateElement.idl:
179         * ksvg2/svg/SVGAnimateTransformElement.idl:
180         * ksvg2/svg/SVGAnimatedPathData.idl:
181         * ksvg2/svg/SVGAnimatedPoints.idl:
182         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.idl:
183         * ksvg2/svg/SVGAnimationElement.idl:
184         * ksvg2/svg/SVGCircleElement.idl:
185         * ksvg2/svg/SVGClipPathElement.idl:
186         * ksvg2/svg/SVGColor.idl:
187         * ksvg2/svg/SVGCursorElement.idl:
188         * ksvg2/svg/SVGDefsElement.idl:
189         * ksvg2/svg/SVGDescElement.idl:
190         * ksvg2/svg/SVGDocument.idl:
191         * ksvg2/svg/SVGEllipseElement.idl:
192         * ksvg2/svg/SVGPointList.idl:
193         * ksvg2/svg/SVGPreserveAspectRatio.idl:
194         * ksvg2/svg/SVGRect.idl:
195         * ksvg2/svg/SVGSVGElement.idl:
196
197 2006-09-30  Maciej Stachowiak  <mjs@apple.com>
198
199         Reviewed by Adele.
200
201         - fix build
202
203         * platform/FloatRect.h:
204         (WebCore::FloatRect::contains): Added; not exactly the same semantic as IntRect containment
205         but more appropriate for path-type stuff.
206         * platform/cg/PathCG.cpp:
207         (WebCore::Path::contains): Don't use enclosingIntRect, just use FloatRect::contains.
208
209 2006-09-30  Alexey Proskuryakov  <ap@nypop.com>
210
211         Reviewed by Darin.
212
213         http://bugs.webkit.org/show_bug.cgi?id=11011
214         External CSS is parsed as iso-8859-1 even though the main document is utf-8
215
216         Test: fast/encoding/css-charset-default.xhtml
217
218         * loader/CachedResourceClient.h:
219         (WebCore::CachedResourceClient::setCSSStyleSheet):
220         (WebCore::CachedResourceClient::setXSLStyleSheet):
221         Divided setStyleSheet into setCSSStyleSheet and setXSLStyleSheet. The former
222         takes an additional charset parameter, to be passed to CSSStyleSheet constructor.
223
224         * css/CSSImportRule.cpp:
225         (WebCore::CSSImportRule::setCSSStyleSheet):
226         (WebCore::CSSImportRule::insertedIntoParent): Default to parent stylesheet's charset.
227         * css/CSSImportRule.h:
228
229         * css/CSSStyleSheet.cpp:
230         (WebCore::CSSStyleSheet::CSSStyleSheet):
231         * css/CSSStyleSheet.h:
232         Added an m_charset member to be used when loading child stylesheets. Removed an unused m_implicit
233         member. Changed some String parameters to const String&.
234
235         * css/StyleSheet.cpp:
236         (WebCore::StyleSheet::StyleSheet):
237         * css/StyleSheet.h:
238         Changed some String parameters to const String&. Removed an unused (even unimplemented) constructor.
239
240         * css/StyleSheetList.cpp:
241         (WebCore::StyleSheetList::length):
242         (WebCore::StyleSheetList::item):
243         * css/StyleSheetList.h:
244         Special-casing implicit stylesheets seemed to be dead code, removed.
245
246         * dom/Document.cpp:
247         (WebCore::Document::setCSSStyleSheet):
248         (WebCore::Document::recalcStyleSelector):
249         * dom/Document.h:
250         Renamed setStyleSheet() to setCSSStyleSheet().
251
252         * dom/ProcessingInstruction.cpp:
253         (WebCore::ProcessingInstruction::checkStyleSheet): Pass a correct charset to requestCSSStyleSheet().
254         (WebCore::ProcessingInstruction::setCSSStyleSheet):
255         (WebCore::ProcessingInstruction::setXSLStyleSheet):
256         (WebCore::ProcessingInstruction::parseStyleSheet):
257         * dom/ProcessingInstruction.h:
258
259         * html/HTMLLinkElement.cpp:
260         (WebCore::HTMLLinkElement::process): Default to document encoding if a charset attribute 
261         is not specified.
262         (WebCore::HTMLLinkElement::setCSSStyleSheet):
263         * html/HTMLLinkElement.h:
264
265         * html/HTMLStyleElement.cpp:
266         (WebCore::HTMLStyleElement::childrenChanged):
267         * ksvg2/svg/SVGStyleElement.cpp:
268         (WebCore::SVGStyleElement::childrenChanged):
269         Inherit URL and charset from the document.
270
271         * loader/Cache.cpp:
272         (WebCore::Cache::requestCSSStyleSheet):
273         * loader/Cache.h:
274         Adjust for setStyleSheet() renaming.
275
276         * loader/CachedCSSStyleSheet.h: Removed an unused constructor.
277         * loader/CachedCSSStyleSheet.cpp:
278         (WebCore::CachedCSSStyleSheet::ref):
279         (WebCore::CachedCSSStyleSheet::deref):
280         (WebCore::CachedCSSStyleSheet::checkNotify):
281         Pass the encoding to setCSSStyleSheet().
282
283         * loader/CachedXSLStyleSheet.cpp:
284         (WebCore::CachedXSLStyleSheet::ref):
285         (WebCore::CachedXSLStyleSheet::checkNotify):
286         * loader/DocLoader.cpp:
287         (WebCore::DocLoader::requestCSSStyleSheet):
288         * loader/DocLoader.h:
289         * page/Frame.cpp:
290         (WebCore::UserStyleSheetLoader::UserStyleSheetLoader):
291         (WebCore::UserStyleSheetLoader::setCSSStyleSheet):
292         * xml/XSLImportRule.cpp:
293         (WebCore::XSLImportRule::setXSLStyleSheet):
294         (WebCore::XSLImportRule::loadSheet):
295         * xml/XSLImportRule.h:
296         Adjust for setStyleSheet() renaming.
297
298 2006-09-30  Rob Buis  <buis@kde.org>
299
300         Reviewed by eseidel.
301
302         http://bugs.webkit.org/show_bug.cgi?id=11096
303         Hit testing for polylines fails
304
305         Fix Path::contains so it handles filled, non-closed paths too.
306
307         * platform/cg/PathCG.cpp:
308         (WebCore::Path::contains):
309
310 2006-09-30  Dave Hyatt  <hyatt@apple.com>
311
312         Refactor subframe event handling to hide more of the Mac-specific logic from the cross-platform code.
313         Stub out a capturing API that mimics the way Web browsers capture events and route them to specific
314         subframes while the mouse is down.
315       
316         Reviewed by mitzpettel
317
318         * bridge/mac/FrameMac.h:
319         * bridge/mac/FrameMac.mm:
320         (WebCore::FrameMac::passWidgetMouseDownEventToWidget):
321         (WebCore::FrameMac::passWheelEventToWidget):
322         * bridge/mac/FrameViewMac.mm:
323         (WebCore::FrameView::passMousePressEventToSubframe):
324         (WebCore::FrameView::passMouseMoveEventToSubframe):
325         (WebCore::FrameView::passMouseReleaseEventToSubframe):
326         (WebCore::FrameView::passWheelEventToSubframe):
327         * page/Frame.cpp:
328         * page/Frame.h:
329         * page/FrameView.cpp:
330         (WebCore::subframeForTargetNode):
331         (WebCore::FrameView::handleMousePressEvent):
332         (WebCore::FrameView::handleMouseDoubleClickEvent):
333         (WebCore::FrameView::handleMouseMoveEvent):
334         (WebCore::FrameView::handleMouseReleaseEvent):
335         (WebCore::FrameView::handleWheelEvent):
336         * page/FrameView.h:
337         * platform/ScrollBar.h:
338         (WebCore::ScrollBar::handleMouseMoveEvent):
339         (WebCore::ScrollBar::handleMouseOutEvent):
340         * platform/Widget.h:
341         (WebCore::Widget::handleMouseMoveEvent):
342         (WebCore::Widget::handleMouseReleaseEvent):
343         * platform/win/TemporaryLinkStubs.cpp:
344         (FrameView::passMousePressEventToSubframe):
345         (FrameView::passMouseMoveEventToSubframe):
346         (FrameView::passMouseReleaseEventToSubframe):
347         (FrameView::passWheelEventToSubframe):
348         (Widget::capturingMouse):
349         (Widget::setCapturingMouse):
350         (Widget::capturingTarget):
351         (Widget::capturingChild):
352         (Widget::setCapturingChild):
353         * rendering/RenderView.cpp:
354         (WebCore::RenderView::paintBoxDecorations):
355
356 2006-09-29  MorganL  <morganl.webkit@yahoo.com>
357
358         Reviewed by Adele.
359
360         Fixes windows bustage:
361         http://bugs.webkit.org/show_bug.cgi?id=11093
362
363         * platform/win/PlatformScrollBar.h:
364         * platform/win/TemporaryLinkStubs.cpp:
365         (PlatformScrollBar::PlatformScrollBar):
366         (ScrollBar::ScrollBar):
367
368 2006-09-29  David Hyatt  <hyatt@apple.com>
369
370         Eliminate RenderLayer::gScrollBar in favor of caching the scrollbar hit
371         in RenderObject::NodeInfo (and then propagating that Widget to
372         MouseEventWithHitTestResults).
373
374         This allows RenderListBox and RenderBlock to do the same thing when the
375         mouse is over the scrollbar.
376
377         Also land fix to support font-size: 0.
378
379         Reviewed by mjs (scrollbar), eric (font-size)
380
381         * dom/Document.cpp:
382         (WebCore::Document::prepareMouseEvent):
383         * page/Frame.cpp:
384         (WebCore::Frame::passWidgetMouseDownEventToWidget):
385         * page/FrameView.cpp:
386         (WebCore::selectCursor):
387         (WebCore::FrameView::handleMouseMoveEvent):
388         (WebCore::FrameView::dispatchMouseEvent):
389         * page/MouseEventWithHitTestResults.cpp:
390         (WebCore::MouseEventWithHitTestResults::MouseEventWithHitTestResults):
391         * page/MouseEventWithHitTestResults.h:
392         (WebCore::MouseEventWithHitTestResults::scrollbar):
393         * rendering/RenderBlock.cpp:
394         (WebCore::RenderBlock::isPointInScrollbar):
395         (WebCore::RenderBlock::nodeAtPoint):
396         * rendering/RenderBlock.h:
397         * rendering/RenderLayer.cpp:
398         (WebCore::RenderLayer::hitTest):
399         * rendering/RenderLayer.h:
400         (WebCore::RenderLayer::getHiddenBehavior):
401         * rendering/RenderListBox.cpp:
402         (WebCore::RenderListBox::RenderListBox):
403         (WebCore::RenderListBox::~RenderListBox):
404         (WebCore::RenderListBox::isPointInScrollbar):
405         * rendering/RenderListBox.h:
406         * rendering/RenderObject.h:
407         (WebCore::RenderObject::NodeInfo::NodeInfo):
408         (WebCore::RenderObject::NodeInfo::scrollbar):
409         (WebCore::RenderObject::NodeInfo::setScrollbar):
410
411 2006-09-29  MorganL  <morganl.webkit@yahoo.com>
412
413         Reviewed by Adele.
414
415         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11092
416
417         * platform/win/ScrollViewWin.cpp:
418         (WebCore::ScrollView::convertToContainingWindow):
419         (WebCore::ScrollView::convertFromContainingWindow):
420         * platform/win/WidgetWin.cpp:
421         (WebCore::Widget::convertToContainingWindow):
422         (WebCore::Widget::convertFromContainingWindow):
423
424 2006-09-29  Adele Peterson  <adele@apple.com>
425
426         Updated with new argument for PlatformScrollBar.
427
428         * platform/win/TemporaryLinkStubs.cpp:
429         (PlatformScrollBar::PlatformScrollBar):
430
431 2006-09-29  Adele Peterson  <adele@apple.com>
432
433         Reviewed by Hyatt.
434
435         Fixing build bustage with cast to int.
436
437         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::lastSelectedListIndex):
438
439 2006-09-29  Adele Peterson  <adele@apple.com>
440
441         Fixing accidental include.
442
443         * rendering/RenderListBox.cpp:
444
445 2006-09-29  Adele Peterson  <adele@apple.com>
446
447         Adding RenderListBox files.
448
449         * WebCore.vcproj/WebCore/WebCore.vcproj:
450
451 2006-09-29  Adele Peterson  <adele@apple.com>
452
453         Reviewed by Adam.
454
455         Initial implementation of engine-based list box control.
456
457         * WebCore.xcodeproj/project.pbxproj: Added RenderListBox.h and RenderListBox.cpp
458
459         * bridge/mac/FrameMac.h: Added _mouseDownMayStartAutoscroll.
460         * bridge/mac/FrameMac.mm: Updated autoscroll code to use renderers instead of layers, so any renderer that implements autoscroll will work.
461         (WebCore::FrameMac::FrameMac):
462         (WebCore::FrameMac::handleMousePressEvent):
463         (WebCore::FrameMac::handleMouseMoveEvent):
464         (WebCore::FrameMac::mouseDown):
465
466         * page/Frame.cpp:
467         (WebCore::Frame::handleMouseMoveEvent):
468         (WebCore::Frame::scrollOverflow): Don't scroll list box here- this would cause arrow keys to scroll instead of select.
469         (WebCore::Frame::handleAutoscroll): Updated to use a renderer instead of a layer when setting up autoscroll.
470         (WebCore::Frame::autoscrollTimerFired): ditto.
471         (WebCore::Frame::stopAutoscrollTimer): ditto.
472         (WebCore::Frame::passWidgetMouseDownEventToWidget): Updated to check for list box's scroll bar.
473         * page/Frame.h:
474         * page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Updated to use renderer unstead of layer for autoscroll.
475
476         * page/FrameView.cpp: Keep track of current mouse position so this can be used for list box autoscroll.
477         (WebCore::FrameViewPrivate::reset):
478         (WebCore::FrameView::currentMousePosition):
479         (WebCore::FrameView::handleMousePressEvent):
480         (WebCore::FrameView::handleMouseDoubleClickEvent):
481         (WebCore::selectCursor):
482         (WebCore::FrameView::handleMouseMoveEvent):
483         (WebCore::FrameView::handleMouseReleaseEvent):
484         * page/FrameView.h:
485
486         * platform/ScrollBar.cpp: (WebCore::ScrollBar::ScrollBar): Added controlSize argument.  The list box will use a smaller scroll bar size.
487         * platform/ScrollBar.h:
488         (WebCore::):
489         (WebCore::ScrollBar::controlSize):
490         * platform/mac/PlatformScrollBar.h:
491         * platform/mac/PlatformScrollBarMac.mm:
492         (NSControlSizeForScrollBarControlSize):
493         (-[WebCoreScrollBar initWithPlatformScrollBar:]):
494         (WebCore::PlatformScrollBar::PlatformScrollBar):
495
496         * rendering/RenderBlock.h:
497         * rendering/RenderLayer.cpp: (WebCore::RenderLayer::createScrollbar): Updated to pass regular control size to scrollbar constructor.
498         * rendering/RenderLayer.h:
499         * rendering/RenderObject.cpp:
500         (WebCore::RenderObject::shouldAutoscroll):
501         (WebCore::RenderObject::autoscroll):
502         * rendering/RenderObject.h: (WebCore::RenderObject::isListBox):
503
504         * css/html4.css: Added properties for new list boxes.
505
506         * html/HTMLOptionElement.cpp:
507         (WebCore::HTMLOptionElement::setSelected): Doesn't allow selection to be changed here if the option is disabled.
508         (WebCore::HTMLOptionElement::disabled): Added. Checks the parent's disabled status.
509         * html/HTMLOptionElement.h: Added disabled method.
510
511         * html/HTMLSelectElement.cpp: Added appearance switch for new list box implementation.
512         (WebCore::HTMLSelectElement::recalcStyle):
513         (WebCore::HTMLSelectElement::lastSelectedListIndex):
514         (WebCore::HTMLSelectElement::deselectItems):
515         (WebCore::HTMLSelectElement::setSelectedIndex):
516         (WebCore::HTMLSelectElement::isKeyboardFocusable):
517         (WebCore::HTMLSelectElement::isMouseFocusable):
518         (WebCore::HTMLSelectElement::createRenderer):
519         (WebCore::HTMLSelectElement::recalcListItems):
520         (WebCore::HTMLSelectElement::setRecalcListItems):
521         (WebCore::HTMLSelectElement::reset):
522         (WebCore::HTMLSelectElement::notifyOptionSelected):
523         (WebCore::HTMLSelectElement::defaultEventHandler): Added code to select options for list box when clicking and using arrow keys.
524         (WebCore::HTMLSelectElement::nextSelectableListIndex):
525         (WebCore::HTMLSelectElement::previousSelectableListIndex):
526         * html/HTMLSelectElement.h:
527
528         * rendering/RenderTheme.cpp: Added support for ListBoxAppearance
529         (WebCore::RenderTheme::paint):
530         (WebCore::RenderTheme::paintBorderOnly):
531         (WebCore::RenderTheme::paintDecorations):
532         (WebCore::RenderTheme::activeListBoxSelectionBackgroundColor):
533         (WebCore::RenderTheme::activeListBoxSelectionForegroundColor):
534         (WebCore::RenderTheme::inactiveListBoxSelectionBackgroundColor):
535         (WebCore::RenderTheme::inactiveListBoxSelectionForegroundColor):
536         (WebCore::RenderTheme::isControlStyled):
537         (WebCore::RenderTheme::supportsFocusRing):
538         * rendering/RenderTheme.h:
539         * rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::isControlStyled):
540
541         * rendering/RenderListBox.cpp: Added.
542         (WebCore::RenderListBox::RenderListBox):
543         (WebCore::RenderListBox::~RenderListBox):
544         (WebCore::RenderListBox::setStyle):
545         (WebCore::RenderListBox::updateFromElement):
546         (WebCore::RenderListBox::calcMinMaxWidth):
547         (WebCore::RenderListBox::size):
548         (WebCore::RenderListBox::numItems):
549         (WebCore::RenderListBox::calcHeight):
550         (WebCore::RenderListBox::baselinePosition):
551         (WebCore::RenderListBox::itemBoundingBoxRect):
552         (WebCore::RenderListBox::paintObject):
553         (WebCore::RenderListBox::paintScrollbar):
554         (WebCore::RenderListBox::paintItemForeground):
555         (WebCore::RenderListBox::paintItemBackground):
556         (WebCore::RenderListBox::scrollBarTarget):
557         (WebCore::RenderListBox::isPointInScrollbar):
558         (WebCore::RenderListBox::optionAtPoint):
559         (WebCore::RenderListBox::autoscroll):
560         (WebCore::RenderListBox::scrollToRevealElementAtListIndex):
561         (WebCore::RenderListBox::scroll):
562         (WebCore::RenderListBox::valueChanged):
563         * rendering/RenderListBox.h: Added.
564         (WebCore::RenderListBox::isListBox):
565         (WebCore::RenderListBox::selectionChanged):
566         (WebCore::RenderListBox::setSelectionChanged):
567         (WebCore::RenderListBox::canHaveChildren):
568         (WebCore::RenderListBox::renderName):
569         (WebCore::RenderListBox::setOptionsChanged):
570         (WebCore::RenderListBox::shouldAutoscroll):
571         (WebCore::RenderListBox::listIndexIsVisible):
572
573 2006-09-29  Beth Dakin  <bdakin@apple.com>
574
575         Reviewed by Darin.
576
577         We had a bug where html4.css was ignoring Media Queries. In the end 
578         the problem was that we were trying to send a char* to the 
579         MediaQueryEvaluator constructor that expects a String, but the 
580         char* got interpreted as a bool, the wrong constructor was called, 
581         and the media type was never set.
582
583         No test case possible since this only affects html4.css
584
585         * css/MediaQueryEvaluator.cpp: New constructor that expects takes a 
586         char*
587         (WebCore::MediaQueryEvaluator):
588         * css/MediaQueryEvaluator.h: Same.
589
590 2006-09-29  Geoffrey Garen  <ggaren@apple.com>
591
592         Reviewed by John, Maciej.
593         
594         Integrated some frame and iframe code. I'm trying to fix up frame ownership
595         and loading. Reducing the number of different code paths involved
596         seemed like a good first step.
597         
598         As a side effect, I fixed a bug where FRAME elements would report their
599         src attributes as relative, rather than compelete, URLs. (IFRAME elements
600         had the correct complete URL behavior.)
601
602         * html/HTMLFrameElement.cpp:
603         (WebCore::HTMLFrameElement::isURLAllowed): Fixed comment typo
604         (WebCore::HTMLFrameElement::openURL):
605             (1) Removed checks that requestFrame does for us
606             (2) Added isURLAllowed check, to have one clear bottleneck for it
607             (3) Added viewsource check, to have one clear bottleneck for it
608         (WebCore::HTMLFrameElement::close): Changed to use the common contentFrame()
609         method, instead of finding our content frame in our own unique way.
610         (WebCore::HTMLFrameElement::setLocation): Removed isURLAllowed check,
611         since openURL does this for us now.
612         (WebCore::HTMLFrameElement::src): Return complete URL instead of relative.
613         This is what FF does, and it made no sense to have different behaviors
614         for FRAME and IFRAME elements.
615         * html/HTMLIFrameElement.cpp:
616         (WebCore::HTMLIFrameElement::HTMLIFrameElement): Removed duplicate init
617         code.
618         * html/HTMLIFrameElement.h: Removed src() and openURL() methods, since
619         HTMLFrameElement now does everything we need.
620
621 2006-09-30  Nikolas Zimmermann  <zimmermann@kde.org>
622
623         Reviewed by Hyatt.
624
625         Fix Qt/Linux build.
626
627         * CMakeLists.txt:
628         * platform/qt/ScrollViewQt.cpp:
629         (WebCore::ScrollView::convertToContainingWindow):
630         (WebCore::ScrollView::convertFromContainingWindow):
631         * platform/qt/TemporaryLinkStubs.cpp:
632         (WebCore::signedPublicKeyAndChallengeString):
633         * platform/qt/WidgetQt.cpp:
634         (WebCore::Widget::convertToContainingWindow):
635         (WebCore::Widget::convertFromContainingWindow):
636
637 2006-09-29  Sam Weinig  <sam.weinig@gmail.com>
638
639         Reviewed by Tim H.
640
641         Patch for http://bugs.webkit.org/show_bug.cgi?id=11082
642         Simplify Internal methods for the auto-generated Objective-C DOM code
643
644         - Auto-generate the internal methods for more Objective-C classes.
645
646         * WebCore.xcodeproj/project.pbxproj:
647         * bindings/objc/DOM.mm:
648         * bindings/objc/DOMCSS.mm:
649         (-[DOMStyleSheet WebCore::]):
650         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
651         (-[DOMCSSRule WebCore::]):
652         (-[DOMCSSRule _initWithCSSRule:WebCore::]):
653         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
654         (-[DOMCSSValue WebCore::]):
655         (-[DOMCSSValue _initWithCSSValue:WebCore::]):
656         (+[DOMCSSValue _CSSValueWith:WebCore::]):
657         * bindings/objc/DOMHTMLAppletElement.mm:
658         (-[DOMHTMLAppletElement WebCore::]):
659         (+[DOMHTMLAppletElement _HTMLOptionElementWith:WebCore::]):
660         * bindings/objc/DOMHTMLEmbedElement.mm:
661         (-[DOMHTMLEmbedElement WebCore::]):
662         (+[DOMHTMLEmbedElement _HTMLEmbedElementWith:WebCore::]):
663         * bindings/objc/DOMInternal.h:
664         * bindings/objc/DOMInternal.mm:
665         * bindings/scripts/CodeGeneratorObjC.pm:
666         * css/CSSCharsetRule.idl:
667         * css/CSSFontFaceRule.idl:
668         * css/CSSImportRule.idl:
669         * css/CSSMediaRule.idl:
670         * css/CSSPageRule.idl:
671         * css/CSSPrimitiveValue.idl:
672         * css/CSSStyleRule.idl:
673         * css/CSSStyleSheet.idl:
674         * css/CSSUnknownRule.idl:
675         * css/CSSValueList.idl:
676         * dom/KeyboardEvent.idl:
677         * dom/MouseEvent.idl:
678         * dom/MutationEvent.idl:
679         * dom/NodeIterator.idl:
680         * dom/OverflowEvent.idl:
681         * dom/UIEvent.idl:
682         * dom/WheelEvent.idl:
683
684 2006-09-29  David Harrison  <harrison@apple.com>
685
686         Reviewed by John Sullivan.
687
688         <rdar://problem/4663772> REGRESSION: Cannot type in Japanese after replying to a particular message
689         <rdar://problem/4673293> REGRESSION: Can't enter the Japanese characters in Mail or Blot
690
691         Test added
692         * fast/text/attributed-substring-from-range-001.html
693
694         * bridge/mac/FrameMac.mm:
695         (WebCore::FrameMac::attributedString):
696         Handle non-zero offsets when start and/or end node is a container. Offset used to be ignored in this case.
697         Also, add validation of the range.
698
699 2006-09-29  Rob Buis  <buis@kde.org>
700
701         Reviewed by Maciej.
702
703         http://bugs.webkit.org/show_bug.cgi?id=10893
704         InsertRule can not handle @import statements
705
706         Allow @import as part of a css rule.
707
708         * css/CSSGrammar.y:
709
710 2006-09-28  David Hyatt  <hyatt@apple.com>
711
712         Switch over the Mac-specific uses of viewportToContents/contentsToViewport.
713
714         * bridge/mac/FrameMac.mm:
715         (WebCore::FrameMac::eventMayStartDrag):
716         (WebCore::FrameMac::dragHysteresisExceeded):
717         (WebCore::FrameMac::mouseDown):
718         (WebCore::FrameMac::shouldDragAutoNode):
719         (WebCore::FrameMac::sendContextMenuEvent):
720         * bridge/mac/WebCoreFrameBridge.mm:
721         (-[WebCoreFrameBridge _visiblePositionForPoint:]):
722
723 2006-09-28  Dave Hyatt  <hyatt@apple.com>
724
725         This patch eliminates viewportToContents/contentsToViewport in favor of convertTo/FromContainingWindow.
726         ScrollView now subclasses these methods to factor in its scrollOffset and to deal with the document
727         view.
728        
729         Reviewed by mjs (the convertTo/From changes), (I added the elimination of viewportToContents to
730         the patch after review, once I realized that these new functions essentially do the same thing.)
731
732         * dom/EventTargetNode.cpp:
733         (WebCore::EventTargetNode::dispatchMouseEvent):
734         (WebCore::EventTargetNode::dispatchWheelEvent):
735         * page/Frame.cpp:
736         (WebCore::Frame::selectClosestWordFromMouseEvent):
737         (WebCore::Frame::handleMousePressEventTripleClick):
738         (WebCore::Frame::handleMousePressEventSingleClick):
739         (WebCore::Frame::handleMouseMoveEvent):
740         (WebCore::Frame::handleMouseReleaseEvent):
741         * page/FrameView.cpp:
742         (WebCore::FrameView::handleMousePressEvent):
743         (WebCore::selectCursor):
744         (WebCore::FrameView::dispatchDragEvent):
745         (WebCore::FrameView::prepareMouseEvent):
746         (WebCore::FrameView::handleWheelEvent):
747         * platform/ScrollView.h:
748         * platform/Widget.cpp:
749         (WebCore::Widget::convertToContainingWindow):
750         * platform/Widget.h:
751         * platform/mac/ScrollViewMac.mm:
752         (WebCore::ScrollView::convertToContainingWindow):
753         (WebCore::ScrollView::convertFromContainingWindow):
754         * platform/mac/WidgetMac.mm:
755         (WebCore::Widget::convertToContainingWindow):
756         (WebCore::Widget::convertFromContainingWindow):
757         * platform/win/ScrollViewWin.cpp:
758         (WebCore::ScrollView::convertToContainingWindow):
759         (WebCore::ScrollView::convertFromContainingWindow):
760         * rendering/RenderLayer.cpp:
761         (WebCore::RenderLayer::resize):
762
763 2006-09-28  Alice Liu  <alice.liu@apple.com>
764
765         Build fix by adding missing files for CommandByName
766
767         * WebCore.xcodeproj/project.pbxproj:
768
769 2006-09-28  Alice Liu  <alice.liu@apple.com>
770
771         Adding CommandByName files to the vcproj
772
773         * WebCore.vcproj/WebCore/WebCore.vcproj:
774
775 2006-09-28  Alice Liu  <alice.liu@apple.com>
776
777         Reviewed by Adam Roben.
778
779         This patch adds a command class that is attached to the frame so the frame can more easily execute commands such as copy, paste, select, etc. 
780         This patch also exposes some UBRK-related utilities so that they can be used elsewhere.
781         This patch also changes windows PlatformMouseEvent so that we can detect multiple-click mouse events
782
783         * editing/CommandByName.cpp: Added.
784         Added a command class that hangs off the frame so the frame can call commands more easily.  
785         (WebCore::Frame::commandImp):
786         (WebCore::Frame::execCopy):
787         (WebCore::Frame::execCut):
788         (WebCore::Frame::execDelete):
789         (WebCore::Frame::execForwardDelete):
790         (WebCore::Frame::execPaste):
791         (WebCore::Frame::execMoveLeft):
792         (WebCore::Frame::execMoveRight):
793         (WebCore::Frame::execMoveUp):
794         (WebCore::Frame::execMoveDown):
795         (WebCore::Frame::execSelectAll):
796         (WebCore::Frame::execSelectLeft):
797         (WebCore::Frame::execSelectRight):
798         (WebCore::Frame::execSelectUp):
799         (WebCore::Frame::execSelectDown):
800         (WebCore::Frame::enabled):
801         (WebCore::Frame::enabledAnySelection):
802         (WebCore::Frame::enabledAnyEditableSelection):
803         (WebCore::Frame::enabledPaste):
804         (WebCore::Frame::enabledAnyRangeSelection):
805         (WebCore::Frame::enabledAnyEditableRangeSelection):
806         (WebCore::Frame::createCommandDictionary):
807         (WebCore::Frame::Command::):
808         (WebCore:::m_frame):
809         (WebCore::CommandByName::execCommand):
810         * editing/CommandByName.h: Added.
811         * page/Frame.cpp:
812         Added implementation of accessor for CommandByName member
813         (WebCore::Frame::command):
814         * page/Frame.h:
815         Added accessor for CommandByName member
816         * page/FramePrivate.h:
817         Added a CommandByName member
818         (WebCore::FramePrivate::FramePrivate):
819         * platform/PlatformMouseEvent.h:
820         Changed constructor prototype
821         * platform/StringImpl.cpp:
822         Exposing getWordBreakIterator to be used elsewhere
823         (WebCore::getWordBreakIterator):
824         * platform/StringImpl.h:
825         Exposing getWordBreakIterator to be used elsewhere
826         * platform/win/MouseEventWin.cpp:
827         Changed the PlatformMouseEvent on windows so that we "roll our own" multi-click mouse events instead of relying on the system to tell us, enabling us to detect triple-clicks
828         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
829
830 2006-09-28  Adam Roben  <aroben@apple.com>
831
832         Reviewed by Adele.
833
834         Remove no-longer-used PopUpButton.
835
836         * WebCore.vcproj/WebCore/WebCore.vcproj: Remove PopUpButton.h
837         * WebCore.xcodeproj/project.pbxproj: Remove PopUpButton.h,
838         PopUpButtonMac.mm
839         * platform/PopUpButton.h: Removed.
840         * platform/mac/PopUpButtonMac.mm: Removed.
841         * platform/win/TemporaryLinkStubs.cpp: Remove PopUpButton:: methods
842         * rendering/DeprecatedRenderSelect.cpp: Change #include of
843         PopUpButton.h to ListBox.h
844
845 2006-09-28  Darin Adler  <darin@apple.com>
846
847         Reviewed by Alice.
848
849         - change that should fix <rdar://problem/4733044> REGRESSION: XML iBench shows
850           10% perf. regression (copying strings while decoding)
851
852         Use Vector<UChar> instead of String when building up the decoded string in
853         the ICU and Mac decoders. Using String leads to O(n^2) behavior because
854         String grows the buffer every single time that append is called. Using
855         Vector::append instead of String::append also avoids constructing a string
856         each time just to append and a questionable copy that is done inside the
857         String::append function which also contributed to the slowness.
858
859         * platform/PlatformString.h:
860         * platform/String.cpp: (WebCore::String::adopt): Added. Makes a String from a
861         Vector<UChar>, adopting the buffer from the vector to avoid copying and memory
862         allocation.
863         * platform/StringImpl.h:
864         * platform/StringImpl.cpp: (WebCore::StringImpl::adopt): Ditto.
865
866         * platform/StreamingTextDecoder.h:
867         * platform/StreamingTextDecoder.cpp: (WebCore::TextCodec::appendOmittingBOM):
868         Change to use a Vector<UChar> instead of a String, since vectors have better
869         resizing performance (they store a separate capacity).
870
871         * platform/StreamingTextDecoderICU.cpp: (WebCore::TextCodecICU::decode):
872         * platform/mac/StreamingTextDecoderMac.cpp: (WebCore::TextCodecMac::decode):
873         Change to use Vector<UChar> instead of String and then create a string at
874         the end of the process using the new adopt function.
875
876 2006-09-28  Sam Weinig  <sam.weinig@gmail.com>
877
878         Reviewed by Tim H.
879
880         Patch for http://bugs.webkit.org/show_bug.cgi?id=11057
881         Auto-generate more SVG Objective-C bindings
882
883         - Auto-generates DOMSVGAnimatedAngle, DOMSVGAnimatedBoolean, 
884           DOMSVGAnimatedEnumeration, DOMSVGAnimatedInteger, DOMSVGAnimatedLength,
885           DOMSVGAnimatedLengthList, DOMSVGAnimatedNumber, DOMSVGAnimatedString,
886           DOMSVGAnimatedTransformList, DOMSVGExternalResourcesRequired,
887           DOMSVGLangSpace, DOMSVGLocatable, DOMSVGMetadataElement, DOMSVGRectElement,
888           DOMSVGStringList, DOMSVGStylable, DOMSVGStyleElement, DOMSVGTests, 
889           and DOMSVGTransformable.
890
891         - Adds ability to CodeGeneratorObjC.pm to handle interfaces with mulitple
892           parent interfaces and the SVG animated classes.
893
894         - Corrects CodeGenerator.pm to only skip the first parent for the main 
895           interface.
896
897         * DerivedSources.make:
898         * WebCore.xcodeproj/project.pbxproj:
899         * bindings/objc/DOMInternal.h:
900         * bindings/objc/DOMSVG.h:
901         * bindings/scripts/CodeGenerator.pm:
902         * bindings/scripts/CodeGeneratorObjC.pm:
903         * ksvg2/svg/SVGAnimatedAngle.idl:
904         * ksvg2/svg/SVGAnimatedBoolean.idl:
905         * ksvg2/svg/SVGAnimatedEnumeration.idl:
906         * ksvg2/svg/SVGAnimatedInteger.idl:
907         * ksvg2/svg/SVGAnimatedLength.idl:
908         * ksvg2/svg/SVGAnimatedLengthList.idl:
909         * ksvg2/svg/SVGAnimatedNumber.idl:
910         * ksvg2/svg/SVGAnimatedPathData.idl:
911         * ksvg2/svg/SVGAnimatedString.idl:
912         * ksvg2/svg/SVGAnimatedTransformList.idl:
913         * ksvg2/svg/SVGExternalResourcesRequired.idl:
914         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.idl:
915         * ksvg2/svg/SVGFitToViewBox.idl:
916         * ksvg2/svg/SVGLangSpace.idl:
917         * ksvg2/svg/SVGLocatable.idl:
918         * ksvg2/svg/SVGMetadataElement.idl:
919         * ksvg2/svg/SVGStringList.idl:
920         * ksvg2/svg/SVGStylable.idl:
921         * ksvg2/svg/SVGStyleElement.idl:
922         * ksvg2/svg/SVGTests.idl:
923         * ksvg2/svg/SVGTransformable.idl:
924         * ksvg2/svg/SVGURIReference.idl:
925         * ksvg2/svg/SVGUnitTypes.idl:
926         * ksvg2/svg/SVGZoomAndPan.idl:
927
928 2006-09-28  Brady Eidson  <beidson@apple.com>
929
930         Reviewed by Mitz Pettel!!!
931
932         Change the error code check for common functions from SQLResultOk to SQLResultDone 
933
934         * loader/icon/IconDatabase.cpp:
935         (WebCore::IconDatabase::forgetPageURLQuery):
936         (WebCore::IconDatabase::setIconIDForPageURLQuery):
937         (WebCore::IconDatabase::addIconForIconURLQuery):
938
939 2006-09-28  Dave Hyatt  <hyatt@apple.com>
940
941         Just eliminate MapWindowPoints usage and use the HWND as
942         the viewport.
943
944         * platform/win/MouseEventWin.cpp:
945         (WebCore::positionForEvent):
946         * platform/win/ScrollViewWin.cpp:
947         (WebCore::ScrollView::viewportToContents):
948         (WebCore::ScrollView::contentsToViewport):
949
950 2006-09-27  David Hyatt  <hyatt@apple.com>
951
952         Fix for bug 9222, cursor is wrong when mousing over overflow scrollbars in textareas.  Make sure
953         selectCursor checks for whether or not a scrollbar was hit.  Also stub out a mouseMoved method for
954         scrollbars to provide hover feedback if needed.
955
956         Reviewed by Eric
957
958         * page/FrameView.cpp:
959         (WebCore::selectCursor):
960         (WebCore::FrameView::handleMouseMoveEvent):
961         * platform/ScrollBar.h:
962         (WebCore::ScrollBar::mouseMoved):
963
964 2006-09-27  MorganL  <morganl.webkit@yahoo.com>
965
966         Reviewed by Maciej and Adam, landed by Adam
967
968         Fixes: http://bugs.webkit.org/show_bug.cgi?id=11072
969         Windows build is busted
970
971         * platform/win/TemporaryLinkStubs.cpp:
972         (ScrollView::paint):
973         (ScrollView::themeChanged):
974
975 2006-09-27  Eric Seidel  <eric@eseidel.com>
976
977         Reviewed by mitz.
978
979         paths with no fill specified default to black but do not recieve paint-related mouse events
980         http://bugs.webkit.org/show_bug.cgi?id=11069
981         The default fill was being applied at the wrong place in the rendering chain, causing this problem.
982
983         Test: svg/custom/hover-default-fill.svg
984
985         * kcanvas/RenderPath.cpp:
986         (WebCore::RenderPath::nodeAtPoint): use isFilled and isStroked
987         * ksvg2/css/SVGRenderStyle.h: use defaultFill() and defaultStroke()
988         * ksvg2/misc/KCanvasRenderingStyle.cpp:
989         (WebCore::KSVGPainterFactory::isFilled): remove null check
990         (WebCore::KSVGPainterFactory::fillPaintServer): remove null check
991         (WebCore::KSVGPainterFactory::isStroked): remove null check
992         (WebCore::KSVGPainterFactory::strokePaintServer): remove null check
993         * ksvg2/svg/SVGPaint.cpp:
994         (WebCore::SVGPaint::defaultFill): added.
995         (WebCore::SVGPaint::defaultStroke): added.
996         * ksvg2/svg/SVGPaint.h:
997
998 2006-09-27  Rob Buis  <buis@kde.org>
999
1000         Reviewed by eseidel.
1001
1002         http://bugs.webkit.org/show_bug.cgi?id=11015
1003         SVG handles em units incorrectly
1004
1005         Calculate viewport coordinates at layout time, since
1006         at this point the font size is known and lengths depending
1007         on font sizes can be calculated correctly.
1008
1009         * kcanvas/RenderSVGContainer.cpp:
1010         (WebCore::RenderSVGContainer::layout):
1011         (WebCore::RenderSVGContainer::viewport):
1012         (WebCore::RenderSVGContainer::calcViewport):
1013         * kcanvas/RenderSVGContainer.h:
1014         * ksvg2/svg/SVGLength.cpp:
1015         (WebCore::SVGLength::updateValue):
1016         * ksvg2/svg/SVGMarkerElement.cpp:
1017         (WebCore::SVGMarkerElement::createRenderer):
1018         * ksvg2/svg/SVGSVGElement.cpp:
1019         (WebCore::SVGSVGElement::createRenderer):
1020         (WebCore::SVGSVGElement::attributeChanged):
1021         * ksvg2/svg/SVGSVGElement.h:
1022
1023 2006-09-27  Eric Seidel  <eric@eseidel.com>
1024
1025         Reviewed by darin.
1026
1027         Change our invalid-fill error behavior to match Opera (and soon Firefox)
1028         http://bugs.webkit.org/show_bug.cgi?id=11017
1029
1030         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1031         (WebCore::KSVGPainterFactory::isFilled):
1032         (WebCore::KSVGPainterFactory::fillPaintServer):
1033         (WebCore::KSVGPainterFactory::isStroked):
1034         (WebCore::KSVGPainterFactory::strokePaintServer):
1035
1036 2006-09-27  Brady Eidson  <beidson@apple.com>
1037
1038         Build fix
1039
1040         * loader/icon/IconDatabase.cpp:
1041         (WebCore::readySQLStatement):
1042
1043 2006-09-27  Brady Eidson  <beidson@apple.com>
1044
1045         Reviewed by Adam
1046
1047         In very specific circumstances, prepared SQLStatements can become invalid without
1048         any warning.  This checks for that state and re-prepares the statement and also
1049         adds more aggressive error-checking everywhere these statements are used.
1050
1051         * loader/icon/IconDatabase.cpp:
1052         (WebCore::readySQLStatement): Check if the statement is expired - reprepare it
1053         (WebCore::IconDatabase::imageDataForIconURLQuery): More thoroughly catch error cases
1054         (WebCore::IconDatabase::timeStampForIconURLQuery): Ditto
1055         (WebCore::IconDatabase::iconURLForPageURLQuery): Ditto
1056         (WebCore::IconDatabase::forgetPageURLQuery): Ditto
1057         (WebCore::IconDatabase::setIconIDForPageURLQuery): Ditto
1058         (WebCore::IconDatabase::getIconIDForIconURLQuery): Ditto
1059         (WebCore::IconDatabase::addIconForIconURLQuery): Ditto
1060         (WebCore::IconDatabase::hasIconForIconURLQuery): Ditto
1061         * loader/icon/SQLStatement.cpp:
1062         (WebCore::SQLStatement::isExpired): Added (accessor to sqlite3_expired())
1063         * loader/icon/SQLStatement.h:
1064
1065 2006-09-26  Darin Adler  <darin@apple.com>
1066
1067         Reviewed by Steve.
1068
1069         - clean up options for font code path
1070
1071         * platform/Font.h:
1072         * platform/Font.cpp:
1073         (WebCore::Font::setCodePath): Added. Replaces boolean version.
1074         (WebCore::Font::canUseGlyphCache): Update to handle "never use complex" case too.
1075
1076         * platform/mac/WebCoreTextRenderer.mm:
1077         (WebCoreSetAlwaysUseATSU): Change to call setCodePath.
1078
1079 2006-09-26  John Sullivan  <sullivan@apple.com>
1080
1081         Reviewed by Darin
1082
1083         * bridge/mac/WebCoreFrameBridge.h:
1084         * bridge/mac/WebCoreFrameBridge.mm:
1085         (-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:limit:]):
1086         Added limit parameter, passed down to Frame
1087         
1088         * page/Frame.h:
1089         * page/Frame.cpp:
1090         (WebCore::Frame::markAllMatchesForText):
1091         Added limit parameter. Stop the search if it hits limit.
1092
1093 2006-09-26  Sean Gies  <seangies@apple.com>
1094
1095         Reviewed by Brady Eidson.
1096
1097         * platform/cg/ImageCG.cpp: Removed #if's -- Darin said we don't need these.
1098
1099 2006-09-26  Justin Garcia  <justin.garcia@apple.com>
1100
1101         Reviewed by john
1102         
1103         <rdar://problem/4747695> 
1104         Gmail Editor: Crash at WebCore::Range::startPosition() when decreasing a indent
1105         
1106         * editing/DeleteSelectionCommand.cpp:
1107         (WebCore::DeleteSelectionCommand::initializeStartEnd): Stop expanding
1108         to select special elements that are fully selected after expansion
1109         moves to positions that are visually distinct from the originals.
1110         * editing/InsertListCommand.cpp:
1111         (WebCore::InsertListCommand::doApply): If the content of the list 
1112         item will be moved into another list, put it in a list item.
1113
1114 2006-09-26  Geoffrey Garen <ggaren@apple.com>
1115
1116         Reviewed by Darin.
1117         
1118         Temporary work-around for frame lifetime issue.
1119
1120         * page/Frame.cpp:
1121         (WebCore::Frame::clear):
1122         (WebCore::Frame::disconnectOwnerElement):
1123
1124 2006-09-26  Sam Weinig  <sam.weinig@gmail.com>
1125
1126         Reviewed by Tim H.
1127
1128         Patch for http://bugs.webkit.org/show_bug.cgi?id=11038
1129         Auto-generate DOMSVGElement for the Objective-C bindings
1130
1131         - Auto-generates DOMSVGElement.
1132
1133         - Make SVGExceptions work like all the other ExceptionCode
1134           extensions (Range, XPath, etc.) by adding SVGExceptionOffset
1135           and SVGExceptionMax.
1136
1137         * DerivedSources.make:
1138         * WebCore.xcodeproj/project.pbxproj:
1139         * bindings/js/kjs_binding.cpp:
1140         (KJS::):
1141         (KJS::setDOMException):
1142         * bindings/objc/DOMInternal.h:
1143         * bindings/objc/DOMInternal.mm:
1144         (raiseDOMException):
1145         * bindings/objc/DOMSVG.h:
1146         * bindings/objc/DOMSVGExecption.h: Added.
1147         * ksvg2/ksvg.h:
1148         * ksvg2/svg/SVGElement.cpp:
1149         (WebCore::SVGElement::setId):
1150         (WebCore::SVGElement::setXmlbase):
1151         * ksvg2/svg/SVGElement.h:
1152         * ksvg2/svg/SVGElement.idl:
1153         * ksvg2/svg/SVGException.h: Added.
1154         (WebCore::):
1155
1156 2006-09-26  Eric Seidel  <eric@eseidel.com>
1157
1158         Reviewed by Tim H.
1159         
1160         viewbox parser does not allow <tab> as a delimiter
1161         http://bugs.webkit.org/show_bug.cgi?id=11014
1162
1163         Test: svg/hixie/viewbox/003.xml
1164
1165         * ksvg2/svg/svgpathparser.cpp:
1166         (WebCore::isWhitespace): new function
1167         (WebCore::skipOptionalSpaces):
1168         (WebCore::skipOptionalSpacesOrComma):
1169
1170 2006-09-26  Eric Seidel  <eric@eseidel.com>
1171
1172         Reviewed by Tim H.
1173
1174         SVGDocument::createElement does not create elements in the SVG namespace
1175         http://bugs.webkit.org/show_bug.cgi?id=10932
1176         
1177         Test: svg/custom/createelement.svg
1178
1179         * ksvg2/svg/SVGDocument.cpp:
1180         (WebCore::SVGDocument::createElement):
1181         * ksvg2/svg/SVGDocument.h:
1182
1183 2006-09-26  Eric Seidel  <eric@eseidel.com>
1184
1185         Reviewed by Tim H.
1186         
1187         RenderPath::nodeAtPoint does not respect stroke width
1188         http://bugs.webkit.org/show_bug.cgi?id=10829
1189
1190         Test: svg/custom/stroke-width-click.svg
1191
1192         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1193         (WebCore::RenderPath::strokeContains):
1194         * kcanvas/device/quartz/QuartzSupport.h:
1195         * kcanvas/device/quartz/QuartzSupport.mm:
1196
1197 2006-09-26  Eric Seidel  <eric@eseidel.com>
1198
1199         Reviewed by mitz.
1200
1201         Bring animation back to life
1202         http://bugs.webkit.org/show_bug.cgi?id=11021
1203         
1204         Register/unregister SVGSVGElements as time containers on insertion/removal.
1205         Replace uses of DeprecatedString with String in SVGAnimationElement
1206         Various whitespace clean-up.
1207
1208         * ksvg2/misc/KSVGTimeScheduler.cpp:
1209         (WebCore::SVGTimer::notifyAll):
1210         * ksvg2/misc/SVGDocumentExtensions.cpp:
1211         (WebCore::SVGDocumentExtensions::startAnimations):
1212         (WebCore::SVGDocumentExtensions::pauseAnimations):
1213         (WebCore::SVGDocumentExtensions::unpauseAnimations):
1214         * ksvg2/svg/SVGAnimateTransformElement.cpp:
1215         (WebCore::SVGAnimateTransformElement::handleTimerEvent):
1216         (WebCore::SVGAnimateTransformElement::parseTransformValue):
1217         * ksvg2/svg/SVGAnimateTransformElement.h:
1218         * ksvg2/svg/SVGAnimationElement.cpp:
1219         (WebCore::SVGAnimationElement::SVGAnimationElement):
1220         (WebCore::SVGAnimationElement::parseMappedAttribute):
1221         (WebCore::SVGAnimationElement::parseClockValue):
1222         (WebCore::SVGAnimationElement::targetAttribute):
1223         (WebCore::SVGAnimationElement::setTargetAttribute):
1224         (WebCore::SVGAnimationElement::attributeName):
1225         * ksvg2/svg/SVGAnimationElement.h:
1226         (WebCore::SVGAnimationElement::rendererIsNeeded):
1227         * ksvg2/svg/SVGSVGElement.cpp:
1228         (WebCore::SVGSVGElement::getScreenCTM):
1229         (WebCore::SVGSVGElement::createRenderer):
1230         (WebCore::SVGSVGElement::insertedIntoDocument): added, calls addTimeContainer(this)
1231         (WebCore::SVGSVGElement::removedFromDocument): added, calls removeTimeContainer(this)
1232         * ksvg2/svg/SVGSVGElement.h:
1233         * ksvg2/svg/SVGSetElement.cpp:
1234         (WebCore::SVGSetElement::handleTimerEvent):
1235         * ksvg2/svg/SVGURIReference.cpp:
1236         (WebCore::SVGURIReference::getTarget):
1237         * ksvg2/svg/SVGURIReference.h:
1238
1239 2006-09-26  Graham Dennis  <graham.dennis@gmail.com>
1240
1241         Reviewed by mitzpettel.
1242
1243         - fix http://bugs.webkit.org/show_bug.cgi?id=11020
1244         No-SVG build broken since r16549
1245         
1246         Change #if SVG_SUPPORT to #ifdef SVG_SUPPORT
1247
1248         * css/cssparser.cpp:
1249         (WebCore::CSSParser::parseValue):
1250         * css/cssstyleselector.cpp:
1251         (WebCore::CSSStyleSelector::applyProperty):
1252         * page/FrameView.cpp:
1253         (WebCore::selectCursor):
1254         * platform/qt/GraphicsContextQt.cpp:
1255
1256 2006-09-26  Anders Carlsson  <acarlsson@apple.com>
1257
1258         Reviewed by Maciej.
1259
1260         http://bugs.webkit.org/show_bug.cgi?id=10820
1261         Add StringImpl::toDouble() and remove uses of .deprecatedString().toDouble()
1262         
1263         (Originally written by Eric Seidel).
1264         
1265         * bindings/js/kjs_window.cpp:
1266         (KJS::floatFeature):
1267         * ksvg2/svg/SVGAngle.cpp:
1268         (SVGAngle::setValueAsString):
1269         * ksvg2/svg/SVGAnimationElement.cpp:
1270         (SVGAnimationElement::parseMappedAttribute):
1271         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1272         (SVGComponentTransferFunctionElement::parseMappedAttribute):
1273         * ksvg2/svg/SVGFECompositeElement.cpp:
1274         (WebCore::SVGFECompositeElement::parseMappedAttribute):
1275         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1276         (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
1277         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1278         (SVGFEDisplacementMapElement::parseMappedAttribute):
1279         * ksvg2/svg/SVGFELightElement.cpp:
1280         (SVGFELightElement::parseMappedAttribute):
1281         * ksvg2/svg/SVGFEOffsetElement.cpp:
1282         (WebCore::SVGFEOffsetElement::parseMappedAttribute):
1283         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1284         (SVGFESpecularLightingElement::parseMappedAttribute):
1285         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1286         (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
1287         * ksvg2/svg/SVGStopElement.cpp:
1288         (SVGStopElement::parseMappedAttribute):
1289         * platform/AtomicString.h:
1290         (WebCore::AtomicString::toDouble):
1291         * platform/PlatformString.h:
1292         * platform/String.cpp:
1293         (WebCore::String::toDouble):
1294         * platform/StringImpl.cpp:
1295         (WebCore::StringImpl::toDouble):
1296         * platform/StringImpl.h:
1297         * rendering/DeprecatedSlider.cpp:
1298         (WebCore::DeprecatedSlider::updateFromElement):
1299         * xml/XPathGrammar.y:
1300
1301 2006-09-25  David Harrison  <harrison@apple.com>
1302
1303         Reviewed by Tim Omernick and Tim Hatcher.
1304
1305         <rdar://problem/4717965> Text Field text parameterized attributes should work
1306         <rdar://problem/4712111> Support NSAccessibilityInsertionPointLineNumberAttribute for AXTextArea elements
1307
1308         * bridge/mac/WebCoreAXObject.mm:
1309         (-[WebCoreAXObject accessibilityAttributeValue:]):
1310         Use new line number support to implement NSAccessibilityInsertionPointLineNumberAttribute.
1311         
1312         (-[WebCoreAXObject accessibilityParameterizedAttributeNames]):
1313         Cleaned up. Added text field and text area parameterzed attributes.
1314         
1315         (-[WebCoreAXObject doAXLineForTextMarker:]):
1316         Fixed to be zero-based and to deal with the first position properly.
1317         
1318         (-[WebCoreAXObject doAXTextMarkerRangeForLine:]):
1319         Minor formatting.
1320         
1321         (-[WebCoreAXObject textMarkerForIndex:lastIndexOK:]):
1322         (-[WebCoreAXObject indexForTextMarker:]):
1323         (-[WebCoreAXObject textMarkerRangeForRange:]):
1324         (-[WebCoreAXObject rangeForTextMarkerRange:]):
1325         New utility methods.
1326         
1327         (-[WebCoreAXObject doAXLineForIndex:]):
1328         (-[WebCoreAXObject doAXRangeForLine:]):
1329         (-[WebCoreAXObject doAXStringForRange:]):
1330         (-[WebCoreAXObject doAXRangeForPosition:]):
1331         (-[WebCoreAXObject doAXRangeForIndex:]):
1332         (-[WebCoreAXObject doAXBoundsForRange:]):
1333         (-[WebCoreAXObject doAXAttributedStringForRange:]):
1334         (-[WebCoreAXObject doAXRTFForRange:]):
1335         (-[WebCoreAXObject doAXStyleRangeForIndex:]):
1336         Implement text field and text area parameterized attributes.
1337          
1338         (-[WebCoreAXObject accessibilityAttributeValue:forParameter:]):
1339         Added text field and text area parameterzed attributes.
1340
1341         * rendering/RenderTextControl.h:
1342         Made indexForVisiblePosition() and visiblePositionForIndex() public.
1343
1344 2006-09-25  Adam Roben  <aroben@apple.com>
1345
1346         Reviewed by Brady.
1347
1348         Build fixes.
1349
1350         * WebCore.vcproj/WebCore/WebCore.vcproj: Fix malformed XML.
1351         * platform/ResourceLoader.h: Store whether a particular job
1352         has received a response within the ResourceLoader object itself, since
1353         it's possible that we will enter the InternetReadFileExA while loop
1354         twice for the same job.
1355         * platform/ResourceLoaderInternal.h: Add private instance variable to
1356         store whether we've received a response.
1357         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
1358         * platform/win/GraphicsContextWin.cpp: Fix order of preprocessor
1359         directives.
1360         * platform/win/ResourceLoaderWin.cpp: 
1361         (WebCore::ResourceLoader::onRequestComplete): Ask the ResourceLoader
1362         whether it has received a response instead of assuming it hasn't.
1363         (WebCore::ResourceLoader::setHasReceivedResponse): Added.
1364         (WebCore::ResourceLoader::hasReceivedResponse): Added.
1365         * platform/win/TemporaryLinkStubs.cpp: Rename setKnobProportion to
1366         setProportion
1367         (ScrollBar::setProportion):
1368
1369 2006-09-25  Brady Eidson  <beidson@apple.com>
1370
1371         Requested by ggaren
1372
1373         Disabled IconDatabase logging by default
1374
1375         * platform/Logging.cpp:
1376         (WebCore::):
1377
1378 2006-09-25  Steve Falkenburg  <sfalken@apple.com>
1379
1380         Build fix
1381
1382         * platform/cf/ResourceLoaderCFNet.cpp:
1383         (WebCore::willCacheResponse):
1384
1385 2006-09-25  Justin Garcia  <justin.garcia@apple.com>
1386
1387         Reviewed by john
1388         
1389         <http://bugs.webkit.org/show_bug.cgi?id=11002>
1390         Gmail Editor: Crash at WebCore::SplitElementCommand::doApply() when attempting to indent in a new message
1391         
1392         * editing/IndentOutdentCommand.cpp:
1393         (WebCore::IndentOutdentCommand::indentRegion): Special case
1394         an empty root editable element.
1395
1396 2006-09-25  Brady Eidson  <beidson@apple.com>
1397
1398         Reviewed by Steve
1399
1400         Math error in SystemTimeWin
1401
1402         * platform/win/SystemTimeWin.cpp:
1403         (WebCore::currentTime):
1404
1405 2006-09-25  Alexey Proskuryakov  <ap@nypop.com>
1406
1407         Reviewed by Eric.
1408
1409         Whitespace cleanup; rename *job variables to *loader.
1410
1411         * bindings/js/JSXMLHttpRequest.cpp:
1412         (KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
1413         (KJS::JSXMLHttpRequestConstructorImp::implementsConstruct):
1414         (KJS::JSXMLHttpRequestConstructorImp::construct):
1415         (KJS::JSXMLHttpRequest::getOwnPropertySlot):
1416         (KJS::JSXMLHttpRequest::getValueProperty):
1417         (KJS::JSXMLHttpRequest::put):
1418         (KJS::JSXMLHttpRequest::putValueProperty):
1419         (KJS::JSXMLHttpRequest::mark):
1420         (KJS::JSXMLHttpRequest::JSXMLHttpRequest):
1421         (KJS::JSXMLHttpRequest::~JSXMLHttpRequest):
1422         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction):
1423         * bindings/js/JSXMLHttpRequest.h:
1424         (KJS::JSXMLHttpRequest::toBoolean):
1425         * xml/xmlhttprequest.cpp:
1426         (WebCore::XMLHttpRequest::XMLHttpRequest):
1427         (WebCore::XMLHttpRequest::urlMatchesDocumentDomain):
1428         (WebCore::XMLHttpRequest::send):
1429         (WebCore::XMLHttpRequest::abort):
1430         (WebCore::XMLHttpRequest::receivedAllData):
1431         (WebCore::XMLHttpRequest::receivedData):
1432         * xml/xmlhttprequest.h:
1433         (WebCore::):
1434
1435 2006-09-25  Timothy Hatcher  <timothy@apple.com>
1436
1437         Reviewed by Brady.
1438
1439         - Deprecate the rest of the old-style methods that are not generated.
1440         - Add @property syntax to DOMRange.
1441
1442         * WebCore.xcodeproj/project.pbxproj:
1443         * bindings/objc/DOM.mm:
1444         (-[DOMRange setStart:offset:]):
1445         (-[DOMRange setEnd:offset:]):
1446         (-[DOMRange compareBoundaryPoints:sourceRange:]):
1447         (-[DOMRange setStart::]):
1448         (-[DOMRange setEnd::]):
1449         (-[DOMRange compareBoundaryPoints::]):
1450         (-[DOMDocument createNodeIterator:whatToShow:filter:expandEntityReferences:]):
1451         (-[DOMDocument createTreeWalker:whatToShow:filter:expandEntityReferences:]):
1452         (-[DOMDocument createNodeIterator::::]):
1453         (-[DOMDocument createTreeWalker::::]):
1454         * bindings/objc/DOMCSS.h:
1455         * bindings/objc/DOMCSS.mm:
1456         (-[DOMDocument getComputedStyle:pseudoElement:]):
1457         (-[DOMDocument getComputedStyle::]):
1458         (-[DOMDocument getMatchedCSSRules:pseudoElement:]):
1459         * bindings/objc/DOMExtensions.h:
1460         * bindings/objc/DOMHTML.h:
1461         * bindings/objc/DOMRange.h:
1462         * bindings/objc/DOMTraversal.h:
1463
1464 2006-09-25  Eric Seidel  <eric@eseidel.com>
1465
1466         Reviewed by mjs.
1467         
1468         Outermost <svg> element should clip to viewport
1469         http://bugs.webkit.org/show_bug.cgi?id=11007
1470
1471         Test: svg/custom/viewport-clip.svg
1472
1473         * css/svg.css: change svg:root overflow: from 'visible' to 'hidden'
1474
1475 2006-09-25  Anders Carlsson  <acarlsson@apple.com>
1476
1477         Reviewed by Maciej.
1478
1479         * css/MediaList.cpp:
1480         Remove unused header.
1481         
1482         * dom/Document.cpp:
1483         (WebCore::Document::clear):
1484         Use clear instead of iterating through the list of event listeners, removing each one.
1485         (Doing that causes a crash when running the layout tests with GuardMalloc turned on)
1486         
1487         * html/HTMLKeygenElement.cpp:
1488         (WebCore::HTMLKeygenElement::HTMLKeygenElement):
1489         (WebCore::HTMLKeygenElement::appendFormData):
1490         Update due to changes in the SSL key generator.
1491         
1492         * ksvg2/svg/SVGAngle.cpp:
1493         Remove unused header.
1494         
1495         * ksvg2/svg/SVGAnimationElement.cpp:
1496         (SVGAnimationElement::parseMappedAttribute):
1497         Rename methods and pass Strings instead of DeprecatedStrings to
1498         parseSeparatedList.
1499         
1500         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1501         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1502         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1503         * ksvg2/svg/SVGFEMergeElement.cpp:
1504         * ksvg2/svg/SVGFEOffsetElement.cpp:
1505         Remove unused headers.
1506         
1507         * ksvg2/svg/SVGHelper.cpp:
1508         (WebCore::SVGHelper::parseSeparatedList):
1509         * ksvg2/svg/SVGHelper.h:
1510         Rename ParseSeperatedList to parseSeparatedList, make it take a String instead of a 
1511         DeprecatedString and have it use Vector<String> instead of DeprecatedStringList.
1512         
1513         * ksvg2/svg/SVGLengthList.cpp:
1514         (WebCore::SVGLengthList::parse):
1515         * ksvg2/svg/SVGLengthList.h:
1516         Use Vector<String> instead of DeprecatedStringList.
1517         
1518         * loader/Cache.cpp:
1519         (WebCore::Cache::requestImage):
1520         (WebCore::Cache::requestStyleSheet):
1521         (WebCore::Cache::requestScript):
1522         (WebCore::Cache::requestXSLStyleSheet):
1523         (WebCore::Cache::requestXBLDocument):
1524         (WebCore::Cache::remove):
1525         (WebCore::Cache::get):
1526         Use a String as the key in the cache set instead of a RefPtr<StringImpl>.
1527         
1528         * loader/DocLoader.cpp:
1529         (WebCore::DocLoader::needReload):
1530         * loader/DocLoader.h:
1531         Use a HashSet instead of DeprecatedStringList.
1532         
1533         * page/FrameView.h:
1534         Remove declarations that have no functions.
1535         
1536         * platform/SSLKeyGenerator.h:
1537         * platform/mac/SSLKeyGeneratorMac.mm:
1538         (WebCore::supportedKeySizes):
1539         (WebCore::signedPublicKeyAndChallengeString):
1540         Convert to use Vector<String> instead of DeprecatedStringList, and String instead of
1541         DeprecatedString.
1542
1543 2006-09-25  Dave Hyatt  <hyatt@apple.com>
1544
1545         Shunt the RenderTheme world transform adoption between
1546         Cairo and Windows into getWindowsContext and move the method
1547         out of GraphicsContextCairo and into GraphicsContextWin.
1548
1549         * ChangeLog:
1550         * WebCore.vcproj/WebCore/WebCore.vcproj:
1551         * platform/cairo/GraphicsContextCairo.cpp:
1552         * platform/win/GraphicsContextWin.cpp: Added.
1553         (WebCore::GraphicsContext::getWindowsContext):
1554         (WebCore::GraphicsContext::releaseWindowsContext):
1555         * rendering/RenderThemeWin.cpp:
1556         (WebCore::prepareForDrawing):
1557
1558 2006-09-24  Eric Seidel  <eric@eseidel.com>
1559
1560         Reviewed by hyatt.
1561
1562         <svg:a> cannot be styled with a:hover
1563         http://bugs.webkit.org/show_bug.cgi?id=11005
1564         
1565         Test: svg/hixie/cascade/002.xml
1566
1567         * css/cssstyleselector.cpp:
1568         (WebCore::checkPseudoState):
1569
1570 2006-09-24  Sam Weinig  <sam.weinig@gmail.com>
1571
1572         Reviewed by Tim H.
1573
1574         Patch for http://bugs.webkit.org/show_bug.cgi?id=10882
1575         SVG needs Obj-C DOM bindings
1576
1577         - Auto-generate the first 8 Objective-C SVG DOM bindings.  The 
1578           auto-generated classes are DOMSVGAngle, DOMSVGLength, DOMSVGLengthList,
1579           DOMSVGMatrix, DOMSVGPathSeg, DOMSVGPathSegList, DOMSVGTransform, and 
1580           DOMSVGTransformList.
1581
1582         * DerivedSources.make:
1583         * WebCore.xcodeproj/project.pbxproj:
1584         * bindings/objc/DOMInternal.h:
1585         * bindings/objc/DOMSVG.h: Added.
1586         * ksvg2/svg/SVGAngle.idl:
1587         * ksvg2/svg/SVGLength.idl:
1588         * ksvg2/svg/SVGLengthList.idl:
1589         * ksvg2/svg/SVGMatrix.idl:
1590         * ksvg2/svg/SVGPathSeg.idl:
1591         * ksvg2/svg/SVGPathSegList.idl:
1592         * ksvg2/svg/SVGTransform.idl:
1593         * ksvg2/svg/SVGTransformList.idl:
1594
1595 2006-09-24  Rob Buis  <buis@kde.org>
1596
1597         Reviewed by eseidel.
1598
1599         Fix for http://bugs.webkit.org/show_bug.cgi?id=6001
1600         WebKit does not handle fallback custom cursors
1601         Fix for http://bugs.webkit.org/show_bug.cgi?id=6002
1602         WebKit does not properly handle SVG <cursor> element
1603
1604         Add support for svg cursor images. Also make sure hotspot
1605         settings are handled correctly. Add tests for handling of css3
1606         cursor syntax with hotspots in strict and quirks mode. Finally
1607         implement fallback.
1608
1609         * WebCore.xcodeproj/project.pbxproj:
1610         * css/CSSComputedStyleDeclaration.cpp:
1611         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
1612         * css/CSSCursorImageValue.cpp: Added.
1613         (WebCore::CSSCursorImageValue::CSSCursorImageValue):
1614         (WebCore::CSSCursorImageValue::~CSSCursorImageValue):
1615         * css/CSSCursorImageValue.h: Added.
1616         (WebCore::CSSCursorImageValue::hotspot):
1617         * css/cssparser.cpp:
1618         (WebCore::CSSParser::parseValue):
1619         * css/cssstyleselector.cpp:
1620         (WebCore::CSSStyleSelector::applyProperty):
1621         * ksvg2/svg/SVGCursorElement.cpp:
1622         * manual-tests/css3-cursor-fallback-quirks.html: Added.
1623         * manual-tests/css3-cursor-fallback-strict.html: Added.
1624         * manual-tests/cursorfallback.xml: Added.
1625         * page/FrameView.cpp:
1626         (WebCore::selectCursor):
1627         * platform/Cursor.h:
1628         * platform/mac/CursorMac.mm:
1629         (WebCore::createCustomCursor):
1630         (WebCore::Cursor::Cursor):
1631         * platform/qt/CursorQt.cpp:
1632         (WebCore::Cursor::Cursor):
1633         * rendering/RenderStyle.cpp:
1634         (WebCore::StyleInheritedData::StyleInheritedData):
1635         (WebCore::StyleInheritedData::operator==):
1636         (WebCore::RenderStyle::diff):
1637         (WebCore::RenderStyle::addCursor):
1638         (WebCore::RenderStyle::addSVGCursor):
1639         (WebCore::RenderStyle::setCursorList):
1640         (WebCore::RenderStyle::clearCursorList):
1641         * rendering/RenderStyle.h:
1642         (WebCore::CursorData::CursorData):
1643         (WebCore::CursorList::operator[]):
1644         (WebCore::CursorList::size):
1645         (WebCore::CursorList::append):
1646         (WebCore::RenderStyle::cursors):
1647
1648 2006-09-24  Sam Weinig  <sam.weinig@gmail.com>
1649
1650         Reviewed by Tim H.
1651
1652         Patch for http://bugs.webkit.org/show_bug.cgi?id=11009
1653         Auto-generate the internal methods interfaces for the Objective-C bindings
1654
1655         - Auto-generate the internal method declarations into their own files
1656           named in the form DOMFooBarInternal.h for class DOMFooBar.
1657
1658         - Remove all use of DOM_cast from code.
1659
1660         - Assorted cleanups.
1661
1662         * WebCore.xcodeproj/project.pbxproj:
1663         * bindings/objc/DOM.mm:
1664         (-[DOMNode _initWithNode:WebCore::]):
1665         (-[DOMNode WebCore::]):
1666         (-[DOMRange dealloc]):
1667         (-[DOMRange finalize]):
1668         (-[DOMRange _initWithRange:WebCore::]):
1669         (-[DOMRange WebCore::]):
1670         (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
1671         (-[DOMNodeFilter WebCore::]):
1672         (-[DOMNodeFilter dealloc]):
1673         (-[DOMNodeFilter finalize]):
1674         (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
1675         (-[DOMNodeIterator WebCore::]):
1676         (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
1677         (-[DOMTreeWalker WebCore::]):
1678         * bindings/objc/DOMAbstractView.mm:
1679         (-[DOMAbstractView _initWithAbstractView:WebCore::]):
1680         * bindings/objc/DOMCSS.mm:
1681         (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
1682         (-[DOMCSSRule _initWithRule:WebCore::]):
1683         (-[DOMCSSValue _initWithValue:WebCore::]):
1684         * bindings/objc/DOMEvents.mm:
1685         (-[DOMEvent _initWithEvent:WebCore::]):
1686         * bindings/objc/DOMHTMLAppletElement.mm:
1687         (-[DOMHTMLAppletElement align]):
1688         (-[DOMHTMLAppletElement setAlign:]):
1689         (-[DOMHTMLAppletElement alt]):
1690         (-[DOMHTMLAppletElement setAlt:]):
1691         (-[DOMHTMLAppletElement archive]):
1692         (-[DOMHTMLAppletElement setArchive:]):
1693         (-[DOMHTMLAppletElement code]):
1694         (-[DOMHTMLAppletElement setCode:]):
1695         (-[DOMHTMLAppletElement codeBase]):
1696         (-[DOMHTMLAppletElement setCodeBase:]):
1697         (-[DOMHTMLAppletElement height]):
1698         (-[DOMHTMLAppletElement setHeight:]):
1699         (-[DOMHTMLAppletElement hspace]):
1700         (-[DOMHTMLAppletElement setHspace:]):
1701         (-[DOMHTMLAppletElement name]):
1702         (-[DOMHTMLAppletElement setName:]):
1703         (-[DOMHTMLAppletElement object]):
1704         (-[DOMHTMLAppletElement setObject:]):
1705         (-[DOMHTMLAppletElement vspace]):
1706         (-[DOMHTMLAppletElement setVspace:]):
1707         (-[DOMHTMLAppletElement width]):
1708         (-[DOMHTMLAppletElement setWidth:]):
1709         * bindings/objc/DOMInternal.h:
1710         (getDOMWrapper):
1711         (addDOMWrapper):
1712         (raiseOnDOMError):
1713         * bindings/objc/DOMXPath.mm:
1714         (-[DOMNativeXPathNSResolver _initWithXPathNSResolver:WebCore::]):
1715         * bindings/scripts/CodeGeneratorObjC.pm:
1716
1717 2006-09-24  Nikolas Zimmermann  <zimmermann@kde.org>
1718
1719         Reviewed by eseidel.
1720
1721         Fix Qt/Linux build after Dave's Scrollbar changes.
1722
1723         * platform/qt/PlatformScrollBar.h: (Somehow this contained the file twice! Removed one instance!)
1724         * platform/qt/TemporaryLinkStubs.cpp:
1725         (WebCore::ScrollBar::setProportion):
1726         (WebCore::PlatformScrollBar::updateThumbPosition):
1727         (WebCore::PlatformScrollBar::updateThumbProportion):
1728
1729 2006-09-24  Nikolas Zimmermann  <zimmermann@kde.org>
1730
1731         Reviewed by eseidel.
1732
1733         Qt/Linux build system changes: enable xpath/xslt by default.
1734         Offer possibility to change all of these using 'ccmake'.
1735
1736         * CMakeLists.txt:
1737
1738 2006-09-24  Dave Hyatt  <hyatt@apple.com>
1739
1740         Cleanup of Scrollbar APIs.  Rename setKnobProportion to setProportion.  Rename setScrollbarValue to updateThumbPosition.
1741         Give setProportion a base class implementation and implement it using the same pattern as setValue/updateThumbPosition (so that
1742         the base calls a protected virtual function, updateThumbProportion, implemented by the derived class to update the actual scrollbar itself).
1743
1744         * platform/ScrollBar.cpp:
1745         (WebCore::ScrollBar::setValue):
1746         (WebCore::ScrollBar::setProportion):
1747         * platform/ScrollBar.h:
1748         (WebCore::ScrollBar::value):
1749         * platform/mac/PlatformScrollBar.h:
1750         * platform/mac/PlatformScrollBarMac.mm:
1751         (WebCore::PlatformScrollBar::updateThumbPosition):
1752         (WebCore::PlatformScrollBar::updateThumbProportion):
1753         * platform/win/PlatformScrollBar.h:
1754         * platform/win/TemporaryLinkStubs.cpp:
1755         (PlatformScrollBar::updateThumbPosition):
1756         (PlatformScrollBar::updateThumbProportion):
1757         * rendering/RenderLayer.cpp:
1758         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
1759
1760 2006-09-23  Alexey Proskuryakov  <ap@nypop.com>
1761
1762         Reviewed by Eric.
1763
1764         http://bugs.webkit.org/show_bug.cgi?id=4872
1765         XMLHttpRequest fails to throw an exception when there is a security violation
1766         (mismatching domains)
1767
1768         Raise an exception if there is a security violation, and also in cases required by
1769         the current draft of XHR specification.
1770
1771         * bindings/js/JSXMLHttpRequest.cpp:
1772         (KJS::JSXMLHttpRequest::getValueProperty): Raise an exception if a DOM method reports one.
1773         (KJS::JSXMLHttpRequestProtoFunc::callAsFunction): Raise an exception if a DOM method
1774         reports one, and also if there were too few arguments passed. 
1775
1776         * bindings/js/kjs_binding.cpp:
1777         (KJS::setDOMException): Added support for custom XHR exceptions.
1778
1779         * xml/xmlhttprequest.h: Changed state names to match the current spec. Defined an
1780         exception code range for XHR exceptions.
1781
1782         * xml/xmlhttprequest.cpp:
1783         (WebCore::XMLHttpRequest::open): Removed a check for m_aborted that could never succeed.
1784         (WebCore::XMLHttpRequest::send):
1785         (WebCore::XMLHttpRequest::setRequestHeader):
1786         (WebCore::XMLHttpRequest::getStatus):
1787         (WebCore::XMLHttpRequest::getStatusText):
1788         (WebCore::XMLHttpRequest::processSyncLoadResults):
1789         (WebCore::XMLHttpRequest::receivedAllData):
1790         (WebCore::XMLHttpRequest::receivedData):
1791
1792 2006-09-22  Steve Falkenburg  <sfalken@apple.com>
1793
1794         Reviewed by Jeff Jenkins.
1795
1796         Tweak CF types.
1797
1798         * platform/cf/ResourceLoaderCFNet.cpp:
1799         (WebCore::willCacheResponse):
1800
1801 2006-09-22  Justin Garcia  <justin.garcia@apple.com>
1802
1803         Reviewed by darin
1804
1805         <http://bugs.webkit.org/show_bug.cgi?id=8029>
1806         Rename Node::isAncestor and RenderObject::hasAncestor to isDescendantOf
1807
1808         * dom/Document.cpp:
1809         (WebCore::Document::clearSelectionIfNeeded):
1810         * dom/Element.cpp:
1811         (WebCore::Element::contains):
1812         * dom/Node.cpp:
1813         (WebCore::Node::traverseNextNode):
1814         (WebCore::Node::traverseNextSibling):
1815         (WebCore::Node::traversePreviousNodePostOrder):
1816         (WebCore::Node::checkAddChild):
1817         (WebCore::Node::isDescendantOf):
1818         * dom/Node.h:
1819         * dom/NodeIterator.cpp:
1820         (WebCore::NodeIterator::notifyBeforeNodeRemoval):
1821         * editing/ApplyStyleCommand.cpp:
1822         (WebCore::ApplyStyleCommand::applyBlockStyle):
1823         (WebCore::ApplyStyleCommand::applyRelativeFontStyleChange):
1824         (WebCore::ApplyStyleCommand::applyInlineStyle):
1825         (WebCore::ApplyStyleCommand::pushDownTextDecorationStyleAroundNode):
1826         * editing/CompositeEditCommand.cpp:
1827         (WebCore::CompositeEditCommand::mergeIdenticalElements):
1828         (WebCore::CompositeEditCommand::moveParagraphContentsToNewBlockIfNecessary):
1829         * editing/DeleteSelectionCommand.cpp:
1830         (WebCore::updatePositionForNodeRemoval):
1831         (WebCore::DeleteSelectionCommand::handleGeneralDelete):
1832         (WebCore::DeleteSelectionCommand::mergeParagraphs):
1833         * editing/FormatBlockCommand.cpp:
1834         (WebCore::FormatBlockCommand::doApply):
1835         * editing/IndentOutdentCommand.cpp:
1836         (WebCore::enclosingListOrBlockquote):
1837         * editing/Selection.cpp:
1838         (WebCore::Selection::validate):
1839         * editing/SelectionController.cpp:
1840         (WebCore::SelectionController::nodeWillBeRemoved):
1841         * editing/TextIterator.cpp:
1842         (WebCore::SimplifiedBackwardsTextIterator::advance):
1843         * editing/VisiblePosition.cpp:
1844         (WebCore::VisiblePosition::next):
1845         (WebCore::VisiblePosition::previous):
1846         (WebCore::VisiblePosition::canonicalPosition):
1847         (WebCore::isFirstVisiblePositionInNode):
1848         (WebCore::isLastVisiblePositionInNode):
1849         * editing/htmlediting.cpp:
1850         (WebCore::firstEditablePositionAfterPositionInRoot):
1851         (WebCore::lastEditablePositionBeforePositionInRoot):
1852         (WebCore::enclosingNodeWithTag):
1853         (WebCore::enclosingList):
1854         (WebCore::enclosingListChild):
1855         * editing/markup.cpp:
1856         (WebCore::createMarkup):
1857
1858 2006-09-22  Timothy Hatcher  <timothy@apple.com>
1859
1860         Reviewed by Darin.
1861
1862         - Added @property syntax to non-generated headers
1863           inside #ifndef BUILDING_ON_TIGER.
1864         - Changed the DOMEventTarget protocol to have have new versions
1865           of addEventListener and removeEventListener with named parameters.
1866           These old style methods can be removed once Mail changes to use
1867           the new methods <rdar://problem/4746649>.
1868
1869         * WebCorePrefix.h: define BUILDING_ON_TIGER when Tiger is the target
1870         * bindings/objc/DOM.mm:
1871         (-[DOMNode addEventListener:listener:useCapture:]):
1872         (-[DOMNode addEventListener:::]): call the new method
1873         (-[DOMNode removeEventListener:listener:useCapture:]):
1874         (-[DOMNode removeEventListener:::]): call the new method
1875         * bindings/objc/DOMAbstractView.h:
1876         * bindings/objc/DOMEventTarget.h:
1877         * bindings/objc/DOMHTMLAppletElement.h:
1878         * bindings/objc/DOMHTMLEmbedElement.h:
1879         * bindings/objc/DOMHTMLOptionElement.h:
1880         * bindings/objc/DOMObject.h:
1881         * bindings/objc/DOMRGBColor.h:
1882
1883 2006-09-22  Nikolas Zimmermann  <zimmermann@kde.org>
1884
1885         Reviewed by Eric.
1886
1887         Fix Qt/Linux build and a really stupid mixup in GraphicsContextQt.
1888
1889         * platform/qt/FrameQt.cpp:
1890         * platform/qt/GraphicsContextQt.cpp:
1891         (WebCore::GraphicsContext::translate): Make it actually translate, not scale! :-)
1892         (WebCore::GraphicsContext::origin):
1893         * platform/qt/PlatformScrollBar.h: Added.
1894         (WebCore::PlatformScrollBar::isWidget):
1895         * platform/qt/WidgetQt.cpp:
1896         (WebCore::Widget::invalidate):
1897         (WebCore::Widget::invalidateRect):
1898
1899 2006-09-22  Dave Hyatt <hyatt@apple.com>
1900
1901         Super-minor tweaks to the systemFont function on Mac.
1902         Set the generic family to None rather than to Serif, and
1903         don't waste time setting the computed size, since that is
1904         set from the specified size over in CSSStyleSelector anyway.
1905
1906         * rendering/RenderThemeMac.mm:
1907         (WebCore::RenderThemeMac::systemFont):
1908
1909 2006-09-22  Timothy Hatcher  <timothy@apple.com>
1910
1911         Reviewed by Brady.
1912
1913         Build fix for Xcode 2.3. Convert GraphicsContext::translate() to
1914         take floats. There was already an implicit conversion to float/double
1915         when calling CGContextTranslateCTM or cairo_translate.
1916
1917         * platform/GraphicsContext.h:
1918         * platform/cairo/GraphicsContextCairo.cpp:
1919         (WebCore::GraphicsContext::translate):
1920         * platform/cg/GraphicsContextCG.cpp:
1921         (WebCore::GraphicsContext::translate):
1922
1923 2006-09-22  Brady Eidson  <beidson@apple.com>
1924
1925         Reviewed by Sfalken
1926
1927         Add redirect and other cleanup to ResourceLoaderWin.cpp
1928         Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10927
1929         Fixes bug http://bugs.webkit.org/show_bug.cgi?id=10744
1930
1931         * WebCore.xcodeproj/project.pbxproj:
1932         * platform/ResourceLoader.h:
1933         * platform/win/ResourceLoaderWin.cpp:
1934         (WebCore::ResourceLoaderWndProc):
1935         (WebCore::initializeOffScreenResourceLoaderWindow):
1936         (WebCore::ResourceLoader::onHandleCreated):
1937         (WebCore::ResourceLoader::onRequestRedirected):
1938         (WebCore::ResourceLoader::onRequestComplete):
1939         (WebCore::transferJobStatusCallback):
1940
1941 2006-09-22  Alexey Proskuryakov  <ap@nypop.com>
1942
1943         Reviewed by Geoff.
1944
1945         http://bugs.webkit.org/show_bug.cgi?id=10803
1946         REGRESSION (r15536-r15544): manual-tests/bugzilla-6821.html failing
1947
1948         * page/FrameView.cpp:
1949         (WebCore::FrameView::hoverTimerFired): Use the current event.
1950
1951 2006-09-22  Nikolas Zimmermann  <zimmermann@kde.org>
1952
1953         Reviewed by Anders.
1954
1955         Fix (last) svg memory leak.
1956
1957         * ksvg2/svg/SVGTransformable.cpp: delete 't' in error case.
1958         (SVGTransformable::parseTransformAttribute):
1959
1960 2006-09-22  Eric Seidel  <eric@eseidel.com>
1961
1962         No review necessary, just removing a dead file.
1963
1964         Remove unused file (added previously by mistake) to make room for real implementation.
1965
1966         * platform/mac/BitmapImageMac.mm: Removed.
1967
1968 2006-09-22  Dave Hyatt <hyatt@apple.com>
1969
1970         Move PlatformScrollBar.h down into the platforms.
1971         
1972         Reviewed by andersca
1973
1974         * platform/PlatformScrollBar.h: Removed.
1975         * platform/win/PlatformScrollBar.h: Added.
1976         * platform/mac/PlatformScrollBar.h: Added.
1977
1978 2006-09-22   Dave Hyatt  <hyatt@apple.com>
1979
1980         Add support for invalidation of widgets.  This will be needed for the Win32 widget subsystem (and for
1981         any widget subsystems that don't have any underlying native objects backing the widgets.
1982
1983         Reviewed by anders
1984
1985         * platform/Widget.h:
1986         * platform/mac/WidgetMac.mm:
1987         (WebCore::Widget::invalidate):
1988         (WebCore::Widget::invalidateRect):
1989         * platform/win/TemporaryLinkStubs.cpp:
1990         (Widget::invalidate):
1991         (Widget::invalidateRect):
1992
1993 2006-09-22  Rob Buis  <buis@kd.org>
1994
1995         Reviewed by eseidel.
1996
1997         http://bugs.webkit.org/show_bug.cgi?id=10901
1998         Merge build fixes from unity
1999
2000         * CMakeLists.txt:
2001
2002 2006-09-21  Nikolas Zimmermann  <zimmermann@kde.org>
2003
2004         Reviewed by eseidel.
2005
2006         http://bugs.webkit.org/show_bug.cgi?id=10977
2007         SVGDocument does not expose 'rootElement' property
2008
2009         Enable 'rootElement' property.
2010
2011         * ksvg2/svg/SVGDocument.idl:
2012
2013 2006-09-21  Steve Falkenburg  <sfalken@apple.com>
2014
2015         Tweak includes.
2016
2017         * platform/ResourceLoaderInternal.h:
2018
2019 2006-09-21  Geoffrey Garen  <ggaren@apple.com>
2020
2021         build fixed. band happy.
2022         
2023         * platform/cg/GraphicsContextCG.cpp:
2024         (WebCore::GraphicsContext::translate):
2025         * platform/mac/WidgetMac.mm:
2026
2027 2006-09-21  Geoffrey Garen  <ggaren@apple.com>
2028
2029         Reviewed by Maciej.
2030         
2031         Some Widget refactoring.
2032
2033         * WebCore.vcproj/WebCore/WebCore.vcproj:
2034         * bridge/mac/FrameMac.mm:
2035         * bridge/win/FrameWin.cpp:
2036         (WebCore::FrameWin::runJavaScriptAlert):
2037         (WebCore::FrameWin::runJavaScriptConfirm):
2038         * bridge/win/PageWin.cpp:
2039         (WebCore::Page::Page):
2040         (WebCore::rootWindowForFrame):
2041         * html/CanvasRenderingContext2D.cpp:
2042         (WebCore::CanvasRenderingContext2D::translate):
2043         * page/FrameView.cpp:
2044         (WebCore::FrameView::isFrameView):
2045         * page/Page.h:
2046         (WebCore::Page::setInstanceHandle):
2047         (WebCore::Page::instanceHandle):
2048         * platform/GraphicsContext.h:
2049         * platform/ScrollView.h:
2050         * platform/Widget.h:
2051         * platform/cairo/GraphicsContextCairo.cpp:
2052         (WebCore::GraphicsContext::translate):
2053         (WebCore::GraphicsContext::origin):
2054         * platform/mac/WidgetMac.mm:
2055         (WebCore::Widget::clearFocus):
2056         * platform/win/ResourceLoaderWin.cpp:
2057         (WebCore::initializeOffScreenResourceLoaderWindow):
2058         * platform/win/ScreenWin.cpp:
2059         (WebCore::monitorInfo):
2060         * platform/win/ScrollViewWin.cpp:
2061         (WebCore::ScrollView::updateContents):
2062         (WebCore::ScrollView::visibleWidth):
2063         (WebCore::ScrollView::visibleHeight):
2064         (WebCore::ScrollView::visibleContentRect):
2065         (WebCore::ScrollView::viewportToContents):
2066         (WebCore::ScrollView::contentsToViewport):
2067         (WebCore::ScrollView::scrollBy):
2068         (WebCore::ScrollView::updateScrollInfo):
2069         (WebCore::ScrollView::updateScrollBars):
2070         * platform/win/SharedTimerWin.cpp:
2071         (WebCore::initializeOffScreenTimerWindow):
2072         * platform/win/TemporaryLinkStubs.cpp:
2073         (FrameView::updateBorder):
2074         (ScrollView::paint):
2075         (GraphicsContext::clip):
2076         * platform/win/WidgetWin.cpp:
2077         (WebCore::Widget::Widget):
2078         (WebCore::Widget::parentWindow):
2079         (WebCore::Widget::setParentWindow):
2080         (WebCore::Widget::frameGeometry):
2081         (WebCore::Widget::hasFocus):
2082         (WebCore::Widget::setFocus):
2083         (WebCore::Widget::show):
2084         (WebCore::Widget::hide):
2085         (WebCore::Widget::setFrameGeometry):
2086
2087 2006-09-22  Anders Carlsson  <acarlsson@apple.com>
2088
2089         Reviewed by Tim H.
2090
2091         * platform/TextEncoding.cpp:
2092         (WebCore::TextEncoding::backslashAsCurrencySymbol):
2093         Add comment clarifying why backslashAsCurrencySymbol is needed.
2094
2095 2006-09-21  Sean Gies  <seangies@apple.com>
2096
2097         Reviewed by Adam Roben.
2098
2099         Add utility functions to get and release HDC from GraphicsContext.
2100
2101         * platform/GraphicsContext.h: Add utilities to get and release HDC.
2102         * platform/cairo/GraphicsContextCairo.cpp: Implement new utilities.
2103         * rendering/RenderThemeWin.cpp: Switch to new utilities.
2104
2105 2006-09-21  Justin Garcia  <justin.garcia@apple.com>
2106
2107         Reviewed by anders
2108         
2109         <rdar://problem/4426622>
2110         Plain text paste slow.  Time spent mostly in WebCore::rebalanceWhitespaceInTextNode(...)
2111
2112         * editing/htmlediting.cpp:
2113         (WebCore::rebalanceWhitespaceInTextNode): We no longer need to use a RegExp replace because we
2114         aren't producing complicated sequences here.  Use multiple UChar -> UChar replaces instead for speed.
2115         Got rid of uses of DepricatedString.
2116
2117 2006-09-21  Nikolas Zimmermann  <zimmermann@kde.org>
2118
2119         Reviewed by eseidel.
2120
2121         Don't crash if no IconDatabase is available (ie. on Qt/Gdk)
2122
2123         * page/Frame.cpp:
2124         (WebCore::Frame::endIfNotLoading):
2125
2126 2006-09-21  Nikolas Zimmermann  <zimmermann@kde.org>
2127
2128         Reviewed by eseidel.
2129
2130         Fix Qt/Linux build.
2131
2132         * CMakeLists.txt:
2133         * kcanvas/device/qt/KCanvasClipperQt.h:
2134         * kcanvas/device/qt/KRenderingDeviceQt.cpp:
2135         * platform/qt/FrameQt.cpp:
2136         (WebCore::FrameQt::isLoadTypeReload):
2137         (WebCore::FrameQt::originalRequestURL):
2138         * platform/qt/FrameQt.h:
2139         * platform/qt/GraphicsContextQt.cpp:
2140         (WebCore::GraphicsContext::concatCTM):
2141         * platform/qt/ScrollViewQt.cpp:
2142         (WebCore::ScrollView::wheelEvent):
2143         * platform/qt/TemporaryLinkStubs.cpp:
2144         (WebCore::IconDatabase::setIconURLForPageURL):
2145
2146 2006-09-20  Justin Garcia  <justin.garcia@apple.com>
2147
2148         Reviewed by john
2149         
2150         <http://bugs.webkit.org/show_bug.cgi?id=7165>
2151         TinyMCE: Dragging & dropping content always leaves a copy when editing inside a subframe
2152
2153         * editing/MoveSelectionCommand.cpp:
2154         (WebCore::MoveSelectionCommand::MoveSelectionCommand): Set the document
2155         to the position-to-move-to's document, not the fragment's document.  The 
2156         fragment's document is the document used to create the fragment and is irrelavant.
2157
2158 === Safari-521.27 ===
2159
2160 2006-09-21  Brady Eidson  <beidson@apple.com>
2161
2162         Reviewed by Anders
2163
2164         When your assumption is "IconDatabase::sharedIconDatabase()" will never fail but it does, you're in trouble
2165         This fixes Spinneret so it won't crash on its first load!
2166
2167         * page/Frame.cpp:
2168         (WebCore::Frame::endIfNotLoading):
2169
2170 2006-09-21  Brady Eidson  <beidson@apple.com>
2171
2172         Build fix
2173
2174         * platform/win/TemporaryLinkStubs.cpp:
2175         (ScrollView::wheelEvent):
2176
2177 2006-09-20  Rob Buis  <buis@kde.org>
2178
2179         Reviewed by eseidel.
2180
2181         http://bugs.webkit.org/show_bug.cgi?id=10946
2182         new marker code draws end-marker in wrong place
2183
2184         Keep track of the start of the subpath so we can handle
2185         closeTo/moveTo correctly.
2186
2187         * kcanvas/RenderPath.cpp:
2188         (WebCore::DrawMarkersData::DrawMarkersData):
2189         (WebCore::updateMarkerDataForElement):
2190
2191 2006-09-21  David Hyatt <hyatt@apple.com>
2192
2193         Wheel scrolling prep for Win32.
2194
2195         WARNING: NO TEST CASES ADDED OR CHANGED
2196
2197         * platform/PlatformWheelEvent.h:
2198         * platform/ScrollBar.h:
2199         * platform/ScrollView.h:
2200         * platform/mac/ScrollViewMac.mm:
2201         (WebCore::ScrollView::wheelEvent):
2202         * rendering/RenderLayer.cpp:
2203
2204 2006-09-20  Timothy Hatcher  <timothy@apple.com>
2205
2206         Reviewed by Hyatt.
2207
2208         Bug 10917: REGRESSION (r16027): iFrame transparency broken
2209         http://bugs.webkit.org/show_bug.cgi?id=10917
2210
2211         Don't paint the base background color if we transparent.
2212
2213         * rendering/RenderBox.cpp:
2214         (WebCore::RenderBox::paintBackgroundExtended):
2215
2216 2006-09-20  Adam Roben  <aroben@apple.com>
2217
2218         Reviewed by andersca.
2219
2220         * platform/FileChooser.h: Remove no-longer-necessary namespace std
2221
2222 2006-09-20  Eric Seidel  <eric@eseidel.com>
2223
2224         Reviewed by beth.
2225
2226         Cleanup style in KCanvas.
2227         Remove extra white-space, unneeded arguments, etc.
2228
2229         * WebCore.xcodeproj/project.pbxproj:
2230         * kcanvas/KCanvasClipper.cpp:
2231         (WebCore::operator<<):
2232         (WebCore::KCanvasClipper::externalRepresentation):
2233         * kcanvas/KCanvasClipper.h:
2234         * kcanvas/KCanvasFilters.cpp:
2235         (WebCore::KCanvasFilter::externalRepresentation):
2236         (WebCore::operator<<):
2237         (WebCore::KCanvasFilterEffect::externalRepresentation):
2238         (WebCore::KCPointLightSource::externalRepresentation):
2239         (WebCore::KCSpotLightSource::externalRepresentation):
2240         (WebCore::KCDistantLightSource::externalRepresentation):
2241         (WebCore::KCanvasFEBlend::externalRepresentation):
2242         (WebCore::KCanvasFEColorMatrix::externalRepresentation):
2243         (WebCore::KCanvasFEComponentTransfer::externalRepresentation):
2244         (WebCore::KCanvasFEComposite::externalRepresentation):
2245         (WebCore::KCanvasFEConvolveMatrix::externalRepresentation):
2246         (WebCore::KCanvasFEDiffuseLighting::externalRepresentation):
2247         (WebCore::KCanvasFEDisplacementMap::externalRepresentation):
2248         (WebCore::KCanvasFEFlood::externalRepresentation):
2249         (WebCore::KCanvasFEGaussianBlur::externalRepresentation):
2250         (WebCore::KCanvasFEImage::externalRepresentation):
2251         (WebCore::KCanvasFEMerge::externalRepresentation):
2252         (WebCore::KCanvasFEMorphology::externalRepresentation):
2253         (WebCore::KCanvasFEOffset::externalRepresentation):
2254         (WebCore::KCanvasFESpecularLighting::externalRepresentation):
2255         (WebCore::KCanvasFETile::externalRepresentation):
2256         (WebCore::KCanvasFETurbulence::externalRepresentation):
2257         * kcanvas/KCanvasFilters.h:
2258         (WebCore::KCanvasFEDiffuseLighting::lightSource):
2259         (WebCore::KCanvasFESpecularLighting::lightSource):
2260         * kcanvas/KCanvasImage.h:
2261         * kcanvas/KCanvasMarker.cpp:
2262         (WebCore::KCanvasMarker::externalRepresentation):
2263         * kcanvas/KCanvasMarker.h:
2264         * kcanvas/KCanvasResource.cpp:
2265         (WebCore::operator<<):
2266         * kcanvas/KCanvasResource.h:
2267         * kcanvas/KCanvasTreeDebug.cpp:
2268         (WebCore::operator<<):
2269         (WebCore::writeIndent):
2270         (WebCore::writeStyle):
2271         (WebCore::write):
2272         (WebCore::writeRenderResources):
2273         * kcanvas/KCanvasTreeDebug.h:
2274         (WebCore::operator<<):
2275         * kcanvas/RenderForeignObject.cpp:
2276         (WebCore::RenderForeignObject::paint):
2277         * kcanvas/RenderPath.cpp:
2278         (WebCore::RenderPath::paint):
2279         (WebCore::drawStartAndMidMarkers):
2280         * kcanvas/RenderSVGContainer.cpp:
2281         (WebCore::RenderSVGContainer::paint):
2282         * kcanvas/RenderSVGImage.cpp:
2283         (WebCore::RenderSVGImage::translateForAttributes):
2284         * kcanvas/RenderSVGImage.h:
2285         * kcanvas/device/KRenderingDevice.cpp:
2286         (WebCore::KRenderingDevice::currentContext):
2287         (WebCore::KRenderingDevice::popContext):
2288         (WebCore::KRenderingDevice::pushContext):
2289         * kcanvas/device/KRenderingDevice.h:
2290         * kcanvas/device/KRenderingFillPainter.h:
2291         * kcanvas/device/KRenderingPaintServer.h:
2292         (WebCore::KRenderingPaintServer::KRenderingPaintServer):
2293         (WebCore::KRenderingPaintServer::activeClient):
2294         (WebCore::KRenderingPaintServer::setActiveClient):
2295         * kcanvas/device/KRenderingPaintServerGradient.cpp:
2296         (WebCore::operator<<):
2297         (WebCore::KRenderingPaintServerGradient::externalRepresentation):
2298         (WebCore::KRenderingPaintServerLinearGradient::externalRepresentation):
2299         (WebCore::KRenderingPaintServerGradient::listener):
2300         (WebCore::KRenderingPaintServerGradient::setListener):
2301         (WebCore::KRenderingPaintServerRadialGradient::externalRepresentation):
2302         * kcanvas/device/KRenderingPaintServerGradient.h:
2303         * kcanvas/device/KRenderingPaintServerPattern.cpp:
2304         (WebCore::KRenderingPaintServerPattern::tile):
2305         (WebCore::KRenderingPaintServerPattern::setTile):
2306         (WebCore::KRenderingPaintServerPattern::listener):
2307         (WebCore::KRenderingPaintServerPattern::setListener):
2308         (WebCore::KRenderingPaintServerPattern::externalRepresentation):
2309         * kcanvas/device/KRenderingPaintServerPattern.h:
2310         * kcanvas/device/KRenderingPaintServerSolid.cpp:
2311         (WebCore::KRenderingPaintServerSolid::externalRepresentation):
2312         * kcanvas/device/KRenderingPaintServerSolid.h:
2313         * kcanvas/device/KRenderingStrokePainter.cpp:
2314         (WebCore::KRenderingStrokePainter::strokeMiterLimit):
2315         (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
2316         * kcanvas/device/KRenderingStrokePainter.h:
2317         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
2318         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
2319         (WebCore::KCanvasFilterQuartz::prepareFilter):
2320         * kcanvas/device/quartz/KCanvasItemQuartz.h: Removed.
2321         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
2322         (WebCore::KCanvasMaskerQuartz::applyMask):
2323         * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
2324         (WebCore::KCanvasImageQuartz::init):
2325         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
2326         (WebCore::KCanvasClipperQuartz::applyClip):
2327         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2328         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2329         (WebCore::KRenderingDeviceQuartz::quartzContext):
2330         (WebCore::KRenderingDeviceQuartz::contextForImage):
2331         (WebCore::KRenderingDeviceQuartz::createPaintServer):
2332         (WebCore::KRenderingDeviceQuartz::createResource):
2333         (WebCore::KRenderingDeviceQuartz::createFilterEffect):
2334         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
2335         (WebCore::CGShadingRefForLinearGradient):
2336         (WebCore::CGShadingRefForRadialGradient):
2337         (WebCore::KRenderingPaintServerGradientQuartz::updateQuartzGradientCache):
2338         (WebCore::KRenderingPaintServerGradientQuartz::teardown):
2339         * kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
2340         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2341         (WebCore::KRenderingPaintServerQuartzHelper::strokePath):
2342         (WebCore::KRenderingPaintServerQuartzHelper::clipToStrokePath):
2343         (WebCore::KRenderingPaintServerQuartzHelper::fillPath):
2344         (WebCore::KRenderingPaintServerQuartzHelper::clipToFillPath):
2345         (WebCore::KRenderingPaintServerSolidQuartz::draw):
2346         (WebCore::KRenderingPaintServerSolidQuartz::setup):
2347         (WebCore::KRenderingPaintServerSolidQuartz::renderPath):
2348         (WebCore::KRenderingPaintServerPatternQuartz::setup):
2349         (WebCore::KRenderingPaintServerPatternQuartz::renderPath):
2350         (WebCore::KRenderingPaintServerPatternQuartz::teardown):
2351         * kcanvas/device/quartz/QuartzSupport.h:
2352         * kcanvas/device/quartz/QuartzSupport.mm:
2353         (WebCore::applyStrokeStyleToContext):
2354
2355 2006-09-20  Anders Carlsson  <acarlsson@apple.com>
2356
2357         Reviewed by Dave Hyatt.
2358
2359         * dom/WheelEvent.cpp:
2360         (WebCore::WheelEvent::WheelEvent):
2361         Use lroundf instead of lround since deltas are floats.
2362
2363 2006-09-20  Julien Palmas  <julien.palmas@gmail.com>
2364
2365         Reviewed by eseidel.  Landed by eseidel.
2366
2367         Test: svg/custom/pattern-y-offset.svg
2368
2369         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
2370         (WebCore::KRenderingPaintServerPatternQuartz::setup):
2371
2372 2006-09-20  David Hyatt  <hyatt@apple.com>
2373
2374         Add a new wheelEvent method to ScrollView.  Platforms that wish
2375         to handle the wheel event for the scroll view themselves can then
2376         do so there.  (Mac lets the underlying NSScrollView do it for now.)
2377
2378         * page/FrameView.cpp:
2379         (WebCore::FrameView::handleWheelEvent):
2380         * platform/ScrollView.h:
2381         (WebCore::ScrollView::wheelEvent):
2382
2383 2006-09-20  Brady Eidson  <beidson@apple.com>
2384
2385         Reviewed by Tim Omernick
2386
2387         Part of fixing a crash Tim O showed me that I missed in a release build.
2388         WebKit should be able to call through the bridge to WebCore no matter what -
2389         Replace the _iconDB member with calls to IconDatabase::sharedIconDatabase()
2390
2391         * bridge/mac/WebCoreIconDatabaseBridge.h:
2392         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2393         (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
2394         (-[WebCoreIconDatabaseBridge isOpen]):
2395         (-[WebCoreIconDatabaseBridge removeAllIcons]):
2396         (-[WebCoreIconDatabaseBridge _isEmpty]):
2397         (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
2398         (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
2399         (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
2400         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
2401         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
2402         (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
2403         (-[WebCoreIconDatabaseBridge retainIconForURL:]):
2404         (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
2405         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
2406         (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
2407         (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
2408         (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]):
2409         (-[WebCoreIconDatabaseBridge _setEnabled:]):
2410         (-[WebCoreIconDatabaseBridge _isEnabled]):
2411
2412 2006-09-20  Anders Carlsson  <acarlsson@apple.com>
2413
2414         Reviewed by Darin.
2415
2416         Add String::split which returns a Vector of Strings and use it instead of 
2417         DeprecatedStringList.
2418         
2419         * bindings/js/kjs_events.cpp:
2420         (KJS::Clipboard::getValueProperty):
2421         * bindings/js/kjs_window.cpp:
2422         (KJS::parseModalDialogFeatures):
2423         * css/MediaList.cpp:
2424         (WebCore::MediaList::setMediaText):
2425         * dom/Clipboard.h:
2426         * html/HTMLFormElement.cpp:
2427         (WebCore::HTMLFormElement::formData):
2428         * html/HTMLLinkElement.cpp:
2429         (WebCore::HTMLLinkElement::tokenizeRelAttribute):
2430         * platform/PlatformString.h:
2431         * platform/String.cpp:
2432         (WebCore::String::split):
2433         * platform/StringImpl.cpp:
2434         * platform/StringImpl.h:
2435         * platform/mac/ClipboardMac.h:
2436         * platform/mac/ClipboardMac.mm:
2437         (WebCore::ClipboardMac::types):
2438
2439 2006-09-20  Justin Garcia  <justin.garcia@apple.com>
2440
2441         Reviewed by harrison
2442
2443         * css/cssstyleselector.cpp:
2444         (WebCore::CSSStyleSelector::adjustRenderStyle): Don't call 
2445         HTMLElement::isContentEditable just to check the Frame's editability, since
2446         it calls updateRenderering, which can get us into infinite recursion.
2447
2448 2006-09-20  Brady Eidson  <beidson@apple.com>
2449
2450         Reviewed by Darin
2451
2452         Cleaned up my last patch alot, and made the WebCore icon database disabled by default
2453
2454         * loader/icon/IconDatabase.cpp:
2455         (WebCore::IconDatabase::IconDatabase): Disabled by default
2456         (WebCore::IconDatabase::removeAllIcons): Respect just isOpen() (disabled database will always be closed)
2457         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ditto
2458         (WebCore::IconDatabase::iconForPageURL): Ditto
2459         (WebCore::IconDatabase::isIconExpiredForIconURL): Ditto
2460         (WebCore::IconDatabase::iconURLForPageURL): Ditto
2461         (WebCore::IconDatabase::retainIconForPageURL): Ditto
2462         (WebCore::IconDatabase::releaseIconForPageURL): Ditto
2463         (WebCore::IconDatabase::setIconDataForIconURL): Ditto
2464         (WebCore::IconDatabase::setIconURLForPageURL): Ditto
2465         (WebCore::IconDatabase::hasEntryForIconURL): Ditto
2466         (WebCore::IconDatabase::setEnabled): Fixed a big bug here!
2467
2468 2006-09-20  Adam Roben  <aroben@apple.com>
2469
2470         Reviewed by Adele.
2471
2472         Fixes http://bugs.webkit.org/show_bug.cgi?id=10935
2473         REGRESSION: file upload control with direction:rtl or text-align:right
2474         draws button on top of filename/icon
2475
2476         * rendering/RenderFileUploadControl.cpp:
2477         (WebCore::RenderFileUploadControl::setStyle): Force text-align to
2478         match direction
2479         (WebCore::RenderFileUploadControl::paintObject): Fix positioning of
2480         the filename and icon in RTL
2481
2482 2006-09-20  Alice Liu  <alice.liu@apple.com>
2483
2484         Reviewed by Adam Roben.
2485
2486         fixed windows build
2487
2488         * dom/WheelEvent.cpp:
2489         (WebCore::WheelEvent::WheelEvent):
2490         changed lrint to lround
2491
2492 2006-09-20  Sam Weinig  <sam.weinig@gmail.com>
2493
2494         Build Fix.  Adds isHorizontal attribute back to WheelEvent
2495         for the Objective-C bindings.  If it is found that isHorizontal
2496         is not used, we should remove it again but also remove it's
2497         declaration from PublicDOMInterfaces.h
2498
2499         * dom/WheelEvent.h:
2500         (WebCore::WheelEvent::isHorizontal):
2501         * dom/WheelEvent.idl:
2502
2503 2006-09-20  David Hyatt  <hyatt@apple.com>
2504
2505         Fix for 10945, WheelEvent should support two dimensions at once, since
2506         MacBooks allow for diagonal scrolling.  Also enhance the PlatformWheelEvent
2507         to allow for diagonal scrolling.
2508
2509         Reviewed by Eric
2510
2511         * dom/EventTargetNode.cpp:
2512         (WebCore::EventTargetNode::dispatchWheelEvent):
2513         * dom/WheelEvent.cpp:
2514         (WebCore::WheelEvent::WheelEvent):
2515         (WebCore::WheelEvent::initWheelEvent):
2516         * dom/WheelEvent.h:
2517         (WebCore::WheelEvent::wheelDelta):
2518         (WebCore::WheelEvent::wheelDeltaX):
2519         (WebCore::WheelEvent::wheelDeltaY):
2520         * dom/WheelEvent.idl:
2521         * page/FrameView.cpp:
2522         (WebCore::FrameView::handleWheelEvent):
2523         * platform/PlatformWheelEvent.h:
2524         (WebCore::PlatformWheelEvent::deltaX):
2525         (WebCore::PlatformWheelEvent::deltaY):
2526         (WebCore::PlatformWheelEvent::normalize):
2527         * platform/mac/WheelEventMac.mm:
2528         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2529
2530 2006-09-19  Eric Seidel  <eric@eseidel.com>
2531
2532         Reviewed by hyatt.
2533
2534         Split KCanvasResources.* into multiple files (and some other minor spacing changes).
2535         
2536         No tests were harmed in the making of this patch.
2537
2538         * WebCore.xcodeproj/project.pbxproj:
2539         * kcanvas/KCanvasClipper.cpp: Added.
2540         (WebCore::operator<<):
2541         * kcanvas/KCanvasClipper.h: Added.
2542         * kcanvas/KCanvasFilters.h:
2543         * kcanvas/KCanvasImage.h:
2544         * kcanvas/KCanvasMarker.cpp: Added.
2545         * kcanvas/KCanvasMarker.h: Added.
2546         * kcanvas/KCanvasMasker.cpp: Added.
2547         (WebCore::KCanvasMasker::KCanvasMasker):
2548         (WebCore::KCanvasMasker::setMask):
2549         (WebCore::KCanvasMasker::externalRepresentation):
2550         (WebCore::getMaskerById):
2551         * kcanvas/KCanvasMasker.h: Added.
2552         * kcanvas/KCanvasResource.cpp: Added.
2553         (WebCore::KCanvasResource::invalidate):
2554         (WebCore::KCanvasResource::externalRepresentation):
2555         (WebCore::getResourceById):
2556         (WebCore::getPaintServerById):
2557         * kcanvas/KCanvasResource.h: Added.
2558         * kcanvas/KCanvasResources.cpp: Removed.
2559         * kcanvas/KCanvasResources.h: Removed.
2560         * kcanvas/RenderPath.cpp:
2561         * kcanvas/RenderSVGContainer.cpp:
2562         * kcanvas/RenderSVGImage.cpp:
2563         * kcanvas/RenderSVGText.cpp:
2564         * kcanvas/device/KRenderingPaintServer.h:
2565         * kcanvas/device/quartz/KCanvasMaskerQuartz.h:
2566         * kcanvas/device/quartz/KCanvasResourcesQuartz.h:
2567         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
2568         * ksvg2/svg/SVGClipPathElement.h:
2569         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
2570         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
2571         * ksvg2/svg/SVGFECompositeElement.cpp:
2572         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
2573         * ksvg2/svg/SVGFELightElement.cpp:
2574         * ksvg2/svg/SVGFEOffsetElement.cpp:
2575         * ksvg2/svg/SVGFETurbulenceElement.cpp:
2576         * ksvg2/svg/SVGFilterElement.cpp:
2577         * ksvg2/svg/SVGLinearGradientElement.cpp:
2578         * ksvg2/svg/SVGMarkerElement.h:
2579         * ksvg2/svg/SVGMaskElement.h:
2580
2581 2006-09-19  Brady Eidson <beidson@apple.com>
2582
2583         Reviewed by Sarge Decker
2584
2585         <rdar://problem/4739892> and <rdar://problem/4729797>
2586         - WebCore::IconDatabase needs to have and respect an enabled() flag
2587         - Mail on ToT WebKit crashes in IconDatabase code when mailing a page from Safari
2588
2589         * bridge/mac/WebCoreIconDatabaseBridge.h:
2590         * bridge/mac/WebCoreIconDatabaseBridge.mm:
2591         (-[WebCoreIconDatabaseBridge _setEnabled:]): Added
2592         (-[WebCoreIconDatabaseBridge _isEnabled]): Added
2593         * loader/icon/IconDatabase.cpp:
2594         (WebCore::IconDatabase::IconDatabase):
2595         (WebCore::IconDatabase::open): Don't open if disabled
2596         (WebCore::IconDatabase::removeAllIcons): Ignore if disabled/closed
2597         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Ignore if disabled/closed
2598         (WebCore::IconDatabase::iconForPageURL): Default Icon if disabled/closed
2599         (WebCore::IconDatabase::isIconExpiredForIconURL): Default return if disabled/closed
2600         (WebCore::IconDatabase::iconURLForPageURL): Default return if disabled/closed
2601         (WebCore::IconDatabase::retainIconForPageURL): Ignore if disabled/closed
2602         (WebCore::IconDatabase::releaseIconForPageURL): Ignore if disabled/closed
2603         (WebCore::IconDatabase::releaseIconURL):
2604         (WebCore::IconDatabase::setIconDataForIconURL): Ignore if disabled/closed
2605         (WebCore::IconDatabase::setIconURLForPageURL): Ignore if disabled/closed
2606         (WebCore::IconDatabase::hasEntryForIconURL): Default return if disabled/closed
2607         (WebCore::IconDatabase::setEnabled): Added
2608         * loader/icon/IconDatabase.h:
2609         (WebCore::IconDatabase::enabled): Added
2610         * page/Frame.cpp:
2611         (WebCore::Frame::endIfNotLoading): do an IconDatabase::enabled() check before bothering to load the icon
2612         * platform/mac/ResourceLoaderMac.mm: Removed extraneous #include
2613
2614 2006-09-20  David Hyatt  <hyatt@apple.com>
2615
2616         Massage mouse wheel handling so that it is more cross-platform.  Make
2617         all the work happen in handleWheelEvent on the FrameView.
2618
2619         Reviewed by bradee-oh
2620
2621         * bridge/mac/FrameMac.mm:
2622         (WebCore::FrameMac::wheelEvent):
2623         * page/FrameView.cpp:
2624         (WebCore::FrameView::handleWheelEvent):
2625         * platform/PlatformWheelEvent.h:
2626         (WebCore::PlatformWheelEvent::platformDelta):
2627         (WebCore::PlatformWheelEvent::delta):
2628         * platform/mac/WheelEventMac.mm:
2629         (WebCore::platformDeltaForEvent):
2630         (WebCore::PlatformWheelEvent::PlatformWheelEvent):
2631         * rendering/RenderLayer.cpp:
2632         (WebCore::RenderLayer::scroll):
2633         * rendering/RenderObject.cpp:
2634         (WebCore::RenderObject::scroll):
2635
2636 2006-09-19  Eric Seidel  <eric@eseidel.com>
2637
2638         Reviewed by adele.
2639
2640         Improve test output for filters with bounding-box relative sizes.
2641         http://bugs.webkit.org/show_bug.cgi?id=8585
2642
2643         Many test results updated.
2644
2645         * kcanvas/KCanvasFilters.cpp:
2646         (WebCore::KCanvasFilter::externalRepresentation):
2647
2648 2006-09-19  Eric Seidel  <eric@eseidel.com>
2649
2650         Reviewed by adele.
2651         
2652         Markers should clip to their viewport.
2653         http://bugs.webkit.org/show_bug.cgi?id=5967
2654
2655         Test: svg/custom/marker-overflow-clip.svg
2656
2657         * kcanvas/KCanvasResources.cpp:
2658         (WebCore::KCanvasMarker::KCanvasMarker):
2659         (WebCore::KCanvasMarker::setMarker):
2660         (WebCore::KCanvasMarker::draw):
2661         * kcanvas/KCanvasResources.h:
2662         (WebCore::KCanvasMasker::mask):
2663         * ksvg2/svg/SVGMarkerElement.cpp:
2664         (WebCore::SVGMarkerElement::SVGMarkerElement):
2665         (WebCore::SVGMarkerElement::parseMappedAttribute):
2666         (WebCore::SVGMarkerElement::canvasResource):
2667         (WebCore::SVGMarkerElement::createRenderer):
2668
2669 2006-09-19  Justin Garcia  <justin.garcia@apple.com>
2670
2671         Reviewed by eseidel
2672
2673         Backing out my recent change.
2674
2675         * css/cssstyleselector.cpp:
2676         (WebCore::CSSStyleSelector::adjustRenderStyle): 
2677
2678 2006-09-19  Brady Eidson  <beidson@apple.com>
2679
2680         Reviewed by Kevin McCullough
2681
2682         http://bugs.webkit.org/show_bug.cgi?id=10940
2683         Opening a PDF in a new tab/window creates a documentless-frame
2684         and we deref the document without checking its validity
2685
2686         * page/Frame.cpp:
2687         (WebCore::Frame::iconURL):
2688
2689 2006-09-19  Justin Garcia  <justin.garcia@apple.com>
2690
2691         Reviewed by harrison
2692         
2693         <rdar://problem/4735272>
2694         Can not click into link in programmatically editable content
2695
2696         * css/cssstyleselector.cpp:
2697         (WebCore::CSSStyleSelector::adjustRenderStyle): We stopped using
2698         userModify to implement document wide editability.
2699
2700 2006-09-19  MorganL  <morlmor@yahoo.com>
2701
2702         Reviewed by Darin and landed by Brady
2703
2704         Fixes http://bugs.webkit.org/show_bug.cgi?id=10939
2705         Build broken when SVG is not enabled.
2706
2707         * dom/XMLTokenizer.cpp:
2708         (WebCore::XMLTokenizer::startElementNs):
2709
2710 2006-09-19  Justin Garcia  <justin.garcia@apple.com>
2711
2712         Reviewed by harrison
2713         
2714         <rdar://problem/4727383> REGRESSION: Pasting plain text with tabs into Blot converts the tabs to single spaces
2715
2716         Pasting plain text results in a match style paste, and the insertion
2717         position is whitespace normal, which clobbers the whitespace:pre on 
2718         tab spans.  Skip changes to the whitespace mode when computing a style
2719         change for tab spans or the text nodes inside tab spans.
2720
2721         * editing/ApplyStyleCommand.cpp:
2722         (WebCore::StyleChange::init): Don't change the whitespace mode inside
2723         tab spans.
2724
2725 2006-09-19  David Hyatt  <hyatt@apple.com>
2726
2727         Fix for bug 5298, shape=default not supported for image maps.  Implement
2728         support for it.
2729
2730         Reviewed by timo
2731
2732         * html/HTMLAreaElement.cpp:
2733         (WebCore::HTMLAreaElement::getRegion):
2734         * html/HTMLMapElement.cpp:
2735         (WebCore::HTMLMapElement::mapMouseEvent):
2736
2737 2006-09-19  Adam Roben  <aroben@apple.com>
2738
2739         Reviewed by Adele.
2740
2741         Fixes http://bugs.webkit.org/show_bug.cgi?id=10824
2742         "no file selected" placeholder text missing from file upload control
2743
2744         * WebCore.xcodeproj/project.pbxproj:
2745         * rendering/RenderFileUploadControl.cpp: Remove class
2746         RenderFileUploadInnerFileBox, rename defaultFilenameNumChars to
2747         defaultWidthNumChars
2748         (WebCore::RenderFileUploadControl::RenderFileUploadControl): Call
2749         RenderBlock constructor instead of RenderFlexibleBox, 
2750         (WebCore::RenderFileUploadControl::setStyle): Remove references to
2751         m_fileBox.
2752         (WebCore::RenderFileUploadControl::valueChanged): Call repaint()
2753         instead of updateIconAndFileName() (which has been removed)
2754         (WebCore::RenderFileUploadControl::updateFromElement): Remove
2755         references to m_fileBox, don't call updateIconAndFilename()
2756         (WebCore::RenderFileUploadControl::maxFilenameWidth): Calculate width
2757         without using m_fileBox
2758         (WebCore::RenderFileUploadControl::createButtonStyle): Remove
2759         now-unnecessary display:box rule.
2760         (WebCore::RenderFileUploadControl::paintObject): Remove redundant call
2761         to paintingDisabled() now that Icon::paint() does it, and add code to
2762         paint the filename directly.
2763         (WebCore::RenderFileUploadControl::calcMinMaxWidth): Move this method
2764         out of RenderFileUploadInnerFileBox and into RenderFileUploadControl
2765         * rendering/RenderFileUploadControl.h: Make RenderFileUploadControl a
2766         subclass of RenderBlock instead of RenderFlexibleBox, remove
2767         updateIconAndFilename() method, remove m_fileBox instance variable.
2768
2769 2006-09-19  Eric Seidel  <eric@eseidel.com>
2770
2771         Reviewed by hyatt.
2772
2773         Exceptions thrown from <script> tags in XHTML/SVG docs show the wrong line numbers
2774         http://bugs.webkit.org/show_bug.cgi?id=10846
2775         
2776         No automated test case possible until http://bugs.webkit.org/show_bug.cgi?id=10905 is resolved.
2777
2778         * dom/XMLTokenizer.cpp:
2779         (WebCore::XMLTokenizer::XMLTokenizer):
2780         (WebCore::XMLTokenizer::startElementNs):
2781         (WebCore::XMLTokenizer::endElementNs):
2782
2783 2006-09-19  Krzysztof Kowalczyk <kkowalczyk@gmail.com>
2784
2785         Reviewed by eseidel.  Landed by eseidel.
2786         
2787         Build fix only, no tests affected.
2788
2789         * platform/gdk/FontPlatformDataGdk.cpp:
2790         (WebCore::FontPlatformData::FontPlatformData):
2791         (WebCore::FontPlatformData::~FontPlatformData):
2792         * platform/gdk/FrameGdk.h:
2793         * platform/gdk/TemporaryLinkStubs.cpp:
2794         (FrameGdk::isLoadTypeReload):
2795         (FrameGdk::originalRequestURL):
2796         (IconDatabase::setIconURLForPageURL):
2797
2798 2006-09-19  David Hyatt  <hyatt@apple.com>
2799
2800         Refine the fix for 9805 to really get all the complex cases right.
2801
2802         Reviewed by Eric
2803
2804         * rendering/RenderBlock.cpp:
2805         (WebCore::RenderBlock::clearFloatsIfNeeded):
2806         (WebCore::RenderBlock::handleBottomOfBlock):
2807
2808 2006-09-18  David Hyatt  <hyatt@apple.com>
2809
2810         Fix for 9805, <hr> not positioned properly following a previous empty sibling
2811         that had clear:both set on it.  Update self-collapsing block clearance
2812         behavior to match what is specified in the latest draft of CSS2.1.
2813
2814         Reviewed by Eric
2815
2816         Added fast/block/margin-collapse/empty-clear-blocks.html
2817
2818         * rendering/RenderBlock.cpp:
2819         (WebCore::RenderBlock::clearFloatsIfNeeded):
2820         (WebCore::RenderBlock::handleBottomOfBlock):
2821
2822 2006-09-18  MorganL  <morlmor@yahoo.com>
2823
2824         Reviewed by Brady, landed by Brady
2825
2826         Send receivedResponse callback to ResourceLoaderClient when loading
2827         file URLs.
2828
2829         See http://bugs.webkit.org/show_bug.cgi?id=10845
2830
2831         * platform/win/ResourceLoaderWin.cpp:
2832         (WebCore::ResourceLoader::fileLoadTimer):
2833
2834 2006-09-18  Brady Eidson  <beidson@apple.com>
2835
2836         Reviewed by Anders
2837
2838         <rdar://problem/3028061> - WebKit never updates favicon
2839         The WebKit enforced expiration date for icons has worked for some time, but the
2840         move to the new Icon Loader broke the "always get the icon if the user refreshes the page" 
2841         functionality.  This patch fixes that up, along with some other architectural improvements,
2842         the main one being that WebCore::Document now contains an iconURL for the Frame to query if needed.
2843
2844         * bridge/mac/FrameMac.h: Added isLoadTypeReload()
2845         * bridge/mac/FrameMac.mm:
2846         (WebCore::FrameMac::isLoadTypeReload): Implementation, calls into the bridge
2847         * bridge/mac/WebCoreFrameBridge.h: Added isLoadTypeReload:
2848         * bridge/win/FrameWin.h: Added isLoadTypeReload() for temporary link stub
2849         * dom/Document.h: Added m_iconURL
2850         (WebCore::Document::iconURL): Added
2851         (WebCore::Document::setIconURL): Ditto
2852         * html/HTMLLinkElement.cpp:
2853         (WebCore::HTMLLinkElement::process): Sets the iconURL in the Document instead of the Frame
2854         * page/Frame.cpp:
2855         (WebCore::Frame::iconURL): Calculates the iconURL based on the document, then the default favicon.ico url
2856         (WebCore::Frame::endIfNotLoading): Checks for the load type - always loads icon on Reload
2857         * page/Frame.h: Nuked setIconURL(), added isLoadTypeReload()
2858         * page/FramePrivate.h: Nuked IconURL
2859         * platform/win/TemporaryLinkStubs.cpp:
2860         (FrameWin::isLoadTypeReload):
2861
2862 2006-09-18  Sam Weinig  <sam.weinig@gmail.com>
2863
2864         Reviewed by Tim H.
2865
2866         - Re-add private method [DOMRGBColor _color] to DOMPrivate.h as
2867           it is it turns out that AppKit uses it.
2868
2869         * bindings/objc/DOMPrivate.h:
2870         * bindings/objc/DOMRGBColor.mm:
2871         (-[DOMRGBColor _color]):
2872
2873 2006-09-18  Sam Weinig  <sam.weinig@gmail.com>
2874
2875         Reviewed by Tim H.
2876
2877         Patch for http://bugs.webkit.org/show_bug.cgi?id=10903
2878         Yet Another Objective-C Bindings Patch
2879
2880         - Whitespace cleanup for IDLParser.pm
2881
2882         - Split DOMException, DOMRangeException, DOMXPathException, DOMEventsException
2883           and DOMAbstractView into their own files.
2884
2885         - Remove private method [DOMRGBColor _color] from DOMPrivate.h as
2886           it is not used and a public method is available now.
2887
2888         - Remove internal method [DOMDocument _ownerElement] from DOMInternal.h
2889           as it not used.
2890
2891         - Auto-generate method isContentEditable for DOMNode.
2892
2893         - General cleanup of bindings code including removing unneeded #imports
2894           and whitespace cleanup
2895
2896         * WebCore.xcodeproj/project.pbxproj:
2897         * bindings/objc/DOM.mm:
2898         (addElementClass):
2899         (elementClass):
2900         (-[DOMNode _initWithNode:WebCore::]):
2901         (+[DOMNode _nodeWith:WebCore::]):
2902         (-[DOMNode WebCore::]):
2903         (-[DOMNode KJS::Bindings::]):
2904         (-[DOMNode addEventListener:::]):
2905         (-[DOMNode removeEventListener:::]):
2906         (-[DOMNode dispatchEvent:]):
2907         (-[DOMElement image]):
2908         (-[DOMElement _font]):
2909         (-[DOMElement _imageTIFFRepresentation]):
2910         (-[DOMElement _getURLAttribute:]):
2911         (-[DOMElement _NPObject]):
2912         (-[DOMElement isFocused]):
2913         (-[DOMRange dealloc]):
2914         (-[DOMRange finalize]):
2915         (-[DOMRange description]):
2916         (-[DOMRange startContainer]):
2917         (-[DOMRange startOffset]):
2918         (-[DOMRange endContainer]):
2919         (-[DOMRange endOffset]):
2920         (-[DOMRange collapsed]):
2921         (-[DOMRange commonAncestorContainer]):
2922         (-[DOMRange setStart::]):
2923         (-[DOMRange setEnd::]):
2924         (-[DOMRange setStartBefore:]):
2925         (-[DOMRange setStartAfter:]):
2926         (-[DOMRange setEndBefore:]):
2927         (-[DOMRange setEndAfter:]):
2928         (-[DOMRange collapse:]):
2929         (-[DOMRange selectNode:]):
2930         (-[DOMRange selectNodeContents:]):
2931         (-[DOMRange compareBoundaryPoints::]):
2932         (-[DOMRange deleteContents]):
2933         (-[DOMRange extractContents]):
2934         (-[DOMRange cloneContents]):
2935         (-[DOMRange insertNode:]):
2936         (-[DOMRange surroundContents:]):
2937         (-[DOMRange cloneRange]):
2938         (-[DOMRange toString]):
2939         (-[DOMRange detach]):
2940         (-[DOMRange _initWithRange:WebCore::]):
2941         (+[DOMRange _rangeWith:WebCore::]):
2942         (-[DOMRange WebCore::]):
2943         (-[DOMNodeFilter _initWithNodeFilter:WebCore::]):
2944         (+[DOMNodeFilter _nodeFilterWith:WebCore::]):
2945         (-[DOMNodeFilter WebCore::]):
2946         (-[DOMNodeFilter dealloc]):
2947         (-[DOMNodeFilter finalize]):
2948         (-[DOMNodeIterator _initWithNodeIterator:WebCore::filter:]):
2949         (-[DOMNodeIterator WebCore::]):
2950         (+[DOMNodeIterator _nodeIteratorWith:WebCore::filter:]):
2951         (-[DOMTreeWalker _initWithTreeWalker:WebCore::filter:]):
2952         (-[DOMTreeWalker WebCore::]):
2953         (+[DOMTreeWalker _treeWalkerWith:WebCore::filter:]):
2954         (ObjCNodeFilterCondition::acceptNode):
2955         (-[DOMDocument createNodeIterator::::]):
2956         (-[DOMDocument createTreeWalker::::]):
2957         (ObjCEventListener::find):
2958         (ObjCEventListener::create):
2959         (ObjCEventListener::handleEvent):
2960         * bindings/objc/DOMAbstractView.h: Added.
2961         * bindings/objc/DOMAbstractView.mm: Added.
2962         (-[DOMAbstractView document]):
2963         (-[DOMAbstractView WebCore::]):
2964         (-[DOMAbstractView _initWithAbstractView:WebCore::]):
2965         (+[DOMAbstractView _abstractViewWith:WebCore::]):
2966         * bindings/objc/DOMCSS.mm:
2967         (-[DOMStyleSheet _initWithStyleSheet:WebCore::]):
2968         (+[DOMStyleSheet _styleSheetWith:WebCore::]):
2969         (+[DOMCSSStyleSheet _CSSStyleSheetWith:WebCore::]):
2970         (-[DOMCSSRule _initWithRule:WebCore::]):
2971         (+[DOMCSSRule _CSSRuleWith:WebCore::]):
2972         (-[DOMCSSValue _initWithValue:WebCore::]):
2973         (+[DOMCSSValue _CSSValueWith:WebCore::]):
2974         (+[DOMCSSPrimitiveValue _CSSPrimitiveValueWith:WebCore::]):
2975         (-[DOMDocument getComputedStyle::]):
2976         (-[DOMDocument getMatchedCSSRules::]):
2977         * bindings/objc/DOMCore.h:
2978         * bindings/objc/DOMEventException.h: Added.
2979         * bindings/objc/DOMEvents.h:
2980         * bindings/objc/DOMEvents.mm:
2981         * bindings/objc/DOMException.h: Added.
2982         * bindings/objc/DOMHTML.mm:
2983         (-[DOMHTMLDocument _createDocumentFragmentWithMarkupString:baseURLString:]):
2984         (viewForElement):
2985         (-[DOMHTMLInputElement _replaceCharactersInRange:withString:selectingFromIndex:]):
2986         (-[DOMHTMLInputElement _selectedRange]):
2987         (-[DOMHTMLInputElement _setAutofilled:]):
2988         * bindings/objc/DOMInternal.h:
2989         * bindings/objc/DOMObject.h:
2990         * bindings/objc/DOMPrivate.h:
2991         * bindings/objc/DOMRange.h:
2992         * bindings/objc/DOMRangeException.h: Added.
2993         * bindings/objc/DOMViews.h:
2994         * bindings/objc/DOMViews.mm: Removed.
2995         * bindings/objc/DOMXPath.h:
2996         * bindings/objc/DOMXPathException.h: Added.
2997         * bindings/scripts/IDLParser.pm:
2998         * dom/Node.idl:
2999
3000 2006-09-18  Brady Eidson  <beidson@apple.com>
3001
3002         Windows build fix
3003
3004         * platform/win/TemporaryLinkStubs.cpp:
3005         (IconDatabase::setIconURLForPageURL):
3006
3007 2006-09-18  David Hyatt  <hyatt@apple.com>
3008
3009         Fix for bug 3969, hr width doesn't update when it clears a float.  This
3010         was also a problem with tables and overflow sections.
3011
3012         Reviewed by Eric
3013
3014         Added fast/block/float/width-update-after-clear.html
3015
3016         * rendering/RenderBlock.cpp:
3017         (WebCore::RenderBlock::collapseMargins):
3018         (WebCore::RenderBlock::clearFloatsIfNeeded):
3019
3020 2006-09-18  Brady Eidson  <beidson@apple.com>
3021
3022         Reviewed by John
3023
3024         http://bugs.webkit.org/show_bug.cgi?id=10907
3025         REGRESSION: New Icon Loaders don't handle certain non-server-root URLs correctly
3026
3027         * bridge/mac/FrameMac.h: Changed originalRequestURL() to virtual
3028         * bridge/win/FrameWin.h: Added originalRequestURL()
3029         * loader/icon/IconLoader.cpp:
3030         (IconLoader::receivedAllData): Moved the "pageURL to iconURL mapping logic" to Frame::commitIconURLToIconDatabase()
3031         * page/Frame.cpp:
3032         (WebCore::Frame::iconURL): Construct the icon URL from *only* the protocol and host of the frame's url.
3033         (WebCore::Frame::endIfNotLoading): Call commitIconURLToIconDatabase() if we're not kicking off an icon load
3034         (WebCore::Frame::commitIconURLToIconDatabase): Map the completed doc's pageURL to the iconURL
3035         * page/Frame.h: Added pure virtual originalRequestURL()
3036         * platform/win/TemporaryLinkStubs.cpp:
3037         (FrameWin::originalRequestURL): Added
3038
3039 2006-09-18  Rob Buis  <buis@kde.org>
3040
3041         Reviewed by Maciej.
3042
3043         http://bugs.webkit.org/show_bug.cgi?id=10807
3044         REGRESSION (r16259): Repro crash on manual-tests/svg-repaint-image.svg
3045
3046         Make sure the paint method is not exited without popping
3047         context and transparency layer.
3048
3049         WARNING: NO TEST CASES ADDED OR CHANGED
3050
3051         * kcanvas/RenderSVGImage.cpp:
3052         (WebCore::RenderSVGImage::paint):
3053
3054 2006-09-18  Graham Dennis  <graham.dennis@gmail.com>
3055
3056         Reviewed by Eric.
3057         
3058         - fix for http://bugs.webkit.org/show_bug.cgi?id=10896
3059         REGRESSION: WebKit can't be built with SVG disabled
3060         
3061         * bindings/scripts/CodeGeneratorObjC.pm:
3062         For each file generated add a #ifdef <something>_SUPPORT / #endif
3063         pair if the idl file has a Conditional extended attribute
3064
3065 2006-09-17  Eric Seidel  <eric@eseidel.com>
3066
3067         Reviewed by ap.
3068         
3069         REGRESSION (r16245): double-clicking on javascript exceptions fails to show source
3070         http://bugs.webkit.org/show_bug.cgi?id=10813
3071
3072         * bridge/mac/WebCoreFrameBridge.mm:
3073         (+[WebCoreFrameBridge stringWithData:textEncodingName:]):
3074
3075 2006-09-17  Alexey Proskuryakov  <ap@nypop.com>
3076
3077         Reviewed by Hyatt.
3078
3079         http://bugs.webkit.org/show_bug.cgi?id=10779
3080         REGRESSION: Animated GIF ignores frame intervals and loops infinitely
3081
3082         No test possible.
3083
3084         * platform/Image.cpp:
3085         (WebCore::Image::shouldAnimate): Don't check that there is more than one frame,
3086         maybe the rest just hasn't been loaded yet.
3087         (WebCore::Image::startAnimation): Move the frame count check here - there is no need
3088         to start animating before we get at least two frames.
3089
3090 2006-09-17  Brady Eidson <beidson@apple.com>
3091
3092         Reviewed by Sarge
3093
3094         IconLoader now gracefully handles the condition where there's no document in the frame
3095         (ie. PDFs)
3096
3097         * loader/icon/IconLoader.cpp:
3098         (IconLoader::startLoading):
3099
3100 2006-09-17  David Hyatt  <hyatt@apple.com>
3101
3102         Fix for bug 10899, rework how CSS keywords work to be smarter about
3103         using the correct size when generic families change (e.g., monospace to
3104         serif and vice versa).
3105
3106         Reviewed by aroben
3107
3108         Added fast/text/basic/generic-family-changes.html
3109
3110         * css/cssstyleselector.cpp:
3111         (WebCore::CSSStyleSelector::applyProperty):
3112         (WebCore::CSSStyleSelector::checkForGenericFamilyChange):
3113         (WebCore::CSSStyleSelector::fontSizeForKeyword):
3114         * css/cssstyleselector.h:
3115         * dom/Document.cpp:
3116         (WebCore::Document::recalcStyle):
3117         * platform/FontDescription.h:
3118         (WebCore::FontDescription::FontDescription):
3119         (WebCore::FontDescription::keywordSize):
3120         (WebCore::FontDescription::setKeywordSize):
3121         (WebCore::FontDescription::operator==):
3122
3123 2006-09-17  Alexey Proskuryakov  <ap@nypop.com>
3124
3125         Reviewed by Brady.
3126
3127         http://bugs.webkit.org/show_bug.cgi?id=10852
3128         REGRESSION: Reproducible crash in XMLHttpRequest::abort()
3129
3130         Test: http/tests/xmlhttprequest/xhr-onunload.html
3131
3132         * xml/xmlhttprequest.cpp:
3133         (WebCore::XMLHttpRequest::send): Check the return value of ResourceLoader::start().
3134
3135         * loader/icon/IconLoader.cpp:
3136         (IconLoader::startLoading): Fix a similar latent bug here.
3137
3138 2006-09-17  Adam Roben  <aroben@apple.com>
3139
3140         Build fix.
3141
3142         * loader/icon/IconDatabase.cpp:
3143
3144 2006-09-17  Anders Carlsson  <acarlsson@apple.com>
3145
3146         Reviewed by Brady.
3147
3148         Add simplifyWhiteSpace and stripWhiteSpace to the String class. 
3149         Change the XSLT Parameter Map to use Strings instead of StringImpls.
3150         General cleanup.
3151
3152         * bindings/js/JSXSLTProcessor.cpp:
3153         (KJS::XSLTProcessorProtoFunc::callAsFunction):
3154         * bindings/js/kjs_events.cpp:
3155         (KJS::JSAbstractEventListener::handleEvent):
3156         * bindings/js/kjs_window.cpp:
3157         (KJS::ScheduledAction::execute):
3158         * css/MediaList.cpp:
3159         (WebCore::MediaList::setMediaText):
3160         * dom/Document.cpp:
3161         (WebCore::Document::processHttpEquiv):
3162         * editing/ApplyStyleCommand.cpp:
3163         (WebCore::StyleChange::init):
3164         * html/HTMLDocument.cpp:
3165         (WebCore::parseDocTypeDeclaration):
3166         * html/HTMLLinkElement.cpp:
3167         (WebCore::HTMLLinkElement::parseMappedAttribute):
3168         * html/HTMLObjectElement.cpp:
3169         (WebCore::HTMLObjectElement::HTMLObjectElement):
3170         (WebCore::HTMLObjectElement::parseMappedAttribute):
3171         (WebCore::HTMLObjectElement::attach):
3172         (WebCore::HTMLObjectElement::setComplete):
3173         (WebCore::HTMLObjectElement::detach):
3174         (WebCore::HTMLObjectElement::recalcStyle):
3175         (WebCore::HTMLObjectElement::childrenChanged):
3176         (WebCore::HTMLObjectElement::isImageType):
3177         * html/HTMLObjectElement.h:
3178         * html/HTMLOptionElement.cpp:
3179         (WebCore::HTMLOptionElement::value):
3180         * html/HTMLSelectElement.cpp:
3181         (WebCore::HTMLSelectElement::appendFormData):
3182         * html/HTMLTokenizer.cpp:
3183         (WebCore::HTMLTokenizer::parseTag):
3184         * ksvg2/svg/SVGColor.cpp:
3185         (WebCore::SVGColor::setRGBColor):
3186         * ksvg2/svg/SVGDescElement.cpp:
3187         (WebCore::SVGDescElement::description):
3188         * platform/PlatformString.h:
3189         * platform/String.cpp:
3190         (WebCore::String::stripWhiteSpace):
3191         (WebCore::String::simplifyWhiteSpace):
3192         * platform/StringImpl.cpp:
3193         (WebCore::isSpace):
3194         (WebCore::parseLength):
3195         (WebCore::StringImpl::stripWhiteSpace):
3196         (WebCore::StringImpl::simplifyWhiteSpace):
3197         (WebCore::StringImpl::toInt):
3198         * platform/StringImpl.h:
3199         * platform/mac/ClipboardMac.mm:
3200         (WebCore::cocoaTypeFromMIMEType):
3201         * rendering/RenderPartObject.cpp:
3202         (WebCore::RenderPartObject::updateWidget):
3203         * xml/XPathFunctions.cpp:
3204         (WebCore::XPath::FunNormalizeSpace::doEvaluate):
3205         * xml/XPathGrammar.y:
3206         * xml/XPathStep.cpp:
3207         (WebCore::XPath::Step::nodeTestMatches):
3208         * xml/XSLStyleSheet.cpp:
3209         (WebCore::XSLStyleSheet::loadChildSheets):
3210         (WebCore::XSLStyleSheet::locateStylesheetSubResource):
3211         * xml/XSLTProcessor.cpp:
3212         (WebCore::xsltParamArrayFromParameterMap):
3213         (WebCore::XSLTProcessor::setParameter):
3214         (WebCore::XSLTProcessor::getParameter):
3215         (WebCore::XSLTProcessor::removeParameter):
3216         * xml/XSLTProcessor.h:
3217         * xml/xmlhttprequest.cpp:
3218         (WebCore::XMLHttpRequest::getStatusText):
3219
3220 2006-09-17  David Hyatt  <hyatt@apple.com>
3221
3222         Fix for bugzilla bugs 10895 and 6336, fieldsets misbehaving when floats
3223         are declared right before the fieldsets.  It turns out fieldsets in other
3224         browsers avoid floats (like overflow:auto/hidden/scroll sections do), so
3225         adding that behavior to fieldset fixes the bug.
3226
3227         Made avoidsFloats virtual and did some refactoring to make tables, flexboxes
3228         and fieldsets all subclass.
3229
3230         Reviewed by anders
3231
3232         Added fast/forms/float-before-fieldset.html
3233
3234         * rendering/RenderFieldset.h:
3235         (WebCore::RenderFieldset::avoidsFloats):
3236         * rendering/RenderFlexibleBox.h:
3237         (WebCore::RenderFlexibleBox::avoidsFloats):
3238         * rendering/RenderObject.cpp:
3239         (WebCore::RenderObject::avoidsFloats):
3240         * rendering/RenderObject.h:
3241         * rendering/RenderTable.h:
3242         (WebCore::RenderTable::avoidsFloats):
3243
3244 2006-09-17  David Hyatt  <hyatt@apple.com>
3245
3246         Fix for bugzilla bug 3240, implement support for the HTML4 "frame" and
3247         "rules" attributes on tables.
3248
3249         Reviewed by bradee-oh
3250
3251         Well-covered by existing layout tests.
3252
3253         * html/HTMLTableCellElement.cpp:
3254         (WebCore::HTMLTableCellElement::additionalAttributeStyleDecl):
3255         * html/HTMLTableColElement.cpp:
3256         (WebCore::HTMLTableColElement::additionalAttributeStyleDecl):
3257         * html/HTMLTableColElement.h:
3258         * html/HTMLTableElement.cpp:
3259         (WebCore::HTMLTableElement::HTMLTableElement):
3260         (WebCore::HTMLTableElement::~HTMLTableElement):
3261         (WebCore::HTMLTableElement::setCaption):
3262         (WebCore::HTMLTableElement::setTHead):
3263         (WebCore::HTMLTableElement::setTFoot):
3264         (WebCore::HTMLTableElement::setTBody):
3265         (WebCore::HTMLTableElement::createTHead):
3266         (WebCore::HTMLTableElement::deleteTHead):
3267         (WebCore::HTMLTableElement::createTFoot):
3268         (WebCore::HTMLTableElement::deleteTFoot):
3269         (WebCore::HTMLTableElement::createCaption):
3270         (WebCore::HTMLTableElement::deleteCaption):
3271         (WebCore::HTMLTableElement::insertRow):
3272         (WebCore::HTMLTableElement::deleteRow):
3273         (WebCore::HTMLTableElement::addChild):
3274         (WebCore::HTMLTableElement::childrenChanged):
3275         (WebCore::HTMLTableElement::mapToEntry):
3276         (WebCore::HTMLTableElement::parseMappedAttribute):
3277         (WebCore::HTMLTableElement::additionalAttributeStyleDecl):
3278         (WebCore::HTMLTableElement::getSharedCellDecl):
3279         (WebCore::HTMLTableElement::getSharedGroupDecl):
3280         (WebCore::HTMLTableElement::attach):
3281         * html/HTMLTableElement.h:
3282         (WebCore::HTMLTableElement::caption):
3283         (WebCore::HTMLTableElement::tHead):
3284         (WebCore::HTMLTableElement::tFoot):
3285         (WebCore::HTMLTableElement::):
3286         * html/HTMLTableRowElement.h:
3287         * html/HTMLTableSectionElement.cpp:
3288         (WebCore::HTMLTableSectionElement::additionalAttributeStyleDecl):
3289         * html/HTMLTableSectionElement.h:
3290
3291 2006-09-17  David Hyatt  <hyatt@apple.com>
3292
3293         Fix for bugzilla bug 4192, font size wrong for <tt> elements that
3294         specify their own new font-family list.  Make sure to always
3295         reset the generic family along with the family list when mapping in
3296         new font-family values.
3297
3298         Reviewed by bradee-oh
3299
3300         fast/text/basic/generic-family-reset.html
3301
3302         * css/cssstyleselector.cpp:
3303         (WebCore::CSSStyleSelector::applyProperty):
3304
3305 2006-09-16  Brady Eidson <beidson@apple.com>
3306
3307         Reviewed by Hyatt
3308
3309         Pruning code relating to WebKit's icon loader
3310
3311         * bridge/mac/WebCoreIconDatabaseBridge.h:
3312         * bridge/mac/WebCoreIconDatabaseBridge.mm:
3313         * loader/icon/IconDatabase.h:
3314         * page/Frame.cpp:
3315         (WebCore::Frame::endIfNotLoading): Moved a FIXME in from WebKit's IconLoader to 
3316         its new home
3317
3318 2006-09-16  Sam Weinig  <sam.weinig@gmail.com>
3319
3320         Reviewed by Tim H.
3321
3322         Patch for http://bugs.webkit.org/show_bug.cgi?id=10885
3323         Auto-generate DOMHTMLDocument for the Objective-C bindings
3324
3325         * DerivedSources.make:
3326         * WebCore.xcodeproj/project.pbxproj:
3327         * bindings/objc/DOMExtensions.h:
3328         * bindings/objc/DOMHTML.mm:
3329         (-[DOMHTMLDocument createDocumentFragmentWithText:]):
3330         * bindings/objc/DOMHTMLDocument.h: Removed.
3331         * bindings/objc/DOMHTMLDocument.mm: Removed.
3332         * bindings/objc/PublicDOMInterfaces.h:
3333         * bindings/scripts/CodeGeneratorObjC.pm:
3334         * html/HTMLDocument.idl:
3335         * platform/DeprecatedString.h:
3336         (WebCore::DeprecatedString::operator NSString*):
3337
3338 2006-09-16  Rob Buis  <buis@kde.org>
3339
3340         Reviewed by Eric.
3341
3342         http://bugs.webkit.org/show_bug.cgi?id=10866
3343         Code in kcanvas/ should not use Private
3344
3345         Remove Private classes and tweak coding style.
3346
3347         WARNING: NO TEST CASES ADDED OR CHANGED
3348
3349         * kcanvas/RenderPath.cpp:
3350         (WebCore::RenderPath::RenderPath):
3351         (WebCore::RenderPath::~RenderPath):
3352         (WebCore::RenderPath::localTransform):
3353         (WebCore::RenderPath::setLocalTransform):
3354         (WebCore::RenderPath::fillContains):
3355         (WebCore::RenderPath::relativeBBox):
3356         (WebCore::RenderPath::setPath):
3357         (WebCore::RenderPath::path):
3358         (WebCore::RenderPath::layout):
3359         * kcanvas/RenderPath.h:
3360         * kcanvas/RenderSVGContainer.cpp:
3361         (WebCore::RenderSVGContainer::RenderSVGContainer):
3362         (WebCore::RenderSVGContainer::~RenderSVGContainer):
3363         (WebCore::RenderSVGContainer::drawsContents):
3364         (WebCore::RenderSVGContainer::setDrawsContents):
3365         (WebCore::RenderSVGContainer::localTransform):
3366         (WebCore::RenderSVGContainer::setLocalTransform):
3367         (WebCore::RenderSVGContainer::layout):
3368         (WebCore::RenderSVGContainer::paint):
3369         (WebCore::RenderSVGContainer::setViewport):
3370         (WebCore::RenderSVGContainer::viewport):
3371         (WebCore::RenderSVGContainer::setViewBox):
3372         (WebCore::RenderSVGContainer::viewBox):
3373         (WebCore::RenderSVGContainer::setAlign):
3374         (WebCore::RenderSVGContainer::align):
3375         (WebCore::RenderSVGContainer::fillContains):
3376         (WebCore::RenderSVGContainer::strokeContains):
3377         (WebCore::RenderSVGContainer::setSlice):
3378         (WebCore::RenderSVGContainer::slice):
3379         * kcanvas/RenderSVGContainer.h:
3380         * kcanvas/device/KRenderingFillPainter.cpp:
3381         (WebCore::KRenderingFillPainter::KRenderingFillPainter):
3382         (WebCore::KRenderingFillPainter::~KRenderingFillPainter):
3383         (WebCore::KRenderingFillPainter::fillRule):
3384         (WebCore::KRenderingFillPainter::setFillRule):
3385         (WebCore::KRenderingFillPainter::opacity):
3386         (WebCore::KRenderingFillPainter::setOpacity):
3387         * kcanvas/device/KRenderingFillPainter.h:
3388         * kcanvas/device/KRenderingPaintServerGradient.cpp:
3389         (WebCore::KRenderingPaintServerGradient::KRenderingPaintServerGradient):
3390         (WebCore::KRenderingPaintServerGradient::~KRenderingPaintServerGradient):
3391         (WebCore::KRenderingPaintServerGradient::gradientStops):
3392         (WebCore::KRenderingPaintServerGradient::setGradientStops):
3393         (WebCore::KRenderingPaintServerGradient::spreadMethod):
3394         (WebCore::KRenderingPaintServerGradient::setGradientSpreadMethod):
3395         (WebCore::KRenderingPaintServerGradient::boundingBoxMode):
3396         (WebCore::KRenderingPaintServerGradient::setBoundingBoxMode):
3397         (WebCore::KRenderingPaintServerGradient::gradientTransform):
3398         (WebCore::KRenderingPaintServerGradient::setGradientTransform):
3399         (WebCore::KRenderingPaintServerLinearGradient::KRenderingPaintServerLinearGradient):
3400         (WebCore::KRenderingPaintServerLinearGradient::~KRenderingPaintServerLinearGradient):
3401         (WebCore::KRenderingPaintServerLinearGradient::gradientStart):
3402         (WebCore::KRenderingPaintServerLinearGradient::setGradientStart):
3403         (WebCore::KRenderingPaintServerLinearGradient::gradientEnd):
3404         (WebCore::KRenderingPaintServerLinearGradient::setGradientEnd):
3405         (WebCore::KRenderingPaintServerRadialGradient::KRenderingPaintServerRadialGradient):
3406         (WebCore::KRenderingPaintServerRadialGradient::~KRenderingPaintServerRadialGradient):
3407         (WebCore::KRenderingPaintServerRadialGradient::gradientCenter):
3408         (WebCore::KRenderingPaintServerRadialGradient::setGradientCenter):
3409         (WebCore::KRenderingPaintServerRadialGradient::gradientFocal):
3410         (WebCore::KRenderingPaintServerRadialGradient::setGradientFocal):
3411         (WebCore::KRenderingPaintServerRadialGradient::gradientRadius):
3412         (WebCore::KRenderingPaintServerRadialGradient::setGradientRadius):
3413         (WebCore::KRenderingPaintServerGradient::listener):
3414         (WebCore::KRenderingPaintServerGradient::setListener):
3415         * kcanvas/device/KRenderingPaintServerGradient.h:
3416         * kcanvas/device/KRenderingPaintServerPattern.cpp:
3417         (WebCore::KRenderingPaintServerPattern::KRenderingPaintServerPattern):
3418         (WebCore::KRenderingPaintServerPattern::~KRenderingPaintServerPattern):
3419         (WebCore::KRenderingPaintServerPattern::setBbox):
3420         (WebCore::KRenderingPaintServerPattern::bbox):
3421         (WebCore::KRenderingPaintServerPattern::boundingBoxMode):
3422         (WebCore::KRenderingPaintServerPattern::setBoundingBoxMode):
3423         (WebCore::KRenderingPaintServerPattern::tile):
3424         (WebCore::KRenderingPaintServerPattern::setTile):
3425         (WebCore::KRenderingPaintServerPattern::patternTransform):
3426         (WebCore::KRenderingPaintServerPattern::setPatternTransform):
3427         (WebCore::KRenderingPaintServerPattern::listener):
3428         (WebCore::KRenderingPaintServerPattern::setListener):
3429         * kcanvas/device/KRenderingPaintServerPattern.h:
3430         * kcanvas/device/KRenderingPaintServerSolid.cpp:
3431         (WebCore::KRenderingPaintServerSolid::KRenderingPaintServerSolid):
3432         (WebCore::KRenderingPaintServerSolid::~KRenderingPaintServerSolid):
3433         (WebCore::KRenderingPaintServerSolid::color):
3434         (WebCore::KRenderingPaintServerSolid::setColor):
3435         * kcanvas/device/KRenderingPaintServerSolid.h:
3436         * kcanvas/device/KRenderingStrokePainter.cpp:
3437         (WebCore::KRenderingStrokePainter::KRenderingStrokePainter):
3438         (WebCore::KRenderingStrokePainter::~KRenderingStrokePainter):
3439         (WebCore::KRenderingStrokePainter::strokeWidth):
3440         (WebCore::KRenderingStrokePainter::setStrokeWidth):
3441         (WebCore::KRenderingStrokePainter::strokeMiterLimit):
3442         (WebCore::KRenderingStrokePainter::setStrokeMiterLimit):
3443         (WebCore::KRenderingStrokePainter::strokeCapStyle):
3444         (WebCore::KRenderingStrokePainter::setStrokeCapStyle):
3445         (WebCore::KRenderingStrokePainter::strokeJoinStyle):
3446         (WebCore::KRenderingStrokePainter::setStrokeJoinStyle):
3447         (WebCore::KRenderingStrokePainter::dashOffset):
3448         (WebCore::KRenderingStrokePainter::setDashOffset):
3449         (WebCore::KRenderingStrokePainter::dashArray):
3450         (WebCore::KRenderingStrokePainter::setDashArray):
3451         (WebCore::KRenderingStrokePainter::opacity):
3452         (WebCore::KRenderingStrokePainter::setOpacity):
3453         (WebCore::KRenderingStrokePainter::dirty):
3454         (WebCore::KRenderingStrokePainter::setDirty):
3455         * kcanvas/device/KRenderingStrokePainter.h:
3456
3457 2006-09-16  Mark Rowe  <opendarwin.org@bdash.net.nz>
3458
3459         Reviewed by Anders.
3460
3461         http://bugs.webkit.org/show_bug.cgi?id=10887
3462         Fix build error
3463
3464         * bindings/objc/DOMPrivate.h: Remove reference to DOMEventPrivate.h.
3465
3466 2006-09-16  Sam Weinig  <sam.weinig@gmail.com>
3467
3468         Reviewed by Anders.
3469
3470         Fix for http://bugs.webkit.org/show_bug.cgi?id=10886
3471         REGRESSION (r16387): Reproducible crash when mousing over HTML document
3472
3473         - Special case method [DOMNode ownerDocument] to call document() instead
3474           or ownerDocument() to return to the old behavior. 
3475
3476         * WebCore.xcodeproj/project.pbxproj:
3477         * bindings/scripts/CodeGeneratorObjC.pm:
3478
3479 2006-09-15  Brady Eidson  <beidson@apple.com>
3480
3481         Reviewed by Tim Hatcher
3482
3483         <rdar://problem/4730811> - New IconDatabase needs to attempt to create its path.
3484         Otherwise new installs and new user accounts won't have any icons because the icon.db cannot be created
3485
3486         * loader/icon/IconDatabase.cpp: Removed a now obsolete FIXME
3487         (WebCore::makeAllDirectories): Added - candidate to be in a header for "platform neutral file utilities"
3488         (WebCore::IconDatabase::open): Make sure the directory exists
3489
3490 2006-09-15  Timothy Hatcher  <timothy@apple.com>
3491
3492         Reviewed by Brady.
3493
3494         Make new style ObjC methods public API.
3495
3496         * WebCore.xcodeproj/project.pbxproj:
3497         * bindings/objc/DOMPrivate.h:
3498         * bindings/objc/PublicDOMInterfaces.h:
3499
3500 2006-09-15  Sam Weinig  <sam.weinig@gmail.com>
3501
3502         Reviewed by Tim H.
3503
3504         Patch for http://bugs.webkit.org/show_bug.cgi?id=10870
3505         Auto-generate DOMNode for the Objective-C bindings
3506
3507         * DerivedSources.make:
3508         * WebCore.xcodeproj/project.pbxproj:
3509         * bindings/objc/DOM.mm:
3510         (-[DOMNode boundingBox]):
3511         (-[DOMNode lineBoxRects]):
3512         * bindings/objc/DOMEvents.h:
3513         * bindings/objc/DOMExtensions.h:
3514         * bindings/objc/DOMNode.h: Removed.
3515         * bindings/objc/DOMNode.mm: Removed.
3516         * bindings/objc/PublicDOMInterfaces.h:
3517         * bindings/scripts/CodeGeneratorObjC.pm:
3518         * dom/Node.idl:
3519
3520 2006-09-15  Timothy Hatcher  <timothy@apple.com>
3521
3522         Reviewed by Justin.
3523
3524         Removed alter selection logic from WebCoreFrameBridge and moved to SelectionController.
3525
3526         * bridge/mac/WebCoreFrameBridge.h:
3527         * bridge/mac/WebCoreFrameBridge.mm:
3528         (-[WebCoreFrameBridge centerSelectionInVisibleArea]):
3529         (-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
3530         (-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
3531         (-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
3532         (-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
3533         (-[WebCoreFrameBridge replaceMarkedTextWithText:]):
3534         (-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
3535         (-[WebCoreFrameBridge increaseSelectionListLevel]):
3536         (-[WebCoreFrameBridge increaseSelectionListLevelOrdered]):
3537         (-[WebCoreFrameBridge increaseSelectionListLevelUnordered]):
3538         (-[WebCoreFrameBridge decreaseSelectionListLevel]):
3539         (-[WebCoreFrameBridge insertLineBreak]):
3540         (-[WebCoreFrameBridge insertParagraphSeparator]):
3541         (-[WebCoreFrameBridge insertParagraphSeparatorInQuotedContent]):
3542         (-[WebCoreFrameBridge insertText:selectInsertedText:]):
3543         (-[WebCoreFrameBridge deleteKeyPressedWithSmartDelete:granularity:]):
3544         (-[WebCoreFrameBridge forwardDeleteKeyPressedWithSmartDelete:granularity:]):
3545         (createMouseEventFromDraggingInfo):
3546         * editing/SelectionController.cpp:
3547         (WebCore::SelectionController::moveTo):
3548         (WebCore::SelectionController::setSelection):
3549         (WebCore::SelectionController::modify):
3550         (WebCore::SelectionController::setBase):
3551         (WebCore::SelectionController::setExtent):
3552         * editing/SelectionController.h:
3553         * page/Frame.cpp:
3554         (WebCore::Frame::revealSelection):
3555         (WebCore::Frame::revealCaret):
3556         * page/Frame.h:
3557
3558 2006-09-15  Brady Eidson  <beidson@apple.com>
3559
3560         Reviewed by Anders
3561
3562         Added the ability to get a mutable char* from a CString, which will copy the internal
3563         buffer if the ref count is greater than 1 so your mutable char* won't affect any other
3564         referrer of that buffer.
3565
3566         * platform/CString.cpp:
3567         (WebCore::CString::mutableData):
3568         (WebCore::CString::copyBufferIfNeeded):
3569         * platform/CString.h:
3570
3571 2006-09-15  Justin Garcia  <justin.garcia@apple.com>
3572
3573         Reviewed by harrison
3574         
3575         <rdar://problem/4674869>
3576         REGRESSION: selecting text to write over results in cursor jumping to middle of next line
3577
3578         * editing/SelectionController.cpp:
3579         (WebCore::SelectionController::modify): Added lineBoundary to test fix.
3580         * editing/visible_units.cpp:
3581         (WebCore::endOfLine): If the last box on the line is a lineBreak, return the
3582         position before it, not after it.
3583
3584 2006-09-15  Krzysztof Kowalczyk  <kkowalczyk@gmail.com>
3585
3586         Reviewed by Adam.
3587
3588         http://bugs.webkit.org/show_bug.cgi?id=10864
3589         Bug 10864: Linux\GDK build fixes
3590
3591         * Projects/gdk/webcore-gdk.bkl:
3592         * WebCoreSources.bkl:
3593         * platform/gdk/FontCacheGdk.cpp:
3594         * platform/gdk/FontDataGdk.cpp:
3595         (WebCore::FontData::platformInit):
3596         * platform/gdk/FontGdk.cpp:
3597         (WebCore::Font::drawGlyphs):
3598         * platform/gdk/FrameGdk.cpp:
3599         (WebCore::FrameGdk::handleGdkEvent):
3600         * platform/gdk/FrameGdk.h:
3601         * platform/gdk/ImageGdk.cpp: Added.
3602         (WebCore::Image::initPlatformData):
3603         (WebCore::Image::invalidatePlatformData):
3604         (WebCore::Image::loadPlatformResource):
3605         (WebCore::Image::supportsType):
3606         * platform/gdk/RenderPopupMenuGdk.cpp:
3607         (WebCore::RenderPopupMenuGdk::hidePopup):
3608         * platform/gdk/RenderPopupMenuGdk.h:
3609         * platform/gdk/ScreenGdk.cpp:
3610         (WebCore::drawableForPage):
3611         (WebCore::screenRect):
3612         (WebCore::screenDepth):
3613         (WebCore::usableScreenRect):
3614         (WebCore::scaleFactor):
3615         * platform/gdk/SystemTimeLinux.cpp:
3616         (WebCore::currentTime):
3617         * platform/gdk/TemporaryLinkStubs.cpp:
3618         (FrameGdk::bindingRootObject):
3619         (FrameGdk::markMisspellings):
3620         (WebCore::screenDepthPerComponent):