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