Timeline


and

10/15/07:

22:53 Changeset [26653] by ddkilzer

WebKitTools:

Reviewed by Eric.

  • Scripts/bisect-builds: Added.
22:17 Changeset [26652] by bdash

2007-10-15 Mark Rowe <mrowe@apple.com>

Reviewed by John.

<rdar://problem/5494040> Reproducible assertion failure in WebCore::IconDatabase::iconForPageURL

A race condition between icon database import and Safari asking for an icon for the empty URL
was resulting in a PageURLRecord being created for a URL that can never be retained. By enforcing
that PageURLRecord's cannot be created for the empty URL we can prevent the assertion from failing.

  • loader/icon/IconDatabase.cpp: (WebCore::IconDatabase::iconForPageURL): (WebCore::IconDatabase::getOrCreatePageURLRecord): Bail out early if the URL is empty. (WebCore::IconDatabase::performURLImport): Don't create the PageURLRecord if the URL is empty.
21:51 Changeset [26651] by honeycutt

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Ollie.

Use OwnPtr for m_deliveryData, and fix a bug where we were memmove()ing
over m_deliveryData instead of its data buffer

  • plugins/win/PluginStreamWin.cpp: (WebCore::PluginStreamWin::~PluginStreamWin): Don't delete m_deliveryData (WebCore::PluginStreamWin::deliverData): Fix memmove() call (WebCore::PluginStreamWin::didReceiveData): Assign using OwnPtr::set()
  • plugins/win/PluginStreamWin.h: Use OwnPtr
21:14 Changeset [26650] by bdash

Versioning.

21:11 Changeset [26649] by bdash

New tag.

20:42 Changeset [26648] by sfalken

Merged fix from r26646.

20:39 Changeset [26647] by bdash

Merge r26645.

20:39 Changeset [26646] by sfalken

Reviewed by Oliver.

Add missing null check.

  • platform/network/cf/AuthenticationCF.cpp: (WebCore::core):
20:30 Changeset [26645] by kdecker

Reviewed by Darin Adler.


Fixed: <rdar://problem/5520541> REGRESSION: Broken image when forwarding certain email on Tiger


  • WebCoreSupport/WebFrameBridge.mm: The problem was that we were loading Mail's WebKit plug-in too soon, which borked some necessary housekeeping on behalf of Mail. The fix is to add a quirk that treats Tiger Mail's WebKit plug-in like a Netscape plug-in, thus ensuring the plug-in will load during first layout and not attach time. For this plug-in, loading at first layout is expected and is consistent with Safari 2 behavior.
19:34 Changeset [26644] by bdash

2007-10-15 Mark Rowe <mrowe@apple.com>

Fix the no-SVG build again. Add new transform CSS properties to the switch statements.

  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
18:53 Changeset [26643] by bdash

New tag (part 2).

18:53 Changeset [26642] by bdash

New tag (part 1).

18:51 Changeset [26641] by bdash

Versioning.

18:49 Changeset [26640] by bdash

2007-10-15 Mark Rowe <mrowe@apple.com>

Roll out r25691, the merge of r24938 and r24946.

18:30 Changeset [26639] by mjs

JavaScriptCore:

Reviewed by Darin.


  • kjs/testkjs.cpp: (TestFunctionImp::callAsFunction): Implement "load" for compatibility with SpiderMonkey. (TestFunctionImp::): ditto (doIt): ditto (kjsmain): Drop useless --> from output.

SunSpider:

Reviewed by Darin.


A start on a new JavaScript benchmark, with standalone and
browser-hosted drivers.


The test content is still incomplete and the drivers could use
some more features but there is enough here to make a good start.


The drivers compute a 95% confidence interval on the mean for the
whole test, each category, and each individual test to make it
easier to tell whether differences are statistically
significant. The confidence interval can be narrowed by running
the test more times.


  • TODO: Added. Remaining things that need to be done.
  • sunspider: Added. Perl script that acts as the standalone test driver.
  • resources/sunspider-standalone-driver.js: Added. JavaScript part of standalone test driver.
  • resources/sunspider-analyze-results.js: Added. JavaScript statistical analysis code.
  • resources/TEMPLATE.html: Added. Template for browser-hosted tests.
  • make-hosted: Added. Script to generate browser-hosted tests.
  • hosted/sunspider.html: Added. Start page for browser-hosted test.
  • hosted/sunspider-driver.html: Added. Driver for browser-hosted tests.
  • hosted/sunspider-results.html: Added. Results page for browser-hosted tests.
  • hosted/sunspider-record-result.js: Added. Helper file for browser-hosted tests.
  • tests/LIST: Added. List of tests to use.
  • tests/bitops-3bit-bits-in-byte.js: Added. Some initial test content.
  • tests/bitops-bits-in-byte.js: Added. Ditto.
  • tests/bitops-bitwise-and.js: Added. Ditto.
  • tests/math-cordic.js: Added. Ditto.

WebKitTools:

Reviewed by Darin.

  • Scripts/run-sunspider: Added. Wrapper to run sunspider on the current development or release build of JavaScriptCore.
16:54 Changeset [26638] by darin

Reviewed by Mitz.

  • platform/Font.h:
  • platform/Font.cpp: (WebCore::WidthIterator::advance): Eliminated uneeded attemptFontSubstitution and cluster parameters to the glyphDataForCharacter function. (WebCore::Font::glyphDataForCharacter): Removed the cluster parameter and attemptFontSubstitution parameter. Removed the isUpper check before calling toUpper in the small caps code path. Split up the inner loop into separate copies for non-small-caps and small caps. Broke out the system fallback page handling so it's not inside the loop. Changed system fallback so it uses the character and breaks it up into UTF-16 as needed, instead of using a passed-in "character cluster".
  • platform/TextStyle.h: (WebCore::TextStyle::TextStyle): Removed attemptFontSubstitution. (WebCore::TextStyle::applyWordRounding): Ditto.
16:52 Changeset [26637] by ggaren

Fixed layout test for reals. Changed \r\n to \n, fixing mass confusion.

  • fast/js/do-while-expression-value-expected.txt:
  • fast/js/do-while-expression-value.html:
  • fast/js/nested-function-scope.html:
  • fast/js/while-expression-value-expected.txt:
  • fast/js/while-expression-value.html:
16:18 Changeset [26636] by honeycutt

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Ollie.

Remove an operator precedence warning on Windows

  • editing/markup.cpp: (WebCore::escapeContentText): Use (a) | (b) (WebCore::appendEscapedContent): Use (a) | (b)
15:59 Changeset [26635] by kmccullo

WebCore:

Reviewed by Darin.

  • <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
  • Now we take the doc into account when resizing.
  • Also I found an issue where we would resize to outside the window, because the resize would be smaller than the window size but the location of the window would make the resize go off-screen. Now we move the window back into the screen.
  • bindings/js/kjs_window.cpp: (KJS::adjustWindowRect): (KJS::WindowFunc::callAsFunction):

LayoutTests:

Reviewed by Darin.

  • <rdar://problem/5238818> window.resizeTo doesn't restrict the resized window to the size of the screen
  • Now we take the dock into account when resizing.
  • Also I found an issue where we would resize to outside the window, because the resize would be smaller than the window size but the location of the window would make the resize go off-screen. Now we move the window back into the screen.
  • fast/dom/Window/window-resize-expected.txt:
  • fast/dom/Window/window-resize.html:
15:36 Changeset [26634] by sfalken

Merged fix from r26632.

15:34 Changeset [26633] by bdash

2007-10-15 Mark Rowe <mrowe@apple.com>

Reviewed by Sam.

Fix 'run-webkit-tests --qt' complaining about the --qt argument.

  • Scripts/webkitdirs.pm:
  • Change checkArgv to remove the options from @ARGV to prevent them from interfering with further option processing.
  • Fix logic error in determineIsQt that would prevent it from bailing out early.
  • Change isOSX to mean OS X and not Qt or Gtk. Most of our uses of isOSX assume that this is the meaning already, so this change fixes several broken areas of the scripts including 'run-webkit-tests --qt' on a Mac incorrectly using the Mac results, and 'run-webkit-tests --gtk' attempting to build the Mac DumpRenderTree.
15:27 Changeset [26632] by honeycutt

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Anders.

<rdar://5510700> Repro crash loading embedded Windows Media Player
content

Anders noticed that the older Windows Media Player plugin (npdsplay.dll)
will crash if it receives its resource requests out of order, whereas we
were immediately fulfilling untargeted, non-JavaScript requests and
scheduling targeted or JavaScript resource requests. Implement his
suggested fix, which is to schedule PluginRequests for all resource
requests

  • plugins/win/PluginViewWin.cpp: (WebCore::getString): (WebCore::PluginViewWin::performRequest): If this non-JavaScript request has no target, create a stream for it (WebCore::PluginViewWin::load): Schedule PluginRequests for all resource requests
15:12 Changeset [26631] by bdash

2007-10-15 Mark Rowe <mrowe@apple.com>

Gtk and Qt build fix. Add new .cpp file to project.

  • WebCore.pro:
14:59 Changeset [26630] by sullivan
  • platform/mac/FontDataMac.mm: D'oh! Added missing #import to fix build
14:42 Changeset [26629] by sullivan

Reviewed by Geoff Garen


Replaced NS_DURING/NS_HANDLER with @try/@catch throughout WebKit

I made the following changes:

  • replaced NS_DURING with @try, and added opening brace if there wasn't one
  • replaced NS_HANDLER with @catch (NSException *localException), and added braces if there weren't any
  • removed NS_ENDHANDLER, and added a closing brace if there wasn't one
  • in a couple of places, fixed indentation therein
  • Misc/WebIconDatabase.mm: (objectFromPathForKey):
  • WebView/WebHTMLView.mm: (-[WebHTMLView drawSingleRect:]): (-[WebHTMLView beginDocument]): (-[WebHTMLView deleteToMark:]):
  • WebView/WebView.mm: (-[WebView initWithCoder:]):
14:41 Changeset [26628] by sullivan

Reviewed by Geoff

  • platform/mac/FontDataMac.mm: (WebCore::FontData::smallCapsFontData): replace NS_DURING/NS_HANDLER with WebCore-style BEGIN/END_BLOCK_OBJC_EXCEPTIONS
14:25 Changeset [26627] by ggaren

Changed line ending style of results file to fix layout test that was
failing locally on my machine.


  • fast/js/nested-function-scope-expected.txt:
14:15 Changeset [26626] by hyatt

The CSS WG has been discussing the concept of rotation. In the latest draft specification, two properties
have been introduced: rotation and rotation-point. I believe these properties should be generalized to
allow for arbitrary transformations (e.g., translation, skew, rotate, scale).

This patch adds support for the back-end parsing of two new CSS properties: transform and transform-origin.
They are directly analogous to the properties specified by the CSS WG, except that they are designed to allow
for arbitrary affine transforms rather than just rotation.

Reviewed by Beth Dakin

  • WebCore.xcodeproj/project.pbxproj:
  • WebCore.vcproj/WebCore.vcproj:
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue):
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::TransformParseContext:::m_list): (WebCore::TransformParseContext::list): (WebCore::TransformParseContext::failed): (WebCore::TransformParseContext::addValue): (WebCore::TransformOperationInfo::TransformOperationInfo): (WebCore::TransformOperationInfo::type): (WebCore::TransformOperationInfo::argCount): (WebCore::TransformOperationInfo::unit): (WebCore::TransformOperationInfo::unknown): (WebCore::TransformOperationInfo::hasCorrectArgCount): (WebCore::CSSParser::parseTransform): (WebCore::CSSParser::parseTransformOrigin):
  • css/CSSParser.h:
  • css/CSSPropertyNames.in:
  • css/CSSTransformValue.cpp: Added. (WebCore::CSSTransformValue::CSSTransformValue): (WebCore::CSSTransformValue::~CSSTransformValue): (WebCore::CSSTransformValue::addValue): (WebCore::CSSTransformValue::cssText):
  • css/CSSTransformValue.h: Added. (WebCore::CSSTransformValue::):
13:58 Changeset [26625] by ggaren

Removed unnecessary #include.

  • API/JSObjectRef.cpp:
13:57 Changeset [26624] by ggaren

Double-reverse build fix. My tree was out of date.

  • kjs/nodes.cpp: (NumberNode::evaluate):
13:53 Changeset [26623] by bdash

2007-10-15 Mark Rowe <mrowe@apple.com>

Reviewed by Oliver.

Fix the no-SVG build.

  • DerivedSources.make: Use the correct file as input to generate CSSPropertyNames.h.
  • rendering/RenderObject.cpp: (WebCore::objectIsRelayoutBoundary):
13:47 Changeset [26622] by ggaren

Build fix.

  • kjs/nodes.cpp: (NumberNode::evaluate):
13:44 Changeset [26621] by ggaren

JavaScriptCore:

Reviewed by Darin Adler.


Removed surprising self-named "hack" that made nested functions
available as named properties of their containing functions, and placed
containing function objects in the scope chains of nested functions.


There were a few reasons to remove this "hack:"

  1. It contradicted FF, IE, and the ECMA spec.
  1. It incurred a performance penalty, since merely parsing a function required parsing its body for nested functions (and so on).
  1. SVN history contains no explanation for why it was added. It was just legacy code in a large merge a long, long time ago.

