Timeline


and

04/08/09:

21:17 Changeset [42347] by oliver@apple.com
  • 5 edits in trunk

Fix assertion failure in function.apply

Reviewed by Adam Roben.

The result of excess arguments to function.apply is irrelevant
so we don't need to provide a result register. We were providing
temporary result register but not ref'ing it resulting in an
assertion failure.

18:33 Changeset [42346] by simon.fraser@apple.com
  • 2 edits in trunk/WebCore

2009-04-08 Simon Fraser <simon.fraser@apple.com>

Reviewed by Cameron Zwarich

https://bugs.webkit.org/show_bug.cgi?id=25106

Fix signature of virtual function on AnimationBase so that it matches
those in the derived classes, by removing unused parameter.

  • page/animation/AnimationBase.h: (WebCore::AnimationBase::endAnimation):
18:27 Changeset [42345] by ddkilzer@apple.com
  • 20 edits in trunk

<rdar://problem/6718589> Option to turn off SVG DOM Objective-C bindings

Reviewed by Darin Adler and Maciej Stachowiak.

Introduce the ENABLE_SVG_DOM_OBJC_BINDINGS feature define so
that SVG DOM Objective-C bindings may be optionally disabled.

JavaScriptCore:

  • Configurations/JavaScriptCore.xcconfig: Added ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in FEATURE_DEFINES.

WebCore:

  • Configurations/WebCore.xcconfig: Added ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in FEATURE_DEFINES and EXCLUDED_SOURCE_FILE_NAMES. When SVG DOM Objective-C bindings are disabled, two generated header files no longer exist and none of the generated DOMSVG*.mm files should be compiled.
  • DerivedSources.make: All of the WebCore.SVG*.exp files contain SVG DOM Objective-C bindings classes, so exclude them unless ENABLE_SVG_DOM_OBJC_BINDINGS is set.
  • bindings/objc/DOM.mm: Switched from using ENABLE(SVG) to using ENABLE(SVG_DOM_OBJC_BINDINGS). (WebCore::createElementClassMap): (+[DOMNode _wrapNode:WebCore::]):
  • bindings/objc/DOMCSS.mm: Ditto. (+[DOMCSSValue _wrapCSSValue:WebCore::]):
  • bindings/objc/DOMEvents.mm: Ditto. (+[DOMEvent _wrapEvent:WebCore::]):
  • bindings/objc/DOMInternal.h: Ditto.
  • bindings/objc/ExceptionHandlers.mm: Added use of ENABLE(SVG_DOM_OBJC_BINDINGS). (WebCore::raiseDOMException):
  • html/HTMLEmbedElement.idl: Excluded -getSVGDocument method in generated Objective-C DOM classes if SVG DOM Objective-C bindings are disabled.
  • html/HTMLFrameElement.idl: Ditto.
  • html/HTMLIFrameElement.idl: Ditto.
  • html/HTMLObjectElement.idl: Ditto.

WebKit/mac:

  • Configurations/WebKit.xcconfig: Added ENABLE_SVG_DOM_OBJC_BINDINGS variable and use it in FEATURE_DEFINES.
  • DOM/WebDOMOperations.mm: Removed unused header.
  • MigrateHeaders.make: Switched from using ENABLE_SVG to using ENABLE_SVG_DOM_OBJC_BINDINGS.

WebKitTools:

  • Scripts/build-webkit: Added --[no-]svg-dom-objc-bindings command-line argument. Set special ENABLE_SVG_DOM_OBJC_BINDINGS Xcode variable required by WebCore.xcconfig.
18:14 Changeset [42344] by levin@chromium.org
  • 8 edits
    1 add in trunk/JavaScriptCore

2009-04-08 Paul Pedriana <ppedriana@ea.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=20422
Allow custom memory allocation control.

  • wtf/FastAllocBase.h: New added file. Implements allocation base class.
  • wtf/TypeTraits.h: Augments existing type traits support as needed by FastAllocBase.
  • wtf/FastMalloc.h: Changed to support FastMalloc match validation.
  • wtf/FastMalloc.cpp: Changed to support FastMalloc match validation.
  • wtf/Platform.h: Added ENABLE_FAST_MALLOC_MATCH_VALIDATION; defaults to 0.
  • GNUmakefile.am: Updated to include added FastAllocBase.h.
  • JavaScriptCore.xcodeproj/project.pbxproj: Updated to include added FastAllocBase.h.
  • JavaScriptCore.vcproj/WTF/WTF.vcproj: Updated to include added FastAllocBase.h.
17:07 Changeset [42343] by aroben@apple.com
  • 2 edits in trunk/LayoutTests

Skip fast/js/toString-stack-overflow.html on Windows

This test sometimes crashes in Debug builds.

Rubber-stamped by Geoff Garen.

  • platform/win/Skipped: Skip toString-stack-overflow.html.
16:43 Changeset [42342] by mitz@apple.com
  • 2 edits in trunk/WebCore

Reviewed by Sam Weinig.

  • limit the workaround for <rdar://problem/5781372> to Mac OS X versions that need it
  • platform/mac/WebFontCache.mm: (fixUpWeight): Changed this function to be a no-op post-Leopard.
16:37 Changeset [42341] by mitz@apple.com
  • 3 edits
    4 adds in trunk

WebCore:

Reviewed by Dave Hyatt.

  • fix <rdar://problem/6771547> Appending to a RenderText causes all its lines to be dirtied

Test: fast/repaint/text-append-dirty-lines.html

  • rendering/RenderText.cpp: (WebCore::RenderText::setTextWithOffset): If no text boxes intersected with or came after the new text, dirty the last root box, since the new text may begin there. Having at least one dirty line prevents the incorrect dirtying of all lines later during layoutInlineChildren().

LayoutTests:

Reviewed by Dave Hyatt.

  • test for <rdar://problem/6771547> Appending to a RenderText causes all its lines to be dirtied
  • fast/repaint/text-append-dirty-lines.html: Added.
  • platform/mac/fast/repaint/text-append-dirty-lines-expected.checksum: Added.
  • platform/mac/fast/repaint/text-append-dirty-lines-expected.png: Added.
  • platform/mac/fast/repaint/text-append-dirty-lines-expected.txt: Added.
16:24 Changeset [42340] by darin@chromium.org
  • 7 edits in trunk

2009-04-08 Darin Fisher <darin@chromium.org>

Reviewed by Eric Seidel.

https://bugs.webkit.org/show_bug.cgi?id=25100

Fixes a Chromium-specific crash in WebCore::ImageBuffer::context that
occurs when rendering semi-transparent RTL text.

Test: fast/text/complex-text-opacity.html

  • platform/graphics/chromium/FontChromiumWin.cpp: Handle RTL when computing text bounds. (WebCore::TransparencyAwareFontPainter::TransparencyAwareUniscribePainter::estimateTextBounds):
16:17 Changeset [42339] by weinig@apple.com
  • 1 edit
    7 adds in trunk/LayoutTests

2009-04-08 Sam Weinig <sam@webkit.org>

Add Windows specific results.

  • platform/win/http/tests/security: Added.
  • platform/win/http/tests/security/XFrameOptions: Added.
  • platform/win/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
  • platform/win/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
  • platform/win/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/win/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
  • platform/win/http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
16:14 Changeset [42338] by weinig@apple.com
  • 1 edit
    6 adds in trunk/LayoutTests

2009-04-08 Sam Weinig <sam@webkit.org>

Add Tiger specific results.

  • platform/mac-tiger/http/tests/security: Added.
  • platform/mac-tiger/http/tests/security/XFrameOptions: Added.
  • platform/mac-tiger/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
  • platform/mac-tiger/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
  • platform/mac-tiger/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • platform/mac-tiger/http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
16:08 Changeset [42337] by oliver@apple.com
  • 24 edits
    3 adds in trunk

Improve function.apply performance

Reviewed by Geoff Garen.

Jump through a few hoops to improve performance of function.apply in the general case.

In the case of zero or one arguments, or if there are only two arguments and the
second is an array literal we treat function.apply as function.call.

Otherwise we use the new opcodes op_load_varargs and op_call_varargs to do the .apply call
without re-entering the virtual machine.

16:06 Changeset [42336] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-04-08 David Hyatt <hyatt@apple.com>

Reviewed by Beth Dakin

Fix a porting error in my previous patch. A != was supposed to be an ==.

  • platform/ScrollView.cpp: (WebCore::ScrollView::updateScrollbars):
16:02 Changeset [42335] by aroben@apple.com
  • 2 edits in trunk/LayoutTests

Skip fast/cookies/local-file-can-set-cookies.html on Windows

Reviewed by John Sullivan.

  • platform/win/Skipped: Skip local-file-can-set-cookies.html, which is failing due to a bug in one of our dependencies.
15:33 Changeset [42334] by hyatt@apple.com
  • 22 edits
    4 adds in trunk

WebCore:

2009-04-08 David Hyatt <hyatt@apple.com>

Reviewed by Adam Roben and Darin Adler

Fix for https://bugs.webkit.org/show_bug.cgi?id=12440, repaints inconsistent for
fixed positioned elements.

Rewrite the updateScrollers method to be more correct in its results.

Test: fast/block/positioning/fixed-positioning-scrollbar-bug.html

  • dom/Document.cpp: (WebCore::Document::recalcStyle): (WebCore::Document::implicitClose):
  • page/FrameView.cpp: (WebCore::FrameView::createScrollbar): (WebCore::FrameView::layout): (WebCore::FrameView::adjustPageHeight):
  • page/FrameView.h:
  • page/win/FrameWin.cpp: (WebCore::computePageRectsForFrame):
  • platform/ScrollView.cpp: (WebCore::ScrollView::ScrollView): (WebCore::ScrollView::updateScrollbars):
  • platform/ScrollView.h:
  • rendering/RenderView.cpp: (WebCore::RenderView::layout): (WebCore::RenderView::docHeight): (WebCore::RenderView::docWidth):
  • rendering/RenderView.h:

WebKit/mac:

2009-04-08 David Hyatt <hyatt@apple.com>

Reviewed by Adam Roben and Darin Adler

Fix for https://bugs.webkit.org/show_bug.cgi?id=12440, fixed positioned elements end up in
inconsistent positions. Rewrite updateScrollers to improve the correctness.

  • WebView/WebDynamicScrollBarsView.h:
  • WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):

LayoutTests:

2009-04-08 David Hyatt <hyatt@apple.com>

Reviewed by Adam Roben and Darin Adler

