ap [Fri, 28 Apr 2006 20:05:26 +0000 (20:05 +0000)]
Reviewed by hyatt.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=5855
REGRESSION: revert SGML comment parsing fix (comment parsing causes most of usbank.com page to be missing)
WebCore:
* html/HTMLTokenizer.cpp:
(WebCore::HTMLTokenizer::parseComment): Revert one change made for acid2,
<http://weblogs.mozillazine.org/hyatt/acid6.txt>.
LayoutTests:
* fast/css/acid2.html: Updated to the current version of the test, which no longer includes
SGML comment parsing.
* fast/css/acid2-pixel.html: Ditto.
* http/tests/misc/acid2-pixel.html: Ditto.
* http/tests/misc/acid2.html: Ditto.
* fast/parser/comments-expected.checksum: The results of this test now match WinIE.
* fast/parser/comments-expected.png:
* fast/parser/comments-expected.txt:
* fast/parser/comments.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14106
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Fri, 28 Apr 2006 19:51:57 +0000 (19:51 +0000)]
2006-04-28 Eric Seidel <eseidel@apple.com>
Reviewed by darin.
Misc. style cleanup.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8643
* Misc/WebIconDatabase.m:
(-[NSMutableDictionary iconForURL:withSize:cache:]):
(-[NSMutableDictionary iconURLForURL:]):
(-[NSMutableDictionary retainIconForURL:]):
(-[NSMutableDictionary releaseIconForURL:]):
(-[WebIconDatabase _setIcon:forIconURL:]):
(-[WebIconDatabase _iconsForIconURLString:]):
(-[WebIconDatabase _forgetIconForIconURLString:]):
(-[WebIconDatabase _releaseIconForIconURLString:]):
(-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
* Plugins/WebBasePluginPackage.m:
(+[WebBasePluginPackage pluginWithPath:]):
(-[WebBasePluginPackage pathByResolvingSymlinksAndAliasesInPath:]):
(-[WebBasePluginPackage initWithPath:]):
(-[WebBasePluginPackage getPluginInfoFromBundleAndMIMEDictionary:]):
(-[WebBasePluginPackage pListForPath:createFile:]):
(-[WebBasePluginPackage getPluginInfoFromPLists]):
(-[WebBasePluginPackage load]):
(-[WebBasePluginPackage setMIMEToExtensionsDictionary:]):
(-[WebBasePluginPackage isNativeLibraryData:]):
(-[NSArray _web_lowercaseStrings]):
* Plugins/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage openResourceFile]):
(-[WebNetscapePluginPackage closeResourceFile:]):
(-[WebNetscapePluginPackage stringForStringListID:andIndex:]):
(-[WebNetscapePluginPackage getPluginInfoFromResources]):
(-[WebNetscapePluginPackage initWithPath:]):
(-[WebNetscapePluginPackage executableType]):
(-[WebNetscapePluginPackage unloadWithoutShutdown]):
(-[WebNetscapePluginPackage load]):
(-[WebNetscapePluginPackage unload]):
* Plugins/WebNetscapePluginRepresentation.m:
(-[WebNetscapePluginRepresentation redeliverStream]):
* Plugins/WebPluginDatabase.m:
(+[WebPluginDatabase installedPlugins]):
(-[WebPluginDatabase pluginForKey:withEnumeratorSelector:]):
(-[WebPluginDatabase pluginForExtension:]):
(pluginLocations):
(-[WebPluginDatabase init]):
(-[WebPluginDatabase refresh]):
* Plugins/npapi.m:
(NPN_MemAlloc):
(NPN_MemFree):
(pluginViewForInstance):
* WebCoreSupport/WebSubresourceLoader.m:
(+[WebSubresourceLoader startLoadingResource:withRequest:customHeaders:referrer:forDataSource:]):
(-[WebSubresourceLoader willSendRequest:redirectResponse:]):
* WebView/WebDataSource.m:
(-[WebDataSource isLoading]):
* WebView/WebFrame.m:
(-[WebFrame _loadDataSource:withLoadType:formState:]):
(-[WebFrame _subframeIsLoading]):
* WebView/WebView.m:
(-[WebView initWithFrame:]):
(-[WebView initWithFrame:frameName:groupName:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14105
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Fri, 28 Apr 2006 17:05:49 +0000 (17:05 +0000)]
Reviewed by Eric.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8608
make GraphicsContext more suitable for cross-platform use, step 2
- Changed GraphicsContext to use NSGraphicsContext as little as possible.
- Removed the printing flag from GraphicsContext.
- Changed GraphicsContext to assume the NSGraphicsContext is always flipped,
and got rid of parameters to pass the flipped boolean around.
* WebCore.vcproj/WebCore/WebCore.vcproj: Add GraphicsTypes.h/cpp and remove
CompositeOperator.h/cpp.
* WebCore.xcodeproj/project.pbxproj: Ditto.
* bridge/mac/FrameMac.mm: (WebCore::FrameMac::setDisplaysWithFocusAttributes):
* bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge drawRect:]):
* html/CanvasPattern.cpp: (WebCore::patternCallback):
* html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::createDrawingContext):
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
(WebCore::KRenderingDeviceContextQuartz::createGraphicsContext):
* platform/mac/WidgetMac.mm: (WebCore::Widget::lockDrawingFocus):
Update for changes to GraphicsContext constructor (no flipped or printing boolean).
* html/CanvasRenderingContext2D.h: Added a Path to the context state. Changed the
LineCap and LineJoin types to use the new ones in GraphicsTypes.h instead of defining
types here in this class. Changed m_platformContextStrokeStyleIsPattern and
m_platformContextFillStyleIsPattern to be named m_appliedStrokePattern and
m_appliedFillPattern and moved them outside the __APPLE__ ifdefs. Removed the
platformContext() function. Moved applyStrokePattern and applyFillPattern out of
the __APPLE__ ifdef.
* html/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::State::State): Moved the stroke pattern
booleans out of Mac-specific ifdef.
(WebCore::CanvasRenderingContext2D::save): Changed to use GraphicsContext instead
of using CGContext directly.
(WebCore::CanvasRenderingContext2D::restore): Ditto.
(WebCore::CanvasRenderingContext2D::setStrokeStyle): Ditto.
(WebCore::CanvasRenderingContext2D::setFillStyle): Ditto.
(WebCore::CanvasRenderingContext2D::setLineWidth): Ditto.
(WebCore::CanvasRenderingContext2D::lineCap): Ditto.
(WebCore::CanvasRenderingContext2D::setLineCap): Ditto.
(WebCore::CanvasRenderingContext2D::lineJoin): Ditto.
(WebCore::CanvasRenderingContext2D::setLineJoin): Ditto.
(WebCore::CanvasRenderingContext2D::setMiterLimit): Ditto.
(WebCore::CanvasRenderingContext2D::shadowColor): Ditto.
(WebCore::CanvasRenderingContext2D::setGlobalAlpha): Ditto.
(WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): Ditto.
(WebCore::CanvasRenderingContext2D::scale): Update since platformContext() function
no longer exists.
(WebCore::CanvasRenderingContext2D::rotate): Ditto.
(WebCore::CanvasRenderingContext2D::translate): Ditto.
(WebCore::CanvasRenderingContext2D::beginPath): Changed to use GraphicsContext instead
of using CGContext directly.
(WebCore::CanvasRenderingContext2D::closePath): Ditto.
(WebCore::CanvasRenderingContext2D::moveTo): Ditto.
(WebCore::CanvasRenderingContext2D::lineTo): Ditto.
(WebCore::CanvasRenderingContext2D::quadraticCurveTo): Ditto.
(WebCore::CanvasRenderingContext2D::bezierCurveTo): Ditto.
(WebCore::CanvasRenderingContext2D::arcTo): Ditto.
(WebCore::CanvasRenderingContext2D::arc): Ditto.
(WebCore::CanvasRenderingContext2D::rect): Ditto.
(WebCore::CanvasRenderingContext2D::fill): Changed to use the current path from this class
instead of relying on the CGContext's current path.
(WebCore::CanvasRenderingContext2D::stroke): Ditto.
(WebCore::CanvasRenderingContext2D::clip): Changed to use the current path and use the
GraphicsContext instead of using CGContext directly.
(WebCore::CanvasRenderingContext2D::clearRect): Changed to use GraphicsContext instead
of using CGContext directly.
(WebCore::CanvasRenderingContext2D::fillRect): Update since platformContext() function
no longer exists.
(WebCore::CanvasRenderingContext2D::strokeRect): Ditto.
(WebCore::CanvasRenderingContext2D::setShadow): Ditto.
(WebCore::CanvasRenderingContext2D::applyShadow): Ditto.
(WebCore::CanvasRenderingContext2D::drawImage): Ditto.
(WebCore::CanvasRenderingContext2D::drawImageFromRect): Ditto.
(WebCore::CanvasRenderingContext2D::createPattern): Ditto.
(WebCore::CanvasRenderingContext2D::applyStrokePattern): Made a tiny bit of this function
cross-platform. The bulk is still Mac-specific.
(WebCore::CanvasRenderingContext2D::applyFillPattern): Ditto.
* html/CanvasStyle.h: Changed to use GraphicsContext instead of CGContext. Now the
platform-specific stuff is in the implementation, not the header.
* html/CanvasStyle.cpp:
(WebCore::CanvasStyle::applyStrokeColor): Moved the ifdefs inside the function, getting
us one step closer to platform independence.
(WebCore::CanvasStyle::applyFillColor): Ditto.
* html/html_imageimpl.cpp:
(WebCore::HTMLAreaElement::getRect): Update for changes to the Path class.
(WebCore::HTMLAreaElement::getRegion): Ditto.
* page/Frame.cpp:
(WebCore::Frame::paint): Change to check printing flag on the document, rather than on
the GraphicsContext, since there is no printing flag for GraphicsContext any more.
(WebCore::Frame::adjustPageHeight): Update for change to GraphicsContext constructor.
* platform/GraphicsContext.h: Define a type called PlatformGraphicsContext so the
platform-specific getter and constructor don't have to be ifdef'd. Added clearRect,
strokeRect, setLineWidth, setLineCap, setLineJoin, setMiterLimit, setAlpha, setCompositeOperation,
and clip functions. Removed the isForPrinting parameter from createGraphicsContextPrivate.
* platform/GraphicsContext.cpp:
(WebCore::GraphicsContextPrivate::GraphicsContextPrivate): Removed isForPrinting.
(WebCore::GraphicsContext::createGraphicsContextPrivate): Ditto.
* platform/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
Removed NSGraphicsContext.
(WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
Ditto.
(WebCore::GraphicsContext::GraphicsContext): Removed constructor that
takes an NSGraphicsContext. Removed the flipText and forPrinting parameters
to the other constructor.
(WebCore::GraphicsContext::savePlatformState): Removed NSGraphicsContext code.
(WebCore::GraphicsContext::restorePlatformState): Ditto.
(WebCore::GraphicsContext::drawRect): Updated assertion to more-precisely
reflect the limitation of the current version of this function.
(WebCore::GraphicsContext::setColorFromFillColor): Ditto.
(WebCore::GraphicsContext::setColorFromPen): Ditto.
(WebCore::GraphicsContext::drawLine): Updated assertion to more-precisely
reflect the limitation of the current version of this function.
(WebCore::setCompositeOperation):
(WebCore::GraphicsContext::fillRect): Ditto.
(WebCore::GraphicsContext::setLineWidth): Added.
(WebCore::GraphicsContext::setMiterLimit): Added.
(WebCore::GraphicsContext::setAlpha): Added.
(WebCore::GraphicsContext::setCompositeOperation): Added.
(WebCore::GraphicsContext::clearRect): Added.
(WebCore::GraphicsContext::strokeRect): Added.
(WebCore::GraphicsContext::setLineCap): Added.
(WebCore::GraphicsContext::setLineJoin): Added.
(WebCore::GraphicsContext::clip): Added.
* platform/CompositeOperator.cpp: Removed.
* platform/CompositeOperator.h: Removed.
* platform/GraphicsTypes.cpp: Added. Includes CompositeOperator, LineCap, and LineJoin.
* platform/GraphicsTypes.h: Added.
* platform/Image.h: Changed include to GraphicsTypes.h from CompositeOperator.h.
* platform/Path.h: Removed constructors that take a Rect and an array of points. Made
the Path mutable. Changed the types for contains and boundingRect to be float-based
instead of int-based. Changed translate to take a FloatSize instead of two integers.
Added clear, moveTo, addLineTo, addQuadCurveTo, addBezierCurveTo, addArcTo, closeSubpath,
addArc, addRect, addEllipse, and platformPath functions. Defined a PlatformPath type
so we don't have to ifdef the header so much.
* platform/cg/PathCG.cpp:
(WebCore::Path::Path): Changed class to always have a mutable path.
(WebCore::Path::operator=): Changed to make a mutable copy.
(WebCore::Path::contains): Changed to take a FloatPoint instead of IntPoint.
(WebCore::Path::translate): Changed to use a FloatSize instead of two ints.
(WebCore::Path::boundingRect): Changed to return a FloatRect.
(WebCore::Path::moveTo): Added.
(WebCore::Path::addLineTo): Added.
(WebCore::Path::addQuadCurveTo): Added.
(WebCore::Path::addBezierCurveTo): Added.
(WebCore::Path::addArcTo): Added.
(WebCore::Path::closeSubpath): Added.
(WebCore::Path::addArc): Added.
(WebCore::Path::addRect): Added.
(WebCore::Path::addEllipse): Added.
(WebCore::Path::clear): Added.
* platform/mac/ImageMac.mm:
(WebCore::fillSolidColorInRect): Changed to take a GraphicsContext instead of
a CGContext.
(WebCore::Image::checkForSolidColor): Changed to use the new setCompositeOperation
in GraphicsContex.
(WebCore::Image::draw): Changed to use the new PDF image and fillSolidColorInRect
function that take GraphicsContext instead of CGContext.
(WebCore::Image::drawTiled): Ditto.
* platform/mac/PDFDocumentImage.h: Made most functions private. Changed to
use GraphicsContext and FloatRect instead of CGContext and NSRect. Also
removed the unused alpha and flipped booleans.
* platform/mac/PDFDocumentImage.mm:
(WebCore::PDFDocumentImage::bounds): Update for change in types.
(WebCore::PDFDocumentImage::adjustCTM): Ditto.
(WebCore::PDFDocumentImage::setCurrentPage): Ditto.
(WebCore::PDFDocumentImage::draw): Ditto.
* platform/win/TemporaryLinkStubs.cpp: Added lots of new stubs.
* rendering/InlineTextBox.cpp: (WebCore::InlineTextBox::paint): Changed to get
printing boolean from document instead graphics context.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::paintChildren): Ditto.
(WebCore::RenderBlock::paintObject): Ditto.
* rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintLines): Ditto.
* rendering/RenderHTMLCanvas.cpp: (WebCore::RenderHTMLCanvas::paint): Ditto.
* rendering/RenderImage.cpp: (WebCore::RenderImage::paint): Ditto.
* rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintButton): Ditto.
* rendering/render_list.cpp: (WebCore::RenderListMarker::paint): Ditto.
* rendering/render_replaced.cpp: (WebCore::RenderWidget::paint): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14102
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Fri, 28 Apr 2006 16:02:45 +0000 (16:02 +0000)]
2006-04-28 Mitz Pettel <opendarwin.org@mitzpettel.com>
Reviewed by hyatt, landed by ap.
WebCore:
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6769
REGRESSION: Incomplete repaint when a cell's extra bottom margin grows
Test: fast/repaint/table-extra-bottom-grow.html
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::overflowRect): Changed to not add the top/left overflow twice and
allow the normal overflow height to overlap with the bottom extra height.
* rendering/RenderTableRow.cpp:
(WebCore::RenderTableRow::layout): Removed the code that resets the extra heights.
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::layoutRows): If the top extra height changed or the
bottom extra height increased, just repaint the entire cell.
LayoutTests:
* fast/repaint/table-extra-bottom-grow-expected.checksum: Added.
* fast/repaint/table-extra-bottom-grow-expected.png: Added.
* fast/repaint/table-extra-bottom-grow-expected.txt: Added.
* fast/repaint/table-extra-bottom-grow.html: Added.
* fast/repaint/table-cell-moved-expected.checksum: Removed excessive painting.
* fast/repaint/table-cell-moved-expected.png: Ditto.
* fast/repaint/bugzilla-6278-expected.checksum: Ditto.
* fast/repaint/bugzilla-6278-expected.png: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14101
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Fri, 28 Apr 2006 15:37:15 +0000 (15:37 +0000)]
Reviewed by Darin.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8633
DumpRenderTree should reset the URL cache
* DumpRenderTree/DumpRenderTree.m:
(main): Call [[NSURLCache sharedURLCache] removeAllCachedResponses].
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14100
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Fri, 28 Apr 2006 12:49:20 +0000 (12:49 +0000)]
2006-04-28 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
* projects/svg/status.xml: Update to reflect current status.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14099
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Fri, 28 Apr 2006 12:30:12 +0000 (12:30 +0000)]
2006-04-28 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
* Scripts/do-webcore-rename: rename KCanvasContainer too
* Scripts/run-webkit-tests: output total time
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14098
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Fri, 28 Apr 2006 11:50:03 +0000 (11:50 +0000)]
2006-04-28 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
Remove KCanvasContainerQuartz, pushing all logic into KCanvasContainer.
* kcanvas/KCanvasContainer.cpp:
(WebCore::KCanvasContainer::canHaveChildren):
(WebCore::KCanvasContainer::requiresLayer):
(WebCore::KCanvasContainer::lineHeight):
(WebCore::KCanvasContainer::baselinePosition):
(WebCore::KCanvasContainer::calcMinMaxWidth):
(WebCore::KCanvasContainer::layout):
(WebCore::KCanvasContainer::paint):
(WebCore::KCanvasContainer::setViewport):
(WebCore::KCanvasContainer::viewport):
(WebCore::KCanvasContainer::setViewBox):
(WebCore::KCanvasContainer::viewBox):
(WebCore::KCanvasContainer::setAlign):
(WebCore::KCanvasContainer::align):
(WebCore::KCanvasContainer::viewportTransform):
(WebCore::KCanvasContainer::getAbsoluteRepaintRect):
(WebCore::KCanvasContainer::absoluteTransform):
(WebCore::KCanvasContainer::getAspectRatio):
* kcanvas/KCanvasContainer.h:
(WebCore::KCanvasContainer::renderName):
* kcanvas/device/KRenderingDevice.h:
* kcanvas/device/quartz/KCanvasResourcesQuartz.h:
* kcanvas/device/quartz/KCanvasResourcesQuartz.mm:
* kcanvas/device/quartz/KRenderingDeviceQuartz.h:
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
(WebCore::KRenderingDeviceQuartz::createPaintServer):
* ksvg2/svg/SVGAElement.cpp:
(WebCore::SVGAElement::createRenderer):
* ksvg2/svg/SVGGElement.cpp:
(SVGGElement::createRenderer):
* ksvg2/svg/SVGMarkerElement.cpp:
(WebCore::SVGMarkerElement::createRenderer):
* ksvg2/svg/SVGMaskElement.cpp:
(WebCore::SVGMaskElement::createRenderer):
* ksvg2/svg/SVGPatternElement.cpp:
(WebCore::SVGPatternElement::createRenderer):
* ksvg2/svg/SVGSVGElement.cpp:
(WebCore::SVGSVGElement::createRenderer):
* ksvg2/svg/SVGSwitchElement.cpp:
(WebCore::SVGSwitchElement::createRenderer):
* ksvg2/svg/SVGUseElement.cpp:
(SVGUseElement::createRenderer):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14097
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Fri, 28 Apr 2006 10:57:28 +0000 (10:57 +0000)]
2006-04-27 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
Make WebCore accept any */*+xml type as XML.
http://bugzilla.opendarwin.org/show_bug.cgi?id=5998
<rdar://problem/
4031511> XmlHttpRequest doesn't allow responses with Content-Type: application/soap+xml
Test: http/tests/xmlhttprequest/supported-xml-content-types.html
* dom/DOMImplementation.cpp:
(WebCore::DOMImplementation::isXMLMIMEType):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14096
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Fri, 28 Apr 2006 03:49:32 +0000 (03:49 +0000)]
2006-04-27 Eric Seidel <eseidel@apple.com>
* WebCore.vcproj/WebCore/WebCore.vcproj: Fix break from last checkin.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14095
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Fri, 28 Apr 2006 01:00:04 +0000 (01:00 +0000)]
JavaScriptCore:
Reviewed by Maciej
- Minor fixups I discovered while working on the autogenerator.
* kjs/lookup.cpp:
(findEntry): ASSERT that size is not 0, because otherwise we'll % by 0,
compute a garbage address, and possibly crash.
* kjs/lookup.h:
(cacheGlobalObject): Don't enumerate cached objects -- ideally, they
would be hidden entirely.
LayoutTests:
- Updated to remove diff shmutz:
* fast/dom/Window/window-special-properties-expected.txt:
* fast/dom/Window/window-special-properties.html:
- Test for global window properties like window.HTMLDocument:
* fast/dom/global-constructors-expected.txt: Added.
* fast/dom/global-constructors.html: Added.
WebCore:
Reviewed by Maciej.
- Added global constructor autogeneration for the following,
many of which are required by *.live.com: Node, Element, Range,
CSSRule, CSSValue, CSSPrimitiveValue, CSSStyleDeclaration, Event,
MutationEvent, NodeFilter
It works like so:
- The autogenerator knows about the "Constructor" data type, which
gets special treatment because it exists purely in the
bindings. It also knows about the "GenerateConstructor" interface
attribute, which does just that.
- The window interface has many Constructor attributes
- The hash table generator swizzles empty tables to tables with one
empty bucket, to prevent crashes in Lookup::findEntry. (The old
generator used to work this way, too.)
- Window object property lookup gets special treatment to allow
shadowing of its built-in global constructor properties. We'll
need to expand this mechanism in the future and make it more
flexible, but it works for now.
* DerivedSources.make:
* WebCore.vcproj/WebCore/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/kjs_css.cpp:
(KJS::toJS):
* bindings/js/kjs_css.h:
* bindings/js/kjs_window.cpp: Removed 'namedFrameGetter' and its use
because they were bogus; added FIXME describing what they were
attempting to do.
(KJS::Window::getValueProperty):
(KJS::Window::getOverridePropertySlot):
(KJS::Window::getOwnPropertySlot):
* bindings/js/kjs_window.h:
(KJS::Window::):
* bindings/scripts/CodeGeneratorJS.pm:
* css/CSSPrimitiveValue.idl:
* css/CSSRule.idl:
* css/CSSStyleDeclaration.idl: Added.
* css/CSSValue.idl:
* dom/Document.idl:
* dom/Element.idl:
* dom/Event.idl:
* dom/MutationEvent.idl:
* dom/Node.idl:
* dom/NodeFilter.idl:
* dom/Range.idl:
* page/DOMWindow.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14094
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Thu, 27 Apr 2006 23:24:08 +0000 (23:24 +0000)]
Give credit where credit is due.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14090
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Thu, 27 Apr 2006 23:00:41 +0000 (23:00 +0000)]
LayoutTests:
Reviewed by darin
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8607>
Automate repaint tests
* fast/repaint/backgroundSizeRepaint-expected.checksum: Added.
* fast/repaint/backgroundSizeRepaint-expected.png: Added.
* fast/repaint/backgroundSizeRepaint-expected.txt: Added.
* fast/repaint/backgroundSizeRepaint.html: Added.
* fast/repaint/border-repaint-glitch-expected.checksum: Added.
* fast/repaint/border-repaint-glitch-expected.png: Added.
* fast/repaint/border-repaint-glitch-expected.txt: Added.
* fast/repaint/border-repaint-glitch.html: Added.
* fast/repaint/bugzilla-3509-expected.checksum: Added.
* fast/repaint/bugzilla-3509-expected.png: Added.
* fast/repaint/bugzilla-3509-expected.txt: Added.
* fast/repaint/bugzilla-3509.html: Added.
* fast/repaint/bugzilla-5699-expected.checksum: Added.
* fast/repaint/bugzilla-5699-expected.png: Added.
* fast/repaint/bugzilla-5699-expected.txt: Added.
* fast/repaint/bugzilla-5699.html: Added.
* fast/repaint/bugzilla-6278-expected.checksum: Added.
* fast/repaint/bugzilla-6278-expected.png: Added.
* fast/repaint/bugzilla-6278-expected.txt: Added.
* fast/repaint/bugzilla-6278.html: Added.
* fast/repaint/bugzilla-6388-expected.checksum: Added.
* fast/repaint/bugzilla-6388-expected.png: Added.
* fast/repaint/bugzilla-6388-expected.txt: Added.
* fast/repaint/bugzilla-6388.html: Added.
* fast/repaint/bugzilla-6473-expected.checksum: Added.
* fast/repaint/bugzilla-6473-expected.png: Added.
* fast/repaint/bugzilla-6473-expected.txt: Added.
* fast/repaint/bugzilla-6473.html: Added.
* fast/repaint/bugzilla-7235-expected.checksum: Added.
* fast/repaint/bugzilla-7235-expected.png: Added.
* fast/repaint/bugzilla-7235-expected.txt: Added.
* fast/repaint/bugzilla-7235.html: Added.
* fast/repaint/inline-outline-repaint-expected.checksum: Added.
* fast/repaint/inline-outline-repaint-expected.png: Added.
* fast/repaint/inline-outline-repaint-expected.txt: Added.
* fast/repaint/inline-outline-repaint.html: Added.
* fast/repaint/outline-repaint-glitch-expected.checksum: Added.
* fast/repaint/outline-repaint-glitch-expected.png: Added.
* fast/repaint/outline-repaint-glitch-expected.txt: Added.
* fast/repaint/outline-repaint-glitch.html: Added.
* fast/repaint/repaint-resized-overflow-expected.checksum: Added.
* fast/repaint/repaint-resized-overflow-expected.png: Added.
* fast/repaint/repaint-resized-overflow-expected.txt: Added.
* fast/repaint/repaint-resized-overflow.html: Added.
* fast/repaint/repaint.js: Added.
* fast/repaint/resources: Added.
* fast/repaint/resources/apple.jpg: Added.
* fast/repaint/table-cell-move-expected.checksum: Added.
* fast/repaint/table-cell-move-expected.png: Added.
* fast/repaint/table-cell-move-expected.txt: Added.
* fast/repaint/table-cell-move.html: Added.
WebCore:
Reviewed by darin
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8607>
Automate repaint tests
* manual-tests/backgroundSizeRepaint.html: Removed.
* manual-tests/border-repaint-glitch.html: Removed.
* manual-tests/bugzilla-3509.html: Removed.
* manual-tests/bugzilla-5699.html: Removed.
* manual-tests/bugzilla-6278.html: Removed.
* manual-tests/bugzilla-6388.html: Removed.
* manual-tests/bugzilla-6473.html: Removed.
* manual-tests/bugzilla-7235.html: Removed.
* manual-tests/inline-outline-repaint.html: Removed.
* manual-tests/outline-repaint-glitch.html: Removed.
* manual-tests/repaint-resized-overflow.html: Removed.
* manual-tests/table-cell-move.html: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14089
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Thu, 27 Apr 2006 20:11:45 +0000 (20:11 +0000)]
LayoutTests:
Reviewed by darin
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8624>
Placeholders aren't always removed during paste
<rdar://problem/
4059807>
Seed: Mail: pasting quoted content sometimes adds a phantom newline
If a webkit-block-placeholder has been introduced by a bug in deletion,
we shouldn't remove it during paste if it is now acting as a linebreak.
* editing/pasteboard/bad-placeholder-expected.checksum: Added.
* editing/pasteboard/bad-placeholder-expected.png: Added.
* editing/pasteboard/bad-placeholder-expected.txt: Added.
* editing/pasteboard/bad-placeholder.html: Added.
Generic placeholder brs should be removed if they are displaced by pasted content.
* editing/pasteboard/displaced-generic-placeholder-expected.checksum: Added.
* editing/pasteboard/displaced-generic-placeholder-expected.png: Added.
* editing/pasteboard/displaced-generic-placeholder-expected.txt: Added.
* editing/pasteboard/displaced-generic-placeholder.html: Added.
So should placeholder brs with our special class on them.
* editing/pasteboard/displaced-placeholder-expected.checksum: Added.
* editing/pasteboard/displaced-placeholder-expected.png: Added.
* editing/pasteboard/displaced-placeholder-expected.txt: Added.
* editing/pasteboard/displaced-placeholder.html: Added.
Removed an unnecessary collapsed br.
* editing/pasteboard/paste-text-010-expected.txt:
Two fixes, an extra line was present after pasting with an interchange newline.
* editing/pasteboard/paste-text-016-expected.checksum: Added.
* editing/pasteboard/paste-text-016-expected.png: Added.
* editing/pasteboard/paste-text-016-expected.txt: Added.
* editing/pasteboard/paste-text-017-expected.checksum: Added.
* editing/pasteboard/paste-text-017-expected.png: Added.
* editing/pasteboard/paste-text-017-expected.txt: Added.
The code that interprets the incoming br as a br in strict mode had a bug.
* editing/pasteboard/quirks-mode-br-1-expected.checksum: Added.
* editing/pasteboard/quirks-mode-br-1-expected.png: Added.
* editing/pasteboard/quirks-mode-br-1-expected.txt: Added.
* editing/pasteboard/quirks-mode-br-1.html: Added.
The linePlaceholder removal was negating the work to interpret the last
incoming br as a br in strict mode.
* editing/pasteboard/quirks-mode-br-2-expected.checksum: Added.
* editing/pasteboard/quirks-mode-br-2-expected.png: Added.
* editing/pasteboard/quirks-mode-br-2-expected.txt: Added.
* editing/pasteboard/quirks-mode-br-2.html: Added.
Don't let collapsed brs become rendered as a result of the paste operation.
* editing/pasteboard/unrendered-br-expected.checksum: Added.
* editing/pasteboard/unrendered-br-expected.png: Added.
* editing/pasteboard/unrendered-br-expected.txt: Added.
* editing/pasteboard/unrendered-br.html: Added.
WebCore:
Reviewed by darin
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8624>
Placeholders aren't always removed during paste
<rdar://problem/
4059807>
Seed: Mail: pasting quoted content sometimes adds a phantom newline
* editing/CompositeEditCommand.cpp: Added a FIXME.
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::doApply):
Removed two no-op setEndingSelection calls.
Store away a br at the position where we'll start inserting content in case the
br a) is made unnecessary by the insertion (it's collapsed away) b) was acting
as a placeholder and should therefore be displaced by inserted content or c) was
acting as a line break and, as a result of the insertion, is now acting as a
placeholder.
Don't only store away brs that have the webkit-block-placeholder class on them.
Any br that does any of the three things just mentioned should be removed.
The linePlaceholder removal was run after the code that makes sure to interpret
incoming brs strictly, and was negating that work in certain cases.
(WebCore::ReplaceSelectionCommand::removeEndBRIfNeeded): Described above.
* editing/ReplaceSelectionCommand.h:
* editing/VisiblePosition.cpp:
(WebCore::isEqualIgnoringAffinity):
Added a workaround for 8622. We want this function to return true even if one of
the two visible positions has been incorrectly canonicalized.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14086
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Thu, 27 Apr 2006 16:57:15 +0000 (16:57 +0000)]
speculative fix for windows build
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14083
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Thu, 27 Apr 2006 00:57:29 +0000 (00:57 +0000)]
LayoutTests:
Reviewed by Hyatt.
Test case for <rdar://problem/
4068375> Flash inserted via innerHTML Fails to Show when
CSS Display Style is Toggled via Javascript
* plugins/inner-html-display-none.html: Added.
* plugins/inner-html-display-none-expected.txt: Added.
WebCore:
Reviewed by Hyatt.
<rdar://problem/
4068375> Flash inserted via innerHTML Fails to Show when CSS Display
Style is Toggled via Javascript
* html/html_objectimpl.cpp:
(WebCore::HTMLObjectElement::setComplete):
Set needWidgetUpdate when finished parsing, even if the object element is not in
a document. That way, when the element attaches to a document, it will update its
widget (creating the plug-in view if necessary). This is important when the object
is being inserted via setInnerHTML, since the parsed nodes are not added to the
document until the whole HTML string is parsed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14082
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Wed, 26 Apr 2006 22:31:55 +0000 (22:31 +0000)]
Reviewed by Hyatt.
- Fixed http://bugzilla.opendarwin.org/post_bug.cgi
REGRESSION (r14048): Google calendar not parsing
* html/HTMLParser.cpp:
(WebCore::HTMLParser::handleError): Rolling out grandparent NULL check
because it caused this regression and there's no test case
justifying it.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14081
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Wed, 26 Apr 2006 21:10:06 +0000 (21:10 +0000)]
LayoutTests:
Reviewed by hyatt
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8459>
REGRESSION: Content lost during a delete/merge of whitespace:pre text
Updated to mention the bug that this testcase still demonstrates.
Leaving it disabled until the bug (8592) is fixed:
* editing/deleting/merge-whitespace-pre.html-disabled:
Illustrates why prune should ascend using the render tree:
* editing/deleting/pruning-after-merge-1-expected.checksum: Added.
* editing/deleting/pruning-after-merge-1-expected.png: Added.
* editing/deleting/pruning-after-merge-1-expected.txt: Added.
* editing/deleting/pruning-after-merge-1.html: Added.
WebCore:
Reviewed by hyatt
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8459>
REGRESSION: Content lost during a delete/merge of whitespace:pre text
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::prune):
The function would prune a rendered leaf because it assumed that the
first node passed to it would be a container.
The old code ascended using the DOM tree, and would remove the <b> when
pruning the <div> in <b><div></div>foo</b>. Now ascends using the render tree.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14079
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Wed, 26 Apr 2006 20:42:02 +0000 (20:42 +0000)]
This time for sure. Fixed Windows build too.
* WebCore.vcproj/WebCore/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14077
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Wed, 26 Apr 2006 20:29:38 +0000 (20:29 +0000)]
Reviewed by TimO.
Build fix.
* bindings/js/kjs_dom.cpp:
* bindings/js/kjs_domnode.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14076
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Wed, 26 Apr 2006 20:18:03 +0000 (20:18 +0000)]
Reviewed by Geoff.
<rdar://problem/
4525105> Repro TOT crash in [WebBaseNetscapePluginView dealloc] at coachella.com
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8564> crashed when closing a tab
* WebView/WebFrame.m:
(-[WebFramePrivate dealloc]):
Assert that plugInViews has been released.
(-[WebFrame _addPlugInView:]):
New method. Adds the plug-in view to the plugInViews set and calls -setWebFrame: on it.
(-[WebFrame _removeAllPlugInViews]):
New method. Calls -setWebFrame:nil on all plug-in views and releases the plugInViews set.
(-[WebFrame _willCloseURL]):
New method. Dispose of plug-in views when leaving a page (or closing the WebView).
* WebView/WebFrameInternal.h:
Declared -_addPlugInView:, -_removeAllPlugInViews, -_willCloseURL
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
Call -[WebFrame _addPlugInView:] instead of directly setting plug-in views' frames. This
allows us to keep track of them so that we can explicitly dispose of them when leaving the page.
(-[WebFrameBridge closeURL]):
Override -[WebCoreFrameBridge closeURL] so that we can perform our own teardown when leaving
a page or closing the WebView.
* Plugins/WebBaseNetscapePluginView.h:
Declared -stop so that subclass WebNetscapePluginEmbeddedView can call it.
* Plugins/WebNetscapePluginEmbeddedView.m:
(-[WebNetscapePluginEmbeddedView setWebFrame:]):
Stop the plug-in when it is removed from its WebFrame.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14075
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Wed, 26 Apr 2006 20:02:01 +0000 (20:02 +0000)]
LayoutTests:
Reviewed by OMG DETHBAKIN.
* fast/dom/prototype-chain-expected.txt: Fix up prototype chain now
that Node is autogenerated.
WebCore:
Reviewed by OMG DETHBAKIN.
- Start autogenerating Node. This fixes many missing attributes in our
DOM by making prototypes hold their relevant constants as properties.
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/kjs_dom.cpp:
(KJS::DOMEventTargetNode::DOMEventTargetNode):
(KJS::toJS):
* bindings/js/kjs_dom.h:
(KJS::DOMEventTargetNode::):
* bindings/js/kjs_domnode.h: Had to break DOMNode into a separate
header to avoid circular dependency in header includes. Gave it an
old-school file name to keep distinguishing beteween old school and
news school files easy.
(KJS::DOMNode::impl):
(KJS::DOMNode::classInfo):
(KJS::DOMNode::):
* bindings/js/kjs_window.cpp:
(KJS::Window::getValueProperty):
* bindings/scripts/CodeGeneratorJS.pm:
* dom/DocumentType.idl:
* dom/Entity.idl:
* dom/Node.idl: Added.
* dom/Notation.idl:
* dom/ProcessingInstruction.idl:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14074
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Wed, 26 Apr 2006 19:52:28 +0000 (19:52 +0000)]
Reviewed by John Sullivan.
<rdar://problem/
4472035> SPI that checks for URL policy fails in plugin documents
* Plugins/WebPluginController.h:
* Plugins/WebPluginController.m:
(-[WebPluginController URLPolicyCheckReferrer]):
New method. Get the referrer from the frame's data source's NSURLResponse. Note that for
document types loaded by WebCore, this URL is the same as -[WebCorePageBridge referrer],
since the response URL is what we pass to -[WebCorePageBridge openURL:].
* Plugins/WebPluginContainerCheck.m:
(-[WebPluginContainerCheck _isForbiddenFileLoad]):
Use the WebPluginController's -URLPolicyCheckReferrer instead of assuming that the bridge's
-referrer is valid. -[WebCorePageBridge referrer] is only set during the normal WebCore page
load process, which has nothing to do with loading standalone plugin documents.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14073
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Wed, 26 Apr 2006 19:09:12 +0000 (19:09 +0000)]
Reviewed by Darin.
Committing the project file change jhaygood suggesed in
http://bugzilla.opendarwin.org/show_bug.cgi?id=8044
WebKit Visual Studio 2005 project shouldn't use the SolutionDir
Instead of his patch, I used the following commands:
sed -e 's/$(SolutionDir)/$(ProjectDir)\\../g' Image\ Viewer/Image\
Viewer.vcproj > Image\ Viewer/Image\ Viewer.vcproj_ && mv Image\
Viewer/Image\ Viewer.vcproj_ Image\ Viewer/Image\ Viewer.vcproj
sed -e 's/$(SolutionDir)/$(ProjectDir)\\../g'
WebCore/WebCore.vcproj > WebCore/WebCore.vcproj_ && mv
WebCore/WebCore.vcproj_ WebCore/WebCore.vcproj
* Viewer.vcproj:
* WebCore.vcproj/WebCore/WebCore.vcproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14072
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
justing [Wed, 26 Apr 2006 04:33:43 +0000 (04:33 +0000)]
LayoutTests:
Reviewed by harrison
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8583>
Moving paste code around and some small fixes
Disabling until the bug it illustrates is fixed (8459):
* editing/deleting/merge-whitespace-pre.html: Removed.
* editing/deleting/merge-whitespace-pre.html-disabled: Added.
This illustrates the need to do mergeEnd in the opposite direction:
* editing/pasteboard/merge-end-borders-expected.checksum: Added.
* editing/pasteboard/merge-end-borders-expected.png: Added.
* editing/pasteboard/merge-end-borders-expected.txt: Added.
* editing/pasteboard/merge-end-borders.html: Added.
These illustrate the need to do the special case checks for list content and Mail
blockquote content at the top of shouldMergeStart:
* editing/pasteboard/merge-start-blockquote-expected.checksum: Added.
* editing/pasteboard/merge-start-blockquote-expected.png: Added.
* editing/pasteboard/merge-start-blockquote-expected.txt: Added.
* editing/pasteboard/merge-start-blockquote.html: Added.
* editing/pasteboard/merge-start-list-expected.checksum: Added.
* editing/pasteboard/merge-start-list-expected.png: Added.
* editing/pasteboard/merge-start-list-expected.txt: Added.
* editing/pasteboard/merge-start-list.html: Added.
In these tests, the caret was blown away because it was in content that
participated in the end merge. Now the end merge happens in the opposite
direction (incoming content is what is moved when merging paragraphs), so
the caret is no longer blown away:
* editing/pasteboard/paste-line-endings-007-expected.txt:
* editing/pasteboard/paste-line-endings-008-expected.txt:
* editing/pasteboard/paste-line-endings-009-expected.txt:
* editing/pasteboard/paste-text-002-expected.txt:
Acceptable change to a complicated paste-a-selection-over-itself:
* editing/pasteboard/paste-text-003-expected.checksum:
* editing/pasteboard/paste-text-003-expected.png:
* editing/pasteboard/paste-text-003-expected.txt:
WebCore:
Reviewed by harrison
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8583>
Moving paste code around and some small fixes
Moved code to make it easier to do the start merge after the fact,
with moveParagraph, instead of in the middle of the paste operation.
* editing/CompositeEditCommand.cpp:
(WebCore::CompositeEditCommand::moveParagraph):
* editing/ReplaceSelectionCommand.cpp:
(WebCore::ReplaceSelectionCommand::ReplaceSelectionCommand):
(WebCore::ReplaceSelectionCommand::shouldMergeStart):
Moved code to make this decision to its own function. Moved special case
checks to the top. Added m_forceMergeStart to override the special cases
because moveParagraph uses ReplaceSelectionCommand and expects a merge.
(WebCore::ReplaceSelectionCommand::shouldMergeEnd):
No functional changes, just moved code here.
(WebCore::ReplaceSelectionCommand::doApply):
Do the end merge in the opposite direction. Merging two paragraphs destroys
the moved one's block level styles, and we prefer to use the styles of the
one that was in the document, not the one that's being pasted.
* editing/ReplaceSelectionCommand.h:
* editing/Selection.h:
(WebCore::Selection::visibleStart): Added.
(WebCore::Selection::visibleEnd): Added.
* editing/htmlediting.cpp:
(WebCore::enclosingList): Added.
(WebCore::isMailBlockquote):
Don't require a renderer so that this can be used on nodes in fragments.
* editing/htmlediting.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14071
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Tue, 25 Apr 2006 23:12:54 +0000 (23:12 +0000)]
Reviewed by Eric.
<rdar://problem/
4526052> intermittent assertion failure in -[WebBasePluginPackage dealloc]
running layout tests
* Plugins/WebPluginPackage.m:
(-[WebPluginPackage unload]):
Clear isLoaded here. It turns out that only WebNetscapePluginPackage cleared its isLoaded
flag in -unload. We need to also do it here, because the superclass (WebBasePluginPackage)
asserts in -dealloc that -unload has been called.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14070
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 25 Apr 2006 22:58:56 +0000 (22:58 +0000)]
LayoutTests:
Reviewed by Maciej.
Test for the DOM properties supported by object, embed, attribute:
* fast/dom/plugin-attributes-enumeration-expected.txt: Added.
* fast/dom/plugin-attributes-enumeration.html: Added.
Test for setting attributes through DOM properties:
* plugins/embed-attributes-setting-expected.txt: Added.
* plugins/embed-attributes-setting.html: Added.
Test for the special attribute-to-style mappings on embed.
* plugins/embed-attributes-style-expected.txt: Added.
* plugins/embed-attributes-style.html: Added.
WebCore:
Reviewed by Maciej.
- Removed special handling of attributes in the DOM. To match
WinIE, we used to make all attributes available as properties of
their elements in the DOM, but that has caused us more
compatibility woes than it has solved, so, after talking with Darin
and Maciej, I'm taking it out. (Firefox does not support it.)
A layout test regression caused by this change led me to do the
following as well:
- Implemented DOM properties missing on EMBED elements: align, height,
name, width, src, type. Since align, height, name, and width are
common to all plugin elements, I factored them and some other common
functionality out into a new abstract base class, HTMLPlugInElement.
- Removed extraneous attribute-to-style mappings on EMBED elements:
valign, border. Why they were there in the first place is a question
for the ages. Neither FF nor IE supports them.
* bindings/js/kjs_dom.cpp:
(KJS::getRuntimeObject):
* bindings/js/kjs_html.cpp:
(KJS::):
(KJS::JSHTMLElement::classInfo):
(KJS::JSHTMLElement::accessors):
(KJS::JSHTMLElement::embedGetter):
(KJS::JSHTMLElement::embedSetter):
* bindings/js/kjs_html.h:
(KJS::JSHTMLElement::):
* bindings/scripts/CodeGeneratorJS.pm:
* dom/Element.idl:
* html/html_objectimpl.cpp:
(WebCore::HTMLPlugInElement::HTMLPlugInElement):
(WebCore::HTMLPlugInElement::align):
(WebCore::HTMLPlugInElement::setAlign):
(WebCore::HTMLPlugInElement::height):
(WebCore::HTMLPlugInElement::setHeight):
(WebCore::HTMLPlugInElement::name):
(WebCore::HTMLPlugInElement::setName):
(WebCore::HTMLPlugInElement::width):
(WebCore::HTMLPlugInElement::setWidth):
(WebCore::HTMLPlugInElement::mapToEntry):
(WebCore::HTMLPlugInElement::parseMappedAttribute):
(WebCore::HTMLPlugInElement::checkDTD):
(WebCore::HTMLAppletElement::HTMLAppletElement):
(WebCore::HTMLAppletElement::~HTMLAppletElement):
(WebCore::HTMLAppletElement::parseMappedAttribute):
(WebCore::HTMLAppletElement::insertedIntoDocument):
(WebCore::HTMLAppletElement::removedFromDocument):
(WebCore::HTMLAppletElement::getInstance):
(WebCore::HTMLAppletElement::closeRenderer):
(WebCore::HTMLAppletElement::detach):
(WebCore::HTMLEmbedElement::HTMLEmbedElement):
(WebCore::HTMLEmbedElement::~HTMLEmbedElement):
(WebCore::HTMLEmbedElement::getInstance):
(WebCore::HTMLEmbedElement::mapToEntry):
(WebCore::HTMLEmbedElement::parseMappedAttribute):
(WebCore::HTMLEmbedElement::attach):
(WebCore::HTMLEmbedElement::detach):
(WebCore::HTMLEmbedElement::insertedIntoDocument):
(WebCore::HTMLEmbedElement::removedFromDocument):
(WebCore::HTMLEmbedElement::src):
(WebCore::HTMLEmbedElement::setSrc):
(WebCore::HTMLEmbedElement::type):
(WebCore::HTMLEmbedElement::setType):
(WebCore::HTMLObjectElement::HTMLObjectElement):
(WebCore::HTMLObjectElement::~HTMLObjectElement):
(WebCore::HTMLObjectElement::getInstance):
(WebCore::HTMLObjectElement::parseMappedAttribute):
(WebCore::HTMLObjectElement::rendererIsNeeded):
(WebCore::HTMLObjectElement::attach):
(WebCore::HTMLObjectElement::closeRenderer):
(WebCore::HTMLObjectElement::detach):
(WebCore::HTMLObjectElement::insertedIntoDocument):
(WebCore::HTMLObjectElement::removedFromDocument):
(WebCore::HTMLObjectElement::recalcStyle):
* html/html_objectimpl.h:
(WebCore::HTMLPlugInElement::endTagRequirement):
(WebCore::HTMLAppletElement::tagPriority):
(WebCore::HTMLEmbedElement::tagPriority):
(WebCore::HTMLObjectElement::tagPriority):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14069
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Tue, 25 Apr 2006 22:42:04 +0000 (22:42 +0000)]
Reviewed by Eric.
<rdar://problem/
4526120> -[WebBasePluginPackage finalize] leaks the CFBundle (under GC only)
* Plugins/WebBasePluginPackage.m:
(-[WebBasePluginPackage finalize]):
Release the CFBundle here.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14068
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Tue, 25 Apr 2006 22:35:33 +0000 (22:35 +0000)]
Reviewed by Maciej.
Fix for <rdar://problem/
4518632> getComputedStyle returns 'auto'
for dimensions like 'margin-left'
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): For
margin and padding, to match Firefox we now go to the renderer to
get the property value instead of calling valueForLength() on the
style attribute. valueForLength() will return the string 'auto' if
that was what was specified in the CSS, or a percentage if it was
specified as a percent. But to match Firefox, we always want to
return a pixel value for margin and padding.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14067
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 25 Apr 2006 21:26:50 +0000 (21:26 +0000)]
2006-04-26 Mitz Pettel <opendarwin.org@mitzpettel.com>
Reviewed by hyatt. Landed by eseidel.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8549
Enable detection of excessive repainting with DumpRenderTree
* DumpRenderTree/DumpRenderTree.m:
(-[LayoutTestController display]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14061
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Tue, 25 Apr 2006 21:24:57 +0000 (21:24 +0000)]
Reviewed by Geoff.
<rdar://problem/
4472037>
Private extensions to the WebPlugin interface. A plugin may implement these methods to receive loading callbacks
for its main resource. Plug-ins that implement this SPI show better loading progress in the browser, can be saved
to disk, and are more efficient by avoiding making duplicate GET or POST requests for the plug-in's main resource.
I want to provide a solid API for plug-in networking, but time constraints require that I first provide this simple
SPI for internal clients.
* Plugins/WebPluginViewFactoryPrivate.h:
Added a new plugin argument, WebPlugInShouldLoadMainResourceKey. If YES, the plugin is responsible
for loading its own content. If NO, the plugin should wait for WebKit to send it the data via the
new request-sharing SPI.
* Plugins/WebPluginPrivate.h: Added.
Request-sharing SPI. See comments in code.
* Plugins/WebPluginDocumentView.h:
Hang onto the plugin view as an ivar so we can call the new resource loading methods on it.
* Plugins/WebPluginDocumentView.m:
(-[WebPluginDocumentView dealloc]):
Release pluginView ivar.
(-[WebPluginDocumentView setDataSource:]):
Pass NO for WebPlugInShouldLoadMainResourceKey to indicate to the plugin that it should not
load its own main resource -- the data will come from WebKit. This is only necessary for plugin
documents. By the time we create the view for a plugin document, we already have fetched some
of its main resource's data. Embedded plugins do not have this issue because WebKit is not
involved in loading their content.
Call -webPlugInMainResourceDidReceivResponse: on the plugin if necessary. This lets the plugin
know how much and what kind of data is going to be received.
(-[WebPluginDocumentView dataSourceUpdated:]):
If the plugin implements the new request-sharing SPI, don't cancel the in-progress request.
(-[WebPluginDocumentView receivedData:withDataSource:]):
Forward to the plugin via the new request-sharing SPI.
(-[WebPluginDocumentView receivedError:withDataSource:]):
ditto
(-[WebPluginDocumentView finishedLoadingWithDataSource:]):
ditto
* Plugins/WebPluginPackage.m:
Added WebPlugInShouldLoadMainResourceKey, tweaked some style a bit.
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge pluginViewWithPackage:attributeNames:attributeValues:baseURL:]):
Pass YES for WebPlugInShouldLoadMainResourceKey. Embedded plugins must load their own data.
(-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
ditto
* WebKit.xcodeproj/project.pbxproj:
Added WebPluginPrivate.h
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14060
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 25 Apr 2006 21:23:53 +0000 (21:23 +0000)]
2006-04-26 Mitz Pettel <opendarwin.org@mitzpettel.com>
Reviewed by darin. Landed by eseidel.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8452
mangleme(0x58c22e11): Random crashes
Test: fast/frames/empty-cols-attribute.html
* platform/StringImpl.cpp:
(WebCore::StringImpl::toLengthArray): If the string is empty, return 0
but set len to 1. This gives the same behavior you get if you don't specify
the attribute at all, matching WinIE and Firefox. Previously, the empty
string resulted in len being set to 0 (and a memory smasher in
RenderFrameSet::layout()).
* rendering/render_frames.cpp:
(WebCore::RenderFrameSet::layout): Added an assert.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14059
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 25 Apr 2006 21:22:40 +0000 (21:22 +0000)]
2006-04-26 Oliver Hunt <ojh16@student.canterbury.ac.nz>
Reviewed by eseidel. Landed by eseidel.
* WebCore.xcodeproj/project.pbxproj:
* kcanvas/KCanvasFilters.cpp:
(WebCore::operator<<):
* kcanvas/KCanvasFilters.h:
(WebCore::KCComponentTransferFunction::KCComponentTransferFunction):
* kcanvas/device/quartz/KCanvasFilterQuartz.h:
* kcanvas/device/quartz/KCanvasFilterQuartz.mm:
(WebCore::getVectorForChannel):
(WebCore::genImageFromTable):
(WebCore::filterForComponentFunc):
(WebCore::setParametersForComponentFunc):
(WebCore::getFilterForFunc):
(WebCore::KCanvasFEComponentTransferQuartz::getFunctionFilter):
(WebCore::KCanvasFEComponentTransferQuartz::getCIFilter):
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
(WebCore::KRenderingDeviceQuartz::createFilterEffect):
* kcanvas/device/quartz/filters/WKComponentMergeFilter.cikernel: Added.
* kcanvas/device/quartz/filters/WKComponentMergeFilter.h: Added.
* kcanvas/device/quartz/filters/WKComponentMergeFilter.m: Added.
(+[WKComponentMergeFilter initialize]):
(+[WKComponentMergeFilter filterWithName:]):
(-[WKComponentMergeFilter init]):
(-[WKComponentMergeFilter outputImage]):
* kcanvas/device/quartz/filters/WKDiscreteTransferFilter.cikernel: Added.
* kcanvas/device/quartz/filters/WKDiscreteTransferFilter.h: Added.
* kcanvas/device/quartz/filters/WKDiscreteTransferFilter.m: Added.
(+[WKDiscreteTransferFilter initialize]):
(+[WKDiscreteTransferFilter filterWithName:]):
(-[WKDiscreteTransferFilter init]):
(-[WKDiscreteTransferFilter outputImage]):
* kcanvas/device/quartz/filters/WKGammaTransferFilter.cikernel: Added.
* kcanvas/device/quartz/filters/WKGammaTransferFilter.h: Added.
* kcanvas/device/quartz/filters/WKGammaTransferFilter.m: Added.
(+[WKGammaTransferFilter initialize]):
(+[WKGammaTransferFilter filterWithName:]):
(-[WKGammaTransferFilter init]):
(-[WKGammaTransferFilter outputImage]):
* kcanvas/device/quartz/filters/WKIdentityTransferFilter.h: Added.
* kcanvas/device/quartz/filters/WKIdentityTransferFilter.m: Added.
(+[WKIdentityTransferFilter initialize]):
(+[WKIdentityTransferFilter filterWithName:]):
(-[WKIdentityTransferFilter init]):
(-[WKIdentityTransferFilter outputImage]):
* kcanvas/device/quartz/filters/WKLinearTransferFilter.cikernel: Added.
* kcanvas/device/quartz/filters/WKLinearTransferFilter.h: Added.
* kcanvas/device/quartz/filters/WKLinearTransferFilter.m: Added.
(+[WKLinearTransferFilter initialize]):
(+[WKLinearTransferFilter filterWithName:]):
(-[WKLinearTransferFilter init]):
(-[WKLinearTransferFilter outputImage]):
* kcanvas/device/quartz/filters/WKTableTransferFilter.cikernel: Added.
* kcanvas/device/quartz/filters/WKTableTransferFilter.h: Added.
* kcanvas/device/quartz/filters/WKTableTransferFilter.m: Added.
(+[WKTableTransferFilter initialize]):
(+[WKTableTransferFilter filterWithName:]):
(-[WKTableTransferFilter init]):
(-[WKTableTransferFilter outputImage]):
* ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
(SVGComponentTransferFunctionElement::parseMappedAttribute):
(SVGComponentTransferFunctionElement::transferFunction):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14058
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 25 Apr 2006 19:32:34 +0000 (19:32 +0000)]
2006-04-25 Eric Seidel <eseidel@apple.com>
Reviewed by ggaren.
Fixes for our 3rd and 5th most common crashtracers:
<rdar://problem/
4233435> CrashTracer: 2698 crashes in Safari at com.apple.WebCore: khtml::RenderBlock::addChildToFlow + 156
<rdar://problem/
4129744> [REGRESSION]CrashTracer: ..400 crashes at com.apple.WebCore: DOM::NodeImpl::createRendererIfNeeded + 44
Test case landed on trunk but not on branch.
* khtml/xml/dom_docimpl.cpp:
(DocumentImpl::setFocusNode): use m_inDetach bool copied from trunk
* khtml/xml/dom_nodeimpl.cpp:
(NodeImpl::NodeImpl):
(NodeImpl::detach): set m_inDetach
(NodeImpl::createRendererIfNeeded):
(NodeBaseImpl::removeChildren): remove node from tree before calling detach.
* khtml/xml/dom_nodeimpl.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14054
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 25 Apr 2006 18:53:06 +0000 (18:53 +0000)]
changelog fixup
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14052
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Tue, 25 Apr 2006 18:38:34 +0000 (18:38 +0000)]
Reviewed by Adele.
- don't have a fini method, since trying to call it will actually call the subclass method
and mess up the bridge count.
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge dealloc]):
(-[WebCoreFrameBridge finalize]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14051
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken [Tue, 25 Apr 2006 17:59:35 +0000 (17:59 +0000)]
2006-04-25 Steve Falkenburg <sfalkenburg@apple.com>
Reviewed by eseidel.
No test case needed
* platform/win/TemporaryLinkStubs.cpp:
(KWQFileButton::setFrameGeometry):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14049
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 25 Apr 2006 08:51:32 +0000 (08:51 +0000)]
2006-04-25 Eric Seidel <eseidel@apple.com>
Reviewed by mjs.
Fix reproducible crash in html parser code.
http://bugzilla.opendarwin.org/show_bug.cgi?id=7137
Test: fast/parser/remove-current-node-parent.html
* html/HTMLParser.cpp:
(WebCore::HTMLParser::handleError):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14048
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Tue, 25 Apr 2006 08:11:15 +0000 (08:11 +0000)]
Reviewed by Eric.
- fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=8575
New KWQFileButton leaks reported by buildbot
* kwq/KWQFileButton.mm:
(KWQFileButton::KWQFileButton): Add a missing release
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14047
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Tue, 25 Apr 2006 07:18:25 +0000 (07:18 +0000)]
Fix for 8336, focus ring redrawing on top of itself. Make sure
not to include empty rects when doing the focus ring drawing, since
that results in a draw with no clip set.
Reviewed by adele
* platform/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContext::drawFocusRing):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14046
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 25 Apr 2006 05:24:21 +0000 (05:24 +0000)]
2006-04-24 Eric Seidel <eseidel@apple.com>
Reviewed by ggaren.
Fix for 5th worst unresolved crasher:
<rdar://problem/
4129744> [REGRESSION]CrashTracer: ..400 crashes at com.apple.WebCore: DOM::NodeImpl::createRendererIfNeeded + 44
Test: fast/dom/remove-style-element.html
* dom/ContainerNode.cpp:
(WebCore::ContainerNode::removeChildren):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14045
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Tue, 25 Apr 2006 05:01:03 +0000 (05:01 +0000)]
Reviewed by Geoff.
<rdar://problem/
4525364> REGRESSION (yesterday?): LOG() mechanism is broken
- initialize WebKit's log channels
* Misc/WebKitLogging.h:
* Misc/WebKitLogging.m:
(initializeLogChannel):
(WebKitInitializeLoggingChannelsIfNecessary):
* WebView/WebPreferences.m:
(+[WebPreferences initialize]):
* WebView/WebView.m:
(-[WebView _commonInitializationWithFrameName:groupName:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14044
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 25 Apr 2006 05:00:39 +0000 (05:00 +0000)]
2006-04-24 Eric Seidel <eseidel@apple.com>
Reviewed by mjs.
Speculative fix for our 7th worst crasher.
Also added ASSERTs to help us better understand the issue.
<rdar://problem/
4153404> CrashTracer: 2412 crashes in Safari at com.apple.WebCore: khtml::RenderStyle::RenderStyle[unified] + 44
* dom/Document.cpp:
(WebCore::Document::recalcStyle):
(WebCore::Document::setInPageCache):
* dom/Document.h:
* dom/Element.cpp:
(WebCore::Element::recalcStyle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14043
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Tue, 25 Apr 2006 00:30:13 +0000 (00:30 +0000)]
Reviewed by Hyatt.
Fix for <rdar://problem/
4503438> REGRESSION (NativeTextField): Can't insert caret when
selection is active in field (Business/Unit)
* css/html4.css: Added -webkit-user-select:text for input elements.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14042
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Tue, 25 Apr 2006 00:22:40 +0000 (00:22 +0000)]
WebCore:
Build fix:
- move some prematurely code back
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge fini]):
WebKit:
Build fix:
- move some prematurely code back
* WebCoreSupport/WebFrameBridge.h:
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge fini]):
(-[WebFrameBridge _preferences]):
(-[WebFrameBridge _retrieveKeyboardUIModeFromPreferences:]):
(-[WebFrameBridge keyboardUIMode]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14041
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 24 Apr 2006 22:56:25 +0000 (22:56 +0000)]
WebCore:
Reviewed by Darin.
- move more code from WebFrameBridge to WebCoreFrameBridge
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge domain]):
(-[WebCoreFrameBridge canTargetLoadInFrame:]):
(-[WebCoreFrameBridge fini]):
(-[WebCoreFrameBridge dealloc]):
(-[WebCoreFrameBridge finalize]):
(_getPreSmartSet):
(_getPostSmartSet):
(-[WebCoreFrameBridge isCharacterSmartReplaceExempt:isPreviousCharacter:]):
(-[WebCoreFrameBridge _retrieveKeyboardUIModeFromPreferences:]):
(-[WebCoreFrameBridge keyboardUIMode]):
WebKit:
Reviewed by Darin.
- move more code from WebFrameBridge to WebCoreFrameBridge
* WebCoreSupport/WebFrameBridge.h:
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge fini]):
(-[WebFrameBridge expiresTimeForResponse:]):
(-[WebFrameBridge loadURL:referrer:reload:userGesture:target:triggeringEvent:form:formValues:]):
(-[WebFrameBridge postWithURL:referrer:target:data:contentType:triggeringEvent:form:formValues:]):
(-[WebFrameBridge valueForKey:keys:values:]):
(-[WebFrameBridge _preferences]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14038
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Mon, 24 Apr 2006 21:59:55 +0000 (21:59 +0000)]
Reviewed by Tim O.
Fix to send textFieldDidBeginEditing on the first editing change instead of on focus.
This matches our old behavior.
* html/HTMLInputElement.cpp: (WebCore::HTMLInputElement::dispatchFocusEvent):
* rendering/RenderTextField.cpp: (WebCore::RenderTextField::subtreeHasChanged):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14036
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Mon, 24 Apr 2006 21:10:19 +0000 (21:10 +0000)]
LayoutTests:
Reviewed by Maciej.
* fast/dom/prototype-chain-expected.txt: Updated now that 'JS' is
no longer used as a prefix when serializing DOM elements to string.
* fast/events/event-view-toString.html: ditto
WebCore:
Reviewed by Eric.
Fix for <rdar://problem/
4513383> REGRESSION: Crash in
WebCore::shouldEmitTabBeforeNode() when iterating through document
text
* editing/TextIterator.cpp:
(WebCore::shouldEmitTabBeforeNode): Need to nil-check the renderer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14035
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Mon, 24 Apr 2006 18:50:02 +0000 (18:50 +0000)]
Reviewed by Eric.
Fix for <rdar://problem/
4513383> REGRESSION: Crash in
WebCore::shouldEmitTabBeforeNode() when iterating through document
text
* editing/TextIterator.cpp:
(WebCore::shouldEmitTabBeforeNode): Need to nil-check the renderer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14033
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 24 Apr 2006 09:30:56 +0000 (09:30 +0000)]
Reviewed by Anders.
- Remove use of _webSuperviewOfClass: and related
http://bugzilla.opendarwin.org/show_bug.cgi?id=8562
I removed all use of these, now objects get at each other via
actual pointers, not using the view hierarchy. However, I left two
of the calls in because other clients rely on them as SPI (ugh).
* History/WebHistoryItem.m:
* Misc/WebNSViewExtras.h:
* Misc/WebNSViewExtras.m:
(-[NSView _web_superviewOfClass:]):
(-[NSView _web_parentWebFrameView]):
* Plugins/WebNetscapePluginDocumentView.m:
(-[WebNetscapePluginDocumentView layout]):
* Plugins/WebNetscapePluginEmbeddedView.h:
* Plugins/WebNetscapePluginEmbeddedView.m:
(-[WebNetscapePluginEmbeddedView setWebFrame:]):
(-[WebNetscapePluginEmbeddedView dataSource]):
* Plugins/WebNullPluginView.h:
* Plugins/WebNullPluginView.m:
(-[WebNullPluginView setWebFrame:]):
(-[WebNullPluginView viewDidMoveToWindow]):
* Plugins/WebPluginController.h:
* Plugins/WebPluginController.m:
(-[WebPluginController setDataSource:]):
(-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
(-[WebPluginController webPlugInContainerShowStatus:]):
(-[WebPluginController webPlugInContainerSelectionColor]):
(-[WebPluginController webFrame]):
* Plugins/WebPluginDocumentView.h:
* Plugins/WebPluginDocumentView.m:
(-[WebPluginDocumentView setDataSource:]):
(-[WebPluginDocumentView layout]):
(-[WebPluginDocumentView currentWindow]):
(-[WebPluginDocumentView viewWillMoveToWindow:]):
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge formControlIsBecomingFirstResponder:]):
(-[WebFrameBridge formControlIsResigningFirstResponder:]):
(-[WebFrameBridge viewForPluginWithURL:attributeNames:attributeValues:MIMEType:]):
* WebCoreSupport/WebViewFactory.m:
(-[WebViewFactory bridgeForView:]):
* WebView/WebClipView.m:
(-[NSView initWithFrame:]):
* WebView/WebFrameView.m:
(-[WebFrameView _shouldDrawBorder]):
(-[WebFrameView webCoreBridge]):
* WebView/WebHTMLView.m:
(-[WebTextCompleteController dealloc]):
(-[WebHTMLView _dataSource]):
(-[WebHTMLView _bridge]):
(-[WebHTMLView _webView]):
(-[WebHTMLView _frameView]):
(-[WebHTMLView _web_firstResponderCausesFocusDisplay]):
(-[NSArray becomeFirstResponder]):
(-[NSArray setDataSource:]):
(-[NSArray pageUp:]):
(-[NSArray pageDown:]):
(-[NSArray pageUpAndModifySelection:]):
(-[NSArray pageDownAndModifySelection:]):
(-[WebHTMLView _frame]):
* WebView/WebHTMLViewInternal.h:
* WebView/WebImageView.h:
* WebView/WebImageView.m:
(-[WebImageView drawRect:]):
(-[WebImageView adjustFrameSize]):
(-[WebImageView setDataSource:]):
(-[WebImageView webView]):
(-[WebImageView writeImageToPasteboard:types:]):
(-[WebImageView copy:]):
(-[WebImageView elementAtPoint:]):
(-[WebImageView mouseDragged:]):
* WebView/WebPDFView.h:
* WebView/WebPDFView.m:
(-[WebPDFView _applyPDFDefaults]):
(-[WebPDFView _trackFirstResponder]):
(-[PDFPrefUpdatingProxy forwardInvocation:]):
* WebView/WebRenderNode.m:
(-[WebRenderNode initWithWebFrameView:]):
* WebView/WebTextView.h:
* WebView/WebTextView.m:
(-[WebTextView _textSizeMultiplierFromWebView]):
(-[WebTextView _preferences]):
(-[WebTextView setDataSource:]):
(-[WebTextView _webFrame]):
(-[WebTextView dragSelectionWithEvent:offset:slideBack:]):
(-[WebTextView menuForEvent:]):
(-[WebTextView resignFirstResponder]):
(-[WebTextView drawPageBorderWithSize:]):
(-[WebTextView knowsPageRange:]):
* WebView/WebView.m:
(-[WebView searchFor:direction:caseSensitive:wrap:]):
(containingFrameView):
(-[WebView _focusedFrame]):
(-[WebView _frameViewAtWindowPoint:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14032
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Mon, 24 Apr 2006 04:58:53 +0000 (04:58 +0000)]
Reviewed by Darin.
- Took the larger snippets of C++ in the code generator and broke
them into HERE documents in the hopes of improving readability.
* bindings/scripts/CodeGeneratorJS.pm: I indented variable names
level with their corresponding HERE documents to clearly
"sandwich" the HERE documents between opening and closing EOF
statements.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14031
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Mon, 24 Apr 2006 03:47:00 +0000 (03:47 +0000)]
WebCore:
Reviewed by Darin.
- push WebFileButton and WebStringTruncator code down to WebCore
http://bugzilla.opendarwin.org/show_bug.cgi?id=8552
* WebCore.exp:
* WebCore.xcodeproj/project.pbxproj:
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreStringTruncator.h: Added.
* bridge/mac/WebCoreStringTruncator.mm: Added.
(stringWidth):
(truncateString):
(+[WebCoreStringTruncator widthOfString:font:]):
* bridge/mac/WebCoreViewFactory.h:
* kwq/KWQFileButton.h:
* kwq/KWQFileButton.mm:
(-[WebFileChooserButton initWithWidget::]):
(-[WebCoreFileButton positionButton]):
(-[WebCoreFileButton initWithWidget:]):
(-[WebCoreFileButton initWithFrame:]):
(-[WebCoreFileButton dealloc]):
(-[WebCoreFileButton isFlipped]):
(-[WebCoreFileButton drawRect:]):
(-[WebCoreFileButton updateLabel]):
(-[WebCoreFileButton setFilename:]):
(-[WebCoreFileButton filename]):
(-[WebCoreFileButton setFrameSize:]):
(-[WebCoreFileButton bestVisualFrameSizeForCharacterCount:]):
(-[WebCoreFileButton visualFrame]):
(-[WebCoreFileButton setVisualFrame:]):
(-[WebCoreFileButton baseline]):
(-[WebCoreFileButton beginSheet]):
(-[WebCoreFileButton chooseFilename:]):
(-[WebCoreFileButton cancel]):
(-[WebCoreFileButton chooseButtonPressed:]):
(-[WebCoreFileButton mouseDown:]):
(-[WebCoreFileButton acceptsFirstResponder]):
(-[WebCoreFileButton becomeFirstResponder]):
(-[WebCoreFileButton nextKeyView]):
(-[WebCoreFileButton previousKeyView]):
(-[WebCoreFileButton nextValidKeyView]):
(-[WebCoreFileButton previousValidKeyView]):
(-[WebCoreFileButton performClick]):
(-[WebFileChooserButton initWithWidget:]):
(-[WebFileChooserButton nextValidKeyView]):
(-[WebFileChooserButton previousValidKeyView]):
(-[WebFileChooserButton resignFirstResponder]):
(KWQFileButton::KWQFileButton):
(KWQFileButton::setFilename):
(KWQFileButton::click):
(KWQFileButton::sizeForCharacterWidth):
(KWQFileButton::frameGeometry):
(KWQFileButton::setFrameGeometry):
(KWQFileButton::baselinePosition):
(KWQFileButton::filenameChanged):
WebKit:
Reviewed by Darin.
- push WebFileButton and WebStringTruncator code down to WebCore
http://bugzilla.opendarwin.org/show_bug.cgi?id=8552
* Misc/WebStringTruncator.m:
(+[WebStringTruncator centerTruncateString:toWidth:]):
(+[WebStringTruncator centerTruncateString:toWidth:withFont:]):
(+[WebStringTruncator rightTruncateString:toWidth:withFont:]):
(+[WebStringTruncator widthOfString:font:]):
* WebCoreSupport/WebFileButton.h: Removed.
* WebCoreSupport/WebFileButton.m: Removed.
* WebCoreSupport/WebFrameBridge.h:
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge runOpenPanelForFileButtonWithResultListener:]):
* WebCoreSupport/WebViewFactory.m:
(-[WebViewFactory fileButtonChooseFileLabel]):
(-[WebViewFactory fileButtonNoFileSelectedLabel]):
* WebKit.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14030
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sun, 23 Apr 2006 23:11:40 +0000 (23:11 +0000)]
WebCore:
Reviewed by Eric.
- remove WebCoreCookieAdapter, instead make mac implementation of
CookieJar use Foundation directly.
* WebCore.exp:
* WebCore.xcodeproj/project.pbxproj:
* platform/mac/CookieJar.mm:
(WebCore::cookies):
(WebCore::setCookies):
(WebCore::cookiesEnabled):
* platform/mac/WebCoreCookieAdapter.h: Removed.
* platform/mac/WebCoreCookieAdapter.m: Removed.
WebKit:
Reviewed by Eric.
- remove WebCookieAdapter, WebCore can just use Foundation directly.
* WebCoreSupport/WebCookieAdapter.h: Removed.
* WebCoreSupport/WebCookieAdapter.m: Removed.
* WebKit.xcodeproj/project.pbxproj:
* WebView/WebFrameView.m:
(-[WebFrameView initWithFrame:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14029
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sun, 23 Apr 2006 23:09:10 +0000 (23:09 +0000)]
Reviewed by Adele.
- prune WebView SPI of unused calls
Specifically I moved methods that have no callers outside WebKit
to WebViewInternal.h or removed them entirely.
* DefaultDelegates/WebDefaultContextMenuDelegate.m:
* Plugins/WebBaseNetscapePluginView.m:
* Plugins/WebNetscapePluginDocumentView.m:
* Plugins/WebNetscapePluginStream.m:
* Plugins/WebNullPluginView.m:
* Plugins/WebPluginContainerCheck.m:
* Plugins/WebPluginController.m:
* WebCoreSupport/WebFrameBridge.m:
* WebCoreSupport/WebPageBridge.m:
* WebCoreSupport/WebSubresourceLoader.m:
* WebView/WebDataSource.m:
* WebView/WebHTMLView.m:
* WebView/WebImageView.m:
* WebView/WebLoader.m:
* WebView/WebMainResourceLoader.m:
* WebView/WebPDFView.m:
* WebView/WebScriptDebugDelegate.m:
* WebView/WebView.m:
(-[WebView _downloadURL:]):
* WebView/WebViewInternal.h:
* WebView/WebViewPrivate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14028
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 23 Apr 2006 22:57:22 +0000 (22:57 +0000)]
2006-04-21 Rob Buis <buis@kde.org>
Reviewed by hyatt. Landed by eseidel.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8170:
SVG CSS property values with extra items do not get treated
as invalid (they should)
Fixes the handling of invalid svg css properties similar
to how invalid html css properties are handled, ie. discard
the property if there are more values in the value list than
expected.
Test: svg/custom/invalid-css.svg
* ksvg2/css/SVGCSSParser.cpp:
(WebCore::CSSParser::parseSVGValue):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14027
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 23 Apr 2006 22:45:07 +0000 (22:45 +0000)]
2006-04-23 Michael Emmel <mike.emmel@gmail.com>
Reviewed by mjs. Landed by eseidel.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8517
No test necessary, no functional change.
* DerivedSources.make: use VPATH more consistently.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14026
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 23 Apr 2006 22:39:07 +0000 (22:39 +0000)]
2006-04-21 Jon Shier <jshier@iastate.edu>
Reviewed by ggaren. Landed by eseidel.
- Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8511
onerror JS property does not register listener properly
* ChangeLog:
* bindings/js/kjs_dom.cpp:
(KJS::DOMEventTargetNode::getValueProperty): changed khtmlErrorEvent to errorEvent.
(KJS::DOMEventTargetNode::putValueProperty): ditto.
* bindings/js/kjs_window.cpp:
(KJS::Window::getValueProperty): ditto.
(KJS::Window::put):
* dom/EventNames.h: Removed khtmlError macro.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14025
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Sun, 23 Apr 2006 19:16:26 +0000 (19:16 +0000)]
Reviewed by Darin.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=6905
DumpRenderTree needs a way to force painting (to allow invalidation tests)
* DumpRenderTree/DumpRenderTree.m:
(dump): If display() has been called during the test, grab the pixels from
the view, after letting it repaint invalidated rects.
(+[LayoutTestController isSelectorExcludedFromWebScript:]):
(-[LayoutTestController display]): Added. Calls -display on the view
and changes the subsequent behavior of dump().
(dumpRenderTree):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14024
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Sun, 23 Apr 2006 09:19:29 +0000 (09:19 +0000)]
2006-04-23 Eric Seidel <eseidel@apple.com>
Reviewed by hyatt.
Reproducible crasher with <li value=
1234567890 type=A>
http://bugzilla.opendarwin.org/show_bug.cgi?id=8542
Fixed our alphabetical list generation to match WinIE (not FireFox)
Previously our alphabetical lists were completely wrong past 26 items.
Tests:
* fast/lists/alpha-list-wrap.html
* fast/lists/li-style-alpha-huge-value-crash.html
* rendering/render_list.cpp:
(WebCore::toLetterString):
(WebCore::toHebrew):
(WebCore::RenderListMarker::calcMinMaxWidth):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14023
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sun, 23 Apr 2006 04:23:28 +0000 (04:23 +0000)]
Geoff seems to have checked in the change log, but not the updated result.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14022
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sun, 23 Apr 2006 01:52:37 +0000 (01:52 +0000)]
Reviewed by Eric.
- remove WebKit copy of assertions code, use the assertions
stuff from JavaScriptCore instead.
* Carbon/HIViewAdapter.m:
* DOM/WebDOMOperations.m:
* DefaultDelegates/WebDefaultContextMenuDelegate.m:
* DefaultDelegates/WebDefaultPolicyDelegate.m:
(-[WebDefaultPolicyDelegate webView:unableToImplementPolicyWithError:frame:]):
* History/WebBackForwardList.m:
* History/WebHistory.m:
(-[WebHistoryPrivate _loadHistoryGuts:URL:error:]):
(-[WebHistoryPrivate _saveHistoryGuts:URL:error:]):
* History/WebHistoryItem.m:
* Misc/WebAssertions.h: Removed.
* Misc/WebAssertions.m: Removed.
* Misc/WebDatabase.m:
* Misc/WebDownload.m:
* Misc/WebFileDatabase.m:
(SetThreadPriority):
* Misc/WebIconDatabase.m:
(-[NSMutableDictionary iconForURL:withSize:cache:]):
(-[NSMutableDictionary releaseIconForURL:]):
(-[NSMutableDictionary delayDatabaseCleanup]):
(-[NSMutableDictionary allowDatabaseCleanup]):
(-[WebIconDatabase _loadIconDictionaries]):
(-[WebIconDatabase _updateFileDatabase]):
(-[WebIconDatabase _iconsBySplittingRepresentationsOfIcon:]):
* Misc/WebIconLoader.m:
* Misc/WebKitLogging.h:
* Misc/WebKitLogging.m:
* Misc/WebKitSystemBits.m:
(initCapabilities):
* Misc/WebLRUFileList.m:
(WebLRUFileListRemoveOldestFileFromList):
(WebLRUFileListGetFileSize):
* Misc/WebLocalizableStrings.m:
* Misc/WebNSCalendarDateExtras.m:
* Misc/WebNSDataExtras.m:
* Misc/WebNSDictionaryExtras.m:
* Misc/WebNSFileManagerExtras.m:
* Misc/WebNSPasteboardExtras.m:
* Misc/WebNSURLExtras.m:
(hexDigit):
(hexDigitValue):
(allCharactersInIDNScriptWhiteList):
* Misc/WebNSURLRequestExtras.m:
* Misc/WebNSUserDefaultsExtras.m:
* Misc/WebStringTruncator.m:
* Panels/WebAuthenticationPanel.m:
(-[WebAuthenticationPanel loadNib]):
* Panels/WebPanelAuthenticationHandler.m:
* Plugins/WebBaseNetscapePluginStream.m:
(-[WebBaseNetscapePluginStream startStreamResponseURL:expectedContentLength:lastModifiedDate:MIMEType:]):
(-[WebBaseNetscapePluginStream finishedLoadingWithData:]):
* Plugins/WebBaseNetscapePluginView.m:
(TSMEventHandler):
(-[WebBaseNetscapePluginView start]):
(-[WebBaseNetscapePluginView status:]):
(-[WebBaseNetscapePluginView _printedPluginBitmap]):
* Plugins/WebBasePluginPackage.m:
* Plugins/WebNetscapePluginDocumentView.m:
* Plugins/WebNetscapePluginPackage.m:
(-[WebNetscapePluginPackage load]):
* Plugins/WebNetscapePluginRepresentation.m:
* Plugins/WebPluginContainerCheck.m:
* Plugins/WebPluginController.m:
(-[WebPluginController addPlugin:]):
(-[WebPluginController webPlugInContainerLoadRequest:inFrame:]):
(-[WebPluginController webPlugInContainerShowStatus:]):
* Plugins/WebPluginDatabase.m:
* Plugins/WebPluginDocumentView.m:
* WebCoreSupport/WebCookieAdapter.m:
* WebCoreSupport/WebFileButton.m:
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge runModal]):
* WebCoreSupport/WebImageData.m:
(-[WebImageData _checkSolidColor:]):
(-[WebImageData tileInRect:fromPoint:context:]):
(-[WebImageData scaleAndTileInRect:fromRect:withHorizontalTileRule:withVerticalTileRule:context:]):
* WebCoreSupport/WebImageDecoder.m:
* WebCoreSupport/WebImageRenderer.m:
(-[WebImageRenderer TIFFRepresentation]):
* WebCoreSupport/WebImageRendererFactory.m:
* WebCoreSupport/WebJavaScriptTextInputPanel.m:
* WebCoreSupport/WebKeyGenerator.m:
* WebCoreSupport/WebPageBridge.m:
* WebCoreSupport/WebSubresourceLoader.m:
* WebCoreSupport/WebTextRenderer.m:
(widthForGlyph):
(-[WebTextRenderer initWithFont:]):
(drawGlyphs):
(initializeATSUStyle):
(createATSULayoutParameters):
(getTextBounds):
(ATSU_draw):
* WebCoreSupport/WebTextRendererFactory.m:
* WebCoreSupport/WebViewFactory.m:
* WebKit.exp:
* WebKit.xcodeproj/project.pbxproj:
* WebKitPrefix.h:
* WebView/WebArchiver.m:
(+[WebArchiver _archiveWithMarkupString:fromFrame:nodes:]):
* WebView/WebClipView.m:
* WebView/WebDataProtocol.m:
* WebView/WebDataSource.m:
(-[WebDataSource _startLoading]):
* WebView/WebFormDataStream.m:
(formEventCallback):
(webSetHTTPBody):
* WebView/WebFrame.m:
(-[WebFrame _transitionToCommitted:]):
* WebView/WebFrameView.m:
* WebView/WebHTMLRepresentation.m:
* WebView/WebHTMLView.m:
(-[WebHTMLView _lookUpInDictionaryFromMenu:]):
(-[NSArray drawSingleRect:]):
(-[NSArray namesOfPromisedFilesDroppedAtDestination:]):
(-[NSArray _scaleFactorForPrintOperation:]):
(-[NSArray deleteBackwardByDecomposingPreviousCharacter:]):
(-[NSArray checkSpelling:]):
(-[NSArray showGuessPanel:]):
(-[NSArray _changeSpellingToWord:]):
(-[NSArray ignoreSpelling:]):
(-[NSArray performFindPanelAction:]):
(-[WebTextCompleteController doCompletion]):
* WebView/WebImageView.m:
* WebView/WebLoader.m:
(-[NSURLProtocol connection:willCacheResponse:]):
* WebView/WebPDFRepresentation.m:
(+[WebPDFRepresentation PDFDocumentClass]):
* WebView/WebPDFView.m:
(+[WebPDFView PDFKitBundle]):
(+[WebPDFView PDFViewClass]):
(-[WebPDFView _menuItemsFromPDFKitForEvent:]):
* WebView/WebTextRepresentation.m:
* WebView/WebTextView.m:
* WebView/WebUnarchivingState.m:
* WebView/WebView.m:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14021
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Sat, 22 Apr 2006 23:48:23 +0000 (23:48 +0000)]
Reviewed by Eric.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8514
Bug 8514: Web Inspector hides when the app is in the background
Makes the inspector not hide in the background. Since the inspector is a floating panel
we need to call setFloatingPanel:NO when the app is switching into the background. Then
call setFloatingPanel:YES when the app is activated again. Without this the inspector
would float above all applications.
* WebInspector/WebInspector.m:
(-[NSWindow window]): setHidesOnDeactivate:NO
(-[NSWindow windowWillClose:]): de-regiser appliction active notifications
(-[NSWindow showWindow:]): register for appliction active notifications
(-[WebInspector _applicationWillResignActive]): setFloatingPanel:NO
(-[WebInspector _applicationDidBecomeActive]): setFloatingPanel:YES
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14020
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Sat, 22 Apr 2006 22:11:18 +0000 (22:11 +0000)]
LayoutTests:
Reviewed by Darin.
- Updated prototype chain expectation since DOMElement no longer
exists
* fast/dom/prototype-chain-expected.txt:
WebCore:
Reviewed by Darin.
- Finished autogeneration of Element
* bindings/js/kjs_dom.cpp: Removed DOMElement class
* bindings/js/kjs_dom.h: ditto
* bindings/scripts/CodeGeneratorJS.pm: added support for special
attribute lookup that elements do
* dom/Element.idl: added new attribute,
"IncludeAttributesInPropertyLookup," which tells the code generator
to include HTML element attributes in property lookup
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14014
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sat, 22 Apr 2006 22:01:09 +0000 (22:01 +0000)]
Reviewed by Maciej.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8529
Extra Qaulification in header
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8530
Missing assert.h include
* rendering/RenderObject.h: Removed erroneous RenderObject::
prefix from a member function name.
* rendering/RenderText.h: Removed erroneous RenderText::
prefix from a member function name.
* platform/Arena.cpp: Added <assert.h> to list of includes.
* platform/KURL.cpp: Ditto.
* platform/StringImpl.cpp: Ditto.
* platform/image-decoders/jpeg/JPEGImageDecoder.cpp: Ditto.
* platform/image-decoders/png/PNGImageDecoder.cpp: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14013
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sat, 22 Apr 2006 21:57:25 +0000 (21:57 +0000)]
* doc: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14012
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Sat, 22 Apr 2006 20:23:04 +0000 (20:23 +0000)]
Reviewed by Maciej.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8532
Update iExploder to 1.3.2
Test case numbers are not compatible with iExploder 1.2.
* Scripts/run-iexploder-tests: Print the numbers of the last five tests that were accessed.
* iExploder/CHANGELOG.txt: Added.
* iExploder/LICENSE.txt: Changed to a standard zlib/png license.
* iExploder/README.txt: Added some performance hints.
* iExploder/htdocs/config.rb: Added.
* iExploder/htdocs/cssproperties.in:
* iExploder/htdocs/cssvalues.in:
* iExploder/htdocs/htmlattrs.in:
* iExploder/htdocs/htmltags.in:
* iExploder/htdocs/iexploder.cgi:
- Updated to support the latest HTML & CSS tags, properties, and values from both
the WebKit and Mozilla CVS tree
- cssproperties.in cleanup
- Modularized the code a little bit.
- Fix subtest bug that was causing last 5 tags to be missed
- new subtest algorithm to deal better with larger tag counts
- default HTML_MAX_TAGS increased from 32 to 96
* iExploder/htdocs/index.html: Updated version to 1.3.2.
* iExploder/htdocs/webserver.rb: Added. New standalone webserver, can be used as an
alternative to our run-iexploder-tests.
* iExploder/tools/showtest.rb: Added. Similar to run-iexploder-tests --get.
* iExploder/htdocs/iexploder.rb: Added. Used by webserver.rb.
* iExploder/tools/osx_last_crash.rb: Find logs modified in the last two days.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14011
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Sat, 22 Apr 2006 20:07:16 +0000 (20:07 +0000)]
Commit Scripts/run-mangleme-tests (missed it the previous time).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14010
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Sat, 22 Apr 2006 19:04:45 +0000 (19:04 +0000)]
Reviewed by Eric.
- push down a bunch of WebCoreFrameBridge code to C++ (plus some reformatting)
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge isDescendantOfFrame:]):
(-[WebCoreFrameBridge traverseNextFrameStayWithin:]):
(-[WebCoreFrameBridge nextFrameWithWrap:]):
(-[WebCoreFrameBridge previousFrameWithWrap:]):
(+[WebCoreFrameBridge bridgeForDOMDocument:]):
(-[WebCoreFrameBridge parent]):
(-[WebCoreFrameBridge addData:]):
(-[WebCoreFrameBridge didNotOpenURL:pageCache:]):
(-[WebCoreFrameBridge restoreDocumentState]):
(-[WebCoreFrameBridge _stringWithDocumentTypeStringAndMarkupString:]):
(-[WebCoreFrameBridge nodesFromList:]):
(-[WebCoreFrameBridge markupStringFromNode:nodes:]):
(-[WebCoreFrameBridge markupStringFromRange:nodes:]):
(-[WebCoreFrameBridge rangeByExpandingSelectionWithGranularity:]):
(-[WebCoreFrameBridge rangeByAlteringCurrentSelection:direction:granularity:]):
(-[WebCoreFrameBridge alterCurrentSelection:direction:granularity:]):
(-[WebCoreFrameBridge rangeByAlteringCurrentSelection:verticalDistance:]):
(-[WebCoreFrameBridge alterCurrentSelection:verticalDistance:]):
(-[WebCoreFrameBridge replaceMarkedTextWithText:]):
(-[WebCoreFrameBridge replaceSelectionWithFragment:selectReplacement:smartReplace:matchStyle:]):
(-[WebCoreFrameBridge increaseSelectionListLevel]):
(-[WebCoreFrameBridge decreaseSelectionListLevel]):
(-[WebCoreFrameBridge insertLineBreak]):
(-[WebCoreFrameBridge insertParagraphSeparator]):
(-[WebCoreFrameBridge insertParagraphSeparatorInQuotedContent]):
(-[WebCoreFrameBridge insertText:selectInsertedText:]):
(-[WebCoreFrameBridge deleteSelectionWithSmartDelete:]):
(-[WebCoreFrameBridge ensureSelectionVisible]):
(-[WebCoreFrameBridge RenderObject::nodeInfoAtPoint:allowShadowContent:]):
* page/Frame.cpp:
(WebCore::Frame::nodeInfoAtPoint):
(WebCore::Frame::hasSelection):
(WebCore::Frame::documentTypeString):
* page/Frame.h:
* page/FrameTree.cpp:
(WebCore::FrameTree::traverseNextWithWrap):
(WebCore::FrameTree::traversePreviousWithWrap):
(WebCore::FrameTree::deepLastChild):
* page/FrameTree.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14009
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Sat, 22 Apr 2006 08:01:36 +0000 (08:01 +0000)]
Reviewed by Hyatt.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=6141
DOMCSSPrimitiveValue is always returning values in pixels when
using getComputedStyle:
getFloatValue() took a unit type as a parameter, ignored it, and
returned m_value.num. This patch writes a second version of the
function that actually converts m_value.num to the specified unites
before returning it. Where a conversion is not required, I removed
the unit type from the caller so that it would go directly to the
inline version of the function.
* css/css_valueimpl.cpp:
(WebCore::CSSPrimitiveValue::computeLengthFloat): Remove type
parameter since a conversion is not needed.
(WebCore::scaleFactorForConversion): Helper function for
conversion.
(WebCore::CSSPrimitiveValue::getFloatValue): This version of
getFloatValue() takes a unit type parameter and converts
m_value.num.
* css/css_valueimpl.h:
(WebCore::CSSPrimitiveValue::getFloatValue): This version does not
take a parameter and just returns m_value.num.
* css/cssparser.cpp:
(WebCore::BorderImageParseContext::commitBorderImage): Remove type
parameter since a conversion is not needed.
* css/cssstyleselector.cpp:
(WebCore::convertToLength): Same.
(WebCore::CSSStyleSelector::applyProperty): Same.
(WebCore::CSSStyleSelector::mapBackgroundSize): Same.
(WebCore::CSSStyleSelector::mapBackgroundXPosition): Same.
(WebCore::CSSStyleSelector::mapBackgroundYPosition): Same.
* editing/ApplyStyleCommand.cpp:
(WebCore::ApplyStyleCommand::applyRelativeFontStyleChange): Same.
* ksvg2/css/SVGCSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applySVGProperty): Same.
* ksvg2/misc/KCanvasRenderingStyle.cpp:
(WebCore::KSVGPainterFactory::cssPrimitiveToLength): Same.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14008
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Sat, 22 Apr 2006 07:33:04 +0000 (07:33 +0000)]
LayoutTests:
- Layout test for whether the error event bubbles.
* fast/events/onerror-bubbling-expected.txt: Added.
* fast/events/onerror-bubbling.html: Added.
WebCore:
Reviewed by John.
- Fixed http://bugzilla.opendarwin.org/show_bug.cgi?id=8509
javascript:document.importNode(null)
* dom/Document.cpp:
(WebCore::Document::importNode): Throw an error if the node is null.
This happens when the object provided in the JavaScript call is not
a node.
(WebCore::Document::adoptNode): Set the DOM exception code in all error
cases instead of just a few, because that's what the spec requires.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14007
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Sat, 22 Apr 2006 06:08:01 +0000 (06:08 +0000)]
Fixing bug number & title in last commit.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14006
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Sat, 22 Apr 2006 06:06:00 +0000 (06:06 +0000)]
WebCore:
Test for: http://bugzilla.opendarwin.org/show_bug.cgi?id=8213
REGRESSION: Can't tab out of text field if iframe comes after it
* manual-tests/tabbing-input-google.html: Added.
WebKit:
Reviewed by Darin.
- Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8181
REGRESSION: After tabbing in page's field, attempting to tab from Google toolbar search to page fails on first try
Test: manual-tests/tabbing-input-google.html
* WebView/WebHTMLView.m: (-[NSArray resignFirstResponder]):
When resigning first responder, reset willBecomeFirstResponderForNodeFocus, so when the WebHTMLView gets focus again
it knows it can start moving through the tab cycle.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14005
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Sat, 22 Apr 2006 05:31:57 +0000 (05:31 +0000)]
JavaScriptCore:
Reviewed by Darin.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8507
Compilation fixes for building on gcc 4.0.2, and without precomp headers
* kjs/operations.h:
* kxmlcore/Assertions.cpp:
* kxmlcore/FastMalloc.cpp:
Added necessary headers to resolve compilation issues when not using
precompiled headers.
* kjs/value.h: Declare the JSCell class before friend declaration
to resolve compilation issues with gcc 4.0.2.
* kxmlcore/Platform.h: Set Unicode support to use ICU on platforms
other than KDE (previously only defined for Win and Mac OS)
WebCore:
Reviewed by Darin.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8507
Compilation fixes for building on gcc 4.0.2, and without precomp headers
* platform/Cursor.h: Created a fallback case that typedefs PlatformCursor
to void * if it isn't defined to anything else. (Useful to help get new ports
initially compiling.)
* bindings/js/kjs_window.cpp:
* rendering/RenderTextField.cpp:
* rendering/RenderBox.cpp:
Add missing headers to resolve issues when compiling without precompiled
headers.
* rendering/RenderText.h: Declare the InlineTextBox class before
friend declaration to resolve compilation issues with gcc 4.0.2.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14004
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Sat, 22 Apr 2006 01:29:30 +0000 (01:29 +0000)]
LayoutTests:
Reviewed by Darin.
Test for: http://bugzilla.opendarwin.org/show_bug.cgi?id=8213
REGRESSION: Can't tab out of text field if iframe comes after it
* fast/forms/tabbing-input-iframe-expected.checksum: Added.
* fast/forms/tabbing-input-iframe-expected.png: Added.
* fast/forms/tabbing-input-iframe-expected.txt: Added.
* fast/forms/tabbing-input-iframe.html: Added.
WebCore:
Reviewed by Darin.
Fix for: http://bugzilla.opendarwin.org/show_bug.cgi?id=8213
REGRESSION: Can't tab out of text field if iframe comes after it
Test: fast/forms/tabbing-input-iframe.html
* bridge/mac/FrameMac.mm: (WebCore::FrameMac::nextKeyViewInFrame):
If the next focusable node is a RenderWidget without a view, then continue in the loop. We used to break out in this case.
I also made some formatting changes and reorganized the function to make it easier to read.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14003
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Fri, 21 Apr 2006 23:59:20 +0000 (23:59 +0000)]
Reviewed by Beth.
Fix for: http://bugzilla.opendarwin.org/show_bug.cgi?id=8496
REGRESSION: Dragging to select text around a text field causes the text field to scroll.
Test: manual-tests/text-field-autoscroll.html
* bridge/mac/FrameMac.mm: (WebCore::FrameMac::handleMouseMoveEvent): Start the frame's autoscroll timer
even when we're calling over the bridge to handle the autoscroll.
* page/Frame.cpp: (WebCore::Frame::stopAutoscrollTimer): Clear out pointer to layer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14002
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Fri, 21 Apr 2006 20:32:05 +0000 (20:32 +0000)]
Reviewed by John Sullivan.
<rdar://problem/
4476875> Support printing for embedded Netscape plugins
NOTE: This only works with the Flash plugin right now. It appears that the other
major plugins either have awful printing support, or no printing support. If someone
can find an example of any other embedded Netscape plugin printing in any browser on
the Mac, I will be happy to eat my own words!
* Plugins/WebBaseNetscapePluginView.m:
(-[WebBaseNetscapePluginView drawRect:]):
When printing, get the printed bitmap via -_printedPluginBitmap, and draw it into the
plugin view.
(-[WebBaseNetscapePluginView _printedPluginBitmap]):
Call NPP_Print on the plugin to render it into a GWorld. This GWorld has the same
underlying buffer as an NSBitmapImageRep, which is returned to the caller.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14001
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Fri, 21 Apr 2006 18:18:49 +0000 (18:18 +0000)]
Adding a few more background-size tests that include background-
origin.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14000
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Fri, 21 Apr 2006 17:24:53 +0000 (17:24 +0000)]
- And again.
* WebCore.vcproj/WebCore/WebCore.vcproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13999
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Fri, 21 Apr 2006 17:09:53 +0000 (17:09 +0000)]
- Futile attempt to fix Windows build.
* WebCore.vcproj/WebCore/WebCore.vcproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13998
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Fri, 21 Apr 2006 16:29:02 +0000 (16:29 +0000)]
LayoutTests:
Tests for global constants related to CSSRule, CSSValue, Event, and
NodeFilter objects.
* fast/dom/constants-expected.txt: Added.
* fast/dom/constants.html: Added.
* fast/dom/prototype-chain-expected.txt:
* fast/dom/resources/stylesheet.css: Added.
* fast/dom/xmlhttprequest-get-expected.txt:
WebCore:
Reviewed by Maciej.
- Added autogeneration of JS bindings for CSSRule, CSSValue,
Event, and NodeFilter.
- Made related prototype objects hold the relevant constants, to
match Mozilla and the DOM 2 spec. (Previously, only the related
constructor objects held those constants, in accordance with the
DOM 3 spec.)
- Fixed up remaining Windows build issues.
* DerivedSources.make: Added new autogenerated files
* WebCore.xcodeproj/project.pbxproj: ditto
* bindings/js/kjs_css.cpp:
(KJS::DOMCSSRule::classInfo):
(KJS::DOMCSSRule::getOwnPropertySlot): scope call to classInfo()
because it's virtual and DOMCSSRule has a derrived class now.
(KJS::DOMCSSRule::put): ditto
(KJS::DOMCSSRuleFunc::callAsFunction):
(KJS::toJS):
* bindings/js/kjs_css.h:
* bindings/js/kjs_events.cpp:
(KJS::toJS):
* bindings/js/kjs_events.h:
* bindings/js/kjs_html.cpp:
(KJS::OptionConstructorImp::OptionConstructorImp):
* bindings/js/kjs_traversal.cpp:
(KJS::toJS):
* bindings/js/kjs_traversal.h:
* bindings/js/kjs_window.cpp:
(KJS::Window::getValueProperty): added CSSValue global object
* bindings/js/kjs_window.h:
(KJS::Window::):
* bindings/scripts/CodeGeneratorJS.pm: Changed generator to write
constants to prototype objects (previously only wrote constants to
constructor objects)
* css/CSSPrimitiveValue.idl: Removed LegacyParent since CSSValue now
exists in IDL
* css/CSSRule.idl: Added.
* css/CSSValue.idl: Added.
* css/css_ruleimpl.h:
(WebCore::CSSRule::):
* css/css_valueimpl.h:
* dom/Event.idl: Added.
* dom/MutationEvent.idl: Removed LegacyParent since Event now exists
in IDL
* dom/NodeFilter.idl: Added.
* dom/UIEvent.idl: Removed LegacyParent since event now exists in IDL
* dom/dom2_eventsimpl.h:
(WebCore::Event::):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13997
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Fri, 21 Apr 2006 07:57:11 +0000 (07:57 +0000)]
- one more attempt to fix Windows build
* platform/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::fillRect): Update to use Color and match
the similar function on GraphicsContextMac.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13996
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Fri, 21 Apr 2006 07:54:57 +0000 (07:54 +0000)]
Reviewed by Hyatt.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8495
REGRESSION: Sidebar on cnn.com is hosed
* platform/mac/ImageMac.mm:
(WebCore::Image::drawTiled): Use the size of the destination rect,
not the oneTileRect in the no-pattern case.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBackgroundExtended): Initialize
scaledWidth and scaledHeight to the appropriate value (was wrong in
scroll case), adjust position at appropriate times, and take out
no-repeat clause for now since we don't have enough test cases yet
to be sure we won't cause massive regressions.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13995
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Fri, 21 Apr 2006 07:49:15 +0000 (07:49 +0000)]
- attempt to fix Windows build after my last check-in
* WebCore.vcproj/Image Viewer/ImageView.cpp: Changed calls to use the
new IntRect-based API.
* html/CanvasPattern.cpp: (WebCore::CanvasPattern::CanvasPattern):
Put appropriate ifdefs around the m_platformImage initializer.
* page/Frame.cpp: Make Frame::adjustPageHeight Mac-OS-X-only for now
since it's used for printing and we don't have printing going on any
other platforms yet.
* platform/cairo/GraphicsContextCairo.cpp: Take out constructor that
takes only the "for printing" boolean for now.
* platform/cairo/ImageCairo.cpp: Include the GraphicsContext.h header.
* platform/win/TemporaryLinkStubs.cpp: (GraphicsContext::setShadow):
Fix up this stub and remove the GraphicsContext empty constructor stub.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13994
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Fri, 21 Apr 2006 07:27:17 +0000 (07:27 +0000)]
- fix build
* WebCore.xcodeproj/project.pbxproj: Replaced absolute path on my system
with a build-result-relative path; also removed some source files from the
list of resources to install!
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13993
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Fri, 21 Apr 2006 06:52:11 +0000 (06:52 +0000)]
Reviewed by Hyatt.
- make <canvas> element and related API behave more like the draft of
the WhatWG Web Application specification, checking parameter validity
and raising exceptions
- changed HTMLCanvasElement bindings to be auto-generated, fixing all
issues so we can generate bindings for classes drived from HTMLElement
- change GraphicsContext API to use IntRect/Point/Size in more cases
- change GraphicsContext so it is closer to truly wrapping a graphics
context rather than representing the current NSGraphicsContext; there
are still some things like text and rectangle fills that are tied to
NSGraphicsContext, but we're most of the way there
- removed Brush class since it just amounted to a color, using an RGBA32
instead where we used to use a Brush
* DerivedSources.make: Added JSHTMLCanvasElement.h.
* WebCore.xcodeproj/project.pbxproj: Added new files.
* bindings/js/JSCanvasRenderingContext2DBase.h: Added toJS.
* bindings/js/JSCanvasRenderingContext2DBase.cpp:
(WebCore::JSCanvasRenderingContext2DBaseProtoFunc::callAsFunction):
Added exception code handling for strokeRect, drawImage, and createPattern.
Added version of createPattern that takes a canvas. Use TYPE_MISMATCH_ERR
instead of JavaScript TypeError when parameter is neither an image or canvas
element. Adapt for new HTMLCanvasElement binding.
(WebCore::toJS): Added. Converts context object to JS wrapper.
* bindings/js/JSHTMLElementWrapperFactory.h: Added.
* bindings/js/JSHTMLElementWrapperFactory.cpp: Added. Creates a JavaScript
wrapper for an arbitrary HTML element. Better than putting this all in the
DOM node class toJS function.
* bindings/js/JSXMLSerializer.cpp: Tweaked to make it build.
* bindings/js/kjs_dom.cpp: (KJS::toJS): Changed to call the
JSHTMLElementWrapperFactory function createJSWrapper, instead
of always creating a JSHTMLElement.
* bindings/js/kjs_html.h: Removed canvas-related stuff. Added HTMLElement
prototype.
* bindings/js/kjs_html.cpp:
(KJS::JSHTMLElement::classInfo): Removed canvas element.
(KJS::JSHTMLElement::accessors): Ditto.
(KJS::JSHTMLElementProtoFunc::callAsFunction): Added, to help the auto-binding
machiner cope with HTMLElement.
(KJS::HTMLElementFunction::callAsFunction): Removed canvas element.
* bindings/scripts/CodeGeneratorJS.pm: Added types needed for HTMLCanvasElement.
* bridge/mac/FrameMac.mm: (WebCore::FrameMac::setDisplaysWithFocusAttributes):
Changed to create a GraphicsContext with the new constructor that takes
a CGContextRef.
* bridge/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge drawRect:]):
Changed to create a GraphicsContext with the new constructor that takes
a NSGraphicsContext.
* page/Frame.cpp: (WebCore::Frame::adjustPageHeight): Changed to create a
GraphicsContext with the new constructor that takes a CGContextRef.
* editing/SelectionController.cpp: (WebCore::SelectionController::paintCaret):
Eliminated a use of obsolete class Brush.
* html/CanvasPattern.h:
* html/CanvasPattern.cpp:
(WebCore::CanvasPattern::parseRepetitionType): Added. Parses a repetition
type. Different from the old logic in that it is case-sensitive and rejects
anything other than null, empty string, or the four repeat types.
(WebCore::CanvasPattern::CanvasPattern): Added constructor that takes
a CGImageRef. Changed constructor to take two booleans instead of the repetition
type string. It's the caller's responsibility to parse the string.
(WebCore::CanvasPattern::~CanvasPattern): Release the CGImage.
(WebCore::patternCallback): Handle the CGImage case. Also changed the code
to create a GraphicsContext as needed and call the image drawing code with that.
(WebCore::CanvasPattern::createPattern): Handle both the image element case and
the canvas element case.
* html/CanvasRenderingContext2D.h:
* html/CanvasRenderingContext2D.cpp:
(WebCore::CanvasRenderingContext2D::State::State): Change line cap, line join,
and global composite to store enum values instead of strings.
(WebCore::CanvasRenderingContext2D::setLineWidth): Do nothing if width is NaN
or <= 0.
(WebCore::CanvasRenderingContext2D::lineCap): Return a string based on a
stored enum, rather than returning a stored string.
(WebCore::CanvasRenderingContext2D::setLineCap): Do nothing if the string is
not one of the standard line cap types. Also case sensitive and stores enum
rather than the string.
(WebCore::CanvasRenderingContext2D::lineJoin): Return a string based on a
stored enum, rather than returning a stored string.
(WebCore::CanvasRenderingContext2D::setLineJoin): Do nothing if the string is
not one of the standard line join types. Also case sensitive and stores enum
rather than the string.
(WebCore::CanvasRenderingContext2D::setMiterLimit): Do nothing if limit is NaN
or <= 0.
(WebCore::CanvasRenderingContext2D::setGlobalAlpha): Do nothing if alpha is NaN
or < 0 or > 1.
(WebCore::CanvasRenderingContext2D::globalCompositeOperation): Return a string
based on a stored enum, rather than returning a stored string.
(WebCore::CanvasRenderingContext2D::setGlobalCompositeOperation): Do nothing if
the string is not one of the standard compositing modes. Also case sensitive and
stores enum rather than the string.
(WebCore::CanvasRenderingContext2D::arcTo): Generate INDEX_SIZE_ERR exception
if radius is NaN or <= 0.
(WebCore::CanvasRenderingContext2D::arc): Ditto.
(WebCore::CanvasRenderingContext2D::rect): Generate INDEX_SIZE_ERR exception
if width or height is NaN or <= 0.
(WebCore::CanvasRenderingContext2D::clearRect): Ditto.
(WebCore::CanvasRenderingContext2D::fillRect): Ditto.
(WebCore::CanvasRenderingContext2D::strokeRect): Ditto, same for line width.
Changed the case where the line width is not specified to share code with the
case where it is.
(WebCore::size): Renamed from imageSize, since C++ overloads based on parameter
types anyway.
(WebCore::CanvasRenderingContext2D::drawImage): Generate INDEX_SIZE_ERR exception
if the source rect is not entirely inside the image rect, or if the width or height
of either the source or destination rect is NaN or <= 0. Changed image drawing
code to be platform-independent for the image element case, but not yet for the
canvas case.
(WebCore::CanvasRenderingContext2D::drawImageFromRect): Change code to parse the
composite operation to use the new code shared with Image.
(WebCore::CanvasRenderingContext2D::createPattern): Added code to parse the
repetition type separately before creating the pattern. Added an overload for
canvas elements.
(WebCore::CanvasRenderingContext2D::drawingContext): Changed to return a
GraphicsContext*.
(WebCore::CanvasRenderingContext2D::platformContext): Added. Now does what
drawingContext used to do.
* html/CanvasRenderingContext2D.idl: Added exception declarations as needed
for changes above.
* html/HTMLCanvasElement.h:
* html/HTMLCanvasElement.cpp:
(WebCore::HTMLCanvasElement::HTMLCanvasElement): Changed m_drawingContext
to be a GraphicsContext instead of a CGContextRef.
(WebCore::HTMLCanvasElement::~HTMLCanvasElement): Ditto.
(WebCore::HTMLCanvasElement::getContext): Removed special cases for null
and empty string. Only give a 2D graphics context if the string is "2d".
(WebCore::HTMLCanvasElement::reset): Updated for change to GraphicsContext
from CGContextRef.
(WebCore::HTMLCanvasElement::paint): Ditto.
(WebCore::HTMLCanvasElement::createDrawingContext): Changed to create a
GraphicsContext* instead of a CGContextRef.
(WebCore::HTMLCanvasElement::drawingContext): Changed to return a
GraphicsContext* instead of a CGContextRef.
(WebCore::HTMLCanvasElement::createPlatformImage): Updated for changes above.
* html/HTMLCanvasElement.idl: Added.
* html/HTMLParser.h:
* html/HTMLParser.cpp:
(WebCore::HTMLParser::canvasCreateErrorCheck): Added. An attempt to implement the
fallback behavior for canvas elements when JavaScript is off.
(WebCore::HTMLParser::getNode): Sorted list of functions. Added case for canvas.
* html/html_imageimpl.h:
* html/html_imageimpl.cpp:
(WebCore::HTMLImageElement::HTMLImageElement): Changed m_compositeOperator to be
an enum instead of a string.
(WebCore::HTMLImageElement::parseMappedAttribute): Parse the enum here.
* kcanvas/KCanvasResources.h:
* kcanvas/KCanvasResources.cpp: (WebCore::KCanvasMarker::draw): Changed to take a
GraphicsContext parameter.
* kcanvas/RenderPath.h: Added GraphicsContext parameter to drawMarkersIfNeeded.
* kcanvas/RenderPath.cpp: (WebCore::RenderPath::paint):
* kcanvas/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint):
* kcanvas/RenderSVGText.cpp: (WebCore::RenderSVGText::paint):
Changed to generate and use an appropriate GraphicsContext.
* kcanvas/device/quartz/KCanvasItemQuartz.h: Added GraphicsContext parameter to
drawMarkersIfNeeded.
* kcanvas/device/quartz/KCanvasItemQuartz.mm:
(WebCore::DrawMarkersData::DrawMarkersData): Added GraphicsContext*.
(WebCore::drawMarkerWithData): Pass along a GraphicsContext*.
(WebCore::drawStartAndMidMarkers): Ditto.
(WebCore::KCanvasItemQuartz::drawMarkersIfNeeded): Pass a long a GraphicsContext*.
* kcanvas/device/KRenderingDevice.h: Added a pure virtual createGraphicsContext
to bridge back to a GraphicsContext. Long term that class will replace this one.
* kcanvas/device/quartz/KRenderingDeviceQuartz.h:
* kcanvas/device/quartz/KRenderingDeviceQuartz.mm:
(WebCore::KRenderingDeviceContextQuartz::createGraphicsContext): Added.
* ksvg2/svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::drawMaskerContent):
Create and pass a GraphicsContext -- old code used the default constructor for
GraphicsContext which meant "current context", and that no longer exists.
* ksvg2/svg/SVGPatternElement.cpp:
(WebCore::SVGPatternElement::drawPatternContentIntoTile): Ditto.
* platform/Brush.h: Removed.
* platform/CompositeOperator.h: Added.
* platform/CompositeOperator.cpp: Added.
* platform/Font.h: Changed calls to use IntPoint instead of pairs of ints.
Also removed the const from all the uses of GraphicsContext*.
* platform/GraphicsContext.h: Eliminated default constructor and constructor
that takes only a boolean. Replaced with constructors that take platform
graphics contexts only. Replaced brush-related calls with fill color calls.
Replaced use of Brush with use of Color. Changed Image::CompositeOperator to
just plain CompositeOperator. Changed tuples of ints into IntRect and IntPoint.
Moved setFocusRingClip and clearFocusRingClip out of ifdefs. Removed unused
getCompositeOperation and string-based setCompositeOperation. Moved
currentCGContext and the other setCompositeOperation out of the GraphicsContext
class and made them global functions. Fixed platformContext so it won't always
return the CGContextRef of the current NSGraphicsContext. Instead, it will
return the appropriate CGContextRef for the GraphicsContext. This eliminates
the need to use void* for the image-drawing functions.
* platform/GraphicsContext.cpp:
(WebCore::GraphicsContextState::GraphicsContextState): Replaced Brush with
an RGBA fill color.
(WebCore::GraphicsContext::setFillColor): Renamed from setBrush.
(WebCore::GraphicsContext::fillColor): Renamed from brush.
(WebCore::GraphicsContext::drawImage): Changed to use IntRect.
(WebCore::GraphicsContext::drawTiledImage): Moved here from GraphicsContextMac.mm.
(WebCore::GraphicsContext::drawText): Changed to use IntPoint.
(WebCore::GraphicsContext::drawHighlightForText): Ditto.
(WebCore::GraphicsContext::drawLineForText): Ditto.
(WebCore::GraphicsContext::drawLineForMisspelling): Ditto.
* platform/Image.h: Removed CompositeOperator and related functions.
Removed void* context parameters from draw functions.
* platform/Image.cpp: Removed compositeOperatorFromString.
* platform/Widget.h: Added a GraphicsContext* return value from lockDrawingFocus
that you pass back to unlockDrawingFocus (for deletion).
* platform/mac/FontMac.mm:
(WebCore::Font::selectionRectForText): Changed parameter to point and removed
const on GraphicsContext* parameter.
(WebCore::Font::drawText): Ditto.
(WebCore::Font::drawHighlightForText): Ditto.
(WebCore::Font::drawLineForText): Ditto.
(WebCore::Font::drawLineForMisspelling): Ditto.
(WebCore::Font::misspellingLineThickness): Removed const.
* platform/mac/GraphicsContextMac.mm:
(WebCore::GraphicsContextPlatformPrivate::GraphicsContextPlatformPrivate):
Added fields to store a CGContextRef and an NSGraphicsContext.
(WebCore::GraphicsContextPlatformPrivate::~GraphicsContextPlatformPrivate):
Release both the CGContextRef and the NSGraphicsContext.
(WebCore::GraphicsContext::GraphicsContext): Implement to set up both the
CGContextRef and the NSGraphicsContext in one case, and only the CGContextRef
in the other.
(WebCore::GraphicsContext::savePlatformState): Implement for the CGContext-only
case.
(WebCore::GraphicsContext::restorePlatformState): Ditto.
(WebCore::GraphicsContext::drawRect): Assert that the NS context is present
and
(WebCore::GraphicsContext::setColorFromFillColor): Renamed from
setColorFromBrush.
(WebCore::GraphicsContext::setColorFromPen): Added assertion.
(WebCore::GraphicsContext::drawLine): Added assertion.
(WebCore::GraphicsContext::drawEllipse): Get CGContext from the platformContext
function instead of currentCGContext, and changed to use fillColor.
(WebCore::GraphicsContext::drawArc): Ditto.
(WebCore::GraphicsContext::drawConvexPolygon): Ditto.
(WebCore::setCompositeOperation): Changed to global function and also changed
to do the work here -- no need to use WebCoreImageRendererFactory.
(WebCore::GraphicsContext::drawImage): Move most of this into GraphicsContext.cpp.
Remove the void* context parameter. Changed to take rects instead of separate coordinates.
(WebCore::GraphicsContext::fillRect): Changed to take color instead of Brush.
(WebCore::GraphicsContext::addClip): Added assertion.
(WebCore::GraphicsContext::addRoundedRectClip): Get CGContextRef from the platformContext
function instead of currentCGContext.
(WebCore::GraphicsContext::createRenderingDeviceContext): Ditto.
(WebCore::GraphicsContext::beginTransparencyLayer): Ditto.
(WebCore::GraphicsContext::endTransparencyLayer): Ditto.
(WebCore::GraphicsContext::setShadow): Change to take size instead of x,y. Also get
CGCOntextRef from the platformContext function instead of currentCGContext.
(WebCore::GraphicsContext::clearShadow): Get CGContextRef from the platformContext
function instead of currentCGContext.
(WebCore::GraphicsContext::platformContext): Added. Returns m_data->m_cgContext.
* platform/mac/ImageMac.mm:
(WebCore::fillSolidColorInRect): Updated for change in CompositeOperator type.
(WebCore::Image::checkForSolidColor): Ditto.
(WebCore::Image::draw): Removed void* context parameter and replaced it with
a GraphicsContext* parameter. Renamed from drawInRect.
(WebCore::Image::drawTiled): Ditto. Renamed from tileInRect and scaleAndTileInRect.
* platform/mac/PDFDocumentImage.h: Updated for change in CompositeOperator type.
* platform/mac/PDFDocumentImage.mm: (WebCore::PDFDocumentImage::draw): Ditto.
* platform/mac/WidgetMac.mm:
(WebCore::Widget::lockDrawingFocus): Changed to return a GraphicsContext*.
(WebCore::Widget::unlockDrawingFocus): Changed to take a GraphicsContext*.
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::selectionRect): Changed to pass IntPoint.
(WebCore::InlineTextBox::paint): Changed to pass IntSize.
(WebCore::InlineTextBox::paintSelection): More of the same.
(WebCore::InlineTextBox::paintMarkedTextBackground): Ditto.
(WebCore::InlineTextBox::paintDecoration): Ditto.
(WebCore::InlineTextBox::paintSpellingMarker): Ditto.
(WebCore::InlineTextBox::paintTextMatchMarker): Ditto.
(WebCore::InlineTextBox::paintMarkedTextUnderline): Ditto.
(WebCore::InlineTextBox::positionForOffset): Ditto.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::fillHorizontalSelectionGap): Ditto.
(WebCore::RenderBlock::fillVerticalSelectionGap): Ditto.
(WebCore::RenderBlock::fillLeftSelectionGap): Ditto.
(WebCore::RenderBlock::fillRightSelectionGap): Ditto.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::paintBackgroundExtended): Ditto.
(WebCore::RenderBox::outlineBox): Ditto.
* rendering/RenderImage.cpp:
(WebCore::RenderImage::paint): Ditto.
* rendering/RenderLayer.cpp:
(WebCore::setClip): Take out ifdefs. We'll do that inside GraphicsContext instead.
(WebCore::restoreClip): Ditto.
* rendering/RenderObject.cpp:
(WebCore::RenderObject::drawBorder): More of the same.
(WebCore::RenderObject::paintBorderImage): Ditto.
* rendering/render_line.cpp:
(WebCore::InlineFlowBox::paintDecorations): Ditto.
(WebCore::EllipsisBox::paint): Ditto.
* rendering/render_list.cpp:
(WebCore::RenderListMarker::paint): Ditto.
* rendering/render_frames.cpp: (WebCore::RenderFrameSet::userResize): Set up a graphics
context by calling lockDrawingFocus. Also changed a color here to be a constant.
* platform/cairo/GraphicsContextCairo.cpp:
(WebCore::GraphicsContext::drawImage): Update for parameter type changes.
(WebCore::GraphicsContext::drawScaledAndTiledImage):
(WebCore::GraphicsContext::setFocusRingClip):
(WebCore::GraphicsContext::clearFocusRingClip):
* platform/cairo/ImageCairo.cpp:
(WebCore::setCompositingOperation):
(WebCore::Image::tileInRect):
(WebCore::Image::scaleAndTileInRect):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13992
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Fri, 21 Apr 2006 05:56:37 +0000 (05:56 +0000)]
Updated test results for:
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8276
REGRESSION (NativeTextField): Pasting a Finder item into a text field results in
a file: URL being pasted instead of just the file name
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8283
REGRESSION: File's path doesn't appear after dragging file into input field
* editing/pasteboard/drop-text-without-selection-expected.txt:
* fast/forms/input-paste-undo-expected.txt:
* fast/forms/input-truncate-newline-expected.txt:
* fast/forms/plaintext-mode-2-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13991
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Fri, 21 Apr 2006 04:51:48 +0000 (04:51 +0000)]
WebCore:
Reviewed by Darin.
WebCore part of:
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8276
REGRESSION (NativeTextField): Pasting a Finder item into a text field results in
a file: URL being pasted instead of just the file name
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8283
REGRESSION: File's path doesn't appear after dragging file into input field
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge isDragCaretRichlyEditable]): Added.
* manual-tests/plain-text-paste.html: Added.
* manual-tests/resources/plain-text-paste: Added.
* manual-tests/resources/plain-text-paste/1.textClipping: Added.
* manual-tests/resources/plain-text-paste/2.textClipping: Added.
* manual-tests/resources/plain-text-paste/3.gif: Added.
* manual-tests/resources/plain-text-paste/4.txt: Added.
* manual-tests/resources/plain-text-paste/5.webloc: Added.
WebKit:
Reviewed by Darin.
WebKit part of:
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8276
REGRESSION (NativeTextField): Pasting a Finder item into a text field results in
a file: URL being pasted instead of just the file name
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8283
REGRESSION: File's path doesn't appear after dragging file into input field
* WebView/WebHTMLView.m:
(-[WebHTMLView _plainTextFromPasteboard:]): Added method that tries to copy AppKit
text fields' logic for extracting plain text from the pasteboard.
(-[WebHTMLView _pasteAsPlainTextWithPasteboard:]): Added helper method.
(-[WebHTMLView _shouldInsertText:replacingDOMRange:givenAction:]):
(-[WebHTMLView _shouldReplaceSelectionWithText:givenAction:]):
(-[WebHTMLView readSelectionFromPasteboard:]): Paste as plain text if
rich text is not allowed.
(-[WebHTMLView validateUserInterfaceItem:]): Changed to not allow pasteAsRichText:
if the paste is not going to be handled by the DOM and the selection
does not allow pasting rich text.
(-[WebHTMLView concludeDragForDraggingInfo:actionMask:]): Paste as plain text if
rich text is not allowed.
(-[WebHTMLView paste:]): Ditto.
(-[WebHTMLView pasteAsPlainText:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13990
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Fri, 21 Apr 2006 04:32:26 +0000 (04:32 +0000)]
WebCore:
Reviewed by Adele.
- WebCore part of http://bugzilla.opendarwin.org/show_bug.cgi?id=8505
eliminate WebCoreGraphics bridge, demonstrate new SystemInterface technique
* platform/mac/WebCoreGraphicsBridge.h: Removed.
* platform/mac/WebCoreGraphicsBridge.m: Removed.
* platform/mac/WebCoreSystemInterface.h: Added.
* platform/mac/WebCoreSystemInterface.mm: Added.
* WebCore.exp: Add new SystemInterface globals, remove WebCoreGraphicsBridge.
* WebCore.xcodeproj/project.pbxproj: Updated for removed and added files.
Sorted files.
* bridge/mac/FrameMac.mm: Removed unneeded include of WebCoreGraphicsBridge.h.
* platform/mac/ClipboardMac.mm: (WebCore::ClipboardMac::setDragImage):
Moved code from WebGraphicsBridge here, using WebCoreSystemInterface so we can
call wkSetDragImage.
* platform/mac/GraphicsContextMac.mm: (WebCore::GraphicsContext::drawFocusRing):
Moved code from WebGraphicsBridge here, using WebCoreSystemInterface so we can
call wkDrawFocusRing.
* rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::paintTextField):
Call wkDrawBezeledTextFieldCell from WebCoreSystemInterface instead of using
WebGraphicsBridge to do the same thing.
WebKit:
Reviewed by Adele.
- WebKit part of http://bugzilla.opendarwin.org/show_bug.cgi?id=8505
eliminate WebCoreGraphics bridge, demonstrate new SystemInterface technique
* WebCoreSupport/WebGraphicsBridge.h: Removed.
* WebCoreSupport/WebGraphicsBridge.m: Removed.
* WebCoreSupport/WebSystemInterface.h: Added.
* WebCoreSupport/WebSystemInterface.m: Added.
* WebKit.xcodeproj/project.pbxproj: Updated for removed and added files.
* WebCoreSupport/WebImageData.m: Removed unneeded include of WebGraphicsBridge.h.
* WebCoreSupport/WebImageRenderer.m: Ditto.
* WebCoreSupport/WebTextRenderer.m: Ditto.
* WebView/WebFrameView.m: (-[WebFrameView initWithFrame:]): Guarded all the one-time
initialization inside a boolean, just in case some things take a little time. Added
a call to InitWebCoreSystemInterface to the one-time initialization here. Later, we
will need to add it in some other places if we call code that requires the use of
WebCoreSystemInterface functions from anywhere that can be invoked before creations
of the first WebFrameView, but for now there is no need.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13989
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 20 Apr 2006 22:22:14 +0000 (22:22 +0000)]
LayoutTests:
Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8273
REGRESSION: Read only input text field renders at the wrong height when value attribute is not present
* fast/forms/input-readonly-empty-expected.checksum: Added.
* fast/forms/input-readonly-empty-expected.png: Added.
* fast/forms/input-readonly-empty-expected.txt: Added.
* fast/forms/input-readonly-empty.html: Added.
WebCore:
Reviewed by Hyatt.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=8273
REGRESSION: Read only input text field renders at the wrong height when value attribute is not present
Test: fast/forms/input-readonly-empty.html
* rendering/RenderBlock.h: Added hasLineIfEmpty.
* rendering/RenderBlock.cpp:
(WebCore::RenderBlock::hasLineIfEmpty): Added. Checks for rootEditableElement as well as
a shadowNode who has an input element as a parent.
(WebCore::RenderBlock::getBaselineOfLastLineBox): Calls hasLineIfEmpty instead of just checking for the rootEditableElement.
* rendering/bidi.cpp: (WebCore::RenderBlock::layoutInlineChildren): ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13988
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Thu, 20 Apr 2006 19:08:18 +0000 (19:08 +0000)]
Reviewed by Timothy.
Removed TO_NODE_OFFSET and TO_NODE_ADDRESS macros. These can just be done inline with pointer math.
* platform/DeprecatedString.cpp:
(allocateNode):
(freeHandle):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13987
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 20 Apr 2006 06:31:18 +0000 (06:31 +0000)]
Updated test to use webkit-block-placeholder instead of khtml-block-placeholder.
* editing/inserting/insert-div-010.html:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13986
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 20 Apr 2006 06:05:24 +0000 (06:05 +0000)]
Updating test results that were incorrectly checked in
when many of the table test results changed recently due to Color
improvements.
* tables/mozilla/bugs/bug625-expected.checksum:
* tables/mozilla/bugs/bug625-expected.png:
* tables/mozilla/bugs/bug625-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13985
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 20 Apr 2006 05:22:37 +0000 (05:22 +0000)]
Updated results after rolling out optimizations in setInnerText and setInnerHTML.
* fast/events/updateLayoutForHitTest-expected.txt:
* fast/forms/input-text-paste-maxlength-expected.txt:
* fast/text/attributed-substring-from-range-expected.txt:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13984
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 20 Apr 2006 03:01:54 +0000 (03:01 +0000)]
Rubber-stamped by Darin.
Removed optimizations recently added in setInnerHTML and setInnerText. The setInnerHTML change broke a first-letter style test.
The setInnerText change caused an empty text node to get added when setting inner text to an empty string. The bug that this
change went in with remains fixed.
* html/HTMLElement.cpp:
(WebCore::HTMLElement::setInnerHTML):
(WebCore::HTMLElement::setInnerText):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13983
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Thu, 20 Apr 2006 02:51:48 +0000 (02:51 +0000)]
Reviewed by Haytt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6770
REGRESSION: Incomplete repaint when block with clipping grows
* manual-tests/repaint-resized-overflow.html: Added.
* rendering/RenderLayer.cpp:
(WebCore::RenderLayer::RenderLayer):
(WebCore::RenderLayer::computeRepaintRects): Set the m_repaintOverflowOnResize
flag to true if our object itself needs layout or if we're an overflow
and have a normal child that needs layout, in which case if we end up
resizing it will be because of the child, and that child might have not repainted
itself correctly during its own layout.
(WebCore::RenderLayer::updateLayerPositions): Do a full repaint if
m_repaintOverflowOnResize is set and we resized but didn't move.
* rendering/RenderLayer.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13982
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Thu, 20 Apr 2006 02:33:53 +0000 (02:33 +0000)]
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8352
CSS text-shadow does not repaint completely when changed
* manual-tests/dynamic-shadow.html: Added.
* rendering/render_style.cpp:
(WebCore::RenderStyle::diff): Changed to return Layout when text-shadow
changes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13981
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Thu, 20 Apr 2006 02:18:56 +0000 (02:18 +0000)]
Reviewed by Timothy.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8442
Bug 8442: improvements to Cocoa bindings support in WebView - code simplification
Removes the WebController class added earlier; changes NSTreeController and
WebView to together without it. Now you can just bind the contentObject binding
of the tree controller directly to the mainFrameDocument key of the WebView.
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge windowObjectCleared]):
* WebView/WebDataSource.m:
(-[WebDataSource _setTitle:]):
* WebView/WebFrame.m:
(-[WebFrame _closeOldDataSources]):
* WebView/WebView.m:
(-[WebView _progressStarted:]):
(-[WebView _finalProgressComplete]):
(-[WebView _commonInitializationWithFrameName:groupName:]):
(-[WebView setMainFrameDocumentReady:]):
(-[WebView mainFrameDocument]):
* WebView/WebViewPrivate.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13980
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Thu, 20 Apr 2006 02:07:32 +0000 (02:07 +0000)]
Fix the change log for my last commit, change was done by James G. Speth <speth@end.com>.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13979
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Thu, 20 Apr 2006 02:06:44 +0000 (02:06 +0000)]
Reviewed by Timothy.
http://bugzilla.opendarwin.org/show_bug.cgi?id=6635
Bug 6635: Crash selecting inspector nodes for tabs that aren't foremost
Stop observing window will close notifications before we tell the highlight window to close,
this prevents the crash. Also prevent drawing highlights for hidden tabs.
* WebInspector/WebInspector.m:
(-[WebInspector _highlightNode:]):
* WebInspector/WebNodeHighlight.m:
(-[WebNodeHighlight expire]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13978
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Thu, 20 Apr 2006 02:04:46 +0000 (02:04 +0000)]
Reviewed by Darin.
Added readOnly methods for HTMLInputElement and HTMLTextAreaElement so the DOM bindings can call
a method with the same name. This will make it easier to autogenerate the DOM bindings in the future.
* html/HTMLInputElement.h: (WebCore::HTMLInputElement::readOnly): Added. Calls isReadOnlyControl.
* html/HTMLTextAreaElement.h: (WebCore::HTMLTextAreaElement::readOnly): ditto.
* bindings/js/kjs_html.cpp:
(KJS::JSHTMLElement::inputGetter): Calls readOnly instead of isReadOnlyControl.
(KJS::JSHTMLElement::textAreaGetter): ditto.
* bindings/objc/DOMHTML.mm:
(-[DOMHTMLInputElement readOnly]): ditto.
(-[DOMHTMLTextAreaElement readOnly]): Calls readOnly instead of getting the attribute directly.
(-[DOMHTMLTextAreaElement setReadOnly:]): Calls setReadOnly instead of setting the attribute directly.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@13977
268f45cc-cd09-0410-ab3c-
d52691b4dbfc