[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  • kjs/nodes.cpp: (FuncDeclNode::processFuncDecl):

LayoutTests:

Reviewed by Darin Adler.


Removed surprising self-named "hack" that made nested functions
available as named properties of their containing functions, and placed
containing function objects in the scope chains of nested functions.


[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

Changed this test to reflect correct behavior:

  • fast/js/kde/function-expected.txt:
  • fast/js/kde/resources/function.js: (Also removed tab characters.)

Added this test to flesh out the behavior more:

  • fast/js/nested-function-scope-expected.txt: Added.
  • fast/js/nested-function-scope.html: Added.
13:41 Changeset [26620] by ggaren

Reviewed by Darin Adler.


Removed the concept of AnonymousCode. It was unused, and it doesn't
exist in the ECMA spec.


[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  • kjs/Context.cpp: (KJS::Context::Context):
  • kjs/function.h: (KJS::):
  • kjs/nodes.cpp: (ReturnNode::execute):
13:40 Changeset [26619] by ggaren

JavaScriptCore:

Reviewed by Darin Adler.


Made function parameters DontDelete. This matches FF and the vague
description in ECMA 10.1.3. It's also required in order to make
symbol table based lookup of function parameters valid. (If the
parameters aren't DontDelete, you can't guarantee that you'll find
them later in the symbol table.)

[ Patch broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  • kjs/function.cpp: (KJS::FunctionImp::passInParameters):

LayoutTests:

Committed revision 26618.

Made function parameters DontDelete.

  • fast/js/delete-function-parameter-expected.txt: Added.
  • fast/js/delete-function-parameter.html: Added.
13:39 Changeset [26618] by ggaren

Reviewed by Maciej Stachowiak.


Some Vector optimizations. These are especially important when using
Vector as a stack for implementing recursive algorithms iteratively.


[ Broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]

  1. Added shrink(), which is a version of resize() that you can call to save a branch / improve code generation and inlining when you know that the vector is not getting bigger.


  1. Changed subclassing relationship in VectorBuffer to remove a call to fastFree() in the destructor for the inlineCapacity != 0 template specialization. This brings inline Vectors one step closer to true stack-allocated arrays.


Also changed abort() to CRASH(), since the latter works better.

  • wtf/Vector.h: (WTF::VectorBufferBase::allocateBuffer): (WTF::VectorBufferBase::deallocateBuffer): (WTF::VectorBufferBase::VectorBufferBase): (WTF::VectorBufferBase::~VectorBufferBase): (WTF::): (WTF::VectorBuffer::VectorBuffer): (WTF::VectorBuffer::~VectorBuffer): (WTF::VectorBuffer::deallocateBuffer): (WTF::VectorBuffer::releaseBuffer): (WTF::Vector::clear): (WTF::Vector::removeLast): (WTF::::operator): (WTF::::fill): (WTF::::shrink):
13:36 Changeset [26617] by ggaren

JavaScriptCore:

Reviewed by Maciej Stachowiak.


Fixed http://bugs.webkit.org/show_bug.cgi?id=15490
Iteration statements sometimes incorrectly evaluate to the empty value
(KDE r670547).


[ Broken off from http://bugs.webkit.org/show_bug.cgi?id=14868 ]


This patch is a merge of KDE r670547, with substantial modification
for performance.


It fixes do-while statements to evaluate to a value. (They used
to evaluate to the empty value in all cases.)

It also fixes SourceElementsNode to maintain the value of abnormal
completions like "break" and "continue."


It also re-works the main execution loop in SourceElementsNode so that
it (1) makes a little more sense and (2) avoids unnecessary work. This
is a .28% speedup on command-line JS iBench.

  • kjs/nodes.cpp: (DoWhileNode::execute): (SourceElementsNode::execute):

LayoutTests:

Reviewed by Maciej Stachowiak.


Layout tests for http://bugs.webkit.org/show_bug.cgi?id=15490
Iteration statements sometimes incorrectly evaluate to the empty value
(KDE r670547)

  • fast/js/do-while-expression-value-expected.txt: Added.
  • fast/js/do-while-expression-value.html: Added.
  • fast/js/while-expression-value-expected.txt: Added.
  • fast/js/while-expression-value.html: Added.
12:02 Changeset [26616] by darin

WebCore:

Reviewed by Sam.

Test: fast/dom/Window/alert-undefined.html

  • page/DOMWindow.idl: Remove ConvertUndefinedOrNullToNullString from alert, confirm, and prompt. It turns out that the default behavior is what the other browsers do (browsers tested: IE 7, Firefox 2).

LayoutTests:

Reviewed by Sam.

  • fast/dom/Window/alert-undefined.html: Added tests of null and both confirm and prompt.
  • fast/dom/Window/alert-undefined-expected.txt: Updated.
11:47 Changeset [26615] by darin

Reviewed by Sam.

  • added logging of window.prompt and window.confirm
  • DumpRenderTree/mac/UIDelegate.mm: (-[UIDelegate webView:runJavaScriptAlertPanelWithMessage:initiatedByFrame:]): Implement the recommended delegate rather than the deprecated one. (-[UIDelegate webView:runJavaScriptConfirmPanelWithMessage:initiatedByFrame:]): Added. (-[UIDelegate webView:runJavaScriptTextInputPanelWithPrompt:defaultText:initiatedByFrame:]): Added.
  • DumpRenderTree/win/UIDelegate.h:
  • DumpRenderTree/win/UIDelegate.cpp: (UIDelegate::runJavaScriptAlertPanelWithMessage): Got rid of unnecessary check for null string. (UIDelegate::runJavaScriptConfirmPanelWithMessage): Added. (UIDelegate::runJavaScriptTextInputPanelWithPrompt): Added. (UIDelegate::webViewAddMessageToConsole): Got rid of unnecessary check for null string.
11:39 Changeset [26614] by adele

WebCore:

Reviewed by Darin.

Fix for http://bugs.webkit.org/show_bug.cgi?id=15252
<rdar://problem/5498184> REGRESSION: <select multiple> doesn't scroll to top when old options are removed and new ones are added, leaving listbox empty-looking

  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::calcHeight): If the scrollbar is disabled, make sure the scroll offset gets reset to 0. In general, we don't want to unnecessarily adjust the scroll offset, but in this case, there won't be an obvious way for the user to adjust the scroller position once it's disabled.

LayoutTests:

Reviewed by Darin.

Test for http://bugs.webkit.org/show_bug.cgi?id=15252
<rdar://problem/5498184> REGRESSION: <select multiple> doesn't scroll to top when old options are removed and new ones are added, leaving listbox empty-looking

  • fast/forms/listbox-scroll-after-options-removed-expected.txt: Added.
  • fast/forms/listbox-scroll-after-options-removed.html: Added.
11:17 Changeset [26613] by sfalken

Merged fix from r26610.

11:16 Changeset [26612] by sfalken

Merged fix from r26608.

11:15 Changeset [26611] by sfalken

Merged fix from r26607.

11:01 Changeset [26610] by honeycutt

Fixing a date in the ChangeLog

10:25 Changeset [26609] by aliceli1

WebKitTools:

Reviewed by Sam Weinig.

Fixed <rdar://5382546> layoutTestController.setCustomPolicyDelegate is unimplemented causing tests to fail

  • DumpRenderTree/win/DumpRenderTree.cpp: (runTest): Like on mac, before running each test, set the webview's policy delegate to null (main): allocate the global policy delegate for DRT's custom use
  • DumpRenderTree/win/DumpRenderTree.vcproj: Adding files to project
  • DumpRenderTree/win/DumpRenderTreeWin.h: declaring global DRT policy delegate
  • DumpRenderTree/win/LayoutTestControllerWin.cpp: (LayoutTestController::setCustomPolicyDelegate): set the webview's policy delegate to DRT's custom one if the test requests it.
  • DumpRenderTree/win/PolicyDelegate.cpp: Added. Implementation is a direct port of DumpRenderTree/mac/PolicyDelegate.mm (PolicyDelegate::PolicyDelegate): (PolicyDelegate::QueryInterface): (PolicyDelegate::AddRef): (PolicyDelegate::Release): (PolicyDelegate::decidePolicyForNavigationAction):
  • DumpRenderTree/win/PolicyDelegate.h: Added. (PolicyDelegate::decidePolicyForNewWindowAction): (PolicyDelegate::decidePolicyForMIMEType): (PolicyDelegate::unableToImplementPolicyWithError):

win:

Reviewed by Sam Weinig.

Fixed <rdar://5382546> layoutTestController.setCustomPolicyDelegate is unimplemented causing tests to fail

  • DefaultPolicyDelegate.cpp: Added. Implementation is a direct port of WebKit/DefaultDelegates/WebDefaultPolicyDelegate.m (DefaultPolicyDelegate::DefaultPolicyDelegate): (DefaultPolicyDelegate::~DefaultPolicyDelegate): (DefaultPolicyDelegate::sharedInstance): (DefaultPolicyDelegate::createInstance): (DefaultPolicyDelegate::QueryInterface): (DefaultPolicyDelegate::AddRef): (DefaultPolicyDelegate::Release): (DefaultPolicyDelegate::decidePolicyForNavigationAction): (DefaultPolicyDelegate::decidePolicyForNewWindowAction): (DefaultPolicyDelegate::decidePolicyForMIMEType): (DefaultPolicyDelegate::unableToImplementPolicyWithError):
  • DefaultPolicyDelegate.h: Added.
  • WebFrame.cpp: (WebFrame::dispatchDecidePolicyForNavigationAction): Implemented default action
  • WebKit.vcproj/WebKit.vcproj: Adding files to project

LayoutTests:

removing fixed test

  • platform/win/Skipped:
10:20 Changeset [26608] by honeycutt

2007-10-12 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Maciej.

Return a more appropriate error from NPN_RequestRange, which is
currently unimplemented

  • plugins/win/npapi.cpp: return NPERR_STREAM_NOT_SEEKABLE (NPN_RequestRead):
10:15 Changeset [26607] by honeycutt

2007-10-15 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Maciej.

Add a missing function pointer to the m_browserFuncs structure

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackageWin::load):
09:46 Changeset [26606] by kmccullo

Reviewed by Sam.

  • <rdar://problem/5536630> fast/dom/Window/new-window-opener.html fails
  • This test used to pass because of a mistake in js-test-pre.js. Now that the js file has been fixed this test has been updated, some of the test cases fail because DRT does not implement delegate methods for the bars for each WebView.
  • See <rdar://problem/5538752> DumpRenderTree does not have a UIDelegate for each WebView.
  • Also changed the test to correctly wait for the window to close before starting a new testcase. This is necessary because all the windows have the same name and cannot override the settings of a pre-existing window.
  • fast/dom/Window/new-window-opener-expected.txt:
  • fast/dom/Window/new-window-opener.html:
08:59 Changeset [26605] by hausmann

Fix the compilation of the Font code in the Qt port by adding the necessary stubs to support downloadable fonts through the @font-face rules.

08:58 Changeset [26604] by hausmann

Adapt to the latest API changes in the SVG API/Code.

08:58 Changeset [26603] by hausmann

Fix compilation with gcc 4.3 by including 'limits' due to the use of std::numeric_limits.

03:04 Changeset [26602] by oliver

Reset svg pixel tests to a tiger baseline and move them to platform/mac

RS=Maciej

10/14/07:

16:46 Changeset [26601] by darin
  • added exceptions for all the tests failing on my personal Leopard machine

This may or may not get the buildbot green. I'll file separate bugs for each
of the tests with changed results.

  • platform/mac-leopard/dom: Added.
  • platform/mac-leopard/dom/xhtml: Added.
  • platform/mac-leopard/dom/xhtml/level2: Added.
  • platform/mac-leopard/dom/xhtml/level2/html: Added.
  • platform/mac-leopard/dom/xhtml/level2/html/HTMLDocument12-expected.txt: Added.
  • platform/mac-leopard/editing: Added.
  • platform/mac-leopard/editing/pasteboard: Added.
  • platform/mac-leopard/editing/pasteboard/paste-RTFD-expected.txt: Added.
  • platform/mac-leopard/http: Added.
  • platform/mac-leopard/http/tests: Added.
  • platform/mac-leopard/http/tests/security: Added.
  • platform/mac-leopard/http/tests/security/dataURL: Added.
  • platform/mac-leopard/http/tests/security/dataURL/xss-DENIED-to-data-url-sub-frame-uppercase-expected.txt: Added.
  • platform/mac-leopard/svg/custom: Added.
  • platform/mac-leopard/svg/custom/stroke-width-click-expected.txt: Added.
  • platform/mac-leopard/webarchive: Added.
  • platform/mac-leopard/webarchive/test-xml-stylesheet-expected.txt: Added.
  • platform/mac-leopard/security/block-test-expected.txt: Changed results.
16:20 Changeset [26600] by darin
  • moved a test that somehow ended up doubly-nested in platform/mac
  • platform/mac/fast/text/justified-text-rect-expected.checksum: Copied from platform/mac/platform/mac/fast/text/justified-text-rect-expected.checksum.
  • platform/mac/fast/text/justified-text-rect-expected.png: Copied from platform/mac/platform/mac/fast/text/justified-text-rect-expected.png.
  • platform/mac/fast/text/justified-text-rect-expected.txt: Copied from platform/mac/platform/mac/fast/text/justified-text-rect-expected.txt.
  • platform/mac/platform: Removed.
  • platform/mac/platform/mac: Removed.
  • platform/mac/platform/mac/fast: Removed.
  • platform/mac/platform/mac/fast/text: Removed.
  • platform/mac/platform/mac/fast/text/justified-text-rect-expected.checksum: Removed.
  • platform/mac/platform/mac/fast/text/justified-text-rect-expected.png: Removed.
  • platform/mac/platform/mac/fast/text/justified-text-rect-expected.txt: Removed.
15:30 Changeset [26599] by oliver

Revert "Rubberstamped by Eric."

This reverts commit 4ae99caea8eb153f9b85e86d1819b19b4af12fb4.
RS=Niko

Revert layout test move.

Filed http://bugs.webkit.org/show_bug.cgi?id=15513 to track correction for even earlier change

Conflicts:

13:15 Changeset [26598] by zimmermann

Not reviewed. Don't list all individual files in the ChangeLog -> make Mark happy

12:09 Changeset [26597] by zimmermann

Rubberstamped by Eric.

Move current layout tests results from platform/mac/svg to platform/mac-tiger/svg.
The problem is that the current results have accidently been generated with Leopard,
I'm still moving this to mac-tiger so we don't loose the history for all the results.
After this commit, the baseline will be regenerated in mac-tiger/svg, and someone with
Leopard needs to generate new results in mac-leopard/svg.

10:51 Changeset [26596] by sfalken

Merged fix from r26594.

10:45 Changeset [26595] by zimmermann

Reviewed by Eric.

Fix bad abstraction in ImageBuffer class.
While the class itself is platform-aware and thus it's location in platform/graphics
is fine, it contains the "renderSubtreeToImage" method which operates on RenderObject.

As it's SVG specific I decided to move this method into SVGRenderSupport, to avoid
implicit platform/ <-> rendering/ dependencies.

10:40 Changeset [26594] by sfalken

Move pthreads up in the linker order and don't mark it for delay load.
Fixes crash during regsvr32 of WebKit (currently repro if you do a spade ti).


Reviewed by Darin, Ada.

  • WebKit.vcproj/WebKit.vcproj:
06:27 BuildingQtOnLinux edited by zecke2@selfish.org
(diff)
06:02 Changeset [26593] by bdash

2007-10-14 Holger Hans Peter Freyther <zecke@selfish.org>

Reviewed by Mark.

  • Scripts/webkitdirs.pm: Use qmake binary specified via --qmake on command-line when querying for QMAKE_MKSPECS.
05:52 BuildingGtk edited by zecke2@selfish.org
(diff)
05:06 Changeset [26592] by andrew

Reviewed by Adam Roben.


Fix run-webkit-tests is too greedy calculating platform hierarchy
http://bugs.webkit.org/show_bug.cgi?id=15465


Fix run-webkit-tests being too greedy in trying to split the platform name up
causing it to try and find tests in every directory above the first "-" in the
path to the LayoutTests

  • Scripts/run-webkit-tests:
04:59 Changeset [26591] by bdash

2007-10-14 Peter Kasting <zerodpx@gmail.com>

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=15210
Draw the image outline even for broken images.

  • rendering/RenderImage.cpp: (WebCore::RenderImage::paint):
04:58 Changeset [26590] by bdash

2007-10-14 Jan Michael Alonzo <jmalonzo@unpluggable.com>

Reviewed by Adam.

http://bugs.webkit.org/show_bug.cgi?id=15299
Fix "hovering_over_link" signal not emitted when consecutive links
are hovered.

  • WebCoreSupport/ChromeClientGtk.cpp: (WebKit::ChromeClient::mouseDidMoveOverElement):
  • WebCoreSupport/ChromeClientGtk.h:
  • Remove m_didSendLinkSignal as it is superseded by m_hoveredLinkURL
04:55 Changeset [26589] by bdash

2007-10-14 Kevin Ollivier <kevino@theolliviers.com>

Reviewed by Adam.

Add support for MSVC7, and fix cases where PLATFORM(WIN) should
be PLATFORM(WIN_OS) for other ports building on Windows.

  • dom/XMLTokenizer.cpp:
  • page/FrameTree.cpp:
  • platform/StaticConstructors.h:
  • platform/String.cpp:

2007-10-5 Kevin Ollivier <kevino@theolliviers.com>

Reviewed by Adam.


Add support for MSVC7, and fix cases where PLATFORM(WIN) should
be PLATFORM(WIN_OS) for other ports building on Windows.


  • kjs/DateMath.cpp: (KJS::getDSTOffsetSimple):
  • kjs/JSImmediate.h:
  • wtf/Assertions.cpp:
  • wtf/Assertions.h:
  • wtf/Platform.h:
  • wtf/StringExtras.h: (snprintf): (vsnprintf):
04:49 Changeset [26588] by bdash

2007-10-14 Maxime Britto <mbritto@pleyo.com>

Reviewed by Mitz.

Fix an error in the goBackOrForward() function : confusion between forwardListCount and backListCount.
http://bugs.webkit.org/show_bug.cgi?id=15212

  • loader/FrameLoader.cpp: (WebCore::FrameLoader::goBackOrForward):
04:44 Changeset [26587] by bdash

2007-10-14 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

Test: fast/forms/button-text-transform.html

Text transformations require access to the original text. The button's inner
text was an anonymous RenderText, meaning it did not have a node to retrieve
the original text from. The patch fixes this by changing the inner text into a
RenderTextFragment, which stores its own original text.

  • rendering/RenderButton.cpp: (WebCore::RenderButton::setText):
  • rendering/RenderButton.h:

2007-10-14 Mitz Pettel <mitz@webkit.org>

Reviewed by Darin.

  • fast/forms/button-text-transform.html: Added.
  • platform/mac/fast/forms/button-text-transform-expected.checksum: Added.
  • platform/mac/fast/forms/button-text-transform-expected.png: Added.
  • platform/mac/fast/forms/button-text-transform-expected.txt: Added.
04:42 Changeset [26586] by bdash

2007-10-14 Oleg Sukhodolsky <son.two@gmail.com>

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15006
Refactoring of buildQMakeGdkProject()/buildQMakeQtProject() and isGdk()/isQt()
to reduce code duplication.

  • Scripts/build-webkit:
  • Scripts/webkitdirs.pm: buildQMakeProject() renamed to buildQMakeQtProject(). buildQMakeGdkProject()/buildQMakeQtProject() now take just one parameter (directory), unused $colorize has been removed.
04:39 Changeset [26585] by bdash

2007-10-14 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

REGRESSION: Javascript bug in getElementsByName
http://bugs.webkit.org/show_bug.cgi?id=15274

Test: fast/dom/getelementbyname-invalidation.html

  • dom/NameNodeList.h: remove empty rootNodeChildrenChanged override

2007-10-14 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

Test for http://bugs.webkit.org/show_bug.cgi?id=15274
REGRESSION: Javascript bug in getElementsByName

  • fast/dom/getelementbyname-invalidation-expected.txt: Added.
  • fast/dom/getelementbyname-invalidation.html: Added.
04:35 Changeset [26584] by bdash

2007-10-14 Mitz Pettel <mitz@webkit.org>

Reviewed by Maciej.

This patch reverts the kjs_window.* parts of r25576 because following
r25783, window properties, including dialog arguments, are not cleared
when the newly created modal dialog transitions to the document.

  • bindings/js/kjs_window.cpp: (KJS::WindowPrivate::WindowPrivate): (KJS::createWindow): (KJS::showModalDialog): (KJS::Window::clear): (KJS::WindowFunc::callAsFunction): (KJS::Window::setReturnValueSlot):
  • bindings/js/kjs_window.h:
04:33 Changeset [26583] by bdash

2007-10-14 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

Test: fast/table/generated-caption.html

  • rendering/RenderTable.cpp: (WebCore::RenderTable::addChild): Changed to make sure that the child is not added into generated after content. Also made adding a child before a table caption work correctly instead of adding the child after the caption.

2007-10-14 Mitz Pettel <mitz@webkit.org>

Reviewed by Dave Hyatt.

  • fast/table/generated-caption.html: Added.
  • platform/mac/fast/table/generated-caption-expected.checksum: Added.
  • platform/mac/fast/table/generated-caption-expected.png: Added.
  • platform/mac/fast/table/generated-caption-expected.txt: Added.
04:31 Changeset [26582] by bdash

2007-10-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin.

Adds NegateNode optimization from KJS. The relevant revision in KDE
is 666736.

  • kjs/grammar.y:
  • kjs/nodes.cpp: (NumberNode::evaluate):
  • kjs/nodes.h: (KJS::Node::): (KJS::NumberNode::):
  • kjs/nodes2string.cpp: (NumberNode::streamTo):

2007-10-14 Cameron Zwarich <cwzwarich@uwaterloo.ca>

Reviewed by Darin.

Adds serialization test cases for NegateNode optimization from KDE.

  • fast/js/function-decompilation-operators-expected.txt:
  • fast/js/function-decompilation-operators.html:
04:30 Changeset [26581] by bdash

2007-10-14 Jason Foreman <jason@threeve.org>

Reviewed by Maciej.

Fix http://bugs.webkit.org/show_bug.cgi?id=15145


Ensure that if adjusting n to minimize the difference of n*intPow10(e-p+1) to x,
that the property n < intPow10(p) is maintained.

  • kjs/number_object.cpp: (NumberProtoFunc::callAsFunction):

2007-10-14 Jason Foreman <jason@threeve.org>

Reviewed by Maciej.

Adding test for http://bugs.webkit.org/show_bug.cgi?id=15145.

  • ChangeLog:
  • fast/js/number-toprecision-expected.txt: Added.
  • fast/js/number-toprecision.html: Added.
  • fast/js/resources/number-toprecision.js: Added.
04:28 Changeset [26580] by bdash

2007-10-14 Peter Kasting <zerodpx@gmail.com>

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=15141
Feed GIF reader data from the point in the stream it expects. Also,
mirror the reader's failure state up to the wrapping decoder.

  • platform/image-decoders/gif/GIFImageReader.cpp: (GIFImageReader::read):
04:27 Changeset [26579] by bdash

2007-10-14 Peter Kasting <zerodpx@gmail.com>

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=15142
Return correct frame count in GIFImageDecoder::frameBufferAtIndex(),
even if more data has arrived since the last decoding pass.

  • platform/image-decoders/gif/GIFImageDecoder.cpp: (WebCore::GIFImageDecoder::frameBufferAtIndex):
04:25 Changeset [26578] by bdash

2007-10-14 Feng Qian <ian.eng.webkit@gmail.com>

Reviewed by Maciej.

  • fast/events/window-events-bubble2.html:
04:17 Changeset [26577] by bdash

Bad Mark, wrong branch.

04:16 Changeset [26576] by bdash

2007-10-14 Satoshi Ueyama <gyuque@gmail.com>

Reviewed by Adam Roben.

  • ksvg2/scripts/cssmakevalues: Replaced chomp with regexp. chomp doesn't work well with CR-LF endings.
04:11 Changeset [26575] by bdash

Roll over ChangeLogs for JavaScriptCore, LayoutTests, WebCore and WebKit.

04:02 Changeset [26574] by bdash

Roll over ChangeLogs for JavaScriptCore, LayoutTests, WebCore and WebKit.

02:03 Changeset [26573] by eseidel

2007-10-14 Eric Seidel <eric@webkit.org>

Reviewed by aroben.

Remove senseless malloc from paintOutline
No tests needed, no functional change.

  • rendering/RenderFlow.cpp: (WebCore::RenderFlow::paintOutline): remove unneeded malloc

10/13/07:

21:12 Changeset [26572] by oliver

Adding leopard specific results to a few SVG specific tests

RS=Maciej.

  • platform/mac-leopard/svg/batik/text/smallFonts-expected.txt: Added.
  • platform/mac-leopard/svg/batik/text/textBiDi-expected.txt: Added.
  • platform/mac-leopard/svg/hixie/text/003-expected.txt:
  • platform/mac-leopard/svg/hixie/text/003a-expected.txt:
  • platform/mac-leopard/svg/hixie/viewbox/preserveAspectRatio/001-expected.txt: Added.
  • platform/mac-leopard/svg/hixie/viewbox/preserveAspectRatio/002-expected.txt:
  • platform/mac-leopard/svg/text/text-path-01-b-expected.txt: Added.
19:07 Changeset [26571] by eseidel

2007-10-13 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

Fix SVGSVGElement::currentView() to not leak by using an OwnPtr.
This fix is incompatible with changes eventually needed for supporting
SVGSVGElement.currentView in the bindings (that needs a ref'd object)
There are also several parser crashers in SVGViewSpec, but those will be fixed
in my next patch.


Leak fix only, no additional tests needed.

  • ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::currentView): call .get() and .set()
  • ksvg2/svg/SVGSVGElement.h: use OwnPtr
15:36 Changeset [26570] by oliver

Make svg/batik/text/textDecoration2.svg use Lucida Grande

RS=Eric.

This test case used to use Lucida Sans which is apparently available on some
systems, but not all. Switching to Lucida Grande results in a slight change
but we'll be testing with a font that everyone has.

  • svg/batik/text/textDecoration2-expected.checksum:
  • svg/batik/text/textDecoration2-expected.png:
  • svg/batik/text/textDecoration2-expected.txt:
  • svg/batik/text/textDecoration2.svg:
14:41 Changeset [26569] by oliver

Fixing a few testcases by enabling SVG_EXPERIMENTAL on windows, and making the required fixes and corrections.

Reviewed by Maciej

  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.vcproj/build-generated-files.sh:
  • bindings/scripts/CodeGeneratorJS.pm:
  • ksvg2/scripts/make_names.pl:
  • ksvg2/svg/SVGColor.cpp: (WebCore::SVGColor::colorFromRGBColorString):
  • page/DOMWindow.idl:
  • platform/graphics/svg/cg/SVGResourceFilterCg.cpp:
  • platform/win/WebCoreTextRenderer.cpp:

10/12/07:

18:16 Changeset [26568] by weinig

Reviewed by Darin.

  • platform/mac/editing/pasteboard/paste-RTFD-expected.txt: Update results to reflect current tree. Reopening <rdar://problem/5483567> (see below) to note the potential bug.
18:11 Changeset [26567] by darin

Reviewed by Oliver Hunt.

  • change test that was accidentally detecting changes in frame load delegate calls to run in a directory where we do not log frame load delegate calls

At some point we may want to test them (and so re-add the test that is
currently intermittently giving different results), but this test is about
the DOMContentLoaded event and we want to test just that.

  • http/tests/loading/DOMContentLoaded-event-expected.txt: Removed.
  • http/tests/loading/DOMContentLoaded-event.html: Removed.
  • http/tests/misc/DOMContentLoaded-event-expected.txt: Copied from http/tests/loading/DOMContentLoaded-event-expected.txt.
  • http/tests/misc/DOMContentLoaded-event.html: Copied from http/tests/loading/DOMContentLoaded-event.html.
18:08 Changeset [26566] by bdash

New tag (part 2).

18:07 Changeset [26565] by bdash

New tag (part 1).

18:03 Changeset [26564] by darin

Reviewed by Stephanie and Oliver.

  • platform/mac/fast/forms/select-change-listbox-to-popup-expected.txt: Update result to reflect current behavior. This is a bug and we wrote a bug report in Radar, <rdar://problem/5538793>.
18:01 Changeset [26563] by bdash

Versioning.

17:59 Changeset [26562] by weinig

Reviewed by Darin.

  • platform/mac/editing/pasteboard/paste-RTFD-expected.txt: Update results to reflect current tree. Reopening <rdar://problem/5483567> (see below) to note the potential bug.
17:50 Changeset [26561] by bdash

Versioning.

17:47 Changeset [26560] by bdash

New tag.

17:44 Changeset [26559] by darin

Reviewed by Sam.

  • more float/int conversion (to try to get the old builbot up)
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): Cast to int. (WebCore::RenderSVGRoot::applyContentTransforms): Ditto. (WebCore::RenderSVGRoot::nodeAtPoint): Ditto.
17:40 Changeset [26558] by justing

WebCore:

Reviewed by Harrison.


<rdar://problem/5483370> GoogleDocs: Deleting cell text in a table row also removes any empty rows beneath the row being edited
<rdar://problem/5482524> GoogleDocs: A hang occurs when applying list to selected table


  • editing/DeleteSelectionCommand.cpp: (WebCore::DeleteSelectionCommand::removePreviouslySelectedEmptyTableRows):
  • editing/InsertListCommand.cpp: (WebCore::InsertListCommand::modifyRange): (WebCore::InsertListCommand::doApply):

LayoutTests:

Reviewed by Harrison.


<rdar://problem/5483370> GoogleDocs: Deleting cell text in a table row also removes any empty rows beneath the row being edited
<rdar://problem/5482524> GoogleDocs: A hang occurs when applying list to selected table

  • editing/deleting/5483370.html: Added.
  • editing/pasteboard/5483567.html-disabled: Removed.
  • editing/execCommand/5482524.html: Added.
  • platform/mac/editing/deleting/5483370-expected.checksum: Added.
  • platform/mac/editing/deleting/5483370-expected.png: Added.
  • platform/mac/editing/deleting/5483370-expected.txt: Added.
  • platform/mac/editing/execCommand/5482524-expected.checksum: Added.
  • platform/mac/editing/execCommand/5482524-expected.png: Added.
  • platform/mac/editing/execCommand/5482524-expected.txt: Added.
17:17 Changeset [26557] by darin
  • fix another float/int conversion
  • platform/graphics/svg/cg/SVGResourceMaskerCg.mm: (WebCore::SVGResourceMasker::applyMask): Explicitly cast to int.
16:41 Changeset [26556] by darin

Reviewed by Oliver Hunt.

  • more work toward getting layout tests passing
  • fast/images/svg-background-crash-on-refresh.html: Removed.
  • fast/images/svg-background-crash-on-refresh.html-disabled: Copied from fast/images/svg-background-crash-on-refresh.html. Needed to disable this test because it causes a hang; not necessarily right after this test, sometimes quite a few tests later.
  • platform/mac-leopard/Skipped: Re-enabled a test that's fixed.
16:41 Changeset [26555] by darin
  • fast/css/computed-style-expected.txt: Again, but right this time.
16:03 Changeset [26554] by darin

Reviewed by Oliver Hunt.

  • fix float/int conversions that cause warnings on older versions of gcc (like the version currently being used on the PowerPC buildbot slave)
  • rendering/RenderPath.cpp: (WebCore::RenderPath::paint): Explicitly cast to int. (WebCore::RenderPath::addFocusRingRects): Use enclosingIntRect to convert a FloatRect to an IntRect.
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback): Use 0 for the initial value of an int, rather than 0.0f. (WebCore::svgTextStyleForInlineTextBox): Explicitly cast to int. (WebCore::applyTextAnchorToTextChunk): Ditto.
14:19 Changeset [26553] by darin

Reviewed by Oliver Hunt.

  • fast/css/computed-style-expected.txt: Added SVG CSS properties.
  • fast/css/computed-style-without-renderer-expected.txt: Ditto.
13:54 Changeset [26552] by oliver

Correct date in merge markers

RS=Darin

13:47 Changeset [26551] by oliver

Move old feature branch away

13:40 Changeset [26550] by oliver

Cast zoom factor to int as the original patch did. This is necessary to appease some versions of gcc.

Reviewed by Mark.

  • ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::setCurrentScale):
