thatcher [Fri, 3 Feb 2006 23:34:55 +0000 (23:34 +0000)]
JavaScriptCore:
Reviewed by Justin.
Renamed configuration names to Debug, Release and Production.
* JavaScriptCore.xcodeproj/project.pbxproj:
JavaScriptGlue:
Reviewed by Justin.
Renamed configuration names to Debug, Release and Production.
* JavaScriptGlue.xcodeproj/project.pbxproj:
WebCore:
Reviewed by Justin.
Renamed configuration names to Debug, Release and Production.
* WebCore.xcodeproj/project.pbxproj:
WebKit:
Reviewed by Justin.
Renamed configuration names to Debug, Release and Production.
* WebKit.xcodeproj/project.pbxproj:
WebKitTools:
Reviewed by Justin.
Renamed configuration names to Debug, Release and Production.
* DrawTest/DrawTest.xcodeproj/project.pbxproj:
* DumpRenderTree/DumpRenderTree.xcodeproj/project.pbxproj:
* Scripts/set-webkit-configuration:
* Scripts/webkitdirs.pm:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12547
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Fri, 3 Feb 2006 22:46:46 +0000 (22:46 +0000)]
Reviewed by Hyatt.
No test cases added because this is an unreproducible crash.
This is a speculative fix for <rdar://problem/
4048026>
CrashTracer: [BOUNCE BACK] 1219 crashes in Safari at
com.apple.WebCore: KHTMLParser::popOneBlock + 36
It seems possible that current could be nil when this function is
called, so the speculative fix is to add a nil check.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12546
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Fri, 3 Feb 2006 11:22:36 +0000 (11:22 +0000)]
Refactoring of the image classes to make them even more
portable.
Reviewed by mjs
* WebCore.xcodeproj/project.pbxproj:
* platform/Image.cpp:
(WebCore::m_animationObserver):
(WebCore::Image::Image):
(WebCore::Image::~Image):
(WebCore::Image::resetAnimation):
(WebCore::Image::setData):
(WebCore::Image::isNull):
(WebCore::Image::size):
(WebCore::Image::rect):
(WebCore::Image::width):
(WebCore::Image::height):
(WebCore::):
(WebCore::Image::compositeOperatorFromString):
* platform/ImageData.cpp: Added.
(WebCore::FrameData::clear):
(WebCore::ImageData::ImageData):
(WebCore::ImageData::~ImageData):
(WebCore::ImageData::invalidateData):
(WebCore::ImageData::cacheFrame):
(WebCore::ImageData::isNull):
(WebCore::ImageData::size):
(WebCore::ImageData::setData):
(WebCore::ImageData::setNativeData):
(WebCore::ImageData::frameCount):
(WebCore::ImageData::isSizeAvailable):
(WebCore::ImageData::frameAtIndex):
(WebCore::ImageData::frameDurationAtIndex):
(WebCore::ImageData::shouldAnimate):
(WebCore::ImageData::startAnimation):
(WebCore::ImageData::stopAnimation):
(WebCore::ImageData::resetAnimation):
(WebCore::ImageData::advanceAnimation):
* platform/ImageData.h: Added.
(KXMLCore::):
(WebCore::FrameData::m_duration):
(WebCore::FrameData::~FrameData):
(WebCore::ImageData::setIsPDF):
(WebCore::ImageData::currentFrame):
* platform/ImageDecoder.h:
* platform/mac/Image.mm:
(WebCore::Image::loadResource):
(WebCore::Image::supportsType):
(WebCore::Image::getCGImageRef):
(WebCore::Image::getNSImage):
(WebCore::Image::getTIFFRepresentation):
(WebCore::graphicsContext):
(WebCore::setCompositingOperation):
(WebCore::fillSolidColorInRect):
(WebCore::Image::drawInRect):
(WebCore::drawPattern):
(WebCore::Image::tileInRect):
(WebCore::Image::scaleAndTileInRect):
* platform/mac/ImageData.mm: Added.
(WebCore::setCompositingOperation):
(WebCore::ImageData::invalidateAppleSpecificData):
(WebCore::ImageData::checkForSolidColor):
(WebCore::ImageData::getTIFFRepresentation):
(WebCore::ImageData::getNSImage):
* platform/mac/PDFDocumentImage.h: Added.
* platform/mac/PDFDocumentImage.mm: Added.
(WebCore::releasePDFDocumentData):
(WebCore::PDFDocumentImage::PDFDocumentImage):
(WebCore::PDFDocumentImage::~PDFDocumentImage):
(WebCore::PDFDocumentImage::documentRef):
(WebCore::PDFDocumentImage::mediaBox):
(WebCore::PDFDocumentImage::bounds):
(WebCore::PDFDocumentImage::adjustCTM):
(WebCore::PDFDocumentImage::setCurrentPage):
(WebCore::PDFDocumentImage::currentPage):
(WebCore::PDFDocumentImage::pageCount):
(WebCore::PDFDocumentImage::draw):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12545
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Fri, 3 Feb 2006 09:11:10 +0000 (09:11 +0000)]
Make a new class called ImageDecoder that wraps a CGImageSource.
This paves the way for ImageData to become portable as well.
Reviewed by mjs
* WebCore.xcodeproj/project.pbxproj:
* platform/ImageDecoder.h: Added.
* platform/mac/Image.mm:
(WebCore::ImageData::~ImageData):
(WebCore::ImageData::invalidateData):
(WebCore::ImageData::cacheFrame):
(WebCore::ImageData::size):
(WebCore::ImageData::setCFData):
(WebCore::ImageData::frameCount):
(WebCore::ImageData::isSizeAvailable):
(WebCore::ImageData::drawInRect):
* platform/mac/ImageDecoder.cpp: Added.
(WebCore::ImageDecoder::ImageDecoder):
(WebCore::ImageDecoder::~ImageDecoder):
(WebCore::imageSourceOptions):
(WebCore::ImageDecoder::initialized):
(WebCore::ImageDecoder::setData):
(WebCore::ImageDecoder::isSizeAvailable):
(WebCore::ImageDecoder::size):
(WebCore::ImageDecoder::repetitionCount):
(WebCore::ImageDecoder::frameCount):
(WebCore::ImageDecoder::createFrameAtIndex):
(WebCore::ImageDecoder::frameDurationAtIndex):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12544
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Fri, 3 Feb 2006 07:32:20 +0000 (07:32 +0000)]
Move ImageAnimationObserver into its own file.
Reviewed by mjs
* WebCore.xcodeproj/project.pbxproj:
* loader/CachedImage.h:
* platform/Image.h:
* platform/ImageAnimationObserver.h: Added.
(WebCore::ImageAnimationObserver::~ImageAnimationObserver):
* platform/mac/Image.mm:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12543
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Fri, 3 Feb 2006 07:18:00 +0000 (07:18 +0000)]
Reviewed by Adele.
- remove all use of the ChildFrame from outside Frame.cpp, in preparation for removing it
* bridge/mac/MacFrame.h:
* bridge/mac/MacFrame.mm:
(WebCore::MacFrame::frameDetached): Factor out the ChildFrame manipulations into a base
class method.
(WebCore::MacFrame::objectContentType): factored out from createPart, calls the bridge to
determine contents for an Object tag.
(WebCore::MacFrame::createPlugin): factor out code from createPart that makes a Plugin.
(WebCore::MacFrame::createFrame): ditto for code that makes a Frame.
(WebCore::MacFrame::createEmptyDocument): factored out part into the superclass
* khtml/xml/DocumentImpl.cpp:
(WebCore::DocumentImpl::ownerElement): Call new ownerElement method on Frame
instead of mucking at Frame internals.
* page/Frame.cpp:
(WebCore::Frame::createPart): Moved here from MacFrame, but some of the guts were
factored out.
(WebCore::Frame::ownerElement): New method, logic moved from DocumentImpl.
(WebCore::Frame::frameDetached): New virtual method, the part of this that
pokes at ChildFrame structures.
(WebCore::Frame::updateBaseURLForEmptyDocument): Helper that looks at the ChildFrame
array for the benefit of createEmptyDocument.
* page/Frame.h:
* page/Page.h: Fix up modeline.
* page/Plugin.h: Added.
(WebCore::Plugin::Plugin): Moved here from MacFrame.mm, since it is now used by Frame.
(WebCore::Plugin::view): ditto
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12542
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Fri, 3 Feb 2006 05:47:16 +0000 (05:47 +0000)]
Avoid extra copies of all the decoded image bytes.
Reviewed by mjs
* platform/mac/Image.mm:
(WebCore::ImageData::setData):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12541
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Fri, 3 Feb 2006 01:16:18 +0000 (01:16 +0000)]
Reviewed by harrison
Turned on continuous spell checking to test the fix for:
<http://bugzilla.opendarwin.org/show_bug.cgi?id=6586>
REGRESSION: visible_text.cpp assertion failure in Mail.app
Added:
* editing/selection/end-of-document.html
Pixel results for editing tests now include misspelling markers.
A few of them are incorrect, filed 7038 to cover this.
* editing/deleting/delete-
3928305-fix-expected.checksum:
* editing/deleting/delete-
3928305-fix-expected.png:
* editing/deleting/delete-
3959464-fix-expected.checksum:
* editing/deleting/delete-
3959464-fix-expected.png:
* editing/deleting/delete-after-span-ws-001-expected.checksum:
* editing/deleting/delete-after-span-ws-001-expected.png:
* editing/deleting/delete-after-span-ws-002-expected.checksum:
* editing/deleting/delete-after-span-ws-002-expected.png:
* editing/deleting/delete-after-span-ws-003-expected.checksum:
* editing/deleting/delete-after-span-ws-003-expected.png:
* editing/deleting/delete-and-undo-expected.checksum:
* editing/deleting/delete-and-undo-expected.png:
* editing/deleting/delete-block-contents-003-expected.checksum:
* editing/deleting/delete-block-contents-003-expected.png:
* editing/deleting/delete-block-merge-contents-010-expected.checksum:
* editing/deleting/delete-block-merge-contents-010-expected.png:
* editing/deleting/delete-contiguous-ws-001-expected.checksum:
* editing/deleting/delete-contiguous-ws-001-expected.png:
* editing/deleting/delete-tab-002-expected.checksum:
* editing/deleting/delete-tab-002-expected.png:
* editing/deleting/delete-tab-003-expected.checksum:
* editing/deleting/delete-tab-003-expected.png:
* editing/deleting/delete-trailing-ws-002-expected.checksum:
* editing/deleting/delete-trailing-ws-002-expected.png:
* editing/deleting/delete-ws-fixup-001-expected.checksum:
* editing/deleting/delete-ws-fixup-001-expected.png:
* editing/deleting/delete-ws-fixup-002-expected.checksum:
* editing/deleting/delete-ws-fixup-002-expected.png:
* editing/inserting/editing-empty-divs-expected.checksum:
* editing/inserting/editing-empty-divs-expected.png:
* editing/inserting/insert-
3659587-fix-expected.checksum:
* editing/inserting/insert-
3659587-fix-expected.png:
* editing/inserting/insert-br-004-expected.checksum:
* editing/inserting/insert-br-004-expected.png:
* editing/inserting/insert-br-005-expected.checksum:
* editing/inserting/insert-br-005-expected.png:
* editing/inserting/insert-br-007-expected.checksum:
* editing/inserting/insert-br-007-expected.png:
* editing/inserting/insert-div-007-expected.checksum:
* editing/inserting/insert-div-007-expected.png:
* editing/inserting/insert-div-012-expected.checksum:
* editing/inserting/insert-div-012-expected.png:
* editing/inserting/insert-div-013-expected.checksum:
* editing/inserting/insert-div-013-expected.png:
* editing/inserting/insert-div-014-expected.checksum:
* editing/inserting/insert-div-014-expected.png:
* editing/inserting/insert-div-015-expected.checksum:
* editing/inserting/insert-div-015-expected.png:
* editing/inserting/insert-div-016-expected.checksum:
* editing/inserting/insert-div-016-expected.png:
* editing/inserting/insert-div-017-expected.checksum:
* editing/inserting/insert-div-017-expected.png:
* editing/inserting/insert-div-018-expected.checksum:
* editing/inserting/insert-div-018-expected.png:
* editing/inserting/insert-div-019-expected.checksum:
* editing/inserting/insert-div-019-expected.png:
* editing/inserting/insert-div-020-expected.checksum:
* editing/inserting/insert-div-020-expected.png:
* editing/inserting/insert-div-021-expected.checksum:
* editing/inserting/insert-div-021-expected.png:
* editing/inserting/insert-div-022-expected.checksum:
* editing/inserting/insert-div-022-expected.png:
* editing/inserting/insert-div-025-expected.checksum:
* editing/inserting/insert-div-025-expected.png:
* editing/inserting/insert-div-027-expected.checksum:
* editing/inserting/insert-div-027-expected.png:
* editing/inserting/insert-tab-002-expected.checksum:
* editing/inserting/insert-tab-002-expected.png:
* editing/inserting/insert-tab-003-expected.checksum:
* editing/inserting/insert-tab-003-expected.png:
* editing/inserting/insert-text-with-newlines-expected.checksum:
* editing/inserting/insert-text-with-newlines-expected.png:
* editing/inserting/return-key-with-selection-001-expected.checksum:
* editing/inserting/return-key-with-selection-001-expected.png:
* editing/inserting/return-key-with-selection-002-expected.checksum:
* editing/inserting/return-key-with-selection-002-expected.png:
* editing/inserting/return-key-with-selection-003-expected.checksum:
* editing/inserting/return-key-with-selection-003-expected.png:
* editing/inserting/typing-002-expected.checksum:
* editing/inserting/typing-002-expected.png:
* editing/inserting/typing-around-br-001-expected.checksum:
* editing/inserting/typing-around-br-001-expected.png:
* editing/pasteboard/cut-text-001-expected.checksum:
* editing/pasteboard/cut-text-001-expected.png:
* editing/pasteboard/paste-list-001-expected.checksum:
* editing/pasteboard/paste-text-001-expected.checksum:
* editing/pasteboard/paste-text-001-expected.png:
* editing/pasteboard/paste-text-012-expected.checksum:
* editing/pasteboard/paste-text-012-expected.png:
* editing/pasteboard/paste-text-013-expected.checksum:
* editing/pasteboard/paste-text-013-expected.png:
* editing/pasteboard/paste-text-014-expected.checksum:
* editing/pasteboard/paste-text-014-expected.png:
* editing/pasteboard/paste-text-019-expected.checksum:
* editing/pasteboard/paste-text-019-expected.png:
* editing/selection/
3690703-2-expected.checksum:
* editing/selection/
3690703-expected.checksum:
* editing/selection/
3690719-expected.checksum:
* editing/selection/extend-by-word-001-expected.checksum:
* editing/selection/extend-by-word-001-expected.png:
* editing/selection/iframe-expected.checksum:
* editing/selection/iframe-expected.png:
* editing/selection/move-backwords-by-word-001-expected.checksum:
* editing/selection/move-backwords-by-word-001-expected.png:
* editing/selection/move-by-character-001-expected.checksum:
* editing/selection/move-by-character-001-expected.png:
* editing/selection/move-by-line-001-expected.checksum:
* editing/selection/move-by-line-001-expected.png:
* editing/selection/move-by-word-001-expected.checksum:
* editing/selection/move-by-word-001-expected.png:
* editing/selection/replaced-boundaries-1-expected.checksum:
* editing/selection/replaced-boundaries-1-expected.png:
* editing/selection/unrendered-002-expected.checksum:
* editing/selection/unrendered-002-expected.png:
* editing/style/block-styles-007-expected.checksum:
* editing/style/block-styles-007-expected.png:
* editing/style/create-block-for-style-002-expected.checksum:
* editing/style/create-block-for-style-002-expected.png:
* editing/style/create-block-for-style-003-expected.checksum:
* editing/style/create-block-for-style-003-expected.png:
* editing/style/create-block-for-style-004-expected.checksum:
* editing/style/create-block-for-style-004-expected.png:
* editing/style/create-block-for-style-006-expected.checksum:
* editing/style/create-block-for-style-006-expected.png:
* editing/style/create-block-for-style-008-expected.checksum:
* editing/style/create-block-for-style-008-expected.png:
* editing/style/create-block-for-style-009-expected.checksum:
* editing/style/create-block-for-style-009-expected.png:
* editing/style/create-block-for-style-011-expected.checksum:
* editing/style/create-block-for-style-011-expected.png:
* editing/style/create-block-for-style-012-expected.checksum:
* editing/style/create-block-for-style-012-expected.png:
* editing/style/create-block-for-style-013-expected.checksum:
* editing/style/create-block-for-style-013-expected.png:
* editing/unsupported-content/list-type-after-expected.checksum:
* editing/unsupported-content/list-type-before-expected.checksum:
* editing/unsupported-content/table-type-after-expected.checksum:
* editing/unsupported-content/table-type-before-expected.checksum:
* fast/dom/blur-contenteditable-expected.checksum:
* fast/dom/blur-contenteditable-expected.png:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12540
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Fri, 3 Feb 2006 01:14:39 +0000 (01:14 +0000)]
Reviewed by thatcher
Enabled spell checking for layout tests.
* DumpRenderTree/DumpRenderTree.m:
(main):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12539
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Fri, 3 Feb 2006 01:14:12 +0000 (01:14 +0000)]
Reviewed by darin, harrison
<http://bugzilla.opendarwin.org/show_bug.cgi?id=6586>
REGRESSION: visible_text.cpp assertion failure in Mail.app
Calling range() on a WordIterator destroyed its RangeImpl, use
RefPtr instead of PassRefPtr.
Turned on continuous spell checking to test the fix, found
a crasher caused by invalid positions created in
previousBoundary.
Added layout test:
* editing/selection/end-of-document.html
* khtml/editing/visible_text.h:
* khtml/editing/visible_units.cpp:
(khtml::previousBoundary):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12538
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Fri, 3 Feb 2006 00:02:59 +0000 (00:02 +0000)]
Vectorize Image. Optimize so that we no longer throw away
all CGImageRefs. Now we just throw away the last frame.
Reviewed by mjs
* platform/mac/Image.mm:
(WebCore::FrameData::m_duration):
(WebCore::FrameData::~FrameData):
(WebCore::FrameData::clear):
(WebCore::ImageData::invalidateData):
(WebCore::ImageData::cacheFrame):
(WebCore::ImageData::frameAtIndex):
(WebCore::ImageData::frameDurationAtIndex):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12537
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Thu, 2 Feb 2006 23:18:11 +0000 (23:18 +0000)]
Reviewed by mjs.
Cleaned up some stuff I came across when working with JS enabled/
disabled code:
(1) Renamed initScript to initScriptIfNeeded, because that's what it
does
(2) Removed dead or otherwise irrelevent code
(3) Fixed up comments
(4) Removed NULL checks for interpreter() since it never returns NULL,
replaced with single assert().
No test case because there's no change in behavior.
* khtml/ecma/kjs_proxy.cpp:
(WebCore::KJSProxyImpl::evaluate): 1
(WebCore::KJSProxyImpl::createHTMLEventHandler): 1
(WebCore::KJSProxyImpl::createSVGEventHandler): 1
(WebCore::KJSProxyImpl::interpreter): 4
(WebCore::KJSProxyImpl::initScriptIfNeeded): 1
* khtml/ecma/kjs_proxy.h: 1
* page/Frame.cpp:
(Frame::didOpenURL): 2, 3
(Frame::stopLoading): 2
(Frame::jScriptEnabled): 2
(Frame::jScript): changed method call to data member access to match
style of rest of class
(Frame::javaEnabled): 2
(Frame::pluginsEnabled): 2
(Frame::begin): 3
(Frame::userGestureHint): 4
(Frame::pauseTimeouts): collapsed a line
(Frame::resumeTimeouts): ditto
(Frame::saveInterpreterBuiltins): 4
(Frame::restoreInterpreterBuiltins): 4
* page/Frame.h: 2
* page/FramePrivate.h: 2
(FramePrivate::FramePrivate): 2
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12536
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 21:19:16 +0000 (21:19 +0000)]
Fix for PLT performance regression. Make sure that the document's load event timer
isn't started again if it's already active.
Reviewed by mjs
* khtml/xml/DocumentImpl.cpp:
(WebCore::DocumentImpl::dispatchImageLoadEventSoon):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12535
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
staikos [Thu, 2 Feb 2006 21:00:48 +0000 (21:00 +0000)]
Reviewed by Maciej.
* kjs/lookup.h: Fix compile, merged from KDE.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12534
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 17:32:53 +0000 (17:32 +0000)]
- tests for bugzilla.opendarwin.org/show_bug.cgi?id=7000
REGRESSION: Scrolling is triggering onunload in TOT
* fast/events/onunload-body-property.html: Added.
* fast/events/onunload-body-property-expected.txt: Added.
* fast/events/onunload-window-property.html: Added.
* fast/events/onunload-window-property-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12533
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 17:31:50 +0000 (17:31 +0000)]
Reviewed by Maciej.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7000
REGRESSION: Scrolling is triggering onunload in TOT
Tests:
- fast/events/onunload-body-property.html
- fast/events/onunload-window-property.html
* khtml/ecma/kjs_dom.cpp:
(KJS::DOMNode::getValueProperty): Change onunload case to use unloadEvent, not scrollEvent.
(KJS::DOMNode::putValueProperty): Ditto.
* khtml/ecma/kjs_window.cpp:
(KJS::Window::getValueProperty): Ditto.
(KJS::Window::putValueProperty): Ditto.
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6998
setTimeout(0) tight loop uses almost all CPU (need 10ms minimum for timeout?)
* khtml/ecma/kjs_window.cpp: (KJS::WindowQObject::installTimeout): When converting
the timeout number from an integer ms to a double seconds, use a 10 ms minimum.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12532
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 17:15:36 +0000 (17:15 +0000)]
- added a FIXME about an incorrect change made to FloatRect
to fix the Win32 compile
* platform/FloatRect.cpp: (WebCore::enclosingIntRect): Added FIXME
because this should do a ceil operation, not a round operation.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12531
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 09:29:38 +0000 (09:29 +0000)]
Fix win32 bustage. #ifdef enclosingIntRect using. Remove floorf and ceilf from enclosingIntRect impl since it's not needed. Fix the bad #import in qmatrix.h
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12530
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 09:00:14 +0000 (09:00 +0000)]
Deleted these files, Dave checked them in by mistake.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12529
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 08:52:22 +0000 (08:52 +0000)]
Check in revised results for 006.html test.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12528
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 08:40:45 +0000 (08:40 +0000)]
Fix for bug 6957, rewrite image rendering in C++ and move it to
WebCore. Animation now stops lazily and just uses the CachedObject
notification system to push updates so that rects no longer need to
be cached (or sets of animating renderers in specific views).
Reviewed by darin
* WebCore.exp:
* bindings/objc/DOM.mm:
(-[DOMElement _image]):
(-[DOMElement _imageTIFFRepresentation]):
* bindings/objc/DOMPrivate.h:
* bridge/mac/MacFrame.mm:
(WebCore::MacFrame::khtmlMouseMoveEvent):
(WebCore::MacFrame::fileWrapperForElement):
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge elementAtPoint:]):
* kcanvas/RenderSVGImage.cpp:
(RenderSVGImage::imageChanged):
* kcanvas/RenderSVGImage.h:
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
(KCanvasFEImageQuartz::getCIFilter):
* khtml/ecma/kjs_html.cpp:
(KJS::drawPattern):
* kwq/KWQClipboard.h:
(WebCore::KWQClipboard::setDragHasStarted):
* kwq/KWQClipboard.mm:
(WebCore::KWQClipboard::dragNSImage):
* kwq/KWQCursor.mm:
(WebCore::createCustomCursor):
* kwq/KWQPainter.h:
(WebCore::QPainter::):
* kwq/KWQPainter.mm:
(WebCore::QPainter::drawFloatImage):
(WebCore::QPainter::drawTiledImage):
(WebCore::QPainter::drawScaledAndTiledImage):
* kwq/KWQScrollView.h:
* kwq/KWQScrollView.mm:
(QScrollView::inWindow):
* kwq/WebCoreImageRendererFactory.h:
* kwq/WebCoreImageRendererFactory.m:
* loader/CachedImage.cpp:
(WebCore::CachedImage::ref):
(WebCore::CachedImage::imageRect):
(WebCore::CachedImage::notifyObservers):
(WebCore::CachedImage::data):
(WebCore::CachedImage::error):
(WebCore::CachedImage::shouldStopAnimation):
(WebCore::CachedImage::animationAdvanced):
* loader/CachedImage.h:
(WebCore::CachedImage::canRender):
* loader/CachedObjectClient.h:
(WebCore::CachedObjectClient::imageChanged):
(WebCore::CachedObjectClient::willRenderImage):
* platform/Image.h:
(WebCore::ImageAnimationObserver::~ImageAnimationObserver):
(WebCore::Image::animationObserver):
(WebCore::Image::):
* platform/mac/Image.mm:
(WebCore::releasePDFDocumentData):
(WebCore::PDFDocumentImage::PDFDocumentImage):
(WebCore::PDFDocumentImage::~PDFDocumentImage):
(WebCore::PDFDocumentImage::documentRef):
(WebCore::PDFDocumentImage::mediaBox):
(WebCore::PDFDocumentImage::bounds):
(WebCore::PDFDocumentImage::adjustCTM):
(WebCore::PDFDocumentImage::setCurrentPage):
(WebCore::PDFDocumentImage::currentPage):
(WebCore::PDFDocumentImage::pageCount):
(WebCore::PDFDocumentImage::draw):
(WebCore::ImageData::setIsPDF):
(WebCore::ImageData::currentFrame):
(WebCore::m_PDFDoc):
(WebCore::ImageData::~ImageData):
(WebCore::ImageData::invalidateData):
(WebCore::ImageData::cacheFrame):
(WebCore::ImageData::checkForSolidColor):
(WebCore::ImageData::isNull):
(WebCore::ImageData::size):
(WebCore::ImageData::setData):
(WebCore::ImageData::setCFData):
(WebCore::ImageData::imageSourceOptions):
(WebCore::ImageData::frameCount):
(WebCore::ImageData::isSizeAvailable):
(WebCore::ImageData::frameAtIndex):
(WebCore::ImageData::getTIFFRepresentation):
(WebCore::ImageData::getNSImage):
(WebCore::ImageData::frameDurationAtIndex):
(WebCore::ImageData::shouldAnimate):
(WebCore::ImageData::startAnimation):
(WebCore::ImageData::stopAnimation):
(WebCore::ImageData::resetAnimation):
(WebCore::ImageData::advanceAnimation):
(WebCore::ImageData::setCompositingOperation):
(WebCore::ImageData::fillSolidColorInRect):
(WebCore::ImageData::drawInRect):
(WebCore::drawPattern):
(WebCore::):
(WebCore::ImageData::tileInRect):
(WebCore::ImageData::scaleAndTileInRect):
(WebCore::Image::loadResource):
(WebCore::Image::supportsType):
(WebCore::m_animationObserver):
(WebCore::Image::Image):
(WebCore::Image::~Image):
(WebCore::Image::getCGImageRef):
(WebCore::Image::getNSImage):
(WebCore::Image::getTIFFRepresentation):
(WebCore::Image::resetAnimation):
(WebCore::Image::setData):
(WebCore::Image::isNull):
(WebCore::Image::size):
(WebCore::Image::rect):
(WebCore::graphicsContext):
(WebCore::Image::drawInRect):
(WebCore::Image::tileInRect):
(WebCore::Image::scaleAndTileInRect):
* rendering/render_box.cpp:
(WebCore::RenderBox::paintBackgroundExtended):
* rendering/render_image.cpp:
(WebCore::RenderImage::setCachedImage):
(WebCore::RenderImage::imageChanged):
* rendering/render_image.h:
* rendering/render_line.cpp:
(WebCore::InlineFlowBox::paintBackground):
(WebCore::InlineFlowBox::paintBackgroundAndBorder):
* rendering/render_list.cpp:
(RenderListMarker::imageChanged):
* rendering/render_list.h:
* rendering/render_object.cpp:
(WebCore::RenderObject::mustRepaintBackgroundOrBorder):
(WebCore::RenderObject::paintBorderImage):
(WebCore::RenderObject::paintBorder):
(WebCore::RenderObject::imageChanged):
(WebCore::RenderObject::willRenderImage):
* rendering/render_object.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12527
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 08:37:46 +0000 (08:37 +0000)]
Fix for bug 6957, rewrite image rendering in C++ and move it to
WebCore. Animation now stops lazily and just uses the CachedObject
notification system to push updates so that rects no longer need to
be cached (or sets of animating renderers in specific views).
Reviewed by darin
* Misc.subproj/WebNSPasteboardExtras.h:
* Misc.subproj/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]):
(-[NSPasteboard _web_declareAndWriteDragImage:element:URL:title:archive:source:]):
* Misc.subproj/WebNSViewExtras.h:
* Misc.subproj/WebNSViewExtras.m:
(-[NSView _web_dragImage:element:rect:event:pasteboard:source:offset:]):
* WebCoreSupport.subproj/WebImageData.m:
(-[WebImageData init]):
* WebCoreSupport.subproj/WebImageRendererFactory.m:
(+[WebImageRendererFactory shouldUseThreadedDecoding]):
(+[WebImageRendererFactory setShouldUseThreadedDecoding:]):
(-[WebImageRendererFactory setPatternPhaseForContext:inUserSpace:]):
(-[WebImageRendererFactory imageDataForName:]):
* WebView.subproj/WebHTMLView.m:
(-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
(-[NSArray elementAtPoint:]):
* WebView.subproj/WebImageView.m:
(-[WebImageView writeImageToPasteboard:types:]):
(-[WebImageView elementAtPoint:]):
(-[WebImageView mouseDragged:]):
* WebView.subproj/WebView.m:
(-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12526
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 08:36:07 +0000 (08:36 +0000)]
Reviewed by Darin.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6881
Block with position:absolute bottom:0 doesn't always move when height
of containing block changes (affects Safari RSS)
* fast/block/positioning/height-change-expected.checksum: Added.
* fast/block/positioning/height-change-expected.png: Added.
* fast/block/positioning/height-change-expected.txt: Added.
* fast/block/positioning/height-change.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12525
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 08:35:12 +0000 (08:35 +0000)]
Test: LayoutTests/fast/block/positioning/height-change.html
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6881
Block with position:absolute bottom:0 doesn't always move when height
of containing block changes (affects Safari RSS)
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::layoutBlock): Relayout positioned children if the
block's height changed during layout.
* rendering/render_flexbox.cpp:
(WebCore::RenderFlexibleBox::layoutBlock): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12524
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 08:22:43 +0000 (08:22 +0000)]
Reviewed by Maciej.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=7005
add Noncopyable, OwnPtr, OwnArrayPtr to KXMLCore
* kxmlcore/Noncopyable.h: Added.
* kxmlcore/OwnArrayPtr.h: Added.
* kxmlcore/OwnPtr.h: Added.
* JavaScriptCore.xcodeproj/project.pbxproj: Added new files.
* kjs/function.h:
* kjs/function.cpp: Use OwnPtr for Parameter pointers.
* kjs/internal.h: Use Noncopyable for LabelStack.
* kjs/list.cpp: Use OwnArrayPtr for overflow.
* kjs/property_map.h:
* kjs/property_map.cpp: Use OwnArrayPtr for SavedProperties.
Use Vector for some stack buffers.
* kjs/regexp_object.h:
* kjs/regexp_object.cpp: Use OwnArrayPtr for lastOvector.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12523
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 08:07:17 +0000 (08:07 +0000)]
- added some forwarding headers to make new JavaScriptCore changes work
* kxmlcore/Assertions.h: Added.
* kxmlcore/Noncopyable.h: Added.
* kxmlcore/OwnPtr.h: Added.
* kxmlcore/OwnArrayPtr.h: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12522
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Thu, 2 Feb 2006 07:42:12 +0000 (07:42 +0000)]
Reviewed by Darin.
- Move name and parent from Frame to FrameTreeNode
http://bugzilla.opendarwin.org/show_bug.cgi?id=6994
* bridge/mac/BrowserExtensionMac.mm:
(WebCore::BrowserExtensionMac::createNewWindow):
* bridge/mac/MacFrame.h:
* bridge/mac/MacFrame.mm:
(WebCore::MacFrame::generateFrameName):
(WebCore::MacFrame::submitForm):
(WebCore::Frame::frameDetached):
(WebCore::MacFrame::nextKeyViewInFrameHierarchy):
(WebCore::MacFrame::createEmptyDocument):
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge setParent:]):
(-[WebCoreFrameBridge parent]):
(-[WebCoreFrameBridge setName:]):
(-[WebCoreFrameBridge name]):
* khtml/ecma/kjs_window.cpp:
(KJS::Window::getValueProperty):
(KJS::Window::put):
(KJS::Window::isSafeScript):
(KJS::WindowFunc::callAsFunction):
* khtml/html/html_baseimpl.cpp:
(WebCore::HTMLFrameElementImpl::isURLAllowed):
* khtml/html/html_headimpl.cpp:
(WebCore::HTMLLinkElementImpl::process):
* khtml/xml/DocumentImpl.cpp:
(WebCore::DocumentImpl::ownerElement):
(WebCore::DocumentImpl::parentDocument):
* page/Frame.cpp:
(WebCore::Frame::checkCompleted):
(WebCore::Frame::redirectionTimerFired):
(WebCore::Frame::requestFrameName):
(WebCore::Frame::slotChildCompleted):
(WebCore::Frame::incrementFrameCount):
(WebCore::Frame::decrementFrameCount):
(WebCore::Frame::topLevelFrameCount):
(WebCore::Frame::selectFrameElementInParentIfFullySelected):
(WebCore::Frame::handleFallbackContent):
(WebCore::Frame::userGestureHint):
(WebCore::Frame::canCachePage):
(WebCore::Frame::updatePolicyBaseURL):
* page/Frame.h:
* page/FramePrivate.h:
(WebCore::FramePrivate::FramePrivate):
* page/FrameTreeNode.cpp:
(WebCore::FrameTreeNode::setName):
(WebCore::FrameTreeNode::appendChild):
(WebCore::FrameTreeNode::removeChild):
* page/FrameTreeNode.h:
(WebCore::FrameTreeNode::FrameTreeNode):
(WebCore::FrameTreeNode::name):
(WebCore::FrameTreeNode::parent):
(WebCore::FrameTreeNode::setParent):
* rendering/render_frames.cpp:
(WebCore::isURLAllowed):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12521
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 07:04:59 +0000 (07:04 +0000)]
Back out the changes to 031.html's HTML because of the 4959 partial backout.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12520
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 07:02:40 +0000 (07:02 +0000)]
Remove residual style span form test case because of the backout.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12519
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 2 Feb 2006 06:45:49 +0000 (06:45 +0000)]
Back out half of the residual style fix for bug 4959, since treating <span> like residual style breaks fast/block/float/031.html (despite buildbot and people on the outside not seeing it... how weird is that).
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12518
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 05:16:42 +0000 (05:16 +0000)]
- test for bugzilla.opendarwin.org/show_bug.cgi?id=7018
REGRESSION: clearTimeout no longer works
* fast/dom/Window/clear-timeout.html: Added.
* fast/dom/Window/clear-timeout-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12517
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 05:15:19 +0000 (05:15 +0000)]
Checking in without review because I *just* broke this with my last check-in.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=7018
REGRESSION: clearTimeout no longer works
Test: fast/dom/Window/clear-timeout.html
* khtml/ecma/kjs_window.cpp: (WindowQObject::clearTimeout): Fixed a
!= that should have been a ==.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12516
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 2 Feb 2006 02:51:03 +0000 (02:51 +0000)]
Reviewed by Hyatt.
- use Timer for everything, kill timer features of QObject, QTimer, QTimerEvent
* ForwardingHeaders/kxmlcore/Noncopyable.h: Added.
* ForwardingHeaders/kxmlcore/OwnArrayPtr.h: Added.
* ForwardingHeaders/kxmlcore/OwnPtr.h: Added.
* ForwardingHeaders/qtimer.h: Removed.
* kwq/KWQTimer.cpp: Removed.
* kwq/KWQTimer.h: Removed.
* kwq/KWQObject.h:
* kwq/KWQObject.cpp: Remove timer-related features.
* kwq/KWQEvent.h: Remove QTimerEvent.
* WebCore.xcodeproj/project.pbxproj: Updated for file changes.
* WebCore.vcproj/WebCore/WebCore.vcproj: Ditto.
* platform/Timer.h: Change to use nextFireInterval rather than nextFireTime.
More convenient and also no need to define what the epoch is. Change TimerBase
to use a virtual function rather than a function pointer. Added setDeferringTimers
function to ensure timers don't fire while handling an event.
* platform/mac/Timer.cpp:
(WebCore::timerFired): Added deferral support.
(WebCore::fireDeferred): Added.
(WebCore::TimerBase::TimerBase): Simplify to remove function pointer.
(WebCore::TimerBase::~TimerBase): Put in here, no longer inline.
(WebCore::TimerBase::start): Change to use interval.
(WebCore::TimerBase::startRepeating): Change since we use interval now.
(WebCore::TimerBase::startOneShot): Ditto.
(WebCore::TimerBase::stop): Added deferral support.
(WebCore::TimerBase::nextFireInterval): Added.
(WebCore::TimerBase::fire): Added.
(WebCore::isDeferringTimers): Added.
(WebCore::setDeferringTimers): Added.
* bridge/mac/MacFrame.mm:
(WebCore::MacFrame::startRedirectionTimer): Update for change to Timer class.
(WebCore::MacFrame::passMouseDownEventToWidget): Update to use setDeferringTimers
instead of QObject::setDefersTimers.
* khtml/ecma/kjs_window.h:
* khtml/ecma/kjs_window.cpp:
(KJS::DOMWindowTimer): Added. Class for JavaScript "timeout".
(KJS::WindowQObject::parentDestroyed): Update to use DOMWindowTimer.
(KJS::WindowQObject::installTimeout): Ditto.
(KJS::WindowQObject::pauseTimeouts): Ditto.
(KJS::WindowQObject::resumeTimeouts): Ditto.
(KJS::WindowQObject::clearTimeout): Ditto.
(KJS::WindowQObject::timerFired): Ditto.
(KJS::DOMWindowTimer::fired): Added.
* khtml/html/htmltokenizer.h:
* khtml/html/htmltokenizer.cpp:
(WebCore::HTMLTokenizer::HTMLTokenizer): Use Timer instead of timer ID.
(WebCore::HTMLTokenizer::reset): Ditto.
(WebCore::HTMLTokenizer::continueProcessing): Ditto.
(WebCore::HTMLTokenizer::write): Ditto.
(WebCore::HTMLTokenizer::stopParsing): Ditto.
(WebCore::HTMLTokenizer::processingData): Ditto.
(WebCore::HTMLTokenizer::timerFired): Ditto.
(WebCore::HTMLTokenizer::end): Ditto.
(WebCore::HTMLTokenizer::finish): Ditto.
* khtml/xml/DocumentImpl.h:
* khtml/xml/DocumentImpl.cpp:
(WebCore::DocumentImpl::DocumentImpl): Updated for changes to use RefPtr
more cases, and not use it for m_svgExtensions.
(WebCore::DocumentImpl::~DocumentImpl): Delete m_svgExtensions instead of
just deref'ing it since it's no longer shared.
(WebCore::DocumentImpl::implementation): Update for RefPtr.
(WebCore::DocumentImpl::elementSheet): Ditto.
(WebCore::DocumentImpl::styleSheets): Ditto.
(WebCore::DocumentImpl::recalcStyleSelector): Ditto.
(WebCore::DocumentImpl::dispatchImageLoadEventSoon): Update to use new style timer.
(WebCore::DocumentImpl::removeImage): Ditto.
(WebCore::DocumentImpl::dispatchImageLoadEventsNow): Ditto.
(WebCore::DocumentImpl::imageLoadEventTimerFired): Ditto.
(WebCore::DocumentImpl::svgExtensions): Update for RefPtr.
(WebCore::DocumentImpl::accessSVGExtensions): Ditto.
* ksvg2/misc/KSVGTimeScheduler.h:
(WebCore::TimeScheduler::document):
* ksvg2/misc/KSVGTimeScheduler.cpp:
(WebCore::SVGTimer::downcast):
(WebCore::SVGTimer::SVGTimer):
(WebCore::SVGTimer::start):
(WebCore::SVGTimer::calculateTimePercentage):
(WebCore::SVGTimer::notifyAll):
(WebCore::SVGTimer::addNotify):
(WebCore::SVGTimer::removeNotify):
(WebCore::TimeScheduler::TimeScheduler):
(WebCore::TimeScheduler::~TimeScheduler):
(WebCore::TimeScheduler::addTimer):
(WebCore::TimeScheduler::connectIntervalTimer):
(WebCore::TimeScheduler::disconnectIntervalTimer):
(WebCore::TimeScheduler::startAnimations):
(WebCore::TimeScheduler::toggleAnimations):
(WebCore::TimeScheduler::timerFired):
Rework to use new timer.
* ksvg2/misc/SVGDocumentExtensions.h:
* ksvg2/misc/SVGDocumentExtensions.cpp:
Make SVGDocumentExtensions no longer be shared, be solely owned by the document.
* ksvg2/svg/SVGDocumentImpl.cpp:
(WebCore::SVGDocumentImpl::createStyleSelector): Update for RefPtr use.
* kwq/KWQSlot.cpp: Remove endLifeSupport and timerNotify slots.
* page/Frame.h:
* page/Frame.cpp:
(WebCore::Frame::selectionLayoutChanged): Update to use new style timer.
(WebCore::Frame::caretBlinkTimerFired): Ditto.
* page/FramePrivate.h: (WebCore::FramePrivate::FramePrivate): Ditto.
* page/FrameView.h:
* page/FrameView.cpp:
(WebCore::FrameViewPrivate::FrameViewPrivate): Update to use new style timer.
(WebCore::FrameView::clear): Ditto.
(WebCore::FrameView::layout): Ditto.
(WebCore::FrameView::layoutTimerFired): Ditto.
(WebCore::FrameView::scheduleRelayout): Ditto.
(WebCore::FrameView::layoutPending): Ditto.
(WebCore::FrameView::haveDelayedLayoutScheduled): Ditto.
(WebCore::FrameView::unscheduleRelayout): Ditto.
* page/ObjectContents.h: Remove unneeded includes.
* rendering/render_frames.cpp: Removed include of <qtimer.h>.
* rendering/render_layer.h:
* rendering/render_layer.cpp:
(WebCore::Marquee::Marquee): Use new style timers.
(WebCore::Marquee::start): Ditto.
(WebCore::Marquee::suspend): Ditto.
(WebCore::Marquee::stop): Ditto.
(WebCore::Marquee::updateMarqueeStyle): Ditto.
(WebCore::Marquee::timerFired): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12515
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Wed, 1 Feb 2006 22:36:00 +0000 (22:36 +0000)]
Patch by Darin. Reviewed by Beth.
Fix for <rdar://problem/
4424126> REGRESSION(412-420+): yellow
highlight fails to follow cursor when mousing over star rating
(6232)
Event coordinates cannot be calculated until there is a target.
This patch restructures the code so that the coordinates are
initialized when the mouse event is created but are not calculated
until the target is set.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12514
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Wed, 1 Feb 2006 06:30:13 +0000 (06:30 +0000)]
LayoutTests:
Reviewed by Darin.
- test case for REGRESSION: assertion failure mousing over DHTML menus at www.worldofwarcraft.com
http://bugzilla.opendarwin.org/show_bug.cgi?id=6931
* fast/dynamic/layer-hit-test-crash-expected.checksum: Added.
* fast/dynamic/layer-hit-test-crash-expected.png: Added.
* fast/dynamic/layer-hit-test-crash-expected.txt: Added.
* fast/dynamic/layer-hit-test-crash.html: Added.
WebCore:
Reviewed by Darin.
- fixed REGRESSION: assertion failure mousing over DHTML menus at www.worldofwarcraft.com
http://bugzilla.opendarwin.org/show_bug.cgi?id=6931
* rendering/render_layer.cpp:
(WebCore::RenderLayer::hitTestLayer): Iterate vectors in a way that won't break on empty ones.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12513
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Wed, 1 Feb 2006 06:24:32 +0000 (06:24 +0000)]
Reviewed by Darin.
- fixed leak of hundreds of thousands of JS parser nodes on the layout tests, and added an exit counter
that would catch them
* kjs/nodes.cpp:
(NodeCounter::~NodeCounter): Added debug-only node counter.
(Node::Node):
(Node::~Node):
* kxmlcore/VectorTraits.h: Simple classes like RefPtr do in fact need destruction.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12512
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Wed, 1 Feb 2006 04:33:27 +0000 (04:33 +0000)]
Reviewed by Maciej.
- added deleteAllValues for HashSet as well as HashMap
- fixed conversion from const_iterator to iterator, which I broke a while back
* kxmlcore/HashMap.h: Updated copyright date.
* kxmlcore/HashSet.h: (KXMLCore::deleteAllValues): Added.
* kxmlcore/HashTable.h: (KXMLCore::HashTableIterator::operator const_iterator): Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12511
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Wed, 1 Feb 2006 02:44:22 +0000 (02:44 +0000)]
LayoutTests:
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6862
Input's value doesn't get updated after typing in new text field
* fast/forms/input-changing-value-expected.txt: Added.
* fast/forms/input-changing-value.html: Added.
WebCore:
Reviewed by Darin.
http://bugzilla.opendarwin.org/show_bug.cgi?id=6862
Input's value doesn't get updated after typing in new text field
Added test:
fast/forms/input-changing-value.html
Added an event listener for a DOMCharacterDataModifiedEvent on the inner div.
When we get the event, then we update the input element's value field.
There may be performance problems with this approach that we will have to
address before flipping the switch to use these new text fields.
* rendering/RenderTextField.cpp:
(WebCore::InputMutationListener::handleEvent): calls subtreeHasChanged
(WebCore::m_mutationListener):
(WebCore::RenderTextField::~RenderTextField): remove the event listener.
(WebCore::RenderTextField::setStyle): Remove unnecessary setStyle on text node.
It should inherit style from the div already.
(WebCore::RenderTextField::updateFromElement): add the event listener.
(WebCore::RenderTextField::subtreeHasChanged): updates the input element's value.
* rendering/RenderTextField.h:
(WebCore::InputMutationListener::InputMutationListener): Added.
(WebCore::InputMutationListener::renderTextField): Added.
(WebCore::InputMutationListener::setInputElement): Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12510
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Wed, 1 Feb 2006 01:49:29 +0000 (01:49 +0000)]
Reviewed by Tim Omernick.
- fixed <rdar://problem/
4267144> REGRESSION (10.4.2): Safari pages auto-scroll too easily
during drag over content [5853]
There were two issues here:
(1) dragging over a non-editable webview (such as a typical Safari page) should not have
auto-scrolled at all; the fact that it did was an uninentional side effect of making
auto-scroll work for editable webviews a la Blot.
(2) the speed & hot area of the auto-scroll changed between 10.4.1 and 10.4.2.
I have a fix for (1), which is the much more important issue. I'll modify the bugzilla bug
to be about the remaining issue.
* WebView.subproj/WebView.m:
(-[WebView _autoscrollForDraggingInfo:timeDelta:]):
do nothing if not editable
(-[WebView _shouldAutoscrollForDraggingInfo:]):
return NO if not editable
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12509
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Wed, 1 Feb 2006 01:18:01 +0000 (01:18 +0000)]
LayoutTests:
Adding test cases for:
http://bugzilla.opendarwin.org/show_bug.cgi?id=4959
Bug 4959: inline style not terminated properly after <form>
Updated older tests/results to work with the patch.
Some of the tests had an open <span> with no close.
* editing/deleting/delete-image-003-expected.txt:
* editing/deleting/delete-image-003.html:
* editing/undo/redo-typing-001-expected.txt:
* editing/undo/redo-typing-001.html:
* editing/undo/undo-typing-001-expected.txt:
* editing/undo/undo-typing-001.html:
* fast/block/float/031.html:
* fast/parser/residual-style-span-form-expected.checksum: Added.
* fast/parser/residual-style-span-form-expected.png: Added.
* fast/parser/residual-style-span-form-expected.txt: Added.
* fast/parser/residual-style-span-form.html: Added.
* fast/text/whitespace/006-expected.txt:
WebCore:
Reviewed by Dave Hyatt.
Landed by Timothy Hatcher.
http://bugzilla.opendarwin.org/show_bug.cgi?id=4959
Bug 4959: inline style not terminated properly after <form>
* khtml/html/htmlparser.cpp:
(HTMLParser::isResidualStyleTag): add <span> as residual style tag
(HTMLParser::isAffectedByResidualStyle): add <form> as tag affected by residual style
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12508
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Wed, 1 Feb 2006 00:24:24 +0000 (00:24 +0000)]
Adding -Wno-long-double to avoid a warning.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12507
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Tue, 31 Jan 2006 23:59:02 +0000 (23:59 +0000)]
Reviewed by Tim Omernick.
Support for programmatic scrolling one line at a time for PDFs. (We already had support for
programmatic scrolling one page at a time, and to top/end.)
* WebView.subproj/WebPDFView.m:
(-[WebPDFView _fakeKeyEventWithFunctionKey:]):
generalized comment
(-[WebPDFView scrollLineDown:]):
pass a faked arrow-down key event
(-[WebPDFView scrollLineUp:]):
pass a faked arrow-up key event
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12506
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Tue, 31 Jan 2006 23:38:48 +0000 (23:38 +0000)]
Reviewed by Geoff Garen.
* bindings/c/c_utility.cpp:
(KJS::Bindings::convertUTF8ToUTF16):
Fixed an invalid assertion that UTF8Chars is not NULL. It is valid for it to be NULL as long as
UTF8Length is 0.
This fixes an assertion failure on TOT at <http://www.musicindiaonline.com/p/x/tJO0OOBME9.As1NMvHdW/>,
where JavaScript is getting a NULL string back from some call on the Real Player plugin.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12505
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
vicki [Tue, 31 Jan 2006 21:50:49 +0000 (21:50 +0000)]
Reviewed by Geoff.
- fix <rdar://problem/
4426668> REGRESSION: sometimes URLs with named anchors in a
page don't jump to proper location in document (6916). Added test cases for this
fix and past link jumping bug fixes.
* khtml/xml/ContainerNodeImpl.cpp:
(WebCore::ContainerNodeImpl::getUpperLeftCorner): Traverse up the parent node chain
until you find one that has a sibling.
* manual-tests/linkjump-1.html: Added a note here - the bug for this test case is
still broken in TOT.
* manual-tests/linkjump-2.html: Added. Renamed scrollToAnchor.html, to group it with the
rest of the link jumping tests.
* manual-tests/linkjump-3.html: Added. Test case for this bug, <rdar://problem/
4426668>.
* manual-tests/linkjump-4.html: Added. Test case for past fix, <rdar://problem/
4247537>.
* manual-tests/linkjump-5.html: Added. Test case for past fix, <rdar://problem/
4256060>.
* manual-tests/scrollToAnchor.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12504
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
harrison [Tue, 31 Jan 2006 20:41:47 +0000 (20:41 +0000)]
Adding test cases for:
<rdar://problem/
4423922> TOT REGRESSION (r12358): first iframe in pair fails to copy
* editing/pasteboard/paste-empty-startcontainer-expected.png: Added.
* editing/pasteboard/paste-empty-startcontainer-expected.checksum: Added.
* editing/pasteboard/paste-empty-startcontainer-expected.txt: Added.
* editing/pasteboard/paste-empty-startcontainer.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12503
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
harrison [Tue, 31 Jan 2006 20:41:10 +0000 (20:41 +0000)]
Reviewed by John.
<rdar://problem/
4423922> TOT REGRESSION (r12358): first iframe in pair fails to copy
Layout test added:
* editing/pasteboard/paste-empty-startcontainer.html
* khtml/xml/dom2_rangeimpl.cpp:
(DOM::RangeImpl::startNode):
- use empty non-textual m_startContainer itself if m_startOffset is 0, rather then nextSibling()
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12502
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Tue, 31 Jan 2006 18:55:24 +0000 (18:55 +0000)]
LayoutTests:
Reviewed by Adele.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6942
Assertion failure in HTMLSelectElementImpl::selectedIndex (m_multiple)
* fast/forms/selected-index-assert-expected.txt: Added.
* fast/forms/selected-index-assert.html: Added.
WebCore:
Test: fast/forms/selected-index-assert.html.
Reviewed by Adele.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6942
Assertion failure in HTMLSelectElementImpl::selectedIndex (m_multiple)
* khtml/html/HTMLSelectElementImpl.cpp:
(WebCore::HTMLSelectElementImpl::selectedIndex): Removed bogus assert.
-1 is the correct value to return if no option is selected.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12501
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Tue, 31 Jan 2006 18:14:19 +0000 (18:14 +0000)]
Reviewed by Adele.
Fixing build bustage. Removing include of khtml_factory.h since it
has been removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 17:45:18 +0000 (17:45 +0000)]
Reviewed by Hyatt.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6584
REGRESSION: button after unclosed button gives trouble
* fast/forms/button-cannot-be-nested-expected.checksum: Added.
* fast/forms/button-cannot-be-nested-expected.png: Added.
* fast/forms/button-cannot-be-nested-expected.txt: Added.
* fast/forms/button-cannot-be-nested.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 17:45:02 +0000 (17:45 +0000)]
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6584
REGRESSION: button after unclosed button gives trouble
* khtml/html/htmlparser.cpp: (HTMLParser::getNode):
Add buttonTag to error handling table to take care of unclosed tags.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 17:41:21 +0000 (17:41 +0000)]
Reviewed by Darin.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6959
REGRESSION: Assertion failure in HTMLTokenizer::parseTag (!scriptNode) on page with ignored scripts
* fast/parser/script-after-frameset-assert-expected.txt: Added.
* fast/parser/script-after-frameset-assert.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 17:41:06 +0000 (17:41 +0000)]
Test: fast/parser/script-after-frameset-assert.html
Reviewed by Darin.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6959
REGRESSION: Assertion failure in HTMLTokenizer::parseTag (!scriptNode) on page with ignored scripts
* khtml/html/htmltokenizer.cpp:
(WebCore::HTMLTokenizer::scriptHandler): Reset scriptNode to 0 if the
script is being skipped.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 17:36:02 +0000 (17:36 +0000)]
Reviewed by Darin.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6960
REGRESSION: Assertion failure in table_layout.cpp:216 calcWidthArray()
* fast/table/fixed-table-non-cell-in-row.html: Added.
* fast/table/fixed-table-non-cell-in-row-expected.txt: Added.
* fast/table/fixed-table-non-cell-in-row-expected.png: Added.
* fast/table/fixed-table-non-cell-in-row-expected.checksum: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 17:31:27 +0000 (17:31 +0000)]
Reviewed by Darin.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6960
REGRESSION: Assertion failure in table_layout.cpp:216 calcWidthArray()
* rendering/table_layout.cpp: (WebCore::FixedTableLayout::calcWidthArray):
Remove the assertion.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12494
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Tue, 31 Jan 2006 17:18:57 +0000 (17:18 +0000)]
2006-01-31 Anders Carlsson <andersca@mac.com>
Reviewed by John.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6964
ImagePatterns are always rendered mirrored
* khtml/ecma/kjs_html.cpp:
(KJS::ImagePattern::createPattern):
Don't mirror the x coordinate when creating the pattern.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12493
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 17:09:20 +0000 (17:09 +0000)]
WebCore:
Reviewed by Hyatt.
- added a Timer class
- used the Timer class for the redirection timer
- moved Frame, FrameView, MacFrame, and FrameNodeTree into WebCore namespace
- removed more KWQ
* ForwardingHeaders/khtml_factory.h: Removed.
* kwq/KWQKHTMLFactory.cpp: Removed.
* kwq/KWQKHTMLFactory.h: Removed.
* platform/Timer.h: Added.
* platform/mac/Timer.cpp: Added.
* WebCore.vcproj/WebCore/WebCore.vcproj: Updated for added and removed files.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* page/Frame.h:
* page/Frame.cpp:
(WebCore::Frame::init): Remove code to set up slotRedirect.
(WebCore::Frame::checkCompleted): Call start/stopRedirectionTimer instead of using
the redirection timer directly.
(WebCore::Frame::scheduleRedirection): Ditto.
(WebCore::Frame::scheduleLocationChange): Ditto.
(WebCore::Frame::scheduleHistoryNavigation): Ditto.
(WebCore::Frame::cancelRedirection): Ditto.
(WebCore::Frame::redirectionTimerFired): Renamed from slotRedirect.
(WebCore::Frame::slotParentCompleted): More startRedirectionTimer.
(WebCore::Frame::startRedirectionTimer): Added. Virtual bottleneck to start the
redirection timer.
(WebCore::Frame::stopRedirectionTimer): Added. Virtual bottleneck to stop the
redirection timer.
* page/FramePrivate.h: Changed m_redirectionTimer from a QTimer to a Timer.
* bridge/mac/MacFrame.mm:
(WebCore::MacFrame::startRedirectionTimer): Added. Avoids the need for the QTimer
"monitor" feature that I had added a while back to implement the client-redirected
callback.
(WebCore::MacFrame::stopRedirectionTimer): Ditto.
* kwq/KWQSlot.cpp: Removed slotRedirected.
* ForwardingHeaders/ksvg2/KSVGPart.h: Removed using to put Frame into various
namespaces (all of which are WebCore now anyway).
* bindings/objc/DOMInternal.mm:
* bridge/mac/BrowserExtensionMac.h:
* bridge/mac/KWQKHTMLView.cpp:
* bridge/mac/MacFrame.h:
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreFrameBridge.mm:
* bridge/mac/WebCorePageBridge.h:
* bridge/mac/WebCorePageBridge.mm:
* css/cssstyleselector.cpp:
* css/cssstyleselector.h:
* khtml/ecma/kjs_binding.cpp:
* khtml/ecma/kjs_binding.h:
* khtml/ecma/kjs_navigator.cpp:
* khtml/ecma/kjs_navigator.h:
* khtml/ecma/kjs_proxy.h:
* khtml/ecma/kjs_window.h:
* khtml/editing/SelectionController.h:
* khtml/editing/jsediting.h:
* khtml/html/html_baseimpl.h:
* khtml/html/html_documentimpl.cpp:
* khtml/html/html_documentimpl.h:
* khtml/html/html_headimpl.h:
* khtml/html/htmlparser.h:
* khtml/html/htmltokenizer.h:
* khtml/xml/DOMImplementationImpl.h:
* khtml/xml/DocumentImpl.h:
* khtml/xml/dom2_eventsimpl.h:
* khtml/xml/xml_tokenizer.h:
* khtml/xsl/xslt_processorimpl.h:
* ksvg2/svg/SVGDocumentImpl.cpp:
* kwq/KWQClipboard.h:
* kwq/KWQComboBox.mm:
* kwq/KWQFileButton.h:
* kwq/KWQFrame.mm:
* kwq/KWQKJavaAppletWidget.h:
* kwq/KWQListBox.mm:
* kwq/KWQSignalStubs.cpp:
* kwq/KWQSlider.mm:
* kwq/KWQTextField.mm:
* kwq/KWQWidget.mm:
* kwq/WebCoreSettings.mm:
* kwq/WebCoreTextRendererFactory.mm:
* loader/DocLoader.h:
* page/FrameTreeNode.cpp:
* page/FrameTreeNode.h:
* page/FrameView.cpp:
* page/FrameView.h:
* page/Page.cpp:
* page/Page.h:
* rendering/InlineTextBox.h:
* rendering/font.cpp:
* rendering/render_canvas.h:
* rendering/render_frames.h:
* rendering/render_object.h:
* rendering/render_replaced.h:
Updated for namespace and header changes.
WebKit:
Reviewed by Hyatt.
* WebCoreSupport.subproj/WebFrameBridge.m:
(-[WebFrameBridge createChildFrameNamed:withURL:referrer:renderPart:allowsScrolling:marginWidth:marginHeight:]):
Updated for name change.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12492
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Tue, 31 Jan 2006 13:21:27 +0000 (13:21 +0000)]
Added test case I forgot to commit earlier.
- test case for crash if a node is removed from the DOM before being reparented due to residual style
http://bugzilla.opendarwin.org/show_bug.cgi?id=6778
* fast/parser/remove-block-in-residual-style.html: Added.
* fast/parser/remove-block-in-residual-style-expected.checksum: Added.
* fast/parser/remove-block-in-residual-style-expected.png: Added.
* fast/parser/remove-block-in-residual-style-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12491
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Tue, 31 Jan 2006 07:41:58 +0000 (07:41 +0000)]
2006-01-30 Anders Carlsson <andersca@mac.com>
Reviewed by Darin.
Update test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6907
REGRESSION: United.com menus messed up due to document.all/MSIE sniff
* fast/dom/undetectable-document-all.html:
Test that typeof document.all is undefined.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12490
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Tue, 31 Jan 2006 07:41:01 +0000 (07:41 +0000)]
2006-01-30 Anders Carlsson <andersca@mac.com>
Reviewed by Darin.
Fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6907
REGRESSION: United.com menus messed up due to document.all/MSIE sniff
* kjs/nodes.cpp:
(typeStringForValue):
Return "undefined" if the given object should masquerade as undefined.
* kjs/object.h:
(KJS::JSObject::masqueradeAsUndefined):
Rename from isEqualToNull.
* kjs/operations.cpp:
(KJS::equal):
Update for name change.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12489
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 06:08:51 +0000 (06:08 +0000)]
* Scripts/svn-apply: Added comments about things we should do to improve.
* Scripts/svn-create-patch: Ditto.
* Scripts/svn-unapply: Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12488
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 31 Jan 2006 06:08:43 +0000 (06:08 +0000)]
Pointed out by Dave Kilzer.
- added test result I forgot to check in
* fast/dom/Range/range-exceptions-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12487
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 31 Jan 2006 02:52:49 +0000 (02:52 +0000)]
Reviewed by mjs.
- Speculative fix for <rdar://problem/
4135845> Crash executing
cross-frame script on timeout in KJS::ScheduledAction::execute
If we ever get a reproducible case of
4135845, I'll add a test for it.
This is a re-working of Maciej's fix for
3157014 (circa 2003!). Since
you can't reliably predict what the state of the page will be when
a timer fires, I've made the timer responsbile for making sure that
everything is OK to execute.
I tested @ http://www.javascriptkit.com/script/cut3.shtml with various
combinations of reload, back, and regular navigations with JS enabled/
disabled to ensure that the previous crash didn't return. I also ran a
leaks test and discovered some, but none unique to this patch. (See
<rdar://problem/
4427420> TOT REGRESSION: Leaks seen on page with
JavaScript timer.)
* khtml/ecma/kjs_window.cpp:
(KJS::ScheduledAction::execute): Return early if there's no window
object. (This happens when JavaScript is disabled.)
(KJS::Window::retrieveWindow): Reversed a backwards ASSERT, increased
prettiness. (The assert fired while I was testing. Not sure why we
haven't seen it before.)
* page/Frame.cpp:
(Frame::didOpenURL): Returned setting of JavaScript enabled/disabled
preference to its rightful place. This introduces a new behavior: now,
the unload event does not fire after you've disabled JavaScript. That
seems like a good thing. (See <rdar://problem/
4426506> Disabling
JavaScript should immediately end JavaScript execution.)
(Frame::begin): Ditto.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12486
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Mon, 30 Jan 2006 23:51:39 +0000 (23:51 +0000)]
Reviewed by Tim O.
Add -Wno-deprecated-declarations to the compile flags for WebNetscapePluginPackage.m.
<rdar://problem/
4427068> LMGetCurApRefNum, CloseConnection and GetDiskFragment now deprecated.
When we workaround these we can remove this compile flag.
* WebKit.xcodeproj/project.pbxproj:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Mon, 30 Jan 2006 23:45:37 +0000 (23:45 +0000)]
Reviewed by Justin.
Remove the only use of -[NSFont glyphPacking]. This method was deprecated in Tiger
and always returns NSNativeShortGlyphPacking.
* WebCoreSupport.subproj/WebTextRenderer.m:
(-[WebTextRenderer initWithFont:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Mon, 30 Jan 2006 20:14:38 +0000 (20:14 +0000)]
Reviewed by Dave Harrison.
- Fixed <rdar://problem/
4378159> crash in KWQKHTMLPart::userGestureHint
from javascript enabled/disabled inconsistency when pasting webpage
into email or blot
* page/Frame.cpp:
(Frame::userGestureHint): Check root frame's jScript() for NULL instead
of checking inner frame's jScript().
After init() has been called on a frame, but before begin() has been
called, the frame can have JavaScript enabled when its parent doesn't.
(That seems wrong, so I've filed <rdar://problem/
4426499> Child frame
momentarily has JavaScript enabled even though parent frame doesn't.)
Regardless, it's better programming practice to NULL check the actual
pointer you're going to use, so that's what I've done here.
* manual-tests/paste-crash.html: Added.
(No automated test because the crash depends on JavaScript being
disabled.)
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Mon, 30 Jan 2006 18:56:37 +0000 (18:56 +0000)]
Layout test for <rdar://problem/
4298052> Crash in
KWQCheckIfReloading at http://www.inquisitorx.com/beta/
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12479
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Mon, 30 Jan 2006 18:45:20 +0000 (18:45 +0000)]
eviewed by Geoff
Fix for <rdar://problem/
4298052> Crash in KWQCheckIfReloading at
http://www.inquisitorx.com/beta/
It is possible for the DocLoader's frame to be nil when the
DocLoader is not nil, so we need nil checks.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 30 Jan 2006 18:31:47 +0000 (18:31 +0000)]
2006-01-30 Eric Seidel <eseidel@apple.com>
Add #import "KWQFontMetrics.h" to fix no-svg build.
* kwq/KWQPainter.mm:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 30 Jan 2006 09:03:14 +0000 (09:03 +0000)]
LayoutTests:
- updated test result for rect changes
* fast/box-sizing/percentage-height-expected.txt: A bunch of strange empty
clip rects are now dumping as (0,0) 0x0.
WebCore:
Reviewed by Eric.
- cleanup of Int/Float-Size/Point/Rect classes
I did this as part of a redo of QMatrix, but I decided I should
land this part separately.
Eliminated the concept of a null rect or point, which used to be
indicated by negative width and height.
Changed right and bottom to to be, e.g., 2 for a rect at (0,0) 2x2.
The old code followed Qt's system that says right is 1 in those cases,
which is inappropriate for floating point, and old fashioned because
modern graphics systems use coordinates for lines between pixels, not
the pixels themselves.
Other API improvements to the point, size, and rect classes. For example,
functions named with verbs now always modify the object itself.
* rendering/render_theme_mac.mm: (RenderThemeMac::paintButton): Fixed
a bug where it said x() where it should say y().
* bridge/mac/MacFrame.h:
* bridge/mac/MacFrame.mm:
* bridge/mac/WebCoreFrameBridge.mm:
* kcanvas/KCanvasContainer.cpp:
* kcanvas/KCanvasItem.cpp:
* kcanvas/RenderSVGImage.cpp:
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
* kcanvas/device/quartz/KCanvasItemQuartz.mm:
* kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
* khtml/ecma/kjs_dom.cpp:
* khtml/ecma/kjs_window.cpp:
* khtml/editing/SelectionController.cpp:
* khtml/html/html_inlineimpl.cpp:
* khtml/html/html_objectimpl.cpp:
* khtml/html/html_objectimpl.h:
* khtml/misc/khtmllayout.h:
* ksvg2/svg/SVGSVGElementImpl.cpp:
* kwq/KWQAccObject.mm:
* kwq/KWQComboBox.mm:
* kwq/KWQFileButton.mm:
* kwq/KWQFontMetrics.mm:
* kwq/KWQPainter.h:
* kwq/KWQPainter.mm:
* kwq/KWQRegion.cpp:
* kwq/KWQRenderTreeDebug.cpp:
* kwq/KWQScrollView.mm:
* kwq/KWQWMatrix.cpp:
* kwq/KWQWidget.h:
* kwq/KWQWidget.mm:
* kwq/KWQWindowWidget.mm:
* loader/CachedImage.cpp:
* page/Frame.cpp:
* page/FrameView.cpp:
* platform/FloatPoint.cpp:
* platform/FloatPoint.h:
* platform/FloatRect.cpp:
* platform/FloatRect.h:
* platform/FloatSize.cpp:
* platform/FloatSize.h:
* platform/Image.h:
* platform/IntPoint.cpp:
* platform/IntPoint.h:
* platform/IntPointArray.cpp:
* platform/IntPointArray.h:
* platform/IntRect.cpp:
* platform/IntRect.h:
* platform/IntSize.cpp:
* platform/IntSize.h:
* platform/mac/FloatPoint.mm:
* platform/mac/FloatRect.mm:
* platform/mac/FloatSize.mm:
* platform/mac/Image.mm:
* platform/mac/IntPoint.mm:
* platform/mac/IntRect.mm:
* platform/mac/IntSize.mm:
* platform/mac/Screen.mm:
* rendering/InlineTextBox.cpp:
* rendering/RenderBlock.cpp:
* rendering/RenderBlock.h:
* rendering/RenderTable.cpp:
* rendering/RenderTableCell.cpp:
* rendering/RenderText.cpp:
* rendering/render_box.cpp:
* rendering/render_canvas.cpp:
* rendering/render_canvasimage.cpp:
* rendering/render_flow.cpp:
* rendering/render_form.cpp:
* rendering/render_frames.cpp:
* rendering/render_layer.cpp:
* rendering/render_line.cpp:
* rendering/render_list.cpp:
* rendering/render_object.cpp:
* rendering/render_object.h:
* rendering/render_replaced.cpp:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 30 Jan 2006 08:42:07 +0000 (08:42 +0000)]
Reviewed by Darin.
- Remove QSortedList and QPtrList sorting support
http://bugzilla.opendarwin.org/show_bug.cgi?id=6929
* WebCore.xcodeproj/project.pbxproj:
* kcanvas/device/KRenderingPaintServerGradient.cpp:
(operator<<): Implement for Vector<KCGradientStop>
(KRenderingPaintServerGradient::gradientStops): Use a Vector, not a subclass of
QPtrList that sorts on every insert
(compareStopOffset): Comparison function for sorting.
(KRenderingPaintServerGradient::setGradientStops): Add a version that takes a Vector which sorts,
and another which knows how to copy from another gradient paint server.
* kcanvas/device/KRenderingPaintServerGradient.h:
(makeGradientStop): Make a gradient stop pair.
* kcanvas/device/quartz/KRenderingPaintServerGradientQuartz.mm:
(KRenderingPaintServerGradientQuartz::~KRenderingPaintServerGradientQuartz): use delete
on stops cache
(KRenderingPaintServerGradientQuartz::updateQuartzGradientStopsCache): adapt to Vector
* kcanvas/device/quartz/KRenderingPaintServerQuartz.h:
* khtml/editing/visible_text.cpp:
(khtml::compareBoxStart): Comparison function for sorting.
(khtml::TextIterator::handleTextNode): Use Vector and std::sort instead of QSortedList
for sorting. Keep current position as an index.
(khtml::TextIterator::handleTextBox): Adapt for Vector use.
* khtml/editing/visible_text.h:
* ksvg2/svg/SVGGradientElementImpl.cpp:
(SVGGradientElementImpl::rebuildStops): Use a Vector. Instead of modifying the existing one,
make a fresh one and assign it.
* ksvg2/svg/SVGLinearGradientElementImpl.cpp:
(SVGLinearGradientElementImpl::buildGradient): don't copy item by item, just assign directly.
* ksvg2/svg/SVGRadialGradientElementImpl.cpp:
(SVGRadialGradientElementImpl::buildGradient): ditto
* ksvg2/svg/SVGStopElementImpl.h:
* kwq/KWQListImpl.cpp:
* kwq/KWQPtrList.h:
(QPtrList::sort): Removed.
* kwq/KWQSortedList.h: Removed.
* rendering/InlineTextBox.h: Remove now unneeded operator< and operator=
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 30 Jan 2006 07:27:12 +0000 (07:27 +0000)]
Reviewed by Maciej.
- killed more KWQ, KWinModule and QVariant
* ForwardingHeaders/kwinmodule.h: Removed.
* ForwardingHeaders/qvariant.h: Removed.
* kwq/KWQKWinModule.h: Removed.
* kwq/KWQKWinModule.mm: Removed.
* kwq/KWQVariant.cpp: Removed.
* kwq/KWQVariant.h: Removed.
* WebCore.vcproj/WebCore/WebCore.vcproj: Updated for removal.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* khtml/ecma/kjs_binding.h:
* khtml/ecma/kjs_binding.cpp: Remove QVariant stuff.
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge stringByEvaluatingJavaScriptFromString:forceUserGesture:]):
* khtml/ecma/kjs_events.cpp: (KJS::JSAbstractEventListener::handleEvent):
* khtml/ecma/kjs_proxy.h:
* khtml/ecma/kjs_proxy.cpp: (WebCore::KJSProxyImpl::evaluate):
* page/Frame.h:
* page/Frame.cpp:
(getString):
(Frame::replaceContentsWithScriptResult):
(Frame::executeScript):
(Frame::executeScheduledScript):
(Frame::changeLocation):
(Frame::urlSelected):
(Frame::submitForm):
Changed to use JSValue instead of QVariant for result of executing JavaScript.
* kwq/KWQObject.h: Removed a bunch of unneeded includes and forward declarations.
* bridge/mac/MacFrame.mm:
* khtml/ecma/kjs_window.h:
* khtml/ecma/kjs_window.cpp:
* khtml/html/html_inlineimpl.cpp:
* khtml/html/htmltokenizer.cpp:
* khtml/xml/DocumentImpl.cpp:
* khtml/xml/NodeImpl.cpp:
* khtml/xml/dom2_eventsimpl.cpp:
* khtml/xml/xml_tokenizer.cpp:
* kwq/KWQComboBox.mm:
* kwq/KWQFileButton.mm:
* kwq/KWQListBox.mm:
* kwq/KWQObject.cpp:
* kwq/KWQSlider.mm:
* kwq/KWQTextArea.mm:
* kwq/KWQTextField.mm:
* loader/CachedImage.h:
* page/FrameView.h:
* page/FrameView.cpp:
* rendering/render_form.cpp:
Updated includes, since KWQObject.h now includes less.
Also updated callers to executeScript since one overload was removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 30 Jan 2006 07:18:39 +0000 (07:18 +0000)]
Reviewed by Darin.
- properly define Vector assignment operator; the private version was accidentally left
in, and the template version is not enough to replace the default
* kxmlcore/Vector.h:
(KXMLCore::Vector::operator=):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12473
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 30 Jan 2006 07:13:37 +0000 (07:13 +0000)]
2006-01-29 Eric Seidel <eseidel@apple.com>
Reviewed by darin.
Added back #include <qvaluelist.h> to fix WIN32 build.
* rendering/render_style.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12472
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 30 Jan 2006 06:06:32 +0000 (06:06 +0000)]
Reviewed by Hyatt (drag image fix) and Maciej (the rest).
- fixed just-introduced crash dragging images
I don't know how to make a layout test for this.
* kwq/KWQClipboard.mm: (WebCore::KWQClipboard::dragImage): Fixed crash on
dragging by initializing m_dragImage to 0.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=6923
remove more of KWQ, including the screen functions from QDesktopWidget
* kwq/KWQApplication.h: Removed.
* kwq/KWQApplication.mm: Removed.
* kwq/KWQGlobal.cpp: Removed.
* kwq/KWQKPartsEvent.cpp: Removed.
* kwq/KWQKPartsEvent.h: Removed.
* kwq/KWQPair.h: Removed.
* kwq/KWQStyle.cpp: Removed.
* kwq/KWQStyle.h: Removed.
* ForwardingHeaders/kparts/event.h: Removed.
* ForwardingHeaders/qapplication.h: Removed.
* ForwardingHeaders/qstyle.h: Removed.
* WebCore.vcproj/WebCore/WebCore.vcproj: Updated for above changes.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* platform/Screen.h: Added. Replaces the desktop widget stuff in KWQApplication.mm.
* platform/mac/Screen.mm: Added.
* kwq/KWQDef.h: Removed everything except for kMin and kMax from here.
We should port to std::min and std::max, and then we can get rid of this
header altogether.
* kwq/KWQKCursor.h: Removed setAutoHideCursor.
* kwq/KWQKCursor.mm: Ditto.
* kwq/KWQWidget.h: Removed style() and setStyle() functions.
* kwq/KWQWidget.mm: Ditto.
* khtml/ecma/kjs_window.h:
* khtml/ecma/kjs_window.cpp:
(KJS::Screen::Screen): Store a pointer to the Frame.
(KJS::Screen::getValueProperty): Port to use the new Screen.h functions.
(KJS::showModalDialog): Ditto.
(KJS::Window::getValueProperty): Ditto.
(KJS::WindowFunc::callAsFunction): Ditto.
* khtml/khtml_events.h:
* khtml/khtml_events.cpp: Removed much of the code here.
This can be cut down even more.
* khtml/misc/khtmllayout.h: Removed unused stuff and updated for KWQ changes.
* kwq/KWQCString.cpp:
* kwq/KWQKURL.mm:
* kwq/KWQPainter.mm:
* kwq/KWQRegExp.cpp:
* kwq/KWQRenderTreeDebug.cpp:
* kwq/KWQString.h:
* kwq/KWQString.mm:
* kwq/KWQTextCodec.cpp:
* WebCore+SVG/KDOMSettings.cpp:
* bridge/mac/MacFrame.mm:
* bridge/mac/WebCoreFrameBridge.mm:
* css/cssparser.cpp:
* kcanvas/KCanvasItem.cpp:
* khtml/ecma/kjs_navigator.cpp:
* khtml/html/HTMLSelectElementImpl.cpp:
* khtml/html/html_tableimpl.h:
* khtml/html/htmltokenizer.cpp:
* khtml/misc/decoder.cpp:
* ksvg2/css/KSVGCSSParser.cpp:
* ksvg2/css/SVGRenderStyle.h:
* page/Frame.h:
* page/Frame.cpp:
* page/FrameView.cpp:
* platform/IntPointArray.cpp:
* rendering/RenderBlock.cpp:
* rendering/RenderTable.cpp:
* rendering/bidi.cpp:
* rendering/bidi.h:
* rendering/render_form.cpp:
* rendering/render_object.cpp:
* rendering/render_object.h:
* rendering/render_replaced.cpp:
* rendering/render_style.h:
* rendering/table_layout.cpp:
Updated for above KWQ changes. Changed tabs to spaces.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12471
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 30 Jan 2006 05:58:39 +0000 (05:58 +0000)]
2006-01-29 Eric Seidel <eseidel@apple.com>
Reviewed by darin.
Fix the build by applying a GCC-specific namespace hack.
* kjs/lookup.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12470
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 30 Jan 2006 04:52:34 +0000 (04:52 +0000)]
2006-01-29 Eric Seidel <eseidel@apple.com>
Reviewed by hyatt.
Fix build for Win32.
* WebCore.vcproj/WebCore/WebCore.vcproj:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12469
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 30 Jan 2006 04:50:26 +0000 (04:50 +0000)]
2006-01-29 Eric Seidel <eseidel@apple.com>
Reviewed by hyatt.
Fix build on Win32.
* kjs/lookup.h: fixed ::cacheGlobalObject
* kxmlcore/Vector.h:
(KXMLCore::Vector::operator[]): use unsigned long
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Mon, 30 Jan 2006 00:54:34 +0000 (00:54 +0000)]
Fix for bug 6910, don't let Image be assignable or copiable. It will soon represent the actual
original Image (including the data) and as such must remain unique.
Reviewed by darin
* kcanvas/KCanvasFilters.cpp:
(KCanvasFEImage::~KCanvasFEImage):
(KCanvasFEImage::setCachedImage):
* kcanvas/KCanvasFilters.h:
(KCanvasFEImage::KCanvasFEImage):
(KCanvasFEImage::cachedImage):
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
(KCanvasFEImageQuartz::getCIFilter):
* khtml/ecma/kjs_events.cpp:
(KJS::ClipboardProtoFunc::callAsFunction):
* khtml/ecma/kjs_html.cpp:
(KJS::KJS::Context2DFunction::callAsFunction):
(KJS::drawPattern):
(KJS::_rh):
(KJS::ImagePattern::~ImagePattern):
(KJS::ImagePattern::createPattern):
* khtml/ecma/kjs_html.h:
(KJS::ImagePattern::cachedImage):
* khtml/html/html_imageimpl.h:
(WebCore::HTMLImageElementImpl::cachedImage):
* khtml/xml/dom2_eventsimpl.h:
* ksvg2/svg/SVGCursorElementImpl.cpp:
(SVGCursorElementImpl::~SVGCursorElementImpl):
(SVGCursorElementImpl::parseMappedAttribute):
* ksvg2/svg/SVGCursorElementImpl.h:
(KSVG::SVGCursorElementImpl::cachedImage):
* ksvg2/svg/SVGFEImageElementImpl.cpp:
(SVGFEImageElementImpl::~SVGFEImageElementImpl):
(SVGFEImageElementImpl::parseMappedAttribute):
(SVGFEImageElementImpl::notifyFinished):
* kwq/KWQClipboard.h:
* kwq/KWQClipboard.mm:
(WebCore::KWQClipboard::dragImage):
(WebCore::KWQClipboard::setDragImage):
(WebCore::KWQClipboard::setDragImageElement):
(WebCore::KWQClipboard::imageChanged):
(WebCore::KWQClipboard::dragNSImage):
* platform/Image.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 23:40:47 +0000 (23:40 +0000)]
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6914
REGRESSION: fast/block/basic/014.html crashes Safari
* rendering/render_image.h:
(WebCore::RenderImage::image): Return a null image when m_cachedImage is 0.
(WebCore::RenderImage::errorOccurred): Return false when m_cachedImage is 0.
* rendering/render_image.cpp: (WebCore::RenderImage::nullImage): Added.
Returns a global null image for use when we have no cached image.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6919
REGRESSION: Background images don't paint when they are finished loading
* rendering/render_object.h: Renamed the old setImage to imageChanged, the
new name for the same function.
* rendering/render_object.cpp: (WebCore::RenderObject::imageChanged): Ditto.
* rendering/render_list.cpp: (RenderListMarker::imageChanged): Changed the
call to parent to call the new imageChanged instead of the old setImage.
- fixed something else that was causing some layout test crashes
* kwq/KWQRenderTreeDebug.cpp: (externalRepresentation): Rearrange so we won't
ever dereference a null pointer here.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 22:24:42 +0000 (22:24 +0000)]
Reviewed by Darin.
- fixed some tests that were missing test images
* fast/replaced/resources/sample.gif: Added.
* fast/replaced/resources/1x1-green.png: Added.
* fast/replaced/resources/1x1-red.png: Added.
* fast/replaced/001.html: Changed images to point to actual images.
* fast/replaced/002.html: Ditto.
* fast/replaced/003.html: Ditto.
* fast/replaced/004.html: Ditto.
* fast/replaced/002-expected.txt: Updated.
* fast/replaced/003-expected.txt: Updated.
* fast/replaced/001-expected.png: Updated.
* fast/replaced/001-expected.checksum: Updated.
* fast/replaced/002-expected.png: Updated.
* fast/replaced/002-expected.checksum: Updated.
* fast/replaced/003-expected.png: Updated.
* fast/replaced/003-expected.checksum: Updated.
* fast/replaced/004-expected.png: Updated.
* fast/replaced/004-expected.checksum: Updated.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sun, 29 Jan 2006 21:12:08 +0000 (21:12 +0000)]
Reviewed by Darin.
- replace QValueVector and QPtrVector use with Vector, and remove them.
http://bugzilla.opendarwin.org/show_bug.cgi?id=6909
* ForwardingHeaders/q3valuevector.h: Removed.
* ForwardingHeaders/qptrvector.h: Removed.
* ForwardingHeaders/qvector.h: Removed.
* WebCore+SVG/KDOMSettings.cpp:
(KDOMSettings::init):
(KDOMSettings::isAdFiltered):
* WebCore.xcodeproj/project.pbxproj:
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge elementWithName:inForm:]):
(-[WebCoreFrameBridge controlsInForm:]):
* css/cssstyleselector.h:
* khtml/html/HTMLCollectionImpl.cpp:
(WebCore::HTMLCollectionImpl::updateNameCache):
(WebCore::HTMLCollectionImpl::namedItems):
* khtml/html/HTMLCollectionImpl.h:
* khtml/html/HTMLFormCollectionImpl.cpp:
(WebCore::HTMLFormCollectionImpl::HTMLFormCollectionImpl):
(WebCore::HTMLFormCollectionImpl::calcLength):
(WebCore::HTMLFormCollectionImpl::item):
(WebCore::HTMLFormCollectionImpl::getNamedFormItem):
(WebCore::HTMLFormCollectionImpl::updateNameCache):
* khtml/html/HTMLFormElementImpl.cpp:
(WebCore::HTMLFormElementImpl::~HTMLFormElementImpl):
(WebCore::HTMLFormElementImpl::length):
(WebCore::HTMLFormElementImpl::submitClick):
(WebCore::HTMLFormElementImpl::formData):
(WebCore::HTMLFormElementImpl::submit):
(WebCore::HTMLFormElementImpl::reset):
(WebCore::insertIntoVector):
(WebCore::removeFromVector):
(WebCore::HTMLFormElementImpl::formElementIndex):
(WebCore::HTMLFormElementImpl::registerImgElement):
* khtml/html/HTMLFormElementImpl.h:
* ksvg2/svg/SVGTextElementImpl.cpp:
* kwq/KWQComboBox.h:
* kwq/KWQListBox.h:
* kwq/KWQPtrVector.h: Removed.
* kwq/KWQRenderTreeDebug.cpp:
(writeLayers):
* kwq/KWQValueVector.h: Removed.
* kwq/KWQVectorImpl.cpp: Removed.
* kwq/KWQVectorImpl.h: Removed.
* loader/loader.cpp:
(WebCore::Loader::cancelRequests):
* rendering/render_layer.cpp:
(WebCore::RenderLayer::paintLayer):
(WebCore::RenderLayer::hitTestLayer):
(WebCore::compareZIndex):
(WebCore::RenderLayer::updateZOrderLists):
(WebCore::RenderLayer::collectLayers):
* rendering/render_layer.h:
(khtml::RenderLayer::posZOrderList):
(khtml::RenderLayer::negZOrderList):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 18:59:14 +0000 (18:59 +0000)]
Reviewed by Darin.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6888
Collapsed borders appear on the wrong side or on the wrong cell in RTL tables
* fast/table/border-collapsing/rtl-border-collapsing.html: Added.
* fast/table/border-collapsing/rtl-border-collapsing-expected.txt: Added.
* fast/table/border-collapsing/rtl-border-collapsing-expected.checksum: Added.
* fast/table/border-collapsing/rtl-border-collapsing-expected.png: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 18:59:00 +0000 (18:59 +0000)]
Test: fast/table/border-collapsing/rtl-border-collapsing.html
Reviewed by Darin.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6888
Collapsed borders appear on the wrong side or on the wrong cell in RTL tables
* rendering/RenderTable.cpp:
(WebCore::RenderTable::cellBefore): Renamed cellLeft to this.
(WebCore::RenderTable::cellAfter): Renamed cellRight to this.
* rendering/RenderTable.h:
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::collapsedLeftBorder): Added the RTL case.
(WebCore::RenderTableCell::collapsedRightBorder): Ditto.
(WebCore::RenderTableCell::borderLeft):
(WebCore::RenderTableCell::borderRight):
(WebCore::RenderTableCell::collectBorders):
(WebCore::RenderTableCell::paintCollapsedBorder):
* rendering/RenderTableCell.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12462
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 18:19:10 +0000 (18:19 +0000)]
Reviewed by Maciej.
- tests for http://bugzilla.opendarwin.org/show_bug.cgi?id=6550
REGRESSION: window.open('myurl', '_self') fails to load myurl in current window
* fast/dom/Window/window-open-parent.html: Added.
* fast/dom/Window/window-open-parent-no-parent.html: Added.
* fast/dom/Window/window-open-self.html: Added.
* fast/dom/Window/window-open-top.html: Added.
* fast/dom/Window/resources: Added.
* fast/dom/Window/resources/destination.html: Added.
* fast/dom/Window/window-open-parent-expected.txt: Added.
* fast/dom/Window/window-open-parent-no-parent-expected.txt: Added.
* fast/dom/Window/window-open-self-expected.txt: Added.
* fast/dom/Window/window-open-top-expected.txt: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 18:18:39 +0000 (18:18 +0000)]
Roll out file that was checked in by accident.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 18:15:49 +0000 (18:15 +0000)]
Reviewed by Maciej.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6550
REGRESSION: window.open('myurl', '_self') fails to load myurl in current window
Tests:
* fast/dom/Window/window-open-parent-no-parent.html: Added.
* fast/dom/Window/window-open-parent.html: Added.
* fast/dom/Window/window-open-self.html: Added.
* fast/dom/Window/window-open-top.html: Added.
* khtml/ecma/kjs_window.cpp: (KJS::WindowFunc::callAsFunction):
Fix check for special frame names. These special frame names are supposed
to always be unaffected by pop-up blocking. But the code instead was
saying that the special frame names are always blocked. Oops!
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12459
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 18:11:03 +0000 (18:11 +0000)]
- added a test for the names of range exceptions, which were wrong
in my last commit until I made the fix Alexey suggested
* fast/dom/Range: Added.
* fast/dom/Range/range-exceptions.html: Added.
* fast/dom/Range/resources: Added.
* fast/dom/Range/resources/range-exceptions.js: Added.
* fast/dom/Range/resources/TEMPLATE.html: Added.
* fast/js/resources/js-test-pre.js: Escape & and < characters in the
output so you can have tests with HTML fragments as expected results.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12458
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 18:10:45 +0000 (18:10 +0000)]
Suggested by Alexey.
- fixed something Alexey noticed in the new exception names
Test: fast/dom/Range/range-exceptions.html
* khtml/ecma/kjs_binding.cpp: Added 0 to fix an off-by-one error for the
names of the two DOM range exceptions.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12457
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
harrison [Sun, 29 Jan 2006 15:11:01 +0000 (15:11 +0000)]
Adding test cases for:
1) Arrowing up or down to an empty list item skipped the list item
2) Deleting the content of a list item made it so you could never get the cursor inside the empty item
* editing/selection/move-by-line-002-expected.png: Added.
* editing/selection/move-by-line-002-expected.checksum: Added.
* editing/selection/move-by-line-002-expected.txt: Added.
* editing/selection/move-by-line-002.html: Added.
* editing/deleting/delete-listitem-002-expected.checksum: Added.
* editing/deleting/delete-listitem-002-expected.png: Added.
* editing/deleting/delete-listitem-002-expected.txt: Added.
* editing/deleting/delete-listitem-002.html: Added.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
harrison [Sun, 29 Jan 2006 15:06:17 +0000 (15:06 +0000)]
Reviewed by John.
Fix two problems with editing around empty list items:
1) Arrowing up or down to an empty list item skipped the list item
2) Deleting the content of a list item made it so you could never get the cursor inside the empty item
Added tests:
* selection/move-by-line-002.html
* deleting/delete-listitem-002.html
* khtml/editing/composite_edit_command.cpp:
(WebCore::CompositeEditCommand::addBlockPlaceholderIfNeeded):
- special check for empty list item because list marker assures non-zero height()
* khtml/xml/dom_position.cpp:
(DOM::Position::inRenderedContent):
- fix check wrt BRs because text box is not required
* rendering/bidi.cpp:
(khtml::RenderBlock::constructLine):
- make sure that br by itself in a list item gets a text-style box
(khtml::RenderBlock::findNextLineBreak):
- make sure that br by itself in a list item gets a box at all
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12455
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 29 Jan 2006 14:40:15 +0000 (14:40 +0000)]
2006-01-29 Eric Seidel <eseidel@apple.com>
Reviewed by hyatt & darin.
There are a few small, but intertwined fixes in this patch:
Remaining fixes for SVGTetris:
http://bugzilla.opendarwin.org/show_bug.cgi?id=6889
Testing blocked by: http://bugzilla.opendarwin.org/show_bug.cgi?id=6905
Fix for CDF support:
http://bugzilla.opendarwin.org/show_bug.cgi?id=6025
Updated test: svg/custom/simpleCDF.xml
Fix for filter updating:
http://bugzilla.opendarwin.org/show_bug.cgi?id=6849
Testing blocked by: http://bugzilla.opendarwin.org/show_bug.cgi?id=6904
Also, as a side effect of 6849, fixed double-apply of filters, improving:
http://bugzilla.opendarwin.org/show_bug.cgi?id=6713
Results updated for most tests, pixel results improved for filter tests.
* kcanvas/KCanvasFilters.cpp:
(KCanvasFilter::filterBBoxForItemBBox): moved into baseclass
* kcanvas/KCanvasFilters.h:
* kcanvas/RenderSVGImage.cpp:
(RenderSVGImage::paint): use relativeBBox
(RenderSVGImage::relativeBBox): added
(RenderSVGImage::imageChanged): added
(RenderSVGImage::getAbsoluteRepaintRect): fixed
* kcanvas/RenderSVGImage.h:
(KSVG::RenderSVGImage::imageChanged): added.
* kcanvas/device/quartz/KCanvasFilterQuartz.h:
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
(KCanvasFilterQuartz::applyFilter): use new baseclass method
(KCanvasFEFloodQuartz::getCIFilter): fixed.
* kcanvas/device/quartz/KCanvasItemQuartz.h:
* kcanvas/device/quartz/KCanvasItemQuartz.mm:
(KCanvasItemQuartz::layout): update width/height
(KCanvasItemQuartz::getAbsoluteRepaintRect): fixed.
(KCanvasItemQuartz::requiresLayer): moved to .cpp
(KCanvasItemQuartz::lineHeight): added.
(KCanvasItemQuartz::baselinePosition): added.
* kcanvas/device/quartz/KCanvasResourcesQuartz.h:
* kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
(KCanvasContainerQuartz::canHaveChildren): moved to .cpp
(KCanvasContainerQuartz::requiresLayer): moved to .cpp
(KCanvasContainerQuartz::lineHeight): added.
(KCanvasContainerQuartz::baselinePosition): added.
(KCanvasContainerQuartz::paint): fixed.
(KCanvasContainerQuartz::viewportTransform): fixed.
(KCanvasContainerQuartz::getAbsoluteRepaintRect): fixed.
(KCanvasContainerQuartz::absoluteTransform): fixed.
* rendering/render_object.cpp:
(WebCore::RenderObject::absoluteTransform): fixed apply order.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12454
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sun, 29 Jan 2006 11:19:40 +0000 (11:19 +0000)]
Reviewed by Dave Hyatt.
* kxmlcore/Vector.h:
(KXMLCore::Vector::operator[]): Add unsigned overload
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12453
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 29 Jan 2006 09:40:10 +0000 (09:40 +0000)]
2006-01-29 Eric Seidel <eseidel@apple.com>
Reviewed by hyatt.
First set of fixes for SVG Tetris:
http://bugzilla.opendarwin.org/show_bug.cgi?id=6889
Tests:
* svg/custom/viewport-update.svg
Key press test not yet possible:
http://bugzilla.opendarwin.org/show_bug.cgi?id=6906
* bridge/mac/MacFrame.mm:
(MacFrame::keyEvent): pass key events to things other than HTML
* ksvg2/svg/SVGSVGElementImpl.cpp:
(WebCore::SVGSVGElementImpl::parseMappedAttribute): update viewport
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12452
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 09:09:08 +0000 (09:09 +0000)]
Somehow this file was missed in the last commit. Since it's just a delete, do it without a new ChangeLog entry.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12451
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 08:57:00 +0000 (08:57 +0000)]
- updated tests for bugzilla.opendarwin.org/show_bug.cgi?id=6895
include exception names in JavaScript form of DOM exception
* dom/xhtml/level1/core/hc_nodevalue03-expected.txt:
* dom/xhtml/level3/core/canonicalform06-expected.txt:
* dom/xhtml/level3/core/documentgetdoctype01-expected.txt:
* dom/xhtml/level3/core/infoset06-expected.txt:
* dom/xhtml/level3/core/infoset07-expected.txt:
* dom/xhtml/level3/core/nodecomparedocumentposition02-expected.txt:
* dom/xhtml/level3/core/nodeinsertbefore02-expected.txt:
* dom/xhtml/level3/core/nodeinsertbefore05-expected.txt:
* dom/xhtml/level3/core/nodeisequalnode17-expected.txt:
* dom/xhtml/level3/core/noderemovechild04-expected.txt:
* dom/xhtml/level3/core/noderemovechild05-expected.txt:
* dom/xhtml/level3/core/nodereplacechild13-expected.txt:
* dom/xhtml/level3/core/wellformed01-expected.txt:
* dom/xhtml/level3/core/wellformed02-expected.txt:
* dom/xhtml/level3/core/wellformed03-expected.txt:
* dom/xhtml/level3/core/wellformed04-expected.txt:
- for these, also changed the tests to be dumpAsText at the same time
* fast/dom/outerText-no-element.html:
* fast/dom/outerText-no-element-expected.txt:
* fast/dynamic/outerHTML-no-element.html:
* fast/dynamic/outerHTML-no-element-expected.txt:
* fast/dom/outerText-no-element-expected.checksum: Removed.
* fast/dom/outerText-no-element-expected.png: Removed.
* fast/dynamic/outerHTML-no-element-expected.checksum: Removed.
* fast/dynamic/outerHTML-no-element-expected.png: Removed.
- removed test results for tests that are either disabled or not checked in
* dom/xhtml/level2/html/HTMLIFrameElement11-expected.txt: Removed.
* dom/xhtml/level3/core/documentadoptnode22-expected.txt: Removed.
* editing/execCommand/boldCharacter-expected.txt: Removed.
* fast/parser/remove-block-in-residual-style-expected.checksum: Removed.
* fast/parser/remove-block-in-residual-style-expected.png: Removed.
* fast/parser/remove-block-in-residual-style-expected.txt: Removed.
* fast/plugins: Removed.
* fast/plugins/netscape-back-forward-expected.txt: Removed.
* fast/plugins/resources: Removed.
* fast/plugins/resources/go-back.html: Removed.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12450
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 29 Jan 2006 08:26:04 +0000 (08:26 +0000)]
2006-01-29 Eric Seidel <eseidel@apple.com>
Reviewed by mjs.
Fix SVG layout tests crash due to Vector change.
* kcanvas/device/KRenderingDevice.cpp:
(KRenderingDevice::currentContext): check isEmpty, return 0
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12449
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 29 Jan 2006 08:04:11 +0000 (08:04 +0000)]
2006-01-28 Eric Seidel <eseidel@apple.com>
Reviewed by mjs.
Remove bogus IntRect operator.
* platform/FloatRect.h:
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12448
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Sun, 29 Jan 2006 07:45:00 +0000 (07:45 +0000)]
WebCore:
Cleanup of RenderImage. Eliminate unneeded members and methods.
Reviewed by darin
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge elementAtPoint:]):
* khtml/ecma/kjs_html.cpp:
(KJS::KJS::Context2DFunction::callAsFunction):
(KJS::drawPattern):
* khtml/html/HTMLInputElementImpl.cpp:
(WebCore::HTMLInputElementImpl::attach):
* khtml/html/html_imageimpl.cpp:
(WebCore::HTMLImageLoader::notifyFinished):
(WebCore::HTMLImageElementImpl::attach):
* khtml/html/html_imageimpl.h:
(WebCore::HTMLImageElementImpl::compositeOperator):
* khtml/html/html_objectimpl.cpp:
(WebCore::HTMLObjectElementImpl::attach):
* ksvg2/svg/SVGImageElementImpl.cpp:
(SVGImageElementImpl::attach):
* kwq/KWQPainter.h:
* kwq/KWQPainter.mm:
(WebCore::QPainter::drawImageAtPoint):
(WebCore::QPainter::drawImageInRect):
(WebCore::QPainter::drawImage):
(WebCore::QPainter::drawFloatImage):
(WebCore::QPainter::drawTiledImage):
(WebCore::QPainter::drawScaledAndTiledImage):
* kwq/WebCoreImageRenderer.h:
* loader/CachedImage.cpp:
(WebCore::CachedImage::ref):
(WebCore::CachedImage::notifyObservers):
(WebCore::CachedImage::data):
(WebCore::CachedImage::error):
* loader/CachedImage.h:
* loader/CachedObjectClient.h:
(WebCore::CachedObjectClient::imageChanged):
* platform/Image.h:
(WebCore::Image::):
* platform/mac/Image.mm:
(WebCore::Image::Image):
(WebCore::Image::resetAnimation):
(WebCore::Image::operator=):
(WebCore::Image::stopAnimations):
(WebCore::):
(WebCore::Image::compositeOperatorFromString):
* rendering/render_box.cpp:
(WebCore::RenderBox::paintBackgroundExtended):
* rendering/render_canvasimage.cpp:
(WebCore::RenderCanvasImage::paint):
* rendering/render_image.cpp:
(WebCore::RenderImage::RenderImage):
(WebCore::RenderImage::~RenderImage):
(WebCore::RenderImage::setContentObject):
(WebCore::RenderImage::setCachedImage):
(WebCore::RenderImage::imageChanged):
(WebCore::RenderImage::resetAnimation):
(WebCore::RenderImage::paint):
(WebCore::RenderImage::layout):
(WebCore::RenderImage::updateAltText):
(WebCore::RenderImage::calcReplacedWidth):
(WebCore::RenderImage::calcReplacedHeight):
* rendering/render_image.h:
(WebCore::RenderImage::cachedImage):
(WebCore::RenderImage::image):
(WebCore::RenderImage::errorOccurred):
* rendering/render_list.cpp:
(RenderListMarker::paint):
(RenderListMarker::imageChanged):
* rendering/render_list.h:
* rendering/render_object.cpp:
(WebCore::RenderObject::paintBorderImage):
(WebCore::RenderObject::setImage):
* rendering/render_object.h:
WebKit:
Clean up RenderImage, eliminating unneeded members and methods.
Reviewed by darin
* WebCoreSupport.subproj/WebImageRenderer.h:
* WebCoreSupport.subproj/WebImageRenderer.m:
(-[WebImageRenderer copyWithZone:]):
(-[WebImageRenderer size]):
(-[WebImageRenderer drawImageInRect:fromRect:compositeOperator:context:]):
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12447
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 07:42:57 +0000 (07:42 +0000)]
Reviewed by John Sullivan.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6870
REGRESSION: JavaScript Date constructor won't accept another Date object
* fast/js/date-constructor.html: Added.
* fast/js/date-constructor-expected.txt: Added.
* fast/js/resources/date-constructor.js: Added.
* fast/js/resources/date-big-constructor.js: Formatting tweak.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12446
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 29 Jan 2006 07:42:32 +0000 (07:42 +0000)]
Reviewed by John Sullivan.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=6895
include exception names in JavaScript form of DOM exception
* khtml/ecma/kjs_binding.cpp: (KJS::setDOMException): Include the name of the
exception in the error message.
git-svn-id: http://svn.webkit.org/repository/webkit/trunk@12445
268f45cc-cd09-0410-ab3c-
d52691b4dbfc