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