13:13 Changeset [26549] by eseidel

2007-10-12 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

Fix leaks in SVG code from feature-branch.

  • ksvg2/svg/SVGFEDiffuseLightingElement.cpp: (WebCore::SVGFEDiffuseLightingElement::filterEffect):
  • ksvg2/svg/SVGFEFloodElement.cpp: (WebCore::SVGFEFloodElement::filterEffect):
  • ksvg2/svg/SVGFESpecularLightingElement.cpp: (WebCore::SVGFESpecularLightingElement::filterEffect):
  • ksvg2/svg/SVGGradientElement.cpp: (WebCore::SVGGradientElement::buildStops):
  • ksvg2/svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::resolveStyle): always refs style
  • platform/graphics/cg/ImageBufferCG.cpp: (WebCore::ImageBuffer::create): fastFree buffer if CG Context creation fails
12:37 Changeset [26548] by eseidel

2007-10-12 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

Fix leaks in SVG code from feature-branch.

  • ksvg2/svg/SVGFEDiffuseLightingElement.cpp: (WebCore::SVGFEDiffuseLightingElement::filterEffect):
  • ksvg2/svg/SVGFEFloodElement.cpp: (WebCore::SVGFEFloodElement::filterEffect):
  • ksvg2/svg/SVGFESpecularLightingElement.cpp: (WebCore::SVGFESpecularLightingElement::filterEffect):
  • ksvg2/svg/SVGGradientElement.cpp: (WebCore::SVGGradientElement::buildStops):
  • ksvg2/svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::resolveStyle): always refs style
  • platform/graphics/cg/ImageBufferCG.cpp: (WebCore::ImageBuffer::create): fastFree buffer if CG Context creation fails
11:58 Changeset [26547] by oliver

More Layout test tidying

RS=Alexey

Move dom/xhtml/level2/html/HTMLBaseElement0[12].xhtml expected output
to cross platform directory, remove unnecessary pixel results.

  • dom/xhtml/level2/html/HTMLBaseElement01-expected.txt: Added.
  • dom/xhtml/level2/html/HTMLBaseElement02-expected.txt: Added.
  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement01-expected.checksum: Removed.
  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement01-expected.png: Removed.
  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement01-expected.txt: Removed.
  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement02-expected.checksum: Removed.
  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement02-expected.png: Removed.
  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement02-expected.txt: Removed.
11:35 Changeset [26546] by oliver

Correct expected output of a few test cases

RS=Eric

  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement01-expected.txt:
  • platform/mac/dom/xhtml/level2/html/HTMLBaseElement02-expected.txt:
  • platform/mac/fast/dom/dom-parse-serialize-expected.txt:
10:32 Changeset [26545] by bdash

2007-10-12 Mark Rowe <mrowe@apple.com>

Windows, Gtk and Qt build fixes. Add new files to projects.

  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
08:41 Changeset [26544] by oliver

Add merge markers

08:41 Changeset [26543] by oliver

Fix Bug 15469: feature branch has 100's of implicit double -> float conversions

Reviewed by Sam.

Re-enable -Wshorten-64-to-32, and make required code changes to make us build sanely again.

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSSVGMatrixCustom.cpp: (WebCore::JSSVGMatrix::translate): (WebCore::JSSVGMatrix::scale): (WebCore::JSSVGMatrix::scaleNonUniform): (WebCore::JSSVGMatrix::rotate): (WebCore::JSSVGMatrix::skewX): (WebCore::JSSVGMatrix::skewY):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/CodeGeneratorObjC.pm:
  • ksvg2/css/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::cssPrimitiveToLength):
  • ksvg2/css/SVGRenderStyle.h:
  • ksvg2/svg/SVGAnimateMotionElement.cpp: (WebCore::SVGAnimateMotionElement::parseMappedAttribute): (WebCore::SVGAnimateMotionElement::updateAnimatedValue): (WebCore::parsePoint): (WebCore::SVGAnimateMotionElement::calculateFromAndToValues):
  • ksvg2/svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::parseKeyNumbers): (WebCore::parseKeySplines):
  • ksvg2/svg/SVGComponentTransferFunctionElement.cpp: (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement): (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
  • ksvg2/svg/SVGFECompositeElement.cpp: (WebCore::SVGFECompositeElement::SVGFECompositeElement): (WebCore::SVGFECompositeElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEDiffuseLightingElement.cpp: (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement): (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEDisplacementMapElement.cpp: (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement): (WebCore::SVGFEDisplacementMapElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEGaussianBlurElement.cpp: (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement): (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
  • ksvg2/svg/SVGFELightElement.cpp: (WebCore::SVGFELightElement::SVGFELightElement): (WebCore::SVGFELightElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEOffsetElement.cpp: (WebCore::SVGFEOffsetElement::SVGFEOffsetElement): (WebCore::SVGFEOffsetElement::parseMappedAttribute):
  • ksvg2/svg/SVGFESpecularLightingElement.cpp: (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement): (WebCore::SVGFESpecularLightingElement::parseMappedAttribute):
  • ksvg2/svg/SVGFETurbulenceElement.cpp: (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement): (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
  • ksvg2/svg/SVGFitToViewBox.cpp: (WebCore::SVGFitToViewBox::parseMappedAttribute):
  • ksvg2/svg/SVGFitToViewBox.h:
  • ksvg2/svg/SVGLength.cpp: (WebCore::SVGLength::setValueAsString): (WebCore::SVGLength::PercentageOfViewport):
  • ksvg2/svg/SVGNumber.idl:
  • ksvg2/svg/SVGNumberList.cpp: (WebCore::SVGNumberList::parse):
  • ksvg2/svg/SVGNumberList.h:
  • ksvg2/svg/SVGParserUtilities.cpp: (WebCore::_parseNumber): (WebCore::parseNumber): (WebCore::pointsListFromSVGData): (WebCore::PathBuilder::svgMoveTo): (WebCore::PathBuilder::svgLineTo): (WebCore::PathBuilder::svgCurveToCubic): (WebCore::SVGPathSegListBuilder::svgMoveTo): (WebCore::SVGPathSegListBuilder::svgLineTo): (WebCore::SVGPathSegListBuilder::svgLineToHorizontal): (WebCore::SVGPathSegListBuilder::svgLineToVertical): (WebCore::SVGPathSegListBuilder::svgCurveToCubic): (WebCore::SVGPathSegListBuilder::svgCurveToCubicSmooth): (WebCore::SVGPathSegListBuilder::svgCurveToQuadratic): (WebCore::SVGPathSegListBuilder::svgCurveToQuadraticSmooth): (WebCore::SVGPathSegListBuilder::svgArcTo):
  • ksvg2/svg/SVGParserUtilities.h:
  • ksvg2/svg/SVGPathElement.cpp: (WebCore::SVGPathElement::SVGPathElement):
  • ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::pixelUnitToMillimeterX): (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
  • ksvg2/svg/SVGSVGElement.h:
  • ksvg2/svg/SVGTransformDistance.cpp: (WebCore::SVGTransformDistance::addToSVGTransform): (WebCore::SVGTransformDistance::distance):
  • ksvg2/svg/SVGTransformDistance.h:
  • ksvg2/svg/SVGTransformable.cpp: (WebCore::SVGTransformable::parseTransformValue):
  • ksvg2/svg/SVGViewSpec.cpp: (WebCore::SVGViewSpec::parseViewSpec):
  • platform/graphics/svg/SVGResourceFilter.cpp: (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
  • platform/graphics/svg/cg/CgSupport.cpp: (WebCore::applyStrokeStyleToContext):
  • platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: (WebCore::SVGPaintServerPattern::setup):
  • platform/graphics/svg/cg/SVGResourceFilterCg.mm: (WebCore::SVGResourceFilter::applyFilter):
  • platform/graphics/svg/filters/SVGFEComponentTransfer.h: (WebCore::SVGComponentTransferFunction::SVGComponentTransferFunction):
  • platform/graphics/svg/filters/SVGFEComposite.cpp: (WebCore::SVGFEComposite::SVGFEComposite):
  • platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp: (WebCore::SVGFEConvolveMatrix::SVGFEConvolveMatrix):
  • platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp: (WebCore::SVGFEDiffuseLighting::SVGFEDiffuseLighting):
  • platform/graphics/svg/filters/SVGFEFlood.cpp: (WebCore::SVGFEFlood::SVGFEFlood):
  • platform/graphics/svg/filters/SVGFEGaussianBlur.cpp: (WebCore::SVGFEGaussianBlur::SVGFEGaussianBlur):
  • platform/graphics/svg/filters/SVGFEMorphology.cpp: (WebCore::SVGFEMorphology::SVGFEMorphology):
  • platform/graphics/svg/filters/SVGFEOffset.cpp: (WebCore::SVGFEOffset::SVGFEOffset):
  • platform/graphics/svg/filters/SVGFESpecularLighting.cpp: (WebCore::SVGFESpecularLighting::SVGFESpecularLighting):
  • platform/graphics/svg/filters/SVGFETurbulence.cpp: (WebCore::SVGFETurbulence::SVGFETurbulence):
  • platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: (WebCore::SVGFEColorMatrix::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm: (WebCore::getVectorForChannel): (WebCore::getLightVectors):
  • platform/graphics/svg/filters/cg/SVGFEImageCg.mm: (WebCore::SVGFEImage::getCIFilter):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::drawMarkersIfNeeded):
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint):
  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::applyContentTransforms): (WebCore::RenderSVGRoot::calcViewport): (WebCore::RenderSVGRoot::nodeAtPoint):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::absoluteRects): (WebCore::RenderSVGText::relativeBBox):
  • rendering/RenderSVGTextPath.cpp:
  • rendering/SVGCharacterLayoutInfo.cpp: (WebCore::calculateBaselineShift): (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo): (WebCore::SVGCharacterLayoutInfo::processedChunk): (WebCore::SVGCharacterLayoutInfo::nextPathLayoutPointAndAngle): (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
  • rendering/SVGCharacterLayoutInfo.h:
  • rendering/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::calculateGlyphBoundaries): (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback): (WebCore::pathForDecoration):
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::writeStyle):
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback): (WebCore::applyTextAnchorToTextChunk): (WebCore::SVGRootInlineBox::buildLayoutInformation): (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
08:40 Changeset [26542] by oliver

JavaScriptCore:

Reviewed by Eric Seidel.

Fix for http://bugs.webkit.org/show_bug.cgi?id=15076
"deg2rad has multiple definitions"

Define deg2rad, rad2deg, deg2grad, grad2deg, rad2grad, grad2rad
These are used through WebKit.

Change based on original patch by Rob Buis.

  • wtf/MathExtras.h: (deg2rad): (rad2deg): (deg2grad): (grad2deg): (rad2grad): (grad2rad):

WebCore:

Reviewed by Eric Seidel.

Fix for http://bugs.webkit.org/show_bug.cgi?id=15076
"deg2rad has multiple definitions"

Use deg2rad, rad2deg, deg2grad, grad2deg, rad2grad, grad2rad
from wtf where appropriate.

No test cases as this doesn't change behaviour.

Change based on original patch by Rob Buis.

  • ksvg2/svg/SVGAngle.cpp: (WebCore::SVGAngle::calculate): (WebCore::SVGAngle::convertToSpecifiedUnits): (WebCore::SVGAngle::todeg): (WebCore::SVGAngle::torad):
  • platform/graphics/AffineTransform.cpp: (WebCore::AffineTransform::rotateFromVector): (WebCore::AffineTransform::skewX): (WebCore::AffineTransform::skewY):
  • platform/graphics/cg/AffineTransformCG.cpp: (WebCore::AffineTransform::rotate):
  • platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
  • rendering/RenderPath.cpp: (WebCore::drawMarkerWithData):
08:40 Changeset [26541] by oliver

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=6421 (<text> textLength attribute is not respected)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=6422 (<text> lengthAdjust attribute is not respected)

Implement textLength and full lengthAdjust (both 'spacing' & 'spacingAndGlyphs' mode)
for <text> & <tspan> & friends. <textPath> is still todo, as it's special.

Also fix usage of cummulatedGlyphWidth/Height in SVGInlineTextBox, calculateGlyphBoundaries was
supposed to be used in the distance calculations, to take per character transformations into account (ie. rotation).

Fixes: svg/W3C-SVG-1.1/text-text-01-b.svg (complelty fixed the single W3C textLength testcase)
Partly fixed: svg/batik/text/textOnPathSpaces.svg (kerning support missing)
Partly fixed: svg/batik/text/textLayout.svg (word-letter spacing & textLength is todo)

08:40 Changeset [26540] by oliver

Fix for Bug 15468: Parsing of numbers and lists is too lenient in SVG

Reviewed by Niko.

Correct parsing of numbers, number lists, and length lists in SVG.

  • ksvg2/svg/SVGLength.cpp: (WebCore::SVGLength::setValueAsString):
  • ksvg2/svg/SVGLength.h:
  • ksvg2/svg/SVGLengthList.cpp: (WebCore::SVGLengthList::parse):
  • ksvg2/svg/SVGParserUtilities.cpp: (WebCore::parseNumber):
08:40 Changeset [26539] by oliver

2007-10-11 Allan Sandfeld Jensen <sandfeld@kde.org>

Reviewed by Maciej and Eric.

Implement CSS selector combinators nondeterministic matching.
Fixes http://bugs.webkit.org/show_bug.cgi?id=3428

  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::matchRulesForList): (WebCore::CSSStyleSelector::checkSelector): Split the function and make the second part recursive (WebCore::CSSStyleSelector::checkOneSelector): Handle pseodo-elements rules and hoveractive quirks here instead of in checkSelector.
  • css/CSSStyleSelector.h:
08:39 Changeset [26538] by oliver

2007-10-10 Eric Seidel <eric@webkit.org>

Reviewed by Nikolas Zimmermann.

Fix the SVG dom so that rect.x.baseVal = rect.x.baseVal like it should.
http://bugs.webkit.org/show_bug.cgi?id=14150

Test: svg/dom/animated-tearoff-equlity.xhtml

  • ksvg2/svg/SVGAnimatedTemplate.h: (WebCore::SVGAnimatedTypeWrapperKey::SVGAnimatedTypeWrapperKey): (WebCore::SVGAnimatedTypeWrapperKey::operator==): (WebCore::SVGAnimatedTypeWrapperKeyHash::hash): (WebCore::SVGAnimatedTypeWrapperKeyHash::equal): (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::deletedValue): (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::emptyValue): (WebCore::SVGAnimatedTemplate::~SVGAnimatedTemplate): (WebCore::SVGAnimatedTemplate::wrapperCache): (WebCore::SVGAnimatedTemplate::forgetWrapper): (WebCore::lookupOrCreateWrapper):
  • ksvg2/svg/SVGElement.h:
08:39 Changeset [26537] by oliver

Correcting expected output of svg/batik/text/textOnPathSpaces

RS = Eric.

  • svg/batik/text/textOnPathSpaces-expected.txt
08:39 Changeset [26536] by oliver

Leopard build fix -- SVGDocument should not trty to make read/write properties read-only

Reviewed by Maciej.

Remove those API definitions SVGDocument now inherits from Document

  • ksvg2/svg/SVGDocument.idl:
08:38 Changeset [26535] by oliver

Reviewed by Eric.

  • fix assertion failures on quit.
  • kjs/array_object.cpp: (ArrayProtoFunc::callAsFunction): Dynamically alocate function-scope static UStrings to avoid the static destructor getting called later.
  • kjs/lookup.h: Dynamically alocate function-scope static Identifiers to avoid the static destructor getting called later.
08:38 Changeset [26534] by oliver

2007-10-10 Eric Seidel <eric@webkit.org>

Reviewed by Oliver.

Make renderers pull localTransform instead of depending on DOM elements to push
This allows for cleaner invalidation code, and makes writing animation easier.
Also fixed a tiny bug in SVGRenderImage focus ring calculations while there

Updated test results for svg/custom/focus-ring.svg

  • WebCore.xcodeproj/project.pbxproj:
  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::createRenderer):
  • ksvg2/svg/SVGAnimateMotionElement.cpp: (WebCore::SVGAnimateMotionElement::applyAnimatedValueToElement):
  • ksvg2/svg/SVGAnimateTransformElement.cpp: (WebCore::SVGAnimateTransformElement::applyAnimatedValueToElement):
  • ksvg2/svg/SVGClipPathElement.cpp: (WebCore::SVGClipPathElement::canvasResource):
  • ksvg2/svg/SVGElement.h:
  • ksvg2/svg/SVGGElement.cpp: (WebCore::SVGGElement::createRenderer):
  • ksvg2/svg/SVGImageElement.cpp:
  • ksvg2/svg/SVGLocatable.cpp: (WebCore::SVGLocatable::getCTM): (WebCore::SVGLocatable::getScreenCTM):
  • ksvg2/svg/SVGMarkerElement.cpp: (WebCore::SVGMarkerElement::canvasResource): (WebCore::SVGMarkerElement::notifyAttributeChange):
  • ksvg2/svg/SVGSVGElement.h:
  • ksvg2/svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::rendererIsNeeded): (WebCore::SVGStyledElement::notifyResourceParentIfExistant):
  • ksvg2/svg/SVGStyledElement.h: (WebCore::SVGStyledElement::style):
  • ksvg2/svg/SVGStyledTransformableElement.cpp: (WebCore::SVGStyledTransformableElement::animatedLocalTransform): (WebCore::SVGStyledTransformableElement::parseMappedAttribute): (WebCore::SVGStyledTransformableElement::notifyAttributeChange): (WebCore::SVGStyledTransformableElement::createRenderer):
  • ksvg2/svg/SVGStyledTransformableElement.h: (WebCore::SVGStyledTransformableElement::toPathData):
  • ksvg2/svg/SVGSwitchElement.cpp: (WebCore::SVGSwitchElement::createRenderer):
  • ksvg2/svg/SVGTRefElement.cpp: (WebCore::SVGTRefElement::updateReferencedText):
  • ksvg2/svg/SVGTextElement.cpp: (WebCore::SVGTextElement::parseMappedAttribute): (WebCore::SVGTextElement::animatedLocalTransform):
  • ksvg2/svg/SVGTextElement.h:
  • ksvg2/svg/SVGTextPathElement.cpp:
  • ksvg2/svg/SVGTextPathElement.h:
  • ksvg2/svg/SVGTransformable.cpp: (WebCore::SVGTransformable::getCTM): (WebCore::SVGTransformable::getScreenCTM):
  • ksvg2/svg/SVGTransformable.h:
  • ksvg2/svg/SVGUseElement.cpp: (WebCore::SVGUseElement::createRenderer): (WebCore::SVGUseElement::attachShadowTree):
  • platform/graphics/AffineTransform.h: (WebCore::AffineTransform::operator!=):
  • platform/graphics/svg/SVGResourceMarker.cpp: (WebCore::SVGResourceMarker::setMarker):
  • platform/graphics/svg/SVGResourceMarker.h:
  • rendering/RenderForeignObject.cpp: (WebCore::RenderForeignObject::calculateLocalTransform): (WebCore::RenderForeignObject::layout):
  • rendering/RenderForeignObject.h: (WebCore::RenderForeignObject::localTransform):
  • rendering/RenderObject.cpp:
  • rendering/RenderObject.h:
  • rendering/RenderPath.cpp: (WebCore::RenderPath::RenderPath): (WebCore::RenderPath::localTransform): (WebCore::RenderPath::calculateLocalTransform): (WebCore::RenderPath::layout):
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::localTransform): (WebCore::RenderSVGContainer::calculateLocalTransform): (WebCore::RenderSVGContainer::layout):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGImage.h: (WebCore::RenderSVGImage::localTransform):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::calculateLocalTransform): (WebCore::RenderSVGText::layout):
  • rendering/RenderSVGText.h: (WebCore::RenderSVGText::isSVGText): (WebCore::RenderSVGText::localTransform):
  • rendering/RenderSVGTextPath.cpp: (WebCore::RenderSVGTextPath::layoutPath): (WebCore::RenderSVGTextPath::startOffset): (WebCore::RenderSVGTextPath::exactAlignment): (WebCore::RenderSVGTextPath::stretchMethod):
  • rendering/RenderSVGTextPath.h:
  • rendering/RenderSVGTransformableContainer.cpp: Added. (WebCore::RenderSVGTransformableContainer::RenderSVGTransformableContainer): (WebCore::RenderSVGTransformableContainer::calculateLocalTransform):
  • rendering/RenderSVGTransformableContainer.h: Added.
  • rendering/RenderSVGViewportContainer.h:
