ap [Sat, 20 May 2006 08:47:37 +0000 (08:47 +0000)]
2006-05-20 Mitz Pettel <opendarwin.org@mitzpettel.com>
Reviewed and landed by ap.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=9009
REGRESSION: ToT crash in WebCore at Zap2it
Test: fast/table/empty-section-crash.html
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::paint): Return immediately if the section
has 0 rows or 0 columns.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14500
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Sat, 20 May 2006 05:52:02 +0000 (05:52 +0000)]
Fix Win32 bustage caused by image document. supportsType is not implemented yet for ImageCairo, so we'll return false rather than true to keep every document from being an image document.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14499
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
lweintraub [Sat, 20 May 2006 00:21:46 +0000 (00:21 +0000)]
LayoutTests:
Reviewed by justin.
Tests for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8931>
Drag caret not painted for editable sub-frames
* editing/resources/select-and-drag-iframe.html: Added.
* editing/selection/drag-in-iframe-expected.checksum: Added.
* editing/selection/drag-in-iframe-expected.png: Added.
* editing/selection/drag-in-iframe-expected.txt: Added.
* editing/selection/drag-in-iframe.html: Added.
WebCore:
Reviewed by justin.
<http://bugzilla.opendarwin.org/show_bug.cgi?id=8931>
Drag caret not painted for editable sub-frames
Moved the drag caret out of Frame and into Page.
Only the Frame that contains the drag caret will paint it.
* editing/SelectionController.h:
* page/Frame.cpp:
(WebCore::Frame::dragCaret):
(WebCore::Frame::setDragCaret):
(WebCore::Frame::paintDragCaret):
* page/FramePrivate.h:
* page/Page.cpp:
(WebCore::Page::dragCaret):
(WebCore::Page::setDragCaret):
* page/Page.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14498
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aliceli1 [Fri, 19 May 2006 23:16:17 +0000 (23:16 +0000)]
Reviewed by Adele.
* html/HTMLButtonElement.idl:
added support for HTMLButtonElement.click()
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14497
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aliceli1 [Fri, 19 May 2006 21:18:58 +0000 (21:18 +0000)]
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14496
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Fri, 19 May 2006 19:35:41 +0000 (19:35 +0000)]
LayoutTests:
- Test for overriding non-autogenerated global constructors.
* fast/dom/constructors-overriding-expected.txt: Added.
* fast/dom/constructors-overriding.html: Added.
WebCore:
Reviewed by Eric.
- Fixed non-autogenerated global constructors to match autogenerated
ones and FF. (Found this bug while @ the GOOG.)
(1) They're no longer read-only, so they can be overridden.
(2) They now have the default object prototype, so they can do things
like 'toString' and 'valueOf', necessary for general functionality,
including my layout test.
(3) Their prototype properties are now enumerable and not read-only.
* bindings/js/JSDOMParser.cpp:
(KJS::DOMParserConstructorImp::DOMParserConstructorImp):
* bindings/js/JSXMLHttpRequest.cpp:
(KJS::JSXMLHttpRequestConstructorImp::JSXMLHttpRequestConstructorImp):
* bindings/js/JSXMLHttpRequest.h:
* bindings/js/JSXMLSerializer.cpp:
(KJS::XMLSerializerConstructorImp::XMLSerializerConstructorImp):
* bindings/js/JSXSLTProcessor.cpp:
(KJS::XSLTProcessorConstructorImp::XSLTProcessorConstructorImp):
* bindings/js/kjs_html.cpp:
(KJS::OptionConstructorImp::OptionConstructorImp):
(KJS::ImageConstructorImp::ImageConstructorImp):
* bindings/js/kjs_window.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14495
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Fri, 19 May 2006 10:53:07 +0000 (10:53 +0000)]
2006-05-19 Anders Carlsson <acarlsson@apple.com>
Reviewed by Eric.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8983
Autogenerate another 22 HTML classes
Already covered by existing DOM tests.
* DerivedSources.make:
* WebCore.vcproj/WebCore/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
Add new IDL files and generated sources.
* bindings/js/JSCanvasRenderingContext2DCustom.cpp:
(WebCore::JSCanvasRenderingContext2D::drawImage):
(WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
(WebCore::JSCanvasRenderingContext2D::createPattern):
Use JSHTMLImageElement::info in inherits.
* bindings/js/JSHTMLElementWrapperFactory.cpp:
(WebCore::createJSWrapper):
Add macros for the functions and the code to populate the hash set.
* bindings/js/kjs_html.cpp:
(KJS::):
(KJS::JSHTMLElement::classInfo):
(KJS::JSHTMLElement::accessors):
(KJS::HTMLElementFunction::callAsFunction):
* bindings/js/kjs_html.h:
(KJS::JSHTMLElement::):
Delete old cruft.
* bindings/scripts/CodeGeneratorJS.pm:
Add support for creating a JS object from a HTMLCollection.
* html/HTMLAreaElement.idl: Added.
* html/HTMLBRElement.idl: Added.
* html/HTMLBaseFontElement.idl: Added.
* html/HTMLBlockquoteElement.idl: Added.
* html/HTMLBodyElement.cpp:
(WebCore::HTMLBodyElement::scrollLeft):
(WebCore::HTMLBodyElement::setScrollLeft):
(WebCore::HTMLBodyElement::scrollTop):
(WebCore::HTMLBodyElement::setScrollTop):
(WebCore::HTMLBodyElement::scrollHeight):
(WebCore::HTMLBodyElement::scrollWidth):
* html/HTMLBodyElement.h:
Add new functions that used to be implemented in kjs_html.cpp
* html/HTMLBodyElement.idl: Added.
* html/HTMLFieldSetElement.idl: Added.
* html/HTMLFontElement.idl: Added.
* html/HTMLHRElement.idl: Added.
* html/HTMLHeadingElement.idl: Added.
* html/HTMLImageElement.idl: Added.
* html/HTMLIsIndexElement.idl: Added.
* html/HTMLLIElement.idl: Added.
* html/HTMLLabelElement.idl: Added.
* html/HTMLLegendElement.idl: Added.
* html/HTMLMapElement.idl: Added.
* html/HTMLMenuElement.idl: Added.
* html/HTMLModElement.idl: Added.
* html/HTMLParagraphElement.idl: Added.
* html/HTMLParamElement.idl: Added.
* html/HTMLPreElement.idl: Added.
* html/HTMLQuoteElement.idl: Added.
* html/HTMLScriptElement.idl: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14483
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Fri, 19 May 2006 01:25:48 +0000 (01:25 +0000)]
Update to the latest and greatest Cairo.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14482
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
mjs [Thu, 18 May 2006 22:00:52 +0000 (22:00 +0000)]
Reviewed by Eric.
- remove loading-related code from WebView
http://bugzilla.opendarwin.org/show_bug.cgi?id=8981
* Plugins/WebNetscapePluginStream.m:
(-[WebNetscapePlugInStreamLoader didFinishLoading]):
(-[WebNetscapePlugInStreamLoader didFailWithError:]):
* WebCoreSupport/WebSubresourceLoader.m:
(-[WebSubresourceLoader receivedError:]):
(-[WebSubresourceLoader signalFinish]):
* WebView/WebDataSource.m:
(-[WebDataSource _stopLoading]):
(-[WebDataSource _receivedMainResourceError:complete:]):
(-[WebDataSource _finishedLoadingResource]):
(-[WebDataSource _mainReceivedBytesSoFar:complete:]):
(-[WebDataSource _receivedError:]):
(-[WebDataSource _mainReceivedError:complete:]):
* WebView/WebDataSourceInternal.h:
* WebView/WebFrame.m:
(-[WebFrame _sendRemainingDelegateMessagesWithIdentifier:response:length:error:]):
* WebView/WebMainResourceLoader.m:
(-[WebMainResourceLoader didReceiveData:lengthReceived:]):
(-[WebMainResourceLoader didFinishLoading]):
* WebView/WebView.m:
* WebView/WebViewInternal.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14481
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Thu, 18 May 2006 21:28:47 +0000 (21:28 +0000)]
Reviewed by John Sullivan.
<rdar://problem/
4551938> More options needed for window display throttle
We decided to play it safe and leave our window flushing behavior unchanged from the previous
public release. By default, CoreGraphics deferred updates are once again OFF, and the window
display throttle is OFF.
Individual applications should set the WebKitThrottleWindowDisplayPreferenceKey and
WebKitEnableDeferredUpdatesPreferenceKey defaults to suit their needs.
Old behavior (like 10.4.6): WebKitThrottleWindowDisplayPreferenceKey=0 (or unset),
WebKitEnableDeferredUpdatesPreferenceKey (or unset).
Tear-free scrolling/animations: WebKitThrottleWindowDisplayPreferenceKey=0 (or unset),
WebKitEnableDeferredUpdatesPreferenceKey=1. While this configuration fixes the tearing issues
caused by over-flushing, some applications will experience performance problems as over-flushing
with CG deferred updates enabled will cause the app to block.
Tear-free scrolling/animations, high performance: WebKitThrottleWindowDisplayPreferenceKey=1,
WebKitEnableDeferredUpdatesPreferenceKey=1. This is the riskiest configuration in that it
enables the window display throttle "feature", potentially breaking applications' assumptions
about when displays occur. However, it provides the "best of both worlds", in that updates
are tear-free, and performance impact should me minimal.
* WebView/WebPreferenceKeysPrivate.h:
Declared WebKitThrottleWindowDisplayPreferenceKey and WebKitEnableDeferredUpdatesPreferenceKey.
* WebView/WebFrameView.m:
(-[WebFrameView initWithFrame:]):
Turn off CG deferred updates if WebKitEnableDeferredUpdatesPreferenceKey is NO or has no value.
Added some comments.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14480
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 20:49:17 +0000 (20:49 +0000)]
Make Win32 compile (finally). Add missing files to bindings/js directory in the vcproj.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14478
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 20:40:52 +0000 (20:40 +0000)]
Reduce link errors from 21 to 7 by adding more auto-generated JS bindings files to the vcproj. (Win32 bustage still.)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14477
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 20:36:16 +0000 (20:36 +0000)]
Keep working on win32 bustage. Add KWQFileButton::setDisabled to TemporaryLinkStubs.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14476
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 20:31:25 +0000 (20:31 +0000)]
Keep going trying to fix win32 bustage. Make ImageDocument compile.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14475
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Thu, 18 May 2006 20:31:04 +0000 (20:31 +0000)]
Reviewed by Darin Adler.
- fixed <rdar://problem/
4552713> REGRESSION: WebFrameView no longer responds to responder methods sent by Safari code
* WebView/WebView.m:
(-[WebView _responderForResponderOperations]):
Treat sibling views of the main frameView the same as views outside of the webview for the purposes of this mechanism.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14474
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Thu, 18 May 2006 20:29:58 +0000 (20:29 +0000)]
Reviewed by John Sullivan.
<rdar://problem/
4553450> Make disabling window throttle safer
* Misc/WebNSWindowExtras.m:
(+[NSWindow _webkit_enableWindowDisplayThrottle]):
Don't assume that +_webkit_disableWindowDisplayThrottle restored the NSWindow method implementations;
now we'll only swizzle them once, and our replacement IMPs will call the old IMPs when the window
throttle is disabled. This is a safer approach when other components/"haxies" override the same methods
that we are overriding, as it allows the overrides to "chain" properly.
Moved the dictionary initialization code down a bit. The order doesn't matter here.
(disableWindowDisplayThrottleApplierFunction):
Noticed that this could have been written safer with respect to the timer having the last reference to
the window. I never experienced a crash here, but this code is definitely safer.
(+[NSWindow _webkit_disableWindowDisplayThrottle]):
Don't restore NSWindow method implementations; just clear the flag, flush pending displays, and destroy
the dictionary.
(replacementPostWindowNeedsDisplay):
If throttling is disabled, just call the original IMP.
(clearWindowDisplayInfo):
Added an assert.
(replacementDealloc):
Don't call clearWindowDisplayInfo() when throttling is disabled.
(replacementFinalize):
ditto
(cancelPendingWindowDisplay):
Removed an unnecessary assertion.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14473
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 20:18:44 +0000 (20:18 +0000)]
Fix build bustage caused by broken XPath feature support checking on win32.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14472
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 18 May 2006 17:57:16 +0000 (17:57 +0000)]
- try to fix no-SVG, no-XPATH build, again
* Scripts/build-webkit: Use FEATURE_DEFINES= instead of FEATURE_DEFINES=''.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14471
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 17:52:30 +0000 (17:52 +0000)]
Turn off responding to font changes while running. It doesn't work
right anyway.
Reviewed by darin
* platform/FontCache.cpp:
(WebCore::FontCache::getCachedFontPlatformData):
* platform/FontCache.h:
* platform/GlyphMap.h:
(WebCore::GlyphMap::~GlyphMap):
* platform/GlyphWidthMap.h:
(WebCore::GlyphWidthMap::~GlyphWidthMap):
* platform/mac/FontCacheMac.mm:
(WebCore::FontCache::platformInit):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14470
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 18 May 2006 17:04:51 +0000 (17:04 +0000)]
- try to fix no-SVG, no-XPATH build
* Scripts/build-webkit: Pass FEATURE_DEFINES rather than GCC_PREPROCESSOR_DEFINITIONS,
since the former is what's used in the WebCore project now.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14468
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 18 May 2006 16:56:24 +0000 (16:56 +0000)]
- try to fix the Windows build
* platform/TextEncoding.h: Changed a ";" to a ",".
* WebCore.vcproj/WebCore/WebCore.vcproj: Removed
JSCanvasRenderingContext2DBase.cpp and
JSCanvasRenderingContext2DBase.h. Added
JSCanvasRenderingContext2DCustom.cpp.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14467
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 18 May 2006 16:53:35 +0000 (16:53 +0000)]
LayoutTests:
Reviewed by Hyatt.
Tests for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8896>
Bug 8896: Absolutely positioned elements should use their parent's
direction when left, right and width are auto in quirks mode.
* fast/block/positioning/absolute-position-direction-quirk.html: Added.
* fast/block/positioning/absolute-position-direction-quirk-expected.txt: Added.
* fast/block/positioning/absolute-position-direction-quirk-expected.png: Added.
* fast/block/positioning/absolute-position-direction-quirk-expected.checksum: Added.
* fast/block/positioning/absolute-position-direction-strict.html: Added.
* fast/block/positioning/absolute-position-direction-strict-expected.txt: Added.
* fast/block/positioning/absolute-position-direction-strict-expected.png: Added.
* fast/block/positioning/absolute-position-direction-strict-expected.checksum: Added.
WebCore:
Reviewed by Hyatt.
Fix for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8896>
Bug 8896: Absolutely positioned elements should use their parent's
direction when left, right and width are auto in quirks mode.
Use the parent's direction instead of the containing
block's in quirks mode for absolute positioning to match
WinIE.
* rendering/RenderBox.cpp:
(WebCore::RenderBox::calcAbsoluteHorizontal):
(WebCore::RenderBox::calcAbsoluteHorizontalValues):
(WebCore::RenderBox::calcAbsoluteHorizontalReplaced):
* rendering/RenderBox.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14466
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 18 May 2006 16:13:19 +0000 (16:13 +0000)]
Reviewed and tweaked (way too much) by Darin.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8937
EncodingMap uses 0 as its empty value but 0 is a valid TextEncodingID
* platform/CharsetNames.cpp:
(WebCore::TextEncodingIDHashTraits::emptyValue): Added a non-zero empty value,
InvalidEncoding, and used InvalidEncoding2 for the deleted value.
(WebCore::buildCharsetMaps): Added an assertion that the deleted and empty
values are not valid encodings.
* platform/TextEncoding.h: Defined InvalidEncoding2.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14465
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 09:13:08 +0000 (09:13 +0000)]
Horrible glyph map regression fix. The initial page of the map was
being rebuilt over and over again.
Reviewed by andersca
* platform/GlyphMap.cpp:
(WebCore::GlyphMap::locatePage):
* platform/GlyphWidthMap.cpp:
(WebCore::GlyphWidthMap::locatePage):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14464
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Thu, 18 May 2006 08:20:57 +0000 (08:20 +0000)]
WebCore:
2006-05-18 Anders Carlsson <acarlsson@apple.com>
Reviewed by Darin.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8964
Autogenerate more HTML classes
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
Add new files.
* bindings/js/JSHTMLElementWrapperFactory.cpp:
(WebCore::createAnchorWrapper):
(WebCore::createAppletWrapper):
(WebCore::createDivWrapper):
(WebCore::createDirectoryWrapper):
(WebCore::createDListWrapper):
(WebCore::createHtmlWrapper):
(WebCore::createOListWrapper):
(WebCore::createUListWrapper):
(WebCore::createJSWrapper):
Add wrappers.
* bindings/js/kjs_html.cpp:
(KJS::):
(KJS::JSHTMLElement::classInfo):
(KJS::JSHTMLElement::accessors):
(KJS::HTMLElementFunction::callAsFunction):
* bindings/js/kjs_html.h:
(KJS::JSHTMLElement::):
Delete the old implementations.
* html/HTMLAnchorElement.cpp:
(WebCore::HTMLAnchorElement::hash):
(WebCore::HTMLAnchorElement::host):
(WebCore::HTMLAnchorElement::hostname):
(WebCore::HTMLAnchorElement::pathname):
(WebCore::HTMLAnchorElement::port):
(WebCore::HTMLAnchorElement::protocol):
(WebCore::HTMLAnchorElement::search):
(WebCore::HTMLAnchorElement::text):
* html/HTMLAnchorElement.h:
Add some new accessor methods which used to be in kjs_html.cpp.
* html/HTMLAnchorElement.idl: Added.
* html/HTMLAppletElement.idl: Added.
* html/HTMLDListElement.idl: Added.
* html/HTMLDirectoryElement.idl: Added.
* html/HTMLDivElement.idl: Added.
* html/HTMLHtmlElement.idl: Added.
* html/HTMLOListElement.idl: Added.
* html/HTMLUListElement.idl: Added.
LayoutTests:
2006-05-18 Anders Carlsson <acarlsson@apple.com>
http://bugzilla.opendarwin.org/show_bug.cgi?id=8964
Autogenerate more HTML classes
* fast/dom/prototype-chain-expected.txt:
Update test result.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14463
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 07:36:34 +0000 (07:36 +0000)]
Convert the width map for glyphs into the same new HashMap-style as the
glyph map for characters.
* WebCore.xcodeproj/project.pbxproj:
* platform/FontData.cpp:
(WebCore::FontData::~FontData):
(WebCore::FontData::widthForGlyph):
* platform/FontData.h:
* platform/GlyphWidthMap.cpp: Added.
(WebCore::GlyphWidthMap::widthForGlyph):
(WebCore::GlyphWidthMap::setWidthForGlyph):
(WebCore::GlyphWidthMap::locatePage):
* platform/GlyphWidthMap.h: Added.
(WebCore::GlyphWidthMap::GlyphWidthMap):
(WebCore::GlyphWidthMap::~GlyphWidthMap):
(WebCore::GlyphWidthMap::GlyphWidthPage::widthForGlyph):
(WebCore::GlyphWidthMap::GlyphWidthPage::setWidthForGlyph):
(WebCore::GlyphWidthMap::GlyphWidthPage::setWidthForIndex):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14462
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 06:21:53 +0000 (06:21 +0000)]
Rename FontData.mm to FontData.cpp, since it has no obj-c in it.
* WebCore.xcodeproj/project.pbxproj:
* platform/FontData.cpp: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14461
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Thu, 18 May 2006 06:09:30 +0000 (06:09 +0000)]
Split FontData.mm into platform-specific and cross-platform pieces.
Reviewed by andersca
* WebCore.xcodeproj/project.pbxproj:
* platform/FontData.h:
(WebCore::FontData::xHeight):
* platform/mac/FontData.mm:
(WebCore::FontData::widthForGlyph):
(WebCore::m_smallCapsFontData):
(WebCore::FontData::~FontData):
(WebCore::extendWidthMap):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14460
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Thu, 18 May 2006 05:02:36 +0000 (05:02 +0000)]
* Scripts/do-webcore-rename: Some more future renames.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14459
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Thu, 18 May 2006 04:35:06 +0000 (04:35 +0000)]
Reviewed by Darin.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=6915
fast/js/date-constructor.html testcase is timezone-dependent
* fast/js/date-constructor-expected.txt:
* fast/js/resources/date-constructor.js:
Disable the offending tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14458
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
staikos [Thu, 18 May 2006 04:15:21 +0000 (04:15 +0000)]
Reviewed by Maciej, Alexey, and Eric.
- Use /**/ in .c files to compile with non-C99 and non-GCC compilers.
- Change include to <wtf/HashTraits.h> from "HashTraits.h" to avoid -I
- Use correct parentheses and correct mask for utf-32 support.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14457
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Thu, 18 May 2006 03:36:38 +0000 (03:36 +0000)]
Reviewed by Kevin Decker and John Sullivan.
<rdar://problem/
4550801> REGRESSION: Window throttle code can sometimes leak NSWindows
The window display throttle depended on windows being closed before they were deallocated; this is
not guaranteed by AppKit. Windows that were being released without being closed were getting stuck
in our NSWindow -> WindowDisplayInfo dictionary.
* Misc/WebNSWindowExtras.m:
(+[NSWindow _webkit_enableWindowDisplayThrottle]):
Don't retain the NSWindow keys in the window display info dictionary.
Instead of overriding -close, override -dealloc and -finalize so that we can remove the NSWindow ->
WindowDisplayInfo mapping when a window deallocates.
(+[NSWindow _webkit_disableWindowDisplayThrottle]):
Restore -dealloc and -finalize.
(clearWindowDisplayInfo):
Factored the WindowDisplayInfo cleanup code out of the now-defunct replacementClose().
(replacementClose):
Removed; no longer needed.
(replacementDealloc):
Clear the WindowDisplayInfo for the window after deallocation.
(replacementFinalize):
ditto
(-[NSWindow _webkit_doPendingPostWindowNeedsDisplay:]):
Rewrote this method to be safe in the case where the firing display timer has the last reference to the
window.
Added comments.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14456
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Thu, 18 May 2006 01:02:24 +0000 (01:02 +0000)]
Reviewed by Darin Adler
Improvement to my previous patch, suggested by Darin
* dom/Document.cpp:
(WebCore::Document::repaintMarkers):
new method, similar in structure to removeMarkers but just repaints each node that
has a marker of the specified type
* dom/Document.h:
declare new method, and tweak style in related method declarations
* page/Frame.cpp:
(WebCore::Frame::setMarkedTextMatchesAreHighlighted):
if the value changes, call repaintMarkers
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14455
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Thu, 18 May 2006 00:44:31 +0000 (00:44 +0000)]
2006-05-17 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
Autogenerate button, optgroup, option, input and textarea js bindings
http://bugzilla.opendarwin.org/show_bug.cgi?id=8953
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSHTMLElementWrapperFactory.cpp:
(WebCore::createButtonWrapper):
(WebCore::createInputWrapper):
(WebCore::createOptGroupWrapper):
(WebCore::createOptionWrapper):
(WebCore::createTextAreaWrapper):
(WebCore::createJSWrapper):
* bindings/js/JSHTMLInputElementBase.cpp: Added.
(WebCore::JSHTMLInputElementBaseProtoFunc::callAsFunction):
(WebCore::):
(WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
(WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
* bindings/js/JSHTMLInputElementBase.h: Added.
(WebCore::JSHTMLInputElementBase::classInfo):
(WebCore::JSHTMLInputElementBase::):
(WebCore::JSHTMLInputElementBase::impl):
* bindings/js/JSHTMLOptionElementConstructor.cpp: Added.
(WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
(WebCore::JSHTMLOptionElementConstructor::implementsConstruct):
(WebCore::JSHTMLOptionElementConstructor::construct):
* bindings/js/JSHTMLOptionElementConstructor.h: Added.
* bindings/js/kjs_domnode.h:
* bindings/js/kjs_html.cpp:
(KJS::):
(KJS::JSHTMLElement::classInfo):
(KJS::JSHTMLElement::accessors):
(KJS::JSHTMLElement::getOwnPropertySlot):
(KJS::HTMLElementFunction::callAsFunction):
(KJS::JSHTMLElement::put):
(KJS::JSHTMLElement::htmlSetter):
* bindings/js/kjs_html.h:
(KJS::JSHTMLElement::):
* bindings/js/kjs_window.cpp:
(KJS::Window::getValueProperty):
* bindings/scripts/CodeGeneratorJS.pm:
* html/HTMLButtonElement.idl: Added.
* html/HTMLInputElement.idl: Added.
* html/HTMLOptGroupElement.idl: Added.
* html/HTMLOptionElement.idl: Added.
* html/HTMLTextAreaElement.idl: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14454
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Thu, 18 May 2006 00:44:11 +0000 (00:44 +0000)]
2006-05-17 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
Autogenerate button, optgroup, option, input and textarea js bindings
http://bugzilla.opendarwin.org/show_bug.cgi?id=8953
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSHTMLElementWrapperFactory.cpp:
(WebCore::createButtonWrapper):
(WebCore::createInputWrapper):
(WebCore::createOptGroupWrapper):
(WebCore::createOptionWrapper):
(WebCore::createTextAreaWrapper):
(WebCore::createJSWrapper):
* bindings/js/JSHTMLInputElementBase.cpp: Added.
(WebCore::JSHTMLInputElementBaseProtoFunc::callAsFunction):
(WebCore::):
(WebCore::JSHTMLInputElementBase::JSHTMLInputElementBase):
(WebCore::JSHTMLInputElementBase::getOwnPropertySlot):
* bindings/js/JSHTMLInputElementBase.h: Added.
(WebCore::JSHTMLInputElementBase::classInfo):
(WebCore::JSHTMLInputElementBase::):
(WebCore::JSHTMLInputElementBase::impl):
* bindings/js/JSHTMLOptionElementConstructor.cpp: Added.
(WebCore::JSHTMLOptionElementConstructor::JSHTMLOptionElementConstructor):
(WebCore::JSHTMLOptionElementConstructor::implementsConstruct):
(WebCore::JSHTMLOptionElementConstructor::construct):
* bindings/js/JSHTMLOptionElementConstructor.h: Added.
* bindings/js/kjs_domnode.h:
* bindings/js/kjs_html.cpp:
(KJS::):
(KJS::JSHTMLElement::classInfo):
(KJS::JSHTMLElement::accessors):
(KJS::JSHTMLElement::getOwnPropertySlot):
(KJS::HTMLElementFunction::callAsFunction):
(KJS::JSHTMLElement::put):
(KJS::JSHTMLElement::htmlSetter):
* bindings/js/kjs_html.h:
(KJS::JSHTMLElement::):
* bindings/js/kjs_window.cpp:
(KJS::Window::getValueProperty):
* bindings/scripts/CodeGeneratorJS.pm:
* html/HTMLButtonElement.idl: Added.
* html/HTMLInputElement.idl: Added.
* html/HTMLOptGroupElement.idl: Added.
* html/HTMLOptionElement.idl: Added.
* html/HTMLTextAreaElement.idl: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14453
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Wed, 17 May 2006 23:45:54 +0000 (23:45 +0000)]
2006-05-17 bradeeoh <beidson@apple.com>
Reviewed by Tim Hatcher
Consolidated WebDatabase base class into WebFileDatabase as the inheritance relationship became
obsolete. This improves readability and sets the stage for a further in-depth rewrite of the
WebIcon* code.
* Misc/WebDatabase.h: Removed.
* Misc/WebDatabase.m: Removed.
* Misc/WebFileDatabase.h:
* Misc/WebFileDatabase.m:
(-[WebFileDatabaseOp dealloc]):
(-[WebFileDatabase dealloc]):
(-[WebFileDatabase path]):
(-[WebFileDatabase isOpen]):
(-[WebFileDatabase sizeLimit]):
* WebKit.xcodeproj/project.pbxproj:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14452
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Wed, 17 May 2006 23:32:38 +0000 (23:32 +0000)]
LayoutTests:
Reviewed by Hyatt.
Updated test results for changes to prepare for
http://bugzilla.opendarwin.org/show_bug.cgi?id=8948
Switch to use new text field implementation for <textarea>
* fast/block/float/032-expected.txt:
WebCore:
Reviewed by Hyatt.
First step for http://bugzilla.opendarwin.org/show_bug.cgi?id=8948
Switch to use new text field implementation for <textarea>
New textareas can be turned on by setting -webkit-appearance:textarea.
Tests:
* LayoutTests/fast/block/float/032.html - Updated results.
* bridge/mac/FrameMac.h: Added textDidChangeinTextArea to send notification over the bridge to form delegate.
* bridge/mac/FrameMac.mm: (WebCore::FrameMac::textDidChangeInTextArea): ditto.
* page/Frame.cpp: (WebCore::Frame::textDidChangeInTextArea): ditto.
* page/Frame.h: ditto.
* css/CSSValueKeywords.in: Added textarea.
* css/cssparser.cpp: (WebCore::CSSParser::parseValue): Updates to check for textarea.
* css/html4.css: Added style for textarea. Leaved background-color and appearance values commented out.
* rendering/render_style.h: (WebCore::): Added TextAreaAppearance.
* rendering/RenderTheme.cpp:
(WebCore::RenderTheme::adjustStyle): Updated for textarea.
(WebCore::RenderTheme::paint): ditto.
(WebCore::RenderTheme::paintBorderOnly): ditto.
(WebCore::RenderTheme::isControlStyled): ditto.
(WebCore::RenderTheme::supportsFocusRing): ditto.
(WebCore::RenderTheme::adjustTextFieldStyle): ditto.
(WebCore::RenderTheme::adjustTextAreaStyle): ditto.
* rendering/RenderTheme.h: (WebCore::RenderTheme::paintTextArea): Added.
* rendering/RenderThemeMac.h: Added adjustTextAreaStyle.
Note- I didn't add a paintTextArea function for RenderThemeMac, since we can just paint the border
specified in html4.css to match the NSTextView border. Added a paintTextArea function to the Windows
theme can override that border.
* rendering/RenderThemeMac.mm:
(WebCore::RenderThemeMac::isControlStyled): Updated for textarea.
(WebCore::RenderThemeMac::adjustTextAreaStyle): ditto.
* html/HTMLGenericFormElement.cpp: (WebCore::HTMLGenericFormElement::HTMLGenericFormElement):
Moved m_valueMatchesRenderer and its setters and getters into this class so HTMLInputElement and
HTMLTextArea can share.
* html/HTMLGenericFormElement.h:
(WebCore::HTMLGenericFormElement::valueMatchesRenderer): Added.
(WebCore::HTMLGenericFormElement::setValueMatchesRenderer): Added.
* html/HTMLInputElement.cpp:
(WebCore::HTMLInputElement::init): Remove m_valueMatchesRenderer intialization.
(WebCore::HTMLInputElement::isKeyboardFocusable): Updated spelling.
(WebCore::HTMLInputElement::createRenderer): Pass multiLine bool to RenderTextField constructor.
(WebCore::HTMLInputElement::parseMappedAttribute): Use setValueMatchesRenderer instead of m_valueMatchesRenderer.
(WebCore::HTMLInputElement::detach): ditto.
(WebCore::HTMLInputElement::setValue): ditto.
(WebCore::HTMLInputElement::setValueFromRenderer): ditto.
* html/HTMLInputElement.h: Remove setValueMatchesRenderer and valueMatchesRenderer and m_valueMatchesRenderer.
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::HTMLTextAreaElement): Calls setValueMatchesRenderer to intialize m_valueMatchesRenderer.
(WebCore::HTMLTextAreaElement::selectionStart): Uses appearance to determine which renderer to use.
(WebCore::HTMLTextAreaElement::selectionEnd): ditto.
(WebCore::HTMLTextAreaElement::setSelectionStart): ditto.
(WebCore::HTMLTextAreaElement::setSelectionEnd): ditto.
(WebCore::HTMLTextAreaElement::select): ditto.
(WebCore::HTMLTextAreaElement::setSelectionRange): ditto.
(WebCore::HTMLTextAreaElement::createRenderer): ditto.
(WebCore::HTMLTextAreaElement::appendFormData): ditto.
(WebCore::HTMLTextAreaElement::updateValue): ditto.
(WebCore::HTMLTextAreaElement::isKeyboardFocusable): Added.
(WebCore::HTMLTextAreaElement::isMouseFocusable): Added.
(WebCore::HTMLTextAreaElement::focus): Added.
(WebCore::HTMLTextAreaElement::defaultEventHandler): Added to forward events to the inner div.
(WebCore::HTMLTextAreaElement::setValue): Calls setValueMatchesRenderer.
* html/HTMLTextAreaElement.h: Added defaultEventHandler, isMouseFocusable, isKeyboardFocusable, and focus methods.
Removed invalidateValue and m_valueMatchesRenderer since those are now handled in the base class.
* html/HTMLTextFieldInnerElement.cpp: (WebCore::HTMLTextFieldInnerElement::defaultEventHandler):
Updated to handle textareas.
* rendering/RenderTextArea.cpp: (WebCore::RenderTextArea::valueChanged):
Calls setValueMatchesRenderer(false) instead of invalidateValue.
* rendering/RenderTextField.h: Changed to be a RenderFlexibleBox instead of a RenderBlock.
This was necessary to get the inner div's height to grow and shrink with the size of the textarea.
Added m_multiLine bool, and calcHeight, canHaveChildren, baselinePosition, isTextArea, textWithHardLineBreaks, selectionChanged.
(WebCore::RenderTextField::canHaveChildren): Returns false now so that no renderer gets created for
the textarea's child text node for its initial contents.
(WebCore::RenderTextField::isTextField): Returns true if m_multiLine is false.
(WebCore::RenderTextField::isTextArea): Returns true if m_multiLine is true.
* rendering/RenderTextField.cpp:
(WebCore::RenderTextField::RenderTextField): Initializes m_multiLine.
(WebCore::RenderTextField::~RenderTextField): Notifies HTMLTextAreaElement that the renderer is being destroyed so the value gets updated.
(WebCore::RenderTextField::setStyle): Makes sure there's no overflow clip on the RenderTextField, since we're handling overflow on the inner div.
(WebCore::RenderTextField::createDivStyle): Sets white-space, box-flex, overflow, word-wrap styles needed for text area.
(WebCore::RenderTextField::updateFromElement): Updated for textarea elements.
(WebCore::RenderTextField::setSelectionRange): Optimized caret case by checking to see if start is equal to end before calculating
the same VisiblePosition twice.
(WebCore::RenderTextField::subtreeHasChanged): Updated for textarea elements.
(WebCore::RenderTextField::text): Use innerText so newlines are considered.
(WebCore::RenderTextField::textWithHardLineBreaks): Added. Not implemented yet. Just calls text method.
(WebCore::RenderTextField::calcHeight): Added. Sets initial height based on specified number of rows, and then calls the base class.
(WebCore::RenderTextField::baselinePosition): Added. Unlike text fields, textareas align to the bottom.
(WebCore::RenderTextField::calcMinMaxWidth): Updated for textareas.
(WebCore::RenderTextField::selectionChanged): Added. Not implemented yet.
WebKit:
Reviewed by Hyatt.
WebKit part of initial checkin to prepare for http://bugzilla.opendarwin.org/show_bug.cgi?id=8948
Switch to use new text field implementation for <textarea>
* WebView/WebHTMLView.m:
(-[NSArray insertNewline:]): If we're in plain text mode, insert a line break instead of a paragraph separator.
(-[NSArray insertParagraphSeparator:]): ditto.
* WebView/WebView.m: (-[WebView _menuForElement:defaultItems:]):
Checks for textareas as well as textfields before allowing the delegate to control
the context menu. This won't affect the old textareas because AppKit handles those context menus.
WebKitTools:
Reviewed by Hyatt.
* Scripts/do-webcore-rename: Added RenderTextField => RenderTextControl and
HTMLTextFieldInnerElement => HTMLTextControlInnerElement to list for future renames.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14451
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Wed, 17 May 2006 21:29:03 +0000 (21:29 +0000)]
Fix for 8954, separate the glyph map out into its own files and make it
cross-platform.
Reviewed by darin
* WebCore.xcodeproj/project.pbxproj:
* platform/Font.cpp:
(WebCore::WidthIterator::advance):
* platform/FontData.h:
(WebCore::FontData::glyphDataForCharacter):
(WebCore::FontData::setGlyphDataForCharacter):
* platform/GlyphMap.cpp: Added.
(WebCore::GlyphMap::glyphDataForCharacter):
(WebCore::GlyphMap::setGlyphDataForCharacter):
(WebCore::GlyphMap::locatePage):
* platform/GlyphMap.h: Added.
(WebCore::GlyphMap::GlyphMap):
(WebCore::GlyphMap::~GlyphMap):
(WebCore::GlyphMap::GlyphPage::glyphDataForCharacter):
(WebCore::GlyphMap::GlyphPage::setGlyphDataForCharacter):
(WebCore::GlyphMap::GlyphPage::setGlyphDataForIndex):
* platform/mac/FontData.mm:
(-[NSFont WebCore]):
(WidthMap::m_ATSUMirrors):
(WidthMap::FontData::~FontData):
(WidthMap::FontData::xHeight):
(WidthMap::FontData::platformInit):
(WidthMap::extendWidthMap):
* platform/mac/GlyphMapMac.cpp: Added.
(WebCore::GlyphMap::fillPage):
* platform/mac/WebCoreSystemInterface.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14450
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Wed, 17 May 2006 21:10:02 +0000 (21:10 +0000)]
2006-05-17 Anders Carlsson <acarlsson@apple.com>
Reviewed by Maciej.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8958
Should be able to have custom implementations for JS methods
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSCanvasRenderingContext2DBase.cpp: Removed.
* bindings/js/JSCanvasRenderingContext2DBase.h: Removed.
* bindings/js/JSCanvasRenderingContext2DCustom.cpp: Added.
Remove JSCanvasRenderingContext2DBase and add
JSCanvasRenderingContext2DCustom with custom implementations.
(WebCore::toJS):
(WebCore::toHTMLCanvasStyle):
(WebCore::JSCanvasRenderingContext2D::strokeStyle):
(WebCore::JSCanvasRenderingContext2D::setStrokeStyle):
(WebCore::JSCanvasRenderingContext2D::fillStyle):
(WebCore::JSCanvasRenderingContext2D::setFillStyle):
(WebCore::JSCanvasRenderingContext2D::setFillColor):
(WebCore::JSCanvasRenderingContext2D::setStrokeColor):
(WebCore::JSCanvasRenderingContext2D::strokeRect):
(WebCore::JSCanvasRenderingContext2D::drawImage):
(WebCore::JSCanvasRenderingContext2D::drawImageFromRect):
(WebCore::JSCanvasRenderingContext2D::setShadow):
(WebCore::JSCanvasRenderingContext2D::createPattern):
Move implementations from JSCanvasRenderingContext2DBase.
* bindings/scripts/CodeGeneratorJS.pm:
Add new "Custom" extended attribute for functions and attributes. When a function or
attribute has this attribute, a custom implementation is called instead of calling down to
the DOM object.
* html/CanvasRenderingContext2D.idl:
Add bunch of custom attributes and functions.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14449
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Wed, 17 May 2006 21:05:02 +0000 (21:05 +0000)]
Reviewed by Maciej.
First step towards making text-matching mechanism more flexible; updated for changes
to WebCoreFrameBridge calls.
* WebView/WebHTMLView.m:
(-[WebHTMLView highlightAllMatchesForString:caseSensitive:]):
updated for name change in WebCoreFrameBridge, also now calls setMarkedTextMatchesAreHighlighted:
(-[WebHTMLView clearHighlightedMatches]):
updated for name change in WebCoreFrameBridge
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14448
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Wed, 17 May 2006 21:04:51 +0000 (21:04 +0000)]
Reviewed by Maciej.
First step towards making text-matching mechanism more flexible; now caller can
control whether or not the matches are highlighted.
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge markAllMatchesForText:caseSensitive:]):
renamed from highlightAllMatchesForString:
(-[WebCoreFrameBridge markedTextMatchesAreHighlighted]):
new getter method
(-[WebCoreFrameBridge setMarkedTextMatchesAreHighlighted:]):
new setter method
(-[WebCoreFrameBridge unmarkAllTextMatches]):
renamed from clearHighlightedMatches
* page/Frame.h:
* page/Frame.cpp:
(WebCore::Frame::markAllMatchesForText):
renamed from highlightAllMatchesForString
(WebCore::Frame::markedTextMatchesAreHighlighted):
new getter method, uses boolean ivar in FramePrivate
(WebCore::Frame::setMarkedTextMatchesAreHighlighted):
new setter method, uses boolean ivar in FramePrivate
* page/FramePrivate.h:
(WebCore::FramePrivate::FramePrivate):
added boolean ivar m_highlightTextMatches, initialized to 0
* rendering/InlineTextBox.cpp:
(WebCore::InlineTextBox::paint):
respect markedTextMatchesAreHighlighted
* WebCore.xcodeproj/project.pbxproj:
newer Xcode removed some obsolete settings
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14447
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
adele [Wed, 17 May 2006 18:19:07 +0000 (18:19 +0000)]
Reviewed by Beth.
* editing/htmlediting.cpp: (WebCore::editingIgnoresContent):
Reverting change that Darin made a few weeks ago. He was trying
to make editingIgnoresContent return true for the new text fields, but the code
actually didn't change that result. When the new text fields actually do return
true for editingIgnoresContent, other editing problems are exposed. For example,
moving the cursor around an editable area that contains a text field will cross the
text field boundary and descend into the shadow tree. So for now, we'll revert this
change.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14436
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Wed, 17 May 2006 17:19:44 +0000 (17:19 +0000)]
Reviewed by Darin.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8870
Crash typing in Yahoo auto-complete widget.
Test: fast/js/regexp-stack-overflow.html
* pcre/pcre-config.h: Define NO_RECURSE.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14435
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Wed, 17 May 2006 06:51:09 +0000 (06:51 +0000)]
LayoutTests:
Reviewed by Maciej.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8951
AtomicString hash corrupted by high-bit Latin-1
* fast/encoding/high-bit-latin1-expected.txt: Added.
* fast/encoding/high-bit-latin1.html: Added.
WebCore:
Reviewed by Maciej, tweaked by Darin.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8951
AtomicString hash corrupted by high-bit Latin-1
Test: fast/encoding/high-bit-latin1.html
* platform/AtomicString.cpp: (WebCore::CStringTranslator::equal): Use an
unsigned char local.
* platform/StringImpl.cpp: (WebCore::StringImpl::init): Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14434
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Wed, 17 May 2006 06:46:08 +0000 (06:46 +0000)]
LayoutTests:
Reviewed by Maciej.
Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=7492
CSS attribute selectors fail when the setAttribute() method is used
to create an attribute and the attribute name is not Class or ID.
* fast/css/selector-set-attribute.html: Added.
* fast/css/selector-set-attribute-expected.txt: Added.
* fast/css/selector-set-attribute-expected.checksum: Added.
* fast/css/selector-set-attribute-expected.png: Added.
WebCore:
Reviewed by Maciej.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=7492
CSS attribute selectors fail when the setAttribute() method is used
to create an attribute and the attribute name is not Class or ID.
Keep track of attributes used in attribute selectors to
check after setAttribute whether a style recalc is needed.
Test: fast/css/selector-set-attribute.html
* css/cssstyleselector.cpp:
(WebCore::CSSStyleSelector::checkOneSelector):
(WebCore::CSSStyleSelector::hasSelectorForAttribute):
* css/cssstyleselector.h:
* dom/StyledElement.cpp:
(WebCore::StyledElement::attributeChanged):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14433
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Wed, 17 May 2006 06:36:12 +0000 (06:36 +0000)]
Reviewed by Geoff.
Ensured all the public headers have a newline at their end.
Client code can now have 'Missing Newline at end of File' warnings enabled without emitting
such warnings against any WebKit includes.
* Misc/WebDownload.h:
* Plugins/npfunctions.h:
* WebView/WebResourceLoadDelegate.h:
* WebView/WebUIDelegate.h:
* WebView/WebView.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14432
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Wed, 17 May 2006 06:34:36 +0000 (06:34 +0000)]
Correct bug number.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14431
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Wed, 17 May 2006 06:33:59 +0000 (06:33 +0000)]
LayoutTests:
Reviewed by Darin.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=5624
document.createElementNS() should not allow to insert a second <html> element
* dom/xhtml/level3/core/documentnormalizedocument10-expected.txt:
Updated to show a different failure.
* dom/xhtml/level3/core/nodeappendchild02-expected.txt:
* dom/xhtml/level3/core/nodeinsertbefore06-expected.txt:
* dom/xhtml/level3/core/nodereplacechild39-expected.txt:
Updated to reflect success.
* fast/dom/createDocumentType2.html: Added.
* fast/dom/createDocumentType2-expected.txt: Added.
* fast/dom/createElementNS.html: Added.
* fast/dom/createElementNS-expected.txt: Added.
WebCore:
Reviewed by Darin.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=5624
document.createElementNS() should not allow to insert a second <html> element
Do extra checks for document nodes to detect multiple document elements
and document types.
* dom/Document.cpp:
(WebCore::Document::childTypeAllowed):
* dom/Document.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14430
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
staikos [Wed, 17 May 2006 05:29:29 +0000 (05:29 +0000)]
Reviewed by Maciej.
Fix some warnings and strict compilation errors.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14429
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
aliceli1 [Wed, 17 May 2006 02:11:23 +0000 (02:11 +0000)]
added yahoo.com preview to the hit list, moved capitalone to alumni list
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14428
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Wed, 17 May 2006 00:58:29 +0000 (00:58 +0000)]
Reviewed by Tim Hatcher.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8945 (REGRESSION: Scrolling is very slow when dragging
the thumb)
Rolled out one of my tweaks to the window display throttle hack (remember the last flush time instead
of the last display time). While that was technically a better approach, we discovered a problem
with how it interacts with NSView scroll tracking. Rather than further complicate this already
crazy hack, I'm reverting back to the simple version. This should yield similar numbers on iBench,
but not exhibit the nasty scrolling problem.
* Misc/WebNSWindowExtras.m:
(+[NSWindow _webkit_enableWindowDisplayThrottle]):
(+[NSWindow _webkit_disableWindowDisplayThrottle]):
(getWindowDisplayInfo):
(requestWindowDisplay):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14427
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Wed, 17 May 2006 00:01:08 +0000 (00:01 +0000)]
64-bit build fix, use uintptr_t to cast from a pointer.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14425
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Tue, 16 May 2006 23:29:08 +0000 (23:29 +0000)]
Fix ChangeLog
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14424
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Tue, 16 May 2006 23:27:11 +0000 (23:27 +0000)]
2006-05-17 Anders Carlsson <acarlsson@apple.com>
Reviewed by Darin.
* DerivedSources.make:
Conditionally generate the SVG and XPath related files based on the value of
FEATURE_DEFINES. Also, pass FEATURE_DEFINES TO THE BINDINGS GENERATOR.
* WebCore.xcodeproj/project.pbxproj:
Add FEATURE_DEFINES as a toplevel build setting and set it to "SVG_SUPPORT XPATH_SUPPORT"
to keep SVG and XPath support turned on. Add FEATURE_DEFINES to the CPP defines.
* bindings/js/kjs_binding.cpp:
(KJS::setDOMException):
Add #ifdefs around the XPath code.
* bindings/scripts/CodeGeneratorJS.pm:
Add "Conditional" extended attribute for interfaces. If this is set, the generated code will be
surrounded by an #if.
* bindings/scripts/IDLParser.pm:
Pass the define flags on to the preprocessor.
* bindings/scripts/generate-bindings.pl:
Add a --defines property and pass it on to the parser.
* css/cssstyleselector.h:
Add DeprecatedString.h include.
* dom/Document.idl:
Put back #if around the XPath functions
* page/DOMWindow.idl:
Put #if around the XPath constructors
* xpath/XPathEvaluator.idl:
* xpath/XPathExpression.idl:
* xpath/XPathNSResolver.cpp:
* xpath/XPathNSResolver.idl:
* xpath/XPathNamespace.cpp:
* xpath/XPathResult.idl:
Add "Conditional=XPATH" to all interfaces.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14423
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
beidson [Tue, 16 May 2006 23:13:19 +0000 (23:13 +0000)]
2006-05-16 bradeeoh <beidson@apple.com>
Reviewed by Maciej Stachowiak
- Fixed an old deprecated method in Misc/WebFileDatabase.m
* Misc/WebFileDatabase.m:
(UniqueFilePathForKey): changed `lossyCString` to `UTF8String`
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14422
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 16 May 2006 22:28:07 +0000 (22:28 +0000)]
Reviewed by Anders.
- did the name change from "ImageElement" to "ImageForElement" that I said I would
(oops!)
* DefaultDelegates/WebDefaultContextMenuDelegate.m:
(-[WebDefaultUIDelegate copyImageToClipboard:]):
* Misc/WebNSPasteboardExtras.h:
* Misc/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_declareAndWriteDragImageForElement:URL:title:archive:source:]):
* Misc/WebNSViewExtras.h:
* Misc/WebNSViewExtras.m:
(-[NSView _web_DragImageForElement:rect:event:pasteboard:source:offset:]):
* WebView/WebHTMLView.m:
(-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
* WebView/WebView.m:
(-[WebView _writeImageForElement:withPasteboardTypes:toPasteboard:]):
(-[WebView writeElement:withPasteboardTypes:toPasteboard:]):
* WebView/WebViewInternal.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14421
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 16 May 2006 22:25:36 +0000 (22:25 +0000)]
WebCore:
Reviewed by Anders.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8940
remove extra copy of image code
* WebCore.xcodeproj/project.pbxproj: Removed WebCoreImageRenderer.h.
* platform/mac/WebCoreImageRenderer.h: Removed.
* bridge/mac/WebCoreFrameBridge.h: Added supportedImageResourceMIMETypes.
Like supportedImageMIMETypes, but includes PDF and PostScript.
* bridge/mac/WebCoreFrameBridge.mm:
(+[WebCoreFrameBridge supportedImageResourceMIMETypes]): Added.
Has code that came from -[WebImageRendererFactory supportedMIMETypes].
(+[WebCoreFrameBridge supportedImageMIMETypes]):
* platform/mac/ImageMac.mm:
(WebCore::Image::supportsType): Instead of calling the old
-[WebCoreImageRendererFactory supportedMIMETypes], call the new
+[WebCoreFrameBridge supportedImageResourceMIMETypes].
(WebCore::Image::drawTiled): Use wkSetPatternPhaseInUserSpace instead of
the WebCoreImageRendererFactory.
* platform/mac/ClipboardMac.mm: Removed an unneeded include of
WebCoreImageRenderer.h.
* platform/mac/WebCoreImageRendererFactory.h: Removed everything except
for the one remaining method, imageDataForName:, which gets resources
from the WebKit localized resources. We should figure out how to remove
that one too later.
* platform/mac/WebCoreImageRendererFactory.m: Ditto.
* platform/mac/WebCoreSystemInterface.h: Added some new calls.
* platform/mac/WebCoreSystemInterface.mm: Ditto.
* WebCore.exp: Ditto.
* platform/cairo/ImageCairo.cpp: Moved a stub to the stubs file. If it's
here it has to have a FIXME comment and also it contains a big commented-out
pile of code. Better to have it in the stubs file with all the other stubs.
* platform/win/TemporaryLinkStubs.cpp: (Image::drawTiled): Put stub here
instead of having it in ImageCairo.cpp.
WebKit:
Reviewed by Anders.
- http://bugzilla.opendarwin.org/show_bug.cgi?id=8940
remove extra copy of image code
* English.lproj/StringsNotToBeLocalized.txt: Updated for many recent changes.
* WebKit.xcodeproj/project.pbxproj: Removed files.
* WebCoreSupport/WebImageData.h: Removed.
* WebCoreSupport/WebImageData.m: Removed.
* WebCoreSupport/WebImageDecodeItem.h: Removed.
* WebCoreSupport/WebImageDecodeItem.m: Removed.
* WebCoreSupport/WebImageDecoder.h: Removed.
* WebCoreSupport/WebImageDecoder.m: Removed.
* WebCoreSupport/WebImageRenderer.h: Removed.
* WebCoreSupport/WebImageRenderer.m: Removed.
* WebCoreSupport/WebImageRendererFactory.h:
* WebCoreSupport/WebImageRendererFactory.m: Removed everything except for
shouldUseThreadedDecoding, setShouldUseThreadedDecoding, and imageDataForName:.
* Misc/WebNSPasteboardExtras.h: Removed WebImageRenderer parameter from
_web_declareAndWriteDragImage and renamed _web_declareAndWriteDragImageElement.
* Misc/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): Changed to
call +[WebFrameBridge supportedImageResourceMIMETypes] instead of
-[WebImageRendererFactory supportedMIMETypes].
(-[NSPasteboard _web_declareAndWriteDragImageElement:URL:title:archive:source:]):
Removed WebImageRenderer parameter, and updated code since it was always nil.
* Misc/WebNSViewExtras.h: Removed WebImageRenderer parameter from
_web_dragImage and renamed _web_dragImageElement.
* Misc/WebNSViewExtras.m:
(-[NSView _web_dragImageElement:rect:event:pasteboard:source:offset:]):
Removed WebImageRenderer parameter, and updated code since it was always nil.
* WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface): Added some new
functions now used by WebCore.
* WebView/WebDataSource.m: (-[WebDataSource _documentFragmentWithArchive:]):
Call +[WebFrameBridge supportedImageResourceMIMETypes] instead of
-[WebImageRendererFactory supportedMIMETypes].
* WebView/WebFrameView.m: Removed include of WebImageRenderer.h.
* WebView/WebHTMLRepresentation.m: (+[WebHTMLRepresentation supportedImageMIMETypes]):
Removed call to +[WebImageRendererFactory createSharedFactory].
* WebView/WebHTMLView.m:
(-[WebHTMLView _imageExistsAtPaths:]): Call +[WebFrameBridge supportedImageResourceMIMETypes]
instead of -[WebImageRendererFactory supportedMIMETypes].
(-[WebHTMLView _documentFragmentWithPaths:]): Ditto.
(-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]): Update
to no longer pass nil for an image to _web_declareAndWriteDragImageElement and to
_web_dragImageElement.
(-[WebHTMLView dealloc]): Remove call to now-unneeded _reset.
(-[WebHTMLView finalize]): Ditto.
(-[WebHTMLView viewDidMoveToWindow]): Remove logic for calling _reset, including the inWindow
boolean field.
* WebView/WebHTMLViewInternal.h: Removed inWindow boolean.
* WebView/WebHTMLViewPrivate.h: Removed _reset method.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14420
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Tue, 16 May 2006 19:26:03 +0000 (19:26 +0000)]
2006-05-16 Anders Carlsson <acarlsson@apple.com>
Reviewed by Dave Hyatt.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8941
document.cookie undefined for documents of type text/javascript
* loader/TextDocument.cpp:
(WebCore::TextDocument::TextDocument):
* loader/TextDocument.h:
Inherit from HTMLDocument.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14417
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 16 May 2006 15:13:52 +0000 (15:13 +0000)]
WebCore:
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8898
REGRESSION: Attempting to right-click image in own tab on website causes crash
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8919
REGRESSION: image could not be dragged, subsequent click-drag activity caused crash
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge domain]): Removed unneeded check of isHTMLDocument.
(-[WebCoreFrameBridge getData:andResponse:forURL:]): Handle document() of 0.
(-[WebCoreFrameBridge getAllResourceDatas:andResponses:]): Ditto.
WebKit:
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8898
REGRESSION: Attempting to right-click image in own tab on website causes crash
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8919
REGRESSION: image could not be dragged, subsequent click-drag activity caused crash
These fixes may become obsolete when Anders lands his standalone image viewer
patch, but in my tree they are needed to make Copy Image work after the fix
over on the WebCore side to avoid the crashes.
* Misc/WebNSPasteboardExtras.h: Change _web_writeImage parameter to an NSImage.
* Misc/WebNSPasteboardExtras.m:
(-[NSPasteboard _web_writeImage:element:URL:title:archive:types:]): Change parameter
to an NSImage instead of a WebImageRenderer.
(-[NSPasteboard _web_declareAndWriteDragImage:element:URL:title:archive:source:]):
Call -[WebImageRenderer image] to get an NSImage to pass to _web_writeImage.
* WebView/WebView.m: (-[WebView _writeImageElement:withPasteboardTypes:toPasteboard:]):
Get the image using WebElementImageKey if WebElementDOMNodeKey is nil.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14416
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 10:02:07 +0000 (10:02 +0000)]
2006-05-16 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
Autogenerate BASE, HEAD, LINK, STYLE and TITLE JS bindings.
Already covered by existing dom tests.
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSHTMLElementWrapperFactory.cpp:
(WebCore::createBaseWrapper):
(WebCore::createHeadWrapper):
(WebCore::createLinkWrapper):
(WebCore::createStyleWrapper):
(WebCore::createTitleWrapper):
(WebCore::createJSWrapper):
* bindings/js/kjs_html.cpp:
(KJS::):
(KJS::JSHTMLElement::classInfo):
(KJS::JSHTMLElement::accessors):
* bindings/js/kjs_html.h:
* html/HTMLBaseElement.idl: Added.
* html/HTMLHeadElement.idl: Added.
* html/HTMLLinkElement.idl: Added.
* html/HTMLStyleElement.idl: Added.
* html/HTMLTitleElement.idl: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14415
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Tue, 16 May 2006 09:30:22 +0000 (09:30 +0000)]
WebCore:
2006-05-16 Anders Carlsson <acarlsson@apple.com>
Reviewed by Maciej.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8921
Use WebCore to render full-frame images.
* WebCore.xcodeproj/project.pbxproj:
Add ImageDocument.
* bridge/mac/WebCoreFrameBridge.h:
Add mainResourceURLResponse and imageTitleForFilename.
* bridge/mac/WebCoreFrameBridge.mm:
(+[WebCoreFrameBridge supportedNonImageMIMETypes]):
This used to be supportedMIMETypes but WebKit requires that we handle the
image MIME types separately.
(+[WebCoreFrameBridge supportedImageMIMETypes]):
Add image types from WebCoreImageRendererFactory.
(-[WebCoreFrameBridge canProvideDocumentSource]):
Return no for image types.
* dom/xml_tokenizer.h:
(WebCore::Tokenizer::wantsRawData):
(WebCore::Tokenizer::writeRawData):
New virtual functions which tokenizers can override if they want to get
raw data (which isn't fed through the decoder)
* html/HTMLImageElement.h:
(WebCore::HTMLImageElement::setLoadManually):
New function which calls HTMLImageLoader::setLoadManually
* html/HTMLImageLoader.cpp:
(WebCore::HTMLImageLoader::HTMLImageLoader):
(WebCore::HTMLImageLoader::updateFromElement):
Don't request the image from the loader if the load is set to be manual.
* html/HTMLImageLoader.h:
(WebCore::HTMLImageLoader::setLoadManually):
New function which decides if the image data should be fed manually or loaded
by the loader.
* loader/DocLoader.h:
Add HTMLImageLoader as a friend.
* loader/ImageDocument.cpp: Added.
(WebCore::ImageTokenizer::ImageTokenizer):
(WebCore::ImageTokenizer::wantsRawData):
(WebCore::ImageTokenizer::write):
(WebCore::ImageTokenizer::writeRawData):
(WebCore::ImageTokenizer::stopParsing):
(WebCore::ImageTokenizer::finish):
(WebCore::ImageTokenizer::isWaitingForScripts):
(WebCore::ImageDocument::ImageDocument):
(WebCore::ImageDocument::createTokenizer):
* loader/ImageDocument.h: Added.
Add new ImageDocument class which will feed its data to a created image element.
* loader/TextDocument.h:
Inherit from HTMLDocument here too, in case any broken web pages want to manipulate
the DOM of any plain text documents.
* page/Frame.cpp:
(WebCore::Frame::begin):
(WebCore::Frame::write):
Don't create or use the decoder if the tokenizer is in "raw mode".
WebKit:
2006-05-16 Anders Carlsson <acarlsson@apple.com>
Reviewed by Maciej.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8921
Use WebCore to render full-frame images
* WebCoreSupport/WebFrameBridge.m:
(-[WebFrameBridge determineObjectFromMIMEType:URL:]):
Remove WebImageView handling.
(-[WebFrameBridge mainResourceURLResponse]):
New function which returns the URL response for the main resource. This is used by the
manual loading of images.
(-[WebFrameBridge imageTitleForFilename:size:]):
New function which returns a correctly translated image title given a filename and a size.
* WebCoreSupport/WebImageRenderer.m:
(-[WebImageRenderer _startOrContinueAnimationIfNecessary]):
Remove WebImageView handling.
* WebKit.xcodeproj/project.pbxproj:
Remove WebImageRepresentation and WebImageView.
* WebView/WebArchiver.h:
* WebView/WebArchiver.m:
(+[WebArchiver archiveMainResourceForFrame:]):
New functions which returns a WebArchive with just the main resource, ignoring any subresources.
* WebView/WebDataSource.m:
(+[WebDataSource _repTypesAllowImageTypeOmission:]):
Use MIME types from WebHTMLRepresentation instead of WebImageRepresentation.
* WebView/WebFrameView.m:
(+[WebFrameView _viewTypesAllowImageTypeOmission:]):
Use MIME types from WebHTMLRepresentation instead of WebImageRepresentation.
(+[WebHTMLRepresentation supportedMIMETypes]):
Create an array of image and non-image MIME Types.
(+[WebHTMLRepresentation supportedNonImageMIMETypes]):
(+[WebHTMLRepresentation supportedImageMIMETypes]):
New functions, separating the list of MIME types into image and non-image ones.
* WebView/WebHTMLView.m:
(+[WebHTMLView supportedImageMIMETypes]):
(+[WebHTMLView supportedNonImageMIMETypes]):
New functions which call down to WebHTMLRepresentation.
(-[WebHTMLView _startDraggingImage:at:operation:event:sourceIsDHTML:DHTMLWroteData:]):
If the image element comes from an ImageDocument, just use an archive of the main resource
instead of the generated HTML document.
* WebView/WebHTMLViewPrivate.h:
Declare new functions.
* WebView/WebImageRepresentation.h: Removed.
* WebView/WebImageRepresentation.m: Removed.
* WebView/WebImageView.h: Removed.
* WebView/WebImageView.m: Removed.
LayoutTests:
2006-05-16 Anders Carlsson <acarlsson@apple.com>
Reviewed by Maciej.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8921
Use WebCore to render full-frame images.
* css2.1/t0801-c412-hz-box-00-b-a-expected.txt:
* dom/xhtml/level2/html/frame-expected.checksum:
* dom/xhtml/level2/html/frame-expected.png:
* dom/xhtml/level2/html/frame-expected.txt:
* dom/xhtml/level2/html/iframe-expected.checksum:
* dom/xhtml/level2/html/iframe-expected.png:
* dom/xhtml/level2/html/iframe-expected.txt:
* tables/mozilla/bugs/bug50695-2-expected.txt:
Update tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14414
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 09:26:29 +0000 (09:26 +0000)]
2006-05-16 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
Autogenerate JSHTMLMetaElement.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8938
Test: fast/dom/HTMLMetaElement/meta-attributes.html
* DerivedSources.make:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSHTMLElementWrapperFactory.cpp:
(WebCore::createMetaWrapper):
(WebCore::createJSWrapper):
* bindings/js/kjs_html.cpp:
(KJS::):
(KJS::JSHTMLElement::classInfo):
(KJS::JSHTMLElement::accessors):
* bindings/js/kjs_html.h:
* html/HTMLMetaElement.h:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14413
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Tue, 16 May 2006 09:06:04 +0000 (09:06 +0000)]
Bug 8936, eliminate WebTextRendererFactory and convert it over to the
new FontCache.
Reviewed by andersca
* WebCore.xcodeproj/project.pbxproj:
* bridge/mac/WebCoreStringTruncator.mm:
* kwq/KWQComboBox.mm:
* kwq/KWQLineEdit.mm:
* kwq/KWQListBox.mm:
* platform/Font.h:
(WebCore::Font::bold):
* platform/FontCache.cpp: Added.
(WebCore::FontPlatformDataCacheKey::m_italic):
(WebCore::FontPlatformDataCacheKey::operator==):
(WebCore::computeHash):
(WebCore::FontPlatformDataCacheKeyHash::hash):
(WebCore::FontPlatformDataCacheKeyHash::equal):
(WebCore::FontPlatformDataCacheKeyTraits::deletedValue):
(WebCore::FontCache::getCachedFontPlatformData):
(WebCore::FontDataCacheKeyHash::hash):
(WebCore::FontDataCacheKeyHash::equal):
(WebCore::FontDataCacheKeyTraits::deletedValue):
(WebCore::FontCache::getCachedFontData):
(WebCore::FontCache::getFontData):
(WebCore::FontCache::clearCommonCaches):
* platform/FontCache.h:
* platform/FontData.h:
* platform/FontFamily.cpp:
(WebCore::FontFamily::FontFamily):
(WebCore::FontFamily::operator=):
(WebCore::FontFamily::setFamily):
* platform/FontFamily.h:
(WebCore::FontFamily::familyIsEmpty):
* platform/FontPlatformData.h:
(WebCore::FontPlatformData::hash):
(WebCore::FontPlatformData::operator==):
* platform/mac/FontCacheMac.mm:
(WebCore::getAppDefaultValue):
(WebCore::getUserDefaultValue):
(WebCore::getLCDScaleParameters):
(WebCore::fontsChanged):
(WebCore::FontCache::registerForFontChanges):
(WebCore::FontCache::clearCaches):
(WebCore::FontCache::getFontDataForCharacters):
(WebCore::FontCache::getSimilarFontPlatformData):
(WebCore::FontCache::getLastResortFallbackFont):
(WebCore::FontCache::createFontPlatformData):
* platform/mac/FontData.mm:
(-[NSFont WebCore]):
(WidthMap::FontData::xHeight):
(WidthMap::FontData::smallCapsFontData):
(WidthMap::computeWidthForSpace):
(WidthMap::setUpFont):
(WidthMap::fillStyleWithAttributes):
(WidthMap::FontData::determinePitch):
* platform/mac/FontFallbackListMac.mm:
(WebCore::FontFallbackList::setPlatformFont):
* platform/mac/FontFamilyMac.mm: Removed.
* platform/mac/FontMac.mm:
* platform/mac/WebCoreTextRenderer.mm:
(WebCoreFindFont):
* platform/mac/WebFontCache.h: Added.
* platform/mac/WebFontCache.mm: Added.
(acceptableChoice):
(betterChoice):
(+[WebFontCache fontWithFamily:traits:size:]):
* platform/mac/WebTextRendererFactory.h: Removed.
* platform/mac/WebTextRendererFactory.mm: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14412
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Tue, 16 May 2006 08:31:14 +0000 (08:31 +0000)]
Update fast/text results.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14411
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 08:20:49 +0000 (08:20 +0000)]
2006-05-16 Eric Seidel <eseidel@apple.com>
Reviewed by andersca.
Add Rect.idl, even though it can't be used quite yet due to generator limitations.
* WebCore.xcodeproj/project.pbxproj:
* css/Rect.idl: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14410
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 07:54:01 +0000 (07:54 +0000)]
2006-05-16 Sam Weinig <sam.weinig@gmail.com>
Reviewed by darin. Landed by eseidel.
Patch for <http://bugzilla.opendarwin.org/show_bug.cgi?id=8924>
Bug 8924: re-apply the 'disabled type=file' change
from bug 5882 to RenderFileButton
* rendering/RenderFileButton.cpp:
(WebCore::RenderFileButton::updateFromElement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14409
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 07:52:04 +0000 (07:52 +0000)]
2006-05-16 Eric Seidel <eseidel@apple.com>
Reviewed by hyatt.
Split css_base.* into separate files (one per class).
http://bugzilla.opendarwin.org/show_bug.cgi?id=8935
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/kjs_css.cpp:
* css/CSSBorderImageValue.cpp:
* css/CSSBorderImageValue.h:
* css/CSSCharsetRule.h:
* css/CSSFontFaceRule.h:
* css/CSSGrammar.y:
* css/CSSImportRule.h:
* css/CSSInheritedValue.cpp:
* css/CSSInitialValue.cpp:
* css/CSSMediaRule.h:
* css/CSSMutableStyleDeclaration.h:
* css/CSSNamespace.h: Added.
(WebCore::CSSNamespace::CSSNamespace):
(WebCore::CSSNamespace::namespaceForPrefix):
* css/CSSPageRule.h:
* css/CSSPrimitiveValue.h:
* css/CSSProperty.cpp:
* css/CSSProperty.h:
* css/CSSRule.h:
* css/CSSRuleList.cpp:
* css/CSSSelector.cpp: Added.
* css/CSSSelector.h: Added.
(WebCore::CSSSelector::CSSSelector):
* css/CSSStyleDeclaration.h:
* css/CSSStyleRule.cpp:
* css/CSSStyleRule.h:
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::~CSSStyleSheet):
* css/CSSStyleSheet.h:
* css/CSSValue.h:
* css/CSSValueList.cpp:
* css/CSSValueList.h:
* css/FontFamilyValue.cpp:
* css/FontValue.cpp:
* css/FontValue.h:
* css/MediaList.h:
* css/ShadowValue.cpp:
* css/ShadowValue.h:
* css/StyleBase.cpp: Added.
(WebCore::StyleBase::stylesheet):
* css/StyleBase.h: Added.
(WebCore::StyleBase::StyleBase):
* css/StyleList.cpp: Added.
* css/StyleList.h: Added.
* css/StyleSheet.h:
* css/css_base.cpp: Removed.
* css/css_base.h: Removed.
* css/cssparser.cpp:
* css/cssstyleselector.cpp:
(WebCore::CSSStyleSelector::matchRulesForList):
* css/cssstyleselector.h:
* dom/CSSMappedAttributeDeclaration.h:
* ksvg2/svg/SVGColor.cpp:
(WebCore::SVGColor::SVGColor):
(WebCore::SVGColor::setRGBColor):
(WebCore::SVGColor::setRGBColorICCColor):
(WebCore::SVGColor::setColor):
(WebCore::SVGColor::cssText):
(WebCore::SVGColor::color):
* ksvg2/svg/SVGColor.h:
* ksvg2/svg/SVGStyledElement.cpp:
(WebCore::SVGStyledElement::SVGStyledElement):
(WebCore::SVGStyledElement::className):
(WebCore::SVGStyledElement::createRenderer):
(WebCore::SVGStyledElement::parseMappedAttribute):
(WebCore::SVGStyledElement::notifyAttributeChange):
(WebCore::SVGStyledElement::attributeChanged):
(WebCore::SVGStyledElement::canvas):
(WebCore::SVGStyledElement::updateCanvasItem):
(WebCore::SVGStyledElement::pushAttributeContext):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14408
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 05:33:34 +0000 (05:33 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
Reviewed by hyatt.
Split css_valueimpl.* and css_ruleimpl.* into separate files (one per class).
http://bugzilla.opendarwin.org/show_bug.cgi?id=8934
* WebCore+SVG/RGBColor.cpp:
(WebCore::RGBColor::RGBColor):
* WebCore.vcproj/WebCore/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/kjs_css.cpp:
(KJS::DOMCSSRule::classInfo):
* bindings/js/kjs_css.h:
* bindings/js/kjs_dom.cpp:
* bindings/js/kjs_html.cpp:
* bindings/js/kjs_window.cpp:
* bindings/objc/DOMCSS.mm:
* bindings/scripts/CodeGeneratorJS.pm:
* css/CSSBorderImageValue.cpp: Added.
(WebCore::CSSBorderImageValue::CSSBorderImageValue):
* css/CSSBorderImageValue.h: Added.
* css/CSSCharsetRule.h: Added.
(WebCore::CSSCharsetRule::CSSCharsetRule):
* css/CSSComputedStyleDeclaration.cpp:
(WebCore::valueForShadow):
(WebCore::):
* css/CSSComputedStyleDeclaration.h:
* css/CSSFontFaceRule.cpp: Added.
(WebCore::CSSFontFaceRule::CSSFontFaceRule):
* css/CSSFontFaceRule.h: Added.
(WebCore::CSSFontFaceRule::isFontFaceRule):
* css/CSSGrammar.y:
* css/CSSImageValue.cpp: Added.
(WebCore::CSSImageValue::CSSImageValue):
* css/CSSImageValue.h: Added.
* css/CSSImportRule.cpp: Added.
* css/CSSImportRule.h: Added.
* css/CSSInheritedValue.cpp: Added.
* css/CSSInheritedValue.h: Added.
* css/CSSInitialValue.cpp: Added.
* css/CSSInitialValue.h: Added.
* css/CSSMediaRule.cpp: Added.
(WebCore::CSSMediaRule::CSSMediaRule):
(WebCore::CSSMediaRule::~CSSMediaRule):
(WebCore::CSSMediaRule::append):
(WebCore::CSSMediaRule::deleteRule):
(WebCore::CSSMediaRule::cssText):
* css/CSSMediaRule.h: Added.
(WebCore::CSSMediaRule::media):
(WebCore::CSSMediaRule::cssRules):
* css/CSSMutableStyleDeclaration.cpp: Added.
(WebCore::CSSMutableStyleDeclaration::CSSMutableStyleDeclaration):
(WebCore::CSSMutableStyleDeclaration::setChanged):
* css/CSSMutableStyleDeclaration.h: Added.
* css/CSSPageRule.cpp: Added.
(WebCore::CSSPageRule::CSSPageRule):
* css/CSSPageRule.h: Added.
(WebCore::CSSPageRule::isPageRule):
* css/CSSPrimitiveValue.cpp: Added.
* css/CSSPrimitiveValue.h: Added.
* css/CSSProperty.cpp: Added.
(WebCore::CSSProperty::cssText):
* css/CSSProperty.h: Added.
(WebCore::CSSProperty::CSSProperty):
* css/CSSQuirkPrimitiveValue.h: Added.
* css/CSSRule.cpp: Added.
* css/CSSRule.h: Added.
(WebCore::CSSRule::CSSRule):
* css/CSSRuleList.cpp: Added.
(WebCore::CSSRuleList::CSSRuleList):
(WebCore::CSSRuleList::~CSSRuleList):
(WebCore::CSSRuleList::deleteRule):
(WebCore::CSSRuleList::append):
(WebCore::CSSRuleList::insertRule):
* css/CSSRuleList.h: Added.
(WebCore::CSSRuleList::item):
* css/CSSStyleDeclaration.cpp: Added.
(WebCore::CSSStyleDeclaration::CSSStyleDeclaration):
(WebCore::CSSStyleDeclaration::diff):
* css/CSSStyleDeclaration.h: Added.
* css/CSSStyleRule.cpp: Added.
(WebCore::CSSStyleRule::CSSStyleRule):
(WebCore::CSSStyleRule::selectorText):
* css/CSSStyleRule.h: Added.
* css/CSSStyleSheet.cpp:
(WebCore::CSSStyleSheet::ownerRule):
* css/CSSUnknownRule.h: Added.
(WebCore::CSSUnknownRule::CSSUnknownRule):
* css/CSSValue.h: Added.
* css/CSSValueList.cpp: Added.
* css/CSSValueList.h: Added.
* css/Counter.h: Added.
* css/DashboardRegion.h: Added.
* css/FontFamilyValue.cpp: Added.
* css/FontFamilyValue.h: Added.
(WebCore::FontFamilyValue::genericFamilyType):
* css/FontValue.cpp: Added.
(WebCore::FontValue::cssText):
* css/FontValue.h: Added.
* css/MediaList.cpp:
* css/Pair.h: Added.
(WebCore::Pair::~Pair):
* css/RectImpl.h: Added.
(WebCore::RectImpl::~RectImpl):
* css/ShadowValue.cpp: Added.
(WebCore::ShadowValue::ShadowValue):
* css/ShadowValue.h: Added.
* css/css_base.cpp:
* css/css_ruleimpl.cpp: Removed.
* css/css_ruleimpl.h: Removed.
* css/css_valueimpl.cpp: Removed.
* css/css_valueimpl.h: Removed.
* css/cssparser.cpp:
(WebCore::CSSParser::parseColor):
(WebCore::CSSParser::parseFontFamily):
* css/cssstyleselector.cpp:
(WebCore::CSSStyleSelector::locateCousinList):
(WebCore::CSSStyleSelector::checkSelector):
(WebCore::CSSRuleSet::addRulesFromSheet):
(WebCore::CSSStyleSelector::applyProperty):
(WebCore::CSSStyleSelector::mapBackgroundImage):
* css/cssstyleselector.h:
* dom/CSSMappedAttributeDeclaration.h:
(WebCore::CSSMappedAttributeDeclaration::CSSMappedAttributeDeclaration):
* dom/Document.cpp:
* editing/ApplyStyleCommand.cpp:
* editing/CompositeEditCommand.h:
* editing/EditCommand.cpp:
* editing/InsertLineBreakCommand.cpp:
(WebCore::InsertLineBreakCommand::doApply):
* editing/InsertLineBreakCommand.h:
* editing/InsertTextCommand.cpp:
(WebCore::InsertTextCommand::input):
* editing/RemoveCSSPropertyCommand.cpp:
(WebCore::RemoveCSSPropertyCommand::RemoveCSSPropertyCommand):
(WebCore::RemoveCSSPropertyCommand::~RemoveCSSPropertyCommand):
* editing/RemoveCSSPropertyCommand.h:
(WebCore::RemoveCSSPropertyCommand::styleDeclaration):
* html/HTMLBodyElement.cpp:
* html/HTMLElement.cpp:
* html/HTMLScriptElement.h:
* html/HTMLTokenizer.h:
* kcanvas/KCanvasFilters.h:
(WebCore::KCanvasFEColorMatrix::values):
(WebCore::KCanvasFEColorMatrix::setValues):
(WebCore::KCanvasFEConvolveMatrix::kernel):
(WebCore::KCanvasFEConvolveMatrix::setKernel):
* kcanvas/KCanvasPath.h:
* kcanvas/KCanvasTreeDebug.h:
(WebCore::operator<<):
* kcanvas/RenderPath.h:
* ksvg2/css/SVGCSSParser.cpp:
(WebCore::CSSParser::parseSVGValue):
(WebCore::CSSParser::parseSVGStrokeDasharray):
(WebCore::CSSParser::parseSVGPaint):
(WebCore::CSSParser::parseSVGColor):
* ksvg2/css/SVGCSSStyleSelector.cpp:
(WebCore::CSSStyleSelector::applySVGProperty):
* ksvg2/css/SVGRenderStyleDefs.h:
* ksvg2/ecma/Ecma.cpp:
* ksvg2/misc/KCanvasRenderingStyle.cpp:
* ksvg2/misc/KCanvasRenderingStyle.h:
* ksvg2/svg/SVGAnimationElement.cpp:
* ksvg2/svg/SVGColor.cpp:
* ksvg2/svg/SVGColor.h:
* ksvg2/svg/SVGCursorElement.h:
* ksvg2/svg/SVGFEColorMatrixElement.cpp:
(SVGFEColorMatrixElement::filterEffect):
* page/DOMWindow.cpp:
* page/Frame.cpp:
* page/FramePrivate.h:
* platform/DeprecatedValueList.h:
* rendering/RenderTextField.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14407
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ap [Tue, 16 May 2006 04:38:51 +0000 (04:38 +0000)]
JavaScriptCore:
* make-generated-sources.sh: Changed to be executable and removed
text in the file generated by "svn diff".
WebKitTools:
* Scripts/install-unix-extras: Changed to be executable and removed
text in the file generated by "svn diff".
* Scripts/regenerate-makefiles: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14406
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 16 May 2006 04:30:58 +0000 (04:30 +0000)]
* WebCore.xcodeproj/project.pbxproj: Removed duplicate files that were
screwing up Xcode.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14405
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 03:11:48 +0000 (03:11 +0000)]
Fix typo causing build failure.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14404
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
ggaren [Tue, 16 May 2006 02:54:40 +0000 (02:54 +0000)]
JavaScriptCore:
Reviewed by Maciej.
- Fixed <rdar://problem/
4534904> please do not treat "debugger" as
a reserved word while parsing JavaScript (and other ECMA reserved
words)
AKA
http://bugzilla.opendarwin.org/show_bug.cgi?id=6179
We treat "char" as a reserved word in JavaScript and firefox/IE do
not
(1) I unreserved most of the spec's "future reserved words" because
they're not reserved in IE or FF. (Most, but not all, because IE
somewhat randomly *does* reserve a few of them.)
(2) I made 'debugger' a legitimate statement that acts like an empty
statement because FF and IE support it.
* kjs/grammar.y:
* kjs/keywords.table:
LayoutTests:
- Tests for JavaScript reserved words and the 'debugger' statement
<rdar://problem/
4534904>
AKA
http://bugzilla.opendarwin.org/show_bug.cgi?id=6179
* fast/js/debugger-expected.txt: Added.
* fast/js/debugger.html: Added.
* fast/js/reserved-words-expected.txt: Added.
* fast/js/reserved-words.html: Added.
* fast/js/resources/debugger.js: Added.
* fast/js/resources/reserved-words.js: Added.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14403
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 02:21:59 +0000 (02:21 +0000)]
A few more style cleanup changes I missed in my last commit.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14402
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 02:08:51 +0000 (02:08 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
Reviewed by mjs.
Split css_stylesheetimpl.* into separate files (one per class).
http://bugzilla.opendarwin.org/show_bug.cgi?id=8933
* WebCore.vcproj/WebCore/WebCore.vcproj:
* WebCore.xcodeproj/project.pbxproj:
* css/CSSStyleSheet.cpp: Added.
(WebCore::CSSStyleSheet::CSSStyleSheet):
(WebCore::CSSStyleSheet::addRule):
(WebCore::CSSStyleSheet::deleteRule):
(WebCore::CSSStyleSheet::parseString):
(WebCore::CSSStyleSheet::docLoader):
* css/CSSStyleSheet.h: Added.
* css/MediaList.cpp: Added.
(WebCore::MediaList::MediaList):
(WebCore::MediaList::contains):
(WebCore::MediaList::parentStyleSheet):
(WebCore::MediaList::parentRule):
(WebCore::MediaList::deleteMedium):
(WebCore::MediaList::setMediaText):
* css/MediaList.h: Added.
* css/StyleSheet.cpp: Added.
(WebCore::StyleSheet::StyleSheet):
(WebCore::StyleSheet::parentStyleSheet):
(WebCore::StyleSheet::setMedia):
* css/StyleSheet.h: Added.
(WebCore::StyleSheet::ownerNode):
* css/StyleSheetList.cpp: Added.
(WebCore::StyleSheetList::~StyleSheetList):
(WebCore::StyleSheetList::add):
(WebCore::StyleSheetList::remove):
(WebCore::StyleSheetList::item):
* css/StyleSheetList.h: Added.
* css/css_stylesheetimpl.cpp: Removed.
* css/css_stylesheetimpl.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14401
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Tue, 16 May 2006 02:00:43 +0000 (02:00 +0000)]
* make-generated-sources.sh: Changed to be executable and removed
text in the file generated by "svn diff".
* move-js-headers.sh: Ditto.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14400
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
bdakin [Tue, 16 May 2006 01:04:39 +0000 (01:04 +0000)]
Reviewed by Darin.
These tests have new expected results after the fix for
http://bugzilla.opendarwin.org/show_bug.cgi?id=6838 Incomplete
repaint of collapsed table borders
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14399
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Tue, 16 May 2006 00:43:46 +0000 (00:43 +0000)]
64-bit build fixes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14398
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Tue, 16 May 2006 00:04:57 +0000 (00:04 +0000)]
JavaScriptCore:
Reviewed by John Sullivan.
Part of <rdar://problem/
4466508> Add 64-bit support to the Netscape Plugin API
Added to the Netscape Plugin API the concept of "plugin drawing models". The drawing model
determines the kind of graphics context created by the browser for the plugin, as well as
the Mac types of various Netscape Plugin API data structures.
There is a drawing model to represent the old QuickDraw-based API. It is used by default
if QuickDraw is available on the system, unless the plugin specifies another drawing model.
The big change is the addition of the CoreGraphics drawing model. A plugin may request this
drawing model to obtain access to a CGContextRef for drawing, instead of a QuickDraw CGrafPtr.
* bindings/npapi.h:
Define NP_NO_QUICKDRAW when compiling 64-bit; there is no 64-bit QuickDraw.
Added NPNVpluginDrawingModel, NPNVsupportsQuickDrawBool, and NPNVsupportsCoreGraphicsBool
variables.
Added NPDrawingModel enumeration. Currently the only drawing models are QuickDraw and
CoreGraphics.
NPRegion's type now depends on the drawing model specified by the plugin.
NP_Port is now only defined when QuickDraw is available.
Added NP_CGContext, which is the type of the NPWindow's "window" member in CoreGraphics mode.
WebKit:
Reviewed by John Sullivan.
Part of <rdar://problem/
4466508> Add 64-bit support to the Netscape Plugin API
Added to the Netscape Plugin API the concept of "plugin drawing models". The drawing model
determines the kind of graphics context created by the browser for the plugin, as well as
the Mac types of various Netscape Plugin API data structures.
There is a drawing model to represent the old QuickDraw-based API. It is used by default
if QuickDraw is available on the system, unless the plugin specifies another drawing model.
The big change is the addition of the CoreGraphics drawing model. A plugin may request this
drawing model to obtain access to a CGContextRef for drawing, instead of a QuickDraw CGrafPtr.
* Plugins/WebBaseNetscapePluginView.h:
Added PluginPort union, which wraps a NP_Port and a NP_CGContext. This is to make access to
the nPort and lastSetPort ivars more convenient now that the port type differs based on the
drawing model.
Changed types of nPort and lastSetPort to PluginPort so they can be used with any drawing model.
Added drawingModel ivar.
* Plugins/WebBaseNetscapePluginView.m:
Renamed PortState to PortState_QD. PortState is now an opaque pointer. PortState_QD cannot be
used if QuickDraw is unavailable.
(-[WebBaseNetscapePluginView fixWindowPort]):
Cannot be used if QuickDraw is unavailable.
(-[WebBaseNetscapePluginView saveAndSetNewPortStateForUpdate:]):
Only fix window port if drawing model is QuickDraw.
Re-ordered some code so I could group QuickDraw-specific stuff into switch and if blocks (that's
why the diff here is so terrible).
Now returns a malloc()'ed PortState that the caller is responsible for freeing. Renamed to
better reflect this behavior.
Support for the CoreGraphics drawing model -- fill PortState_CG struct, save CGContext state.
(-[WebBaseNetscapePluginView restorePortState:]):
Switch based on drawing model.
Support for the CoreGraphics drawing model -- restore CGContext state saved earlier.
(-[WebBaseNetscapePluginView sendEvent:]):
Formatting.
Don't set save/set port state or set the window in CoreGraphics mode unless the event being
sent is an updateEvt. We can't provide the plugin with a CGContext outside of our view display
cycle.
Don't restore PortState if it's NULL (didn't used to be a pointer). Free when we're done with it.
(-[WebBaseNetscapePluginView isNewWindowEqualToOldWindow]):
Formatting.
Switch how we compare ports based on the drawing model.
(-[WebBaseNetscapePluginView updateAndSetWindow]):
Fixed for CoreGraphics by triggering a redisplay instead of sending an update event to the plugin
outside of the view display cycle.
Don't restore PortState if it's NULL (didn't used to be a pointer). Free when we're done with it.
(-[WebBaseNetscapePluginView setWindowIfNecessary]):
Assert that the window is only set when updating in CoreGraphics mode.
Log differently depending on the drawing model.
(-[WebBaseNetscapePluginView start]):
Fall back on QuickDraw if the plugin does not specify a drawing model.
(-[WebBaseNetscapePluginView tellQuickTimeToChill]):
Cannot be used if QuickDraw is unavailable.
(-[WebBaseNetscapePluginView viewWillMoveToWindow:]):
Only call -tellQuickTimeToChill in QuickDraw mode.
(-[WebBaseNetscapePluginView viewHasMoved:]):
ditto
(-[WebBaseNetscapePluginView invalidateRegion:]):
NPRegion is a CGPathRef in CoreGraphics mode.
(-[WebBaseNetscapePluginView getVariable:value:]):
Added support for retriveing the NPNVpluginDrawingModel, NPNVsupportsQuickDrawBool, and
NPNVsupportsCoreGraphicsBool browser variables.
(-[WebBaseNetscapePluginView setVariable:value:]):
Added support for setting the NPNVpluginDrawingModel variable.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14397
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Tue, 16 May 2006 00:04:48 +0000 (00:04 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
* WebCore.xcodeproj/project.pbxproj: build fix.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14396
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 15 May 2006 23:53:33 +0000 (23:53 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
Reviewed by ggaren.
Split dom_xmlimpl.* into separate files (one per class).
* WebCore.xcodeproj/project.pbxproj:
* dom/Entity.cpp: Added.
(WebCore::Entity::Entity):
* dom/Entity.h: Added.
* dom/EntityReference.cpp: Added.
(WebCore::EntityReference::EntityReference):
* dom/EntityReference.h: Added.
* dom/Notation.cpp: Added.
(WebCore::Notation::Notation):
* dom/Notation.h: Added.
* dom/ProcessingInstruction.cpp: Added.
(WebCore::ProcessingInstruction::ProcessingInstruction):
* dom/ProcessingInstruction.h: Added.
* dom/dom_xmlimpl.cpp: Removed.
* dom/dom_xmlimpl.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14395
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
thatcher [Mon, 15 May 2006 23:30:24 +0000 (23:30 +0000)]
build fix
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14394
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 15 May 2006 23:23:42 +0000 (23:23 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
Reviewed by Tim Hatcher.
Split html_imageimpl.* into separate files (one per class).
http://bugzilla.opendarwin.org/show_bug.cgi?id=8929
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/JSCanvasRenderingContext2DBase.cpp:
* bindings/js/kjs_events.cpp:
* bindings/js/kjs_html.cpp:
* bindings/objc/DOMHTML.mm:
* bridge/mac/WebCoreFrameBridge.mm:
* dom/Document.cpp:
* editing/JSEditor.cpp:
* html/CanvasRenderingContext2D.cpp:
* html/HTMLAnchorElement.cpp:
* html/HTMLAreaElement.cpp: Added.
(WebCore::HTMLAreaElement::HTMLAreaElement):
(WebCore::HTMLAreaElement::mapMouseEvent):
(WebCore::HTMLAreaElement::getRect):
(WebCore::HTMLAreaElement::getRegion):
* html/HTMLAreaElement.h: Added.
* html/HTMLCanvasElement.h:
* html/HTMLDocument.cpp:
* html/HTMLElementFactory.cpp:
* html/HTMLFormCollection.cpp:
* html/HTMLFormElement.cpp:
* html/HTMLImageElement.cpp: Added.
(WebCore::HTMLImageElement::HTMLImageElement):
* html/HTMLImageElement.h: Added.
* html/HTMLImageLoader.cpp: Added.
(WebCore::HTMLImageLoader::HTMLImageLoader):
* html/HTMLImageLoader.h: Added.
* html/HTMLInputElement.cpp:
* html/HTMLMapElement.cpp: Added.
(WebCore::HTMLMapElement::mapMouseEvent):
(WebCore::HTMLMapElement::parseMappedAttribute):
* html/HTMLMapElement.h: Added.
* html/HTMLObjectElement.cpp:
* html/HTMLParser.cpp:
* html/html_imageimpl.cpp: Removed.
* html/html_imageimpl.h: Removed.
* ksvg2/misc/SVGImageLoader.h:
* kwq/WebCoreAXObject.mm:
(-[WebCoreAXObject addChildrenToArray:]):
* page/Frame.cpp:
* rendering/RenderImage.cpp:
(WebCore::RenderImage::RenderImage):
(WebCore::RenderImage::nodeAtPoint):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14393
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Mon, 15 May 2006 22:18:56 +0000 (22:18 +0000)]
Reviewed by Kevin Decker.
Follow-up to my previous PLT fix. I found upon further testing (by dramatically decreasing the
allowed display rate) that +_webkit_displayThrottledWindows did not always force a display when
necessary. The reason is that I was not giving a proper timeout to CFRunLoopRunInMode(). I was
passing 0, which was causing only "expired" timers to fire. This method is actually supposed to
block until all currently scheduled display timers fire.
I tested this change and found that it did not affect my PLT times when the display rate was
capped to 60 fps. It also behaves as expected when the display rate is set much lower (say, 1
display per second); my previous fix did not work well at such display rates.
* Misc/WebNSWindowExtras.m:
(+[NSWindow _webkit_displayThrottledWindows]):
Run the runloop for an amount of time equal to the minimum allowed interval between displays.
This ensures that we'll block until all currently scheduled display timers fire (but we won't
block for future display timers).
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14391
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 15 May 2006 21:57:01 +0000 (21:57 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
Reviewed by beth.
Split html_blockimpl.* into separate files (one per class).
http://bugzilla.opendarwin.org/show_bug.cgi?id=8927
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/kjs_html.cpp:
* bindings/objc/DOMHTML.mm:
* html/HTMLBlockquoteElement.cpp: Added.
(WebCore::HTMLBlockquoteElement::HTMLBlockquoteElement):
* html/HTMLBlockquoteElement.h: Added.
* html/HTMLDivElement.cpp: Added.
* html/HTMLDivElement.h: Added.
* html/HTMLElementFactory.cpp:
* html/HTMLHRElement.cpp: Added.
* html/HTMLHRElement.h: Added.
* html/HTMLHeadingElement.cpp: Added.
* html/HTMLHeadingElement.h: Added.
* html/HTMLMarqueeElement.cpp: Added.
(WebCore::HTMLMarqueeElement::HTMLMarqueeElement):
(WebCore::HTMLMarqueeElement::parseMappedAttribute):
* html/HTMLMarqueeElement.h: Added.
* html/HTMLParagraphElement.cpp: Added.
* html/HTMLParagraphElement.h: Added.
* html/HTMLParser.cpp:
* html/HTMLPreElement.cpp: Added.
(WebCore::HTMLPreElement::HTMLPreElement):
(WebCore::HTMLPreElement::setWrap):
* html/HTMLPreElement.h: Added.
* html/HTMLTextFieldInnerElement.h:
* html/html_blockimpl.cpp: Removed.
* html/html_blockimpl.h: Removed.
* rendering/RenderLayer.cpp:
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14390
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 15 May 2006 21:16:29 +0000 (21:16 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
Reviewed by ggaren.
Split render_list.* and html_listimpl.* into separate files (one per class).
* WebCore.xcodeproj/project.pbxproj:
* bindings/js/kjs_html.cpp:
* bindings/objc/DOMHTML.mm:
* bridge/mac/FrameMac.mm:
(WebCore::FrameMac::attributedString):
* html/HTMLDListElement.cpp: Added.
(WebCore::HTMLDListElement::HTMLDListElement):
* html/HTMLDListElement.h: Added.
* html/HTMLDirectoryElement.cpp: Added.
(WebCore::HTMLDirectoryElement::HTMLDirectoryElement):
* html/HTMLDirectoryElement.h: Added.
* html/HTMLElementFactory.cpp:
* html/HTMLKeygenElement.cpp:
* html/HTMLLIElement.cpp: Added.
(WebCore::HTMLLIElement::HTMLLIElement):
(WebCore::HTMLLIElement::parseMappedAttribute):
(WebCore::HTMLLIElement::attach):
(WebCore::HTMLLIElement::setType):
* html/HTMLLIElement.h: Added.
* html/HTMLMenuElement.cpp: Added.
(WebCore::HTMLMenuElement::HTMLMenuElement):
* html/HTMLMenuElement.h: Added.
* html/HTMLOListElement.cpp: Added.
(WebCore::HTMLOListElement::HTMLOListElement):
(WebCore::HTMLOListElement::parseMappedAttribute):
(WebCore::HTMLOListElement::setType):
* html/HTMLOListElement.h: Added.
(WebCore::HTMLOListElement::start):
* html/HTMLOptionElement.cpp:
(WebCore::HTMLOptionElement::HTMLOptionElement):
(WebCore::HTMLOptionElement::checkDTD):
(WebCore::HTMLOptionElement::text):
(WebCore::HTMLOptionElement::setText):
(WebCore::HTMLOptionElement::getSelect):
(WebCore::HTMLOptionElement::setLabel):
* html/HTMLOptionElement.h:
* html/HTMLParser.cpp:
* html/HTMLSelectElement.cpp:
(WebCore::HTMLSelectElement::HTMLSelectElement):
* html/HTMLUListElement.cpp: Added.
(WebCore::HTMLUListElement::HTMLUListElement):
* html/HTMLUListElement.h: Added.
* html/html_listimpl.cpp: Removed.
* html/html_listimpl.h: Removed.
* kwq/WebCoreAXObject.mm:
* rendering/InlineFlowBox.cpp:
* rendering/ListMarkerBox.cpp: Added.
(WebCore::ListMarkerBox::ListMarkerBox):
(WebCore::ListMarkerBox::isText):
* rendering/ListMarkerBox.h: Added.
* rendering/RenderContainer.cpp:
(WebCore::updateListMarkerNumbers):
(WebCore::RenderContainer::addChild):
(WebCore::RenderContainer::removeChild):
(WebCore::RenderContainer::layout):
(WebCore::RenderContainer::removeLeftoverAnonymousBoxes):
(WebCore::RenderContainer::positionForCoordinates):
(WebCore::RenderContainer::lineBoxRects):
* rendering/RenderListItem.cpp: Added.
(WebCore::RenderListItem::RenderListItem):
(WebCore::RenderListItem::setStyle):
(WebCore::RenderListItem::calcValue):
(WebCore::RenderListItem::markerStringValue):
* rendering/RenderListItem.h: Added.
(WebCore::RenderListItem::renderName):
(WebCore::RenderListItem::setValue):
(WebCore::RenderListItem::setNotInList):
(WebCore::RenderListItem::notInList):
* rendering/RenderListMarker.cpp: Added.
(WebCore::RenderListMarker::RenderListMarker):
(WebCore::RenderListMarker::setStyle):
(WebCore::RenderListMarker::paint):
(WebCore::RenderListMarker::layout):
(WebCore::RenderListMarker::calcMinMaxWidth):
* rendering/RenderListMarker.h: Added.
(WebCore::RenderListMarker::renderName):
* rendering/RenderObject.cpp:
* rendering/render_list.cpp: Removed.
* rendering/render_list.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14389
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Mon, 15 May 2006 21:12:22 +0000 (21:12 +0000)]
Land updated results.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14388
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Mon, 15 May 2006 20:49:23 +0000 (20:49 +0000)]
Reviewed by Tim Omernick.
- followup to previous fix; I hadn't tested quitting adequately
* WebView/WebHTMLView.m:
(-[WebHTMLView dealloc]):
call removeAllToolTips before clearing _private so that removeTrackingRect: override can work
properly. Normally removeAllToolTips would be called by super, but that's too late.
(-[WebHTMLView finalize]):
ditto
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14387
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sullivan [Mon, 15 May 2006 20:23:28 +0000 (20:23 +0000)]
Reviewed by Darin.
- fixed <rdar://problem/
4503016> TOT assertion failure in -[WebHTMLView(WebPrivate) removeTrackingRect:]
We have some tricky code to deal with tracking rects, which succumbed to a fix in AppKit. Updated our
tricky code to work with the AppKit fix.
* WebView/WebHTMLViewInternal.h:
new instance variable lastToolTipTag
* WebView/WebHTMLView.m:
(-[WebHTMLView removeTrackingRect:]):
handle removing lastToolTipTag by calling super
(-[WebHTMLView _setToolTip:]):
save tool tip tag in lastToolTipTag; this apparently used to always return 0, so we formerly had no way
to distinguish it from the no-tool-tips-yet case.
* WebKit.xcodeproj/project.pbxproj:
Xcode removed some old cruft
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14383
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 15 May 2006 19:15:47 +0000 (19:15 +0000)]
2006-05-15 Sam Weinig <sam.weinig@gmail.com>
Reviewed by eseidel.
Split render_form.* into separate files (one per class).
http://bugzilla.opendarwin.org/show_bug.cgi?id=8889
* WebCore.xcodeproj/project.pbxproj:
* html/HTMLButtonElement.cpp:
(WebCore::HTMLButtonElement::HTMLButtonElement):
* html/HTMLFieldSetElement.cpp:
* html/HTMLFormElement.cpp:
* html/HTMLInputElement.cpp:
* html/HTMLLabelElement.cpp:
* html/HTMLLegendElement.cpp:
(WebCore::HTMLLegendElement::createRenderer):
* html/HTMLOptionElement.cpp:
* html/HTMLSelectElement.cpp:
* html/HTMLTextAreaElement.cpp:
(WebCore::HTMLTextAreaElement::selectionStart):
(WebCore::HTMLTextAreaElement::selectionEnd):
(WebCore::HTMLTextAreaElement::setSelectionStart):
(WebCore::HTMLTextAreaElement::setSelectionEnd):
(WebCore::HTMLTextAreaElement::setSelectionRange):
(WebCore::HTMLTextAreaElement::parseMappedAttribute):
(WebCore::HTMLTextAreaElement::createRenderer):
(WebCore::HTMLTextAreaElement::setValue):
(WebCore::HTMLTextAreaElement::setDefaultValue):
(WebCore::HTMLTextAreaElement::setAccessKey):
* kwq/KWQComboBox.mm:
* kwq/KWQFileButton.mm:
* kwq/KWQListBox.mm:
* kwq/KWQSlider.mm:
* platform/mac/WebCoreTextField.mm:
* rendering/RenderFieldset.cpp: Added.
(WebCore::RenderFieldset::RenderFieldset):
(WebCore::RenderFieldset::findLegend):
(WebCore::RenderFieldset::paintBorderMinusLegend):
(WebCore::RenderFieldset::setStyle):
* rendering/RenderFieldset.h: Added.
(WebCore::RenderFieldset::renderName):
* rendering/RenderFileButton.cpp: Added.
(WebCore::RenderFileButton::RenderFileButton):
(WebCore::RenderFileButton::calcMinMaxWidth):
(WebCore::RenderFileButton::updateFromElement):
(WebCore::RenderFileButton::click):
* rendering/RenderFileButton.h: Added.
(WebCore::RenderFileButton::renderName):
(WebCore::RenderFileButton::calcReplacedHeight):
(WebCore::RenderFileButton::isEditable):
* rendering/RenderFormElement.cpp: Added.
(WebCore::RenderFormElement::RenderFormElement):
(WebCore::RenderFormElement::baselinePosition):
(WebCore::RenderFormElement::layout):
* rendering/RenderFormElement.h: Added.
(WebCore::RenderFormElement::renderName):
(WebCore::RenderFormElement::isFormElement):
(WebCore::RenderFormElement::borderTop):
(WebCore::RenderFormElement::borderBottom):
(WebCore::RenderFormElement::borderLeft):
(WebCore::RenderFormElement::borderRight):
(WebCore::RenderFormElement::paddingTop):
(WebCore::RenderFormElement::paddingBottom):
(WebCore::RenderFormElement::paddingLeft):
(WebCore::RenderFormElement::paddingRight):
(WebCore::RenderFormElement::canHaveIntrinsicMargins):
(WebCore::RenderFormElement::intrinsicMargin):
(WebCore::RenderFormElement::isEditable):
* rendering/RenderImageButton.cpp: Added.
(WebCore::RenderImageButton::RenderImageButton):
* rendering/RenderImageButton.h: Added.
(WebCore::RenderImageButton::renderName):
(WebCore::RenderImageButton::isImageButton):
* rendering/RenderLabel.cpp: Added.
(WebCore::RenderLabel::RenderLabel):
* rendering/RenderLabel.h: Added.
(WebCore::RenderLabel::renderName):
* rendering/RenderLegend.cpp: Added.
(WebCore::RenderLegend::RenderLegend):
* rendering/RenderLegend.h: Added.
(WebCore::RenderLegend::renderName):
* rendering/RenderLineEdit.cpp: Added.
(WebCore::RenderLineEdit::RenderLineEdit):
* rendering/RenderLineEdit.h: Added.
(WebCore::RenderLineEdit::renderName):
(WebCore::RenderLineEdit::calcReplacedHeight):
(WebCore::RenderLineEdit::canHaveIntrinsicMargins):
(WebCore::RenderLineEdit::isTextField):
(WebCore::RenderLineEdit::isEditable):
* rendering/RenderSelect.cpp: Added.
(WebCore::RenderSelect::RenderSelect):
(WebCore::RenderSelect::setWidgetWritingDirection):
(WebCore::RenderSelect::setStyle):
(WebCore::RenderSelect::updateFromElement):
(WebCore::RenderSelect::baselinePosition):
(WebCore::RenderSelect::calcMinMaxWidth):
(WebCore::RenderSelect::layout):
(WebCore::RenderSelect::valueChanged):
(WebCore::RenderSelect::selectionChanged):
(WebCore::RenderSelect::updateSelection):
* rendering/RenderSelect.h: Added.
(WebCore::RenderSelect::renderName):
(WebCore::RenderSelect::calcReplacedHeight):
(WebCore::RenderSelect::canHaveIntrinsicMargins):
(WebCore::RenderSelect::selectionChanged):
(WebCore::RenderSelect::setSelectionChanged):
* rendering/RenderSlider.cpp: Added.
(WebCore::RenderSlider::calcMinMaxWidth):
(WebCore::RenderSlider::updateFromElement):
* rendering/RenderSlider.h: Added.
(WebCore::RenderSlider::renderName):
(WebCore::RenderSlider::canHaveIntrinsicMargins):
* rendering/RenderTextArea.cpp: Added.
(WebCore::RenderTextArea::RenderTextArea):
(WebCore::RenderTextArea::calcMinMaxWidth):
(WebCore::RenderTextArea::setStyle):
(WebCore::RenderTextArea::updateFromElement):
(WebCore::RenderTextArea::selectionStart):
(WebCore::RenderTextArea::selectionEnd):
(WebCore::RenderTextArea::setSelectionStart):
(WebCore::RenderTextArea::setSelectionEnd):
(WebCore::RenderTextArea::select):
(WebCore::RenderTextArea::setSelectionRange):
* rendering/RenderTextArea.h: Added.
(WebCore::RenderTextArea::renderName):
(WebCore::RenderTextArea::isTextArea):
(WebCore::RenderTextArea::isEdited):
(WebCore::RenderTextArea::canHaveIntrinsicMargins):
(WebCore::RenderTextArea::isEditable):
* rendering/render_form.cpp: Removed.
* rendering/render_form.h: Removed.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14382
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
tomernic [Mon, 15 May 2006 19:05:27 +0000 (19:05 +0000)]
Reviewed by Darin.
Safari's Page Load Test (PLT) saturates the runloop with so many sources that timers are not allowed to fire
as frequently as they should. This is a general problem with the PLT -- because of this, it does not measure
work done in timer callbacks during/after the page load process.
Unfortunately, this aspect of the PLT interferes with our window display throttle hack. Because we throttle
display using timers, and the PLT starves timers, most of the pages loaded by the PLT do not actually display.
This makes the PLT run "too fast", yielding ridiculously fast numbers compared to when throttling is disabled.
I've added a new method that the PLT can call after each page load to force any starved display throttle timers
to fire. By doing this, Safari's PLT will be guaranteed to display each page at least once.
* Misc/WebNSWindowExtras.h:
* Misc/WebNSWindowExtras.m:
Added a special internal runloop mode for the throttle timers.
(+[NSWindow _webkit_displayThrottledWindows]):
Run the runloop in our special internal mode until there are no more sources to handle.
(requestWindowDisplay):
Schedule the timer in the new mode as well as the standard modes.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14379
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Mon, 15 May 2006 18:17:37 +0000 (18:17 +0000)]
2006-05-15 Anders Carlsson <acarlsson@apple.com>
Reviewed by Eric.
Remove the XPath log calls. They were causing leaks and were never
really useful.
* bridge/mac/WebCorePageBridge.mm:
(initializeLoggingChannelsIfNecessary):
* platform/Logging.cpp:
* platform/Logging.h:
* xpath/XPathResult.cpp:
(WebCore::XPathResult::convertTo):
* xpath/impl/XPathFunctions.cpp:
(round):
(WebCore::XPath::FunCount::doEvaluate):
(WebCore::XPath::FunSum::doEvaluate):
(WebCore::XPath::FunctionLibrary::createFunction):
* xpath/impl/XPathPath.cpp:
(WebCore::XPath::Filter::doEvaluate):
(WebCore::XPath::LocationPath::doEvaluate):
* xpath/impl/XPathPredicate.cpp:
(WebCore::XPath::Negative::doEvaluate):
(WebCore::XPath::NumericOp::doEvaluate):
(WebCore::XPath::Union::doEvaluate):
* xpath/impl/XPathStep.cpp:
(WebCore::XPath::Step::evaluate):
(WebCore::XPath::Step::nodesInAxis):
(WebCore::XPath::Step::nodeTestMatches):
* xpath/impl/XPathValue.cpp:
(WebCore::XPath::Value::toNodeVector):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14378
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
eseidel [Mon, 15 May 2006 17:14:05 +0000 (17:14 +0000)]
2006-05-15 Eric Seidel <eseidel@apple.com>
Fix linux build.
* html/HTMLBodyElement.cpp: Fix case of #include "cssstyleselector.h"
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14377
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Mon, 15 May 2006 08:47:31 +0000 (08:47 +0000)]
WebCore:
2006-05-15 Anders Carlsson <acarlsson@apple.com>
Reviewed by Maciej.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8913
REGRESSION: Can view source for text files
* bridge/mac/WebCoreFrameBridge.h:
* bridge/mac/WebCoreFrameBridge.mm:
(-[WebCoreFrameBridge canProvideDocumentSource]):
(-[WebCoreFrameBridge canSaveAsWebArchive]):
WebKit:
2006-05-15 Anders Carlsson <acarlsson@apple.com>
Reviewed by Maciej.
http://bugzilla.opendarwin.org/show_bug.cgi?id=8913
REGRESSION: Can view source for text files
* WebView/WebDocumentPrivate.h:
Add canSaveAsWebArchive.
* WebView/WebHTMLRepresentation.m:
(-[WebHTMLRepresentation canProvideDocumentSource]):
Call the bridge.
(-[WebHTMLRepresentation canSaveAsWebArchive]):
New function. This will be used in Safari ToT to determine if a page can be saved as an archive.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14376
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Mon, 15 May 2006 08:03:42 +0000 (08:03 +0000)]
Remove the .forPrinter boolean from FontPlatformData. After the initial
acquisition of an NSFont, the font is then adjusted to printer or screen
when put into a FontPlatformData. Then it can simply be used in the hash
lookup to get a FontData.
Reviewed by mjs
* platform/Font.cpp:
(WebCore::WidthIterator::advance):
* platform/FontData.h:
* platform/FontDescription.h:
(WebCore::FontDescription::bold):
* platform/FontPlatformData.h:
(WebCore::FontPlatformData::syntheticOblique):
* platform/mac/FontCacheMac.mm:
(WebCore::FontCache::getFontDataForCharacters):
* platform/mac/FontData.mm:
(WebCore::FontData::smallCapsFontData):
(WebCore::getSmallCapsFontData):
(WebCore::setUpFont):
* platform/mac/FontMac.mm:
(WebCore::ATSULayoutParameters::initialize):
* platform/mac/WebTextRendererFactory.h:
* platform/mac/WebTextRendererFactory.mm:
(-[WebTextRendererFactory rendererWithFont:]):
(-[WebTextRendererFactory fontWithDescription:WebCore::familyIndex:]):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14375
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
andersca [Mon, 15 May 2006 06:59:42 +0000 (06:59 +0000)]
2006-05-15 Anders Carlsson <acarlsson@apple.com>
Reviewed by Maciej.
* dom/Document.idl:
Remove #if XPATH_SUPPORT until we have a way to feed defines to the bindings generator
(see http://bugzilla.opendarwin.org/show_bug.cgi?id=8912)
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14374
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
hyatt [Mon, 15 May 2006 04:57:26 +0000 (04:57 +0000)]
Update svg layout tests.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14373
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 15 May 2006 04:42:09 +0000 (04:42 +0000)]
LayoutTests:
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6838
Incomplete repaint of collapsed table borders
* fast/repaint/table-collapsed-border-expected.checksum: Added.
* fast/repaint/table-collapsed-border-expected.png: Added.
* fast/repaint/table-collapsed-border-expected.txt: Added.
* fast/repaint/table-collapsed-border.html: Added.
WebCore:
Reviewed by Hyatt.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=6838
Incomplete repaint of collapsed table borders
This patch updates the implementation of collapsing borders to match
the current spec.
Test: fast/repaint/table-collapsed-border.html
* rendering/RenderTable.cpp:
(WebCore::RenderTable::RenderTable):
(WebCore::RenderTable::layout): Calculate horizontal overflows.
(WebCore::RenderTable::calcMinMaxWidth): Added call to recalcHorizontalBorders.
(WebCore::RenderTable::colElement): Made const.
(WebCore::RenderTable::calcBorderLeft): Calculates the left border. In the collapsing
borders model, this is the left border of the leftmost cell of the first row.
(WebCore::RenderTable::calcBorderRight): Ditto for the right border.
(WebCore::RenderTable::recalcHorizontalBorders): Added.
(WebCore::RenderTable::borderTop): Changed to return outerBorderTop in the
collapsing case.
(WebCore::RenderTable::borderBottom): Changed to return outerBorderBottom in
the collapsing case.
(WebCore::RenderTable::outerBorderTop): Added. Returns the table half of the
top border, which is half the widest top border on the first row.
(WebCore::RenderTable::outerBorderBottom): Added. Returns the table half of the
bottom border, which is half the widest bottom border on the last row.
(WebCore::RenderTable::outerBorderLeft): Added. Returns the table half of the
left border, which is half the widest left border on the leftmost column.
(WebCore::RenderTable::outerBorderRight): Added. Returns the table half of the
right border, which is half the widest right border on the rightmost column.
(WebCore::RenderTable::cellAbove): Return 0 if the cell is in the first row
of the header.
(WebCore::RenderTable::cellBelow): Return 0 if the cell is in the last row
of the footer.
* rendering/RenderTable.h:
(WebCore::RenderTable::borderLeft):
(WebCore::RenderTable::borderRight):
(WebCore::RenderTable::overflowHeight):
* rendering/RenderTableCell.cpp:
(WebCore::RenderTableCell::borderLeft): Removed unnecessary use of floats.
(WebCore::RenderTableCell::borderTop): Ditto.
(WebCore::RenderTableCell::paint): Account for the table half of the vertical
borders.
(WebCore::RenderTableCell::paintCollapsedBorder): Removed unnecessary use of
floats.
* rendering/RenderTableSection.cpp:
(WebCore::RenderTableSection::RenderTableSection):
(WebCore::RenderTableSection::layoutRows): Added call to recalcOuterBorder.
(WebCore::RenderTableSection::calcOuterBorderTop): Added. Calculates the outer half of
the section's top border, which is half the widest top border on the first row.
(WebCore::RenderTableSection::calcOuterBorderBottom): Ditto for the bottom border.
(WebCore::RenderTableSection::calcOuterBorderLeft): Ditto for the left border.
(WebCore::RenderTableSection::calcOuterBorderRight): Ditto for the right border.
(WebCore::RenderTableSection::recalcOuterBorder): Added.
(WebCore::RenderTableSection::paint): Account for the table half of the borders.
* rendering/RenderTableSection.h:
(WebCore::RenderTableSection::outerBorderTop):
(WebCore::RenderTableSection::outerBorderBottom):
(WebCore::RenderTableSection::outerBorderLeft):
(WebCore::RenderTableSection::outerBorderRight):
* rendering/render_style.cpp:
(WebCore::RenderStyle::diff): Changed to return Layout if a border style changed
from 'hidden' to 'none' or vice versa in the collapsing borders model, since
'hidden' suppresses other borders.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14372
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 15 May 2006 04:37:25 +0000 (04:37 +0000)]
WebCore:
Reviewed by Darin.
- test for http://bugzilla.opendarwin.org/show_bug.cgi?id=8739
Crash in RenderTableSection::paint due to manipulating DOM on resize
* manual-tests/dom-manipulation-on-resize.html: Added.
WebKit:
Reviewed by Darin.
- fix http://bugzilla.opendarwin.org/show_bug.cgi?id=8739
Crash in RenderTableSection::paint due to manipulating DOM on resize
Manual test: manual-tests/dom-manipulation-on-resize.html
* WebView/WebHTMLView.m:
(-[NSArray layoutToMinimumPageWidth:maximumPageWidth:adjustingViewSize:]): Relayout if necessary
after sending the resize event.
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14371
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
darin [Mon, 15 May 2006 04:33:29 +0000 (04:33 +0000)]
LayoutTests:
Reviewed by Darin.
Test for http://bugzilla.opendarwin.org/show_bug.cgi?id=5882:
disabled type="file" element doesn't appear disabled
* fast/forms/file-input-disabled.html: Added.
* fast/forms/file-input-disabled-expected.txt: Added.
* fast/forms/file-input-disabled-expected.png: Added.
* fast/forms/file-input-disabled-expected.checksum: Added.
WebCore:
Reviewed by Darin.
Fix for http://bugzilla.opendarwin.org/show_bug.cgi?id=5882:
disabled type="file" element doesn't appear disabled
Be sure to call setDisabled on the file button when in
RenderFileButton::updateFromElement.
* kwq/KWQFileButton.h:
* kwq/KWQFileButton.mm:
(-[WebFileChooserButton setEnabled:]):
(KWQFileButton::setDisabled):
* rendering/render_form.cpp:
(WebCore::RenderFileButton::updateFromElement):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14370
268f45cc-cd09-0410-ab3c-
d52691b4dbfc
sfalken [Sun, 14 May 2006 22:12:02 +0000 (22:12 +0000)]
2006-05-14 Steve Falkenburg <sfalken@apple.com>
Fix Windows build.
* platform/win/FontWin.cpp:
(WebCore::FontFallbackList::fontDataAt):
(WebCore::hackishExtentForString):
(WebCore::Font::floatWidth):
(WebCore::Font::drawText):
(WebCore::Font::selectionRectForText):
(WebCore::Font::offsetForPosition):
git-svn-id: https://svn.webkit.org/repository/webkit/trunk@14369
268f45cc-cd09-0410-ab3c-
d52691b4dbfc