Updated results and new tests for https://bugs.webkit.org/show_bug.cgi?id=12440.

  • fast/block/positioning/fixed-positioning-scrollbar-bug.html: Added.
  • platform/mac/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.checksum: Added.
  • platform/mac/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.png: Added.
  • platform/mac/fast/block/positioning/fixed-positioning-scrollbar-bug-expected.txt: Added.
  • platform/mac/fast/flexbox/016-expected.checksum:
  • platform/mac/fast/flexbox/016-expected.png:
  • platform/mac/fast/flexbox/016-expected.txt:
  • platform/mac/fast/flexbox/flex-hang-expected.checksum:
  • platform/mac/fast/flexbox/flex-hang-expected.png:
  • platform/mac/fast/flexbox/flex-hang-expected.txt:
  • platform/mac/fast/lists/001-expected.checksum:
  • platform/mac/fast/lists/001-expected.png:
  • platform/mac/fast/lists/001-expected.txt:
15:16 Changeset [42333] by weinig@apple.com
  • 6 edits
    23 adds in trunk

WebCore:

2009-04-08 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Fix for <rdar://problem/6226200> Implement Microsoft's X-FRAME-OPTIONS anti-framing defense

Tests: http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html

http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html
http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html
http/tests/security/XFrameOptions/x-frame-options-deny.html
http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow.html
http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny.html

  • dom/Document.cpp: (WebCore::Document::processHttpEquiv): Stop the current load and redirect to about:blank if an X-FRAME-OPTIONS <meta> tag http-equiq dictates we should.
  • loader/FrameLoader.cpp: (WebCore::FrameLoader::shouldInterruptLoadForXFrameOptions): Add logic to parse the X-FRAME-OPTIONS parameter.
  • loader/FrameLoader.h:
  • loader/MainResourceLoader.cpp: (WebCore::MainResourceLoader::didReceiveResponse): Stop the current load if framed and a X-FRAME-OPTIONS header and its parameter dictate that we should.

LayoutTests:

2009-04-08 Sam Weinig <sam@webkit.org>

Reviewed by Anders Carlsson.

Tests for <rdar://problem/6226200> Implement Microsoft's X-FRAME-OPTIONS anti-framing defense

  • http/tests/security/XFrameOptions: Added.
  • http/tests/security/XFrameOptions/resources: Added.
  • http/tests/security/XFrameOptions/resources/x-frame-options-deny-meta-tag-subframe-in-body.html: Added.
  • http/tests/security/XFrameOptions/resources/x-frame-options-deny-meta-tag-subframe-parent-same-origin-allow.html: Added.
  • http/tests/security/XFrameOptions/resources/x-frame-options-deny-meta-tag-subframe-parent-same-origin-deny.html: Added.
  • http/tests/security/XFrameOptions/resources/x-frame-options-deny-meta-tag-subframe.html: Added.
  • http/tests/security/XFrameOptions/resources/x-frame-options-deny.cgi: Added.
  • http/tests/security/XFrameOptions/resources/x-frame-options-parent-same-origin-allow.cgi: Added.
  • http/tests/security/XFrameOptions/resources/x-frame-options-parent-same-origin-deny.cgi: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-in-body.html: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-allow.html: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag-parent-same-origin-deny.html: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny-meta-tag.html: Added.
  • http/tests/security/XFrameOptions/x-frame-options-deny.html: Added.
  • http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-allow.html: Added.
  • http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny-expected.txt: Added.
  • http/tests/security/XFrameOptions/x-frame-options-parent-same-origin-deny.html: Added.
13:57 Changeset [42332] by aroben@apple.com
  • 2 edits in trunk/WebKit/win

Fix security/block-test-no-port.html on Windows

Reviewed by Beth Dakin.

  • WebMutableURLRequest.cpp: (WebMutableURLRequest::mainDocumentURL): Return the ResourceRequest's mainDocumentURL, not its URL.
13:31 Changeset [42331] by aroben@apple.com
  • 2 edits in trunk/WebCore

Fix http/tests/xmlhttprequest/xmlhttprequest-unsafe-redirect.html on Windows

Reviewed by Sam Weinig.

  • platform/network/cf/ResourceHandleCFNet.cpp: (WebCore::ResourceHandle::loadResourceSynchronously): Mimic the ResourceHandleMac code by propagating the CFError's error code for kCFErrorDomainCFNetwork errors to the ResourceResponse.
11:56 Changeset [42330] by abarth@webkit.org
  • 1 edit
    6 copies
    3 moves
    4 adds in trunk/LayoutTests

2009-04-08 Adam Barth <abarth@webkit.org>

Reviewed by Darin Adler.

More tests for our handling of MIME types and style sheets.

  • http/tests/mime/resources/style-with-charset.php: Added.
  • http/tests/mime/resources/style-with-empty-content-type.cgi: Renamed from LayoutTests/http/tests/mime/resources/style.cgi.
  • http/tests/mime/resources/style-with-text-plain.php: Added.
  • http/tests/mime/standard-mode-does-not-load-stylesheet-with-text-plain-and-css-extension-expected.txt: Added.
  • http/tests/mime/standard-mode-does-not-load-stylesheet-with-text-plain-and-css-extension.html: Added.
  • http/tests/mime/standard-mode-does-not-load-stylesheet-with-text-plain-expected.txt: Added.
  • http/tests/mime/standard-mode-does-not-load-stylesheet-with-text-plain.html: Added.
  • http/tests/mime/standard-mode-loads-stylesheet-with-charset-and-css-extension-expected.txt: Copied from LayoutTests/http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header-expected.txt.
  • http/tests/mime/standard-mode-loads-stylesheet-with-charset-and-css-extension.html: Added.
  • http/tests/mime/standard-mode-loads-stylesheet-with-charset-expected.txt: Copied from LayoutTests/http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header-expected.txt.
  • http/tests/mime/standard-mode-loads-stylesheet-with-charset.html: Added.
  • http/tests/mime/standard-mode-loads-stylesheet-with-empty-content-type-expected.txt: Renamed from LayoutTests/http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header-expected.txt.
  • http/tests/mime/standard-mode-loads-stylesheet-with-empty-content-type.html: Added.
  • http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header.html: Removed.
11:54 Changeset [42329] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-04-08 Anders Carlsson <andersca@apple.com>

Try to fix the PPC build.


  • plugins/npfunctions.h:
11:36 Changeset [42328] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-04-08 Darin Adler <darin@apple.com>

Reviewed by Sam Weinig.

<rdar://problem/5908616> tokenizer resizer should handle edge cases consistently

  • html/HTMLTokenizer.cpp: (WebCore::HTMLTokenizer::enlargeBuffer): Handle edge cases the same way as a failed fastMalloc. (WebCore::HTMLTokenizer::enlargeScriptBuffer): Ditto.
11:28 Changeset [42327] by hyatt@apple.com
  • 2 edits in trunk/WebCore

2009-04-08 David Hyatt <hyatt@apple.com>

Reviewed by Darin Adler

Make sure that cloneNode works with SVG attributes that require synchronization. This fixes
issues with <use> element shadow tree cloning where the clones can end up not obtaining the
correct attribute values.

A subsequent patch of mine will expose this problem and cause it to be covered by existing
layout tests, so no test is required at this time for this problem.

  • dom/Element.cpp: (WebCore::Element::cloneElementWithoutChildren):
10:58 Changeset [42326] by aroben@apple.com
  • 1 edit
    1 add in trunk/LayoutTests

Check in Windows-specific results for an SVG test that was failing due to rounding issues

Rubber-stamped by Dave Hyatt.

  • platform/win/svg/W3C-SVG-1.1/coords-trans-01-b-expected.txt: Added.
10:52 Changeset [42325] by dglazkov@chromium.org
  • 2 edits in trunk/WebCore

2009-04-08 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Timothy Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=25093
REGRESSION: some scripts are showing in the Inspector with only "true"
as the source.

  • inspector/InspectorController.cpp: (WebCore::InspectorController::didParseSource): Fixed conversion issue. (WebCore::InspectorController::failedToParseSource): Ditto.
10:07 Changeset [42324] by darin@chromium.org
  • 15 edits
    2 deletes in trunk

Reverting r42321 because it broke some layout tests.

09:39 Changeset [42323] by aroben@apple.com
  • 2 edits in trunk/LayoutTests

Add a failing test to the Windows Skipped file

  • platform/win/Skipped: Added media/video-size-intrinsic-scale.html.
09:25 Changeset [42322] by abarth@webkit.org
  • 3 edits
    5 adds in trunk

WebCore:

2009-04-08 Adam Barth <abarth@webkit.org>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=24904

Verify the MIME type of stylesheets (in standards mode) by looking
at the Content-Type header directly. This bypasses any content
sniffing that might be confusing the issue.

Test: http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header.html

  • loader/CachedCSSStyleSheet.cpp: (WebCore::CachedCSSStyleSheet::canUseSheet):

LayoutTests:

2009-04-08 Adam Barth <abarth@webkit.org>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=24904

Test that we apply style sheets in standards mode even if
those style sheets have an empty Content-Type header.

  • http/tests/mime/resources/style.cgi: Added.
  • http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header-expected.txt: Added.
  • http/tests/mime/standard-mode-loads-stylesheet-without-content-type-header.html: Added.
09:04 Changeset [42321] by darin@chromium.org
  • 15 edits
    2 adds in trunk

2009-04-07 Anantanarayanan Iyengar <ananta@chromium.org>

Reviewed by Darin Fisher.

Added support for returning plugins which support the wildcard mime type (*).
This is on the same lines as Firefox, which uses a wildcard plugin (npnul32.dll) for
plugin installation. The changes to support wildcard mime type matching are in
PluginDatabase.cpp which is used by Webkit's plugin implementation, and
PluginData.cpp/.h which is used by Chromium.

https://bugs.webkit.org/show_bug.cgi?id=24988

Test: plugins/netscape-plugin-wildcard-plugin.html

  • dom/DOMImplementation.cpp: (WebCore::DOMImplementation::createDocument):
  • plugins/PluginData.cpp: (WebCore::PluginData::supportsMimeType): (WebCore::PluginData::supportsMimeTypeIgnoringWildCards):
  • plugins/PluginData.h:
  • plugins/PluginDatabase.cpp: (WebCore::PluginDatabase::pluginForMIMEType):
  • plugins/win/PluginPackageWin.cpp: (WebCore::PluginPackage::isPluginBlacklisted):
07:42 Changeset [42320] by eric.carlson@apple.com
  • 2 edits in trunk/WebCore

2009-04-08 Eric Carlson <eric.carlson@apple.com>

Reviewed by Simon Fraser.

https://bugs.webkit.org/show_bug.cgi?id=25041
<rdar://problem/6697754>
Bug 25041: HTMLMediaElement: OSX autoplay broken by r41907