08:38 Changeset [26533] by oliver

Bug 15451: SVGStyledElement must unregister itself from Resources on detach

Reviewed by Eric.

Use a global hashtable to maintain the relationship between the
various SVG resources and their clients, across dom updates, etc.

  • ChangeLog:
  • ksvg2/svg/SVGStyledElement.cpp: (WebCore::SVGStyledElement::detach):
  • ksvg2/svg/SVGStyledElement.h:
  • platform/graphics/svg/SVGPaintServer.h:
  • platform/graphics/svg/SVGResource.cpp: (WebCore::ResourceSet::ResourceSet): (WebCore::clientMap): (WebCore::SVGResource::~SVGResource): (WebCore::SVGResource::invalidate): (WebCore::SVGResource::removeClient): (WebCore::SVGResource::addClient):
  • platform/graphics/svg/SVGResource.h: (WebCore::): (WebCore::SVGResource::isPaintServer): (WebCore::SVGResource::isFilter): (WebCore::SVGResource::isClipper): (WebCore::SVGResource::isMarker): (WebCore::SVGResource::isMasker):
  • platform/graphics/svg/SVGResourceClipper.h: (WebCore::SVGResourceClipper::resourceType):
  • platform/graphics/svg/SVGResourceFilter.h:
  • platform/graphics/svg/SVGResourceMarker.h:
  • platform/graphics/svg/SVGResourceMasker.h:
08:37 Changeset [26532] by oliver

2007-10-10 Mark Rowe <mrowe@apple.com>

Windows build fix after r26109.

  • WebCore.vcproj/WebCore.vcproj:
08:37 Changeset [26531] by oliver

Fix Bug 15433: Filters do not repaint when base resources change/update

Reviewed by Eric.

SVGFEImage now actually responds to image updates, and triggers a repaint.

  • platform/graphics/svg/SVGResource.h:
  • platform/graphics/svg/filters/SVGFEImage.cpp: (WebCore::SVGFEImage::setCachedImage): Don't re-set the image lest we want to trigger infinite recursion. (WebCore::SVGFEImage::imageChanged): Image change means we need to tell our clients to repaint
  • platform/graphics/svg/filters/SVGFEImage.h:
  • rendering/SVGRenderSupport.cpp: (WebCore::prepareToRenderSVGContent): make sure that users of filters are registered.
08:37 Changeset [26530] by oliver

2007-10-09 Eric Seidel <eric@webkit.org>

Reviewed by Alp.

Track changes in r26109 to fix the Gtk+ build.

  • WebCore.pro:
08:36 Changeset [26529] by oliver

Reviewed by Anders.

http://bugs.webkit.org/show_bug.cgi?id=15436
Wrong node order for XPath reverse axes

Test: fast/xpath/reverse-axes.html

  • xml/XPathStep.cpp: (WebCore::XPath::Step::nodesInAxis): Do not prematurely sort reverse axes. Generate preceding axis nodes in reversed document order.
08:36 Changeset [26528] by oliver

Reviewed by Mitz.

http://bugs.webkit.org/show_bug.cgi?id=15437
XPath substring-after function is broken

Test: fast/xpath/substring-after.html

  • xml/XPathFunctions.cpp: (WebCore::XPath::FunSubstringAfter::evaluate): Fix it for real this time, hopefully.
08:35 Changeset [26527] by oliver

Not reviewed.

Regenerated the SVG test baseline, they have been generated with _trunk_ instead of feature-branch.
Not sure who committed it, but it's wrong - so I'm fixing.

08:34 Changeset [26526] by oliver

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=15080
<use> element not refresh after adding objects by script in referrer

Update shadow tree when elements are added/removed from a tree
that is referenced by a <use>.

08:34 Changeset [26525] by oliver

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=15088
HTMLOptionElement.selected returns false when parent HTMLSelectElement is "display: none" until parent's .selectedIndex is accessed

Make sure the list items are up to date when there is no renderer.

08:33 Changeset [26524] by oliver

HackTop [26957:WebKitTools]% less ChangeLog Stuff/Projects/WebKit/WebKitTools
2007-10-08 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

  • Scripts/build-webkit: add --help, remove unused --color
08:33 Changeset [26523] by oliver

2007-10-08 Eric Seidel <eric@webkit.org>

Reviewed by Oliver.

Build fix. Fix circular build rule for CSS*.in files evident on clean build.

  • DerivedSources.make:
  • WebCore.xcodeproj/project.pbxproj:
  • ksvg2/css/CSSPropertyNames.in: Removed.
  • ksvg2/css/CSSValueKeywords.in: Removed.
  • ksvg2/css/SVGCSSPropertyNames.in: Copied from ksvg2/css/CSSPropertyNames.in.
  • ksvg2/css/SVGCSSValueKeywords.in: Copied from ksvg2/css/CSSValueKeywords.in.
08:32 Changeset [26522] by oliver

2007-10-08 Eric Seidel <eric@webkit.org>

Reviewed by hyatt.

Implement getComputedStyle support for SVG CSS values
http://bugs.webkit.org/show_bug.cgi?id=15422

This also unifies SVG and non-SVG CSS hash lookups. A unified hash
solves correctness problems as well as offers improved speed.

Test: svg/css/getComputedStyle-basic.xhtml

  • DerivedSources.make: unify SVG and non-SVG CSS hash files
  • WebCore.xcodeproj/project.pbxproj: remove old SVG CSS hash files
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::): (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): call getPropertyCSSValue
  • css/CSSComputedStyleDeclaration.h: add getPropertyCSSValue
  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue):
  • css/CSSStyleDeclaration.cpp: (WebCore::propertyID):
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applyProperty):
  • ksvg2/css/CSSPropertyNames.in: remove font-size-adjust
  • ksvg2/css/SVGCSSComputedStyleDeclaration.cpp: Added. (WebCore::CSSComputedStyleDeclaration::getSVGPropertyCSSValue): added.
  • ksvg2/css/SVGCSSParser.cpp: (WebCore::CSSParser::parseSVGValue):
  • ksvg2/css/SVGCSSStyleSelector.cpp: (WebCore::CSSStyleSelector::applySVGProperty):
  • ksvg2/scripts/cssmakeprops: Removed.
  • ksvg2/scripts/cssmakevalues: Removed.
  • ksvg2/svg/SVGAnimationElement.cpp:
  • ksvg2/svg/SVGStyledElement.cpp: (WebCore::mapAttributeToCSSProperty): (WebCore::SVGStyledElement::cssPropertyIdForSVGAttributeName): remove font-size-adjust
08:32 Changeset [26521] by oliver

WebCore:

Reviewed by Steve Falkenburg;

Fix for <rdar://problem/5519698> CrashTracer: [USER] 47 crashes in Safari at com.apple.WebCore: WebCore::XMLTokenizer::lineNumber const + 9

Test: fast/innerHTML/innerHTML-script-tag-crash.xhtml

  • dom/XMLTokenizer.cpp: (WebCore::XMLTokenizer::lineNumber): Return 1 when there is no context. (WebCore::XMLTokenizer::columnNumber): ditto.

LayoutTests:

Reviewed by Steve Falkenburg.

Test for <rdar://problem/5519698> CrashTracer: [USER] 47 crashes in Safari at com.apple.WebCore: WebCore::XMLTokenizer::lineNumber const + 9

  • fast/innerHTML/innerHTML-script-tag-crash-expected.txt: Added.
  • fast/innerHTML/innerHTML-script-tag-crash.xhtml: Added.
08:31 Changeset [26520] by oliver
  • platform/mac/FontPlatformDataMac.mm: (WebCore::FontPlatformData::setFont): Restored one of the -1 checks removed in the previous change - we do need to check m_font!
08:30 Changeset [26519] by oliver

2007-10-07 Eric Seidel <eric@webkit.org>

Reviewed by darin.

  • Drosera/mac/DebuggerDocumentPlatform.mm: (DebuggerDocument::platformEvaluateScript): null check before trying to make a JSString
08:30 Changeset [26518] by oliver

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=15397
Layout tests freeze in HashTable::lookup

Fixes a DRT freeze on PowerPC.

  • platform/mac/FontPlatformDataMac.mm: (WebCore::FontPlatformData::FontPlatformData): Don't ask for a size of a nil font, the result is undefined. (WebCore::FontPlatformData::setFont): Ditto. Also removed some checks for -1 that were not sufficient, and thus likely unnecessary,
08:29 Changeset [26517] by oliver

Not reviewed.
Forgot to land some result test changes in my last commit.

08:28 Changeset [26516] by oliver

Reviewed by Eric.

Fix some issues with rotation & baseline-shift, when spanning
across <tspan> elements. Highlighted by the existing batik tests.

08:27 Changeset [26515] by oliver

2007-10-07 Mark Rowe <mrowe@apple.com>

Reviewed by Maciej.

Bug 5122: Need an equivalent of Mozilla's DOMContentLoaded event
http://bugs.webkit.org/show_bug.cgi?id=5122

This is based on a patch by Daniel Peebles (pumpkingod@gmail.com).

Test: http/tests/loading/DOMContentLoaded-event.html

  • dom/Document.cpp: (WebCore::Document::finishedParsing): Dispatch the DOMContentLoaded event when parsing completes.
  • dom/EventNames.h: Add DOMContentLoaded to the list of events.

2007-10-07 Mark Rowe <mrowe@apple.com>

Reviewed by Maciej.

Test for Bug 5122: Need an equivalent of Mozilla's DOMContentLoaded event
http://bugs.webkit.org/show_bug.cgi?id=5122

  • http/tests/loading/DOMContentLoaded-event-expected.txt: Added.
  • http/tests/loading/DOMContentLoaded-event.html: Added.
08:27 Changeset [26514] by oliver

Reviewed by Mark.
Fix textLength.svg testcase - missed xmlns.

08:26 Changeset [26513] by oliver

2007-10-07 Ed Schouten <ed@fxq.nl>

Reviewed and landed by Alexey Proskuryakov.

Add PLATFORM(FREEBSD), so we can fix the build on FreeBSD-like
systems by including <pthread_np.h>. Also fix some (disabled)
regcomp()/regexec() code; it seems some variable names have
changed.

  • kjs/config.h:
  • kjs/regexp.cpp: (KJS::RegExp::RegExp):
  • wtf/Platform.h:
08:25 Changeset [26512] by oliver

Forgot to commit this with r25958.

08:24 Changeset [26511] by oliver

Reviewed by Eric Seidel.

http://bugs.webkit.org/show_bug.cgi?id=15368
xsl:import fails when preceded by comment

Test: fast/xsl/import-after-comment.xml

  • xml/XSLStyleSheet.cpp: (WebCore::XSLStyleSheet::loadChildSheets): It's OK for xsl:import to be preceded by non-element nodes.
08:24 Changeset [26510] by oliver

2007-10-07 Vincent Ricard <magic@magicninja.org>

Reviewed by Maciej. Landed by eseidel.

http://bugs.webkit.org/show_bug.cgi?id=15062
Implement document.compatMode

Tests: fast/dom/compatMode-AlmostStrict.html

fast/dom/compatMode-Compat.html
fast/dom/compatMode-Strict.html

  • html/HTMLDocument.cpp: (WebCore::HTMLDocument::compatMode):
  • html/HTMLDocument.h:
  • html/HTMLDocument.idl:
08:23 Changeset [26509] by oliver

2007-10-07 Sam Weinig <sam@webkit.org>

Reviewed by Darin & Nikolas. Landed by eseidel.

Patch for http://bugs.webkit.org/show_bug.cgi?id=14455
Autogenerate the JS bindings for the StyleSheetList

  • DerivedSources.make:
  • WebCore.pro:
  • WebCore.vcproj/WebCore.vcproj:
  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSStyleSheetListCustom.cpp: Added. (WebCore::JSStyleSheetList::canGetItemsForName): (WebCore::JSStyleSheetList::nameGetter):
  • bindings/js/kjs_css.cpp:
  • bindings/js/kjs_css.h:
  • bindings/objc/DOMUtility.mm:
  • bindings/scripts/CodeGeneratorJS.pm:
  • css/StyleSheetList.cpp: (WebCore::StyleSheetList::StyleSheetList): (WebCore::StyleSheetList::documentDestroyed): (WebCore::StyleSheetList::getNamedItem):
  • css/StyleSheetList.h: Add Document member variable and getNamedItem function to accommodate the odd javascript name getter functionality.
  • css/StyleSheetList.idl:
  • dom/Document.cpp: (WebCore::Document::Document): (WebCore::Document::~Document):
  • page/DOMWindow.idl: Add StyleSheetListConstructor
08:22 Changeset [26508] by oliver

2007-10-07 Lars Naesbye Christensen <lars@naesbye.dk>

Reviewed by Eric Seidel.

make CSS cell cursor more mac-like
http://bugs.webkit.org/show_bug.cgi?id=15325

  • Resources/cellCursor.png:
08:21 Changeset [26507] by oliver

2007-10-06 Eric Seidel <eric@webkit.org>

Reviewed by Oliver.

SVG does not correctly handle onfocusin, onfocusout or onactivate
http://bugs.webkit.org/show_bug.cgi?id=12573

Test: svg/W3C-SVG-1.1/script-handle-02-b.svg

  • ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::parseMappedAttribute):
  • ksvg2/svg/svgattrs.in: add onfocusin, onfocusout and onactivate
08:20 Changeset [26506] by oliver

Reviewed by Oliver.
Never pass null input images to CICrop filter.

08:19 Changeset [26505] by oliver

Reviewed by Mark.

Remove useless onload/onunload handlers from js-update-container.svg,
causing a console message saying these handlers don't exist.

08:18 Changeset [26504] by oliver

Rubberstamped by Oliver.
Update SVG baseline with Tiger. No regressions.

08:17 Changeset [26503] by oliver

2007-10-06 Mark Rowe <mrowe@apple.com>

Reviewed by Alp Toker.

Gtk+ build fix and minor code cleanup.

  • WebCore.pro:
  • platform/gtk/FontCacheGtk.cpp: (WebCore::FontCache::getLastResortFallbackFont): (WebCore::FontCache::fontExists):
08:16 Changeset [26502] by oliver

Reviewed by Mitz.

http://bugs.webkit.org/show_bug.cgi?id=15380
XPath: id('foo') doesn't resolve correctly

Test: fast/xpath/id-simple.html

  • xml/XPathFunctions.cpp: (WebCore::XPath::FunId::evaluate): Fixed a logic error in id() parameter parsing.
08:15 Changeset [26501] by oliver

Removing a conflict marker.

08:14 Changeset [26500] by oliver
  • fast/dom/xmlhttprequest-get-expected.txt: Updated event properties for changes made in bug 15102.
08:13 Changeset [26499] by oliver

Reviewed by Darin.

Patch for http://bugs.webkit.org/show_bug.cgi?id=13707
REGRESSION: JavaScript exceptions on quotes.burntelectrons.org

http://bugs.webkit.org/show_bug.cgi?id=12628
document.body is not supported in XHTML documents

http://bugs.webkit.org/show_bug.cgi?id=14213
On page with MIME type application/xhtml+xml, cookie don't work

WebCore:

Moved a bunch of methods and properties from HTMLDocument down into Document to make
them available for all documents (xml, svg).
What was kept in HTMLDocument:

  • some methods and properties that are not in HTML5 (yet?);
  • open/write/writeln/close, as they will need to be modified to work on XML documents, and aren't of much use for those anyway;
  • designMode, because its definition in HTML5 is incompatible with our implementation.

Covered by existing tests.

  • bindings/js/JSDocumentCustom.cpp: (WebCore::JSDocument::location): (WebCore::JSDocument::setLocation):
  • bindings/js/JSHTMLDocumentCustom.cpp:
  • bindings/objc/PublicDOMInterfaces.h:
  • dom/Document.cpp: (WebCore::Document::setBody): (WebCore::Document::cookie): (WebCore::Document::setCookie): (WebCore::Document::lastModified):
  • dom/Document.h: (WebCore::Document::title):
  • dom/Document.idl:
  • html/HTMLDocument.cpp:
  • html/HTMLDocument.h:
  • html/HTMLDocument.idl:

LayoutTests:

  • dom/xhtml/level2/html/HTMLBaseElement01-expected.checksum: Removed.
  • dom/xhtml/level2/html/HTMLBaseElement01-expected.png: Removed.
  • dom/xhtml/level2/html/HTMLBaseElement01-expected.txt:
  • dom/xhtml/level2/html/HTMLBaseElement01.xhtml:
  • dom/xhtml/level2/html/HTMLBaseElement02-expected.checksum: Removed.
  • dom/xhtml/level2/html/HTMLBaseElement02-expected.png: Removed.
  • dom/xhtml/level2/html/HTMLBaseElement02-expected.txt:
  • dom/xhtml/level2/html/HTMLBaseElement02.xhtml:
  • dom/xhtml/level2/html/HTMLBodyElement07-expected.txt:
  • dom/xhtml/level2/html/HTMLBodyElement08-expected.txt:
  • dom/xhtml/level2/html/HTMLBodyElement09-expected.txt:
  • dom/xhtml/level2/html/HTMLBodyElement10-expected.txt:
  • dom/xhtml/level2/html/HTMLBodyElement11-expected.txt:
  • dom/xhtml/level2/html/HTMLBodyElement12-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument01-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument02-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument03-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument05-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument07-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument08-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument09-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument10-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument11-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument12-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument13-expected.txt:
  • dom/xhtml/level2/html/HTMLDocument14-expected.txt:
  • dom/xhtml/level2/html/doc01-expected.txt: These now pass. Changed HTMLBaseElement* to dump as text.
  • fast/dom/Window/window-properties-expected.txt: Added Document.prototype.getElementsByName
08:12 Changeset [26498] by oliver

2007-10-06 Eric Seidel <eric@webkit.org>

Reviewed by Oliver Hunt.

RenderSVGContainer (<g>) should not repaint when its bounds change (unless it has a filter)
http://bugs.webkit.org/show_bug.cgi?id=15388
This makes the Sun Lively Kernel invalidate only what it should!

No tests possible in DRT.

  • ksvg2/svg/SVGCircleElement.cpp: (WebCore::SVGCircleElement::notifyAttributeChange): replace call to rebuildRenderer
  • ksvg2/svg/SVGEllipseElement.cpp: (WebCore::SVGEllipseElement::notifyAttributeChange): replace call to rebuildRenderer
  • ksvg2/svg/SVGImageElement.cpp: (WebCore::SVGImageElement::notifyAttributeChange): replace call to rebuildRenderer (WebCore::SVGImageElement::hasRelativeValues): implemented
  • ksvg2/svg/SVGImageElement.h:
  • ksvg2/svg/SVGLineElement.cpp: (WebCore::SVGLineElement::notifyAttributeChange): replace call to rebuildRenderer
  • ksvg2/svg/SVGPathElement.cpp: (WebCore::SVGPathElement::notifyAttributeChange): replace call to rebuildRenderer
  • ksvg2/svg/SVGPolyElement.cpp: (WebCore::SVGPolyElement::notifyAttributeChange): replace call to rebuildRenderer
  • ksvg2/svg/SVGRectElement.cpp: (WebCore::SVGRectElement::notifyAttributeChange): replace call to rebuildRenderer
  • ksvg2/svg/SVGStyledElement.cpp:
  • ksvg2/svg/SVGStyledElement.h: (WebCore::SVGStyledElement::hasRelativeValues): default to true instead
  • ksvg2/svg/SVGStyledTransformableElement.cpp: (WebCore::SVGStyledTransformableElement::updateLocalTransform): don't layout if no change
  • ksvg2/svg/SVGStyledTransformableElement.h:
  • ksvg2/svg/SVGTransform.h:
  • rendering/RenderPath.cpp: (WebCore::RenderPath::layout):
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout): (WebCore::RenderSVGContainer::selfWillPaint): return true if have a filter (WebCore::RenderSVGContainer::paint):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGHiddenContainer.cpp: (WebCore::RenderSVGHiddenContainer::layout):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout):
  • rendering/RenderSVGViewportContainer.cpp: (WebCore::RenderSVGViewportContainer::layout): (WebCore::RenderSVGViewportContainer::calcViewport): use floats
08:11 Changeset [26497] by oliver

Reviewed by Eric.

Use document() instead of ownerDocument() and a few other cleanups.

08:09 Changeset [26496] by oliver

2007-10-05 Eric Seidel <eric@webkit.org>

Reviewed by Oliver Hunt.

SVG invalidates way too much during layout()
http://bugs.webkit.org/show_bug.cgi?id=14003

  • ksvg2/svg/SVGElement.cpp: (WebCore::SVGElement::ownerSVGElement): simplify if (WebCore::SVGElement::viewportElement): simplify if
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::layout): only layout children if parent changed
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::layout): only layout children when size changes
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::layout): hack to avoid bad RenderBlock::layout code
  • rendering/RenderSVGViewportContainer.cpp: (WebCore::RenderSVGViewportContainer::layout): don't use RenderSVGContainer::layout()
08:08 Changeset [26495] by oliver

30%+ performance improvement for svg embedded in xhtml

Reviewed by Eric.

Relayout internal to SVG was incorrectly being propagated to
the containing xhtml element, which subsequently resulted in
a full paint of the SVG, rather than just the dirty regions.

  • rendering/RenderObject.cpp:

(WebCore::objectIsRelayoutBoundary):
(WebCore::RenderObject::markContainingBlocksForLayout):

08:07 Changeset [26494] by oliver

2007-10-03 Eric Seidel <eric@webkit.org>

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=12310
Remove static variables from removeAllChildren causing crash.
removeAllChildren now iterates over the entire tree instead of recursing.
Also (according to Maciej) a possible 1-2% speedboost on HTML iBench.

Test: fast/images/svg-background-crash-on-refresh.html

  • WebCore.xcodeproj/project.pbxproj:
  • dom/ContainerNode.cpp: (WebCore::addChildNodesToDeletionQueue): (WebCore::ContainerNode::removeAllChildren): use new addChildNodesToDeletionQueue
08:06 Changeset [26493] by oliver

Fix Windows build bustage once and for all. Feature branch builds on Windows now.

08:05 Changeset [26492] by oliver

Fix Windows build bustage once and for all. Feature branch builds on Windows now.

08:04 Changeset [26491] by oliver

Reviewed by Mark Rowe.

Mac build fix for issue introduced in r26027

  • WebCoreSupport/WebSystemInterface.m: (InitWebCoreSystemInterface):
08:02 Changeset [26490] by oliver

Fix Windows build bustage. Make sure the font update method is called with the correct # of arguments when used in Windows WebKit.

08:01 Changeset [26489] by oliver

Fix Windows build bustage. Make sure the font update method is called with the correct # of arguments when used in Windows WebKit.

08:00 Changeset [26488] by oliver

Fix more SVG build bustage on Windows. Remove a deleted file from the project. Remove a const from an unimplemented mask method.

07:59 Changeset [26487] by oliver

Fix UChar ambiguity in SVG code that keeps Windows from compiling the feature branch.

07:57 Changeset [26486] by oliver

Fix windows build bustage on feature branch.

07:56 Changeset [26485] by oliver

Fix windows build bustage on feature branch.

07:55 Changeset [26484] by oliver

Land support for the CSS @font-face rule. This patch allows custom fonts
to be downloaded from the Web and rendered in Web pages. Right now only
TrueType fonts are supported. Proprietary formats like .eot are not
supported.

Reviewed by Eric Seidel

Many tests will be coming in a future landing.

  • WebCore.base.exp: Expose some more stuff for WebKit, caused by font restructuring.
  • WebCore.xcodeproj/project.pbxproj: Add all the new font face files.
  • css/CSSComputedStyleDeclaration.cpp: (WebCore::CSSComputedStyleDeclaration::getPropertyCSSValue): Make sure to ignore the 'src' property of @font-face rules.
  • css/CSSFontFace.cpp: Added. (WebCore::CSSFontFace::CSSFontFace): (WebCore::CSSFontFace::~CSSFontFace): (WebCore::CSSFontFace::isLoaded): (WebCore::CSSFontFace::isValid): (WebCore::CSSFontFace::addSource): (WebCore::CSSFontFace::fontLoaded): (WebCore::CSSFontFace::getFontData):
  • css/CSSFontFace.h: Added. A CSSFontFace is a composite object. It consists of multiple font-face sources, where each source represents either a remote or local file in a @font-face rule's src list.
  • css/CSSFontFaceRule.cpp: (WebCore::CSSFontFaceRule::setDeclaration): (WebCore::CSSFontFaceRule::cssText):
  • css/CSSFontFaceRule.h: The implementation of the @font-face rule itself in the CSS sheet back end.
  • css/CSSFontFaceSource.cpp: Added. (WebCore::CSSFontFaceSource::CSSFontFaceSource): (WebCore::CSSFontFaceSource::~CSSFontFaceSource): (WebCore::CSSFontFaceSource::pruneTable): (WebCore::CSSFontFaceSource::isLoaded): (WebCore::CSSFontFaceSource::isValid): (WebCore::CSSFontFaceSource::fontLoaded): (WebCore::CSSFontFaceSource::getFontData):
  • css/CSSFontFaceSource.h: Added. (WebCore::CSSFontFaceSource::string): (WebCore::CSSFontFaceSource::setFontFace): A font face source represents a single remote or local font. If it represents a remote font than it wraps a CachedFont.
  • css/CSSFontFaceSrcValue.cpp: Added. (WebCore::CSSFontFaceSrcValue::isSupportedFormat): (WebCore::CSSFontFaceSrcValue::cssText):
  • css/CSSFontFaceSrcValue.h: Added. (WebCore::CSSFontFaceSrcValue::m_isLocal): (WebCore::CSSFontFaceSrcValue::~CSSFontFaceSrcValue): (WebCore::CSSFontFaceSrcValue::resource): (WebCore::CSSFontFaceSrcValue::format): (WebCore::CSSFontFaceSrcValue::isLocal): (WebCore::CSSFontFaceSrcValue::setFormat): Used in parsing. Represents the parsed form of the src value that can then be used to build up a CSSFontFace.
  • css/CSSFontSelector.cpp: Added. (WebCore::CSSFontSelector::CSSFontSelector): (WebCore::CSSFontSelector::~CSSFontSelector): (WebCore::CSSFontSelector::isEmpty): (WebCore::CSSFontSelector::docLoader): (WebCore::hashForFont): (WebCore::CSSFontSelector::addFontFaceRule): (WebCore::CSSFontSelector::fontLoaded): (WebCore::CSSFontSelector::getFontData):
  • css/CSSFontSelector.h: Added. The CSS font selector is the object that selects the correct font given a specified font family. It builds up a database of CSSFontFaces that can then be handed back.
  • css/CSSGrammar.y:
  • css/CSSParser.cpp: (WebCore::CSSParser::parseValue): (WebCore::CSSParser::parseFontFaceSrc): (WebCore::CSSParser::createFontFaceRule):
  • css/CSSParser.h: Modify the CSS grammar to now understand @font-face rules.
  • css/CSSPropertyNames.in: Add the src property.
  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::CSSStyleSelector): (WebCore::CSSStyleSelector::styleForElement): (WebCore::CSSStyleSelector::updateFont): (WebCore::CSSRuleSet::addRulesFromSheet): (WebCore::CSSStyleSelector::applyProperty): (WebCore::CSSStyleSelector::ensureFontSelector):
  • css/CSSStyleSelector.h: (WebCore::CSSStyleSelector::fontSelector): The style selector now creates a font selector object and feeds it the appropriate information when @font-face rules are encountered.
  • dom/Document.cpp: (WebCore::Document::recalcStyle): Patch the update method now that it takes a font selector argument.
  • loader/Cache.cpp: (WebCore::createResource): (WebCore::Cache::getStatistics):
  • loader/Cache.h: Teach the Cache about CachedFonts.
  • loader/CachedFont.cpp: Added. (WebCore::CachedFont::CachedFont): (WebCore::CachedFont::~CachedFont): (WebCore::CachedFont::ref): (WebCore::CachedFont::data): (WebCore::CachedFont::beginLoadIfNeeded): (WebCore::CachedFont::ensureCustomFontData): (WebCore::CachedFont::platformDataFromCustomData): (WebCore::CachedFont::allReferencesRemoved): (WebCore::CachedFont::checkNotify): (WebCore::CachedFont::error):
  • loader/CachedFont.h: Added. (WebCore::CachedFont::schedule): The implementation of CachedFont. This represents the downloaded resource and has all the raw font data.
  • loader/CachedResource.h: (WebCore::CachedResource::):
  • loader/CachedResourceClient.h: (WebCore::CachedResourceClient::fontLoaded): Add a new fontLoaded method for clients of cached resources to track when fonts finish downloading.
  • loader/DocLoader.cpp: (WebCore::DocLoader::requestFont):
  • loader/DocLoader.h: Add the ability to request a font.
  • platform/Font.cpp: (WebCore::Font::operator==): (WebCore::Font::update): (WebCore::Font::drawText):
  • platform/Font.h:
  • platform/FontCache.cpp: (WebCore::FontCache::getFontData):
  • platform/FontCache.h:
  • platform/FontData.cpp: (WebCore::FontData::FontData):
  • platform/FontData.h: (WebCore::FontData::isCustomFont): (WebCore::FontData::isLoading):
  • platform/FontFallbackList.cpp: (WebCore::FontFallbackList::FontFallbackList): (WebCore::FontFallbackList::invalidate): (WebCore::FontFallbackList::fontDataAt):
  • platform/FontFallbackList.h: (WebCore::FontFallbackList::loadingCustomFonts): (WebCore::FontFallbackList::fontSelector):
  • platform/FontSelector.h: Added. (WebCore::FontSelector::~FontSelector):
  • platform/GlyphPageTreeNode.cpp: (WebCore::GlyphPageTreeNode::getRoot): (WebCore::GlyphPageTreeNode::pruneTreeCustomFontData): (WebCore::GlyphPageTreeNode::~GlyphPageTreeNode): (WebCore::GlyphPageTreeNode::initializePage): (WebCore::GlyphPageTreeNode::getChild): (WebCore::GlyphPageTreeNode::pruneCustomFontData):
  • platform/GlyphPageTreeNode.h: (WebCore::GlyphPageTreeNode::GlyphPageTreeNode): (WebCore::GlyphPageTreeNode::page):
  • platform/PopupMenuClient.h:
  • platform/mac/FontCacheMac.mm: (WebCore::FontCache::getFontDataForCharacters): (WebCore::FontCache::getLastResortFallbackFont): (WebCore::FontCache::fontExists): (WebCore::FontCache::createFontPlatformData):
  • platform/mac/FontCustomPlatformData.cpp: Added. (WebCore::FontCustomPlatformData::~FontCustomPlatformData): (WebCore::FontCustomPlatformData::fontPlatformData): (WebCore::createFontCustomPlatformData):
  • platform/mac/FontCustomPlatformData.h: Added. (WebCore::FontCustomPlatformData::FontCustomPlatformData):
  • platform/mac/FontDataMac.mm: (WebCore::initFontData): (WebCore::FontData::platformInit): (WebCore::FontData::smallCapsFontData): (WebCore::FontData::platformWidthForGlyph): (WebCore::FontData::checkShapesArabic):
  • platform/mac/FontMac.mm: (WebCore::initializeATSUStyle): (WebCore::Font::drawGlyphs):
  • platform/mac/FontPlatformData.h: (WebCore::FontPlatformData::FontPlatformData): (WebCore::FontPlatformData::hash): (WebCore::FontPlatformData::operator==):
  • platform/mac/FontPlatformDataMac.mm: Added. (WebCore::FontPlatformData::FontPlatformData): (WebCore::~FontPlatformData): (WebCore::FontPlatformData::setFont):
  • platform/mac/WebCoreSystemInterface.h:
  • platform/mac/WebCoreSystemInterface.mm:
  • platform/win/FontCacheWin.cpp: (WebCore::FontCache::getLastResortFallbackFont): (WebCore::FontCache::fontExists):
  • platform/win/FontCustomPlatformData.cpp: Added. (WebCore::FontCustomPlatformData::~FontCustomPlatformData): (WebCore::FontCustomPlatformData::fontPlatformData): (WebCore::getData): (WebCore::releaseData): (WebCore::getBytesWithOffset): (WebCore::createFontCustomPlatformData):
  • platform/win/FontCustomPlatformData.h: Added. (WebCore::FontCustomPlatformData::FontCustomPlatformData):
  • platform/win/FontDataWin.cpp: (WebCore::FontData::platformInit): (WebCore::FontData::platformDestroy): (WebCore::FontData::smallCapsFontData): (WebCore::FontData::containsCharacters): (WebCore::FontData::determinePitch):
  • platform/win/FontPlatformData.h: (WebCore::FontPlatformData::FontPlatformData): (WebCore::FontPlatformData::hash): (WebCore::FontPlatformData::operator==):
  • platform/win/FontPlatformDataWin.cpp: (WebCore::FontPlatformData::FontPlatformData):
  • platform/win/PopupMenuWin.cpp: (WebCore::PopupMenu::paint): Changes to platform to support rendering of custom fonts. Too large to go into, but for ports, the relevant object to implement is FontCustomPlatformData (to get the data loaded into your native font format), and then you have to patch your other font objects to know how to use the font.
  • rendering/RenderListBox.cpp: (WebCore::RenderListBox::updateFromElement): (WebCore::RenderListBox::paintItemForeground):
  • rendering/RenderMenuList.cpp: (WebCore::RenderMenuList::fontSelector):
  • rendering/RenderMenuList.h:
  • rendering/RenderTextControl.cpp: (WebCore::RenderTextControl::fontSelector):
  • rendering/RenderTextControl.h:
  • rendering/RenderThemeMac.mm: (WebCore::RenderThemeMac::setFontFromControlSize):
  • rendering/RenderThemeSafari.cpp: (WebCore::RenderThemeSafari::setFontFromControlSize): Patches for update now taking a font selector argument.
07:54 Changeset [26483] by oliver

Reviewed by Eric.

Remove unneeded code and other cleanups.

07:52 Changeset [26482] by oliver

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=15260
Any styles defined after <element> {<property>:%} style are ignored by Safari

Add dummy rule to skip constructions like width: %.

07:51 Changeset [26481] by oliver

Reviewed by Olliej.

Adapt to changed location of Ahem font.

07:50 Changeset [26480] by oliver

2007-10-03 Mark Rowe <mrowe@apple.com>

Reviewed by Lars.

Get Gtk+ port building on the feature branch.

  • WebCore.pro:
  • ksvg2/svg/SVGSVGElement.cpp:
  • platform/graphics/svg/cairo/RenderPathCairo.cpp: (WebCore::RenderPath::strokeContains):
  • platform/graphics/svg/cairo/SVGPaintServerCairo.cpp: (WebCore::SVGPaintServer::draw): (WebCore::SVGPaintServer::renderPath):
  • platform/graphics/svg/cairo/SVGPaintServerSolidCairo.cpp: (WebCore::SVGPaintServerSolid::setup):
  • platform/graphics/svg/cairo/SVGResourceMaskerCairo.cpp: (WebCore::SVGResourceMasker::applyMask):
  • rendering/SVGCharacterLayoutInfo.cpp:
  • rendering/SVGInlineTextBox.cpp:
  • rendering/SVGRootInlineBox.cpp:
07:48 Changeset [26479] by oliver

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=15102
XMLHttpRequests should dispatch a readystatechange event.

Test: http/tests/xmlhttprequest/readystatechange.html

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::callReadyStateChangeListener): Added readystatechange event support. Fixed the function to dispatch the same event to all listeners instead of creating a new copy for each one. Changed bubbling/cancelability of load and readystatechange events to match Firefox.
07:47 Changeset [26478] by oliver

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=10370
RegExp fails to match non-ASCII characters against [\S\s]

Test: fast/js/regexp-negative-special-characters.html

  • pcre/pcre_compile.c: (compile_branch): Adjust opcode and bitmap as necessary to include (or exclude) character codes >255. Fix suggested by Philip Hazel.
  • pcre/pcre_exec.c: (match): Merged fix for PCRE bug 580 (\S\S vs. \S{2}).
  • tests/mozilla/expected.html: One test was fixed.
  • pcre/MERGING: Added information about this fix.
07:45 Changeset [26477] by oliver

2007-10-02 Eric Seidel <eric@webkit.org>

Reviewed by Oliver Hunt.

http://bugs.webkit.org/show_bug.cgi?id=13828
Fixes svg/custom/rootmost-svg-xy-attrs.xhtml

  • WebCore.xcodeproj/project.pbxproj: fix warning about SVGDOM.h
  • ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::viewport): use new isOutermostSVG() (WebCore::SVGSVGElement::getCTM): use isOutermostSVG() (WebCore::SVGSVGElement::getScreenCTM): use isOutermostSVG() (WebCore::SVGSVGElement::createRenderer): use isOutermostSVG() (WebCore::SVGSVGElement::isOutermostSVG):
  • ksvg2/svg/SVGSVGElement.h: add isOutermostSVG
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::calcViewport): ignore x/y
07:44 Changeset [26476] by oliver

Reviewed by Mitz.

  • css/CSSMutableStyleDeclaration.cpp: (WebCore::CSSMutableStyleDeclaration::removeProperty): Don't generate return value unless needed. (WebCore::CSSMutableStyleDeclaration::setProperty): Use the no-return version appropriately.
  • css/CSSMutableStyleDeclaration.h: (WebCore::CSSMutableStyleDeclaration::removeProperty): New version with no return value.
