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