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