07:43 Changeset [26475] by oliver

Reviewed by Oliver.

  • kjs/array_object.cpp: (ArrayProtoFunc::callAsFunction): Implement the two mentioned optimizations.
07:41 Changeset [26474] by oliver

WebCore:

Reviewed by Oliver.

Rewrote both versions of createMarkup to build based on
Vector<UChar> instead of String. Also other miscellaneous
speedups (mainly content strings are now encoded in a way that
doesn't take a function call per character, and switch is avoided).

This also causes a functional change - we no longer escape '>' since this was unnecessary and it's faster
to avoid testing for it. See updated test results.

  • editing/markup.cpp: (WebCore::appendString): (WebCore::appendAttributeValue): (WebCore::escapeContentText): (WebCore::appendEscapedContent): (WebCore::appendDeprecatedString): (WebCore::appendQuotedURLAttributeValue): (WebCore::stringValueForRange): (WebCore::ucharRange): (WebCore::appendUCharRange): (WebCore::appendNamespace): (WebCore::appendStartMarkup): (WebCore::getStartMarkup): (WebCore::appendEndMarkup): (WebCore::getEndMarkup): (WebCore::appendMarkup): (WebCore::joinMarkups): (WebCore::createMarkup):
  • editing/markup.h:
  • page/mac/WebCoreFrameBridge.mm: (-[WebCoreFrameBridge markupStringFromNode:nodes:]): (-[WebCoreFrameBridge markupStringFromRange:nodes:]):

LayoutTests:

Reviewed by Oliver.

We no longer entity-escape the '>' character in content or attribute values since this is unnecessary.

  • fast/dom/dom-parse-serialize-expected.txt:
  • fast/dom/serialize-attribute.xhtml:
  • fast/xsl/xslt-processor-expected.txt:
07:40 Changeset [26473] by oliver

Reviewed by Mark.

  • kjs/CommonIdentifiers.h:
  • kjs/regexp_object.cpp: (RegExpProtoFunc::callAsFunction): (RegExpObjectImp::arrayOfMatches): (RegExpObjectImp::construct):
07:38 Changeset [26472] by oliver

Reviewed by Mark.

  • kjs/lookup.h:
07:37 Changeset [26471] by oliver

Updated last ChangeLog entry to indicate speedup:

(65% speedup on Celtic Kane JS 2007 DOM test)

07:35 Changeset [26470] by oliver

Reviewed by Eric.

  • editing/markup.cpp: (WebCore::createMarkup): The Node version of this function currently never uses the render tree, so don't bother to update layout. This is the version used for innerHTML.
07:34 Changeset [26469] by oliver

2007-10-02 Nicholas Shanks <webkit@nickshanks.com>

Reviewed by eseidel & hyatt.

Add support for CSS3 values 'start' and 'end' to text-align property.

  • css/cssparser.cpp: (WebCore::CSSParser::parseValue): allow start and end values
  • css/cssstyleselector.cpp: (WebCore::CSSStyleSelector::applyProperty): handle start and end values
07:32 Changeset [26468] by oliver

2007-10-02 Eric Seidel <eric@webkit.org>

Rubber-stamped by Maciej.

Updating test results after feature-branch rebase for tests whose new results are more correct.
Also adding a few missing pixel test results.

  • fast/dom/attribute-case-sensitivity-expected.txt:
  • fast/dom/attribute-case-sensitivity2-expected.txt:
  • fast/layers/scroll-rect-to-visible-expected.png:
  • fast/text/international/bidi-neutral-run-expected.png:
  • platform/mac/editing/pasteboard/5478250-expected.checksum: Added.
  • platform/mac/editing/pasteboard/5478250-expected.png: Added.
  • svg/W3C-SVG-1.1/pservers-grad-08-b-expected.png:
  • svg/W3C-SVG-1.1/pservers-grad-11-b-expected.png:
  • svg/W3C-SVG-1.1/struct-use-01-t-expected.png:
  • svg/W3C-SVG-1.1/text-deco-01-b-expected.png:
  • svg/W3C-SVG-1.1/text-text-03-b-expected.png:
  • svg/batik/text/textEffect-expected.png:
  • svg/batik/text/textEffect3-expected.png:
  • svg/custom/js-late-gradient-and-object-creation-expected.png:
  • svg/custom/use-infinite-recursion-expected.checksum: Added.
  • svg/custom/use-infinite-recursion-expected.png: Added.
07:31 Changeset [26467] by oliver

Correcting expected layout test results

RS = Eric

  • fast/dom/Window/window-properties-expected.txt:
  • fast/images/svg-as-image-expected.txt:
07:29 Changeset [26466] by oliver

Roll out previous change as made layout-test-results unusable with large tables

07:27 Changeset [26465] by oliver

2007-10-02 Eric Seidel <eric@webkit.org>

Reviewed by Sam Wenig.

Make layout results table sortable (using sorttable.js)

  • Scripts/resources: Added.
  • Scripts/resources/sorttable.js: Added.
  • Scripts/run-webkit-tests:
07:26 Changeset [26464] by oliver

2007-10-02 Eric Seidel <eric@webkit.org>

Reviewed by Adam Roben.

Make pixel tests more useful!
Finally fix the image diff 0.00% mystery problem
Highlight any image differences in the image diff.
Add a link from image diffs back to original test file.

  • DumpRenderTree/mac/ImageDiff.m: (compareImages): highlight any differences (computePercentageDifferent): round to two decimal places
  • Scripts/run-webkit-tests: add a few more toURL calls for the windows folks
07:24 Changeset [26463] by oliver

2007-10-02 Eric Seidel <eric@webkit.org>

Reviewed by Alexey Proskuryakov.

  • Scripts/run-webkit-tests: print the % image difference on main results page
07:23 Changeset [26462] by oliver

2007-10-02 Mark Rowe <mrowe@apple.com>

Reviewed by Oliver.

Update WebKitLauncher to notify you of new builds from the correct branch, rather than always checking trunk.

  • BuildSlaveSupport/build-launcher-app: Generate a file named BRANCH into WebKit.app so that it knows which branch it was built from.
  • WebKitLauncher/start.html: Use the new URL format that includes the branch we were built from.
07:21 Changeset [26461] by oliver

2007-10-01 Eric Seidel <eric@webkit.org>

Reviewed by Oliver Hunt.

SVG Subresources will not be saved when creating WebArchives
http://bugs.webkit.org/show_bug.cgi?id=15280

Implement _subresourceURLs methods for more SVGElement types
more such methods will be needed as we add support for other
external references (such as use, mpath, tref, etc.)

  • DOM/WebDOMOperations.mm: (-[DOMSVGScriptElement _subresourceURLs]): added. (-[DOMSVGCursorElement _subresourceURLs]): added. (-[DOMSVGFEImageElement _subresourceURLs]): added.
07:19 Changeset [26460] by oliver

2007-10-01 Eric Seidel <eric@webkit.org>

Reviewed by Oliver Hunt.

WebArchives do not embed stylesheets referenced by xml-stylesheeet
http://bugs.webkit.org/show_bug.cgi?id=15320

  • DOM/WebDOMOperations.mm: (-[DOMProcessingInstruction _stylesheetURL]): needed to access [[self sheet] href] (-[DOMProcessingInstruction _subresourceURLs]): call and return _stylesheetURL
07:18 Changeset [26459] by oliver

2007-10-01 Eric Seidel <eric@webkit.org>

Reviewed by Oliver Hunt.

This only affects Debug builds, and the ability to save SVGs as WebArchives
neither are testable via DumpRenderTree.

  • Configurations/WebCore.xcconfig: change where Xcode looks for WebCore.exp
  • DerivedSources.make: adds SVG symbols to WebCore.exp when necessary
  • WebCore.SVG.exp: Added.
  • WebCore.exp: moved to WebCore.base.exp
  • WebCore.xcodeproj/project.pbxproj: updated to reflect moved files
  • bindings/objc/DOMSVGExecption.h: moved to DOMSVGException.h
07:16 Changeset [26458] by oliver

2007-10-01 Mark Rowe <mrowe@apple.com>

  • BuildSlaveSupport/build-launcher-dmg: Tweak once more to handle nightly builds for branches.
07:14 Changeset [26457] by oliver

Enable Experimental SVG features by default when building from Xcode

Reviewed by Mark

  • Configurations/JavaScriptCore.xcconfig:
  • Configurations/WebCore.xcconfig:
  • Configurations/WebKit.xcconfig:
07:13 Changeset [26456] by oliver

2007-10-01 Eric Seidel <eric@webkit.org>

Reviewed by olliej.

Make feature-branch build again with ENABLE_SVG_EXPERIMENTAL_FEATURES
Needed a double -> float change to make the new filter types build.

Build fix, no test cases.

  • ksvg2/svg/SVGComponentTransferFunctionElement.cpp:
  • ksvg2/svg/SVGComponentTransferFunctionElement.h:
  • ksvg2/svg/SVGFECompositeElement.cpp:
  • ksvg2/svg/SVGFECompositeElement.h:
  • ksvg2/svg/SVGFEDiffuseLightingElement.cpp:
  • ksvg2/svg/SVGFEDiffuseLightingElement.h:
  • ksvg2/svg/SVGFEDisplacementMapElement.cpp:
  • ksvg2/svg/SVGFEDisplacementMapElement.h:
  • ksvg2/svg/SVGFEGaussianBlurElement.cpp:
  • ksvg2/svg/SVGFEGaussianBlurElement.h:
  • ksvg2/svg/SVGFELightElement.cpp:
  • ksvg2/svg/SVGFELightElement.h:
  • ksvg2/svg/SVGFEOffsetElement.cpp:
  • ksvg2/svg/SVGFEOffsetElement.h:
  • ksvg2/svg/SVGFESpecularLightingElement.cpp:
  • ksvg2/svg/SVGFESpecularLightingElement.h:
  • ksvg2/svg/SVGFETurbulenceElement.cpp:
  • ksvg2/svg/SVGFETurbulenceElement.h:
07:11 Changeset [26455] by oliver

2007-09-30 Julien <julien.chaffraix@gmail.com>

Reviewed by aroben & eseidel.

fix http://bugs.webkit.org/show_bug.cgi?id=14898

getAllResponseHeaders() separates each header with a CR LF according to the specification

Test: http/tests/xmlhttprequest/xmlhttprequest-crlf-getAllResponseHeader.html

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequest::getAllResponseHeaders):
07:09 Changeset [26454] by oliver

Reviewed by Adam.

http://bugs.webkit.org/show_bug.cgi?id=13472
Misparsing date in javascript leads to year value of -1
http://bugs.webkit.org/show_bug.cgi?id=14176
Some date values not handled consistently with IE/Firefox

Allow an optional comma between month and year, and year and time.

07:07 Changeset [26453] by oliver

2007-09-28 Eric Seidel <eric@webkit.org>

Reviewed by Sam Wenig.

ASSERT when dragging <svg:image> with non-null prefix
http://bugs.webkit.org/show_bug.cgi?id=15308

  • bindings/objc/DOM.mm: (WebCore::lookupElementClass): added (WebCore::elementClass): use new lookupElementClass function
07:06 Changeset [26452] by oliver

2007-09-25 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

I managed to break the SVG build when fixing the --no-svg build for
http://bugs.webkit.org/show_bug.cgi?id=15281
This adds the appropriate DOMSVG headers to the copy headers phase
(in fixing the no-svg build I mistakenly re-marked them project-only)

  • WebCore.xcodeproj/project.pbxproj:
07:04 Changeset [26451] by oliver

2007-09-25 Eric Seidel <eric@webkit.org>

Reviewed by Mark Rowe.

DerivedSources.make was finding "ENABLE_SVG" in the string
"ENABLE_SVG_EXPERIMENTAL_FEATURES" thus --no-svg wasn't functioning
quite correctly.

  • Scripts/build-webkit: make --no-svg imply --no-svg-experimental
07:02 Changeset [26450] by oliver

2007-09-25 Eric Seidel <eric@webkit.org>

Reviewed by Rob Bius.

Already tested by SVG/W3C-SVG-1.1/linking-a-07-t.svg

  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::defaultEventHandler): properly pass along target values

Correct the spelling of Rob's name

07:00 Changeset [26449] by oliver

2007-09-25 Mark Rowe <mrowe@apple.com>

Rubber-stamped by Eric.

  • BuildSlaveSupport/build-launcher-dmg: Allow the platform tag to be specified on the command line. This makes it possible to automate nightly builds for the feature-branch.
06:58 Changeset [26448] by oliver

Reviewed by Oliver.

Rework <pattern> support to take overflow & viewBox into account.
Also fix all possible combinations of patternUnits/patternContentUnits, tested by several batik testcases.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=12221 (Webkit ToT fails to render this pattern example)

Reviewed by NOBODY (Build fix).

  • platform/graphics/svg/cg/SVGPaintServerGradientCg.cpp: (WebCore::SVGPaintServerGradient::teardown): (WebCore::SVGPaintServerGradient::renderPath):
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback):
06:57 Changeset [26447] by oliver

Reviewed by Oliver.
Fix <mask> in userSpaceOnUse coordinates. Verified by new testcase taken from Batik.

Reviewed by Anders.

Fix paths to css style sheets in the last added files. Enable smallFonts.svg as it doesn't crash anymore.
Fix paths to external <use> element reference, to make Batik happy. (We don't support it, yet.)

06:55 Changeset [26446] by oliver

Reviewed by Oliver.

Rewrite text painting code path, to be based on "text chunks" instead of using the InlineBox* hierarchy.
This allows us to reuse paint servers as long as possible - and to actually paint in the way didacted by the spec.

This also implements advanced SVG text decorations (ie. stroked/filled decos with gradient/pattern).
Fixes: http://bugs.webkit.org/show_bug.cgi?id=7200 (Gradient appears and disappears in SVG when text is off screen)

Fixes paint server usage on text paths. (ie. styled text paths, with gradients/filters).

(Oops, forgot to commit WebCore/ changes!)
Reviewed by Oliver.

Rewrite text painting code path, to be based on "text chunks" instead of using the InlineBox* hierarchy.
This allows us to reuse paint servers as long as possible - and to actually paint in the way didacted by the spec.

This also implements advanced SVG text decorations (ie. stroked/filled decos with gradient/pattern).
Fixes: http://bugs.webkit.org/show_bug.cgi?id=7200 (Gradient appears and disappears in SVG when text is off screen)

Fixes paint server usage on text paths. (ie. styled text paths, with gradients/filters).

06:53 Changeset [26445] by oliver

Reviewed by Mitz.

Expose unitsPerEm() in Font classes.
This is needed to implement SVG's advanced text decorations. We won't draw lines for text-decorations
but fillable & strokable rectangles with a certain height, computed through unitsPerEm & font size.

06:51 Changeset [26444] by oliver

Reviewed by NOBODY (Build fix).

Initialise iterators to appease gcc

  • rendering/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::closestCharacterToPosition):
06:49 Changeset [26443] by oliver

Reviewed by Sam.

http://bugs.webkit.org/show_bug.cgi?id=12059
SVG colors have two separate parsing paths (one CSS and one SVGColor::setRGBColor)

Reuse the css parser as much as possible in setRGBColor.

Rubberstamped by Mark.
Add missing SVG filter testcase (forgot to include in last commit).

06:47 Changeset [26442] by oliver

Reviewed by Oliver.

Large SVG filter rework. Bring it back in a useable state.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=5527 (Filters need subregion support)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=5579 (WebKit+SVG renders full-filters-example incorrectly)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=5976 (filterUnits="userSpaceOnUse" is broken (breaking feTile test case))
Fixes: http://bugs.webkit.org/show_bug.cgi?id=12064 (Need function for manual style-resolution for things like gradient stops)

filters-blend-01-b.svg & filters-example-01-b.svg & filters-displace-01-b.svg & filters-diffuse-01-f.svg are fixed now.

In detail:

  • flood-color & flood-opacity have been incorrectly resolved on the <feBlend> parent element!
  • sizing of filter region was truncated in some cases, as the bbox was used to resolve the needed filter region instead of the filter rect
  • add subregion support to all filter primitives (primitiveUnits & filterUnits handled in all cases)
  • WKDisplacmentMap.cikernel incorrectly flipped the y-axis.
  • Correctly specify default values for all filter primitives in ksvg2/svg!
  • Initialize all variables of the SVGFE* classes in platform/graphics/svg/filters.
  • Fix 'flood-color' initial value (was set to the _stop_ color initial value)

-> both initial values were pointing to 'black' though, so it was no visible problem.

  • Parse 'lighting-color' css property, no more hacking in SVGFEDiffuseLighting.

-> Correct it's initial from black to white value fixes SVG lighting filters!

  • Add diffuseConstant support to feDiffuseLighting filter.
  • Centralize manual style resolution (needed for stop-color, flood-color & flood-opacity, lighting-color)
06:45 Changeset [26441] by oliver

Reviewed by Nikolas.

http://bugs.webkit.org/show_bug.cgi?id=14924
rotated rect with pattern draws incorrectly

Use the bounding box before transformation.

06:43 Changeset [26440] by oliver

Reviewed by Nikolas.

http://bugs.webkit.org/show_bug.cgi?id=14926
WebKit has 'em' length handling problems related to CSS properties

Parse the properties in inline style attributes non-strict for SVG.

06:41 Changeset [26439] by oliver

Reviewed by Oliver.

http://bugs.webkit.org/show_bug.cgi?id=14927
use element in SVG does not render after parent is displayed off and on

Also detach the shadow tree when detaching the <use>.

06:39 Changeset [26438] by oliver

Fixes: http://bugs.webkit.org/show_bug.cgi?id=14153

Final, long-awaited RenderSVGContainer split. Make RenderSVGContainer really a simple
container without special cases for inner <svg> elements or <marker>. Create a new
RenderSVGViewportContainer class handling these cases now.

06:37 Changeset [26437] by oliver

Reviewed by Oliver & Rob.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=12501 (SVG Text fails to respect opacity, fill-opacity and stroke-opacity)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=14045 (Incorrect support for opacity, fill-opacity and stroke-opacity)

Based on an older patch from Rob, this fixes SVG text opacity as well as group opacity for solid fills & gradients.
The pattern changes are still missing a testcase (need to wait for Antoine Quint for that).

06:34 Changeset [26436] by oliver

Reviewed by Nikolas.

http://bugs.webkit.org/show_bug.cgi?id=11909
Regression: large SVG from Illustrator comes out blank

Fix last issue with the Illustrator file by making relativeBBox
calculation take into account viewBox.

