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