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