OSX media player should set readyState to HAVE_ENOUGH_DATA when the movie's load state
reaches QTMovieLoadStatePlaythroughOK, not when the entire file has been downloaded,
so autoplay can begin when it should.

  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::updateStates): Set readState to HAVE_ENOUGH_DATA when QTMovie load state reaches QTMovieLoadStatePlaythroughOK. (WebCore::MediaPlayerPrivate::paint): Add braces missed in r42203.
07:35 Changeset [42319] by ap@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by David Kilzer. Based on a patch by Grace Kloba.

https://bugs.webkit.org/show_bug.cgi?id=24656
cacheControlContainsNoCache() in ResourceResponseBase.h is wrong

  • platform/network/ResourceResponseBase.cpp: (WebCore::ResourceResponseBase::parseCacheControlDirectives): Removed misused code for parsing directive values, fixing parsing of directives that we care about.
  • platform/network/ResourceResponseBase.h: (WebCore::ResourceResponseBase::cacheControlContainsNoCache): Fixed a copy/paste mistake, m_cacheControlContainsMustRevalidate was returned instead of m_cacheControlContainsNoCache.
06:21 Changeset [42318] by xan@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-04-08 Alejandro Piñeiro <apinheiro@igalia.com>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=21546
[GTK] ATK accessibility enhancements

Use getOrCreate instead of just get, as we need to actually create
the wrapper object the first time this function is called.

  • webkit/webkitwebview.cpp:
00:48 Changeset [42317] by aroben@apple.com
  • 2 edits in trunk/WebCore

Make text fields match the system look on Vista

Reviewed by Dave Hyatt.

  • rendering/RenderThemeWin.cpp: (WebCore::RenderThemeWin::getThemeData): Use the new-to-Vista EP_EDITBORDER_NOSCROLL part for text fields.
00:47 Changeset [42316] by aroben@apple.com
  • 2 edits in trunk/WebKitTools

Print the number of files being compiled when using pdevenv

  • Scripts/parallelcl:
00:06 Changeset [42315] by ap@webkit.org
  • 2 edits in trunk/JavaScriptCore

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=25073
JavaScriptCore tests don't run if time zone is not PST

  • API/tests/testapi.c: (timeZoneIsPST): Added a function that checks whether the time zone is PST, using the same method as functions in DateMath.cpp do for formatting the result. (main): Skip date string format test if the time zone is not PST.
00:02 Changeset [42314] by ap@webkit.org
  • 4 edits
    2 adds in trunk

Reviewed by Maciej Stachowiak.

https://bugs.webkit.org/show_bug.cgi?id=24957
REGRESSION: Google calendar widget no longer shows upcoming events

Test: http/tests/xmlhttprequest/authorization-header.html

  • xml/XMLHttpRequest.cpp: (WebCore::XMLHttpRequestStaticData::XMLHttpRequestStaticData): Removed Authorization from the list of forbidden headers.

04/07/09:

22:33 Changeset [42313] by mrowe@apple.com
  • 1 edit in trunk/WebKitTools/BuildSlaveSupport/build.webkit.org-config

Ignore passwords.json to prevent it from accidentally being checked in.

22:29 Changeset [42312] by mrowe@apple.com
  • 4 edits
    1 move
    5 adds
    1 delete in trunk/WebKitTools

Land the current build.webkit.org configuration for safekeeping.

  • BuildSlaveSupport/build.webkit.org-config/README: Added.
  • BuildSlaveSupport/build.webkit.org-config/Makefile:
  • BuildSlaveSupport/build.webkit.org-config/buildbot.tac:
  • BuildSlaveSupport/build.webkit.org-config/config.json: Added.
  • BuildSlaveSupport/build.webkit.org-config/master.cfg:
  • BuildSlaveSupport/build.webkit.org-config/public_html/buildbot.css: Renamed from BuildSlaveSupport/build.webkit.org-config/buildbot.css.
  • BuildSlaveSupport/build.webkit.org-config/public_html/index.html: Added.
  • BuildSlaveSupport/build.webkit.org-config/public_html/robots.txt: Added.
  • BuildSlaveSupport/build.webkit.org-config/webkit/init.py: Removed.
  • BuildSlaveSupport/build.webkit.org-config/webkit/auth.py: Removed.
  • BuildSlaveSupport/build.webkit.org-config/webkit/basesteps.py: Removed.
  • BuildSlaveSupport/build.webkit.org-config/webkit/builders.py: Removed.
  • BuildSlaveSupport/build.webkit.org-config/webkit/factories.py: Removed.
  • BuildSlaveSupport/build.webkit.org-config/webkit/schedulers.py: Removed.
  • BuildSlaveSupport/build.webkit.org-config/webkit/status.py: Removed.
  • BuildSlaveSupport/build.webkit.org-config/webkit/steps.py: Removed.
22:08 Changeset [42311] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

Ignore the mysterious exception that Cygwin's Python is throwing when attempting
to remove the layout-test-results directory.

  • BuildSlaveSupport/test-result-archive:
21:54 Changeset [42310] by kevino@webkit.org
  • 2 edits in trunk/WebCore

Reviewed by Kevin Ollivier.

Remove no longer needed debug warning and Windows-specific codepaths
(as we now use the Safari/Win port's timer there)

https://bugs.webkit.org/show_bug.cgi?id=25070

21:34 Changeset [42309] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

Change the working directory before removing the test result directory
in the hopes of making the Windows build slaves happier.

  • BuildSlaveSupport/test-result-archive:
21:30 Changeset [42308] by mrowe@apple.com
  • 3 edits in trunk/WebKitTools

Make the links to tests in the uploaded results.html files on build.webkit.org point to the test files.

Reviewed by Adam Roben.

  • Scripts/VCSUtils.pm: Add a function that will return the location of a file relative to the root of the working copy.
  • Scripts/run-webkit-tests: Convert the path in to a remote URL if the path is below the layout tests directory.
20:36 Changeset [42307] by mitz@apple.com
  • 2 edits in trunk/LayoutTests

Reviewed by Adam Roben.

  • make this test insensitive to platform differences in Thai word breaking dictionaries
  • editing/selection/thai-word-at-document-end.html:
20:21 Changeset [42306] by aroben@apple.com
  • 2 edits in trunk/WebCore

Fix many <video> regression tests on Windows

Reviewed by Dave Hyatt.

  • platform/graphics/win/QTMovieWin.cpp: (QTMovieWin::getNaturalSize): Call GetMovieNaturalBoundsRect, which returns the movie's natural bounds (duh), rather than GetMovieBox, which returns the movie's current displayed size/position.
20:05 Changeset [42305] by mrowe@apple.com
  • 2 edits in trunk/WebKitTools

Remove the layout-test-results directory after we have archived it so that
log files and results are reset between runs of the tests.

  • BuildSlaveSupport/test-result-archive:
19:09 Changeset [42304] by aroben@apple.com
  • 1 edit
    6 adds in trunk/LayoutTests

Check in files that were forgotten in r42293

  • platform/win/http/tests/xmlhttprequest/web-apps/012-expected.txt:
  • platform/win/http/tests/xmlhttprequest/web-apps/013-expected.txt:
18:00 Changeset [42303] by beidson@apple.com
  • 3 edits in trunk/LayoutTests

2009-04-07 Brady Eidson <beidson@apple.com>

Update layout test results for new exceptions.

  • fast/dom/Window/window-properties-expected.txt:
  • platform/mac-leopard/fast/dom/Window/window-properties-expected.txt:
17:26 Changeset [42302] by beidson@apple.com
  • 6 edits
    4 adds in trunk

WebCore:

2009-04-07 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler and Sam Weinig

<rdar://problem/5968249> "Private Browsing" doesn't affect HTML 5 LocalStorage

The expected behavior for persistent storage when private browsing mode is undefined by the spec.
For now we're going with a "read-only when in private browsing" policy until we can get feedback
and/or get the behavior specified in the spec.

Note that I purposefully made the change to restrict SessionStorage to read-only, also, with the
understanding that the spec allows for SessionStorage to persist across relaunches, even though
our implementation currently doesn't do this.

  • dom/DOMCoreException.idl: Add some new ExceptionCodes defined in HTML5, one of which is needed for LocalStorage changes (QUOTA_EXCEEDED_ERR)
  • dom/ExceptionCode.cpp:
  • dom/ExceptionCode.h:
  • storage/StorageArea.cpp: (WebCore::StorageArea::internalSetItem): If private browsing is enabled, throw the QUOTA_EXCEEDED_ERR exception as the spec allows. (WebCore::StorageArea::internalRemoveItem): If private browsing is enabled, silently fail to remove the item. (WebCore::StorageArea::internalClear): If private browsing is enabled, silently fail to clear the area.

LayoutTests:

2009-04-07 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler

Tests for <rdar://problem/5968249> "Private Browsing" doesn't affect HTML 5 LocalStorage

  • storage/domstorage/localstorage/private-browsing-affects-storage-expected.txt: Added.
  • storage/domstorage/localstorage/private-browsing-affects-storage.html: Added.
  • storage/domstorage/sessionstorage/private-browsing-affects-storage-expected.txt: Added.
  • storage/domstorage/sessionstorage/private-browsing-affects-storage.html: Added.
17:18 Changeset [42301] by dino@apple.com
  • 8 edits in trunk/WebCore

2009-04-07 Dean Jackson <dino@apple.com>

Reviewed by Simon Fraser.

<rdar://problem/6148255>

Standalone media documents can not always handle everything
using a <video> element. In these cases switch to an <embed>
element that uses the QuickTime plugin, in the hope that it
will have more luck. Typical media types that trigger this
are streamed media and QTVR.

Equivalent Windows fix to come once reviewed. Note also that
this area of code needs a cleanup:
https://bugs.webkit.org/show_bug.cgi?id=25085

  • html/HTMLMediaElement.cpp: (WebCore::HTMLMediaElement::mediaPlayerSawUnsupportedTracks):
  • html/HTMLMediaElement.h:
  • loader/MediaDocument.cpp: (WebCore::MediaDocument::mediaElementSawUnsupportedTracks): (WebCore::MediaDocument::replaceVideoWithEmbed):
  • loader/MediaDocument.h:
    • removes the <video> element and puts in an <embed>
  • platform/graphics/MediaPlayer.h: (WebCore::MediaPlayerClient::mediaPlayerSawUnsupportedTracks):
    • new internal method for flagging a problem
  • platform/graphics/mac/MediaPlayerPrivateQTKit.h:
  • platform/graphics/mac/MediaPlayerPrivateQTKit.mm: (WebCore::MediaPlayerPrivate::MediaPlayerPrivate): (WebCore::MediaPlayerPrivate::updateStates):
    • looks for the types of content we don't handle

(WebCore::MediaPlayerPrivate::rateChanged):
(WebCore::MediaPlayerPrivate::sizeChanged):
(WebCore::MediaPlayerPrivate::timeChanged):
(WebCore::MediaPlayerPrivate::didEnd):
(WebCore::MediaPlayerPrivate::disableUnsupportedTracks):
(WebCore::MediaPlayerPrivate::sawUnsupportedTracks):

  • inform the MediaClient that we have a potential problem
17:00 Changeset [42300] by andersca@apple.com
  • 4 edits in trunk/WebKit/mac

2009-04-07 Anders Carlsson <andersca@apple.com>

Fix Tiger build for real this time.

  • Plugins/WebNetscapePluginView.h:
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView getVariable:forURL:value:length:]): (-[WebNetscapePluginView setVariable:forURL:value:length:]): (-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]):
  • Plugins/npapi.mm: (NPN_GetValueForURL): (NPN_SetValueForURL):
