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