06:32 Changeset [26435] by oliver

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=14896 (SVG InlineText/Flow box sizes don't take rotated glyphs into account)

Introduce new helper function calculateGlyphBoundaries, which takes into account any per-character transformation.
This fixes box size calculations in svg/W3C-SVG-1.1/text-text-07-t.svg, svg/batik/text/textEffect3.svg (rotated glyphs)
-> These strings can be properly selected now, just as well as text path elements.

06:30 Changeset [26434] by oliver

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=13909 (SVG text selection doesn't work with RTL text)

Use drawHighlightForText() to draw the selection, instead of my home-brewn solution.
Affected code in SVGRootInlineBox::paintSelectionForTextBox. Removed not anymore needed
helper function cummulatedWidthOfSelectionRange.

Dump all contained InlineTextBox(es) in SVGRenderTreeAsText, take into account multiple
child text boxes in ie. a RenderSVGInlineText objects (which happens for RTL text and
LTR text cases where newlines were involved - see changed testcase results.)
This affects a lot of LTR tests which actually had more than one child text box, that
wasn't taken properly into account before (in terms of selection, not rendering.)

Fix selection for RTL text by taking box start offsets into account in closestCharacterToPosition()
and by offering RTL text selection special cases in svgCharacterHitsPosition().

Centralized the creation of a TextStyle object for text selection/painting in a new helper function
svgTextStyleForInlineTextBox. Add new helper functions calculateGlyphWidth/calculateGlyphHeight to
centralize these calculations -> use these new helpers everywhere to avoid code duplication.

A single fix in bidi.cpp was needed to fix SVG's unicode-bidi/direction handling, to fix text-intro-02-b.svg.
SVG didacts that the 'direction' attribute is ignored if unicode-bidi is set to 'normal' (default).
Discussed with Mitz.

06:28 Changeset [26433] by oliver

Reviewed by Oliver.

Do not export some symbols for internal functions, saves some bytes.

06:25 Changeset [26432] by oliver

Reviewed by Oliver & Rob.

Enable SVG textPath selection. Actually build chunks for them instead of
ignoring them - was easier than I thought. Respect per-character transformation
when calculating the chunk boundaries for the selection rectangles. Also fixes
selection rect drawing of rotated characters.

Next thing todo is to unify the glyph size calculations, as per-glyph transformations
are not respected when calculating flow box sizes in SVGRootInlineBox.

06:23 Changeset [26431] by oliver

Reviewed by Nikolas.

http://bugs.webkit.org/show_bug.cgi?id=14312
Removing an attribute has no effect on SVG

Update the transform matrix also when transform attribute is empty.

06:21 Changeset [26430] by oliver

Reviewed by Oliver.

Unify absoluteRects() of RenderSVGTSpan & RenderSVGTextPath.
The RenderSVGTextPath one was still using the old, wrong concept.

06:18 Changeset [26429] by oliver

Reviewed by Sam.

Let <textPath> be recognized within the ObjC bindings.
Forgot to add that months ago.

06:16 Changeset [26428] by oliver

Reviewed by Oliver.
Fix all known bugs regarding to SVG text selection, when embedded in XHTML.
Also fix inspecting <text> elements when embedded in XHTML. (WebInspector)

06:13 Changeset [26427] by oliver

Reviewed by Nikolas.

http://bugs.webkit.org/show_bug.cgi?id=5996
SVG <view> is unimplemented

Implement <view> and refactor the code in the svg renderer container classes.

Build fix. Not reviewed.
Rob forgot to land the changes to SVGResourceMarker in his last commit.

06:11 Changeset [26426] by oliver

Reviewed by Rob.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=13611 (Crash in setAttributeNS setting href of SVG <use> to nonexistent symbol)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=14631 (<use> doesn't deep-expand <symbol> elements.)

Rework <use> on <foreignObject> cases, to not just ignore these cases, but actually proceed and skip <fO> objects
from the resulting cloned tree. This fixes parts of "treasure_map.svg" (no bug report availabe on that one, private "testcase").

Fix assertion happening with <use> on <g> containing <symbol>. Introduce expandSymbolElementsInShadowTree()
concept, just like it's done for <use> on <use>, to deep-replace all <symbol> elements by <svg>, as demanded
by the spec. This only worked on <use> on <symbol> direct cases so far.

06:08 Changeset [26425] by oliver

Reviewed by Rob.

Fix invisible-text-after-scrolling.xhtml regression. Scroll offset not
taken into account properly. Also fix RenderSVGInlineText::selectionRect(),
so that SVG text can be selected, when being embedded in XHTML.

06:06 Changeset [26424] by oliver

Fixes: http://bugs.webkit.org/show_bug.cgi?id=5940 (<svg> inside <body> incorrectly extends over top/bottom borders)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=14145 (RenderSVGContainer should not inherit from RenderContainer)

Make RenderSVGContainer inherit from RenderObject directly, instead of RenderContainer.
Itdoes a lot of things that we don't need for SVG, and by removing this inheritance
we can finally fix the differences about SVG object positioning, as we don't need
parent translation (tx/ty). Fixes SVG text rendering within XHTML.

Fix requireLayer() function on RenderSVGRoot, as it can actually be a layer now.
This change is based on Rob's patch at 5940 - fixing z-order indexing.

Change RenderSVGRoot renderName() and update all layout tests, because of this change.

Fix absoluteRects() function for RenderSVGInlineText & RenderSVGTSpan.
Checked extensively using WebInspector, to assure all rects are correctly displayed.

Testcases fixed: junk-data.svg, missing-xlink.svg hixie/013.xml (all regressions!)
(junk-data.svg & missing-xlink.svg previously relied on SVG text painting out of <svg> overflow rect.

Fix these testcases, as within this new RenderSVGContainer concept, that bug is now fixed, and breaks them)

Testcases added: custom/absolute-sized-svg-in-xhtml.xhtml, custom/inline-svg-in-xhtml.xml (Mozilla XTech demo)

06:03 Changeset [26423] by oliver

Reviewed by Mark.

Forwardport the hash table fix from CodeGeneratorJS.pm to create_hash_table.
Reran run-jsc-tests, couldn't find any regressions. Suggested by Darin.

06:01 Changeset [26422] by oliver

Rubber stamped by Mark.

WebKitTools:
Enable svg experimental features as default here in feature-branch.

LayoutTests:
Land new test results with experimental features on by default.
Files showing regressions have NOT been updated, of course.

05:58 Changeset [26421] by oliver

WebCore:
Reviewed by Sam.

Remove all "SVGElement* m_context" parameters spread over SVG primitives
(like SVGAngle, SVGPreserveAspectRatio, SVGTransformList, ...)

This is all handled by the JS generation in the bindings now, leading
to a faster static rendering codepaths, and easier handling of the dynamic
parts like JS scripting. Remove the mystified genericContext() concept alltogether.

Add bug number reference missing in the last ChangeLog entry.

LayoutTests:
Reviewed by Sam.
Check in correct results, now that the hashing bug is fixed here as well.

Conflicts:

WebCore/bindings/scripts/CodeGeneratorJS.pm
WebCore/ksvg2/svg/SVGPathSegList.cpp
WebCore/ksvg2/svg/SVGPathSegList.h

05:55 Changeset [26420] by oliver

Reviewed by Sam.

Recognizee <textPath> in SVG JS bindings.
Add JSSVGTextPathElement to JSSVGElementWrapperFactory.

Add SVGException.idl just for the JS generation.
Turn on all SVG JS constructors and add them to DOMWindow.idl.

Testcase added: LayoutTests/svg/custom/js-svg-constructors.svg

Forgot to commit the ChangeLog and two files in my last commit!

05:53 Changeset [26419] by oliver

Correcting the pixel test result that was supposed to go in during r23849.

05:50 Changeset [26418] by oliver

Add VIDEO build flag

05:47 Changeset [26417] by oliver

Reviewed by Maciej.

Use intHash to hash floats and doubles too.

  • ChangeLog:
  • wtf/HashFunctions.h: (WTF::FloatHash::hash): (WTF::FloatHash::equal): (WTF::):
  • wtf/HashTraits.h: (WTF::FloatHashTraits::emptyValue): (WTF::FloatHashTraits::deletedValue): (WTF::):
05:45 Changeset [26416] by oliver

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=14241
SVG <image> with height or width less than 1 fails to render image

Keep extra member vars to get width/height as floats for accurate
calculations.

05:42 Changeset [26415] by oliver

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=9976
Fix negative width issue in Hixie's test

Refuse to render zero or negative width/height.

05:39 Changeset [26414] by oliver

Reviewed by Maciej.

http://bugs.webkit.org/show_bug.cgi?id=12062
WebCore does not handle CSS-specified fill fallback correctly

Implement fallback for fill and stroke.

05:37 Changeset [26413] by oliver

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=14157
Rotated shape has wrong gradient rendering

Use the untransformed bbox in objectBoundingBoxMode. Also
don't do objectBoundingBoxMode should the bbox width ort height
be zero.

05:34 Changeset [26412] by oliver

Reviewed by Eric & Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=14198

Reeanble <foreignObject>. Explicitely disallow <use> on <foreignObject>
as it may lead to bad problems.

While I'm at it disallow <use> on any non-svg element.

Not reviewed.
Forgot to commit new layout tests results, now that <foreignObject> is enabled again.

05:31 Changeset [26411] by oliver

Reviewed by Oliver.

http://bugs.webkit.org/show_bug.cgi?id=14144
All tx/ty (parentX/parentY) usage should be removed from SVG renders
http://bugs.webkit.org/show_bug.cgi?id=13981
<br> prevents click handler from firing

Fix the hit testing issues by making RenderSVGRoot take its m_x, m_y
into account in the absolute transform.

05:28 Changeset [26410] by oliver

Reviewed by Eric.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=14015 (SVGTransformList::initialize() has no effect)

Fix SVGTransformList usage in SVG DOM exposed to JS.
This also fixes SVG space invaders including most repainting issues. (still some unrelated ones left)

This is basically the _same_ fix applied to SVGPointList some months ago. We just forgot
to add JSSVGTransformListCustom when switching from SVGTransform* -> SVGTransform (POD type).

05:25 Changeset [26409] by oliver

Reviewed by Eric.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=14155

JSSVGMatrix was not working properly.
"matrix.translate(10, 10)" actually altered 'matrix' instead of returning a
new SVGMatrix object, as described in SVG 1.1 specification.

05:22 Changeset [26408] by oliver

2007-06-15 Eric Seidel <eric@webkit.org>

Reviewed by Niko.

Fix the release build.

  • rendering/SVGRootInlineBox.cpp: (WebCore::applyTextAnchorToTextChunk):
05:19 Changeset [26407] by oliver

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=14051
<svg:image> fails to position correctly when <svg> is inside an inline <div>

Leave parent translation to the containers.

05:16 Changeset [26406] by oliver

Reviewed by Eric.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=13963

Fix SVG space invaders. It actually highlighted a bad problem with our JSSVGPODTypeWrapper's.
Introduce a new "2nd-level cache" for all readwrite POD properties. Subsequent calls to ie.
myRect.x.baseVal.value don't create a new wrapper everytime, but are properly cached now.
This leads to a massive reduction in created wrappers.

05:05 Changeset [26405] by oliver

2007-06-14 Eric Seidel <eric@webkit.org>

Reviewed by Niko.

Text gradients are broken on feature branch
http://bugs.webkit.org/show_bug.cgi?id=14142

  • rendering/SVGRenderSupport.cpp: (WebCore::prepareToRenderSVGContent):
  • rendering/SVGRootInlineBox.cpp: (WebCore::prepareTextRendering): (WebCore::SVGRootInlineBox::paint): (WebCore::SVGRootInlineBox::paintInlineBoxes): (WebCore::SVGRootInlineBox::paintChildInlineTextBox): (WebCore::SVGRootInlineBox::paintChildInlineFlowBox):
  • rendering/SVGRootInlineBox.h:
05:02 Changeset [26404] by oliver

Reviewed by Sam.
Fixes: http://bugs.webkit.org/show_bug.cgi?id=11273

Implement pixelUnitToMillimeterX(), pixelUnitToMillimeterY() in SVGSVGElement.
Use cssPixelsPerInch, just like done in CSSPrimitiveValue & SVGLength.

04:59 Changeset [26403] by oliver

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=9752
%-sizing of elements with a html parent is broken

Calculate width/height for length percentages when embedded in xhtml.

04:56 Changeset [26402] by oliver

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=12207
RenderSVGContainer should be split into multiple classes
http://bugs.webkit.org/show_bug.cgi?id=14125
KCanvasRenderingStyle should be removed

Introduce the RenderSVGRoot class and kill the KCanvas enums.

Build fix.

04:52 Changeset [26401] by oliver

Reviewed by Eric.
Fix regression: SVG images drawn in the wrong paint phase.

04:49 Changeset [26400] by oliver

Reviewed by weinig.

http://bugs.webkit.org/show_bug.cgi?id=14064
fill property is reported as type SVGColor

Do the checks in the right order.

Change merged into WebCore/bindings/js/JSCSSValueCustom.cpp

04:45 Changeset [26399] by oliver

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=12122
SVGPathElement should not inherit from SVGPathParser

Use path builders for building Path and PathSegLists.

04:42 Changeset [26398] by oliver

2007-06-06 Eric Seidel <eric@webkit.org>

Reviewed by olliej.

Add support for tabbing between links in an SVG file
Also add support for drawing a focus ring around focused svg content.
http://bugs.webkit.org/show_bug.cgi?id=8823

Layout test is blocked by http://bugs.webkit.org/show_bug.cgi?id=14027

  • css/svg.css:
  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::defaultEventHandler): (WebCore::SVGAElement::supportsFocus): (WebCore::SVGAElement::isFocusable): (WebCore::SVGAElement::isMouseFocusable): (WebCore::SVGAElement::isKeyboardFocusable):
  • ksvg2/svg/SVGAElement.h:
04:39 Changeset [26397] by oliver

2007-06-06 Eric Seidel <eric@webkit.org>

Reviewed by olliej.

Make SVG (mostly) support CSS outline property (and thus focus rings)
http://bugs.webkit.org/show_bug.cgi?id=10849

Test: svg/custom/focus-ring.svg

  • rendering/RenderPath.cpp: (WebCore::RenderPath::paint): (WebCore::RenderPath::addFocusRingRects):
  • rendering/RenderPath.h:
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::paint): (WebCore::RenderSVGContainer::addFocusRingRects):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint): (WebCore::RenderSVGImage::addFocusRingRects):
  • rendering/RenderSVGImage.h:
04:36 Changeset [26396] by oliver

2007-06-06 Eric Seidel <eric@webkit.org>

Reviewed by weinig.

Break out common SVG rendering logic into prepareToRenderSVGContent in SVGRenderSupport

No test cases should be changed by this.

  • WebCore.xcodeproj/project.pbxproj:
  • rendering/RenderPath.cpp: (WebCore::fillAndStrokePath): (WebCore::RenderPath::paint):
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::RenderSVGContainer): (WebCore::RenderSVGContainer::requiresLayer): (WebCore::RenderSVGContainer::isOutermostSVG): (WebCore::RenderSVGContainer::layout): (WebCore::RenderSVGContainer::applyContentTransforms): (WebCore::RenderSVGContainer::paint): (WebCore::RenderSVGContainer::viewportTransform): (WebCore::RenderSVGContainer::absoluteTransform):
  • rendering/RenderSVGContainer.h:
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint): (WebCore::RenderSVGImage::translationForAttributes):
  • rendering/SVGRenderSupport.cpp: Added. (WebCore::prepareToRenderSVGContent):
  • rendering/SVGRenderSupport.h: Added.
  • rendering/SVGRootInlineBox.cpp: (WebCore::prepareTextRendering): (WebCore::SVGRootInlineBox::paint): (WebCore::SVGRootInlineBox::paintInlineBoxes):
04:32 Changeset [26395] by oliver

Reviewed by Eric.

http://bugs.webkit.org/show_bug.cgi?id=13976
getPresentationAttribute not implemented

Implement getPresentationAttribute.

04:29 Changeset [26394] by oliver

2007-06-06 Rob Buis <buis@kde.org>

Reviewed by olliej and eric.

http://bugs.webkit.org/show_bug.cgi?id=12430
SVG has two transform parsers when it should have one.

Refactor SVGTransformable parser so SVGAnimateTransformElement can reuse it better.

  • ksvg2/svg/SVGAnimateTransformElement.cpp: (WebCore::SVGAnimateTransformElement::calculateFromAndToValues):
  • ksvg2/svg/SVGAnimateTransformElement.h:
  • ksvg2/svg/SVGTransformable.cpp: (WebCore::): (WebCore::SVGTransformable::parseTransformValue): (WebCore::SVGTransformable::parseTransformAttribute):
  • ksvg2/svg/SVGTransformable.h:
04:26 Changeset [26393] by oliver

2007-06-01 Eric Seidel <eric@webkit.org>

Reviewed by olliej.

Add support for maskUnits and maskContentUnits
http://bugs.webkit.org/show_bug.cgi?id=12568

This is covered by the W3C tests (including mask-intro01)

  • ksvg2/svg/SVGMaskElement.cpp: (WebCore::SVGMaskElement::SVGMaskElement): (WebCore::SVGMaskElement::parseMappedAttribute): (WebCore::SVGMaskElement::drawMaskerContent): (WebCore::SVGMaskElement::canvasResource): (WebCore::SVGMaskElement::notifyAttributeChange):
  • ksvg2/svg/SVGMaskElement.h:
  • ksvg2/svg/SVGMaskElement.idl:
  • platform/graphics/svg/SVGResourceMasker.cpp: (WebCore::SVGResourceMasker::SVGResourceMasker): (WebCore::SVGResourceMasker::invalidate):
  • platform/graphics/svg/SVGResourceMasker.h:
  • platform/graphics/svg/cg/SVGResourceMaskerCg.mm: (WebCore::SVGResourceMasker::applyMask):

2007-06-05 Eric Seidel <eric@webkit.org>

Reviewed by olliej.

Commit files missing from previous commit, oops!

  • platform/graphics/svg/SVGResourceMasker.cpp: (WebCore::SVGResourceMasker::SVGResourceMasker): (WebCore::SVGResourceMasker::invalidate):
  • platform/graphics/svg/SVGResourceMasker.h:
  • platform/graphics/svg/cg/SVGResourceMaskerCg.mm: (WebCore::SVGResourceMasker::applyMask):
04:23 Changeset [26392] by oliver

2007-06-01 Eric Seidel <eric@webkit.org>

Reviewed by lars.

Cursor does not change to hand over links containing <use>
http://bugs.webkit.org/show_bug.cgi?id=12630

Test: manual-tests/svg-link-hover-use.svg

  • manual-tests/svg-link-hover-use.svg: Added.
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::hitTest): use eventParentNode instead of parentNode
04:19 Changeset [26391] by oliver

2007-06-01 Eric Seidel <eric@webkit.org>

Reviewed by olliej.

SVG is not correctly respecting scroll during hit testing
http://bugs.webkit.org/show_bug.cgi?id=13083

Test: svg/custom/scroll-hit-test.svg

  • rendering/RenderPath.cpp: (WebCore::RenderPath::nodeAtPoint):
  • rendering/RenderSVGContainer.cpp: (WebCore::RenderSVGContainer::nodeAtPoint):
04:16 Changeset [26390] by oliver

2007-06-01 Eric Seidel <eric@webkit.org>

Reviewed by hyatt.

Fix for: http://bugs.webkit.org/show_bug.cgi?id=12187

Tests: fast/dom/attribute-case-sensitivity.html, fast/dom/attribute-case-sensitivity2.xhtml

  • dom/Element.cpp: (WebCore::shouldIgnoreAttributeCase): check to make sure element is an HTMLElement (WebCore::Element::getAttribute): (WebCore::Element::setAttribute): (WebCore::Element::removeAttribute): (WebCore::Element::getAttributeNode): (WebCore::Element::hasAttribute):
  • dom/NamedAttrMap.cpp: (WebCore::shouldIgnoreAttributeCase): (WebCore::NamedAttrMap::getNamedItem): (WebCore::NamedAttrMap::removeNamedItem):
04:13 Changeset [26389] by oliver

2007-05-31 Eric Seidel <eric@webkit.org>

Reviewed by Niko.

Links are activated based on mouse down events instead of click events
http://bugs.webkit.org/show_bug.cgi?id=12570

Test: svg/custom/prevent-default.svg

  • html/HTMLAnchorElement.cpp: use MiddleButton and RightButton instead of 1 and 2 (WebCore::HTMLAnchorElement::defaultEventHandler):
  • ksvg2/svg/SVGAElement.cpp: (WebCore::SVGAElement::defaultEventHandler): make it function more like the HTML side
04:09 Changeset [26388] by oliver

Reviewed by Darin.

http://bugs.webkit.org/show_bug.cgi?id=11272
Implement currentScale(), setCurrentScale() and currentTranslate() in SVGSVGElement

Allow zooming and panning, thereby implementing the above methods.

04:09 BuildingQtOnWindows edited by hausmann@webkit.org
(diff)
03:57 Changeset [26387] by oliver

Reviewed by Oliver.
Fix regression: gradient on fill of text works again!

03:53 Changeset [26386] by oliver

Reviewed by Oliver.

Fix "jumpy" selection by correcting the way svgCharacterHitsPosition works.
I basically mixed up the "closest character to position" logic.

03:50 Changeset [26385] by oliver

Reviewed by Oliver.

Add new code path dumping SVG text engine specific layout test results.
Finally the dumped results are actually accurate and respond to the
rendered glyphs. This has never been correct so far.

03:47 Changeset [26384] by oliver

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=12698 (SVG text needs a special per-character layout mode.)
Finally land the new SVG text engine.

03:40 Changeset [26383] by oliver

2007-05-10 Eric Seidel <eric@webkit.org>

Reviewed by olliej.

http://bugs.webkit.org/show_bug.cgi?id=11931
PathCG fails to hit on unclosed sub-paths

Test: svg/custom/hit-test-unclosed-subpaths.svg

  • platform/graphics/cg/PathCG.cpp: (WebCore::copyClosingSubpathsApplierFunction): (WebCore::copyCGPathClosingSubpaths): (WebCore::Path::contains): use new copy & close function
03:36 Changeset [26382] by oliver

Add initial markers for feature-branch merge

03:23 Changeset [26381] by oliver

Start Safari 3 branch

10/11/07:

21:58 Changeset [26380] by oliver

Fix Bug 15469: feature branch has 100's of implicit double -> float conversions

Reviewed by Sam.