16:59 Changeset [42299] by mrowe@apple.com
  • 1 edit
    1 copy in trunk/WebKitTools

Helper script for uploading layout test results for display on build.webkit.org.

  • BuildSlaveSupport/test-result-archive: Copied from WebKitTools/BuildSlaveSupport/built-product-archive.
16:38 Changeset [42298] by mitz@apple.com
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.

  • fix <rdar://problem/6767428> Resurrect +[WebFontCache fontWithFamily:traits:size:] for clients that call it directly

WebFontCache is a class in the WebCore framework and is not WebKit API,
but apparently (perhaps mistakenly) some clients call this private
interface.

This change resurrects the interface and gives it reasonable behavior
(however, note that WebCore will not call the old interface, so hacks that
override it will have no effect on WebKit clients).

  • platform/mac/WebFontCache.h:
  • platform/mac/WebFontCache.mm: (+[WebFontCache fontWithFamily:traits:size:]): Added. Call through to +fontWithFamily:traits:weight:size:.
16:09 Changeset [42297] by hyatt@apple.com
  • 20 edits in trunk

WebCore:

2009-04-07 David Hyatt <hyatt@apple.com>

Reviewed by Adam Roben

Fix ScrollView's algorithm that determines whether or not to show scrollbars. There was a bug
with the method mainly because RenderView will size itself to the viewport's size, making it
impossible to really know the document's "true" size.

In order to solve this problem ScrollView now has a minimumContentsSize method. This method
returns the document size excluding the RenderView from the calculation. This width/height
is now cached on RenderView in m_docWidth/m_docHeight member variables.

  • WebCore.base.exp:
  • page/FrameView.cpp: (WebCore::FrameView::adjustPageHeight): (WebCore::FrameView::minimumContentsSize):
  • page/FrameView.h:
  • platform/ScrollView.cpp: (WebCore::ScrollView::updateScrollbars):
  • platform/ScrollView.h: (WebCore::ScrollView::minimumContentsSize):
  • rendering/RenderView.cpp: (WebCore::RenderView::layout): (WebCore::RenderView::calcDocHeight): (WebCore::RenderView::calcDocWidth):
  • rendering/RenderView.h: (WebCore::RenderView::docWidth): (WebCore::RenderView::docHeight):

WebKit/mac:

2009-04-07 David Hyatt <hyatt@apple.com>

Reviewed by Adam Roben

Mac portion of fix to make DumpRenderTree always produce accurate scrollbar results. Change
updateScrollers to call minimumContentsSize when a WebHTMLView is inside the WebDynamicScrollbarsView.

  • WebView/WebDynamicScrollBarsView.m: (-[WebDynamicScrollBarsView updateScrollers]):

LayoutTests:

2009-04-07 David Hyatt <hyatt@apple.com>

Reviewed by Adam Roben

Land updated layout test results now that DRT is doing the right thing
with scrollbar results.

  • platform/mac/css2.1/t0803-c5502-mrgn-r-02-c-expected.checksum:
  • platform/mac/css2.1/t0803-c5502-mrgn-r-02-c-expected.png:
  • platform/mac/css2.1/t0803-c5502-mrgn-r-02-c-expected.txt:
  • platform/mac/css2.1/t0803-c5505-mrgn-02-c-expected.checksum:
  • platform/mac/css2.1/t0803-c5505-mrgn-02-c-expected.png:
  • platform/mac/css2.1/t0803-c5505-mrgn-02-c-expected.txt:
  • platform/mac/fast/block/float/013-expected.checksum:
  • platform/mac/fast/block/float/013-expected.png:
  • platform/mac/fast/block/float/013-expected.txt:
15:56 Changeset [42296] by dglazkov@chromium.org
  • 2 edits in trunk/WebCore

2009-04-07 Dimitri Glazkov <dglazkov@chromium.org>

Build fix, not reviewed.

  • WebCore.xcodeproj/project.pbxproj: Made ScriptObject.h private.
15:37 Changeset [42295] by dglazkov@chromium.org
  • 15 edits
    1 copy in trunk/WebCore

2009-04-07 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Timothy Hatcher.

https://bugs.webkit.org/show_bug.cgi?id=25063
Refactor InspectorController to use ScriptObject/State.

  • GNUmakefile.am: Added ScriptState.cpp.
  • WebCore.pro: Ditto.
  • WebCore.vcproj/WebCore.vcproj: Ditto.
  • WebCore.xcodeproj/project.pbxproj: Ditto.
  • WebCoreSources.bkl: Ditto.
  • bindings/js/JSInspectorControllerCustom.cpp: (WebCore::JSInspectorController::addSourceToFrame): Fixed argument index typo.
  • bindings/js/ScriptFunctionCall.cpp: (WebCore::ScriptFunctionCall::call): Added reportExceptions parameter. (WebCore::ScriptFunctionCall::construct): Ditto.
  • bindings/js/ScriptFunctionCall.h: Ditto.
  • bindings/js/ScriptObject.cpp: (WebCore::handleException): Added exception-reporting heloper. (WebCore::ScriptObject::set): Changed to use handleException. (WebCore::ScriptGlobalObject::set): Ditto,
  • bindings/js/ScriptObject.cpp: Added ScriptGlobalObject. (WebCore::ScriptGlobalObject::set): Added. (WebCore::ScriptGlobalObject::getObject): Added.
  • bindings/js/ScriptObject.h: Added ScriptGlobalObject decls. (WebCore::ScriptGlobalObject::ScriptGlobalObject): Added.
  • bindings/js/ScriptState.cpp: Added.
  • bindings/js/ScriptState.h: Added scriptStateFromPage decl.
  • inspector/ConsoleMessage.cpp: (WebCore::ConsoleMessage::addToConsole): Changed to not report exceptions

to avoid re-entrancy.

  • inspector/InspectorController.cpp: Refactored to use ScriptState/Object.
  • inspector/InspectorController.h: Ditto.
15:30 Changeset [42294] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-04-07 Adam Langley <agl@google.com>

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=25083

Skia was previously calculating the leading value incorrectly, leading
us to add fHeight to get the height of a line of text. Now that Skia
is calculating fLeading correctly, we can remove fHeight.

This doesn't affect any layout tests.

  • platform/graphics/chromium/SimpleFontDataLinux.cpp: (WebCore::SimpleFontData::platformInit):
15:27 Changeset [42293] by aroben@apple.com
  • 4 edits in trunk

WebCore:

2009-04-07 Brian Weinstein <bweinstein@gmail.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=24851

This fix removes the status code from the status message in a ResourceResponse, which allows a few more tests in http to pass.

  • platform/network/cf/ResourceResponseCFNet.cpp: (WebCore::ResourceResponse::platformLazyInit):

LayoutTests:

2009-04-07 Brian Weinstein <bweinstein@gmail.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=24851

Tests in http/tests/xmlhttprequest/web-apps were taking results from
platform/mac instead of LayoutTests, so added the values from LayoutTests
into platform/win, and removed a few tests from the skip list that are fixed
by the fix to platform/network/cf/ResourceResponseCFNet.cpp

  • platform/win/Skipped:
  • platform/win/http: Added.
  • platform/win/http/tests: Added.
  • platform/win/http/tests/xmlhttprequest: Added.
  • platform/win/http/tests/xmlhttprequest/web-apps: Added.
  • platform/win/http/tests/xmlhttprequest/web-apps/012-expected.txt: Copied from LayoutTests/http/tests/xmlhttprequest/web-apps/012-expected.txt.
  • platform/win/http/tests/xmlhttprequest/web-apps/013-expected.txt: Copied from LayoutTests/http/tests/xmlhttprequest/web-apps/013-expected.txt.
15:23 Changeset [42292] by aroben@apple.com
  • 2 edits in trunk/WebKitTools

2009-04-11 Brian Weinstein <bweinstein@gmail.com>

Reviewed by Darin Adler.

https://bugs.webkit.org/show_bug.cgi?id=24908

Allows timeout to be set in run-webkit-tests as a command line argument.

  • Scripts/run-webkit-tests:
15:06 Changeset [42291] by simon.fraser@apple.com
  • 5 edits in trunk/WebCore

2009-04-07 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dan Bernstein

https://bugs.webkit.org/show_bug.cgi?id=25082

Clean up repaint logic when RenderLayers become and stop being composited.

  • rendering/RenderLayer.h:
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::rendererContentChanged): (WebCore::RenderLayer::repaintIncludingNonCompositingDescendants): New compositing-only method that repaints a layer and all its non-composited descendants. Takes a repaintContainer for performance; all the repaints necessarily share the same repaintContainer.
  • rendering/RenderLayerCompositor.h:
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::updateLayerCompositingState): Rather than use calculateCompositedBounds() to compute the repaint rect (which gave the wrong answer when the composited layer tree was in flux), use the new repaintOnCompositingChange() method.

(WebCore::RenderLayerCompositor::repaintOnCompositingChange):
Call repaintIncludingNonCompositingDescendants(), and if necessary make sure
that the view/layer drawing synchronization happens.

(WebCore::RenderLayerCompositor::computeCompositingRequirements):
Do a repaintOnCompositingChange() when a layer is going to be composited. This is
a good place because we haven't started to change the compositing tree.

