Reviewed by Eric.
[WebKit-https.git] / WebCore / ChangeLog
1 2006-08-21  Alexey Proskuryakov  <ap@nypop.com>
2
3         Reviewed by Eric.
4
5         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10429
6           XSLTProcessor.transformToFragment crashes if the owner document is empty
7
8         Test: fast/js/xslt-fragment-in-empty-doc.html
9
10         * dom/XMLTokenizer.cpp:
11         (WebCore::XMLTokenizer::XMLTokenizer): Don't iterate over the element stack if it's empty.
12
13 2006-08-21  Brady Eidson  <beidson@apple.com>
14
15         Reviewed by Anders
16
17         -Added timer-based, deferred deletion of database records - PageURLs and Icons handled seperately
18          In the near future, we'll also have timer-based deferred *addition* of database records
19         -Keep retain/release counts in a hash instead of a DB table
20         -Keep only one hash record for the SiteIcons
21         -Renamed some methods for clarity
22
23         * bridge/mac/WebCoreIconDatabaseBridge.h: Renamed method for clarity
24         * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
25         (-[WebCoreIconDatabaseBridge _hasEntryForIconURL:]): Ditto
26         * loader/icon/IconDatabase.cpp:
27         (WebCore::IconDatabase::IconDatabase):
28         (WebCore::IconDatabase::open): Added new timer setup
29         (WebCore::IconDatabase::iconForPageURL): Only work with one hash of the SiteIcons
30         (WebCore::IconDatabase::retainIconForPageURL): Keep count in a hash
31         (WebCore::IconDatabase::releaseIconForPageURL): Keep count in a hash, use deferred deletion
32         (WebCore::IconDatabase::retainIconURL): Added
33         (WebCore::IconDatabase::releaseIconURL): Added
34         (WebCore::IconDatabase::forgetPageURL):  Added
35         (WebCore::IconDatabase::isIconURLRetained): New and improved simplicity
36         (WebCore::IconDatabase::setIconDataForIconURL): Cleanup
37         (WebCore::IconDatabase::setIconURLForPageURL):
38         (WebCore::IconDatabase::pruneUnretainedIconsOnStartup): Renamed
39         (WebCore::IconDatabase::pruneIconsPendingDeletion): Added
40         (WebCore::IconDatabase::hasEntryForIconURL): Renamed for clarity
41         * loader/icon/IconDatabase.h: Added multiple stuffs
42
43 2006-08-21  Brady Eidson  <beidson@apple.com>
44
45         Reviewed by Maciej's rubberstamp
46
47         Removed stale file references from the Xcode.proj
48
49         * WebCore.xcodeproj/project.pbxproj:
50
51 2006-08-20  Nikolas Zimmermann  <zimmermann@kde.org>
52
53         Reviewed by Maciej. Landed by rwlbuis.
54
55         Fixes parts of: http://bugzilla.opendarwin.org/show_bug.cgi?id=10463
56         WebKit should have Qt platform support
57
58         Removing HelperQt.h usage by creating appropriate operators
59         constructor in some of the platform classes, as suggested by Darin.
60
61         * CMakeLists.txt:
62         * platform/DeprecatedString.h:
63         * platform/Font.h:
64         * platform/PlatformString.h:
65         * platform/qt/ComboBoxQt.cpp:
66         (WebCore::PlatformComboBox::appendItem):
67         (WebCore::PlatformComboBox::appendGroupLabel):
68         (WebCore::PlatformComboBox::setFont):
69         * platform/qt/LineEditQt.cpp:
70         (WebCore::PlatformLineEdit::setFont):
71         (WebCore::PlatformLineEdit::setText):
72         (WebCore::PlatformLineEdit::text):
73         (WebCore::PlatformLineEdit::selectedText):
74         * platform/qt/ListBoxQt.cpp:
75         (WebCore::ListBox::setFont):
76         (WebCore::ListBox::appendItem):
77         * platform/qt/PlatformKeyboardEventQt.cpp:
78         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
79         * platform/qt/ScrollViewQt.cpp:
80         * platform/qt/StringQt.cpp: Added.
81         (WebCore::String::String):
82         (WebCore::String::operator QString):
83         (WebCore::DeprecatedString::operator QString):
84         * platform/qt/TextEditQt.cpp:
85         * platform/qt/WidgetQt.cpp:
86         (WebCore::Widget::setFont):
87
88 2006-08-18  Steve Falkenburg  <sfalken@apple.com>
89
90         Rubber stamped by adele.
91         
92         Fix call to WebFormDelegate's textFieldDidBeginEditing.
93
94         * rendering/RenderTextControl.cpp:
95         (WebCore::RenderTextControl::subtreeHasChanged):
96
97 2006-08-19  Nikolas Zimmermann  <zimmermann@kde.org>
98
99         Reviewed by Eric. Landed by rwlbuis.
100
101         Next chunk of the implementation for:
102         http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
103
104         WebKit should have Qt platform support
105
106         * platform/qt/KeyboardCodes.h: Added.
107         * platform/qt/PlatformKeyboardEventQt.cpp: Added.
108         (WebCore::keyIdentifierForQtKeyCode):
109         (WebCore::windowsKeyCodeForKeyEvent):
110         (WebCore::PlatformKeyboardEvent::PlatformKeyboardEvent):
111         * platform/qt/PlatformMouseEventQt.cpp: Added.
112         (WebCore::):
113         (WebCore::PlatformMouseEvent::PlatformMouseEvent):
114
115 2006-08-19  Nikolas Zimmermann  <zimmermann@kde.org>
116
117         Reviewed by Eric. Landed by rwlbuis.
118
119         Next chunk of the implementation for:
120         http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
121
122         WebKit should have Qt platform support
123
124         * platform/qt/AffineTransformQt.cpp: Added.
125         (WebCore::AffineTransform::AffineTransform):
126         (WebCore::AffineTransform::setMatrix):
127         (WebCore::AffineTransform::map):
128         (WebCore::AffineTransform::mapRect):
129         (WebCore::AffineTransform::isIdentity):
130         (WebCore::AffineTransform::m11):
131         (WebCore::AffineTransform::m12):
132         (WebCore::AffineTransform::m21):
133         (WebCore::AffineTransform::m22):
134         (WebCore::AffineTransform::dx):
135         (WebCore::AffineTransform::dy):
136         (WebCore::AffineTransform::reset):
137         (WebCore::AffineTransform::scale):
138         (WebCore::AffineTransform::rotate):
139         (WebCore::AffineTransform::translate):
140         (WebCore::AffineTransform::shear):
141         (WebCore::AffineTransform::det):
142         (WebCore::AffineTransform::invert):
143         (WebCore::AffineTransform::operator QMatrix):
144         (WebCore::AffineTransform::operator==):
145         (WebCore::AffineTransform::operator*=):
146         (WebCore::AffineTransform::operator*):
147         * platform/qt/BrowserExtensionQt.cpp: Added.
148         (WebCore::BrowserExtensionQt::BrowserExtensionQt):
149         (WebCore::BrowserExtensionQt::canRunModal):
150         (WebCore::BrowserExtensionQt::createNewWindow):
151         (WebCore::BrowserExtensionQt::canRunModalNow):
152         (WebCore::BrowserExtensionQt::runModal):
153         (WebCore::BrowserExtensionQt::goBackOrForward):
154         (WebCore::BrowserExtensionQt::historyURL):
155         (WebCore::BrowserExtensionQt::setTypedIconURL):
156         (WebCore::BrowserExtensionQt::setIconURL):
157         (WebCore::BrowserExtensionQt::getHistoryLength):
158         * platform/qt/BrowserExtensionQt.h: Added.
159         * platform/qt/CookieJarQt.cpp: Added.
160         (WebCore::setCookies):
161         (WebCore::cookies):
162         (WebCore::cookiesEnabled):
163         * platform/qt/PageQt.cpp: Added.
164         (WebCore::rootWindowForFrame):
165         (WebCore::Page::windowRect):
166         (WebCore::Page::setWindowRect):
167         * platform/qt/PathQt.cpp: Added.
168         (WebCore::Path::Path):
169         (WebCore::Path::~Path):
170         (WebCore::Path::operator=):
171         (WebCore::Path::contains):
172         (WebCore::Path::translate):
173         (WebCore::Path::boundingRect):
174         (WebCore::Path::moveTo):
175         (WebCore::Path::addLineTo):
176         (WebCore::Path::addQuadCurveTo):
177         (WebCore::Path::addBezierCurveTo):
178         (WebCore::Path::addArcTo):
179         (WebCore::Path::closeSubpath):
180         (WebCore::Path::addArc):
181         (WebCore::Path::addRect):
182         (WebCore::Path::addEllipse):
183         (WebCore::Path::clear):
184         * platform/qt/ScreenQt.cpp: Added.
185         (WebCore::screenRect):
186         (WebCore::screenDepth):
187         (WebCore::usableScreenRect):
188
189
190 2006-08-19  Nikolas Zimmermann  <zimmermann@kde.org>
191
192         Reviewed by Eric. Landed by rwlbuis.
193
194         First chunk of the implementation for:
195         http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
196
197         WebKit should have Qt platform support
198
199         * platform/qt/ComboBoxQt.cpp: Added.
200         (WebCore::PlatformComboBox::PlatformComboBox):
201         (WebCore::PlatformComboBox::~PlatformComboBox):
202         (WebCore::PlatformComboBox::setParentWidget):
203         (WebCore::PlatformComboBox::clear):
204         (WebCore::PlatformComboBox::appendItem):
205         (WebCore::PlatformComboBox::appendGroupLabel):
206         (WebCore::PlatformComboBox::appendSeparator):
207         (WebCore::PlatformComboBox::setCurrentItem):
208         (WebCore::PlatformComboBox::sizeHint):
209         (WebCore::PlatformComboBox::frameGeometry):
210         (WebCore::PlatformComboBox::setFrameGeometry):
211         (WebCore::PlatformComboBox::baselinePosition):
212         (WebCore::PlatformComboBox::setFont):
213         (WebCore::PlatformComboBox::focusPolicy):
214         (WebCore::PlatformComboBox::itemSelected):
215         (WebCore::PlatformComboBox::setWritingDirection):
216         (WebCore::PlatformComboBox::populate):
217         (WebCore::PlatformComboBox::populateMenu):
218         * platform/qt/LineEditQt.cpp: Added.
219         (WebCore::PlatformLineEdit::PlatformLineEdit):
220         (WebCore::PlatformLineEdit::~PlatformLineEdit):
221         (WebCore::PlatformLineEdit::setParentWidget):
222         (WebCore::PlatformLineEdit::setColors):
223         (WebCore::PlatformLineEdit::setAlignment):
224         (WebCore::PlatformLineEdit::setCursorPosition):
225         (WebCore::PlatformLineEdit::cursorPosition):
226         (WebCore::PlatformLineEdit::setEdited):
227         (WebCore::PlatformLineEdit::edited):
228         (WebCore::PlatformLineEdit::setFont):
229         (WebCore::PlatformLineEdit::setMaxLength):
230         (WebCore::PlatformLineEdit::maxLength):
231         (WebCore::PlatformLineEdit::setReadOnly):
232         (WebCore::PlatformLineEdit::isReadOnly):
233         (WebCore::PlatformLineEdit::setText):
234         (WebCore::PlatformLineEdit::text):
235         (WebCore::PlatformLineEdit::setWritingDirection):
236         (WebCore::PlatformLineEdit::selectAll):
237         (WebCore::PlatformLineEdit::hasSelectedText):
238         (WebCore::PlatformLineEdit::selectionStart):
239         (WebCore::PlatformLineEdit::selectedText):
240         (WebCore::PlatformLineEdit::setSelection):
241         (WebCore::PlatformLineEdit::sizeForCharacterWidth):
242         (WebCore::PlatformLineEdit::baselinePosition):
243         (WebCore::PlatformLineEdit::focusPolicy):
244         (WebCore::PlatformLineEdit::checksDescendantsForFocus):
245         (WebCore::PlatformLineEdit::setLiveSearch):
246         (WebCore::PlatformLineEdit::setAutoSaveName):
247         (WebCore::PlatformLineEdit::setMaxResults):
248         (WebCore::PlatformLineEdit::setPlaceholderString):
249         (WebCore::PlatformLineEdit::addSearchResult):
250         * platform/qt/ListBoxQt.cpp: Added.
251         (WebCore::ListBox::ListBox):
252         (WebCore::ListBox::~ListBox):
253         (WebCore::ListBox::setParentWidget):
254         (WebCore::ListBox::sizeForNumberOfLines):
255         (WebCore::ListBox::setSelectionMode):
256         (WebCore::ListBox::clear):
257         (WebCore::ListBox::doneAppendingItems):
258         (WebCore::ListBox::setSelected):
259         (WebCore::ListBox::isSelected):
260         (WebCore::ListBox::setEnabled):
261         (WebCore::ListBox::isEnabled):
262         (WebCore::ListBox::setWritingDirection):
263         (WebCore::ListBox::focusPolicy):
264         (WebCore::ListBox::checksDescendantsForFocus):
265         (WebCore::ListBox::clearCachedTextRenderers):
266         (WebCore::ListBox::setFont):
267         (WebCore::ListBox::appendItem):
268         * platform/qt/ScrollViewQt.cpp: Added.
269         (WebCore::ScrollView::ScrollView):
270         (WebCore::ScrollView::~ScrollView):
271         (WebCore::ScrollView::setParentWidget):
272         (WebCore::ScrollView::updateContents):
273         (WebCore::ScrollView::visibleWidth):
274         (WebCore::ScrollView::visibleHeight):
275         (WebCore::ScrollView::visibleContentRect):
276         (WebCore::ScrollView::setContentsPos):
277         (WebCore::ScrollView::resizeContents):
278         (WebCore::ScrollView::contentsX):
279         (WebCore::ScrollView::contentsY):
280         (WebCore::ScrollView::contentsWidth):
281         (WebCore::ScrollView::contentsHeight):
282         (WebCore::ScrollView::viewportToContents):
283         (WebCore::ScrollView::contentsToViewport):
284         (WebCore::ScrollView::scrollOffset):
285         (WebCore::ScrollView::scrollBy):
286         (WebCore::ScrollView::hScrollBarMode):
287         (WebCore::ScrollView::vScrollBarMode):
288         (WebCore::ScrollView::suppressScrollBars):
289         (WebCore::ScrollView::setHScrollBarMode):
290         (WebCore::ScrollView::setVScrollBarMode):
291         (WebCore::ScrollView::setScrollBarsMode):
292         (WebCore::ScrollView::setStaticBackground):
293         (WebCore::ScrollView::addChild):
294         (WebCore::ScrollView::removeChild):
295         (WebCore::ScrollView::scrollPointRecursively):
296         (WebCore::ScrollView::inWindow):
297         * platform/qt/TextEditQt.cpp: Added.
298         (WebCore::PlatformTextEdit::PlatformTextEdit):
299         (WebCore::PlatformTextEdit::~PlatformTextEdit):
300         (WebCore::PlatformTextEdit::setParentWidget):
301         (WebCore::PlatformTextEdit::setColors):
302         (WebCore::PlatformTextEdit::setAlignment):
303         (WebCore::PlatformTextEdit::setLineHeight):
304         (WebCore::PlatformTextEdit::setCursorPosition):
305         (WebCore::PlatformTextEdit::getCursorPosition):
306         (WebCore::PlatformTextEdit::setFont):
307         (WebCore::PlatformTextEdit::setReadOnly):
308         (WebCore::PlatformTextEdit::isReadOnly):
309         (WebCore::PlatformTextEdit::setDisabled):
310         (WebCore::PlatformTextEdit::isDisabled):
311         (WebCore::PlatformTextEdit::hasSelectedText):
312         (WebCore::PlatformTextEdit::setText):
313         (WebCore::PlatformTextEdit::text):
314         (WebCore::PlatformTextEdit::textWithHardLineBreaks):
315         (WebCore::PlatformTextEdit::focusPolicy):
316         (WebCore::PlatformTextEdit::setWordWrap):
317         (WebCore::PlatformTextEdit::wordWrap):
318         (WebCore::PlatformTextEdit::setScrollBarModes):
319         (WebCore::PlatformTextEdit::setWritingDirection):
320         (WebCore::PlatformTextEdit::selectionStart):
321         (WebCore::PlatformTextEdit::selectionEnd):
322         (WebCore::PlatformTextEdit::setSelectionStart):
323         (WebCore::PlatformTextEdit::setSelectionEnd):
324         (WebCore::PlatformTextEdit::selectAll):
325         (WebCore::PlatformTextEdit::setSelectionRange):
326         (WebCore::PlatformTextEdit::sizeWithColumnsAndRows):
327         (WebCore::PlatformTextEdit::checksDescendantsForFocus):
328         * platform/qt/WidgetQt.cpp: Added.
329         (WebCore::WidgetPrivate::WidgetPrivate):
330         (WebCore::WidgetPrivate::~WidgetPrivate):
331         (WebCore::Widget::Widget):
332         (WebCore::Widget::~Widget):
333         (WebCore::Widget::setClient):
334         (WebCore::Widget::client):
335         (WebCore::Widget::frameGeometry):
336         (WebCore::Widget::hasFocus):
337         (WebCore::Widget::setFocus):
338         (WebCore::Widget::clearFocus):
339         (WebCore::Widget::font):
340         (WebCore::Widget::setFont):
341         (WebCore::Widget::setCursor):
342         (WebCore::Widget::show):
343         (WebCore::Widget::hide):
344         (WebCore::Widget::setQWidget):
345         (WebCore::Widget::qwidget):
346         (WebCore::Widget::setParentWidget):
347         (WebCore::Widget::parentWidget):
348         (WebCore::Widget::setFrameGeometry):
349         (WebCore::Widget::mapFromGlobal):
350         (WebCore::Widget::scaleFactor):
351         (WebCore::Widget::lockDrawingFocus):
352         (WebCore::Widget::unlockDrawingFocus):
353         (WebCore::Widget::paint):
354         (WebCore::Widget::enableFlushDrawing):
355         (WebCore::Widget::isEnabled):
356         (WebCore::Widget::setIsSelected):
357         (WebCore::Widget::disableFlushDrawing):
358         (WebCore::Widget::setEnabled):
359         (WebCore::Widget::focusPolicy):
360
361 2006-08-19  Nikolas Zimmermann  <zimmermann@kde.org>
362
363         Reviewed by Eric. Landed by rwlbuis.
364
365         First chunk of the implementation for:
366         http://bugzilla.opendarwin.org/show_bug.cgi?id=10467
367
368         WebKit should have Qt platform support
369
370         * platform/qt/ColorQt.cpp: Added.
371         (WebCore::Color::Color):
372         (WebCore::Color::operator QColor):
373         * platform/qt/FloatPointQt.cpp: Added.
374         (WebCore::FloatPoint::FloatPoint):
375         (WebCore::FloatPoint::operator QPointF):
376         * platform/qt/FloatRectQt.cpp: Added.
377         (WebCore::FloatRect::FloatRect):
378         (WebCore::FloatRect::operator QRectF):
379         * platform/qt/IntPointQt.cpp: Added.
380         (WebCore::IntPoint::IntPoint):
381         (WebCore::IntPoint::operator QPoint):
382         * platform/qt/IntRectQt.cpp: Added.
383         (WebCore::IntRect::IntRect):
384         (WebCore::IntRect::operator QRect):
385         * platform/qt/IntSizeQt.cpp: Added.
386         (WebCore::IntSize::IntSize):
387         (WebCore::IntSize::operator QSize):
388
389  2006-08-18  Nikolas Zimmermann  <zimmermann@kde.org>
390  
391          Reviewed by Eric. Landed by rwlbuis.
392  
393          Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10470
394          The Qt platform needs a KCanvas device.
395  
396          * kcanvas/device/qt/KCanvasClipperQt.cpp: Added.
397          (WebCore::KCanvasClipperQt::applyClip):
398          * kcanvas/device/qt/KCanvasClipperQt.h: Added.
399          (WebCore::KCanvasClipperQt::KCanvasClipperQt):
400          * kcanvas/device/qt/KCanvasPathQt.cpp: Added.
401          (WebCore::KCanvasPathQt::KCanvasPathQt):
402          (WebCore::KCanvasPathQt::~KCanvasPathQt):
403          (WebCore::KCanvasPathQt::isEmpty):
404          (WebCore::KCanvasPathQt::moveTo):
405          (WebCore::KCanvasPathQt::lineTo):
406          (WebCore::KCanvasPathQt::curveTo):
407          (WebCore::KCanvasPathQt::closeSubpath):
408          (WebCore::KCanvasPathQt::boundingBox):
409          (WebCore::KCanvasPathQt::strokeBoundingBox):
410          (WebCore::KCanvasPathQt::strokeContainsPoint):
411          (WebCore::KCanvasPathQt::containsPoint):
412          * kcanvas/device/qt/KCanvasPathQt.h: Added.
413          (WebCore::KCanvasPathQt::qtPath):
414          * kcanvas/device/qt/KRenderingDeviceQt.cpp: Added.
415          (WebCore::KRenderingDeviceContextQt::KRenderingDeviceContextQt):
416          (WebCore::KRenderingDeviceContextQt::~KRenderingDeviceContextQt):
417          (WebCore::KRenderingDeviceContextQt::concatCTM):
418          (WebCore::KRenderingDeviceContextQt::ctm):
419          (WebCore::KRenderingDeviceContextQt::mapFromVisual):
420          (WebCore::KRenderingDeviceContextQt::mapToVisual):
421          (WebCore::KRenderingDeviceContextQt::clearPath):
422          (WebCore::KRenderingDeviceContextQt::addPath):
423          (WebCore::KRenderingDeviceContextQt::createGraphicsContext):
424          (WebCore::KRenderingDeviceContextQt::painter):
425          (WebCore::KRenderingDeviceContextQt::pathBBox):
426          (WebCore::KRenderingDeviceContextQt::setFillRule):
427          (WebCore::KRenderingDeviceContextQt::fillPath):
428          (WebCore::KRenderingDeviceContextQt::strokePath):
429          (WebCore::KRenderingDeviceQt::KRenderingDeviceQt):
430          (WebCore::KRenderingDeviceQt::~KRenderingDeviceQt):
431          (WebCore::KRenderingDeviceQt::popContext):
432          (WebCore::KRenderingDeviceQt::pushContext):
433          (WebCore::KRenderingDeviceQt::qtContext):
434          (WebCore::KRenderingDeviceQt::contextForImage):
435          (WebCore::KRenderingDeviceQt::stringForPath):
436          (WebCore::KRenderingDeviceQt::createResource):
437          (WebCore::KRenderingDeviceQt::createPaintServer):
438          (WebCore::KRenderingDeviceQt::createFilterEffect):
439
440 2006-08-17  Nikolas Zimmermann  <zimmermann@kde.org>
441
442         Reviewed by Eric. Landed by rwlbuis.
443
444         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10466
445         WebKit should have Qt platform support.
446
447         * platform/Color.h:
448         * platform/Cursor.h:
449         (WebCore::Cursor::Cursor):
450         * platform/FloatPoint.h:
451         * platform/FloatRect.h:
452         * platform/GlyphBuffer.h:
453         (WebCore::GlyphBuffer::glyphAt):
454         (WebCore::GlyphBuffer::advanceAt):
455         (WebCore::GlyphBuffer::add):
456         * platform/GraphicsContext.h:
457         * platform/ImageSource.h:
458         * platform/IntPoint.h:
459         * platform/IntRect.h:
460         * platform/IntSize.h:
461         * platform/ListBox.h:
462         * platform/Path.h:
463         * platform/PlatformKeyboardEvent.h:
464         * platform/PlatformMouseEvent.h:
465         * platform/ResourceLoader.h:
466         * platform/ResourceLoaderClient.h:
467         * platform/ResourceLoaderInternal.h:
468         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
469         * platform/ScrollView.h:
470         * platform/Widget.h:
471
472 2006-08-17  Nikolas Zimmermann  <zimmermann@kde.org>
473
474         Reviewed by Eric. Landed by rwlbuis.
475
476         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10465
477         General WebKit Linux build fixes.
478
479         * kcanvas/KCanvasFilters.cpp:
480         (WebCore::operator<<):
481         * kcanvas/RenderSVGImage.cpp:
482         * ksvg2/css/SVGCSSStyleSelector.cpp:
483         * ksvg2/svg/SVGAnimateColorElement.cpp:
484         * ksvg2/svg/SVGMaskElement.cpp:
485         * ksvg2/svg/SVGPatternElement.cpp:
486         * page/Frame.h:
487         * rendering/RenderStyle.h:
488         (WebCore::RenderStyle::deleteBindingURIs):
489         * xml/DOMParser.cpp:
490
491 2006-08-17  Nikolas Zimmermann  <zimmermann@kde.org>
492
493         Reviewed by Eric. Landed by rwlbuis.
494
495         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10464
496         Offer a cmake build system for Qt platform.
497
498         * CMakeLists.txt: Added.
499
500 2006-08-17  David Harrison  <harrison@apple.com>
501
502         Reviewed by John Sullivan.
503
504         <rdar://problem/4671069> REGRESSION: Popup buttons in web pages aren't exposed as AXPopupButtons
505
506         Accessorized RenderMenuList objects.
507         
508         * bridge/mac/WebCoreAXObject.mm:
509         (-[WebCoreAXObject mouseButtonListener]):
510         Trivial formatting.
511         
512         (-[WebCoreAXObject actionElement]):
513         Return the HTMLSelectElement.
514         
515         (-[WebCoreAXObject firstChild]):
516         (-[WebCoreAXObject lastChild]):
517         (-[WebCoreAXObject previousSibling]):
518         (-[WebCoreAXObject nextSibling]):
519         (-[WebCoreAXObject parentObject]):
520         (-[WebCoreAXObject parentObjectUnignored]):
521         (-[WebCoreAXObject isAttachment]):
522         (-[WebCoreAXObject attachmentView]):
523         Trivial formatting.
524
525         (-[WebCoreAXObject role]):
526         Return NSAccessibilityPopUpButtonRole.
527
528         (-[WebCoreAXObject subrole]):
529         Trivial formatting.
530         
531         (-[WebCoreAXObject roleDescription]):
532         Return NSAccessibilityPopUpButtonRole.
533         
534         (-[WebCoreAXObject textUnderElement]):
535         Trivial formatting.
536
537         (-[WebCoreAXObject value]):
538         Return the RenderMenuList::text().
539         
540         (-[WebCoreAXObject position]):
541          Trivial formatting.
542
543         (-[WebCoreAXObject accessibilityIsIgnored]):
544         - Ignore popup menu items because AppKit does.
545         - Remove redundant check for buttonTag (earlier isControl() check suffices).
546         
547         (-[WebCoreAXObject accessibilityAttributeNames]):
548         (-[WebCoreAXObject accessibilityActionNames]):
549         (-[WebCoreAXObject accessibilityAttributeValue:]):
550         Trivial formatting.
551         
552         (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
553         Removed old debugging code that is no longer needed.
554         Trivial formatting.
555         
556         (-[WebCoreAXObject doAXSentenceTextMarkerRangeForTextMarker:]):
557         (-[WebCoreAXObject doAXParagraphTextMarkerRangeForTextMarker:]):
558         (-[WebCoreAXObject removeAXObjectID]):
559         Trivial formatting.
560         
561         * html/HTMLSelectElement.cpp:
562         (WebCore::HTMLSelectElement::accessKeyAction):
563         Call click() instead of focus().
564         
565         * rendering/RenderMenuList.cpp:
566         (WebCore::RenderMenuList::text):
567         Added for easy access to popup's current text.
568         
569         * rendering/RenderMenuList.h:
570         (WebCore::RenderMenuList::isMenuList):
571         * rendering/RenderObject.h:
572         (WebCore::RenderObject::isMenuList):
573         Added so popups can be identified.
574
575 2006-08-17  David Harrison  <harrison@apple.com>
576
577         Reviewed by Maciej.
578
579         <rdar://problem/4527201> REGRESSION: AXTextMarkerRangeForUnorderedTextMarkers returns out of order range
580
581         Test cases added: None.  Manual AX testing is way too awkward, and automated testing
582         is not possible.  See following bug...
583             <rdar://problem/4256882> Need automated testing support for accessibility APIs
584
585         * bridge/mac/AXObjectCacheMac.mm:
586         (WebCore::AXObjectCache::visiblePositionForTextMarker):
587         Validate the marker by comparing the node and offset to those of the resulting VisiblePosition.
588
589 2006-08-17  Nikolas Zimmermann  <zimmermann@kde.org>
590
591         Reviewed by Anders.
592
593         Fixes: http://bugzilla.opendarwin.org/show_bug.cgi?id=10447
594         AffineTransform should be multi-platform compatible
595
596         * platform/AffineTransform.h:
597         * platform/cg/AffineTransformCG.cpp:
598         (WebCore::AffineTransform::m11):
599         (WebCore::AffineTransform::m12):
600         (WebCore::AffineTransform::m21):
601         (WebCore::AffineTransform::m22):
602         (WebCore::AffineTransform::dx):
603         (WebCore::AffineTransform::dy):
604
605 2006-08-16  David Hyatt  <hyatt@apple.com>
606
607         Fix an issue with CSS2 system fonts where they did not respect text
608         zoom.  This was most visible with the new control fonts used for form
609         controls (they stopped swapping between small/mini/regular as you zoomed).
610
611         Reviewed by beth
612
613         * css/cssstyleselector.cpp:
614         (WebCore::CSSStyleSelector::applyProperty):
615
616 2006-08-15  Justin Garcia  <justin.garcia@apple.com>
617
618         Reviewed by thatcher
619         
620         First part of fix for:
621         <rdar://problem/4384589>
622         Mail hung on paste text
623         
624         Fixes:
625         <http://bugzilla.opendarwin.org/show_bug.cgi?id=8592>
626         Extra line left after deleting whitespace:pre text
627         <rdar://problem/4128080> Paste as HTML does not yield equivalent style
628         <rdar://problem/4046469> Box styles on first element aren't copied/pasted
629         Copy/paste of arstechnica.com
630         
631         Here's how we avoid adding redundant style information on paste: insert 
632         the fragment and do a test rendering, save away style information for 
633         every node in the fragment, remove all style information from the fragment, 
634         remove the fragment, insert it into the appropriate place in the document, 
635         then restore only those styles gathered during the test insertion that aren't
636         redundant.  Restoring the styles in this way results in an ApplyStyleCommand 
637         and a layout for nearly every inserted node.  
638         Instead we want to insert the fragment into the document without removing the 
639         style information, then mark style nodes and inline style declarations for 
640         removal if they are redundant, and sweep to remove them.  This means that we 
641         can't rely on ReplacementFragment::wasBlock anymore, because blocks will now 
642         have style spans around them.  This patch removes the use of wasBlock in 
643         ReplaceSelectionCommand.
644         
645         * editing/CompositeEditCommand.cpp:
646         (WebCore::CompositeEditCommand::moveParagraphs): Added code
647         to remove the line placeholder left after a move from preserveNewline text.
648         * editing/DeleteSelectionCommand.cpp:
649         (WebCore::DeleteSelectionCommand::doApply): Don't add a placeholder if 
650         we're deleting a paragraph in preserveNewline text.
651         * editing/JSEditor.cpp: Pass true to prevent nesting.
652         * editing/ReplaceSelectionCommand.cpp: Removed wasBlock and friends.
653         (WebCore::ReplacementFragment::ReplacementFragment): Ditto.
654         (WebCore::ReplacementFragment::saveRenderingInfo): Ditto.
655         (WebCore::RenderingInfo::RenderingInfo): Ditto.
656         (WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
657         (WebCore::ReplaceSelectionCommand::shouldMergeStart): Combined the to/from
658         merging rules into one method.
659         (WebCore::ReplaceSelectionCommand::shouldMergeEnd):
660         (WebCore::ReplaceSelectionCommand::shouldMerge):
661         (WebCore::ReplaceSelectionCommand::doApply): 
662         Don't do nesting prevention when pasting into an empty paragraph, this
663         fixes 4046469, the common cause of paste fidelity bugs, but needs
664         to be tweaked a little because this can lead to margin/border build-up
665         on repeated copy/pastes.
666         Don't track startPos in addition to insertionPos.  It was never used.
667         Fixed a bug where a fragment starting with an interchange newline would
668         cause content to be put outside of an editable region when pasting at the 
669         very end of it.
670         Adjust insertionPos before insertion (not during) and do not consult wasBlock
671         to decide whether or not to do so.
672         Changed the way we do the start merge: insert the fragment, then stich 
673         paragraphs together, in the same way that we do the end merge.  This 
674         doesn't require wasBlock and fixes bugs.
675         Replaced some uses of insertionPos with endOfInsertedContent.
676         Fixed a bug in the expansion of the last incoming br (a "collapsed" br
677         is one where !isStartOfParagraph([br,0])).
678         Removed the special case code that did the end merge for the preserveNewline 
679         case, since this patch fixes the moveParagraph bug in the preserveNewline case.
680         Removed some unused variables.
681         (WebCore::ReplaceSelectionCommand::shouldRemoveEndBR): An endBR that was 
682         holding a line open should always be displaced by inserted content, unless 
683         the inserted content ends with a br.
684         (WebCore::ReplaceSelectionCommand::updateNodesInserted):
685         * editing/ReplaceSelectionCommand.h:
686         (WebCore::RenderingInfo::style):
687         * editing/markup.cpp:
688         (WebCore::createMarkup): Only add mail blockquotes and list/table/pre when
689         annotate is true (when we're creating markup for the pasteboard).
690
691 2006-08-16  John Sullivan  <sullivan@apple.com>
692
693         Reviewed by Brady Eidson
694         
695         - fixed <rdar://problem/4637156> underlines appearing in white selection text
696
697         * rendering/InlineFlowBox.cpp:
698         (WebCore::InlineFlowBox::paintDecorations):
699         bail out if phase is PaintPhaseSelection and forceWhiteText is true
700
701 2006-08-16  Brady Eidson  <beidson@apple.com>
702
703         Reviewed by John
704
705         Updated the DB version number and added a helpful comment explaining its meaning
706
707         * loader/icon/IconDatabase.cpp:
708
709 2006-08-16  Brady Eidson  <beidson@apple.com>
710
711         Reviewed by Maciej
712
713         Major refactoring of new iconDB:
714         -Instead of private browsing being handled by in-memory tables, it's now handled
715          by a separate in-memory database with the same table names.  This allows us to 
716          re-use the same SQL on either the main or private-browsing database
717         -So it follows, I broke out much of the SQL queries into seperate methods suffixed with
718          "Query" that take a database as the method's argument so the same language can run on
719          both private and main tables
720         -Now that we have two DBs, moved the retain/release count to the m_mainDB
721         -While I was at it, updated the schema to combine the Icon and IconResource table - cuts 
722          down on some high-usage, low value queries which were too expensive
723         -Ditched the _url -> url convention for escaping urls for SQL.  Now its url and escapedURL
724         -Pruned tons of unused methods from previous revisions
725
726      * bridge/mac/WebCoreIconDatabaseBridge.h: Removed isIconExpiredForPageURL as it was never used 
727         * bridge/mac/WebCoreIconDatabaseBridge.mm: Ditto
728         * loader/icon/IconDatabase.cpp:
729         (WebCore::IconDatabase::IconDatabase): Updated initializer list
730         (WebCore::IconDatabase::open): Sets up both databases
731         (WebCore::IconDatabase::close): Closes both databases
732         (WebCore::IconDatabase::isEmpty): Queries both databases for at least 1 record
733         (WebCore::IconDatabase::isValidDatabase): Reflect the updated schema
734         (WebCore::IconDatabase::clearDatabaseTables): Ditto - and takes DB as a parameter
735         (WebCore::IconDatabase::createDatabaseTables): Ditto
736         (WebCore::IconDatabase::imageDataForIconURL): style cleanup, and using a query-function
737         (WebCore::IconDatabase::setPrivateBrowsingEnabled): Resets private DB instead of private tables
738         (WebCore::IconDatabase::isIconExpiredForIconURL): Uses a query-function on each DB
739         (WebCore::IconDatabase::iconURLForPageURL): Uses a query-function on each DB
740         (WebCore::IconDatabase::retainIconForPageURL): Retain count DB changes 
741         (WebCore::IconDatabase::releaseIconForPageURL): Ditto
742         (WebCore::IconDatabase::isIconURLRetained): Determine if it's time to prune a released icon yet
743         (WebCore::IconDatabase::forgetIconForIconURLFromDatabase): Alot simpler
744         (WebCore::IconDatabase::setIconDataForIconURL): Style cleanup
745         (WebCore::IconDatabase::setHaveNoIconForIconURL): Ditto
746         (WebCore::IconDatabase::setIconURLForPageURL): Ditto - and using a query-function
747         (WebCore::IconDatabase::establishIconIDForIconURL): Style cleanup
748         (WebCore::IconDatabase::pruneUnreferencedIcons): DB name change
749         (WebCore::IconDatabase::pruneUnretainedIcons): Ditto
750         (WebCore::IconDatabase::hasIconForIconURL): Simpler, using a query-function
751         (WebCore::IconDatabase::~IconDatabase):
752         (WebCore::pageURLTableIsEmptyQuery): Self-explanatory SQL query
753         (WebCore::imageDataForIconURLQuery): Self-explanatory SQL query
754         (WebCore::timeStampForIconURLQuery): Self-explanatory SQL query
755         (WebCore::iconURLForPageURLQuery): Self-explanatory SQL query
756         (WebCore::forgetPageURLQuery): Self-explanatory SQL query
757         (WebCore::setIconIDForPageURLQuery): Self-explanatory SQL query
758         (WebCore::getIconIDForIconURLQuery): Self-explanatory SQL query
759         (WebCore::addIconForIconURLQuery): Self-explanatory SQL query
760         (WebCore::hasIconForIconURLQuery): Self-explanatory SQL query
761      * loader/icon/IconDatabase.h: Some new/changed methods, pruned methods, and new comments
762         (WebCore::IconDatabase::isOpen):  Changed our meaning of "isOpen" to reflect the 2 databases
763
764 2006-08-15  Jonas Witt <jonas.witt@gmail.com>
765
766         Reviewed by Darin.
767
768         - added ObjC wrappers for the KeyboardEvent and WheelEvent initializers
769           http://bugzilla.opendarwin.org/show_bug.cgi?id=9736
770
771         * bindings/objc/DOMEvents.mm:
772         (-[DOMKeyboardEvent initKeyboardEvent::::::::::]):
773         * bindings/objc/DOMEventsNonstandard.mm:
774         (-[DOMWheelEvent initWheelEvent:::::::::::]):
775         * bindings/objc/DOMPrivate.h:
776
777         - added an initializer for the WheelEvent
778
779         * dom/WheelEvent.cpp:
780         (WebCore::WheelEvent::initWheelEvent):
781         * dom/WheelEvent.h:
782
783 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
784
785         Reviewed by Tim H.
786
787         Build fix:  DWARF and -gfull are incompatible with symbol separation.
788
789         * WebCore.xcodeproj/project.pbxproj:
790
791 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
792
793         Reviewed by Tim H.
794
795         http://bugzilla.opendarwin.org/show_bug.cgi?id=10394
796         Bug 10394: WebKit Release and Production configurations should enable dead code stripping
797
798         * WebCore.xcodeproj/project.pbxproj:
799
800 2006-08-15  Geoffrey Garen  <ggaren@apple.com>
801
802         Reviewed by Darin.
803         
804         - This patch reworks a previous fix for <rdar://problem/3524912> repro 
805         crash in KHTMLParser::parseToken, due to parser's current element being 
806         destroyed (www.gnnetcom.dk), along with subsequent adjustments to fix
807         leaks.
808         
809         The previous solutions caused a ~2% performance regression on iBench HTML,
810         due to RefPtr churn. The optimizations here gain back that ~2% plus ~1% more,
811         for a total win of ~3% vs current TOT.
812         
813         We can merge this fix to the branch to fix <rdar://problem/4661982> 
814         (crash in KHTMLParser::popBlock).
815         
816         The solution here is:
817         (1) Don't let the parser ref document nodes -- that causes leaks.
818         (2) Handle ref/deref manually, to avoid RefPtr churn. Specifically, when 
819         moving a node between stacks or to/from 'current', rather than deref'ing
820         and then ref'ing again, simply move the node, along with its refcount, to
821         its new location, and overwrite its old location.
822  
823         * WebCore.xcodeproj/project.pbxproj:
824         * html/HTMLParser.cpp:
825         (WebCore::HTMLStackElem::HTMLStackElem):
826         (WebCore::HTMLStackElem::derefNode):
827         (WebCore::HTMLParser::HTMLParser):
828         (WebCore::HTMLParser::setCurrent):
829         (WebCore::HTMLParser::insertNode):
830         (WebCore::HTMLParser::popNestedHeaderTag):
831         (WebCore::HTMLParser::handleResidualStyleCloseTagAcrossBlocks):
832         (WebCore::HTMLParser::reopenResidualStyleTags):
833         (WebCore::HTMLParser::pushBlock):
834         (WebCore::HTMLParser::popBlock):
835         (WebCore::HTMLParser::popOneBlockCommon):
836         (WebCore::HTMLParser::popOneBlock):
837         (WebCore::HTMLParser::moveOneBlockToStack):
838         * html/HTMLParser.h:
839
840 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
841
842         Reviewed by Tim H.
843
844         http://bugzilla.opendarwin.org/show_bug.cgi?id=10384
845         Bug 10384: Switch to DWARF for Release configuration
846
847         * WebCore.xcodeproj/project.pbxproj:
848
849 2006-08-15  Mark Rowe  <opendarwin.org@bdash.net.nz>
850
851         Reviewed by Hyatt.
852         Tweaked and landed by Darin.
853
854         http://bugzilla.opendarwin.org/show_bug.cgi?id=10399
855         Bug 10399: RenderTextArea is unused
856
857         * WebCore.vcproj/WebCore/WebCore.vcproj:
858         * WebCore.xcodeproj/project.pbxproj:
859         * WebCoreSources.bkl:
860         Removed RenderTextArea source files.
861
862         * html/HTMLTextAreaElement.cpp: Removed include of RenderTextArea.h.
863         * html/HTMLTextAreaElement.h: Removed forward declaration of RenderTextArea.
864
865         * platform/mac/WidgetMac.mm: (WebCore::Widget::paint): Updated a comment.
866
867         * platform/TextBox.h: Removed.
868         * platform/mac/TextBoxMac.mm: Removed.
869         * platform/mac/WebCoreTextArea.h: Removed.
870         * platform/mac/WebCoreTextArea.mm: Removed.
871         * rendering/RenderTextArea.cpp: Removed.
872         * rendering/RenderTextArea.h: Removed.
873
874 2006-08-15  Brady Eidson  <beidson@apple.com>
875
876         Reviewed by THE OTHER Maciej...
877
878         Two small fixes -
879         1) Renamed retain/release methods to add PageUrl in - we're being consistent and clear in the WebCore API
880         2) Fixed a bug where a null SiteIcon reference would be added into the pageURLToSiteIcon map causing a
881         null dereference later
882
883         * bridge/mac/WebCoreIconDatabaseBridge.mm:
884         (-[WebCoreIconDatabaseBridge retainIconForURL:]):  Changed IconDatabase method name
885         (-[WebCoreIconDatabaseBridge releaseIconForURL:]):  ditto
886         * loader/icon/IconDatabase.cpp:
887         (WebCore::IconDatabase::retainIconForPageURL):  Name change
888         (WebCore::IconDatabase::releaseIconForPageURL):  ditto
889         (WebCore::IconDatabase::setIconURLForPageURL):  Added the null site-icon check when changing a PageURL's iconURL
890         * loader/icon/IconDatabase.h:  Some renames
891
892 2006-08-14  Eric Seidel  <eric@eseidel.com>
893
894         Reviewed by mjs.
895
896         <mask>, <marker>, <pattern> inside <defs> do not work
897         http://bugzilla.opendarwin.org/show_bug.cgi?id=6548
898
899         * ksvg2/svg/SVGDefsElement.cpp:
900         (WebCore::SVGDefsElement::SVGDefsElement): moved to .cpp file
901         (WebCore::SVGDefsElement::isValid): moved to .cpp file
902         (WebCore::SVGDefsElement::rendererIsNeeded): Added.
903         (WebCore::SVGDefsElement::createRenderer): Added.
904         * ksvg2/svg/SVGDefsElement.h:
905         * ksvg2/svg/SVGGElement.cpp:
906         (WebCore::SVGGElement::SVGGElement): adjusted spacing
907         (WebCore::SVGGElement::parseMappedAttribute): adjusted spacing
908         (WebCore::SVGDummyElement::SVGDummyElement): adjusted spacing
909
910 2006-08-14  Eric Seidel  <eric@eseidel.com>
911
912         Reviewed by darin and mjs.
913         
914         Add better SVGLoad event support.
915         http://bugzilla.opendarwin.org/show_bug.cgi?id=6010
916         There will still need to be additional support added for <link> and <script> elements.
917         Not all of the error -> loaded -> error transition cases work yet.
918
919         * dom/EventTargetNode.cpp:
920         (WebCore::EventTargetNode::dispatchGenericEvent):
921         * html/HTMLImageLoader.cpp:
922         (WebCore::HTMLImageLoader::dispatchLoadEvent):
923         * html/HTMLImageLoader.h:
924         (WebCore::HTMLImageLoader::haveFiredLoadEvent):
925         (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
926         * ksvg2/misc/SVGImageLoader.cpp:
927         (WebCore::SVGImageLoader::SVGImageLoader):
928         (WebCore::SVGImageLoader::dispatchLoadEvent):
929         * ksvg2/misc/SVGImageLoader.h:
930         * ksvg2/svg/SVGAElement.cpp:
931         (WebCore::SVGAElement::parseMappedAttribute):
932         * ksvg2/svg/SVGAnimatedBoolean.h:
933         * ksvg2/svg/SVGElement.cpp:
934         (WebCore::SVGElement::SVGElement):
935         (WebCore::SVGElement::parseMappedAttribute):
936         (WebCore::SVGElement::haveLoadedRequiredResources):
937         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
938         (WebCore::SVGElement::closeRenderer):
939         * ksvg2/svg/SVGElement.h:
940         (WebCore::SVGElement::rendererIsNeeded):
941         (WebCore::svg_dynamic_cast):
942         * ksvg2/svg/SVGExternalResourcesRequired.h:
943         * ksvg2/svg/SVGImageElement.cpp:
944         (SVGImageElement::SVGImageElement):
945         (SVGImageElement::haveLoadedRequiredResources):
946         * ksvg2/svg/SVGImageElement.h:
947         * ksvg2/svg/SVGSVGElement.cpp:
948         (WebCore::SVGSVGElement::parseMappedAttribute):
949         * ksvg2/svg/SVGScriptElement.cpp:
950         (WebCore::SVGScriptElement::SVGScriptElement):
951         (WebCore::SVGScriptElement::parseMappedAttribute):
952         (WebCore::SVGScriptElement::executeScript):
953         * xml/xmlhttprequest.cpp:
954         (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
955
956 2006-08-14  Anders Carlsson  <acarlsson@apple.com>
957
958         Reviewed by Maciej.
959
960         http://bugzilla.opendarwin.org/show_bug.cgi?id=10393
961         Autogenerate NodeIterator and TreeWalker.
962         
963         * DerivedSources.make:
964         * WebCore.xcodeproj/project.pbxproj:
965         Add new files.
966         
967         * bindings/js/JSNodeIteratorCustom.cpp: Added.
968         (WebCore::JSNodeIterator::mark):
969         * bindings/js/JSTreeWalkerCustom.cpp: Added.
970         (WebCore::JSTreeWalker::mark):
971         
972         * bindings/js/kjs_traversal.cpp:
973         * bindings/js/kjs_traversal.h:
974         Remove implementations of DOMNodeIterator and DOMTreeWalker.
975
976         * bindings/scripts/CodeGeneratorJS.pm:
977         Add "CustomMarkFunction" attribute for classes where mark() needs to be overridden.
978         
979         * bindings/objc/DOM.mm:
980         (-[DOMNodeIterator detach]):
981         * dom/NodeIterator.cpp:
982         (WebCore::NodeIterator::detach):
983         * dom/NodeIterator.h:
984         Get rid of exception in detach, it isn't used at all and this function can't throw an exception according to the spec.
985         * dom/NodeIterator.idl: Added.
986         * dom/TreeWalker.idl: Added.
987
988 2006-08-14  Brady Eidson  <beidson@apple.com>
989
990         Reviewed by John
991
992         The changes are plentiful, but small, mostly to improve performance
993         1) Add a bool flag to SiteIcon to stop it from querying the database over and over
994         2) Added a pageURL->iconURL hashmap to cache database results, as an optimization
995         3) Fix a bug in setIconURLForPageURL code where the pageURL would still point to an old icon
996         4) Added isIconURLRetained() to optimize the retain count check
997         5) Prune old, unused code
998
999         * loader/icon/IconDatabase.cpp:
1000         (WebCore::IconDatabase::imageDataForIconID): Removed unused code
1001         (WebCore::IconDatabase::imageDataForIconURL): Removed unused code
1002         (WebCore::IconDatabase::imageDataForPageURL): Removed unused code
1003         (WebCore::IconDatabase::isIconExpiredForIconURL): Removed LOG msg
1004         (WebCore::IconDatabase::isIconExpiredForPageURL): Removed LOG msg
1005         (WebCore::IconDatabase::iconURLForPageURL): Added a hashmap cache to avoid common queries
1006         (WebCore::IconDatabase::releaseIconForURL): Changed to is isRetained() instead of retainCount()
1007         (WebCore::IconDatabase::isIconURLRetained): Added - we don't care about the actual retain count
1008           for an icon so much as whether or not it is retained
1009         (WebCore::IconDatabase::setIconURLForPageURL): If the new and old iconURLs are the same, skip the
1010           SQLite code
1011         * loader/icon/IconDatabase.h:  Added new methods/variables
1012         * loader/icon/SiteIcon.cpp:
1013         (SiteIcon::SiteIcon): Added a flag so it only queries the database for icon data once
1014         (SiteIcon::getImage): Ditto
1015
1016 2006-08-14  David Hyatt  <hyatt@apple.com>
1017
1018         Fix for bug 10385, add more support for crappy pseudo-XML-in-HTML.
1019
1020         Reviewed by ggaren
1021
1022         Added fast/parser/bad-xml-slash.html
1023
1024         * html/HTMLTokenizer.cpp:
1025         (WebCore::HTMLTokenizer::parseTag):
1026
1027 2006-08-14  Darin Adler  <darin@apple.com>
1028
1029         Reviewed by John Sullivan.
1030
1031         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10204
1032           REGRESSION: title tag parsing problem breaks Travelocity and Google Analytics pages
1033
1034         Test: fast/parser/title-error-test.html
1035
1036         * html/HTMLParser.cpp: (WebCore::HTMLParser::handleError): Fixed an error
1037         handling case that was skipping until a </style> tag in code that was shared
1038         between both <title> and <style>. Also rearranged the code a tiny bit.
1039
1040 2006-08-14  Darin Adler  <darin@apple.com>
1041
1042         Reviewed by Hyatt.
1043
1044         - fixed some storage leaks
1045           (part of http://bugzilla.opendarwin.org/show_bug.cgi?id=10259)
1046
1047         * platform/mac/ResourceLoaderMac.mm: (WebCore::ResourceLoader::start):
1048         Rearrange code so that "delete this" is called any time the function returns
1049         false -- ownership was inconsistent before.
1050
1051         * rendering/RenderContainer.cpp: (WebCore::RenderContainer::removeChildNode):
1052         Call deleteLineBoxWrapper even when documentBeingDestroyed() is true, because
1053         some of what it does has to be done during destruction. A little awkward since
1054         I preserved the order of operations. Perhaps we could structure this better later.
1055
1056 2006-08-14  David Harrison  <harrison@apple.com>
1057
1058         Reviewed by John Sullivan and Geoff Garen.
1059
1060         <rdar://problem/3854950> AX Seed: Blackboard Learning Systems - frame names need to be put in AXDescription AXAttribute
1061
1062         Test cases added: None.  Manual AX testing is way too awkward, and automated testing
1063         is not possible.  See following bug...
1064             <rdar://problem/4256882> Need automated testing support for accessibility APIs
1065
1066         * bridge/mac/WebCoreAXObject.mm:
1067         (-[WebCoreAXObject accessibilityDescription]):
1068         For a web area, return the name of the owning frame or iframe.
1069         
1070         (-[WebCoreAXObject accessibilityAttributeNames]):
1071         Advertize NSAccessibilityDescriptionAttribute.
1072         
1073         (-[WebCoreAXObject rendererForView:]):
1074         Clean up some old naming.
1075
1076 2006-08-11  Anders Carlsson  <acarlsson@apple.com>
1077
1078         Reviewed by Darin.
1079
1080         http://bugzilla.opendarwin.org/show_bug.cgi?id=10353
1081         XMLSerializer and DOMParser should have real implementations
1082         
1083         Make real implementation files for DOMParser and XMLSerializer and wrap them
1084         using our bindings generation.
1085         
1086         * DerivedSources.make:
1087         * WebCore.xcodeproj/project.pbxproj:
1088         * bindings/js/JSDOMParser.cpp: Removed.
1089         * bindings/js/JSDOMParser.h: Removed.
1090         * bindings/js/JSXMLSerializer.cpp: Removed.
1091         * bindings/js/JSXMLSerializer.h: Removed.
1092         * bindings/js/kjs_window.cpp:
1093         (KJS::Window::getValueProperty):
1094         * bindings/js/kjs_window.h:
1095         (KJS::Window::):
1096         * page/DOMWindow.idl:
1097         * xml/DOMParser.cpp: Added.
1098         (WebCore::DOMParser::parseFromString):
1099         * xml/DOMParser.h: Added.
1100         * xml/DOMParser.idl: Added.
1101         * xml/XMLSerializer.cpp: Added.
1102         (WebCore::XMLSerializer::serializeToString):
1103         * xml/XMLSerializer.h: Added.
1104         * xml/XMLSerializer.idl: Added.
1105
1106 2006-08-14  Maciej Stachowiak  <mjs@apple.com>
1107
1108         Reviewed by Brady.
1109
1110         - removed WebKit-level dependencies from WebFormDataStream. Use WebCore version of system interface
1111
1112         * WebCore.exp: export new functions
1113         * platform/mac/WebCoreSystemInterface.h: Added CFReadStream related functions
1114         * platform/mac/WebCoreSystemInterface.mm: ditto
1115
1116 2006-08-13  Maks Orlovich  <maksim@kde.org>
1117
1118         Reviewed (and tweaked a little) by Maciej.
1119         
1120         - shrank the size of JSObject by 8 bytes and made the corresponding reduction to the cell size, resulting
1121         in a 1.2% speed improvement on JS iBench (and probably overall memory savings).
1122
1123         The WebCore part of this is to expect only FunctionImp to have a scope, not all JSObjects.
1124         
1125         * bindings/js/kjs_events.cpp:
1126         (KJS::JSLazyEventListener::parseCode):
1127
1128 2006-08-12  Eric Seidel  <eric@eseidel.com>
1129
1130         Reviewed by hyatt and mjs.
1131
1132         Fix two missing null checks causing layout test crashes.
1133
1134         * css/cssstyleselector.cpp:
1135         (WebCore::CSSStyleSelector::adjustRenderStyle): check e for null (null for pseudo styles)
1136         * kcanvas/RenderSVGContainer.cpp:
1137         (WebCore::RenderSVGContainer::requiresLayer): check parent()->element() for null
1138
1139
1140 2006-08-11  Eric Seidel  <eric@eseidel.com>
1141
1142         Reviewed by andersca.
1143
1144         The outermost <svg> element needs to clip itself
1145         http://bugzilla.opendarwin.org/show_bug.cgi?id=5358
1146
1147         * css/cssstyleselector.cpp:
1148         (WebCore::CSSStyleSelector::adjustRenderStyle): adjust for SVG overflow rules
1149         * kcanvas/RenderSVGContainer.cpp:
1150         (WebCore::RenderSVGContainer::requiresLayer): only require layers for absolute/relative positioning of outermost SVG
1151         (WebCore::RenderSVGContainer::paint):
1152         * kcanvas/device/KRenderingDevice.h:
1153         * kcanvas/device/quartz/KRenderingDeviceQuartz.h: remove dead methods
1154         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm: remove dead methods
1155         (WebCore::KRenderingDeviceContextQuartz::KRenderingDeviceContextQuartz):
1156         * ksvg2/svg/SVGPaint.cpp: spacing changes
1157         (WebCore::SVGPaint::SVGPaint): spacing cleanup
1158         * ksvg2/svg/SVGSVGElement.cpp:
1159         (WebCore::SVGSVGElement::parseMappedAttribute): spacing cleanup
1160         * platform/GraphicsContext.h: Added concatCTM
1161         * platform/cg/GraphicsContextCG.cpp:
1162         (WebCore::GraphicsContext::concatCTM): Added.
1163
1164 2006-08-11  Brady Eidson  <beidson@apple.com>
1165
1166         Reviewed by Maciej
1167
1168         Renamed a method/parameter for clarity and consistency, as well as some style
1169         cleanups and removing some ridiculously verbose log messages.
1170         Also added an _isEmpty method to the database and bridge for WebKit's use.
1171         Finally, added a central way for both WebKit and WebCore to get the icon database filename
1172
1173         * bridge/mac/WebCoreIconDatabaseBridge.h:  Added _isEmpty and defaultDatabaseFilename
1174         * bridge/mac/WebCoreIconDatabaseBridge.mm:  Removed an unnecessary semicolon off most of these methods
1175         (-[WebCoreIconDatabaseBridge openSharedDatabaseWithPath:]):
1176         (-[WebCoreIconDatabaseBridge closeSharedDatabase]):
1177         (-[WebCoreIconDatabaseBridge isOpen]):
1178         (-[WebCoreIconDatabaseBridge _isEmpty]):  Added
1179         (-[WebCoreIconDatabaseBridge setPrivateBrowsingEnabled:]):
1180         (-[WebCoreIconDatabaseBridge privateBrowsingEnabled]):
1181         (-[WebCoreIconDatabaseBridge iconForPageURL:withSize:]):
1182         (-[WebCoreIconDatabaseBridge iconURLForPageURL:]):
1183         (-[WebCoreIconDatabaseBridge defaultIconWithSize:]):
1184         (-[WebCoreIconDatabaseBridge retainIconForURL:]):
1185         (-[WebCoreIconDatabaseBridge releaseIconForURL:]):
1186         (-[WebCoreIconDatabaseBridge _setIconData:forIconURL:]):
1187         (-[WebCoreIconDatabaseBridge _setHaveNoIconForIconURL:]):
1188         (-[WebCoreIconDatabaseBridge _setIconURL:forPageURL:]):
1189         (-[WebCoreIconDatabaseBridge _hasIconForIconURL:]):
1190         (-[WebCoreIconDatabaseBridge defaultDatabaseFilename]):  Added
1191
1192         * loader/icon/IconDatabase.cpp:
1193         (WebCore::IconDatabase::defaultDatabaseFilename):  Added
1194         (WebCore::IconDatabase::open):  
1195         (WebCore::IconDatabase::isEmpty):  Added
1196         (WebCore::IconDatabase::retainIconForURL):  Removed log message
1197         (WebCore::IconDatabase::releaseIconForURL):  Removed log message
1198         * loader/icon/IconDatabase.h: 
1199
1200 2006-08-11  David Hyatt  <hyatt@apple.com>
1201
1202         Eliminate RenderImageButton.
1203
1204         Reviewed by darin
1205
1206         * WebCore.xcodeproj/project.pbxproj:
1207         * bridge/mac/WebCoreAXObject.mm:
1208         (-[WebCoreAXObject isImageButton]):
1209         * html/HTMLInputElement.cpp:
1210         (WebCore::HTMLInputElement::createRenderer):
1211         * rendering/RenderImage.h:
1212         (WebCore::RenderImage::isImage):
1213
1214 2006-08-11  Adele Peterson  <adele@apple.com>
1215
1216         Reviewed by Brady.
1217
1218         - Fix for <rdar://problem/4656274> 
1219         REGRESSION: option elements are selected when added regardless of "selected" property
1220
1221         Test: fast/forms/option-constructor-selected.html
1222
1223         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::setOption):
1224         When adding an option element, check that the option element is selected before calling setSelectedIndex.
1225
1226 2006-08-11  David Hyatt  <hyatt@apple.com>
1227
1228         Fix for bug 10349, make sure to call setChanged when an anchor changes
1229         from not being a link to being a link (and vice versa).
1230
1231         Test is in fast/dynamic/link-href-change.html
1232
1233         Reviewed by darin
1234
1235         * html/HTMLAnchorElement.cpp:
1236         (WebCore::HTMLAnchorElement::HTMLAnchorElement):
1237         (WebCore::HTMLAnchorElement::parseMappedAttribute):
1238         * html/HTMLAnchorElement.h:
1239         * html/HTMLAreaElement.cpp:
1240         (WebCore::HTMLAreaElement::parseMappedAttribute):
1241
1242 2006-08-09  Rob Buis  <buis@kde.org>
1243
1244         Reviewed by Darin.
1245
1246         Revert an over-optimization step that messed up the HashSet lookup.
1247
1248         * dom/DOMImplementation.cpp:
1249
1250 2006-08-12  Oliver  <ojh16@student.canterbury.ac.nz>
1251
1252         Rubber stamped by tim
1253
1254         Removed commented out code
1255
1256         * kcanvas/RenderSVGImage.cpp:
1257         (WebCore::RenderSVGImage::paint):
1258
1259 2006-08-12  Oliver  <ojh16@student.canterbury.ac.nz>
1260
1261         Reviewed by geoff
1262
1263         Fixed regression in SVG image layout
1264         (see bug #10346)
1265
1266         * kcanvas/RenderSVGImage.cpp:
1267         (WebCore::RenderSVGImage::paint):
1268
1269 2006-08-10  Anders Carlsson  <acarlsson@apple.com>
1270
1271         Rubber-stamped by Maciej.
1272
1273         Move xpath to xml.
1274         
1275         * DerivedSources.make:
1276         * WebCore.vcproj/WebCore/WebCore.vcproj:
1277         * WebCore.xcodeproj/project.pbxproj:
1278         * xpath/XPathEvaluator.cpp: Removed.
1279         * xpath/XPathEvaluator.h: Removed.
1280         * xpath/XPathEvaluator.idl: Removed.
1281         * xpath/XPathExpression.cpp: Removed.
1282         * xpath/XPathExpression.h: Removed.
1283         * xpath/XPathExpression.idl: Removed.
1284         * xpath/XPathNSResolver.cpp: Removed.
1285         * xpath/XPathNSResolver.h: Removed.
1286         * xpath/XPathNSResolver.idl: Removed.
1287         * xpath/XPathNamespace.cpp: Removed.
1288         * xpath/XPathNamespace.h: Removed.
1289         * xpath/XPathResult.cpp: Removed.
1290         * xpath/XPathResult.h: Removed.
1291         * xpath/XPathResult.idl: Removed.
1292         * xpath/impl/XPathExpressionNode.cpp: Removed.
1293         * xpath/impl/XPathExpressionNode.h: Removed.
1294         * xpath/impl/XPathFunctions.cpp: Removed.
1295         * xpath/impl/XPathFunctions.h: Removed.
1296         * xpath/impl/XPathGrammar.y: Removed.
1297         * xpath/impl/XPathParser.cpp: Removed.
1298         * xpath/impl/XPathParser.h: Removed.
1299         * xpath/impl/XPathPath.cpp: Removed.
1300         * xpath/impl/XPathPath.h: Removed.
1301         * xpath/impl/XPathPredicate.cpp: Removed.
1302         * xpath/impl/XPathPredicate.h: Removed.
1303         * xpath/impl/XPathStep.cpp: Removed.
1304         * xpath/impl/XPathStep.h: Removed.
1305         * xpath/impl/XPathUtil.cpp: Removed.
1306         * xpath/impl/XPathUtil.h: Removed.
1307         * xpath/impl/XPathValue.cpp: Removed.
1308         * xpath/impl/XPathValue.h: Removed.
1309         * xpath/impl/XPathVariableReference.cpp: Removed.
1310         * xpath/impl/XPathVariableReference.h: Removed.
1311
1312 2006-08-10  David Harrison  <harrison@apple.com>
1313
1314         Reviewed by John Sullivan.
1315
1316         <rdar://problem/4600112> REGRESSION: VO no longer able to review text within an edit field on web pages
1317
1318         Test cases added: None.  Manual AX testing is way too awkward, and automated testing
1319         is not possible.  See following bug...
1320             <rdar://problem/4256882> Need automated testing support for accessibility APIs
1321
1322         * bridge/mac/WebCoreAXObject.mm:
1323         (-[WebCoreAXObject value]):
1324         Add handling for text input fields.
1325
1326 2006-08-09  Graham Dennis  <graham.dennis@gmail.com>
1327
1328         Reviewed by Darin.
1329
1330         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10247
1331         REGRESSION: Unable to build webkit without SVG/XPATH
1332
1333         * bindings/js/kjs_binding.cpp:
1334         (KJS::setDOMException):
1335         * bindings/js/kjs_dom.cpp:
1336         (KJS::toJS):
1337         * bindings/js/kjs_html.cpp:
1338         (KJS::HTMLElementFunction::callAsFunction):
1339         * bindings/js/kjs_proxy.cpp:
1340         * bindings/js/kjs_proxy.h:
1341         * bindings/objc/DOMInternal.h:
1342         * bindings/objc/DOMInternal.mm:
1343         (raiseDOMException):
1344         * bindings/objc/DOMXPath.mm:
1345         * bindings/objc/DOMXPathInternal.h:
1346         * bindings/scripts/CodeGeneratorJS.pm:
1347         * bridge/mac/WebCoreFrameBridge.mm:
1348         (+[WebCoreFrameBridge supportedNonImageMIMETypes]):
1349         * css/CSSGrammar.y:
1350         * css/CSSStyleDeclaration.cpp:
1351         (WebCore::propertyID):
1352         * css/cssparser.cpp:
1353         (WebCore::CSSParser::parseValue):
1354         * css/cssparser.h:
1355         * css/cssstyleselector.cpp:
1356         (WebCore::CSSStyleSelector::loadDefaultStyle):
1357         (WebCore::CSSStyleSelector::applyProperty):
1358         * css/cssstyleselector.h:
1359         * dom/Document.cpp:
1360         (WebCore::Document::Document):
1361         (WebCore::Document::~Document):
1362         (WebCore::Document::createElementNS):
1363         (WebCore::Document::implicitClose):
1364         (WebCore::Document::recalcStyleSelector):
1365         (WebCore::Document::createEvent):
1366         * dom/Document.h:
1367         * dom/Document.idl:
1368         * dom/Node.cpp:
1369         (WebCore::Node::createRendererIfNeeded):
1370         * dom/Node.h:
1371         * dom/XMLTokenizer.cpp:
1372         (WebCore::XMLTokenizer::endElementNs):
1373         (WebCore::XMLTokenizer::insertErrorMessageBlock):
1374         * html/HTMLEmbedElement.cpp:
1375         * html/HTMLEmbedElement.h:
1376         * html/HTMLObjectElement.cpp:
1377         * html/HTMLObjectElement.h:
1378         * kcanvas/KCanvasCreator.cpp:
1379         * kcanvas/KCanvasCreator.h:
1380         * kcanvas/KCanvasFilters.cpp:
1381         * kcanvas/KCanvasFilters.h:
1382         * kcanvas/KCanvasImage.h:
1383         * kcanvas/KCanvasMatrix.cpp:
1384         * kcanvas/KCanvasMatrix.h:
1385         * kcanvas/KCanvasPath.cpp:
1386         * kcanvas/KCanvasPath.h:
1387         * kcanvas/KCanvasResourceListener.h:
1388         * kcanvas/KCanvasResources.cpp:
1389         * kcanvas/KCanvasResources.h:
1390         * kcanvas/KCanvasTreeDebug.cpp:
1391         * kcanvas/RenderForeignObject.cpp:
1392         * kcanvas/RenderForeignObject.h:
1393         * kcanvas/RenderPath.cpp:
1394         * kcanvas/RenderPath.h:
1395         * kcanvas/RenderSVGContainer.cpp:
1396         * kcanvas/RenderSVGContainer.h:
1397         * kcanvas/RenderSVGImage.cpp:
1398         * kcanvas/RenderSVGImage.h:
1399         * kcanvas/RenderSVGText.cpp:
1400         * kcanvas/RenderSVGText.h:
1401         * kcanvas/device/KRenderingDevice.cpp:
1402         * kcanvas/device/KRenderingDevice.h:
1403         * kcanvas/device/KRenderingFillPainter.cpp:
1404         * kcanvas/device/KRenderingFillPainter.h:
1405         * kcanvas/device/KRenderingPaintServer.h:
1406         * kcanvas/device/KRenderingPaintServerGradient.cpp:
1407         * kcanvas/device/KRenderingPaintServerGradient.h:
1408         * kcanvas/device/KRenderingPaintServerPattern.cpp:
1409         * kcanvas/device/KRenderingPaintServerPattern.h:
1410         * kcanvas/device/KRenderingPaintServerSolid.cpp:
1411         * kcanvas/device/KRenderingPaintServerSolid.h:
1412         * kcanvas/device/KRenderingStrokePainter.cpp:
1413         * kcanvas/device/KRenderingStrokePainter.h:
1414         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
1415         * kcanvas/device/quartz/KCanvasFilterQuartz.mm:
1416         * kcanvas/device/quartz/KCanvasItemQuartz.mm:
1417         * kcanvas/device/quartz/KCanvasMaskerQuartz.mm:
1418         * kcanvas/device/quartz/KCanvasPathQuartz.mm:
1419         * kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
1420         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
1421         * kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
1422         * kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
1423         * kcanvas/device/quartz/KRenderingPaintServerQuartz.mm:
1424         * kcanvas/device/quartz/QuartzSupport.h:
1425         * kcanvas/device/quartz/QuartzSupport.mm:
1426         * ksvg2/bindings/js/JSSVGElementWrapperFactory.cpp:
1427         * ksvg2/bindings/js/JSSVGElementWrapperFactory.h:
1428         * ksvg2/css/SVGCSSParser.cpp:
1429         * ksvg2/css/SVGCSSStyleSelector.cpp:
1430         * ksvg2/css/SVGRenderStyle.cpp:
1431         * ksvg2/css/SVGRenderStyle.h:
1432         * ksvg2/css/SVGRenderStyleDefs.cpp:
1433         * ksvg2/css/SVGRenderStyleDefs.h:
1434         * ksvg2/ecma/GlobalObject.cpp:
1435         * ksvg2/ecma/GlobalObject.h:
1436         * ksvg2/events/JSSVGLazyEventListener.cpp:
1437         * ksvg2/events/JSSVGLazyEventListener.h:
1438         * ksvg2/events/SVGZoomEvent.cpp:
1439         * ksvg2/events/SVGZoomEvent.h:
1440         * ksvg2/ksvg.h:
1441         * ksvg2/misc/KCanvasRenderingStyle.cpp:
1442         * ksvg2/misc/KCanvasRenderingStyle.h:
1443         * ksvg2/misc/KSVGTimeScheduler.cpp:
1444         * ksvg2/misc/KSVGTimeScheduler.h:
1445         * ksvg2/misc/SVGDocumentExtensions.cpp:
1446         * ksvg2/misc/SVGDocumentExtensions.h:
1447         * ksvg2/misc/SVGImageLoader.cpp:
1448         * ksvg2/misc/SVGImageLoader.h:
1449         * ksvg2/svg/DOMList.h:
1450         * ksvg2/svg/SVGAElement.cpp:
1451         * ksvg2/svg/SVGAElement.h:
1452         * ksvg2/svg/SVGAngle.cpp:
1453         * ksvg2/svg/SVGAngle.h:
1454         * ksvg2/svg/SVGAnimateColorElement.cpp:
1455         * ksvg2/svg/SVGAnimateColorElement.h:
1456         * ksvg2/svg/SVGAnimateElement.cpp:
1457         * ksvg2/svg/SVGAnimateElement.h:
1458         * ksvg2/svg/SVGAnimateTransformElement.cpp:
1459         * ksvg2/svg/SVGAnimateTransformElement.h:
1460         * ksvg2/svg/SVGAnimatedAngle.cpp:
1461         * ksvg2/svg/SVGAnimatedAngle.h:
1462         * ksvg2/svg/SVGAnimatedBoolean.cpp:
1463         * ksvg2/svg/SVGAnimatedBoolean.h:
1464         * ksvg2/svg/SVGAnimatedColor.cpp:
1465         * ksvg2/svg/SVGAnimatedColor.h:
1466         * ksvg2/svg/SVGAnimatedEnumeration.cpp:
1467         * ksvg2/svg/SVGAnimatedEnumeration.h:
1468         * ksvg2/svg/SVGAnimatedInteger.cpp:
1469         * ksvg2/svg/SVGAnimatedInteger.h:
1470         * ksvg2/svg/SVGAnimatedLength.cpp:
1471         * ksvg2/svg/SVGAnimatedLength.h:
1472         * ksvg2/svg/SVGAnimatedLengthList.cpp:
1473         * ksvg2/svg/SVGAnimatedLengthList.h:
1474         * ksvg2/svg/SVGAnimatedNumber.cpp:
1475         * ksvg2/svg/SVGAnimatedNumber.h:
1476         * ksvg2/svg/SVGAnimatedNumberList.cpp:
1477         * ksvg2/svg/SVGAnimatedNumberList.h:
1478         * ksvg2/svg/SVGAnimatedPathData.cpp:
1479         * ksvg2/svg/SVGAnimatedPathData.h:
1480         * ksvg2/svg/SVGAnimatedPoints.cpp:
1481         * ksvg2/svg/SVGAnimatedPoints.h:
1482         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.cpp:
1483         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.h:
1484         * ksvg2/svg/SVGAnimatedRect.cpp:
1485         * ksvg2/svg/SVGAnimatedRect.h:
1486         * ksvg2/svg/SVGAnimatedString.cpp:
1487         * ksvg2/svg/SVGAnimatedString.h:
1488         * ksvg2/svg/SVGAnimatedTemplate.h:
1489         * ksvg2/svg/SVGAnimatedTransformList.cpp:
1490         * ksvg2/svg/SVGAnimatedTransformList.h:
1491         * ksvg2/svg/SVGAnimationElement.cpp:
1492         * ksvg2/svg/SVGAnimationElement.h:
1493         * ksvg2/svg/SVGCircleElement.cpp:
1494         * ksvg2/svg/SVGCircleElement.h:
1495         * ksvg2/svg/SVGClipPathElement.cpp:
1496         * ksvg2/svg/SVGClipPathElement.h:
1497         * ksvg2/svg/SVGColor.cpp:
1498         * ksvg2/svg/SVGColor.h:
1499         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1500         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
1501         * ksvg2/svg/SVGCursorElement.cpp:
1502         * ksvg2/svg/SVGCursorElement.h:
1503         * ksvg2/svg/SVGDOMImplementation.cpp:
1504         * ksvg2/svg/SVGDOMImplementation.h:
1505         * ksvg2/svg/SVGDefsElement.cpp:
1506         * ksvg2/svg/SVGDefsElement.h:
1507         * ksvg2/svg/SVGDescElement.cpp:
1508         * ksvg2/svg/SVGDescElement.h:
1509         * ksvg2/svg/SVGDocument.cpp:
1510         * ksvg2/svg/SVGDocument.h:
1511         * ksvg2/svg/SVGElement.cpp:
1512         * ksvg2/svg/SVGElement.h:
1513         * ksvg2/svg/SVGElementInstance.cpp:
1514         * ksvg2/svg/SVGElementInstance.h:
1515         * ksvg2/svg/SVGElementInstanceList.cpp:
1516         * ksvg2/svg/SVGElementInstanceList.h:
1517         * ksvg2/svg/SVGEllipseElement.cpp:
1518         * ksvg2/svg/SVGEllipseElement.h:
1519         * ksvg2/svg/SVGExternalResourcesRequired.cpp:
1520         * ksvg2/svg/SVGExternalResourcesRequired.h:
1521         * ksvg2/svg/SVGFEBlendElement.cpp:
1522         * ksvg2/svg/SVGFEBlendElement.h:
1523         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1524         * ksvg2/svg/SVGFEColorMatrixElement.h:
1525         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
1526         * ksvg2/svg/SVGFEComponentTransferElement.h:
1527         * ksvg2/svg/SVGFECompositeElement.cpp:
1528         * ksvg2/svg/SVGFECompositeElement.h:
1529         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1530         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
1531         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1532         * ksvg2/svg/SVGFEDisplacementMapElement.h:
1533         * ksvg2/svg/SVGFEDistantLightElement.cpp:
1534         * ksvg2/svg/SVGFEDistantLightElement.h:
1535         * ksvg2/svg/SVGFEFloodElement.cpp:
1536         * ksvg2/svg/SVGFEFloodElement.h:
1537         * ksvg2/svg/SVGFEFuncAElement.cpp:
1538         * ksvg2/svg/SVGFEFuncAElement.h:
1539         * ksvg2/svg/SVGFEFuncBElement.cpp:
1540         * ksvg2/svg/SVGFEFuncBElement.h:
1541         * ksvg2/svg/SVGFEFuncGElement.cpp:
1542         * ksvg2/svg/SVGFEFuncGElement.h:
1543         * ksvg2/svg/SVGFEFuncRElement.cpp:
1544         * ksvg2/svg/SVGFEFuncRElement.h:
1545         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1546         * ksvg2/svg/SVGFEGaussianBlurElement.h:
1547         * ksvg2/svg/SVGFEImageElement.cpp:
1548         * ksvg2/svg/SVGFEImageElement.h:
1549         * ksvg2/svg/SVGFELightElement.cpp:
1550         * ksvg2/svg/SVGFELightElement.h:
1551         * ksvg2/svg/SVGFEMergeElement.cpp:
1552         * ksvg2/svg/SVGFEMergeElement.h:
1553         * ksvg2/svg/SVGFEMergeNodeElement.cpp:
1554         * ksvg2/svg/SVGFEMergeNodeElement.h:
1555         * ksvg2/svg/SVGFEOffsetElement.cpp:
1556         * ksvg2/svg/SVGFEOffsetElement.h:
1557         * ksvg2/svg/SVGFEPointLightElement.cpp:
1558         * ksvg2/svg/SVGFEPointLightElement.h:
1559         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1560         * ksvg2/svg/SVGFESpecularLightingElement.h:
1561         * ksvg2/svg/SVGFESpotLightElement.cpp:
1562         * ksvg2/svg/SVGFESpotLightElement.h:
1563         * ksvg2/svg/SVGFETileElement.cpp:
1564         * ksvg2/svg/SVGFETileElement.h:
1565         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1566         * ksvg2/svg/SVGFETurbulenceElement.h:
1567         * ksvg2/svg/SVGFilterElement.cpp:
1568         * ksvg2/svg/SVGFilterElement.h:
1569         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.cpp:
1570         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
1571         * ksvg2/svg/SVGFitToViewBox.cpp:
1572         * ksvg2/svg/SVGFitToViewBox.h:
1573         * ksvg2/svg/SVGForeignObjectElement.cpp:
1574         * ksvg2/svg/SVGForeignObjectElement.h:
1575         * ksvg2/svg/SVGGElement.cpp:
1576         * ksvg2/svg/SVGGElement.h:
1577         * ksvg2/svg/SVGGradientElement.cpp:
1578         * ksvg2/svg/SVGGradientElement.h:
1579         * ksvg2/svg/SVGHelper.cpp:
1580         * ksvg2/svg/SVGHelper.h:
1581         * ksvg2/svg/SVGImageElement.cpp:
1582         * ksvg2/svg/SVGImageElement.h:
1583         * ksvg2/svg/SVGLangSpace.cpp:
1584         * ksvg2/svg/SVGLangSpace.h:
1585         * ksvg2/svg/SVGLength.cpp:
1586         * ksvg2/svg/SVGLength.h:
1587         * ksvg2/svg/SVGLengthList.cpp:
1588         * ksvg2/svg/SVGLengthList.h:
1589         * ksvg2/svg/SVGLineElement.cpp:
1590         * ksvg2/svg/SVGLineElement.h:
1591         * ksvg2/svg/SVGLinearGradientElement.cpp:
1592         * ksvg2/svg/SVGLinearGradientElement.h:
1593         * ksvg2/svg/SVGList.h:
1594         * ksvg2/svg/SVGLocatable.cpp:
1595         * ksvg2/svg/SVGLocatable.h:
1596         * ksvg2/svg/SVGMarkerElement.cpp:
1597         * ksvg2/svg/SVGMarkerElement.h:
1598         * ksvg2/svg/SVGMaskElement.cpp:
1599         * ksvg2/svg/SVGMaskElement.h:
1600         * ksvg2/svg/SVGMatrix.cpp:
1601         * ksvg2/svg/SVGMatrix.h:
1602         * ksvg2/svg/SVGNumber.cpp:
1603         * ksvg2/svg/SVGNumber.h:
1604         * ksvg2/svg/SVGNumberList.cpp:
1605         * ksvg2/svg/SVGNumberList.h:
1606         * ksvg2/svg/SVGPaint.cpp:
1607         * ksvg2/svg/SVGPaint.h:
1608         * ksvg2/svg/SVGPathElement.cpp:
1609         * ksvg2/svg/SVGPathElement.h:
1610         * ksvg2/svg/SVGPathSeg.cpp:
1611         * ksvg2/svg/SVGPathSeg.h:
1612         * ksvg2/svg/SVGPathSegArc.cpp:
1613         * ksvg2/svg/SVGPathSegArc.h:
1614         * ksvg2/svg/SVGPathSegClosePath.cpp:
1615         * ksvg2/svg/SVGPathSegClosePath.h:
1616         * ksvg2/svg/SVGPathSegCurvetoCubic.cpp:
1617         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
1618         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.cpp:
1619         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
1620         * ksvg2/svg/SVGPathSegCurvetoQuadratic.cpp:
1621         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
1622         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.cpp:
1623         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
1624         * ksvg2/svg/SVGPathSegLineto.cpp:
1625         * ksvg2/svg/SVGPathSegLineto.h:
1626         * ksvg2/svg/SVGPathSegLinetoHorizontal.cpp:
1627         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
1628         * ksvg2/svg/SVGPathSegLinetoVertical.cpp:
1629         * ksvg2/svg/SVGPathSegLinetoVertical.h:
1630         * ksvg2/svg/SVGPathSegList.cpp:
1631         * ksvg2/svg/SVGPathSegList.h:
1632         * ksvg2/svg/SVGPathSegMoveto.cpp:
1633         * ksvg2/svg/SVGPathSegMoveto.h:
1634         * ksvg2/svg/SVGPatternElement.cpp:
1635         * ksvg2/svg/SVGPatternElement.h:
1636         * ksvg2/svg/SVGPoint.cpp:
1637         * ksvg2/svg/SVGPoint.h:
1638         * ksvg2/svg/SVGPointList.cpp:
1639         * ksvg2/svg/SVGPointList.h:
1640         * ksvg2/svg/SVGPolyElement.cpp:
1641         * ksvg2/svg/SVGPolyElement.h:
1642         * ksvg2/svg/SVGPolygonElement.cpp:
1643         * ksvg2/svg/SVGPolygonElement.h:
1644         * ksvg2/svg/SVGPolylineElement.cpp:
1645         * ksvg2/svg/SVGPolylineElement.h:
1646         * ksvg2/svg/SVGPreserveAspectRatio.cpp:
1647         * ksvg2/svg/SVGPreserveAspectRatio.h:
1648         * ksvg2/svg/SVGRadialGradientElement.cpp:
1649         * ksvg2/svg/SVGRadialGradientElement.h:
1650         * ksvg2/svg/SVGRect.cpp:
1651         * ksvg2/svg/SVGRect.h:
1652         * ksvg2/svg/SVGRectElement.cpp:
1653         * ksvg2/svg/SVGRectElement.h:
1654         * ksvg2/svg/SVGSVGElement.cpp:
1655         * ksvg2/svg/SVGSVGElement.h:
1656         * ksvg2/svg/SVGScriptElement.cpp:
1657         * ksvg2/svg/SVGScriptElement.h:
1658         * ksvg2/svg/SVGSetElement.cpp:
1659         * ksvg2/svg/SVGSetElement.h:
1660         * ksvg2/svg/SVGStopElement.cpp:
1661         * ksvg2/svg/SVGStopElement.h:
1662         * ksvg2/svg/SVGStringList.cpp:
1663         * ksvg2/svg/SVGStringList.h:
1664         * ksvg2/svg/SVGStylable.cpp:
1665         * ksvg2/svg/SVGStylable.h:
1666         * ksvg2/svg/SVGStyleElement.cpp:
1667         * ksvg2/svg/SVGStyleElement.h:
1668         * ksvg2/svg/SVGStyledElement.cpp:
1669         * ksvg2/svg/SVGStyledElement.h:
1670         * ksvg2/svg/SVGStyledLocatableElement.cpp:
1671         * ksvg2/svg/SVGStyledLocatableElement.h:
1672         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1673         * ksvg2/svg/SVGStyledTransformableElement.h:
1674         * ksvg2/svg/SVGSwitchElement.cpp:
1675         * ksvg2/svg/SVGSwitchElement.h:
1676         * ksvg2/svg/SVGSymbolElement.cpp:
1677         * ksvg2/svg/SVGSymbolElement.h:
1678         * ksvg2/svg/SVGTRefElement.cpp:
1679         * ksvg2/svg/SVGTRefElement.h:
1680         * ksvg2/svg/SVGTSpanElement.cpp:
1681         * ksvg2/svg/SVGTSpanElement.h:
1682         * ksvg2/svg/SVGTests.cpp:
1683         * ksvg2/svg/SVGTests.h:
1684         * ksvg2/svg/SVGTextContentElement.cpp:
1685         * ksvg2/svg/SVGTextContentElement.h:
1686         * ksvg2/svg/SVGTextElement.cpp:
1687         * ksvg2/svg/SVGTextElement.h:
1688         * ksvg2/svg/SVGTextPositioningElement.cpp:
1689         * ksvg2/svg/SVGTextPositioningElement.h:
1690         * ksvg2/svg/SVGTitleElement.cpp:
1691         * ksvg2/svg/SVGTitleElement.h:
1692         * ksvg2/svg/SVGTransform.cpp:
1693         * ksvg2/svg/SVGTransform.h:
1694         * ksvg2/svg/SVGTransformList.cpp:
1695         * ksvg2/svg/SVGTransformList.h:
1696         * ksvg2/svg/SVGTransformable.cpp:
1697         * ksvg2/svg/SVGTransformable.h:
1698         * ksvg2/svg/SVGURIReference.cpp:
1699         * ksvg2/svg/SVGURIReference.h:
1700         * ksvg2/svg/SVGUseElement.cpp:
1701         * ksvg2/svg/SVGUseElement.h:
1702         * ksvg2/svg/SVGViewElement.cpp:
1703         * ksvg2/svg/SVGViewElement.h:
1704         * ksvg2/svg/SVGZoomAndPan.cpp:
1705         * ksvg2/svg/SVGZoomAndPan.h:
1706         * ksvg2/svg/svgpathparser.cpp:
1707         * ksvg2/svg/svgpathparser.h:
1708         * page/DOMWindow.idl:
1709         * page/Frame.cpp:
1710         (WebCore::Frame::Frame):
1711         (WebCore::Frame::begin):
1712         (WebCore::Frame::pauseTimeouts):
1713         (WebCore::Frame::resumeTimeouts):
1714         * platform/GraphicsContext.h:
1715         * platform/cg/GraphicsContextCG.cpp:
1716         * rendering/RenderLayer.cpp:
1717         (WebCore::RenderLayer::isTransparent):
1718         * rendering/RenderObject.cpp:
1719         (WebCore::RenderObject::containingBlock):
1720         * rendering/RenderObject.h:
1721         * rendering/RenderStyle.cpp:
1722         (WebCore::RenderStyle::RenderStyle):
1723         (WebCore::RenderStyle::inheritFrom):
1724         (WebCore::RenderStyle::operator==):
1725         (WebCore::RenderStyle::inheritedNotEqual):
1726         (WebCore::RenderStyle::diff):
1727         * rendering/RenderStyle.h:
1728         * rendering/RenderTreeAsText.cpp:
1729         (WebCore::write):
1730         (WebCore::externalRepresentation):
1731         * xpath/XPathEvaluator.cpp:
1732         * xpath/XPathEvaluator.h:
1733         * xpath/XPathExpression.cpp:
1734         * xpath/XPathExpression.h:
1735         * xpath/XPathNSResolver.cpp:
1736         * xpath/XPathNSResolver.h:
1737         * xpath/XPathNamespace.cpp:
1738         * xpath/XPathNamespace.h:
1739         * xpath/XPathResult.cpp:
1740         * xpath/XPathResult.h:
1741         * xpath/impl/XPathExpressionNode.cpp:
1742         * xpath/impl/XPathExpressionNode.h:
1743         * xpath/impl/XPathFunctions.cpp:
1744         * xpath/impl/XPathFunctions.h:
1745         * xpath/impl/XPathGrammar.y:
1746         * xpath/impl/XPathParser.cpp:
1747         * xpath/impl/XPathParser.h:
1748         * xpath/impl/XPathPath.cpp:
1749         * xpath/impl/XPathPath.h:
1750         * xpath/impl/XPathPredicate.cpp:
1751         * xpath/impl/XPathPredicate.h:
1752         * xpath/impl/XPathStep.cpp:
1753         * xpath/impl/XPathStep.h:
1754         * xpath/impl/XPathUtil.cpp:
1755         * xpath/impl/XPathUtil.h:
1756         * xpath/impl/XPathValue.cpp:
1757         * xpath/impl/XPathValue.h:
1758         * xpath/impl/XPathVariableReference.cpp:
1759         * xpath/impl/XPathVariableReference.h:
1760
1761         Change all #if SVG_SUPPORT to #ifdef SVG_SUPPORT and
1762         #if XPATH_SUPPORT to #ifdef XPATH_SUPPORT
1763         (except for one #if !SVG_SUPPORT to a #ifndef SVG_SUPPORT
1764         in RenderTreeAsText.cpp)
1765
1766 2006-08-08  Rob Buis  <buis@kde.org>
1767
1768         Reviewed by Darin.
1769
1770         http://bugzilla.opendarwin.org/show_bug.cgi?id=10230
1771         SVGDOMImplementation should die (and be rolled into DOMImplementation)
1772
1773         Delete SVGDOMImplementation and references to it. The
1774         svg specific functionality is now in DOMImplementation.
1775
1776         * WebCore.xcodeproj/project.pbxproj:
1777         * dom/DOMImplementation.cpp:
1778         (WebCore::svgFeatureSet):
1779         (WebCore::DOMImplementation::hasFeature):
1780         (WebCore::DOMImplementation::createDocument):
1781         (WebCore::DOMImplementation::createSVGDocument):
1782         * dom/DOMImplementation.h:
1783         * ksvg2/bindings/idl/svg/SVGDOMImplementation.idl: Removed.
1784         * ksvg2/misc/KSVGTimeScheduler.cpp:
1785         * ksvg2/svg/SVGColor.cpp:
1786         * ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
1787         * ksvg2/svg/SVGDocument.cpp:
1788         (WebCore::SVGDocument::SVGDocument):
1789         * ksvg2/svg/SVGDocument.h:
1790         * ksvg2/svg/SVGElement.cpp:
1791         (WebCore::SVGElement::isSupported):
1792         * ksvg2/svg/SVGFEBlendElement.cpp:
1793         * ksvg2/svg/SVGFEColorMatrixElement.cpp:
1794         * ksvg2/svg/SVGFEComponentTransferElement.cpp:
1795         * ksvg2/svg/SVGFECompositeElement.cpp:
1796         * ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
1797         * ksvg2/svg/SVGFEDisplacementMapElement.cpp:
1798         * ksvg2/svg/SVGFEFloodElement.cpp:
1799         * ksvg2/svg/SVGFEGaussianBlurElement.cpp:
1800         * ksvg2/svg/SVGFELightElement.cpp:
1801         * ksvg2/svg/SVGFEMergeElement.cpp:
1802         * ksvg2/svg/SVGFEOffsetElement.cpp:
1803         * ksvg2/svg/SVGFESpecularLightingElement.cpp:
1804         * ksvg2/svg/SVGFETileElement.cpp:
1805         * ksvg2/svg/SVGFETurbulenceElement.cpp:
1806         * ksvg2/svg/SVGGradientElement.cpp:
1807         * ksvg2/svg/SVGPatternElement.cpp:
1808         * ksvg2/svg/SVGPolyElement.cpp:
1809         * ksvg2/svg/SVGStopElement.cpp:
1810         * ksvg2/svg/SVGStyledElement.cpp:
1811         * ksvg2/svg/SVGStyledTransformableElement.cpp:
1812         * ksvg2/svg/SVGTests.cpp:
1813         (WebCore::SVGTests::isValid):
1814         * ksvg2/svg/SVGTransformable.cpp:
1815         * page/Frame.cpp:
1816         (WebCore::Frame::begin):
1817
1818 2006-08-07  Brady Eidson  <beidson@apple.com>
1819
1820         Reviewed by Anders and John
1821
1822         Icons can now refresh when new data is sent from WebKit, both on disk and in memory
1823
1824         * bridge/mac/WebCoreIconDatabaseBridge.h:
1825         * bridge/mac/WebCoreIconDatabaseBridge.mm:
1826         (WebCore::IconDatabase::loadIconFromURL):  Allows WebCore/Kit to kick off a load
1827         outside of any greater context
1828         (-[WebCoreIconDatabaseBridge isIconExpiredForIconURL:]):
1829         (-[WebCoreIconDatabaseBridge isIconExpiredForPageURL:]): Allows WebKit
1830         to get whether or not an icon has expired
1831
1832         * loader/icon/IconDatabase.cpp:
1833         (WebCore::IconDatabase::recreateDatabase): Changed database schema slightly
1834         (WebCore::IconDatabase::createPrivateTables): Changed database schema slightly
1835         (WebCore::IconDatabase::iconForPageURL): 
1836         (WebCore::IconDatabase::isIconExpiredForIconURL): Get if an icon has expired
1837         (WebCore::IconDatabase::isIconExpiredForPageURL): Get if an icon has expired
1838         (WebCore::IconDatabase::setIconDataForIconURL): Force a refresh of the in memory
1839         image when new icon data is loaded
1840         (WebCore::IconDatabase::setIconURLForPageURL): added a check for null iconID
1841
1842         * loader/icon/IconDatabase.h: added/changed some methods
1843         * loader/icon/SiteIcon.cpp:
1844         (SiteIcon::getImage): simplified/removed debugging code
1845         (SiteIcon::manuallySetImageData): allow the image data to be changed when new icon
1846         data is loaded
1847
1848 2006-08-05  Darin Adler  <darin@apple.com>
1849
1850         Reviewed by Eric Seidel.
1851
1852         - fix a storage leak
1853
1854         * rendering/RenderView.cpp: (WebCore::RenderView::setSelection):
1855         Delete the values if we are going to exit without using the maps.
1856         Otherwise all the values leak.
1857
1858 2006-08-05  Darin Adler  <darin@apple.com>
1859
1860         Reviewed by Hyatt.
1861
1862         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10213
1863           REGRESSION: Crash in WebCore::RenderLayer::isTransparent involving <iframe> and <select>
1864
1865         Test: fast/frames/iframe-option-crash.xhtml
1866
1867         * rendering/RenderView.cpp: (WebCore::RenderView::paintBoxDecorations):
1868         Check for a nil renderer.
1869
1870 2006-08-04  David Hyatt  <hyatt@apple.com>
1871
1872         Fix for Radar bug #4644045, regression where dragging selection no longer
1873         works for floats contained inside layers.  I added an optimization to
1874         refine dirty rect checking for layers, and it incorrectly excluded floats
1875         from the paint bounds since PaintPhaseSelection was not considered when
1876         analyzing the floatRect().
1877
1878         Reviewed by beth
1879
1880         * rendering/RenderBlock.cpp:
1881         (WebCore::RenderBlock::paint):
1882
1883 2006-08-04  David Hyatt  <hyatt@apple.com>
1884
1885         Fix remove() so that it is equivalent to calling removeChild on the
1886         parent.  This involved moving three operations that remove did.
1887
1888         (1) Move the accessibility object cache removal into the destroy methods,
1889         since this really should just happen when a render object is going away.
1890
1891         (2) removeFromObjectLists shifted into removeChild, which means it will
1892         now be called more often (this is a correct change).  Note that there is
1893         also now a new guard on removeFromObjectLists so that it won't do any
1894         work unless the document is not being destroyed.
1895
1896         (3) The big one.  deleteLineBoxWrapper was not getting called to clean up
1897         the line box tree.  This moved right into RenderContainer's removeChildNode so
1898         that it is now done even in the lowest level RenderContainer removal primitive.
1899
1900         Reviewed by beth
1901
1902         * rendering/RenderContainer.cpp:
1903         (WebCore::RenderContainer::removeChildNode):
1904         (WebCore::RenderContainer::removeChild):
1905         * rendering/RenderObject.cpp:
1906         (WebCore::RenderObject::removeFromObjectLists):
1907         (WebCore::RenderObject::destroy):
1908         * rendering/RenderObject.h:
1909         (WebCore::RenderObject::remove):
1910         * rendering/RenderWidget.cpp:
1911         (WebCore::RenderWidget::destroy):
1912
1913 2006-08-04  David Hyatt  <hyatt@apple.com>
1914
1915         Back out the fix for list marker crashes.  The actual bug here is that
1916         there is a confusing mismatch between remove() and removeChild() in the
1917         render tree.  remove() does a little bit of extra work that removeChild
1918         should be doing instead (so that remove() can just be a shorthand for
1919         removeChild).
1920
1921         This conservative fix does not solve the remove/removeChild mismatch
1922         but instead just changes the list marker updating code to use remove
1923         instead.
1924
1925         Reviewed by beth
1926
1927         Test Case: fast/lists/dynamic-marker-crash.html
1928
1929         * rendering/ListMarkerBox.cpp:
1930         * rendering/ListMarkerBox.h:
1931         * rendering/RenderListItem.cpp:
1932         (WebCore::RenderListItem::updateMarkerLocation):
1933
1934 2006-08-04  Sam Weinig  <sam.weinig@gmail.com>
1935
1936         Reviewed by Darin.
1937
1938         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10192
1939           Make WebCore (and friends) compile with -Wshorten-64-to-32
1940
1941           * Adds -Wshorten-64-to-32 flag to Xcode project.
1942           * Adds 'f' to float literals where expecting a float.
1943           * Use cosf() instead of cos() when assigning to a float.
1944
1945         * WebCore.xcodeproj/project.pbxproj:
1946         * kcanvas/device/quartz/filters/WKDiffuseLightingFilter.m:
1947         (+[WKDiffuseLightingFilter initialize]):
1948         * kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m:
1949         (-[WKDiscreteTransferFilter outputImage]):
1950         * kcanvas/device/quartz/filters/WKDisplacementMapFilter.m:
1951         (+[WKDisplacementMapFilter initialize]):
1952         * kcanvas/device/quartz/filters/WKSpecularLightingFilter.m:
1953         (+[WKSpecularLightingFilter initialize]):
1954         * kcanvas/device/quartz/filters/WKSpotLightFilter.m:
1955         (-[WKSpotLightFilter outputImage]):
1956         * kcanvas/device/quartz/filters/WKTableTransferFilter.m:
1957         (-[WKTableTransferFilter outputImage]):
1958
1959 2006-08-03  David Hyatt  <hyatt@apple.com>
1960
1961         Fix for bug 10229, don't bother trying to clear when no floats are
1962         present.  I suspect there's still a bug in the math that follows, but
1963         this fix is safer in that it just does the obvious thing (and doesn't
1964         compute any clearance if no floats are even around).
1965
1966         Reviewed by maciej
1967
1968         * ChangeLog:
1969         * rendering/RenderBlock.cpp:
1970         (WebCore::RenderBlock::getClearDelta):
1971
1972 2006-08-03  Justin Garcia  <justin.garcia@apple.com>
1973
1974         Reviewed by harrison
1975         
1976         <rdar://problem/4641033/4515463/4052426/4046570/4053718/4053724/4060115/4062858>
1977         Copy/Paste fidelity was bad.
1978
1979         * editing/ApplyStyleCommand.cpp:
1980         (WebCore::ApplyStyleCommand::applyInlineStyle):
1981         * editing/markup.cpp:
1982         (WebCore::startMarkup): We were not adding non-inheritable styles
1983         to the markup for an element unless they were in the elements inline
1984         style declaration.
1985
1986 2006-08-03  Sam Weinig  <sam.weinig@gmail.com>
1987
1988         Reviewed by Darin.
1989
1990         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10176
1991           Make WebCore compile with -Wundef
1992
1993           * Adds -Wundef flag to Xcode project
1994           * Converts #ifs to #ifdef and #ifndefs where needed.
1995           * Replaces #ifdef WIN32 with #if PLATFORM(WIN_OS) or PLATFORM(WIN)
1996             (and in one instance in config.h with #if !COMPILER(MSVC))
1997           * Added #define YYMAXDEPTH 10000 in XPathGrammar.y and CSSGrammar.y
1998             to fix a warning from within Bison.
1999           * Cleaned up style a little in surrounding code.
2000
2001         * WebCore.xcodeproj/project.pbxproj:
2002         * bridge/mac/WebCoreAXObject.mm:
2003         (-[WebCoreAXObject doAXTextMarkerRangeForUnorderedTextMarkers:]):
2004         * config.h:
2005         * css/CSSGrammar.y:
2006         * css/MediaFeatureNames.cpp:
2007         * css/MediaFeatureNames.h:
2008         * css/cssparser.cpp:
2009         * dom/ContainerNode.cpp:
2010         (WebCore::ContainerNode::setActive):
2011         * dom/Element.cpp:
2012         (WebCore::Element::attach):
2013         * dom/Element.h:
2014         * dom/EventNames.cpp:
2015         * dom/EventNames.h:
2016         * dom/NamedAttrMap.h:
2017         * dom/Position.cpp:
2018         * dom/QualifiedName.cpp:
2019         * dom/QualifiedName.h:
2020         * dom/Range.h:
2021         * dom/XMLTokenizer.cpp:
2022         (WebCore::XMLTokenizer::error):
2023         * html/HTMLTokenizer.cpp:
2024         (WebCore::HTMLTokenizer::scriptHandler):
2025         (WebCore::HTMLTokenizer::scriptExecution):
2026         (WebCore::HTMLTokenizer::parseTag):
2027         (WebCore::HTMLTokenizer::continueProcessing):
2028         (WebCore::HTMLTokenizer::write):
2029         (WebCore::HTMLTokenizer::timerFired):
2030         (WebCore::HTMLTokenizer::notifyFinished):
2031         * kcanvas/device/quartz/KCanvasFilterQuartz.h:
2032         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2033         * ksvg2/css/SVGRenderStyle.h:
2034         * ksvg2/css/SVGRenderStyleDefs.h:
2035         * ksvg2/scripts/make_names.pl:
2036         * loader/CachedResource.h:
2037         * loader/LoaderFunctions.h:
2038         * loader/loader.h:
2039         * page/Frame.cpp:
2040         * page/FrameTree.cpp:
2041         * page/FrameView.cpp:
2042         (WebCore::FrameView::clear):
2043         (WebCore::FrameView::layout):
2044         (WebCore::FrameView::layoutTimerFired):
2045         (WebCore::FrameView::scheduleRelayout):
2046         (WebCore::FrameView::unscheduleRelayout):
2047         * platform/AtomicString.cpp:
2048         * platform/AtomicString.h:
2049         * platform/Cursor.h:
2050         * platform/DeprecatedArray.h:
2051         * platform/DeprecatedString.cpp:
2052         (WebCore::allocateHandle):
2053         (WebCore::initializeHandleNodeBlock):
2054         (WebCore::freeHandle):
2055         * platform/FloatPoint.h:
2056         * platform/FloatRect.h:
2057         * platform/FloatSize.h:
2058         * platform/GraphicsContext.h:
2059         * platform/Image.h:
2060         * platform/IntPoint.h:
2061         * platform/IntRect.h:
2062         (WebCore::IntRect::inflateX):
2063         (WebCore::IntRect::inflateY):
2064         * platform/IntSize.h:
2065         * platform/PlatformKeyboardEvent.h:
2066         * platform/PlatformMouseEvent.h:
2067         * platform/PlatformString.h:
2068         * platform/ResourceLoader.h:
2069         * platform/ResourceLoaderInternal.h:
2070         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2071         * platform/ScrollView.h:
2072         * platform/StaticConstructors.h:
2073         * platform/StreamingTextDecoderICU.cpp:
2074         (WebCore::StreamingTextDecoderICU::convert):
2075         * platform/StringImpl.h:
2076         * platform/Widget.h:
2077         * platform/mac/BlockExceptions.mm:
2078         * platform/mac/ColorMac.mm:
2079         (+[WebCoreControlTintObserver WebCore]):
2080         * platform/mac/FloatPointMac.mm:
2081         * platform/mac/FloatRectMac.mm:
2082         * platform/mac/FloatSizeMac.mm:
2083         * platform/mac/FontMac.mm:
2084         * platform/mac/GraphicsContextMac.mm:
2085         (WebCore::GraphicsContext::drawFocusRing):
2086         * platform/mac/IntPointMac.mm:
2087         * platform/mac/IntRectMac.mm:
2088         * platform/mac/IntSizeMac.mm:
2089         * platform/mac/WebCoreSystemInterface.h:
2090         * rendering/RenderBlock.h:
2091         * rendering/RenderTableCell.h:
2092         * rendering/bidi.cpp:
2093         (WebCore::appendRun):
2094         (WebCore::RenderBlock::layoutInlineChildren):
2095         * xml/XSLTProcessor.cpp:
2096         (WebCore::parseErrorFunc):
2097         * xpath/impl/XPathGrammar.y:
2098
2099 2006-08-03  Adam Roben  <aroben@apple.com>
2100
2101         Reviewed by Maciej and Beth.
2102
2103         Fix use-after-dispose heap corruption bug.
2104
2105         * rendering/ListMarkerBox.cpp:
2106         (WebCore::ListMarkerBox::destroy): Only call removeChild if we're not
2107         destroying the document
2108
2109 2006-08-03  Adam Roben  <aroben@apple.com>
2110
2111         Reviewed by Anders.
2112
2113         - Fixed Windows build.
2114
2115         * platform/Color.cpp:
2116         (WebCore::makeRGBAFromHSLA): Whitespace change
2117         * platform/win/TemporaryLinkStubs.cpp: Add new method stubs
2118         (PlatformScrollBar::PlatformScrollBar):
2119         (PlatformScrollBar::~PlatformScrollBar):
2120         (PlatformScrollBar::width):
2121         (PlatformScrollBar::height):
2122         (PlatformScrollBar::setEnabled):
2123         (PlatformScrollBar::paint):
2124         (PlatformScrollBar::setScrollBarValue):
2125         (PlatformScrollBar::setKnobProportion):
2126         (PlatformScrollBar::setRect):
2127         (ScrollBar::ScrollBar):
2128         (ScrollBar::scroll):
2129         (ScrollBar::setValue):
2130
2131 2006-08-02  Justin Garcia  <justin.garcia@apple.com>
2132
2133         Reviewed by mjs
2134         
2135         <http://bugzilla.opendarwin.org/show_bug.cgi?id=10225>
2136         GMail Editor: Change Hilite Color doesn't work
2137
2138         * editing/JSEditor.cpp: Added support for execCommand("HiliteColor", ...).
2139         It's what GMail uses to implement text hiliting.  It's just a synonym for BackColor.
2140         * editing/SelectionController.cpp:
2141         (WebCore::SelectionController::nodeWillBeRemoved): Moved a comment
2142         a more appropriate place.
2143
2144 2006-08-03  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2145
2146         Reviewed by Adele and Darin.
2147
2148         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10177
2149           REGRESSION: Successfully dragging text into a disabled field
2150
2151         Test: fast/forms/textfield-drag-into-disabled.html
2152
2153         * rendering/RenderTextControl.cpp:
2154         (WebCore::RenderTextControl::createDivStyle): Changed to set -webkit-user-modify
2155         to read-only on the inner div if the control is disabled.       
2156         (WebCore::RenderTextControl::updateFromElement): Ditto.
2157
2158 2006-08-03  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2159
2160         Reviewed by Darin.
2161
2162         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10198
2163           REGRESSION: WebKit r15750 crashes while loading anthem.com
2164
2165         Test: fast/overflow/generated-content-crash.html
2166
2167         * rendering/RenderLayer.cpp:
2168         (WebCore::RenderLayer::updateScrollInfoAfterLayout): Added a null check for
2169         the renderer's element. Generated content does not have an element and
2170         therefore does not need to maintain overflow status.
2171
2172 2006-08-03  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2173
2174         Reviewed by Anders.
2175
2176         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10202
2177           REGRESSION: Repro crash when loading an empty image document
2178
2179         Test: fast/tokenizer/image-empty-crash.html
2180
2181         * loader/ImageDocument.cpp:
2182         (WebCore::ImageTokenizer::stopParsing): Added null check for m_imageElement.
2183         (WebCore::ImageTokenizer::finish): Ditto.
2184
2185 2006-08-03  Darin Adler  <darin@apple.com>
2186
2187         Reviewed by Anders.
2188
2189         - clean up "flip"-related code a tiny bit
2190
2191         * platform/Screen.h: Removed redundant parameter names.
2192         * platform/mac/ScreenMac.mm:
2193         (WebCore::flipScreenRect): Changed to call flipScreenPoint so we only have one
2194         copy of the flipping code.
2195         (WebCore::flipScreenPoint): Fixed indentation.
2196
2197         * bridge/mac/WebCoreFrameBridge.mm: (globalPoint): Removed type casts and
2198         simplified a bit.
2199
2200         * platform/mac/PlatformMouseEventMac.mm: (WebCore::globalPositionForEvent):
2201         * platform/mac/WheelEventMac.mm: (WebCore::globalPositionForEvent):
2202         Removed unneeded local variable.
2203
2204 2006-08-02  David Hyatt  <hyatt@apple.com>
2205
2206         Abstract RenderLayer scrollbar creation and destruction so that there
2207         is a clean spot in which to drop in engine scrollbar stuff.
2208
2209         Reviewed by timo
2210
2211         * platform/ScrollBar.h:
2212         (WebCore::ScrollBar::hasPlatformScrollBars):
2213         * rendering/RenderLayer.cpp:
2214         (WebCore::RenderLayer::createScrollbar):
2215         (WebCore::RenderLayer::destroyScrollbar):
2216         (WebCore::RenderLayer::setHasHorizontalScrollbar):
2217         (WebCore::RenderLayer::setHasVerticalScrollbar):
2218         * rendering/RenderLayer.h:
2219
2220 2006-08-02  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2221
2222         Reviewed by Darin.
2223
2224         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=3438
2225           incorrect display of transparent 1x1 PNGs
2226
2227         Test: fast/replaced/image-solid-color-with-alpha.html
2228
2229         * platform/mac/ImageMac.mm:
2230         (WebCore::Image::checkForSolidColor): Changed to divide each color component
2231         by the alpha component. You need to do that since the bitmap context has
2232         premultiplied alpha but m_solidColor should be non-premultiplied.
2233
2234 2006-08-02  Adam Roben  <aroben@apple.com>
2235
2236         Reviewed by Brady.
2237
2238         - Remove redundant #include
2239
2240         * loader/loader.cpp:
2241
2242 2006-07-31  Sam Weinig  <sam.weinig@gmail.com>
2243
2244         Reviewed by Darin.
2245
2246         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=9955
2247         Colors scaled from [0, 1] range to [0, 255] incorrectly
2248         
2249         Fixes scaling issue and fixes Color to follow style guidelines.
2250
2251         * css/cssstyleselector.cpp:
2252         (WebCore::CSSStyleSelector::getColorFromPrimitiveValue):
2253         * platform/Color.cpp:
2254         (WebCore::calcHue):
2255         (WebCore::makeRGBAFromHSLA):
2256         (WebCore::Color::Color):
2257         (WebCore::Color::name):
2258         (WebCore::Color::setNamedColor):
2259         (WebCore::Color::light):
2260         (WebCore::Color::dark):
2261         (WebCore::blend):
2262         * platform/Color.h:
2263         (WebCore::Color::Color):
2264         (WebCore::Color::isValid):
2265         (WebCore::Color::red):
2266         (WebCore::Color::green):
2267         (WebCore::Color::blue):
2268         (WebCore::Color::alpha):
2269         (WebCore::Color::rgb):
2270         (WebCore::Color::setRGB):
2271         (WebCore::operator==):
2272         (WebCore::operator!=):
2273         * rendering/RenderObject.cpp:
2274         (WebCore::RenderObject::drawBorder):
2275
2276 2006-07-31  Mitz Pettel  <opendarwin.org@mitzpettel.com>
2277
2278         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10158
2279           REGRESSION: Selection highlight is dark and opaque when solid-color images are used
2280
2281         Reviewed by Darin.
2282
2283         Pixel test: fast/backgrounds/solid-color-context-restore.html
2284
2285         * platform/mac/ImageMac.mm:
2286         (WebCore::Image::draw): Added calls to preserve the graphics context
2287         around the painting of a solid color image.
2288         (WebCore::Image::drawTiled): Ditto.
2289
2290 2006-07-31  Maciej Stachowiak  <mjs@apple.com>
2291
2292         Rubber-stamped by Tim Hatcher.
2293
2294         - renamed TransferJob to ResourceLoader
2295
2296         * Projects/gdk/webcore-gdk.bkl:
2297         * WebCore.vcproj/WebCore/WebCore.vcproj:
2298         * WebCore.xcodeproj/project.pbxproj:
2299         * WebCoreSources.bkl:
2300         * bridge/mac/FrameMac.mm:
2301         * bridge/mac/WebCoreResourceLoaderImp.h:
2302         * bridge/mac/WebCoreResourceLoaderImp.mm:
2303         (-[WebCoreResourceLoaderImp redirectedToURL:]):
2304         (-[WebCoreResourceLoaderImp addData:]):
2305         (-[WebCoreResourceLoaderImp finishJobAndHandle:]):
2306         * bridge/win/FrameWin.cpp:
2307         * dom/XMLTokenizer.cpp:
2308         (WebCore::openFunc):
2309         * loader/Cache.cpp:
2310         * loader/LoaderFunctions.h:
2311         * loader/loader.cpp:
2312         (WebCore::Loader::servePendingRequests):
2313         (WebCore::Loader::receivedAllData):
2314         (WebCore::Loader::receivedResponse):
2315         (WebCore::Loader::receivedData):
2316         (WebCore::Loader::cancelRequests):
2317         (WebCore::Loader::jobForRequest):
2318         * loader/loader.h:
2319         * loader/mac/LoaderFunctionsMac.mm:
2320         (WebCore::ServeSynchronousRequest):
2321         * platform/ResourceLoader.cpp: Added.
2322         (WebCore::ResourceLoader::ResourceLoader):
2323         (WebCore::ResourceLoader::isErrorPage):
2324         (WebCore::ResourceLoader::error):
2325         (WebCore::ResourceLoader::setError):
2326         (WebCore::ResourceLoader::queryMetaData):
2327         (WebCore::ResourceLoader::addMetaData):
2328         (WebCore::ResourceLoader::kill):
2329         (WebCore::ResourceLoader::url):
2330         (WebCore::ResourceLoader::postData):
2331         (WebCore::ResourceLoader::method):
2332         (WebCore::ResourceLoader::client):
2333         * platform/ResourceLoader.h: Added.
2334         (WebCore::ResourceLoader::getInternal):
2335         * platform/ResourceLoaderClient.h: Added.
2336         (WebCore::ResourceLoaderClient::~ResourceLoaderClient):
2337         (WebCore::ResourceLoaderClient::receivedRedirect):
2338         (WebCore::ResourceLoaderClient::receivedResponse):
2339         (WebCore::ResourceLoaderClient::receivedData):
2340         (WebCore::ResourceLoaderClient::receivedAllData):
2341         * platform/ResourceLoaderInternal.h: Added.
2342         (WebCore::ResourceLoaderInternal::ResourceLoaderInternal):
2343         * platform/TransferJob.cpp: Removed.
2344         * platform/TransferJob.h: Removed.
2345         * platform/TransferJobClient.h: Removed.
2346         * platform/TransferJobInternal.h: Removed.
2347         * platform/gdk/FrameGdk.cpp:
2348         (WebCore::FrameGdk::openURL):
2349         (WebCore::FrameGdk::urlSelected):
2350         (WebCore::FrameGdk::receivedData):
2351         (WebCore::FrameGdk::receivedAllData):
2352         * platform/gdk/FrameGdk.h:
2353         * platform/gdk/ResourceLoaderCurl.cpp: Added.
2354         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
2355         (WebCore::ResourceLoader::~ResourceLoader):
2356         (WebCore::ResourceLoader::start):
2357         (WebCore::ResourceLoader::cancel):
2358         * platform/gdk/ResourceLoaderManager.cpp: Added.
2359         (WebCore::ResourceLoaderManager::ResourceLoaderManager):
2360         (WebCore::ResourceLoaderManager::get):
2361         (WebCore::ResourceLoaderManager::useSimpleTransfer):
2362         (WebCore::writeCallback):
2363         (WebCore::ResourceLoaderManager::downloadTimerCallback):
2364         (WebCore::ResourceLoaderManager::remove):
2365         (WebCore::ResourceLoaderManager::add):
2366         (WebCore::ResourceLoaderManager::cancel):
2367         * platform/gdk/ResourceLoaderManager.h: Added.
2368         * platform/gdk/TemporaryLinkStubs.cpp:
2369         (WebCore::ServeSynchronousRequest):
2370         (WebCore::ResourceLoader::assembleResponseHeaders):
2371         (WebCore::ResourceLoader::retrieveCharset):
2372         * platform/gdk/TransferJobCurl.cpp: Removed.
2373         * platform/gdk/TransferJobManager.cpp: Removed.
2374         * platform/gdk/TransferJobManager.h: Removed.
2375         * platform/mac/ResourceLoaderMac.mm: Added.
2376         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
2377         (WebCore::ResourceLoader::~ResourceLoader):
2378         (WebCore::ResourceLoader::start):
2379         (WebCore::ResourceLoader::assembleResponseHeaders):
2380         (WebCore::ResourceLoader::retrieveCharset):
2381         (WebCore::ResourceLoader::setLoader):
2382         (WebCore::ResourceLoader::receivedResponse):
2383         (WebCore::ResourceLoader::cancel):
2384         * platform/mac/TransferJobMac.mm: Removed.
2385         * platform/win/ResourceLoaderWin.cpp: Added.
2386         (WebCore::addToOutstandingJobs):
2387         (WebCore::lookupResourceLoader):
2388         (WebCore::ResourceLoaderWndProc):
2389         (WebCore::initializeOffScreenResourceLoaderWindow):
2390         (WebCore::ResourceLoaderInternal::~ResourceLoaderInternal):
2391         (WebCore::ResourceLoader::~ResourceLoader):
2392         (WebCore::ResourceLoader::start):
2393         (WebCore::ResourceLoader::fileLoadTimer):
2394         (WebCore::ResourceLoader::cancel):
2395         * platform/win/ResourceLoaderWin.h: Added.
2396         * platform/win/TemporaryLinkStubs.cpp:
2397         (WebCore::ServeSynchronousRequest):
2398         (WebCore::ResourceLoader::assembleResponseHeaders):
2399         (WebCore::ResourceLoader::retrieveCharset):
2400         * platform/win/TransferJobWin.cpp: Removed.
2401         * platform/win/TransferJobWin.h: Removed.
2402         * xml/XSLTProcessor.cpp:
2403         (WebCore::docLoaderFunc):
2404         * xml/xmlhttprequest.cpp:
2405         (WebCore::XMLHttpRequest::send):
2406         (WebCore::XMLHttpRequest::receivedAllData):
2407         (WebCore::XMLHttpRequest::receivedRedirect):
2408         (WebCore::XMLHttpRequest::receivedData):
2409         * xml/xmlhttprequest.h:
2410
2411 2006-07-31  Darin Adler  <darin@apple.com>
2412
2413         Reviewed by Hyatt.
2414
2415         - removed obsolete cell margin hack
2416
2417         * rendering/RenderBox.cpp: (WebCore::RenderBox::calcVerticalMargins):
2418         Set top and bottom margins to 0 for table cells instead of -16384.
2419         No effect on layout (including layout tests).
2420
2421         * css/CSSComputedStyleDeclaration.cpp:
2422         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
2423         Added a few comments about differences between this class and the
2424         what the CSS specification says about computed style.
2425
2426 2006-07-31  Mark Rowe  <opendarwin.org@bdash.net.nz>
2427
2428         Reviewed by Maciej.
2429
2430         http://bugzilla.opendarwin.org/show_bug.cgi?id=9738
2431         Bug 9738: Unqualified :hover selector ignored in strict parsing mode
2432
2433         * css/cssstyleselector.cpp:
2434         (WebCore::CSSStyleSelector::checkSelector): Restrict the :hover and :active
2435         exclusion based on onlyHoverActive to quirks mode.
2436
2437 2006-07-31  David Hyatt  <hyatt@apple.com>
2438
2439         Fix for bug 10179, digg.com scrolls slowly.  Improve fixed positioning
2440         and fixed backgrounds so that a count of them is kept on the FrameView.
2441         This allows us to switch slow scrolling on and off as these objects come
2442         and go.
2443
2444         * css/cssstyleselector.cpp:
2445         (WebCore::CSSStyleSelector::adjustRenderStyle):
2446         (WebCore::CSSStyleSelector::applyProperty):
2447         * page/FrameView.cpp:
2448         (WebCore::FrameViewPrivate::reset):
2449         (WebCore::FrameView::layout):
2450         (WebCore::FrameView::useSlowRepaints):
2451         (WebCore::FrameView::setUseSlowRepaints):
2452         (WebCore::FrameView::addSlowRepaintObject):
2453         (WebCore::FrameView::removeSlowRepaintObject):
2454         * page/FrameView.h:
2455         * rendering/RenderBox.cpp:
2456         (WebCore::RenderBox::paintBackgroundExtended):
2457         * rendering/RenderObject.cpp:
2458         (WebCore::RenderObject::setStyle):
2459         * rendering/RenderView.cpp:
2460         (WebCore::RenderView::paintBoxDecorations):
2461
2462 2006-07-31  David Hyatt  <hyatt@apple.com>
2463
2464         Begin disentangling of scrollbar logic in preparation for engine-implemented
2465         scrollbars.  Split ScrollBar into two classes, an abstract base (still named
2466         ScrollBar) and a new PlatformScrollBar subclass.  This subclass is used only
2467         by platforms that want to continue to use a platform scrollbar (rather than
2468         the engine one).
2469
2470         Reviewed by darin
2471
2472         * WebCore.xcodeproj/project.pbxproj:
2473         * html/HTMLCanvasElement.h:
2474         * page/Frame.cpp:
2475         * platform/PlatformScrollBar.h: Added.
2476         (WebCore::PlatformScrollBar::isWidget):
2477         * platform/ScrollBar.h:
2478         (WebCore::ScrollBarClient::~ScrollBarClient):
2479         (WebCore::ScrollBar::~ScrollBar):
2480         (WebCore::ScrollBar::orientation):
2481         (WebCore::ScrollBar::value):
2482         (WebCore::ScrollBar::client):
2483         * platform/mac/PlatformScrollBarMac.mm: Added.
2484         (-[WebCoreScrollBar initWithPlatformScrollBar:]):
2485         (-[WebCoreScrollBar detachPlatformScrollBar]):
2486         (-[WebCoreScrollBar scroll:]):
2487         (-[WebCoreScrollBar widget]):
2488         (-[WebCoreScrollBar mouseDown:]):
2489         (WebCore::PlatformScrollBar::PlatformScrollBar):
2490         (WebCore::PlatformScrollBar::~PlatformScrollBar):
2491         (WebCore::PlatformScrollBar::setScrollBarValue):
2492         (WebCore::PlatformScrollBar::setKnobProportion):
2493         (WebCore::PlatformScrollBar::scrollbarHit):
2494         (WebCore::PlatformScrollBar::width):
2495         (WebCore::PlatformScrollBar::height):
2496         (WebCore::PlatformScrollBar::setRect):
2497         (WebCore::PlatformScrollBar::setEnabled):
2498         (WebCore::PlatformScrollBar::paint):
2499         * platform/mac/ScrollBarMac.mm: Removed.
2500         * platform/mac/WebCoreTextArea.mm:
2501         * rendering/RenderBlock.cpp:
2502         (WebCore::RenderBlock::isPointInScrollbar):
2503         * rendering/RenderFormElement.cpp:
2504         * rendering/RenderLayer.cpp:
2505         (WebCore::RenderLayer::horizontalScrollbarWidget):
2506         (WebCore::RenderLayer::verticalScrollbarWidget):
2507         (WebCore::RenderLayer::valueChanged):
2508         (WebCore::RenderLayer::setHasHorizontalScrollbar):
2509         (WebCore::RenderLayer::setHasVerticalScrollbar):
2510         (WebCore::RenderLayer::positionScrollbars):
2511         * rendering/RenderLayer.h:
2512         * rendering/RenderWidget.h:
2513
2514 2006-07-31  Adele Peterson  <adele@apple.com>
2515
2516         Reviewed by John and Anders.
2517
2518         - Fix for <rdar://problem/4380576> onChange does not get called when field changed by return key
2519
2520         Test: fast/forms/onchange-enter-submit.html
2521
2522         Blur (which will fire onChange appropriately) before submitting a form when pressing Enter.
2523         This matches the sequence of events fired in WinIE.
2524
2525         * html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::defaultEventHandler):
2526         * html/HTMLSelectElement.cpp: (WebCore::HTMLSelectElement::defaultEventHandler):
2527
2528 2006-07-31  Geoffrey Garen  <ggaren@apple.com>
2529
2530         Reviewed by Kevin.
2531
2532         Moved string debug function outside of the WebCore namespace so that it's
2533         easier to call in the debugger. I will never doubt Darin again (x100).
2534
2535         * platform/String.cpp:
2536         (string):
2537
2538 2006-07-31  David Hyatt  <hyatt@apple.com>
2539
2540         Partial fix for 5453.  Improve overflow so that when it changes
2541         dynamically from scroll/auto to hidden that we properly hide the
2542         scrollbars.  Also refine the dirty dashboard region updating so that
2543         it only happens if the scrollbars genuinely come and go.
2544
2545         Also eliminate the extra repaint of the entire block.  This should not be
2546         necessary, since the scrollbars repaint themselves already and children
2547         will repaint already if they move.
2548
2549         Reviewed by darin
2550
2551         Adding test case from bug into fast/overflow/dynamic-hidden.html
2552
2553         * rendering/RenderLayer.cpp:
2554         (WebCore::RenderLayer::setHasHorizontalScrollbar):
2555         (WebCore::RenderLayer::setHasVerticalScrollbar):
2556         (WebCore::RenderLayer::updateScrollInfoAfterLayout):
2557
2558 2006-07-31  Graham Dennis  <graham.dennis@gmail.com>
2559
2560         Reviewed by justin
2561         
2562         <http://bugzilla.opendarwin.org/show_bug.cgi?id=9507>
2563         Empty style spans created in applyInlineStyle
2564         
2565         Improves paste fidelity because some of these empty font/style spans had a non-zero
2566         size and were messing up the layout of pasted content:
2567         <rdar://problem/4515463>
2568         REGRESSION: Blot and Mail both do a very poor job of pasting the main www.apple.com page   
2569
2570         * editing/ApplyStyleCommand.cpp:
2571         (WebCore::ApplyStyleCommand::applyInlineStyle): Use the adjusted start node instead 
2572         of start.node().  Don't do any application if the endpoints are swapped.  Adjust
2573         endNode if the start node is a descendant of it, so that the pre-order traversal will
2574         terminate properly.
2575
2576 2006-07-31  Geoffrey Garen  <ggaren@apple.com>
2577
2578         Reviewed by Darin.
2579
2580         * platform/String.cpp:
2581         (WebCore::string): Added a debugging function to create a String from a
2582         const char*.
2583
2584 2006-07-31  Anders Carlsson  <acarlsson@apple.com>
2585
2586         * css/CSSPrimitiveValue.cpp:
2587         Fix windows build.
2588
2589 2006-07-31  Geoffrey Garen  <ggaren@apple.com>
2590
2591         Reinstating my last change. Everything builds now.
2592         
2593 2006-07-31  Geoffrey Garen  <ggaren@apple.com>
2594
2595         Backing out my last change because it causes a build failure in some
2596         configurations. This seems to be the cleanest way to get svn to cooperate.
2597
2598 2006-07-31  Geoffrey Garen  <ggaren@apple.com>
2599
2600         Reviewed by Maciej.
2601
2602         Moved files around to make WebCore's structure clearer
2603         and easier to explain.
2604
2605         DerivedSources/JS* -> bindings/js/DerivedSources/ (so JS* files
2606         show up when you search inside bindings/js/, but are marked, at
2607         the same time, as files that you should not edit manually)
2608
2609         WebCore+SVG/DOMList.h -> ksvg2/svg/ (only files inside ksvg2/svg/
2610         use DOMList.h)
2611
2612         icon -> loader/icon
2613
2614         I tested that everything still builds.
2615
2616 2006-07-30  Darin Adler  <darin@apple.com>
2617
2618         Reviewed by Tim Hatcher.
2619
2620         - some improvements for the benefit of the style pane of the inspector
2621
2622         * css/CSSComputedStyleDeclaration.cpp: Removed background-position
2623         and border-spacing from the list of properties that show up in
2624         computed style, because of background-position-x, background-position-y,
2625         -webkit-border-horizontal-spacing and -webkit-border-vertical-spacing.
2626         (WebCore::valueForLength): Added handling for undefinedLength, intrinsic,
2627         and min-intrinsic.
2628         (WebCore::primitiveValueFromLength): Removed code that would add a
2629         space to the string for no good reason.
2630         (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Added a
2631         special case for a line clamp of -1, which should come back as "none"
2632         rather than an actual "-1".
2633         (WebCore::CSSComputedStyleDeclaration::length): Return 0 if the
2634         declaration has no corresponding node or no renderer.
2635         (WebCore::CSSComputedStyleDeclaration::item): Check against length()
2636         so that the two stay consistent rather than using a constant.
2637
2638         * css/CSSPrimitiveValue.cpp:
2639         (WebCore::isCSSTokenizerIdentifier): Added.
2640         (WebCore::isCSSTokenizerURL): Added.
2641         (WebCore::quoteString): Added.
2642         (WebCore::quoteStringIfNeeded): Changed to quote strings in many more
2643         cases -- any cases where they would not parse in the CSS parser otherwise.
2644         The main case this affects is font names with spaces in them.
2645         (WebCore::quoteURLIfNeeded): Added.
2646         (WebCore::CSSPrimitiveValue::cssText): Use quoteURLIfNeeded in the case
2647         where we're making the text form of a URI.
2648
2649         * css/tokenizer.flex: Whitespace tweaks to line things up better.
2650
2651 2006-07-30  Eric Seidel  <eric@eseidel.com>
2652
2653         Reviewed by gramps!
2654
2655         Remove some unused SVG code.
2656
2657         * ksvg2/ecma/Ecma.cpp: Removed.
2658         * ksvg2/ecma/Ecma.h: Removed.
2659         * ksvg2/ecma/GlobalObject.cpp: remove a couple dead functions.
2660         * ksvg2/ecma/GlobalObject.h: add a comment about this dead code.
2661         * ksvg2/ecma/SVGLookup.h: Removed.
2662
2663 2006-07-29  Darin Adler  <darin@apple.com>
2664
2665         - Removed tabs from these source files that still had them.
2666           We don't use them; that way source files look fine in editors
2667           that have tabs set to 8 spaces or to 4 spaces.
2668         - Removed allow-tabs Subversion property from the files too.
2669
2670         * bindings/objc/WebScriptObject.h:
2671         * bindings/objc/WebScriptObject.mm:
2672         * platform/FontData.cpp:
2673
2674 2006-07-29  Sam Weinig  <sam.weinig@gmail.com>
2675
2676         Reviewed by Darin.
2677
2678         - patch for http://bugzilla.opendarwin.org/show_bug.cgi?id=10080
2679           Adopt pedantic changes from the Unity project to improve 
2680           cross-compiler compatibility
2681
2682           Changes include:
2683           * Removing trailing semicolon from namespace braces.
2684           * Removing trailing comma from last enum declaration.
2685           * Updating to match style guidelines.
2686           * Adding missing newline to the end of the file.
2687           * Turning on gcc warning for missing newline at the end of a source file
2688             (GCC_WARN_ABOUT_MISSING_NEWLINE in Xcode, -Wnewline in gcc).
2689           * Alphabetical sorting of Xcode source list files.
2690           * Use abs() function from <math.h> instead of ABS() macro.
2691           * Use C-style comments instead of C++ comments in files that might
2692             be included by either C or C++ files.
2693           * Use -numeric_limits<double>::infinity() instead of -HUGE_VAL.
2694
2695         * WebCore+SVG/DOMList.h:
2696         * WebCore.xcodeproj/project.pbxproj:
2697         * WebCorePrefix.h:
2698         * bindings/js/JSCanvasRenderingContext2DCustom.cpp:
2699         * bindings/js/JSXSLTProcessor.h:
2700         * bindings/js/kjs_domnode.h:
2701         (KJS::DOMNode::):
2702         * bindings/objc/DOMCSS.h:
2703         (-[DOMCSSValue enum]):
2704         * bindings/objc/DOMCore.h:
2705         (-[DOMImplementation createDocument:::]):
2706         * bindings/objc/DOMEvents.h:
2707         (-[DOMOverflowEvent enum]):
2708         * bindings/objc/DOMRange.h:
2709         * bindings/objc/DOMTraversal.h:
2710         * bindings/objc/DOMXPath.h:
2711         (-[DOMXPathNSResolver lookupNamespaceURI:]):
2712         * bridge/mac/WebCoreFrameBridge.h:
2713         * bridge/mac/WebCoreKeyboardAccess.h:
2714         * css/makeprop:
2715         * css/makevalues:
2716         * dom/ChildNodeList.h:
2717         * dom/DocPtr.h:
2718         * dom/Document.h:
2719         (WebCore::Document::):
2720         * dom/DocumentMarker.h:
2721         (WebCore::DocumentMarker::):
2722         (WebCore::DocumentMarker::operator==):
2723         (WebCore::DocumentMarker::operator!=):
2724         * dom/EventTargetNode.h:
2725         * dom/KeyboardEvent.h:
2726         (WebCore::KeyboardEvent::):
2727         * dom/NameNodeList.h:
2728         (WebCore::NameNodeList::rootNodeChildrenChanged):
2729         * dom/QualifiedName.cpp:
2730         * editing/TypingCommand.h:
2731         (WebCore::TypingCommand::):
2732         * editing/UnlinkCommand.h:
2733         (WebCore::UnlinkCommand::editingAction):
2734         * html/FormDataList.h:
2735         (WebCore::FormDataListItem::FormDataListItem):
2736         (WebCore::FormDataList::appendData):
2737         * html/HTMLBlockquoteElement.h:
2738         * html/HTMLDivElement.h:
2739         * html/HTMLFormElement.h:
2740         * html/HTMLHRElement.h:
2741         * html/HTMLHeadingElement.h:
2742         * html/HTMLMarqueeElement.h:
2743         * html/HTMLParagraphElement.h:
2744         * html/HTMLPlugInElement.h:
2745         * html/HTMLPreElement.h:
2746         * html/HTMLTokenizer.h:
2747         (WebCore::HTMLTokenizer::State::):
2748         * icon/IconDatabase.cpp:
2749         * icon/SQLStatement.cpp:
2750         * kcanvas/KCanvasFilters.h:
2751         (WebCore::):
2752         (WebCore::KCanvasPoint3F::KCanvasPoint3F):
2753         (WebCore::KCanvasFilter::KCanvasFilter):
2754         (WebCore::KCanvasFilter::~KCanvasFilter):
2755         (WebCore::KCanvasFilterEffect::~KCanvasFilterEffect):
2756         (WebCore::KCComponentTransferFunction::KCComponentTransferFunction):
2757         (WebCore::KCanvasFEConvolveMatrix::KCanvasFEConvolveMatrix):
2758         (WebCore::KCLightSource::KCLightSource):
2759         (WebCore::KCDistantLightSource::KCDistantLightSource):
2760         (WebCore::KCPointLightSource::KCPointLightSource):
2761         (WebCore::KCSpotLightSource::KCSpotLightSource):
2762         (WebCore::KCanvasFEDiffuseLighting::KCanvasFEDiffuseLighting):
2763         (WebCore::KCanvasFEDisplacementMap::KCanvasFEDisplacementMap):
2764         (WebCore::KCanvasFEImage::KCanvasFEImage):
2765         (WebCore::KCanvasFESpecularLighting::KCanvasFESpecularLighting):
2766         * kcanvas/RenderSVGImage.h:
2767         * kcanvas/device/quartz/KRenderingDeviceQuartz.h:
2768         * ksvg2/css/SVGRenderStyle.h:
2769         (WebCore::SVGRenderStyle::InheritedFlags::):
2770         (WebCore::SVGRenderStyle::NonInheritedFlags::):
2771         * ksvg2/css/SVGRenderStyleDefs.h:
2772         (WebCore::):
2773         * ksvg2/events/SVGZoomEvent.h:
2774         * ksvg2/ksvg.h:
2775         (WebCore::):
2776         * ksvg2/misc/KCanvasRenderingStyle.h:
2777         * ksvg2/misc/SVGImageLoader.h:
2778         * ksvg2/scripts/make_names.pl:
2779         * ksvg2/svg/SVGAElement.h:
2780         * ksvg2/svg/SVGAngle.h:
2781         * ksvg2/svg/SVGAnimateColorElement.h:
2782         * ksvg2/svg/SVGAnimateElement.h:
2783         * ksvg2/svg/SVGAnimateTransformElement.h:
2784         * ksvg2/svg/SVGAnimatedAngle.h:
2785         * ksvg2/svg/SVGAnimatedBoolean.h:
2786         * ksvg2/svg/SVGAnimatedColor.h:
2787         * ksvg2/svg/SVGAnimatedEnumeration.h:
2788         * ksvg2/svg/SVGAnimatedInteger.h:
2789         * ksvg2/svg/SVGAnimatedLength.h:
2790         * ksvg2/svg/SVGAnimatedLengthList.h:
2791         * ksvg2/svg/SVGAnimatedNumber.h:
2792         * ksvg2/svg/SVGAnimatedNumberList.h:
2793         * ksvg2/svg/SVGAnimatedPathData.h:
2794         * ksvg2/svg/SVGAnimatedPoints.h:
2795         * ksvg2/svg/SVGAnimatedPreserveAspectRatio.h:
2796         * ksvg2/svg/SVGAnimatedRect.h:
2797         * ksvg2/svg/SVGAnimatedString.h:
2798         * ksvg2/svg/SVGAnimatedTemplate.h:
2799         * ksvg2/svg/SVGAnimatedTransformList.h:
2800         * ksvg2/svg/SVGAnimationElement.cpp:
2801         (SVGAnimationElement::calculateCurrentValueItem):
2802         (SVGAnimationElement::calculateRelativeTimePercentage):
2803         * ksvg2/svg/SVGAnimationElement.h:
2804         (WebCore::):
2805         * ksvg2/svg/SVGCircleElement.h:
2806         * ksvg2/svg/SVGClipPathElement.h:
2807         * ksvg2/svg/SVGColor.h:
2808         * ksvg2/svg/SVGComponentTransferFunctionElement.h:
2809         * ksvg2/svg/SVGCursorElement.h:
2810         * ksvg2/svg/SVGDOMImplementation.h:
2811         * ksvg2/svg/SVGDefsElement.h:
2812         * ksvg2/svg/SVGDescElement.h:
2813         * ksvg2/svg/SVGDocument.h:
2814         * ksvg2/svg/SVGElement.h:
2815         (WebCore::SVGElement::rendererIsNeeded):
2816         (WebCore::svg_dynamic_cast):
2817         * ksvg2/svg/SVGElementInstance.h:
2818         * ksvg2/svg/SVGElementInstanceList.h:
2819         * ksvg2/svg/SVGEllipseElement.h:
2820         * ksvg2/svg/SVGExternalResourcesRequired.h:
2821         * ksvg2/svg/SVGFEBlendElement.h:
2822         * ksvg2/svg/SVGFEColorMatrixElement.h:
2823         * ksvg2/svg/SVGFEComponentTransferElement.h:
2824         * ksvg2/svg/SVGFECompositeElement.h:
2825         * ksvg2/svg/SVGFEDiffuseLightingElement.h:
2826         * ksvg2/svg/SVGFEDisplacementMapElement.h:
2827         * ksvg2/svg/SVGFEDistantLightElement.h:
2828         * ksvg2/svg/SVGFEFloodElement.h:
2829         * ksvg2/svg/SVGFEFuncAElement.h:
2830         * ksvg2/svg/SVGFEFuncBElement.h:
2831         * ksvg2/svg/SVGFEFuncGElement.h:
2832         * ksvg2/svg/SVGFEFuncRElement.h:
2833         * ksvg2/svg/SVGFEGaussianBlurElement.h:
2834         * ksvg2/svg/SVGFEImageElement.h:
2835         * ksvg2/svg/SVGFELightElement.h:
2836         * ksvg2/svg/SVGFEMergeElement.h:
2837         * ksvg2/svg/SVGFEMergeNodeElement.h:
2838         * ksvg2/svg/SVGFEOffsetElement.h:
2839         * ksvg2/svg/SVGFEPointLightElement.h:
2840         * ksvg2/svg/SVGFESpecularLightingElement.h:
2841         * ksvg2/svg/SVGFESpotLightElement.h:
2842         * ksvg2/svg/SVGFETileElement.h:
2843         * ksvg2/svg/SVGFETurbulenceElement.h:
2844         * ksvg2/svg/SVGFilterElement.h:
2845         * ksvg2/svg/SVGFilterPrimitiveStandardAttributes.h:
2846         * ksvg2/svg/SVGFitToViewBox.h:
2847         * ksvg2/svg/SVGForeignObjectElement.cpp:
2848         * ksvg2/svg/SVGForeignObjectElement.h:
2849         * ksvg2/svg/SVGGElement.h:
2850         * ksvg2/svg/SVGGradientElement.h:
2851         * ksvg2/svg/SVGHelper.h:
2852         (WebCore::):
2853         * ksvg2/svg/SVGImageElement.h:
2854         * ksvg2/svg/SVGLangSpace.h:
2855         * ksvg2/svg/SVGLength.h:
2856         * ksvg2/svg/SVGLengthList.h:
2857         * ksvg2/svg/SVGLineElement.h:
2858         * ksvg2/svg/SVGLinearGradientElement.h:
2859         * ksvg2/svg/SVGList.h:
2860         * ksvg2/svg/SVGLocatable.h:
2861         * ksvg2/svg/SVGMarkerElement.h:
2862         * ksvg2/svg/SVGMaskElement.h:
2863         * ksvg2/svg/SVGMatrix.h:
2864         * ksvg2/svg/SVGNumber.h:
2865         * ksvg2/svg/SVGNumberList.h:
2866         * ksvg2/svg/SVGPaint.h:
2867         * ksvg2/svg/SVGPathElement.h:
2868         * ksvg2/svg/SVGPathSeg.h:
2869         * ksvg2/svg/SVGPathSegArc.h:
2870         * ksvg2/svg/SVGPathSegClosePath.h:
2871         * ksvg2/svg/SVGPathSegCurvetoCubic.h:
2872         * ksvg2/svg/SVGPathSegCurvetoCubicSmooth.h:
2873         * ksvg2/svg/SVGPathSegCurvetoQuadratic.h:
2874         * ksvg2/svg/SVGPathSegCurvetoQuadraticSmooth.h:
2875         * ksvg2/svg/SVGPathSegLineto.h:
2876         * ksvg2/svg/SVGPathSegLinetoHorizontal.h:
2877         * ksvg2/svg/SVGPathSegLinetoVertical.h:
2878         * ksvg2/svg/SVGPathSegList.h:
2879         * ksvg2/svg/SVGPathSegMoveto.h:
2880         * ksvg2/svg/SVGPatternElement.h:
2881         * ksvg2/svg/SVGPoint.h:
2882         * ksvg2/svg/SVGPointList.h:
2883         * ksvg2/svg/SVGPolyElement.h:
2884         * ksvg2/svg/SVGPolygonElement.h:
2885         * ksvg2/svg/SVGPolylineElement.h:
2886         * ksvg2/svg/SVGPreserveAspectRatio.h:
2887         * ksvg2/svg/SVGRadialGradientElement.h:
2888         * ksvg2/svg/SVGRect.h:
2889         * ksvg2/svg/SVGRectElement.h:
2890         * ksvg2/svg/SVGSVGElement.h:
2891         * ksvg2/svg/SVGScriptElement.h:
2892         * ksvg2/svg/SVGSetElement.h:
2893         * ksvg2/svg/SVGStopElement.h:
2894         * ksvg2/svg/SVGStringList.h:
2895         * ksvg2/svg/SVGStylable.h:
2896         * ksvg2/svg/SVGStyleElement.h:
2897         * ksvg2/svg/SVGStyledElement.h:
2898         (WebCore::SVGStyledElement::rendererIsNeeded):
2899         (WebCore::SVGStyledElement::canvasResource):
2900         * ksvg2/svg/SVGStyledLocatableElement.h:
2901         * ksvg2/svg/SVGStyledTransformableElement.h:
2902         * ksvg2/svg/SVGSwitchElement.h:
2903         * ksvg2/svg/SVGSymbolElement.h:
2904         * ksvg2/svg/SVGTRefElement.h:
2905         * ksvg2/svg/SVGTSpanElement.h:
2906         * ksvg2/svg/SVGTests.h:
2907         * ksvg2/svg/SVGTextContentElement.h:
2908         * ksvg2/svg/SVGTextElement.h:
2909         * ksvg2/svg/SVGTextPositioningElement.h:
2910         * ksvg2/svg/SVGTitleElement.h:
2911         * ksvg2/svg/SVGTransform.h:
2912         * ksvg2/svg/SVGTransformList.h:
2913         * ksvg2/svg/SVGTransformable.h:
2914         * ksvg2/svg/SVGURIReference.h:
2915         * ksvg2/svg/SVGUseElement.h:
2916         * ksvg2/svg/SVGViewElement.h:
2917         * ksvg2/svg/SVGZoomAndPan.h:
2918         * ksvg2/svg/svgpathparser.h:
2919         * page/Frame.h:
2920         (WebCore::):
2921         * platform/AffineTransform.h:
2922         * platform/FontCache.cpp:
2923         (WebCore::FontPlatformDataCacheKey::FontPlatformDataCacheKey):
2924         * platform/FontData.cpp:
2925         (WebCore::FontData::FontData):
2926         * platform/FontData.h:
2927         * platform/TextBox.h:
2928         (WebCore::TextBox::):
2929         * platform/Timer.cpp:
2930         (WebCore::TimerBase::heapPop):
2931         * platform/mac/FontCacheMac.mm:
2932         * platform/mac/GlyphMapMac.cpp:
2933         * platform/mac/WebFontCache.mm:
2934         (betterChoice):
2935         * rendering/DeprecatedRenderSelect.cpp:
2936         (WebCore::DeprecatedRenderSelect::setWidgetWritingDirection):
2937         * rendering/EllipsisBox.h:
2938         * rendering/RenderBR.h:
2939         (WebCore::RenderBR::renderName):
2940         (WebCore::RenderBR::width):
2941         * rendering/RenderBlock.h:
2942         (WebCore::):
2943         * rendering/RenderFlexibleBox.h:
2944         * rendering/RenderFlow.h:
2945         (WebCore::RenderFlow::RenderFlow):
2946         * rendering/RenderFrame.cpp:
2947         * rendering/bidi.h:
2948         * rendering/break_lines.cpp:
2949
2950 2006-07-29  Rob Buis  <buis@kde.org>
2951
2952         Reviewed by Geoff.
2953
2954         http://bugzilla.opendarwin.org/show_bug.cgi?id=10151
2955         ghostmap XHTML + SVG fails due to javascript undefined exception
2956
2957         Make sure document.URL works when called from a non-HTML document.
2958
2959         * bindings/js/kjs_html.cpp:
2960         (KJS::JSHTMLDocument::getValueProperty):
2961         * bindings/js/kjs_html.h:
2962         (KJS::JSHTMLDocument::):
2963         * dom/Document.idl:
2964
2965 2006-07-29  Mike Emmel  <mike.emmel@gmail.com>
2966
2967         Reviewed and tweaked by Darin.
2968
2969         - fixes for Linux build
2970           (still might not compile, since Darin tweaked but was unable to test).
2971
2972         * WebCoreSources.bkl: Added some new sources, removed some obsolete ones.
2973         * Projects/gdk/webcore-gdk.bkl: Added RenderPopupMenuGdk.cpp
2974
2975         * html/HTMLPlugInElement.h: Removed incorrect syntax with class name
2976         before ::.
2977
2978         * platform/gdk/FrameGdk.h:
2979         * platform/gdk/FrameGdk.cpp: Updated parameters of constructor. Moved a couple stubs
2980         out of this file.
2981         * platform/gdk/RenderPopupMenuGdk.h: Added.
2982         * platform/gdk/RenderPopupMenuGdk.cpp: Added. Just a file full of empty stubs.
2983         * platform/gdk/RenderThemeGdk.h:
2984         * platform/gdk/RenderThemeGdk.cpp: (WebCore::RenderThemeGdk::createPopupMenu): Added.
2985
2986         * platform/gdk/TemporaryLinkStubs.cpp: Add some new stubs.
2987
2988 2006-07-29  Mark Rowe  <opendarwin.org@bdash.net.nz>
2989
2990         Reviewed by Darin.
2991
2992         http://bugzilla.opendarwin.org/show_bug.cgi?id=10022
2993         Bug 10022: REGRESSION: Crash in WebCore::XMLTokenizer::characters
2994
2995         * dom/XMLTokenizer.cpp:
2996         (WebCore::XMLTokenizer::resumeParsing): If the write() call resulted in new callbacks being
2997         added, don't call through to end() just yet.
2998
2999 2006-07-29  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3000
3001         Reviewed by John Sullivan.
3002
3003         - manual test for http://bugzilla.opendarwin.org/show_bug.cgi?id=9984
3004           ASSERTION FAILURE: _private->mouseDownEvent != nil
3005           (WebKit/WebView/WebHTMLView.m:4863 -[WebHTMLView(WebInternal) _delegateDragSourceActionMask])
3006
3007         * manual-tests/subview-click-assertion.html: Added.
3008
3009 2006-07-29  Andrew Wellington  <proton@wiretapped.net>
3010
3011         Reviewed by Darin.
3012
3013         Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8587 / <rdar://problem/4631844>
3014         REGRESSION: {display:list-item} items outside an ol or ul element don't number correctly
3015
3016         * rendering/RenderListItem.cpp:
3017         (WebCore::enclosingList): If no real list element is found, use parent instead.
3018         (WebCore::previousListItem): Check list elements to see if they are list items -- the
3019         old code assumed that a list would never be a list item but this is entirely possible
3020         with CSS and especially with the new rule that means any DOM element could act as a list.
3021
3022 2006-07-29  Alexey Proskuryakov  <ap@nypop.com>
3023
3024         Reviewed by Darin.
3025
3026         Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=10147
3027         REGRESSION: custom attribute values set via javascript are not persistent
3028
3029         Test: fast/dom/Element/setAttribute-case-insensitivity.html
3030
3031         * dom/Element.cpp:
3032         (WebCore::Element::setAttribute): Use the lowercased localName for retrieving the old value, too.
3033
3034 2006-07-28  Timothy Hatcher  <timothy@apple.com>
3035
3036         Suggested by Darin.
3037
3038         Moving the implementation of isContentEditable to the
3039         the WebPrivate category.
3040
3041         * bindings/objc/DOM.mm:
3042         (-[DOMNode isContentEditable]):
3043
3044 2006-07-28  Justin Garcia  <justin.garcia@apple.com>
3045
3046         Reviewed by levi
3047         
3048         First part of:
3049         <rdar://problem/4515463>
3050         REGRESSION: Blot and Mail both do a very poor job of pasting the main www.apple.com page
3051         
3052         Migrate to isBlock and enclosingBlock.
3053         Changed RendereringInfo::isBlock and ReplacementFragment::isBlock
3054         to wasBlock so that they don't conflict with isBlock and because
3055         it's more descriptive.
3056
3057         * editing/ReplaceSelectionCommand.cpp:
3058         (WebCore::ReplacementFragment::mergeStartNode):
3059         (WebCore::ReplacementFragment::wasBlock):
3060         (WebCore::ReplacementFragment::saveRenderingInfo):
3061         (WebCore::ReplacementFragment::renderedBlocks):
3062         (WebCore::RenderingInfo::RenderingInfo):
3063         (WebCore::ReplaceSelectionCommand::shouldMergeStart):
3064         (WebCore::ReplaceSelectionCommand::doApply):
3065         * editing/ReplaceSelectionCommand.h:
3066         (WebCore::RenderingInfo::wasBlock):
3067
3068 2006-07-27  Justin Garcia  <justin.garcia@apple.com>
3069
3070         Reviewed by levi
3071         
3072         More changes for:
3073         <rdar://problem/4242293>
3074         Poor paste fidelity of http://www.google.com/
3075
3076         * editing/markup.cpp:
3077         (WebCore::needInterchangeNewlineAfter): Added.
3078         (WebCore::createMarkup): 
3079         Only add an interchangeNewline if we're annotating for interchange.  Can't test 
3080         this until we expose createMarkup in non-annotate mode (I'd expose Range::toHTML).
3081         Remove the FIXME about prepending the interchangeNewline before creating the rest 
3082         of the markup.  Its correct to surround the interchangeNewline in ancestors of the
3083         adjusted startNode.
3084         Fixed the check to see if an interchangeNewline is needed (!inSameBlock).  This would
3085         add an interchangeNewline for a selection that started before a table.
3086         Removed the workaround for the bug where markup for a table was not included when 
3087         selecting the contents of a table, since this change fixes the general problem of 
3088         markup for ancestors of the startNode being left out.
3089         Don't leave out ancestors of the startNode as we leave their subtrees.  Execute the
3090         code to include them even if we closed ancestors in the ancestorsToClose list.
3091
3092 2006-07-28  Timothy Hatcher  <timothy@apple.com>
3093
3094         Reviewed by John.
3095
3096         Adding isContentEditable to DOMNode's private category. 
3097
3098         * bindings/objc/DOMPrivate.h:
3099
3100 2006-07-28  Alexey Proskuryakov  <ap@nypop.com>
3101
3102         Rolling out http://bugzilla.opendarwin.org/show_bug.cgi?id=6010 because of failing layout tests.
3103         Add better SVGLoad event support.
3104
3105         * dom/EventTargetNode.cpp:
3106         (WebCore::EventTargetNode::dispatchGenericEvent):
3107         * html/HTMLImageLoader.cpp:
3108         (WebCore::HTMLImageLoader::dispatchLoadEvent):
3109         * html/HTMLImageLoader.h:
3110         * ksvg2/misc/SVGImageLoader.cpp:
3111         (WebCore::SVGImageLoader::SVGImageLoader):
3112         * ksvg2/misc/SVGImageLoader.h:
3113         * ksvg2/svg/SVGAElement.cpp:
3114         (WebCore::SVGAElement::parseMappedAttribute):
3115         * ksvg2/svg/SVGAnimatedBoolean.h:
3116         * ksvg2/svg/SVGElement.cpp:
3117         (WebCore::SVGElement::SVGElement):
3118         (WebCore::SVGElement::parseMappedAttribute):
3119         * ksvg2/svg/SVGElement.h:
3120         (WebCore::SVGElement::adjustViewportClipping):
3121         (WebCore::SVGElement::closeRenderer):
3122         (WebCore::SVGElement::rendererIsNeeded):
3123         (WebCore::SVGElement::isClosed):
3124         (WebCore::svg_dynamic_cast):
3125         * ksvg2/svg/SVGExternalResourcesRequired.h:
3126         * ksvg2/svg/SVGImageElement.cpp:
3127         (SVGImageElement::SVGImageElement):
3128         * ksvg2/svg/SVGImageElement.h:
3129         * ksvg2/svg/SVGSVGElement.cpp:
3130         (WebCore::SVGSVGElement::parseMappedAttribute):
3131         * ksvg2/svg/SVGScriptElement.cpp:
3132         (SVGScriptElement::SVGScriptElement):
3133         (SVGScriptElement::parseMappedAttribute):
3134         (SVGScriptElement::executeScript):
3135         * xml/xmlhttprequest.cpp:
3136         (WebCore::XMLHttpRequest::callReadyStateChangeListener):
3137
3138 2006-07-28  Adele Peterson  <adele@apple.com>
3139
3140         Rolling out http://bugzilla.opendarwin.org/show_bug.cgi?id=9753 because of failing layout tests.
3141         SVG with width and height 100% leaves room for scrollbar on the right.
3142
3143         * kcanvas/RenderPath.cpp:
3144         * kcanvas/RenderPath.h:
3145         * kcanvas/RenderSVGContainer.cpp:
3146         (WebCore::RenderSVGContainer::layout):
3147         * ksvg2/svg/SVGCircleElement.cpp:
3148         * ksvg2/svg/SVGCircleElement.h:
3149         * ksvg2/svg/SVGEllipseElement.cpp:
3150         * ksvg2/svg/SVGEllipseElement.h:
3151         * ksvg2/svg/SVGLineElement.cpp:
3152         * ksvg2/svg/SVGLineElement.h:
3153         * ksvg2/svg/SVGRectElement.cpp:
3154         * ksvg2/svg/SVGRectElement.h:
3155         * ksvg2/svg/SVGStyledElement.h:
3156
3157 2006-07-27  Eric Seidel  <eric@eseidel.com>
3158
3159         Reviewed by darin.
3160         
3161         Add better SVGLoad event support.
3162         http://bugzilla.opendarwin.org/show_bug.cgi?id=6010
3163         There will still need to be additional support added for <link> and <script> elements.
3164         Not all of the error -> loaded -> error transition cases work yet.
3165
3166         * dom/EventTargetNode.cpp:
3167         (WebCore::EventTargetNode::dispatchGenericEvent):
3168         * html/HTMLImageLoader.cpp:
3169         (WebCore::HTMLImageLoader::dispatchLoadEvent):
3170         * html/HTMLImageLoader.h:
3171         (WebCore::HTMLImageLoader::haveFiredLoadEvent):
3172         (WebCore::HTMLImageLoader::setHaveFiredLoadEvent):
3173         * ksvg2/misc/SVGImageLoader.cpp:
3174         (WebCore::SVGImageLoader::SVGImageLoader):
3175         (WebCore::SVGImageLoader::dispatchLoadEvent):
3176         * ksvg2/misc/SVGImageLoader.h:
3177         * ksvg2/svg/SVGAElement.cpp:
3178         (WebCore::SVGAElement::parseMappedAttribute):
3179         * ksvg2/svg/SVGAnimatedBoolean.h:
3180         * ksvg2/svg/SVGElement.cpp:
3181         (WebCore::SVGElement::SVGElement):
3182         (WebCore::SVGElement::parseMappedAttribute):
3183         (WebCore::SVGElement::haveLoadedRequiredResources):
3184         (WebCore::SVGElement::sendSVGLoadEventIfPossible):
3185         (WebCore::SVGElement::closeRenderer):
3186         * ksvg2/svg/SVGElement.h:
3187         (WebCore::SVGElement::rendererIsNeeded):
3188         (WebCore::svg_dynamic_cast):
3189         * ksvg2/svg/SVGExternalResourcesRequired.h:
3190         * ksvg2/svg/SVGImageElement.cpp:
3191         (SVGImageElement::SVGImageElement):
3192         (SVGImageElement::haveLoadedRequiredResources):
3193         * ksvg2/svg/SVGImageElement.h:
3194         * ksvg2/svg/SVGSVGElement.cpp:
3195         (WebCore::SVGSVGElement::parseMappedAttribute):
3196         * ksvg2/svg/SVGScriptElement.cpp:
3197         (WebCore::SVGScriptElement::SVGScriptElement):
3198         (WebCore::SVGScriptElement::parseMappedAttribute):
3199         (WebCore::SVGScriptElement::executeScript):
3200         * xml/xmlhttprequest.cpp:
3201         (WebCore::XMLHttpRequest::callReadyStateChangeListener): use new Event() instead of createEvent
3202
3203 2006-07-27  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3204
3205         Reviewed by Anders.
3206
3207         - http://bugzilla.opendarwin.org/show_bug.cgi?id=10135
3208           Cleanup: remove useless parameters from RenderObject::position()
3209
3210         No test possible (no functionality change)
3211
3212         * rendering/RenderBox.cpp:
3213         (WebCore::RenderBox::position):
3214         * rendering/RenderBox.h:
3215         * rendering/RenderObject.h:
3216         (WebCore::RenderObject::position):
3217         * rendering/RenderTableRow.h:
3218         (WebCore::RenderTableRow::position):
3219         * rendering/RenderTableSection.h:
3220         (WebCore::RenderTableSection::position):
3221         * rendering/RenderText.cpp:
3222         (WebCore::RenderText::position):
3223         * rendering/RenderText.h:
3224         * rendering/bidi.cpp:
3225         (WebCore::RenderBlock::constructLine):
3226         (WebCore::RenderBlock::computeVerticalPositionsForLine):
3227
3228 2006-07-27  Rob Buis  <buis@kde.org>
3229
3230         Reviewed by Maciej.
3231
3232         http://bugzilla.opendarwin.org/show_bug.cgi?id=9753
3233         SVG with width and height 100% leaves room for scrollbar on the right.
3234
3235         Relayout children of svg containers, except svg shapes that do not depend on percentages.
3236
3237         * kcanvas/RenderPath.cpp: (WebCore::RenderPath::hasPercentageValues):
3238         * kcanvas/RenderPath.h:
3239         * kcanvas/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout):
3240         * ksvg2/svg/SVGCircleElement.cpp: (SVGCircleElement::hasPercentageValues):
3241         * ksvg2/svg/SVGCircleElement.h:
3242         * ksvg2/svg/SVGEllipseElement.cpp: (WebCore::SVGEllipseElement::hasPercentageValues):
3243         * ksvg2/svg/SVGEllipseElement.h:
3244         * ksvg2/svg/SVGLineElement.cpp: (SVGLineElement::hasPercentageValues):
3245         * ksvg2/svg/SVGLineElement.h:
3246         * ksvg2/svg/SVGRectElement.cpp: (WebCore::SVGRectElement::hasPercentageValues):
3247         * ksvg2/svg/SVGRectElement.h:
3248         * ksvg2/svg/SVGStyledElement.h: (WebCore::SVGStyledElement::hasPercentageValues):
3249
3250 2006-07-27  Justin Garcia  <justin.garcia@apple.com>
3251
3252         Reviewed by levi
3253         
3254         <rdar://problem/4242293>
3255         Poor paste fidelity of http://www.google.com/
3256
3257         * editing/ApplyStyleCommand.cpp:
3258         (WebCore::ApplyStyleCommand::applyInlineStyle):  Fixed crasher with nil-check.
3259         * editing/markup.cpp:
3260         (WebCore::startMarkup): Style information wasn't added to an element if it had
3261         attributes but no style attribute.
3262
3263 2006-07-27  Alexander Kellett  <lypanov@kde.org>
3264
3265         Reviewed by Darin.
3266
3267         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=9867
3268           REGRESSION: code that modifies form element in Firefox modifies form attribute in WebKit
3269
3270         * bindings/scripts/CodeGeneratorJS.pm: add new attribute - HasOverridingNameGetter
3271         * html/HTMLFormElement.idl:
3272
3273 2006-07-27  Rob Buis  <buis@kde.org>
3274
3275         Reviewed by Anders.
3276
3277         http://bugzilla.opendarwin.org/show_bug.cgi?id=8992
3278         Some HTML DOM attributes have incorrect types
3279
3280         Adjust idl and dom source code for HTMLImageElement and
3281         HTMLBaseFontElement to choose correct type for
3282         HTMLImageElement::border and HTMLBaseFontElement::size
3283         attributes.
3284
3285         * html/HTMLBaseFontElement.cpp:
3286         (WebCore::HTMLBaseFontElement::size):
3287         (WebCore::HTMLBaseFontElement::setSize):
3288         * html/HTMLBaseFontElement.h:
3289         * html/HTMLBaseFontElement.idl:
3290         * html/HTMLImageElement.cpp:
3291         (WebCore::HTMLImageElement::border):
3292         (WebCore::HTMLImageElement::setBorder):
3293         * html/HTMLImageElement.h:
3294         * html/HTMLImageElement.idl:
3295
3296 2006-07-27  Justin Garcia  <justin.garcia@apple.com>
3297
3298         Reviewed by levi
3299         
3300         <rdar://problem/4628409>
3301         Safari crashes in CompositeEditCommand::removeBlockPlaceholder entering text in a web page form
3302
3303         * editing/CompositeEditCommand.cpp:
3304         (WebCore::CompositeEditCommand::removeBlockPlaceholder): 
3305         A script on the page shrinks the textarea down to zero rows just
3306         before insertion.  That gives the shadow div a zero height, removing
3307         [div, 0] as a candidate for a VisiblePosition.  Then 
3308         InsertTextCommand::input() tries to create a VisiblePosition from 
3309         [div, 0] and fails.  A nil check is a quick fix.  Another might
3310         be to make positions where there is a caret selection candidates.
3311         Another might be to make any [div, 0] where div is a shadow div inside
3312         a form element a candidate.
3313
3314 2006-07-27  Graham Dennis  <graham.dennis@gmail.com>
3315
3316         Reviewed by Darin.
3317
3318         - fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=10094
3319           Japanese characters improperly rendering in TOT
3320           
3321         Test: fast/encoding/denormalised-voiced-japanese-chars.html
3322
3323         * platform/Font.cpp:
3324         (WebCore::WidthIterator::advance): pass currentCharacter to normalizeVoicingMarks
3325         (WebCore::WidthIterator::normalizeVoicingMarks): turn the currentCharacter variable
3326         into an argument as WidthIterator::advance doesn't update m_currentCharacter while
3327         looping
3328
3329 2006-07-27  Eric Seidel  <eric@eseidel.com>
3330
3331         Reviewed by ap.
3332
3333         Complex entities seem to fail on TOT
3334         http://bugzilla.opendarwin.org/show_bug.cgi?id=6390
3335         Use an alternative work-around to an XML Entity parsing bug.
3336
3337         * dom/XMLTokenizer.cpp:
3338         (WebCore::XMLTokenizer::write):
3339         (WebCore::hackAroundLibXMLEntityBug): added.
3340         (WebCore::startElementNsHandler):
3341         (WebCore::endElementNsHandler):
3342         (WebCore::charactersHandler):
3343         (WebCore::processingInstructionHandler):
3344         (WebCore::cdataBlockHandler):
3345         (WebCore::commentHandler):
3346         (WebCore::getEntityHandler):
3347
3348 2006-07-27  Rob Buis  <buis@kde.org>
3349
3350         Reviewed by Darin.
3351
3352         http://bugzilla.opendarwin.org/show_bug.cgi?id=9938
3353         Fix viewBox issues in Hixie's test
3354
3355         Do a more accurate and quicker job of parsing the viewBox
3356         attribute. Handle properly on negative width/height and
3357         invalid syntax in general.
3358
3359         * ksvg2/svg/SVGFitToViewBox.cpp:
3360         (SVGFitToViewBox::parseViewBox):
3361
3362 2006-07-27  Eric Seidel  <eric@eseidel.com>
3363
3364         Reviewed by ap.
3365
3366         Enables getSVGDocument() support for HTMLObjectElement and HTMLEmbedElement
3367         http://bugzilla.opendarwin.org/show_bug.cgi?id=9237
3368         This patch does not try to autogenerate anything, but enables the SVG functionality.
3369         Also fix HTMLObjectElement vspace and hspace to be numbers instead of strings to match IE & Firefox.
3370
3371         * bindings/js/kjs_dom.cpp:
3372         (KJS::toJS):
3373         * bindings/js/kjs_html.cpp:
3374         (KJS::JSHTMLElement::objectGetter):
3375         (KJS::HTMLElementFunction::callAsFunction):
3376         (KJS::JSHTMLElement::objectSetter):
3377         * bindings/js/kjs_html.h:
3378         (KJS::JSHTMLElement::):
3379         * dom/Document.h:
3380         (WebCore::Document::isSVGDocument):
3381         * html/HTMLEmbedElement.cpp:
3382         (WebCore::HTMLEmbedElement::contentDocument):
3383         (WebCore::HTMLEmbedElement::getSVGDocument):
3384         * html/HTMLEmbedElement.h:
3385         * html/HTMLObjectElement.cpp:
3386         (WebCore::HTMLObjectElement::HTMLObjectElement):
3387         (WebCore::HTMLObjectElement::getInstance):
3388         (WebCore::HTMLObjectElement::parseMappedAttribute):
3389         (WebCore::HTMLObjectElement::contentDocument):
3390         (WebCore::HTMLObjectElement::rendererIsNeeded):
3391         (WebCore::HTMLObjectElement::createRenderer):
3392         (WebCore::HTMLObjectElement::setCode):
3393         (WebCore::HTMLObjectElement::setArchive):
3394         (WebCore::HTMLObjectElement::setBorder):
3395         (WebCore::HTMLObjectElement::setCodeBase):
3396         (WebCore::HTMLObjectElement::setCodeType):
3397         (WebCore::HTMLObjectElement::setData):
3398         (WebCore::HTMLObjectElement::hspace):
3399         (WebCore::HTMLObjectElement::setHspace):
3400         (WebCore::HTMLObjectElement::setStandby):
3401         (WebCore::HTMLObjectElement::setType):
3402         (WebCore::HTMLObjectElement::setUseMap):
3403         (WebCore::HTMLObjectElement::vspace):
3404         (WebCore::HTMLObjectElement::setVspace):
3405         (WebCore::HTMLObjectElement::getSVGDocument):
3406         * html/HTMLObjectElement.h:
3407         * ksvg2/svg/SVGDocument.h:
3408         (WebCore::SVGDocument::isSVGDocument):
3409         * rendering/RenderWidget.h:
3410         (WebCore::RenderWidget::frameView):
3411
3412 2006-07-26  Alexey Proskuryakov  <ap@nypop.com>
3413
3414         Reviewed by Darin.
3415
3416         Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9901
3417         XSLTProcessor cannot parse text nodes for INPUT ELEMENTS in an XSLT stylesheet
3418
3419         Test: fast/js/xhtml-serialize.html
3420
3421         * editing/markup.cpp:
3422         (WebCore::endMarkup): If the element has child nodes, write a closing tag even if it 
3423         is not permitted in HTML, to make it valid XML.
3424
3425 2006-07-26  Alice Liu  <alice.liu@apple.com>
3426
3427         Reviewed by John Sullivan (and Kevin and Timo).
3428
3429         landing this patch for John et al.  
3430         Fixed <rdar://problem/4651380> REGRESSION (9A232->9A234): existing web clips don't render if you restart Dashboard
3431
3432         * page/FrameView.cpp:
3433         (WebCore::FrameView::layout):
3434         moved the call to didFirstLayout to above the check for needsLayout
3435         because we need to call didFirstLayout for every webview, not just
3436         ones we think need layout.  
3437
3438 2006-07-26  Justin Garcia  <justin.garcia@apple.com>
3439
3440         Reviewed by darin
3441         
3442         <rdar://problem/4652788>
3443         REGRESSION: Can't change size or style of any text in message body
3444
3445         * dom/Node.cpp:
3446         (WebCore::Node::isContentRichlyEditable): Mimic Node::isContentEditable.
3447         * html/HTMLElement.cpp:
3448         (WebCore::HTMLElement::isContentRichlyEditable): First check
3449         the frame for editability, then userModify, like what
3450         HTMLElement::isContentEditable() does.
3451         * html/HTMLElement.h:
3452
3453 2006-07-26  Mitz Pettel  <opendarwin.org@mitzpettel.com>
3454
3455         Reviewed by ap.
3456
3457         - fix debug-only information() string for table cells
3458
3459         * rendering/RenderObject.cpp:
3460         (WebCore::RenderObject::information):
3461
3462 2006-07-25  David Harrison  <harrison@apple.com>
3463
3464         Reviewed by timo and Darin.
3465
3466         <rdar://problem/4618584> "Paste and Match Style" is not working in Mail (add SPI)
3467         
3468         * WebCore.xcodeproj/project.pbxproj:
3469         * bridge/mac/WebCoreFrameBridge.h:
3470         * bridge/mac/WebCoreFrameBridge.mm:
3471         (-[WebCoreFrameBridge replaceSelectionWithNode:selectReplacement:smartReplace:matchStyle:]):
3472         Add matchStyle parameter for use by WebKit.
3473
3474 2006-07-25  Justin Garcia  <justin.garcia@apple.com>
3475
3476         Reviewed by adele
3477         
3478         <rdar://problem/4649560>
3479         REGRESSION: Can't Select All when the body is contentEditable="true"
3480
3481         * editing/VisiblePosition.cpp:
3482         (WebCore::VisiblePosition::canonicalPosition): Allow descent from a non-editable html
3483         element into an editable body as a convenience.
3484
3485 2006-07-25  Justin Garcia  <justin.garcia@apple.com>
3486
3487         Reviewed by darin
3488         
3489         <rdar://problem/4468458> Incoming HTML message is editable <body contenteditable="true">
3490
3491         * dom/Document.cpp:
3492         (WebCore::Document::inDesignMode): Removed some spaces.
3493         * page/Frame.cpp:
3494         (WebCore::Frame::applyEditingStyleToElement): Just add CSS properties needed for editing.
3495         (WebCore::Frame::removeEditingStyleFromElement): Made this a no-op, we'll remove
3496         it eventually.
3497
3498 2006-07-25  David Kilzer  <ddkilzer@kilzer.net>
3499
3500         Reviewed by Darin.
3501
3502         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9717
3503           Replace IDL ConvertUndefinedToTrue parameter attribute with Optional attribute
3504
3505         No test added because there is no change in functionality.
3506
3507         * bindings/js/kjs_binding.cpp: Removed valueToBooleanTreatUndefinedAsTrue() method.
3508         * bindings/js/kjs_binding.h: Ditto.
3509         * bindings/scripts/CodeGeneratorJS.pm: Removed support for ConvertUndefinedToTrue parameter attribute.
3510         * dom/Element.h: Set default value to true for scrollIntoView() and scrollIntoViewIfNeeded() arguments.
3511         * dom/Element.idl: Replaced ConvertUndefinedToTrue attribute with Optional attribute.
3512           Fixed name of scrollIntoViewIfNeeded() argument to match implementation.
3513         * page/DOMWindow.idl: Replaced ConvertUndefinedToTrue attribute with Optional attribute.
3514
3515 2006-07-24  Dan Waylonis  <waylonis@google.com>
3516
3517         Reviewed and tweaked a bunch by Darin.
3518
3519         Test: plugins/bindings-test.html
3520
3521         - fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9902
3522           jsNull and NSNull not properly converted between JS and ObjC
3523
3524         * bindings/objc/WebScriptObject.mm:
3525         (+[WebScriptObject _convertValueToObjcValue:originExecutionContext:executionContext:]):
3526         Added case that converts jsNull to NSNull.
3527
3528 2006-07-24  Darin Adler  <darin@apple.com>
3529
3530         Reviewed by Adele and Justin.
3531
3532         - fix <rdar://problem/4613616> REGRESSION: some spaces typed in <textarea> are posted as non-breaking spaces (9630)
3533           http://bugzilla.opendarwin.org/show_bug.cgi?id=9630
3534         - also fixes http://bugzilla.opendarwin.org/show_bug.cgi?id=9939
3535           REGRESSION: Pasting text into native text area with newline at end does not preserve newline
3536         - removed some uses of DeprecatedPtrList in the markup code
3537
3538         Test: fast/forms/textarea-type-spaces.html
3539         Test: fast/forms/textarea-paste-newline.html
3540
3541         * bindings/objc/DOMHTML.mm: (-[DOMHTMLDocument createDocumentFragmentWithText:]):
3542         Updated call to pass a range -- in this case it is the range of the entire document,
3543         so this will not handle the whitespace properly.
3544
3545         * bridge/mac/WebCoreFrameBridge.h: Added range context parameter to the
3546         documentFragmentWithText: method, so we can handle whitespace properly.
3547         * bridge/mac/WebCoreFrameBridge.mm:
3548         (-[WebCoreFrameBridge nodesFromList:]): Changed from DeprecatedPtrList to Vector.
3549         (-[WebCoreFrameBridge markupStringFromNode:nodes:]): Ditto.
3550         (-[WebCoreFrameBridge markupStringFromRange:nodes:]): Ditto.
3551         (-[WebCoreFrameBridge documentFragmentWithText:inContext:]): Added range context
3552         parameter -- pass it on to createFragmentFromText.
3553         (-[WebCoreFrameBridge documentFragmentWithNodesAsParagraphs:]): Changed from
3554         DeprecatedPtrList to Vector.
3555         (-[WebCoreFrameBridge replaceSelectionWithText:selectReplacement:smartReplace:]):
3556         Pass the range of the current selection as context when creating the fragment.
3557
3558         * dom/Position.cpp: (WebCore::Position::inRenderedText): Replace range check with