Re-enable -Wshorten-64-to-32, and make required code changes to make us build sanely again.

  • WebCore.xcodeproj/project.pbxproj:
  • bindings/js/JSSVGMatrixCustom.cpp: (WebCore::JSSVGMatrix::translate): (WebCore::JSSVGMatrix::scale): (WebCore::JSSVGMatrix::scaleNonUniform): (WebCore::JSSVGMatrix::rotate): (WebCore::JSSVGMatrix::skewX): (WebCore::JSSVGMatrix::skewY):
  • bindings/scripts/CodeGeneratorJS.pm:
  • bindings/scripts/CodeGeneratorObjC.pm:
  • ksvg2/css/SVGRenderStyle.cpp: (WebCore::SVGRenderStyle::cssPrimitiveToLength):
  • ksvg2/css/SVGRenderStyle.h:
  • ksvg2/svg/SVGAnimateMotionElement.cpp: (WebCore::SVGAnimateMotionElement::parseMappedAttribute): (WebCore::SVGAnimateMotionElement::updateAnimatedValue): (WebCore::parsePoint): (WebCore::SVGAnimateMotionElement::calculateFromAndToValues):
  • ksvg2/svg/SVGAnimationElement.cpp: (WebCore::SVGAnimationElement::parseKeyNumbers): (WebCore::parseKeySplines):
  • ksvg2/svg/SVGComponentTransferFunctionElement.cpp: (WebCore::SVGComponentTransferFunctionElement::SVGComponentTransferFunctionElement): (WebCore::SVGComponentTransferFunctionElement::parseMappedAttribute):
  • ksvg2/svg/SVGFECompositeElement.cpp: (WebCore::SVGFECompositeElement::SVGFECompositeElement): (WebCore::SVGFECompositeElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEDiffuseLightingElement.cpp: (WebCore::SVGFEDiffuseLightingElement::SVGFEDiffuseLightingElement): (WebCore::SVGFEDiffuseLightingElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEDisplacementMapElement.cpp: (WebCore::SVGFEDisplacementMapElement::SVGFEDisplacementMapElement): (WebCore::SVGFEDisplacementMapElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEGaussianBlurElement.cpp: (WebCore::SVGFEGaussianBlurElement::SVGFEGaussianBlurElement): (WebCore::SVGFEGaussianBlurElement::parseMappedAttribute):
  • ksvg2/svg/SVGFELightElement.cpp: (WebCore::SVGFELightElement::SVGFELightElement): (WebCore::SVGFELightElement::parseMappedAttribute):
  • ksvg2/svg/SVGFEOffsetElement.cpp: (WebCore::SVGFEOffsetElement::SVGFEOffsetElement): (WebCore::SVGFEOffsetElement::parseMappedAttribute):
  • ksvg2/svg/SVGFESpecularLightingElement.cpp: (WebCore::SVGFESpecularLightingElement::SVGFESpecularLightingElement): (WebCore::SVGFESpecularLightingElement::parseMappedAttribute):
  • ksvg2/svg/SVGFETurbulenceElement.cpp: (WebCore::SVGFETurbulenceElement::SVGFETurbulenceElement): (WebCore::SVGFETurbulenceElement::parseMappedAttribute):
  • ksvg2/svg/SVGFitToViewBox.cpp: (WebCore::SVGFitToViewBox::parseMappedAttribute):
  • ksvg2/svg/SVGFitToViewBox.h:
  • ksvg2/svg/SVGLength.cpp: (WebCore::SVGLength::setValueAsString): (WebCore::SVGLength::PercentageOfViewport):
  • ksvg2/svg/SVGNumber.idl:
  • ksvg2/svg/SVGNumberList.cpp: (WebCore::SVGNumberList::parse):
  • ksvg2/svg/SVGNumberList.h:
  • ksvg2/svg/SVGParserUtilities.cpp: (WebCore::_parseNumber): (WebCore::parseNumber): (WebCore::pointsListFromSVGData): (WebCore::PathBuilder::svgMoveTo): (WebCore::PathBuilder::svgLineTo): (WebCore::PathBuilder::svgCurveToCubic): (WebCore::SVGPathSegListBuilder::svgMoveTo): (WebCore::SVGPathSegListBuilder::svgLineTo): (WebCore::SVGPathSegListBuilder::svgLineToHorizontal): (WebCore::SVGPathSegListBuilder::svgLineToVertical): (WebCore::SVGPathSegListBuilder::svgCurveToCubic): (WebCore::SVGPathSegListBuilder::svgCurveToCubicSmooth): (WebCore::SVGPathSegListBuilder::svgCurveToQuadratic): (WebCore::SVGPathSegListBuilder::svgCurveToQuadraticSmooth): (WebCore::SVGPathSegListBuilder::svgArcTo):
  • ksvg2/svg/SVGParserUtilities.h:
  • ksvg2/svg/SVGPathElement.cpp: (WebCore::SVGPathElement::SVGPathElement):
  • ksvg2/svg/SVGSVGElement.cpp: (WebCore::SVGSVGElement::pixelUnitToMillimeterX): (WebCore::SVGSVGElement::pixelUnitToMillimeterY):
  • ksvg2/svg/SVGSVGElement.h:
  • ksvg2/svg/SVGTransformDistance.cpp: (WebCore::SVGTransformDistance::addToSVGTransform): (WebCore::SVGTransformDistance::distance):
  • ksvg2/svg/SVGTransformDistance.h:
  • ksvg2/svg/SVGTransformable.cpp: (WebCore::SVGTransformable::parseTransformValue):
  • ksvg2/svg/SVGViewSpec.cpp: (WebCore::SVGViewSpec::parseViewSpec):
  • platform/graphics/svg/SVGResourceFilter.cpp: (WebCore::SVGResourceFilter::filterBBoxForItemBBox):
  • platform/graphics/svg/cg/CgSupport.cpp: (WebCore::applyStrokeStyleToContext):
  • platform/graphics/svg/cg/SVGPaintServerPatternCg.cpp: (WebCore::SVGPaintServerPattern::setup):
  • platform/graphics/svg/cg/SVGResourceFilterCg.mm: (WebCore::SVGResourceFilter::applyFilter):
  • platform/graphics/svg/filters/SVGFEComponentTransfer.h: (WebCore::SVGComponentTransferFunction::SVGComponentTransferFunction):
  • platform/graphics/svg/filters/SVGFEComposite.cpp: (WebCore::SVGFEComposite::SVGFEComposite):
  • platform/graphics/svg/filters/SVGFEConvolveMatrix.cpp: (WebCore::SVGFEConvolveMatrix::SVGFEConvolveMatrix):
  • platform/graphics/svg/filters/SVGFEDiffuseLighting.cpp: (WebCore::SVGFEDiffuseLighting::SVGFEDiffuseLighting):
  • platform/graphics/svg/filters/SVGFEFlood.cpp: (WebCore::SVGFEFlood::SVGFEFlood):
  • platform/graphics/svg/filters/SVGFEGaussianBlur.cpp: (WebCore::SVGFEGaussianBlur::SVGFEGaussianBlur):
  • platform/graphics/svg/filters/SVGFEMorphology.cpp: (WebCore::SVGFEMorphology::SVGFEMorphology):
  • platform/graphics/svg/filters/SVGFEOffset.cpp: (WebCore::SVGFEOffset::SVGFEOffset):
  • platform/graphics/svg/filters/SVGFESpecularLighting.cpp: (WebCore::SVGFESpecularLighting::SVGFESpecularLighting):
  • platform/graphics/svg/filters/SVGFETurbulence.cpp: (WebCore::SVGFETurbulence::SVGFETurbulence):
  • platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm: (WebCore::SVGFEColorMatrix::getCIFilter):
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm: (WebCore::getVectorForChannel): (WebCore::getLightVectors):
  • platform/graphics/svg/filters/cg/SVGFEImageCg.mm: (WebCore::SVGFEImage::getCIFilter):
  • rendering/RenderPath.cpp: (WebCore::RenderPath::drawMarkersIfNeeded):
  • rendering/RenderSVGImage.cpp: (WebCore::RenderSVGImage::paint):
  • rendering/RenderSVGInlineText.cpp: (WebCore::RenderSVGInlineText::computeAbsoluteRectForRange):
  • rendering/RenderSVGRoot.cpp: (WebCore::RenderSVGRoot::applyContentTransforms): (WebCore::RenderSVGRoot::calcViewport): (WebCore::RenderSVGRoot::nodeAtPoint):
  • rendering/RenderSVGText.cpp: (WebCore::RenderSVGText::absoluteRects): (WebCore::RenderSVGText::relativeBBox):
  • rendering/RenderSVGTextPath.cpp:
  • rendering/SVGCharacterLayoutInfo.cpp: (WebCore::calculateBaselineShift): (WebCore::SVGCharacterLayoutInfo::SVGCharacterLayoutInfo): (WebCore::SVGCharacterLayoutInfo::processedChunk): (WebCore::SVGCharacterLayoutInfo::nextPathLayoutPointAndAngle): (WebCore::SVGCharacterLayoutInfo::addLayoutInformation):
  • rendering/SVGCharacterLayoutInfo.h:
  • rendering/SVGInlineTextBox.cpp: (WebCore::SVGInlineTextBox::calculateGlyphBoundaries): (WebCore::SVGInlineTextBoxClosestCharacterToPositionWalker::chunkPortionCallback): (WebCore::pathForDecoration):
  • rendering/SVGRenderTreeAsText.cpp: (WebCore::writeStyle):
  • rendering/SVGRootInlineBox.cpp: (WebCore::SVGRootInlineBoxPaintWalker::chunkPortionCallback): (WebCore::applyTextAnchorToTextChunk): (WebCore::SVGRootInlineBox::buildLayoutInformation): (WebCore::SVGRootInlineBox::buildLayoutInformationForTextBox):
19:33 Changeset [26379] by kevino

64-bit compilation fix.

18:48 Changeset [26378] by andrew

JavaScriptCore:

Reviewed by Eric Seidel.


Fix for http://bugs.webkit.org/show_bug.cgi?id=15076
"deg2rad has multiple definitions"


Define deg2rad, rad2deg, deg2grad, grad2deg, rad2grad, grad2rad
These are used through WebKit.


Change based on original patch by Rob Buis.

  • wtf/MathExtras.h: (deg2rad): (rad2deg): (deg2grad): (grad2deg): (rad2grad): (grad2rad):

WebCore:

Reviewed by Eric Seidel.

Fix for http://bugs.webkit.org/show_bug.cgi?id=15076
"deg2rad has multiple definitions"


Use deg2rad, rad2deg, deg2grad, grad2deg, rad2grad, grad2rad
from wtf where appropriate.


No test cases as this doesn't change behaviour.


Change based on original patch by Rob Buis.

  • ksvg2/svg/SVGAngle.cpp: (WebCore::SVGAngle::calculate): (WebCore::SVGAngle::convertToSpecifiedUnits): (WebCore::SVGAngle::todeg): (WebCore::SVGAngle::torad):
  • platform/graphics/AffineTransform.cpp: (WebCore::AffineTransform::rotateFromVector): (WebCore::AffineTransform::skewX): (WebCore::AffineTransform::skewY):
  • platform/graphics/cg/AffineTransformCG.cpp: (WebCore::AffineTransform::rotate):
  • platform/graphics/svg/filters/cg/SVGFEColorMatrixCg.mm:
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.h:
  • platform/graphics/svg/filters/cg/SVGFEHelpersCg.mm:
  • rendering/RenderPath.cpp: (WebCore::drawMarkerWithData):
17:24 Changeset [26377] by kevino

Ensure the refcount is properly incremented.

17:16 Changeset [26376] by honeycutt

2007-10-11 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Anders.

Handle a race condition that could arise if a plugin was loaded while it
was scheduled to be freed: check whether the timer that schedules
library frees is active in PluginPackageWin::load().

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackageWin::freeLibrarySoon): Added assertions (WebCore::PluginPackageWin::freeLibraryTimerFired): Added assertion (WebCore::PluginPackageWin::load): If we are scheduled to free this library, cancel the timer, and don't call LoadLibrary
16:54 Changeset [26375] by kevino

scrollBy needs to convert the scroll offset to an absolute position for the Scroll method. Also, make sure we properly convert pixels to units when scrolling.

16:38 Changeset [26374] by justing

WebCore:

Reviewed by Harrison.

<rdar://problem/5483567> REGRESSION (Tiger only): Pasting words copied from TextEdit in Mail adds extra newline


  • editing/ReplaceSelectionCommand.cpp: (WebCore::ReplaceSelectionCommand::removeUnrenderedTextNodesAtEnds): Added. We would like to insert the fragment as-is if possible, but AppKit on Tiger creates fragments from RTF data that have carriage returns and spaces at the beginning and end, and those need to be removed since they'll interfere with paragraph merging. (WebCore::ReplaceSelectionCommand::doApply):
  • editing/ReplaceSelectionCommand.h:

LayoutTests:

Reviewed by Harrison.


<rdar://problem/5483567> REGRESSION (Tiger only): Pasting words copied from TextEdit in Mail adds extra newline

Re-enabling this test:

  • editing/pasteboard/5483567.html: Added.
  • editing/pasteboard/5483567.html-disabled: Removed. Also demonstrates fix:
  • platform/mac/editing/pasteboard/paste-RTFD-expected.checksum:
  • platform/mac/editing/pasteboard/paste-RTFD-expected.png:
  • platform/mac/editing/pasteboard/paste-RTFD-expected.txt:
16:37 Changeset [26373] by kmccullo

Reviewed by Darin.

  • Updated rational for the leaks list to be more clear.
  • Scripts/run-webkit-tests:
16:27 Changeset [26372] by darin

Remove a couple of empty directories.

16:16 Changeset [26371] by zimmermann

Reviewed by Oliver.

Fixes: http://bugs.webkit.org/show_bug.cgi?id=6421 (<text> textLength attribute is not respected)
Fixes: http://bugs.webkit.org/show_bug.cgi?id=6422 (<text> lengthAdjust attribute is not respected)

Implement textLength and full lengthAdjust (both 'spacing' & 'spacingAndGlyphs' mode)
for <text> & <tspan> & friends. <textPath> is still todo, as it's special.

Also fix usage of cummulatedGlyphWidth/Height in SVGInlineTextBox, calculateGlyphBoundaries was
supposed to be used in the distance calculations, to take per character transformations into account (ie. rotation).

Fixes: svg/W3C-SVG-1.1/text-text-01-b.svg (complelty fixed the single W3C textLength testcase)
Partly fixed: svg/batik/text/textOnPathSpaces.svg (kerning support missing)
Partly fixed: svg/batik/text/textLayout.svg (word-letter spacing & textLength is todo)

16:15 Changeset [26370] by kmccullo

Rubber Stamp by Sam.

Adding a known Leopard leak that is already fixed but the bot is on an old version of Leopard.
I believe there was a radar on this leak, it looks familiar to me, but I could not find it.

  • Scripts/run-webkit-tests:
15:31 Changeset [26369] by justing

WebCore:

Reviewed by Maciej.


<rdar://problem/5521237> Pasting a word copied from TextEdit after a regular, breaking space, adds a leading newline


  • editing/CompositeEditCommand.cpp: (WebCore::CompositeEditCommand::prepareWhitespaceAtPositionForSplit): Fixed a typo.

LayoutTests:

Reviewed by Maciej.


<rdar://problem/5521237> Pasting a word copied from TextEdit after a regular, breaking space, adds a leading newline

  • editing/pasteboard/5521237-expected.txt: Added.
  • editing/pasteboard/5521237.html: Added.
15:27 Changeset [26368] by oliver

Fix for Bug 15468: Parsing of numbers and lists is too lenient in SVG

Reviewed by Niko.

Correct parsing of numbers, number lists, and length lists in SVG.

  • ksvg2/svg/SVGLength.cpp: (WebCore::SVGLength::setValueAsString):
  • ksvg2/svg/SVGLength.h:
  • ksvg2/svg/SVGLengthList.cpp: (WebCore::SVGLengthList::parse):
  • ksvg2/svg/SVGParserUtilities.cpp: (WebCore::parseNumber):
15:03 Changeset [26367] by aliceli1

fast/forms/focus-selection-input.html also fails due to unsupported accesskey.
adding to a section that already covers this bug.


  • platform/win/Skipped:
14:44 Changeset [26366] by eseidel

2007-10-11 Allan Sandfeld Jensen <sandfeld@kde.org>

Reviewed by Maciej and Eric.


Implement CSS selector combinators nondeterministic matching.
Fixes http://bugs.webkit.org/show_bug.cgi?id=3428


  • css/CSSStyleSelector.cpp: (WebCore::CSSStyleSelector::matchRulesForList): (WebCore::CSSStyleSelector::checkSelector): Split the function and make the second part recursive (WebCore::CSSStyleSelector::checkOneSelector): Handle pseodo-elements rules and hoveractive quirks here instead of in checkSelector.
  • css/CSSStyleSelector.h:
14:15 Changeset [26365] by aliceli1

removing a test that was fixed recently

  • platform/win/Skipped:
12:52 Changeset [26364] by honeycutt

2007-10-10 Jon Honeycutt <jhoneycutt@apple.com>

Reviewed by Darin.

<rdar://5530519> REGRESSION (303-310A18): Crash when closing tab with
pdf file (Reader 7 only)

Reader 7 subclasses its parent window, so posting a WM_DESTROY to this
window puts us in plugin code. When the plugin forwards the message
back to the original window proc, and we free the plugin library from
there, we will jump back to code we just freed when we return, so delay
calling FreeLibrary at least until the next message loop

  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackageWin::freeLibrarySoon): Start a timer to free the plugin library (WebCore::PluginPackageWin::freeLibraryTimerFired): Free the library (WebCore::PluginPackageWin::PluginPackageWin): Initialize the timer that will free this library (WebCore::PluginPackageWin::unloadWithoutShutdown): Call freeLibrarySoon()
  • plugins/win/PluginPackageWin.h: Added m_freeLibraryTimer
11:30 Changeset [26363] by aroben

Roll out r26186

Apparently some of these tests still fail on the bot even though they
don't fail for me locally.

  • platform/win/Skipped:
11:20 Changeset [26362] by sfalken

Delay load additional libraries to improve startup time.


Reviewed by Darin, Ada.

  • WebKit.vcproj/WebKit.vcproj:
10:04 Changeset [26361] by adachan

WebCore:

<rdar://problem/5534421>
Switched to using wkGetDefaultHTTPCookieStorage() and removed some cookie-related
methods we no longer need in ResourceHandle.


<rdar://problem/5244261> "Never" cookie policy was ignored on windows
Need to set the cookie accept policy on each CFURLRequest.


WebKit/win:

<rdar://problem/5534421>
Switched to using wkGetDefaultHTTPCookieStorage() to avoid recreating CFHTTPCookieStorageRef.
Removed usage of ResourceHandle::cookieStorage().

Reviewed by Oliver.


09:57 Changeset [26360] by adachan

<rdar://problem/5534421>
Added wkGetDefaultHTTPCookieStorage(). Updated libraries.

Reviewed by Darin.

  • win/include/WebKitSystemInterface/WebKitSystemInterface.h:
  • win/lib/WebKitSystemInterface.lib:
  • win/lib/WebKitSystemInterface_debug.lib:
08:16 Changeset [26359] by bdash

2007-10-11 Mark Rowe <mrowe@apple.com>

Reviewed by Tim Hatcher.

Fix for <rdar://problem/5488678>. Disable debugging symbols in production builds for 10.4
PowerPC to prevent a huge STABS section from being generated.

  • Configurations/Base.xcconfig:
08:10 Changeset [26358] by bdash

2007-10-11 Mark Rowe <mrowe@apple.com>

Merge remainder of r12652 from trunk to Safari-2.0-dashboard. This portion
was missed during the merge in r25550.

  • kwq/KWQTextCodec.mm: (KWQTextDecoder::appendOmittingBOMs): (KWQTextDecoder::convertUsingTEC):
07:29 Changeset [26357] by eseidel

2007-10-10 Eric Seidel <eric@webkit.org>

Reviewed by Nikolas Zimmermann.


Fix the SVG dom so that rect.x.baseVal = rect.x.baseVal like it should.
http://bugs.webkit.org/show_bug.cgi?id=14150

Test: svg/dom/animated-tearoff-equlity.xhtml

  • ksvg2/svg/SVGAnimatedTemplate.h: (WebCore::SVGAnimatedTypeWrapperKey::SVGAnimatedTypeWrapperKey): (WebCore::SVGAnimatedTypeWrapperKey::operator==): (WebCore::SVGAnimatedTypeWrapperKeyHash::hash): (WebCore::SVGAnimatedTypeWrapperKeyHash::equal): (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::deletedValue): (WebCore::SVGAnimatedTypeWrapperKeyHashTraits::emptyValue): (WebCore::SVGAnimatedTemplate::~SVGAnimatedTemplate): (WebCore::SVGAnimatedTemplate::wrapperCache): (WebCore::SVGAnimatedTemplate::forgetWrapper): (WebCore::lookupOrCreateWrapper):
  • ksvg2/svg/SVGElement.h:
02:30 Changeset [26356] by lars

Ensure that setting innerHTML on an element doesn't do
weird things with the document.
Fixes most issues with http://bugs.webkit.org/show_bug.cgi?id=15456

Note: See TracTimeline for information about the timeline view.