(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
After we've finished updating all the descendant layers, we can do a repaint for
layers that ceased compositing.

15:04 Changeset [42290] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-04-07 Adam Langley <agl@google.com>

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=25081

Skia is changing from reporting the XRange to reporting the XMin and
XMax. Obviously these are equivalent, but other users of the metrics
need the two numbers to be separate.

This doesn't affect any layout tests.

  • platform/graphics/chromium/SimpleFontDataLinux.cpp: (WebCore::SimpleFontData::platformInit):
14:53 Changeset [42289] by aroben@apple.com
  • 2 edits in trunk/WebCore

Make the look of <select>s match the system look on Vista

Reviewed by Dave Hyatt.

  • rendering/RenderThemeWin.cpp: Added new constants. (WebCore::RenderThemeWin::getThemeData): On Vista, use the CP_DROPDOWNBUTTONRIGHT part for drop down buttons. (WebCore::RenderThemeWin::paintMenuList): On Vista, use the CP_BORDER part to draw the border of <select>s. (WebCore::RenderThemeWin::paintMenuListButton): On Vista, outset the drop down button to make its border coincide with the <select>'s border.
14:53 Changeset [42288] by aroben@apple.com
  • 3 edits
    2 adds in trunk/WebCore

Move isRunningOnVistaOrLater to a shared location

Rubber-stamped in advance by Dave Hyatt.

  • WebCore.vcproj/WebCore.vcproj: Added SystemInfo.{cpp,h}, and let VS have its way with the rest of the file.
  • platform/win/ScrollbarThemeWin.cpp: Moved isRunningOnVistaOrLater from here...
  • platform/win/SystemInfo.cpp: Added. (WebCore::isRunningOnVistaOrLater): ...to here.
  • platform/win/SystemInfo.h: Added.
14:42 Changeset [42287] by dglazkov@chromium.org
  • 4 edits in trunk/WebCore

2009-04-07 Paul Godavari <paul@chromium.org>

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=24692
Enable PopupMenuChromium to handle HTML select popups using native
cocoa controls on the Mac, all other platforms are unchanged.

We also split out the storage container for the popup menu items
so that ChromeClientChromium can access them for forwarding to
the embedding host (Chromium.app or test_shell).

  • page/chromium/ChromeClientChromium.h:
  • platform/chromium/PopupMenuChromium.cpp: (WebCore::PopupListBox::items): (WebCore::PopupContainer::PopupContainer): (WebCore::PopupContainer::~PopupContainer): (WebCore::PopupContainer::showPopup): (WebCore::PopupContainer::showExternal): (WebCore::PopupContainer::menuItemHeight): (WebCore::popupData): (WebCore::PopupListBox::pointToRowIndex): (WebCore::PopupListBox::getRowBounds): (WebCore::PopupListBox::isSelectableItem): (WebCore::PopupListBox::updateFromElement): (WebCore::PopupListBox::layout): (WebCore::PopupListBox::clear): (WebCore::PopupMenu::show):
  • platform/chromium/PopupMenuChromium.h: (WebCore::PopupItem::): (WebCore::PopupItem::PopupItem):
14:28 Changeset [42286] by ggaren@apple.com
  • 13 edits in trunk/WebCore

2009-04-07 Geoffrey Garen <ggaren@apple.com>

Reviewed by Oliver Hunt.


Added some double-checking to event handler marking. Now, when the
wrapper that's responsible for marking an event handler's JavaScript
function gets collected, it clears the event handler's JavaScript function
so we won't dereference it after it's collected.


In theory, we would never dereference a JavaScript event handler after
its node's wrapper was collected anyway, but it's nice to be safe.

  • bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::mark):
  • bindings/js/JSEventListener.cpp: (WebCore::JSEventListener::JSEventListener): (WebCore::JSEventListener::jsFunction): (WebCore::JSEventListener::invalidateJSFunction): (WebCore::JSEventListener::markJSFunction):
  • bindings/js/JSEventListener.h:
  • bindings/js/JSMessagePortCustom.cpp: (WebCore::JSMessagePort::mark):
  • bindings/js/JSNodeCustom.cpp: (WebCore::markEventListeners):
  • bindings/js/JSWorkerContextCustom.cpp: (WebCore::JSWorkerContext::mark):
  • bindings/js/JSWorkerCustom.cpp: (WebCore::JSWorker::mark):
  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::mark):
  • bindings/js/JSXMLHttpRequestUploadCustom.cpp: (WebCore::JSXMLHttpRequestUpload::mark):
  • bindings/scripts/CodeGeneratorJS.pm:
  • dom/EventListener.h: (WebCore::EventListener::invalidateJSFunction): (WebCore::EventListener::markJSFunction): (WebCore::markIfNotNull):
14:27 Changeset [42285] by kov@webkit.org
  • 3 edits in trunk/WebKit/mac

2009-04-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Reviewed by Anders Carlsson.

Trying to fix Tiger build.

  • Plugins/WebNetscapePluginView.h:
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]):
14:19 Changeset [42284] by andersca@apple.com
  • 6 edits in trunk/WebKit

WebKit:

2009-04-07 Anders Carlsson <andersca@apple.com>

Try to fix the Leopard build once more.

  • WebKit.xcodeproj/project.pbxproj:

WebKit/mac:

2009-04-07 Anders Carlsson <andersca@apple.com>

Try to fix the Leopard build once more.


  • Plugins/WebBaseNetscapePluginView.h:
  • Plugins/WebBaseNetscapePluginView.mm:
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView getVariable:forURL:value:length:]):
14:15 Changeset [42283] by levin@chromium.org
  • 2 edits in trunk/WebCore

2009-04-07 David Levin <levin@chromium.org>

Build fix.

r44280 undid the change in r42268 that made CookieJar.h private.
This redoes the change.

  • WebCore.xcodeproj/project.pbxproj:
14:15 Changeset [42282] by levin@chromium.org
  • 4 edits in trunk/JavaScriptCore

2009-04-07 David Levin <levin@chromium.org>

Reviewed by Sam Weinig and Geoff Garen.

https://bugs.webkit.org/show_bug.cgi?id=25039
UString refactoring to support UChar* sharing.

No change in sunspider perf.

  • runtime/SmallStrings.cpp: (JSC::SmallStringsStorage::SmallStringsStorage):
  • runtime/UString.cpp: (JSC::initializeStaticBaseString): (JSC::initializeUString): (JSC::UString::BaseString::isShared): Encapsulate the meaning behind the refcount == 1 checks because this needs to do slightly more when sharing is added. (JSC::concatenate): (JSC::UString::append): (JSC::UString::operator=):
  • runtime/UString.h: Make m_baseString part of a union to get rid of casts, but make it protected because it is tricky to use it correctly since it is only valid when the Rep is not a BaseString. The void* will be filled in when sharing is added.

Add constructors due to the making members protected and it make ensuring proper
initialization work better (like in SmallStringsStorage).
(JSC::UString::Rep::create):
(JSC::UString::Rep::Rep):
(JSC::UString::Rep::):
(JSC::UString::BaseString::BaseString):
(JSC::UString::Rep::setBaseString):
(JSC::UString::Rep::baseString):

14:15 Changeset [42281] by levin@chromium.org
  • 2 edits in trunk/WebCore

2009-04-07 Jian Li <jianli@chromium.org>

Reviewed by Darin Fisher.

Upstream changes to WorkerContextExecutionProxy for enabling V8 preemption.
https://bugs.webkit.org/show_bug.cgi?id=25034

  • bindings/v8/WorkerContextExecutionProxy.cpp: (WebCore::WorkerContextExecutionProxy::evaluate):
13:03 Changeset [42280] by mitz@apple.com
  • 4 edits
    2 adds in trunk

WebCore:

Reviewed by Darin Adler.

  • fix <rdar://problem/6764359> Thai word selection misbehaves for the last sentence in the document

Test: editing/selection/thai-word-at-document-end.html

  • editing/visible_units.cpp:
    • Added a BoundarySearchContextAvailability enum used to indicate whether the caller to a boundary search function may be able to provide additional text in the search direction and call again.
    • Added a named type for the boundary search function signature. Changed the signature to take a context availability parameter and a boolean out parameter indicating whether more context is needed to perform the search.

(WebCore::previousBoundary): If the beginning of the range was reached

but the last search wanted more context, perform the search again, this
time indicating that there is no earlier text.

(WebCore::nextBoundary): Similarly, in the other direction.
(WebCore::startWordBoundary): Check whether more context may be available

and ask for more context if needed.

(WebCore::endWordBoundary): Ditto.
(WebCore::previousWordPositionBoundary): Ditto.
(WebCore::nextWordPositionBoundary): Ditto.
(WebCore::startSentenceBoundary): Updated signature.
(WebCore::endSentenceBoundary): Ditto.
(WebCore::previousSentencePositionBoundary): Ditto.
(WebCore::nextSentencePositionBoundary): Ditto.

LayoutTests:

Reviewed by Darin Adler.

  • test for <rdar://problem/6764359> Thai word selection misbehaves for the last sentence in the document
  • editing/selection/thai-word-at-document-end-expected.txt: Added.
  • editing/selection/thai-word-at-document-end.html: Added.
12:51 Changeset [42279] by ggaren@apple.com
  • 7 edits in trunk/WebCore

2009-04-07 Geoffrey Garen <ggaren@apple.com>

Rubber stamped by Sam Weinig.


A little renaming:


function => jsFunction
listener => jsFunction

  • bindings/js/JSEventListener.cpp: (WebCore::JSAbstractEventListener::handleEvent): (WebCore::JSEventListener::JSEventListener): (WebCore::JSEventListener::~JSEventListener): (WebCore::JSEventListener::jsFunction): (WebCore::JSEventListener::mark): (WebCore::JSProtectedEventListener::JSProtectedEventListener): (WebCore::JSProtectedEventListener::~JSProtectedEventListener): (WebCore::JSProtectedEventListener::jsFunction):
  • bindings/js/JSEventListener.h: (WebCore::JSProtectedEventListener::create):
  • bindings/js/JSLazyEventListener.cpp: (WebCore::JSLazyEventListener::jsFunction): (WebCore::JSLazyEventListener::parseCode):
  • dom/EventListener.h: (WebCore::EventListener::jsFunction):
12:49 Changeset [42278] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2009-04-07 Anders Carlsson <andersca@apple.com>

...and try to fix the Leopard build.


  • Plugins/npapi.mm: (NPN_GetAuthenticationInfo):
12:47 Changeset [42277] by beidson@apple.com
  • 3 edits in trunk/WebCore

2009-04-07 Brady Eidson <beidson@apple.com>

Reviewed by Darin Adler

While working on <rdar://problem/5968249>, noticed some glaring problems with LocalStorage.

  • page/DOMWindow.cpp: (WebCore::DOMWindow::localStorage): Return the cached m_localStorage object if it exists to avoid creating multiple representations for the same underlying StorageArea.
  • page/DOMWindow.h: (WebCore::DOMWindow::optionalLocalStorage): Return m_localStorage, not m_sessionStorage.
12:38 Changeset [42276] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-04-07 Darin Adler <darin@apple.com>

Roll out incorrect build fix.

  • WebCore.NPAPI.exp: Reverted.
12:33 Changeset [42275] by darin@apple.com
  • 2 edits in trunk/WebCore

2009-04-07 Darin Adler <darin@apple.com>

Another build fix.

  • WebCore.NPAPI.exp: Added new functions.
12:14 Changeset [42274] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-04-07 Anders Carlsson <andersca@apple.com>

Another build fix.


  • plugins/npfunctions.h:
11:28 Changeset [42273] by kov@webkit.org
  • 2 edits in trunk/WebCore

2009-04-07 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Unreviewed build fix. Fix non-Mac builds.

  • bridge/npapi.h:
10:57 Changeset [42272] by andersca@apple.com
  • 2 edits in trunk/WebKit/mac

2009-04-07 Anders Carlsson <andersca@apple.com>

Try to fix the Tiger build.

  • Plugins/WebBaseNetscapePluginView.mm:
10:45 Changeset [42271] by simon.fraser@apple.com
  • 8 edits in trunk/WebCore

2009-04-07 Simon Fraser <simon.fraser@apple.com>

Reviewed by Dave Hyatt

https://bugs.webkit.org/show_bug.cgi?id=25069

Clean up the accelerated compositing code that determines the format of
the GraphicsLayer hierarchy, being more explicit about which parts have
to happen before and after descendant layers have been updated. Also remove
some unhelpful caching of state.

  • dom/Document.cpp: (WebCore::Document::recalcStyle): Only call updateCompositingLayers() if we know we're not going to be doing a layout soon.
  • platform/graphics/mac/GraphicsLayerCA.mm: (WebCore::GraphicsLayerCA::setDrawsContent): Toggling drawsContent from false to true should do a setNeedsDisplay().
  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::styleChanged): updateLayerCompositingState() no longer updates the layer geometry, so do that here if we're not going to rebuild layers anyway. Also, updateLayerCompositingState() no longer does a setContentsNeedDisplay, so do that if the style change indicates that a repaint is required.
  • rendering/RenderLayerBacking.h:
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::RenderLayerBacking): (WebCore::RenderLayerBacking::updateAfterLayout): The 'drawing optimizations' logic has been rolled into updateGraphicsLayerConfiguration() and updateGraphicsLayerGeometry().

(WebCore::RenderLayerBacking::updateGraphicsLayerConfiguration):
Group that code that decides what GraphicsLayers are needed into this method,
which deals with clipping layers and 'direct compositing': images that can be
rendered via the compositor.

(WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
Call setDrawsContent() if updateGraphicsLayerConfiguration() didn't already
figure it out for image layers.

(WebCore::RenderLayerBacking::isSimpleContainerCompositingLayer):
Remove the m_simpleCompositingLayerStatusDirty cache indicator, since we just
computed it every time anyway.

  • rendering/RenderLayerCompositor.h:
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::updateLayerCompositingState): updateGraphicsLayers() was renamed to updateGraphicsLayerConfiguration(), which calls clippedByAncestor() etc. itself rather than having everything passed in. Repaints are taken care of by styleChanged() and setDrawsContent().

(WebCore::RenderLayerCompositor::calculateCompositedBounds):
!layer->isComposited() && layer->transform() is a synonym for paintsWithTransform().

(WebCore::RenderLayerCompositor::setCompositingParent):
No need to call updateGraphicsLayerGeometry() here, because we're going to
rebuild layers anyway.

(WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
Add comments, and test layerBacking instead of layer->isComposited().

10:41 Changeset [42270] by andersca@apple.com
  • 2 edits in trunk/WebKit

2009-04-07 Anders Carlsson <andersca@apple.com>

Another attempt at fixing the build.


  • WebKit.xcodeproj/project.pbxproj:
10:33 Changeset [42269] by andersca@apple.com
  • 2 edits in trunk/WebCore

2009-04-07 Anders Carlsson <andersca@apple.com>

Fix build.


  • WebCore.base.exp:
10:22 Changeset [42268] by andersca@apple.com
  • 16 edits in trunk

WebCore:

2009-04-07 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

<rdar://problem/6667001> NPAPI: need NPN_Get/SetValueForURL() and NPN_GetAuthenticationInfo()


  • WebCore.base.exp: Add symbols needed by WebKit.


  • WebCore.xcodeproj/project.pbxproj: Make CookieJar a private header.


  • bridge/npapi.h: Add function definitions.


  • plugins/npfunctions.h: Fix the NPN_SetValueForURLProcPtr signature.

WebKit/mac:

2009-04-07 Anders Carlsson <andersca@apple.com>

Reviewed by Sam Weinig.

<rdar://problem/6667001>
NPAPI: need NPN_Get/SetValueForURL() and NPN_GetAuthenticationInfo()


  • Plugins/Hosted/NetscapePluginHostProxy.mm: (WKPCGetCookies): (WKPCGetProxy): (WKPCSetCookies): (WKPCGetAuthenticationInfo): New MIG functions to be used by the plug-in host.


  • Plugins/Hosted/NetscapePluginInstanceProxy.h:
  • Plugins/Hosted/NetscapePluginInstanceProxy.mm: (WebKit::NetscapePluginInstanceProxy::getCookies): (WebKit::NetscapePluginInstanceProxy::setCookies): (WebKit::NetscapePluginInstanceProxy::getProxy): (WebKit::NetscapePluginInstanceProxy::getAuthenticationInfo): Implement these.


  • Plugins/Hosted/WebKitPluginClient.defs: Add callbacks.


  • Plugins/WebBaseNetscapePluginView.h:
  • Plugins/WebBaseNetscapePluginView.mm: (-[WebBaseNetscapePluginView URLWithCString:]): Factor this out of URLWithCString.


(-[WebBaseNetscapePluginView requestWithURLCString:]):
Call URLWithCString.


(WebKit::proxiesForURL):
Return a string representation of proxies for a given URL.


(WebKit::getAuthenticationInfo):
Get the authentication info for a given host/protocol/scheme/realm/port combination.


  • Plugins/WebNetscapePluginPackage.mm: (-[WebNetscapePluginPackage _tryLoad]): Initialize the new vtable functions.


  • Plugins/WebNetscapePluginView.h:
  • Plugins/WebNetscapePluginView.mm: (-[WebNetscapePluginView getVariable:forURL:value:length:]): (-[WebNetscapePluginView setVariable:forURL:value:length:]): (-[WebNetscapePluginView getAuthenticationInfoWithProtocol:host:port:scheme:realm:username:usernameLength:password:passwordLength:]): Implement these.


  • Plugins/npapi.mm: (NPN_GetValueForURL): (NPN_SetValueForURL): (NPN_GetAuthenticationInfo): Call the plug-in view functions.
10:13 Changeset [42267] by aroben@apple.com
  • 2 edits in trunk/WebCore

Fix <rdar://6520933> REGRESSION (3.2.1-ToT): Scroll bar disappears in WebView and Bookmarks view after switching theme or turning on High Contrast mode

Reviewed by Dave Hyatt.

  • platform/win/ScrollbarThemeWin.cpp: (WebCore::ScrollbarThemeWin::themeChanged): Null out scrollbarTheme after closing it so that we'll re-open the theme next time we paint.
10:12 Changeset [42266] by aroben@apple.com
  • 2 edits in trunk/WebCore

Small cleanup/correctness fix in ScrollbarThemeWin

Reviewed by Dave Hyatt.

  • platform/win/ScrollbarThemeWin.cpp: Removed the now-unused haveTheme boolean. (WebCore::checkAndInitScrollbarTheme): Check IsThemeActive() before calling OpenThemeData. This seems to be what MSDN recommends. (WebCore::ScrollbarThemeWin::themeChanged): Null-check scrollbarTheme before closing it, rather than indirectly null-checking it via checking haveTheme.
10:08 Changeset [42265] by mitz@apple.com
  • 6 edits
    2 adds in trunk

WebCore:

Reviewed by John Sullivan.

  • when -webkit-line-break: after-white-space is specified but the text does not auto-wrap, do not shrink the trailing space to fit in the available width

Test: fast/text/whitespace/nowrap-line-break-after-white-space.html

  • when shrinking such trailing space, do not shrink below zero

Covered by existing tests

  • rendering/bidi.cpp: (WebCore::RenderBlock::computeHorizontalPositionsForLine): (WebCore::RenderBlock::layoutInlineChildren):

LayoutTests:

Reviewed by John Sullivan.

  • test that when -webkit-line-break: after-white-space is combined with white-space: nowrap, the trailing space is not shrunk to fit the in the available width
  • updates results for that and for not shrinking trailing space to less than zero
  • fast/text/whitespace/nowrap-line-break-after-white-space-expected.txt: Added.
  • fast/text/whitespace/nowrap-line-break-after-white-space.html: Added.
  • platform/mac/fast/block/float/editable-text-overlapping-float-expected.txt:
  • platform/mac/fast/inline/long-wrapped-line-expected.txt:
  • platform/mac/fast/text/whitespace/tab-character-basics-expected.txt:
07:25 Changeset [42264] by eric@webkit.org
  • 5 edits in trunk/WebCore

Reviewed by Darin Adler.

Move RangeBoundaryPoint off of Position, per Darin's suggestion
https://bugs.webkit.org/show_bug.cgi?id=24966

Rename setToChild to setToBeforeChild (since that's what the method does)

  • dom/Position.h: (WebCore::Position::offsetInContainerNode):
  • dom/Range.cpp: (WebCore::Range::insertNode): (WebCore::Range::selectNodeContents): (WebCore::boundaryNodeWillBeRemoved):
  • dom/Range.h: (WebCore::Range::startPosition): (WebCore::Range::endPosition):
  • dom/RangeBoundaryPoint.h: (WebCore::RangeBoundaryPoint::RangeBoundaryPoint): (WebCore::RangeBoundaryPoint::container): (WebCore::RangeBoundaryPoint::childBefore): (WebCore::RangeBoundaryPoint::position): (WebCore::RangeBoundaryPoint::offset): (WebCore::RangeBoundaryPoint::clear): (WebCore::RangeBoundaryPoint::set): (WebCore::RangeBoundaryPoint::setOffset): (WebCore::RangeBoundaryPoint::setToBeforeChild): (WebCore::RangeBoundaryPoint::setToStartOfNode): (WebCore::RangeBoundaryPoint::setToEndOfNode): (WebCore::RangeBoundaryPoint::childBeforeWillBeRemoved): (WebCore::RangeBoundaryPoint::invalidateOffset):
07:25 Changeset [42263] by eric@webkit.org
  • 3 edits in trunk/WebCore

Reviewed by Darin Adler.

Add containerNode(), computeOffsetInContainerNode(),
computeNodeBeforePosition() and computeNodeAfterPosition().
https://bugs.webkit.org/show_bug.cgi?id=24763

These functions will replace uses of rangeCompliantPosition()
in future patches.

No changes in behavior, thus no tests.

  • dom/Position.cpp: (WebCore::Position::containerNode): (WebCore::Position::computeOffsetInContainerNode): (WebCore::Position::computeNodeBeforePosition): (WebCore::Position::computeNodeAfterPosition): (WebCore::Position::anchorType):
  • dom/Position.h: (WebCore::Position::):
04:48 Changeset [42262] by xan@webkit.org
  • 2 edits in trunk/JavaScriptCore

2009-04-04 Xan Lopez <xlopez@igalia.com>

Reviewed by Alexey Proskuryakov.

https://bugs.webkit.org/show_bug.cgi?id=25033
dtoa.cpp segfaults with g++ 4.4.0

g++ 4.4.0 seems to be more strict about aliasing rules, so it
produces incorrect code if dtoa.cpp is compiled with
-fstrict-aliasing (it also emits a ton of warnings, so fair enough
I guess). The problem was that we were only casting variables to
union types in order to do type punning, but GCC and the C
standard require that we actually use a union to store the value.

This patch does just that, the code is mostly copied from the dtoa
version in GCC:
http://gcc.gnu.org/viewcvs/trunk/libjava/classpath/native/fdlibm/dtoa.c?view=markup.

  • wtf/dtoa.cpp: (WTF::ulp): (WTF::b2d): (WTF::ratio): (WTF::hexnan): (WTF::strtod): (WTF::dtoa):

04/06/09:

16:43 Changeset [42261] by weinig@apple.com
  • 5 edits in trunk/WebCore

2009-04-06 Sam Weinig <sam@webkit.org>

Reviewed by Mark Rowe.

Bottleneck dispatching mutation events in a new dispatchMutationEvent
function.

  • dom/CharacterData.cpp: (WebCore::CharacterData::dispatchModifiedEvent):
  • dom/ContainerNode.cpp: (WebCore::dispatchChildInsertionEvents): (WebCore::dispatchChildRemovalEvents):
  • dom/Node.cpp: (WebCore::Node::dispatchSubtreeModifiedEvent): (WebCore::Node::dispatchMutationEvent):
  • dom/Node.h:
16:11 Changeset [42260] by dglazkov@chromium.org
  • 9 edits in trunk/WebCore

2009-04-06 Dimitri Glazkov <dglazkov@chromium.org>

Reviewed by Darin Fisher.

https://bugs.webkit.org/show_bug.cgi?id=25059
Remove references to dominantScript, getGenericFontForScript.

  • platform/graphics/chromium/FontCacheChromiumWin.cpp: Removed references

to getGenericFontForScript.

(WebCore::FontCache::getLastResortFallbackFont): Removed calls to dominantScript.

  • platform/graphics/chromium/FontCacheLinux.cpp: Ditto.
  • rendering/RenderThemeChromiumLinux.cpp: (WebCore::defaultGUIFont): Removed Document* arg. (WebCore::RenderThemeChromiumLinux::systemFont): Ditto.
  • rendering/RenderThemeChromiumLinux.h: Ditto.
  • rendering/RenderThemeChromiumMac.h: Ditto.
  • rendering/RenderThemeChromiumMac.mm: Ditto. (WebCore::RenderThemeChromiumMac::systemFont): Ditto.
  • rendering/RenderThemeChromiumWin.cpp: (WebCore::defaultGUIFont): Ditto. (WebCore::RenderThemeChromiumWin::systemFont): Ditto.
  • rendering/RenderThemeChromiumWin.h: Ditto.
16:04 Changeset [42259] by mrowe@apple.com
  • 4 edits in trunk

Versioning.

16:02 Changeset [42258] by mrowe@apple.com
  • 1 copy in tags/Safari-6530.5

New tag.

15:42 Changeset [42257] by christian@webkit.org
  • 1 edit
    1 add in trunk/WebKit/gtk/po

2009-04-06 Christian Dywan <christian@twotoasts.de>

Rubber-stamped by Oliver Hunt.

  • de.po: Added German translation for WebKitGTK+.
14:56 Changeset [42256] by ggaren@apple.com
  • 4 edits in trunk/WebCore

2009-04-06 Geoffrey Garen <ggaren@apple.com>

Reviewed by Darin Adler.


Fixed https://bugs.webkit.org/show_bug.cgi?id=21260
Unbounded memory growth when churning elements with anonymous event handler functions

The problem was that a protected event listener's scope chain would end
up with a reference to the Node protecting it, causing a cycle. The
solution is to stop protecting event listeners and rely on marking instead.

This patch converts most Node event listeners to use marking instead of
GC protection.

  • bindings/js/JSDOMBinding.cpp: (WebCore::isObservableThroughDOM): (WebCore::markDOMNodesForDocument): Refactored the test for whether a Node needs marking, and added a case for marking the node in order to mark its event listeners.
  • bindings/js/JSNodeCustom.cpp: (WebCore::markEventListeners): (WebCore::JSNode::addEventListener): (WebCore::JSNode::removeEventListener): (WebCore::JSNode::mark): Added code to mark a Node's event listeners when marking the Node. Changed code using protected event listeners to use event listeners.
  • dom/Node.idl: Changed code using protected event listeners to use event listeners.
13:58 Changeset [42255] by weinig@apple.com
  • 3 edits in trunk/WebCore

2009-04-06 Sam Weinig <sam@webkit.org>

Reviewed by Darin Adler.

Remove unchecked bool return values for some dispatch event functions.

  • dom/Node.cpp: (WebCore::Node::dispatchSubtreeModifiedEvent): (WebCore::Node::dispatchUIEvent): (WebCore::Node::dispatchWebKitAnimationEvent): (WebCore::Node::dispatchWebKitTransitionEvent): (WebCore::Node::dispatchProgressEvent):
  • dom/Node.h:
13:48 Changeset [42254] by darin@chromium.org
  • 3 edits in trunk/WebCore

2009-04-06 Darin Fisher <darin@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25058
Fix chromium build bustage caused by r42216

  • bindings/scripts/CodeGeneratorJS.pm:
  • page/DOMWindow.idl:
12:48 Changeset [42253] by dglazkov@chromium.org
  • 2 edits in trunk/LayoutTests

2009-04-06 Dimitri Glazkov <dglazkov@chromium.org>

Not reviewed because it's stupidly obvious.

Correct the expected result by adding an extra line break.

  • fast/dom/HTMLSelectElement/length-not-overridden-expected.txt: Added

an extra line.

12:39 Changeset [42252] by kov@webkit.org
  • 1 edit
    1 add in trunk/WebKit/gtk/po

2009-04-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Sam Weinig.

  • pt_BR.po: Added Brazilian Portuguese translation for WebKitGTK+.
12:39 Changeset [42251] by kov@webkit.org
  • 12 edits
    6 adds in trunk

2009-04-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Sam Weinig.

Added rules to maintain the localization support. We cannot simply
use whatever gettextize gives us because our build system is
non-recursive.

  • GNUmakefile.am:
  • configure.ac:

WebCore/

2009-04-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=20575
No localization in WebKitGtk

  • platform/gtk/FileChooserGtk.cpp: Remove usage of glib/gi18n.h, since there are not translatable strings.
  • platform/gtk/LocalizedStringsGtk.cpp: Use the glib i18n header that is specific for libraries.

WebKit/gtk/

2009-04-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Sam Weinig.

https://bugs.webkit.org/show_bug.cgi?id=20575
No localization in WebKitGtk

Implemented localization support for WebKitGTK+.

  • WebCoreSupport/ChromeClientGtk.cpp:
  • WebCoreSupport/ContextMenuClientGtk.cpp:
  • po/POTFILES: Added.
  • po/README: Added.
  • po/webkit.pot: Added.
  • webkit/webkitdownload.cpp: (_WebKitDownloadPrivate::webkit_download_class_init):
  • webkit/webkitprivate.cpp: (webkit_init):
  • webkit/webkitwebframe.cpp:

WebKit/gtk/po/

2009-04-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Sam Weinig.

  • GNUmakefile.am, POTFILES, webkit.pot: Initial setup of the localization infra-structure.
11:41 Changeset [42250] by darin@chromium.org
  • 2 edits in trunk/WebCore

Revert r42249 to fix the build.

11:23 Changeset [42249] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-04-06 Darin Fisher <darin@chromium.org>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25058
Fix chromium build bustage caused by r42216

  • page/DOMWindow.idl:
11:08 Changeset [42248] by dglazkov@chromium.org
  • 3 edits in trunk/WebCore

2009-04-06 Mike Belshe <mike@belshe.com>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=24978
Use custom implementations of a few Node methods so that
we don't over-aggressively create JS wrappers here.

  • bindings/v8/custom/V8NodeCustom.cpp: Added custom implementations.
  • dom/Node.idl: Removed JSC-specifier, making impl custom for V8 as well.
11:01 Changeset [42247] by dglazkov@chromium.org
  • 3 edits
    2 adds in trunk

WebCore:

2009-04-06 Dave Moore <davemoore@google.com>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25031
Make the V8 element collections check for named properties *before*
checking if there are any elements with the same name. Otherwise
it is both incorrect and slow.

Test: fast/dom/HTMLSelectElement/length-not-overridden.html

Both of these interceptors were attempting to find an element in the
collection that had a name or id of the property name before checking
for a JS property with that name.

  • bindings/v8/V8Collection.h: (WebCore::collectionNamedPropertyGetter): (WebCore::nodeCollectionNamedPropertyGetter):

LayoutTests:

2009-04-06 Dave Moore <davemoore@google.com>

Reviewed by Dimitri Glazkov.

https://bugs.webkit.org/show_bug.cgi?id=25031
Test for ensuring that named elements don't override properties on collections

  • fast/dom/HTMLSelectElement/length-not-overridden-expected.txt: Added.
  • fast/dom/HTMLSelectElement/length-not-overridden.html: Added.
10:51 Changeset [42246] by simon.fraser@apple.com
  • 5 edits
    4 adds in trunk

2009-04-06 Simon Fraser <simon.fraser@apple.com>

Reviewed by Darin Adler

https://bugs.webkit.org/show_bug.cgi?id=25052

Pull the call to updateGraphicsLayerGeometry() out of updateGraphicsLayers(),
because we need to call it at the end of rebuildCompositingLayerTree() once
we've determined which descendant layers are composited, otherwise
calculateCompositedBounds() can give the wrong answer.

Now that updateLayerCompositingState() doesn't end up calling updateGraphicsLayerGeometry(),
call that explicitly from styleChanged(), if we know a layer update is not pending,
and similarly from updateAfterLayout().

Test: compositing/overflow/overflow-positioning.html

  • rendering/RenderLayer.cpp: (WebCore::RenderLayer::styleChanged):
  • rendering/RenderLayerBacking.cpp: (WebCore::RenderLayerBacking::updateAfterLayout): (WebCore::RenderLayerBacking::updateGraphicsLayers): (WebCore::RenderLayerBacking::updateGraphicsLayerGeometry):
  • rendering/RenderLayerCompositor.cpp: (WebCore::RenderLayerCompositor::rebuildCompositingLayerTree):
09:01 Changeset [42245] by darin@chromium.org
  • 2 edits in trunk/WebCore

2009-04-06 Mike Belshe <mike@belshe.com>

Reviewed by Alexey Proskuryakov.

Add accessors to AtomicString which take String/const char* arguments
so that we don't accidentally thrash the AtomicString table.

https://bugs.webkit.org/show_bug.cgi?id=24979

  • platform/text/AtomicString.h:
08:47 Changeset [42244] by vestbo@webkit.org
  • 7 edits in trunk/WebKit/qt

2009-04-06 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Rename DOM API select function to findFirst, findAll, etc.

08:37 Changeset [42243] by kov@webkit.org
  • 2 edits in trunk/WebKitTools

2009-04-06 Gustavo Noronha Silva <gustavo.noronha@collabora.co.uk>

Rubber-stamped by Tor Arne Vestbø.

Add /Programs to the productDir for GTK+, instead of adding
/JavaScriptCore, when running jsc.

  • Scripts/run-sunspider:
07:17 Changeset [42242] by zecke@webkit.org
  • 2 edits in trunk/WebCore

[GTK+] Correct the column and row cursor

Make col and row work in WebCore/manual-tests/cursor.html. The issue
was spotted in the WebKit inspector.

05:59 Changeset [42241] by vestbo@webkit.org
  • 2 edits in trunk/WebCore

2009-04-06 Tor Arne Vestbø <tor.arne.vestbo@nokia.com>

Reviewed by Simon Hausmann.

[Qt] Don't show and hide the platformPluginWidget, as it's our QWebView

05:50 QtWebKitContrib edited by hausmann@webkit.org
(diff)
05:50 QtWebKitContrib edited by hausmann@webkit.org
(diff)
05:49 QtWebKitContrib edited by hausmann@webkit.org
(diff)
04:58 Changeset [42240] by xan@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-04-05 Xan Lopez <xlopez@igalia.com>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=25042
destroying webview widget directly causes crash.

Do not connect the WebView to its own screen-changed signal, set a
default handler instead.

  • webkit/webkitwebview.cpp:
04:57 Changeset [42239] by xan@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-04-05 Xan Lopez <xlopez@igalia.com>

Reviewed by Holger Freyther.

https://bugs.webkit.org/show_bug.cgi?id=25042
destroying webview widget directly causes crash.

GtkWidget::screen-changed can be emitted when a widget is being
destroyed, protect against it.

  • webkit/webkitwebview.cpp:
04:25 Changeset [42238] by hausmann@webkit.org
  • 9 edits
    5 adds in trunk

WebCore:

2009-04-06 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Tor Arne Vestbø.

Add new files to the Qt build.
Export helper function from the Qt JSC binding, needed in WebKit/qt.

WebKit/qt:

2009-04-06 Simon Hausmann <simon.hausmann@nokia.com>

Ariya Hidayat <ariya.hidayat@nokia.com>
Tor Arne Vestbø <tor.arne.vestbo@nokia.com>
Genevieve Mak <gen@staikos.net>

Reviewed by Tor Arne Vestbø, Simon Hausmann

First revision of new API in the Qt port to access the DOM.

04:13 Changeset [42237] by hausmann@webkit.org
  • 3 edits in trunk/WebCore

2009-04-06 Simon Hausmann <simon.hausmann@nokia.com>

Reviewed by Tor Arne Vestbø.

Changed ScriptFunctionCall's last argument from a const char* as the function name to a String.

Internally the function name is stored as a WebCore::String and the Qt port wants to use this
constructor programmatically where the function name is also a WebCore::String.

02:51 Changeset [42236] by eric@webkit.org
  • 2 edits in trunk/WebCore

2009-04-06 Mike Belshe <mike@belshe.com>

Reviewed by Eric Seidel.

HTMLCanvasElement crash when ImageBuffer creation fails.
https://bugs.webkit.org/show_bug.cgi?id=23212

Check for NULL before using the ImageBuffer as we might
be low on memory and creation may have failed.

Test case creation blocked by:
https://bugs.webkit.org/show_bug.cgi?id=25055

  • html/HTMLCanvasElement.cpp: (WebCore::HTMLCanvasElement::createImageBuffer):

04/05/09:

15:48 Changeset [42235] by ggaren@apple.com
  • 13 edits in trunk/WebCore

2009-04-05 Geoffrey Garen <ggaren@apple.com>

[Originally] Reviewed by Sam Weinig.

Rolled back in r42214 with crashes fixed.

[Removed irrelevant ExecState* parameter from event handler registration code.]


[No change in behavior.]

  • bindings/js/JSDOMApplicationCacheCustom.cpp: (WebCore::JSDOMApplicationCache::addEventListener): (WebCore::JSDOMApplicationCache::removeEventListener):
  • bindings/js/JSDOMGlobalObject.cpp: (WebCore::JSDOMGlobalObject::findOrCreateJSProtectedEventListener): (WebCore::JSDOMGlobalObject::findJSEventListener): (WebCore::JSDOMGlobalObject::findOrCreateJSEventListener):
  • bindings/js/JSDOMGlobalObject.h:
  • bindings/js/JSDOMWindowCustom.cpp: (WebCore::JSDOMWindow::addEventListener):
  • bindings/js/JSMessagePortCustom.cpp: (WebCore::JSMessagePort::addEventListener): (WebCore::JSMessagePort::removeEventListener):
  • bindings/js/JSNodeCustom.cpp: (WebCore::JSNode::addEventListener):
  • bindings/js/JSSVGElementInstanceCustom.cpp: (WebCore::JSSVGElementInstance::addEventListener):
  • bindings/js/JSWorkerContextCustom.cpp: (WebCore::JSWorkerContext::addEventListener): (WebCore::JSWorkerContext::removeEventListener):
  • bindings/js/JSWorkerCustom.cpp: (WebCore::JSWorker::addEventListener): (WebCore::JSWorker::removeEventListener):
  • bindings/js/JSXMLHttpRequestCustom.cpp: (WebCore::JSXMLHttpRequest::addEventListener): (WebCore::JSXMLHttpRequest::removeEventListener):
  • bindings/js/JSXMLHttpRequestUploadCustom.cpp: (WebCore::JSXMLHttpRequestUpload::addEventListener): (WebCore::JSXMLHttpRequestUpload::removeEventListener):
  • bindings/scripts/CodeGeneratorJS.pm:
10:26 Changeset [42234] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

2009-04-05 Erik L. Bunce <elbunce@xendom.com>

Reviewed by Simon Hausmann.

https://bugs.webkit.org/show_bug.cgi?id=25050

Fix an assert failure when dropping an 'empty' text/uri-list on a QWebView.

07:56 Changeset [42233] by hausmann@webkit.org
  • 2 edits in trunk/WebCore

Fix the Qt build

01:21 Changeset [42232] by jmalonzo@webkit.org
  • 2 edits in trunk

2009-04-05 Mike Hommey <glandium@debian.org>

Reviewed by Holger Freyther.

Filter out all C++ symbols
https://bugs.webkit.org/show_bug.cgi?id=24960

Considering the public API is all C, we can just filter out all
C++ mangled symbols, which will avoid exporting symbols in some
corner cases such as gcc bugs on specific architectures, etc.

  • autotools/symbols.filter:
01:16 Changeset [42231] by jmalonzo@webkit.org
  • 2 edits in trunk/WebKit/gtk

2009-04-05 Jan Michael Alonzo <jmalonzo@webkit.org>

Reviewed by Holger Freyther.

[Gtk] Implement LayoutTestControllerGtk::setPrivateBrowsingEnabled
https://bugs.webkit.org/show_bug.cgi?id=24487

Updated documentation and put more information about the
private-browsing setting for WebKitGtk.

  • webkit/webkitwebsettings.cpp: (_WebKitWebSettingsPrivate::webkit_web_settings_class_init):

04/04/09:

20:56 Changeset [42230] by kevino@webkit.org
  • 9 edits in trunk

Build fixes for wxMac/Tiger.

17:06 Changeset [42229] by kevino@webkit.org
  • 8 edits in trunk

wx build fixes for the Windows port.

13:25 Changeset [42228] by simon.fraser@apple.com
  • 2 edits in trunk/WebCore

2009-04-04 Simon Fraser <simon.fraser@apple.com>

Reviewed by Cameron Zwarich

https://bugs.webkit.org/show_bug.cgi?id=24648

Ensure that mapPoint(const IntPoint&) calls the FloatPoint
version to avoid infinite recursion.

No test because mapPoint(const IntPoint&) isn't ever called
on Mac, so I can't reproduce.

  • platform/graphics/transforms/TransformationMatrix.h: (WebCore::TransformationMatrix::mapPoint):
00:33 Changeset [42227] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Mark Rowe.

  • fix <rdar://problem/6757862> REGRESSION: Cannot use the mouse to place the insertion point inside a Thai character

Test: fast/text/international/thai-offsetForPosition-inside-character.html

  • platform/graphics/mac/CoreTextController.cpp: (WebCore::CoreTextController::offsetForPosition): Changed to use cursorMovementIterator instead of characterBreakIterator, allowing this function to return a valid cursor position even if it is not at a character boundary.

LayoutTests:

Reviewed by Mark Rowe.

  • test for <rdar://problem/6757862> REGRESSION: Cannot use the mouse to place the insertion point inside a Thai character
  • fast/text/international/thai-offsetForPosition-inside-character-expected.txt: Added.
  • fast/text/international/thai-offsetForPosition-inside-character.html: Added.
00:27 Changeset [42226] by mitz@apple.com
  • 3 edits
    2 adds in trunk

WebCore:

Reviewed by Mark Rowe.

  • fix an assertion failure when clicking at the beginning of a glyph cluster at the beginning of a text run

Test: fast/text/offsetForPosition-cluster-at-zero.html

  • platform/graphics/mac/CoreTextController.cpp: (WebCore::CoreTextController::offsetForPosition): Corrected the bound check on firstGlyphBeforeCluster, letting it be 0 or -1, but not less than -1.

LayoutTests:

Reviewed by Mark Rowe.

  • test for a bug where computing the text offset for a position at the beginning of a glyph cluster at the beginning of a Core Text run resulted in an attempt to read past the end of a vector
  • fast/text/offsetForPosition-cluster-at-zero-expected.txt: Added.
  • fast/text/offsetForPosition-cluster-at-zero.html: Added.
00:20 Changeset [42225] by weinig@apple.com
  • 2 edits in trunk/LayoutTests

2009-04-04 Sam Weinig <sam@webkit.org>

Update test result.

  • dom/xhtml/level2/html/HTMLFormElement10-expected.txt:
Note: See TracTimeline for information about the timeline view.